:root {
  --blue-900: #042b75;
  --blue-800: #0646b8;
  --blue-600: #0a63ff;
  --blue-400: #21b7ff;
  --green-900: #54CA4E;
  --green-700: #54CA4E;
  --green-500: #54CA4E;
  --orange-600: #ff8a3d;
  --orange-400: #ffad6a;
  --white: #ffffff;
  --ink: #062047;
  --muted: #65738b;
  --line: rgba(6, 69, 145, 0.12);
  --card: rgba(255, 255, 255, 0.78);
  --shadow: 0 24px 80px rgba(5, 40, 98, 0.13);
  --radius: 28px;
  --max: 1180px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  font-family: Inter, "Instrument Sans", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--ink);
  background:
    radial-gradient(circle at 18% 15%, rgba(33, 183, 255, .13), transparent 28%),
    radial-gradient(circle at 88% 24%, rgba(84,202,78,.10), transparent 26%),
    linear-gradient(180deg, #ffffff 0%, #f7fbff 48%, #ffffff 100%);
  overflow-x: hidden;
}

body::before {
  content: "";
  position: fixed;
  inset: 0;
  z-index: -3;
  background-image:
    linear-gradient(rgba(6, 99, 255, .035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(6, 99, 255, .035) 1px, transparent 1px);
  background-size: 64px 64px;
  mask-image: radial-gradient(circle at 50% 20%, black 0, transparent 72%);
}

img { max-width: 100%; display: block; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; }

.page-glow {
  position: fixed;
  inset: auto -18% -32% -18%;
  height: 62vh;
  z-index: -2;
  background: radial-gradient(ellipse at center, rgba(10, 99, 255, .10), transparent 63%);
  pointer-events: none;
}

.container {
  width: min(calc(100% - 40px), var(--max));
  margin-inline: auto;
}

.narrow { max-width: 850px; }
.section { padding: 110px 0; position: relative; }
.section-kicker, .eyebrow {
  margin: 0 0 18px;
  color: var(--blue-800);
  font-weight: 760;
  letter-spacing: .13em;
  text-transform: uppercase;
  font-size: .77rem;
}
.eyebrow { display: inline-flex; align-items: center; gap: 10px; }
.eyebrow span {
  width: 34px; height: 2px; border-radius: 999px;
  background: linear-gradient(90deg, var(--green-700), var(--blue-600));
}

h1, h2, h3 { margin: 0; line-height: .98; letter-spacing: -0.055em; }
h1 { font-size: clamp(3rem, 7.2vw, 6.85rem); max-width: 980px; }
h2 { font-size: clamp(2.25rem, 4.6vw, 4.8rem); max-width: 930px; }
h3 { font-size: clamp(1.25rem, 2vw, 1.72rem); letter-spacing: -0.035em; }
p { color: var(--muted); line-height: 1.7; font-size: 1.03rem; }

.site-header {
  position: fixed;
  inset: 18px 20px auto;
  z-index: 100;
  height: 76px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 12px 10px 18px;
  border: 1px solid rgba(255,255,255,.86);
  border-radius: 999px;
  background: rgba(255, 255, 255, .73);
  box-shadow: 0 18px 55px rgba(6, 39, 98, .10);
  backdrop-filter: blur(24px);
  transition: transform .25s ease, background .25s ease, box-shadow .25s ease;
}
.site-header.is-scrolled { background: rgba(255,255,255,.9); box-shadow: 0 16px 45px rgba(6, 39, 98, .14); }
.brand { display: inline-flex; align-items: center; gap: 12px; min-width: 0; }
.brand__icon { width: 48px; height: 48px; object-fit: cover; border-radius: 16px; box-shadow: 0 10px 24px rgba(8, 85, 191, .13); }
.brand__text { font-size: 1.05rem; letter-spacing: .08em; font-weight: 820; color: var(--blue-800); }
.brand__text strong { color: var(--green-700); font-weight: 840; }
.main-nav { display: flex; align-items: center; gap: 8px; }
.main-nav a {
  padding: 12px 14px;
  border-radius: 999px;
  color: #24415f;
  font-weight: 650;
  font-size: .94rem;
  transition: background .2s ease, color .2s ease, transform .2s ease;
}
.main-nav a:hover { background: rgba(10, 99, 255, .08); color: var(--blue-800); transform: translateY(-1px); }
.nav-cta { background: linear-gradient(135deg, var(--blue-600), var(--green-700)); color: white !important; box-shadow: 0 12px 28px rgba(10, 99, 255, .20); }
.nav-toggle { display: none; width: 48px; height: 48px; border: 0; border-radius: 50%; background: #f2f7ff; padding: 13px; }
.nav-toggle span { display: block; height: 2px; background: var(--blue-800); margin: 5px 0; border-radius: 999px; }

.hero { min-height: 100svh; display: flex; align-items: center; padding-top: 160px; overflow: hidden; }
.hero__grid { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(320px, .78fr); gap: 52px; align-items: center; width: 100%; }

.hero__stage {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  border-radius: 42px;
  padding: clamp(34px, 5.5vw, 70px);
  min-height: min(720px, calc(100svh - 190px));
  display: flex;
  align-items: center;
  border: 1px solid rgba(255,255,255,.80);
  box-shadow: 0 30px 95px rgba(4, 24, 64, .24);
  background:
    linear-gradient(105deg, rgba(3, 16, 39, .82) 0%, rgba(3, 20, 48, .64) 42%, rgba(3, 20, 48, .34) 100%);
  background-size: cover;
  background-position: center;
}
.hero__stage::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background:
    radial-gradient(circle at 18% 24%, rgba(10, 99, 255, .26), transparent 34%),
    radial-gradient(circle at 82% 18%, rgba(84,202,78,.18), transparent 32%),
    linear-gradient(180deg, rgba(0,0,0,.10), rgba(0,0,0,.20));
  pointer-events: none;
}
.hero__stage::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(90deg, rgba(2, 10, 24, .38), rgba(2, 10, 24, .10) 56%, rgba(2, 10, 24, .26));
  pointer-events: none;
}
.hero__stage .eyebrow { color: rgba(217, 235, 255, .92); }
.hero__stage .eyebrow span { background: linear-gradient(90deg, #54CA4E, #58c7ff); }
.hero__stage h1 { color: #fff; text-shadow: 0 12px 44px rgba(0,0,0,.28); }
.hero__stage .hero__lead { color: rgba(238, 246, 255, .88); }
.hero__stage .hero__signals span {
  color: rgba(255,255,255,.90);
  background: rgba(255,255,255,.12);
  border-color: rgba(255,255,255,.18);
  backdrop-filter: blur(12px);
}
.hero__stage .button--ghost {
  color: #fff;
  background: rgba(255,255,255,.12);
  border-color: rgba(255,255,255,.30);
  box-shadow: 0 14px 32px rgba(0,0,0,.10);
}

.hero__lead { max-width: 710px; font-size: clamp(1.05rem, 1.55vw, 1.32rem); color: #52657c; margin: 28px 0 0; }
.hero__actions { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 36px; }
.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 54px;
  padding: 0 24px;
  border-radius: 999px;
  border: 1px solid transparent;
  font-weight: 780;
  cursor: pointer;
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}
.button:hover { transform: translateY(-2px); }
.button--primary { color: white; background: linear-gradient(135deg, var(--blue-600), var(--green-700)); box-shadow: 0 18px 42px rgba(10, 99, 255, .24); }
.button--ghost { color: var(--blue-900); background: rgba(255,255,255,.78); border-color: rgba(6, 70, 184, .16); box-shadow: 0 12px 32px rgba(6, 39, 98, .08); }
.hero__signals { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 30px; }
.hero__signals span { padding: 10px 14px; border-radius: 999px; background: rgba(255,255,255,.72); border: 1px solid rgba(6, 99, 255, .10); color: #536579; font-size: .92rem; font-weight: 680; }
.logo-card {
  position: relative;
  padding: 12px;
  border-radius: 40px;
  background: rgba(255, 255, 255, .48);
  border: 1px solid rgba(255,255,255,.92);
  box-shadow: var(--shadow);
  overflow: hidden;
}
.logo-card::before {
  content: "";
  position: absolute;
  inset: -2px;
  background: linear-gradient(135deg, rgba(10,99,255,.22), transparent 33%, rgba(84,202,78,.20));
  opacity: .7;
  z-index: -1;
}
.logo-card img { border-radius: 32px; }
.hero__background { position: absolute; inset: 0; z-index: -1; overflow: hidden; }
.radar { position: absolute; border: 1px solid rgba(6, 99, 255, .10); border-radius: 50%; }
.radar--one { width: 860px; height: 860px; right: -180px; top: 42px; box-shadow: inset 0 0 0 60px rgba(10,99,255,.02); }
.radar--two { width: 520px; height: 520px; left: -180px; bottom: 80px; border-color: rgba(84,202,78,.12); }
.trajectory { position: absolute; height: 2px; border-radius: 999px; transform: rotate(-16deg); opacity: .65; }
.trajectory--blue { width: 680px; right: -120px; top: 43%; background: linear-gradient(90deg, transparent, rgba(10,99,255,.32), transparent); }
.trajectory--green { width: 520px; left: -90px; bottom: 30%; background: linear-gradient(90deg, transparent, rgba(84,202,78,.25), transparent); }



.visual-strip {
  margin-top: 34px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}
.visual-card {
  margin: 0;
  background: rgba(255,255,255,.74);
  border: 1px solid rgba(255,255,255,.90);
  box-shadow: 0 18px 54px rgba(6,39,98,.08);
  backdrop-filter: blur(18px);
  border-radius: 30px;
  overflow: hidden;
}
.visual-card img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
}
.visual-card figcaption {
  padding: 18px 20px 22px;
  color: #32536f;
  font-weight: 680;
  line-height: 1.6;
}

.section-head { display: flex; flex-direction: column; gap: 12px; margin-bottom: 38px; }
.section-head h2 { max-width: 860px; }
.cards-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; margin-top: 36px; }
.mini-card, .method-card, .offer-card, .diagnostic__box, .contact-form, .distinction__panel, details {
  background: var(--card);
  border: 1px solid rgba(255,255,255,.88);
  box-shadow: 0 18px 54px rgba(6, 39, 98, .08);
  backdrop-filter: blur(18px);
}
.mini-card { padding: 26px; border-radius: var(--radius); min-height: 230px; }
.mini-card span { display: inline-flex; color: var(--green-700); font-weight: 880; margin-bottom: 24px; }
.mini-card p { font-size: .96rem; margin-bottom: 0; }

.problem {
  background: linear-gradient(135deg, #071833 0%, #0d2150 48%, #0a1837 100%);
}
.problem .section-kicker { color: #6dc5ff; }
.problem h2 { color: #ffffff; }
.problem .narrow p { color: rgba(227, 237, 255, .78); }
.problem .mini-card {
  background: rgba(255,255,255,.07);
  border: 1px solid rgba(255,255,255,.10);
  box-shadow: 0 20px 55px rgba(0,0,0,.12);
}
.problem .mini-card h3 { color: #ffffff; }
.problem .mini-card span { color: #54CA4E; }
.problem .mini-card p { color: rgba(227, 237, 255, .76); }


.method { background: linear-gradient(180deg, rgba(255,255,255,0), rgba(237,247,255,.65), rgba(255,255,255,0)); }
.method__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; }
.method-card { position: relative; padding: 34px; border-radius: 34px; overflow: hidden; }
.method-card::after { content: ""; position: absolute; inset: auto 24px 0; height: 3px; background: linear-gradient(90deg, var(--green-700), var(--blue-600)); border-radius: 999px 999px 0 0; opacity: .8; }
.method-card--featured { transform: translateY(-14px); background: linear-gradient(180deg, rgba(255,255,255,.90), rgba(245,251,255,.80)); }
.method-card__index { color: rgba(10,99,255,.22); font-size: 4rem; font-weight: 900; line-height: .85; margin-bottom: 22px; }
.method-card ul, .offer-card ul { list-style: none; padding: 0; margin: 24px 0 0; display: flex; flex-wrap: wrap; gap: 8px; }
.method-card li, .offer-card li { padding: 9px 12px; border-radius: 999px; background: rgba(10,99,255,.06); color: #33546f; font-weight: 700; font-size: .88rem; }

.offers__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 20px; align-items: stretch; }
.offer-card { padding: 32px; border-radius: 34px; position: relative; overflow: hidden; display: flex; flex-direction: column; }
.offer-card--main { background: linear-gradient(160deg, rgba(5, 48, 127, .94), rgba(7, 99, 255, .88)); color: white; }
.offer-card--main p, .offer-card--main li { color: rgba(255,255,255,.82); }
.offer-card--main li { background: rgba(255,255,255,.12); }
.offer-card__label { margin: 0 0 18px; font-size: .82rem; letter-spacing: .1em; text-transform: uppercase; color: var(--green-700); font-weight: 850; }
.offer-card--main .offer-card__label { color: #54CA4E; }
.offer-card a { margin-top: auto; padding-top: 28px; color: var(--blue-700, #0646b8); font-weight: 850; }
.offer-card--main a { color: white; }

.audience__layout { display: grid; grid-template-columns: .78fr 1fr; gap: 46px; align-items: center; }
.audience__tags { display: flex; flex-wrap: wrap; gap: 14px; }
.audience__tags span { padding: 16px 18px; border-radius: 18px; background: rgba(255,255,255,.74); border: 1px solid rgba(6, 99, 255, .10); box-shadow: 0 12px 32px rgba(6,39,98,.06); color: #28435f; font-weight: 760; }

.distinction__grid { display: grid; grid-template-columns: .9fr 1fr; gap: 20px; align-items: stretch; }
.distinction__panel { border-radius: 36px; padding: 38px; background: linear-gradient(135deg, rgba(255,255,255,.82), rgba(241,248,255,.72)); }
.distinction__text { padding: 18px 10px; }
.distinction__text p { font-size: 1.08rem; }

.diagnostic__box { border-radius: 38px; padding: clamp(30px, 5vw, 56px); display: flex; gap: 28px; align-items: center; justify-content: space-between; background: linear-gradient(135deg, rgba(255,255,255,.82), rgba(240,250,255,.76)); position: relative; overflow: hidden; }
.diagnostic__box::before { content: ""; position: absolute; width: 360px; height: 360px; border-radius: 50%; right: -120px; top: -140px; background: radial-gradient(circle, rgba(10,99,255,.17), transparent 68%); }
.diagnostic__box > * { position: relative; }
.diagnostic__box h2 { max-width: 560px; }
.diagnostic__box p { max-width: 700px; }

.diagnostic__cta { display: grid; gap: 10px; justify-items: start; min-width: 260px; }
.diagnostic__hint { margin: 0; font-size: .92rem; color: #58728f; font-weight: 650; }
.diagnostic-steps { margin-top: 20px; display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 18px; }
.diagnostic-step {
  background: rgba(255,255,255,.76);
  border: 1px solid rgba(255,255,255,.90);
  box-shadow: 0 18px 54px rgba(6,39,98,.08);
  backdrop-filter: blur(18px);
  border-radius: 28px;
  padding: 26px;
}
.diagnostic-step span { display: inline-flex; color: var(--green-700); font-weight: 880; margin-bottom: 20px; }
.diagnostic-step p { margin-bottom: 0; font-size: .97rem; }

.faq__list { display: grid; gap: 14px; }
details { border-radius: 22px; padding: 0 24px; }
summary { list-style: none; cursor: pointer; padding: 22px 0; font-weight: 800; color: #173a5e; display: flex; justify-content: space-between; gap: 20px; }
summary::after { content: "+"; color: var(--blue-600); font-size: 1.35rem; }
details[open] summary::after { content: "–"; }
details p { margin-top: 0; padding-bottom: 22px; max-width: 820px; }

.contact__grid { display: grid; grid-template-columns: .75fr 1fr; gap: 34px; align-items: start; }
.contact-form { border-radius: 32px; padding: 28px; display: grid; gap: 16px; }
.contact-form label { display: grid; gap: 8px; color: #1c4261; font-weight: 780; }
.contact-form input, .contact-form select, .contact-form textarea { width: 100%; border: 1px solid rgba(6, 99, 255, .14); border-radius: 16px; padding: 14px 15px; background: rgba(255,255,255,.82); color: var(--ink); outline: none; transition: border .2s ease, box-shadow .2s ease; }
.contact-form input:focus, .contact-form select:focus, .contact-form textarea:focus { border-color: rgba(10,99,255,.45); box-shadow: 0 0 0 4px rgba(10,99,255,.08); }
.contact-form textarea { resize: vertical; }

.site-footer { padding: 54px 0 38px; border-top: 1px solid var(--line); background: rgba(255,255,255,.70); }
.footer__grid { display: flex; justify-content: space-between; gap: 28px; align-items: flex-start; }
.footer__grid p { margin: 16px 0 0; }
.footer__grid nav { display: flex; flex-wrap: wrap; gap: 12px; justify-content: flex-end; }
.footer__grid nav a { color: #52657c; font-weight: 700; padding: 8px 0; }
.brand--footer .brand__icon { width: 40px; height: 40px; border-radius: 14px; }

.reveal { opacity: 0; transform: translateY(18px); transition: opacity .7s ease, transform .7s ease; }
.reveal.is-visible { opacity: 1; transform: translateY(0); }
.reveal--delay { transition-delay: .12s; }

@media (max-width: 980px) {
  .section { padding: 86px 0; }
  .hero { padding-top: 130px; }
  .hero__grid, .audience__layout, .distinction__grid, .contact__grid { grid-template-columns: 1fr; }
  .hero__visual { max-width: 560px; margin-inline: auto; }
  .hero__stage { min-height: auto; padding: clamp(28px, 6vw, 46px); }
  .cards-grid, .method__grid, .offers__grid, .visual-strip, .diagnostic-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .method-card--featured { transform: none; }
}

@media (max-width: 760px) {
  .container { width: min(calc(100% - 28px), var(--max)); }
  .site-header { inset: 12px 12px auto; height: 68px; }
  .brand__icon { width: 42px; height: 42px; }
  .brand__text { font-size: .96rem; }
  .nav-toggle { display: block; }
  .main-nav { position: absolute; top: calc(100% + 10px); right: 0; left: 0; display: grid; gap: 6px; padding: 14px; border-radius: 26px; background: rgba(255,255,255,.94); box-shadow: 0 18px 45px rgba(6,39,98,.14); border: 1px solid rgba(255,255,255,.90); transform-origin: top; transform: scaleY(.95); opacity: 0; pointer-events: none; transition: opacity .2s ease, transform .2s ease; }
  .main-nav.is-open { opacity: 1; pointer-events: auto; transform: scaleY(1); }
  .main-nav a { padding: 14px 16px; }
  .cards-grid, .method__grid, .offers__grid, .visual-strip, .diagnostic-steps { grid-template-columns: 1fr; }
  .hero__actions, .diagnostic__box { align-items: stretch; flex-direction: column; }
  .button { width: 100%; }
  h1 { font-size: clamp(2.85rem, 12vw, 4.8rem); }
  h2 { font-size: clamp(2.1rem, 9vw, 3.6rem); }
  .mini-card { min-height: unset; }
  .hero__stage { border-radius: 30px; background-position: 58% center; }
  .logo-card { border-radius: 28px; padding: 8px; }
  .logo-card img { border-radius: 22px; }
  .footer__grid { flex-direction: column; }
  .footer__grid nav { justify-content: flex-start; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation: none !important; transition: none !important; }
  .reveal { opacity: 1; transform: none; }
}


/* === Passe conversion / lisibilité === */
.site-header {
  height: 88px;
  padding: 12px 18px 12px 22px;
  background: rgba(255,255,255,.94);
  border-color: rgba(6,99,255,.12);
  box-shadow: 0 18px 55px rgba(6,39,98,.14);
}
.brand__icon { width: 62px; height: 58px; border-radius: 18px; object-fit: contain; background: #fff; }
.brand__text { font-size: 1.28rem; letter-spacing: .095em; }
.main-nav a { font-size: .97rem; color: #193a5d; }

.hero { min-height: auto; padding-top: 145px; padding-bottom: 70px; }
.hero__stage {
  min-height: auto;
  padding: clamp(38px, 5.5vw, 76px);
  background:
    radial-gradient(circle at 82% 16%, rgba(33,183,255,.16), transparent 34%),
    radial-gradient(circle at 90% 82%, rgba(84,202,78,.13), transparent 32%),
    linear-gradient(135deg, #ffffff 0%, #f4f9ff 58%, #effaf4 100%);
  box-shadow: 0 28px 90px rgba(5,40,98,.16);
}
.hero__stage::before {
  background:
    linear-gradient(rgba(10,99,255,.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(10,99,255,.045) 1px, transparent 1px);
  background-size: 42px 42px;
  opacity: .55;
}
.hero__stage::after {
  background: linear-gradient(90deg, rgba(255,255,255,.92), rgba(255,255,255,.72) 48%, rgba(255,255,255,.58));
}
.hero__stage .eyebrow { color: var(--blue-800); }
.hero__stage h1 { color: #061b3a; text-shadow: none; max-width: 780px; }
.hero__stage .hero__lead { color: #345069; max-width: 680px; }
.hero__stage .hero__signals span {
  color: #203f5d;
  background: rgba(255,255,255,.78);
  border-color: rgba(6,99,255,.13);
}
.hero__stage .button--ghost { color: var(--blue-900); background: rgba(255,255,255,.76); border-color: rgba(6,70,184,.18); }
.outcome-panel {
  position: relative;
  padding: clamp(26px, 4vw, 38px);
  border-radius: 34px;
  background: linear-gradient(160deg, rgba(5,48,127,.96), rgba(7,99,255,.90));
  color: #fff;
  box-shadow: 0 28px 70px rgba(6,39,98,.24);
  overflow: hidden;
}
.outcome-panel::before {
  content: "";
  position: absolute;
  inset: -35% -25% auto auto;
  width: 260px;
  height: 260px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(84,202,78,.36), transparent 66%);
}
.outcome-panel > * { position: relative; }
.outcome-panel__label {
  margin: 0 0 16px;
  color: #54CA4E;
  font-size: .82rem;
  text-transform: uppercase;
  letter-spacing: .12em;
  font-weight: 850;
}
.outcome-panel h2 {
  color: #fff;
  font-size: clamp(1.55rem, 2.4vw, 2.45rem);
  line-height: 1.08;
  letter-spacing: -.045em;
}
.outcome-list { display: grid; gap: 12px; margin-top: 26px; }
.outcome-list div {
  display: grid;
  grid-template-columns: 42px 1fr;
  gap: 12px;
  align-items: center;
  padding: 13px 14px;
  border-radius: 18px;
  background: rgba(255,255,255,.11);
  border: 1px solid rgba(255,255,255,.14);
}
.outcome-list strong { color: #54CA4E; }
.outcome-list span { color: rgba(255,255,255,.88); font-weight: 690; line-height: 1.45; }

.results { padding-top: 76px; }
.results__grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 18px; }
.result-card {
  background: rgba(255,255,255,.78);
  border: 1px solid rgba(255,255,255,.90);
  box-shadow: 0 18px 54px rgba(6,39,98,.08);
  backdrop-filter: blur(18px);
  border-radius: 30px;
  padding: 30px;
}
.result-card span { color: var(--green-700); font-weight: 900; display: inline-block; margin-bottom: 20px; }
.result-card p { margin-bottom: 0; }

.offer-card__price {
  margin: -4px 0 8px;
  color: #082b70;
  font-size: 1.55rem;
  line-height: 1;
  font-weight: 900;
  letter-spacing: -.035em;
}
.offer-card--main .offer-card__price { color: #fff; }
.check-list li {
  position: relative;
  padding-left: 34px !important;
  border-radius: 14px !important;
}
.check-list li::before {
  content: "✓";
  position: absolute;
  left: 12px;
  color: var(--green-700);
  font-weight: 950;
}
.offer-card--main .check-list li::before { color: #54CA4E; }

.diagnostic__box { align-items: flex-start; }
.diagnostic__box .section-kicker { color: var(--green-700); }
.contact__content p { font-size: 1.08rem; }
.site-footer { background: #071833; border-top: 0; }
.site-footer .brand__text span, .site-footer .brand__text strong { color: #fff; }
.site-footer p, .footer__grid nav a { color: rgba(227,237,255,.72); }

@media (max-width: 980px) {
  .results__grid { grid-template-columns: 1fr; }
  .hero__grid { gap: 28px; }
}
@media (max-width: 760px) {
  .site-header { height: 74px; }
  .brand__icon { width: 48px; height: 46px; }
  .brand__text { font-size: 1.05rem; }
  .hero { padding-top: 112px; }
  .outcome-panel { border-radius: 26px; }
}


/* === Passe lisibilité / alternance chromatique === */
body {
  background:
    radial-gradient(circle at top left, rgba(88,199,255,.18), transparent 28%),
    linear-gradient(180deg, #eef8ff 0%, #f4fbff 52%, #edf8ff 100%);
}

.hero__stage {
  background:
    radial-gradient(circle at 82% 16%, rgba(33,183,255,.20), transparent 34%),
    radial-gradient(circle at 90% 82%, rgba(84,202,78,.14), transparent 30%),
    linear-gradient(135deg, #d9efff 0%, #d8f0ff 54%, #daf4ea 100%);
}
.hero__stage::after {
  background: linear-gradient(90deg, rgba(238,248,255,.84), rgba(238,248,255,.66) 48%, rgba(238,248,255,.50));
}

.method,
.audience,
.diagnostic,
.contact {
  background: linear-gradient(180deg, #edf8ff 0%, #e2f3ff 50%, #eef9ff 100%);
}

.offers,
.distinction,
.faq {
  background: linear-gradient(135deg, #071833 0%, #0b2047 48%, #081a38 100%);
}
.offers .section-kicker,
.distinction .section-kicker,
.faq .section-kicker {
  color: #6dc5ff;
}
.offers h2,
.distinction h2,
.faq h2 {
  color: #ffffff;
}
.offers .section-head p:last-child,
.faq .section-head p:last-child,
.distinction__text p {
  color: rgba(227,237,255,.78);
}
.offers .offer-card,
.distinction__panel,
.faq details {
  box-shadow: 0 18px 54px rgba(0,0,0,.18);
}
.distinction__panel {
  background: rgba(255,255,255,.88);
}
.distinction__panel h2 {
  color: #09234f;
}
.distinction__panel .section-kicker {
  color: var(--green-700);
}
.faq details {
  background: rgba(255,255,255,.86);
}
.faq summary {
  color: #0a2344;
}
.faq details p {
  color: #42607d;
}
.contact-form,
.diagnostic__box,
.result-card,
.visual-card,
.audience__tags span,
.method-card,
.offer-card,
.mini-card {
  backdrop-filter: blur(18px);
}


/* === Intégration intelligente du nouveau hero visuel === */
.hero__grid--single { grid-template-columns: 1fr; align-items: flex-start; }
.hero__content--card {
  max-width: 640px;
  background: rgba(255,255,255,.72);
  border: 1px solid rgba(255,255,255,.86);
  backdrop-filter: blur(18px);
  box-shadow: 0 22px 56px rgba(5, 40, 98, .14);
  border-radius: 34px;
  padding: 30px 30px 26px;
}
.hero__stage {
  align-items: flex-start;
  background: linear-gradient(135deg, #eef7ff, #ffffff);
  background-size: cover;
  background-position: center;
  min-height: min(760px, calc(100svh - 180px));
}
.hero__stage::before {
  background: linear-gradient(90deg, rgba(255,255,255,.14), rgba(255,255,255,.02) 40%, rgba(255,255,255,0) 68%);
}
.hero__stage::after {
  background: linear-gradient(90deg, rgba(235,245,255,.32), rgba(235,245,255,.12) 42%, rgba(235,245,255,0) 70%);
}
.hero__stage .eyebrow { color: var(--blue-800); }
.hero__stage .eyebrow span { background: linear-gradient(90deg, var(--green-700), var(--blue-600)); }
.hero__stage h1 { color: #061b3a; text-shadow: none; max-width: 600px; }
.hero__stage .hero__lead { color: #345069; max-width: 560px; }
.hero__stage .hero__signals { margin-top: 24px; }
.hero__stage .hero__signals span {
  color: #10355d;
  background: rgba(255,255,255,.78);
  border-color: rgba(6,70,184,.12);
}
.hero__stage .button--ghost {
  color: var(--blue-900);
  background: rgba(255,255,255,.84);
  border-color: rgba(6,70,184,.18);
}
@media (max-width: 980px) {
  .hero__content--card { max-width: 100%; }
  .hero__stage { min-height: 680px; background-position: 60% center; }
}
@media (max-width: 760px) {
  .hero__content--card { padding: 24px 20px 22px; border-radius: 24px; }
  .hero__stage { min-height: 620px; background-position: 68% center; }
  .hero__stage::after { background: linear-gradient(180deg, rgba(238,248,255,.42), rgba(238,248,255,.10)); }
}


/* === Étape 7 : hero pleine largeur + logo visible === */
.hero--fullbleed .container.hero__stage {
  width: min(calc(100vw - 34px), 1520px);
  max-width: 1520px;
}
.hero__stage {
  width: min(calc(100vw - 34px), 1520px);
  max-width: 1520px;
  margin-inline: auto;
  min-height: min(820px, calc(100svh - 170px));
  padding: clamp(34px, 4vw, 56px);
  background-position: left center;
}
.hero__grid--single {
  display: flex;
  justify-content: flex-end;
  width: 100%;
}
.hero__content--card {
  margin-left: auto;
  max-width: 590px;
  background: rgba(255,255,255,.68);
}
.hero__stage::before {
  background: linear-gradient(90deg, rgba(255,255,255,.10) 0%, rgba(255,255,255,.02) 36%, rgba(255,255,255,0) 62%);
}
.hero__stage::after {
  background: linear-gradient(90deg, rgba(235,245,255,.12) 0%, rgba(235,245,255,.04) 34%, rgba(235,245,255,0) 58%, rgba(235,245,255,.16) 100%);
}
@media (max-width: 1100px) {
  .hero__stage {
    min-height: 740px;
    background-position: 22% center;
  }
  .hero__content--card {
    max-width: 500px;
  }
}
@media (max-width: 760px) {
  .hero--fullbleed .container.hero__stage,
  .hero__stage {
    width: min(calc(100vw - 18px), 100vw);
    min-height: 660px;
    padding: 22px;
    background-position: 18% center;
    border-radius: 24px;
  }
  .hero__grid--single {
    justify-content: center;
    align-items: flex-end;
    min-height: 100%;
  }
  .hero__content--card {
    margin-inline: auto;
    max-width: 100%;
    background: rgba(255,255,255,.74);
  }
  .hero__stage::after {
    background: linear-gradient(180deg, rgba(238,248,255,.10) 0%, rgba(238,248,255,.06) 40%, rgba(238,248,255,.22) 100%);
  }
}


/* === Étape 8 : hero image au-dessus + texte en dessous === */
.hero--stacked {
  min-height: auto;
  display: block;
  padding-top: 145px;
}
.hero--stacked .hero__background,
.hero--stacked .hero__stage {
  display: none !important;
}
.hero__media {
  margin-bottom: 32px;
}
.hero__media-frame {
  margin: 0;
  border-radius: 36px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.86);
  box-shadow: 0 28px 90px rgba(6,39,98,.16);
  background: #eaf5ff;
}
.hero__media-frame img {
  display: block;
  width: 100%;
  height: auto;
}
.hero__intro {
  text-align: center;
  max-width: 1080px;
}
.hero__intro .eyebrow {
  justify-content: center;
  margin-bottom: 18px;
}
.hero__intro h1 {
  max-width: 860px;
  margin-inline: auto;
  color: #061b3a;
}
.hero__mission {
  margin: 22px auto 0;
  max-width: 980px;
  font-size: clamp(1.3rem, 2vw, 2.05rem);
  line-height: 1.28;
  letter-spacing: -0.035em;
  font-weight: 720;
  color: #0b3f7e;
}
.hero__intro .hero__lead {
  max-width: 860px;
  margin: 22px auto 0;
  font-size: clamp(1.04rem, 1.4vw, 1.2rem);
  color: #4d667f;
}
.hero__intro .hero__actions {
  justify-content: center;
}
.hero__intro .hero__signals {
  justify-content: center;
  margin-top: 24px;
}
.hero__intro .hero__signals span {
  background: rgba(255,255,255,.82);
  border: 1px solid rgba(6,99,255,.10);
  color: #1f436e;
}
@media (max-width: 980px) {
  .hero--stacked { padding-top: 132px; }
  .hero__media { margin-bottom: 24px; }
  .hero__media-frame { border-radius: 28px; }
}
@media (max-width: 760px) {
  .hero--stacked { padding-top: 120px; }
  .hero__media-frame { border-radius: 22px; }
  .hero__mission { font-size: 1.22rem; }
}


/* === Étape 9 : texte hero orienté bénéfices + plus lisible === */
.hero__intro .hero__lead {
  max-width: 980px;
  font-size: clamp(1.18rem, 1.7vw, 1.42rem);
  line-height: 1.62;
  font-weight: 560;
  color: #36536f;
}


/* === Étape 10 : offres développées avec bénéfices, coches et prix === */
.offers .section-head p {
  max-width: 820px;
  color: rgba(227,237,255,.78);
}
.offers__grid--detailed {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: stretch;
}
.offer-card--detailed {
  padding: 34px 30px;
  min-height: 100%;
}
.offer-card__intro {
  margin-top: 18px;
  margin-bottom: 0;
  font-size: .98rem;
}
.offer-card__included {
  margin: 26px 0 0;
  color: #0b3f7e;
  font-size: .88rem;
  font-weight: 880;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.offer-card--main .offer-card__included { color: #54CA4E; }
.offer-check-list {
  display: grid !important;
  flex-wrap: initial !important;
  gap: 10px !important;
  margin-top: 16px !important;
}
.offer-check-list li {
  display: block;
  padding: 11px 12px 11px 38px !important;
  border-radius: 15px !important;
  line-height: 1.42;
  font-size: .91rem !important;
  font-weight: 700 !important;
  background: rgba(10,99,255,.065) !important;
  color: #2d506f !important;
}
.offer-card--main .offer-check-list li {
  background: rgba(255,255,255,.12) !important;
  color: rgba(255,255,255,.88) !important;
}
.offer-check-list li::before {
  top: 10px;
  left: 14px;
  width: 17px;
  height: 17px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: rgba(84,202,78,.14);
  font-size: .78rem;
  line-height: 1;
}
.offer-card--main .offer-check-list li::before {
  background: rgba(84,202,78,.16);
}
.offer-card__price-block {
  margin-top: 26px;
  padding-top: 22px;
  border-top: 1px solid rgba(6,99,255,.12);
}
.offer-card--main .offer-card__price-block {
  border-top-color: rgba(255,255,255,.18);
}
.offer-card__price-label {
  display: inline-block;
  margin-bottom: 8px;
  color: var(--green-700);
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.offer-card--main .offer-card__price-label { color: #54CA4E; }
.offer-card__price {
  margin: 0;
  font-size: clamp(1.35rem, 1.7vw, 1.78rem);
}
@media (max-width: 1180px) {
  .offers__grid--detailed { grid-template-columns: 1fr; }
  .offer-card--detailed { max-width: 860px; margin-inline: auto; }
}


/* === Étape 11 : message solution + prix micro-entreprise === */
.solution-bridge {
  margin-top: 34px;
  padding: clamp(28px, 4vw, 42px);
  border-radius: 30px;
  background: linear-gradient(135deg, rgba(255,255,255,.13), rgba(255,255,255,.07));
  border: 1px solid rgba(255,255,255,.16);
  box-shadow: 0 20px 58px rgba(0,0,0,.16);
}
.solution-bridge__label {
  margin: 0 0 12px;
  color: #54CA4E;
  font-size: .78rem;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.solution-bridge h3 {
  max-width: 880px;
  color: #ffffff;
  font-size: clamp(1.65rem, 2.7vw, 3rem);
  line-height: 1.05;
}
.solution-bridge p:not(.solution-bridge__label) {
  max-width: 880px;
  margin: 18px 0 0;
  color: rgba(227,237,255,.82);
  font-size: clamp(1.02rem, 1.35vw, 1.18rem);
}
.method .section-head p {
  max-width: 840px;
  margin: 6px 0 0;
  font-size: clamp(1.02rem, 1.35vw, 1.16rem);
  color: #4d667f;
}
.offer-tax-note {
  margin-top: 24px;
  color: rgba(227,237,255,.68);
  font-size: .9rem;
  line-height: 1.55;
}
.offer-card__price {
  line-height: 1.15;
}
@media (max-width: 760px) {
  .solution-bridge { border-radius: 24px; }
}


/* === Étape 13 : animation des billes de la méthode === */
.method-card ul {
  margin-top: 28px;
  gap: 10px;
}
.method-card li {
  position: relative;
  overflow: hidden;
  background: linear-gradient(180deg, rgba(255,255,255,.92), rgba(232,244,255,.95));
  border: 1px solid rgba(6, 99, 255, .10);
  box-shadow: 0 10px 24px rgba(7, 52, 122, .08);
  transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease, color .28s ease;
  animation: methodPillFloat 4.8s ease-in-out infinite;
}
.method-card li::before {
  content: "";
  position: absolute;
  inset: auto 12px -1px;
  height: 2px;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--green-700), var(--blue-600));
  opacity: .85;
}
.method-card li::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(120deg, transparent 0%, rgba(88,199,255,.18) 48%, transparent 100%);
  transform: translateX(-130%);
  animation: methodPillSweep 5.6s ease-in-out infinite;
}
.method-card li:hover {
  transform: translateY(-4px) scale(1.03);
  box-shadow: 0 16px 30px rgba(7, 52, 122, .14);
  border-color: rgba(6, 99, 255, .18);
  color: #163e6c;
}
.method-card li:nth-child(1) { animation-delay: 0s; }
.method-card li:nth-child(2) { animation-delay: .45s; }
.method-card li:nth-child(3) { animation-delay: .9s; }
.method-card li:nth-child(1)::after { animation-delay: .1s; }
.method-card li:nth-child(2)::after { animation-delay: .7s; }
.method-card li:nth-child(3)::after { animation-delay: 1.2s; }
.method-card--featured li {
  background: linear-gradient(180deg, rgba(240,248,255,.98), rgba(229,242,255,.96));
  box-shadow: 0 12px 28px rgba(7, 52, 122, .10);
}
@keyframes methodPillFloat {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-4px); }
}
@keyframes methodPillSweep {
  0%, 72%, 100% { transform: translateX(-130%); opacity: 0; }
  12%, 50% { opacity: .95; }
  60% { transform: translateX(130%); opacity: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .method-card li,
  .method-card li::after {
    animation: none !important;
  }
}


/* === Étape 14 : méthode renforcée visuellement + animation plus forte === */
.method {
  position: relative;
  overflow: hidden;
}
.method::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(circle at 12% 18%, rgba(33,183,255,.08), transparent 26%),
    radial-gradient(circle at 86% 14%, rgba(84,202,78,.06), transparent 22%),
    linear-gradient(180deg, rgba(255,255,255,.10), rgba(255,255,255,0));
}
.method__grid {
  position: relative;
  z-index: 1;
  gap: 24px;
}
.method-card {
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(244,250,255,.96));
  border: 1px solid rgba(6,99,255,.10);
  box-shadow: 0 18px 48px rgba(10, 44, 94, .10), inset 0 1px 0 rgba(255,255,255,.92);
  transition: transform .35s ease, box-shadow .35s ease, border-color .35s ease;
}
.method-card::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  padding: 1px;
  background: linear-gradient(135deg, rgba(84,202,78,.34), rgba(33,183,255,.30), rgba(6,99,255,.08));
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  pointer-events: none;
  opacity: .8;
}
.method-card::after {
  inset: auto 26px 0;
  height: 5px;
  background: linear-gradient(90deg, #54CA4E 0%, #3fc8ff 50%, #236bff 100%);
  box-shadow: 0 0 18px rgba(33,183,255,.28);
}
.method-card:hover {
  transform: translateY(-8px) scale(1.01);
  border-color: rgba(6,99,255,.18);
  box-shadow: 0 24px 62px rgba(10, 44, 94, .16), 0 0 0 7px rgba(33,183,255,.06);
}
.method-card--featured {
  transform: translateY(-14px) scale(1.02);
  background: linear-gradient(180deg, rgba(255,255,255,1), rgba(239,249,255,.98));
  box-shadow: 0 22px 70px rgba(10, 44, 94, .16), 0 0 0 8px rgba(33,183,255,.05);
}
.method-card--featured:hover {
  transform: translateY(-18px) scale(1.025);
}
.method-card__index {
  font-size: 4.3rem;
  background: linear-gradient(180deg, rgba(84,202,78,.26), rgba(33,183,255,.28), rgba(10,99,255,.18));
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  text-shadow: 0 6px 24px rgba(33,183,255,.10);
}
.method-card h3 {
  font-size: 1.05rem;
  margin-bottom: 12px;
}
.method-card p {
  color: #506882;
}
.method-card ul {
  margin-top: 26px;
  gap: 12px;
}
.method-card li {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  padding: 11px 16px 12px;
  font-size: .95rem;
  font-weight: 800;
  letter-spacing: -.01em;
  color: #163e6c;
  background: linear-gradient(180deg, rgba(255,255,255,1), rgba(229,242,255,.98));
  border: 1px solid rgba(33,183,255,.16);
  box-shadow: 0 12px 26px rgba(8, 52, 122, .10);
  transform: translateY(0) scale(1);
  animation: methodPillBoostFloat 2.8s ease-in-out infinite;
}
.method-card li::before {
  content: "";
  position: absolute;
  inset: -1px;
  border-radius: inherit;
  background: linear-gradient(115deg, rgba(84,202,78,0) 0%, rgba(84,202,78,.85) 34%, rgba(33,183,255,.95) 60%, rgba(6,99,255,0) 100%);
  opacity: .90;
  transform: translateX(-135%);
  animation: methodPillBoostSweep 2.8s ease-in-out infinite;
  z-index: -2;
}
.method-card li::after {
  content: "";
  position: absolute;
  left: 10px;
  right: 10px;
  bottom: 0;
  height: 4px;
  border-radius: 999px;
  background: linear-gradient(90deg, #54CA4E 0%, #54d4ff 48%, #236bff 100%);
  box-shadow: 0 0 16px rgba(33,183,255,.55);
  animation: methodPillBoostPulse 1.8s ease-in-out infinite;
}
.method-card li:hover {
  transform: translateY(-8px) scale(1.08);
  box-shadow: 0 20px 34px rgba(8,52,122,.18), 0 0 0 6px rgba(33,183,255,.08);
  color: #0d3560;
}
.method-card li:nth-child(1) { animation-delay: 0s; }
.method-card li:nth-child(2) { animation-delay: .28s; }
.method-card li:nth-child(3) { animation-delay: .56s; }
.method-card li:nth-child(4) { animation-delay: .84s; }
.method-card li:nth-child(1)::before, .method-card li:nth-child(1)::after { animation-delay: 0s; }
.method-card li:nth-child(2)::before, .method-card li:nth-child(2)::after { animation-delay: .28s; }
.method-card li:nth-child(3)::before, .method-card li:nth-child(3)::after { animation-delay: .56s; }
.method-card li:nth-child(4)::before, .method-card li:nth-child(4)::after { animation-delay: .84s; }
@keyframes methodPillBoostFloat {
  0%, 100% { transform: translateY(0) scale(1); }
  50% { transform: translateY(-8px) scale(1.06); }
}
@keyframes methodPillBoostSweep {
  0%, 52%, 100% { transform: translateX(-135%); opacity: 0; }
  14% { opacity: .92; }
  34% { transform: translateX(135%); opacity: 0; }
}
@keyframes methodPillBoostPulse {
  0%, 100% { opacity: .52; transform: scaleX(.68); }
  50% { opacity: 1; transform: scaleX(1); }
}
@media (max-width: 980px) {
  .method-card--featured {
    transform: none;
  }
}
@media (prefers-reduced-motion: reduce) {
  .method-card,
  .method-card li,
  .method-card li::before,
  .method-card li::after {
    animation: none !important;
    transition: none !important;
  }
}


/* === Étape 15 : animation pleine largeur orientation croissance sur le hero visuel === */
.hero__media {
  max-width: 1320px;
}
.hero__media-frame--growth {
  position: relative;
  width: 100%;
  min-height: 420px;
  background: #eaf5ff;
}
.hero__media-frame--growth::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(5, 17, 42, .10), rgba(5,17,42,0) 28%, rgba(5,17,42,.08) 100%),
    linear-gradient(90deg, rgba(255,255,255,.06), rgba(255,255,255,0) 18%, rgba(255,255,255,.04) 82%, rgba(255,255,255,0));
  pointer-events: none;
  z-index: 1;
}
.hero__media-frame--growth img {
  display: block;
  width: 100%;
  height: auto;
}
.hero-growth-band {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: clamp(150px, 22vw, 250px);
  pointer-events: none;
  overflow: hidden;
  z-index: 2;
}
.hero-growth-band__grid {
  position: absolute;
  inset: 14% 2% 0;
  border-radius: 0 0 36px 36px;
  background:
    linear-gradient(rgba(87, 199, 255, .16) 1px, transparent 1px),
    linear-gradient(90deg, rgba(87, 199, 255, .16) 1px, transparent 1px),
    linear-gradient(180deg, rgba(7,20,50,.06), rgba(7,20,50,0));
  background-size: 50px 28px, 50px 28px, auto;
  mask-image: linear-gradient(180deg, transparent 0%, rgba(0,0,0,.7) 20%, rgba(0,0,0,1) 100%);
  opacity: .72;
  transform: perspective(950px) rotateX(64deg);
  transform-origin: center bottom;
}
.hero-growth-band__line {
  position: absolute;
  left: 2%;
  height: 5px;
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(84,202,78,0), rgba(84,202,78,.95) 18%, rgba(64,225,255,.98) 52%, rgba(10,99,255,.98) 84%, rgba(10,99,255,0));
  box-shadow: 0 0 18px rgba(64,225,255,.45), 0 0 32px rgba(84,202,78,.22);
  transform-origin: left center;
}
.hero-growth-band__line--one {
  width: 78%;
  bottom: 26px;
  transform: rotate(-8deg) scaleX(.96);
  animation: heroGrowthSweepOne 4.2s ease-in-out infinite;
}
.hero-growth-band__line--two {
  width: 62%;
  left: 14%;
  bottom: 74px;
  opacity: .82;
  transform: rotate(-14deg) scaleX(.88);
  animation: heroGrowthSweepTwo 4.9s ease-in-out infinite;
}
.hero-growth-band__line--three {
  width: 42%;
  left: 34%;
  bottom: 120px;
  opacity: .72;
  transform: rotate(-20deg) scaleX(.82);
  animation: heroGrowthSweepThree 5.6s ease-in-out infinite;
}
.hero-growth-band__line::after {
  content: "";
  position: absolute;
  right: -8px;
  top: 50%;
  width: 18px;
  height: 18px;
  background: linear-gradient(135deg, #57dfff 0%, #0a63ff 70%);
  clip-path: polygon(0 50%, 68% 0, 68% 28%, 100% 28%, 100% 72%, 68% 72%, 68% 100%);
  transform: translateY(-50%) rotate(-2deg);
  filter: drop-shadow(0 0 10px rgba(64,225,255,.58));
}
.hero-growth-band__pulse {
  position: absolute;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: radial-gradient(circle, #ffffff 0%, #60e0ff 36%, #54CA4E 100%);
  box-shadow: 0 0 0 0 rgba(96,224,255,.55), 0 0 24px rgba(96,224,255,.42);
}
.hero-growth-band__pulse--one {
  left: 28%;
  bottom: 66px;
  animation: heroGrowthPulse 2.2s ease-in-out infinite;
}
.hero-growth-band__pulse--two {
  left: 56%;
  bottom: 112px;
  animation: heroGrowthPulse 2.2s ease-in-out .55s infinite;
}
.hero-growth-band__pulse--three {
  right: 10%;
  bottom: 154px;
  animation: heroGrowthPulse 2.2s ease-in-out 1.1s infinite;
}
@keyframes heroGrowthSweepOne {
  0%, 100% { opacity: .55; transform: translateX(-2%) translateY(6px) rotate(-8deg) scaleX(.92); }
  50% { opacity: 1; transform: translateX(2%) translateY(-6px) rotate(-8deg) scaleX(1.02); }
}
@keyframes heroGrowthSweepTwo {
  0%, 100% { opacity: .38; transform: translateX(-3%) translateY(8px) rotate(-14deg) scaleX(.82); }
  50% { opacity: .88; transform: translateX(2%) translateY(-7px) rotate(-14deg) scaleX(.94); }
}
@keyframes heroGrowthSweepThree {
  0%, 100% { opacity: .28; transform: translateX(-4%) translateY(10px) rotate(-20deg) scaleX(.72); }
  50% { opacity: .72; transform: translateX(2%) translateY(-8px) rotate(-20deg) scaleX(.88); }
}
@keyframes heroGrowthPulse {
  0%, 100% { transform: scale(.82); box-shadow: 0 0 0 0 rgba(96,224,255,.0), 0 0 18px rgba(96,224,255,.32); opacity: .74; }
  50% { transform: scale(1.18); box-shadow: 0 0 0 14px rgba(96,224,255,.0), 0 0 34px rgba(96,224,255,.70); opacity: 1; }
}
@media (max-width: 980px) {
  .hero-growth-band { height: clamp(130px, 24vw, 210px); }
  .hero-growth-band__line--three { left: 28%; }
  .hero-growth-band__pulse--three { right: 6%; }
}
@media (max-width: 760px) {
  .hero__media { max-width: none; }
  .hero__media-frame--growth { min-height: 280px; }
  .hero-growth-band { height: 120px; }
  .hero-growth-band__grid { inset: 20% 0 0; background-size: 32px 20px, 32px 20px, auto; }
  .hero-growth-band__line { height: 4px; }
  .hero-growth-band__line::after { width: 14px; height: 14px; right: -7px; }
  .hero-growth-band__pulse { width: 14px; height: 14px; }
  .hero-growth-band__line--one { width: 88%; left: -4%; bottom: 18px; }
  .hero-growth-band__line--two { width: 72%; left: 8%; bottom: 48px; }
  .hero-growth-band__line--three { width: 50%; left: 26%; bottom: 78px; }
  .hero-growth-band__pulse--one { left: 30%; bottom: 42px; }
  .hero-growth-band__pulse--two { left: 59%; bottom: 72px; }
  .hero-growth-band__pulse--three { right: 8%; bottom: 97px; }
}
@media (prefers-reduced-motion: reduce) {
  .hero-growth-band__line,
  .hero-growth-band__pulse {
    animation: none !important;
  }
}


/* === Étape 16 : correction du sens des flèches du hero === */
.hero-growth-band__line {
  transform-origin: left center;
}
.hero-growth-band__line::after {
  right: -10px;
  left: auto;
  width: 22px;
  height: 22px;
  background: linear-gradient(135deg, #7ce9ff 0%, #54CA4E 22%, #0a63ff 78%);
  clip-path: polygon(0 50%, 55% 0, 55% 24%, 100% 24%, 100% 76%, 55% 76%, 55% 100%);
  transform: translateY(-50%) rotate(0deg);
  filter: drop-shadow(0 0 12px rgba(64,225,255,.62));
}
.hero-growth-band__line--one {
  transform: rotate(-7deg) scaleX(.98);
}
.hero-growth-band__line--two {
  transform: rotate(-13deg) scaleX(.90);
}
.hero-growth-band__line--three {
  transform: rotate(-19deg) scaleX(.84);
}
@keyframes heroGrowthSweepOneFixed {
  0%, 100% { opacity: .58; transform: translateX(-1%) translateY(8px) rotate(-7deg) scaleX(.92); }
  50% { opacity: 1; transform: translateX(2%) translateY(-8px) rotate(-7deg) scaleX(1.04); }
}
@keyframes heroGrowthSweepTwoFixed {
  0%, 100% { opacity: .42; transform: translateX(-2%) translateY(8px) rotate(-13deg) scaleX(.84); }
  50% { opacity: .90; transform: translateX(2%) translateY(-8px) rotate(-13deg) scaleX(.96); }
}
@keyframes heroGrowthSweepThreeFixed {
  0%, 100% { opacity: .30; transform: translateX(-2%) translateY(10px) rotate(-19deg) scaleX(.76); }
  50% { opacity: .76; transform: translateX(2%) translateY(-10px) rotate(-19deg) scaleX(.90); }
}
.hero-growth-band__line--one { animation-name: heroGrowthSweepOneFixed; }
.hero-growth-band__line--two { animation-name: heroGrowthSweepTwoFixed; }
.hero-growth-band__line--three { animation-name: heroGrowthSweepThreeFixed; }
@media (max-width: 760px) {
  .hero-growth-band__line::after {
    width: 16px;
    height: 16px;
    right: -7px;
  }
}


/* === Étape 18 : animation pleine largeur derrière et autour de l’image du hero === */
.hero--stacked {
  position: relative;
  overflow: hidden;
  isolation: isolate;
}
.hero-wide-growth {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  overflow: hidden;
}
.hero-wide-growth__wash {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 14% 24%, rgba(77, 205, 255, .18), transparent 24%),
    radial-gradient(circle at 84% 18%, rgba(84,202,78,.14), transparent 24%),
    radial-gradient(circle at 50% 10%, rgba(10, 99, 255, .08), transparent 30%),
    linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(225,245,255,.36) 42%, rgba(255,255,255,0) 100%);
}
.hero-wide-growth__cluster {
  position: absolute;
  top: 116px;
  bottom: 270px;
  width: min(33vw, 420px);
  min-width: 260px;
  filter: drop-shadow(0 0 18px rgba(64,225,255,.18));
}
.hero-wide-growth__cluster--left {
  left: -24px;
}
.hero-wide-growth__cluster--right {
  right: -24px;
  transform: scaleX(-1);
}
.hero-wide-growth__line {
  position: absolute;
  left: 0;
  height: 4px;
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(84,202,78,0), rgba(84,202,78,.92) 24%, rgba(87,223,255,.98) 62%, rgba(10,99,255,0));
  box-shadow: 0 0 20px rgba(87,223,255,.34), 0 0 28px rgba(84,202,78,.12);
  transform-origin: left center;
}
.hero-wide-growth__line::after {
  content: "";
  position: absolute;
  right: -8px;
  top: 50%;
  width: 18px;
  height: 18px;
  transform: translateY(-50%);
  clip-path: polygon(0 50%, 64% 0, 64% 28%, 100% 28%, 100% 72%, 64% 72%, 64% 100%);
  background: linear-gradient(135deg, #89efff 0%, #54CA4E 26%, #0a63ff 76%);
  filter: drop-shadow(0 0 10px rgba(87,223,255,.46));
}
.hero-wide-growth__line--a {
  width: 92%;
  bottom: 18%;
  transform: rotate(-18deg) scaleX(.92);
  animation: sideGrowthA 4.9s ease-in-out infinite;
}
.hero-wide-growth__line--b {
  width: 78%;
  left: 10%;
  bottom: 36%;
  opacity: .84;
  transform: rotate(-29deg) scaleX(.86);
  animation: sideGrowthB 5.8s ease-in-out infinite;
}
.hero-wide-growth__line--c {
  width: 58%;
  left: 24%;
  bottom: 52%;
  opacity: .68;
  transform: rotate(-40deg) scaleX(.78);
  animation: sideGrowthC 6.6s ease-in-out infinite;
}
.hero-wide-growth__dot {
  position: absolute;
  width: 15px;
  height: 15px;
  border-radius: 50%;
  background: radial-gradient(circle, #ffffff 0%, #6ce6ff 38%, #54CA4E 100%);
  box-shadow: 0 0 0 0 rgba(108,230,255,.36), 0 0 22px rgba(108,230,255,.42);
}
.hero-wide-growth__dot--a {
  left: 48%;
  bottom: 46%;
  animation: sideGrowthDot 2.6s ease-in-out infinite;
}
.hero-wide-growth__dot--b {
  left: 72%;
  bottom: 64%;
  animation: sideGrowthDot 2.6s ease-in-out .8s infinite;
}
.hero__media,
.hero__intro {
  position: relative;
  z-index: 1;
}
.hero__media-frame {
  position: relative;
  z-index: 2;
}
@keyframes sideGrowthA {
  0%, 100% { opacity: .54; transform: translateX(-4%) translateY(8px) rotate(-18deg) scaleX(.88); }
  50% { opacity: 1; transform: translateX(2%) translateY(-8px) rotate(-18deg) scaleX(1.02); }
}
@keyframes sideGrowthB {
  0%, 100% { opacity: .34; transform: translateX(-5%) translateY(10px) rotate(-29deg) scaleX(.80); }
  50% { opacity: .88; transform: translateX(3%) translateY(-10px) rotate(-29deg) scaleX(.94); }
}
@keyframes sideGrowthC {
  0%, 100% { opacity: .22; transform: translateX(-6%) translateY(12px) rotate(-40deg) scaleX(.72); }
  50% { opacity: .68; transform: translateX(3%) translateY(-12px) rotate(-40deg) scaleX(.86); }
}
@keyframes sideGrowthDot {
  0%, 100% { transform: scale(.82); opacity: .72; box-shadow: 0 0 0 0 rgba(108,230,255,0), 0 0 18px rgba(108,230,255,.30); }
  50% { transform: scale(1.18); opacity: 1; box-shadow: 0 0 0 14px rgba(108,230,255,0), 0 0 32px rgba(108,230,255,.58); }
}
@media (max-width: 1200px) {
  .hero-wide-growth__cluster { width: min(30vw, 340px); }
}
@media (max-width: 980px) {
  .hero-wide-growth__cluster {
    top: 118px;
    bottom: 340px;
    width: 220px;
    min-width: 220px;
    opacity: .8;
  }
  .hero-wide-growth__cluster--left { left: -52px; }
  .hero-wide-growth__cluster--right { right: -52px; }
}
@media (max-width: 760px) {
  .hero-wide-growth__cluster {
    top: 92px;
    bottom: auto;
    height: 180px;
    width: 168px;
    min-width: 168px;
    opacity: .72;
  }
  .hero-wide-growth__cluster--left { left: -68px; }
  .hero-wide-growth__cluster--right { right: -68px; }
  .hero-wide-growth__line { height: 3px; }
  .hero-wide-growth__line::after { width: 14px; height: 14px; right: -6px; }
  .hero-wide-growth__dot { width: 11px; height: 11px; }
}
@media (prefers-reduced-motion: reduce) {
  .hero-wide-growth__line,
  .hero-wide-growth__dot {
    animation: none !important;
  }
}


/* === Étape 19 : flèches latérales orientées vers l’image + suppression des sphères === */
.hero-wide-growth__dot {
  display: none !important;
}
.hero-wide-growth__cluster--left {
  left: -24px;
  transform: none;
}
.hero-wide-growth__cluster--right {
  right: -24px;
  transform: none;
}
.hero-wide-growth__cluster--left .hero-wide-growth__line {
  left: 0;
  right: auto;
  transform-origin: left center;
  background: linear-gradient(90deg, rgba(84,202,78,0), rgba(84,202,78,.92) 24%, rgba(87,223,255,.98) 62%, rgba(10,99,255,0));
}
.hero-wide-growth__cluster--left .hero-wide-growth__line::after {
  left: auto;
  right: -8px;
  clip-path: polygon(0 50%, 64% 0, 64% 28%, 100% 28%, 100% 72%, 64% 72%, 64% 100%);
  transform: translateY(-50%);
}
.hero-wide-growth__cluster--right .hero-wide-growth__line {
  left: auto;
  right: 0;
  transform-origin: right center;
  background: linear-gradient(270deg, rgba(84,202,78,0), rgba(84,202,78,.92) 24%, rgba(87,223,255,.98) 62%, rgba(10,99,255,0));
}
.hero-wide-growth__cluster--right .hero-wide-growth__line::after {
  right: auto;
  left: -8px;
  clip-path: polygon(100% 50%, 36% 0, 36% 28%, 0 28%, 0 72%, 36% 72%, 36% 100%);
  transform: translateY(-50%);
}
.hero-wide-growth__cluster--left .hero-wide-growth__line--a {
  transform: rotate(-18deg) scaleX(.92);
  animation-name: sideGrowthAInLeft;
}
.hero-wide-growth__cluster--left .hero-wide-growth__line--b {
  transform: rotate(-29deg) scaleX(.86);
  animation-name: sideGrowthBInLeft;
}
.hero-wide-growth__cluster--left .hero-wide-growth__line--c {
  transform: rotate(-40deg) scaleX(.78);
  animation-name: sideGrowthCInLeft;
}
.hero-wide-growth__cluster--right .hero-wide-growth__line--a {
  transform: rotate(18deg) scaleX(.92);
  animation-name: sideGrowthAInRight;
}
.hero-wide-growth__cluster--right .hero-wide-growth__line--b {
  transform: rotate(29deg) scaleX(.86);
  animation-name: sideGrowthBInRight;
}
.hero-wide-growth__cluster--right .hero-wide-growth__line--c {
  transform: rotate(40deg) scaleX(.78);
  animation-name: sideGrowthCInRight;
}
@keyframes sideGrowthAInLeft {
  0%,100% { opacity:.54; transform: translateX(-4%) translateY(8px) rotate(-18deg) scaleX(.88); }
  50% { opacity:1; transform: translateX(2%) translateY(-8px) rotate(-18deg) scaleX(1.02); }
}
@keyframes sideGrowthBInLeft {
  0%,100% { opacity:.34; transform: translateX(-5%) translateY(10px) rotate(-29deg) scaleX(.80); }
  50% { opacity:.88; transform: translateX(3%) translateY(-10px) rotate(-29deg) scaleX(.94); }
}
@keyframes sideGrowthCInLeft {
  0%,100% { opacity:.22; transform: translateX(-6%) translateY(12px) rotate(-40deg) scaleX(.72); }
  50% { opacity:.68; transform: translateX(3%) translateY(-12px) rotate(-40deg) scaleX(.86); }
}
@keyframes sideGrowthAInRight {
  0%,100% { opacity:.54; transform: translateX(4%) translateY(8px) rotate(18deg) scaleX(.88); }
  50% { opacity:1; transform: translateX(-2%) translateY(-8px) rotate(18deg) scaleX(1.02); }
}
@keyframes sideGrowthBInRight {
  0%,100% { opacity:.34; transform: translateX(5%) translateY(10px) rotate(29deg) scaleX(.80); }
  50% { opacity:.88; transform: translateX(-3%) translateY(-10px) rotate(29deg) scaleX(.94); }
}
@keyframes sideGrowthCInRight {
  0%,100% { opacity:.22; transform: translateX(6%) translateY(12px) rotate(40deg) scaleX(.72); }
  50% { opacity:.68; transform: translateX(-3%) translateY(-12px) rotate(40deg) scaleX(.86); }
}
@media (max-width: 980px) {
  .hero-wide-growth__cluster--left { left: -52px; }
  .hero-wide-growth__cluster--right { right: -52px; }
}
@media (max-width: 760px) {
  .hero-wide-growth__cluster--left { left: -68px; }
  .hero-wide-growth__cluster--right { right: -68px; }
}


/* === Étape 20 : inversion simple du sens des pointes de flèches === */
.hero-wide-growth__cluster--left .hero-wide-growth__line::after {
  left: auto;
  right: -8px;
  clip-path: polygon(100% 50%, 36% 0, 36% 28%, 0 28%, 0 72%, 36% 72%, 36% 100%);
}
.hero-wide-growth__cluster--right .hero-wide-growth__line::after {
  right: auto;
  left: -8px;
  clip-path: polygon(0 50%, 64% 0, 64% 28%, 100% 28%, 100% 72%, 64% 72%, 64% 100%);
}
@media (max-width: 760px) {
  .hero-wide-growth__cluster--left .hero-wide-growth__line::after { right: -6px; }
  .hero-wide-growth__cluster--right .hero-wide-growth__line::after { left: -6px; }
}


/* === Étape 21 : preuve terrain + articulation PILOTYAM / RODYAM === */
.proof {
  background:
    radial-gradient(circle at 14% 24%, rgba(33,183,255,.12), transparent 24%),
    radial-gradient(circle at 86% 26%, rgba(84,202,78,.10), transparent 24%),
    linear-gradient(180deg, #f4fbff 0%, #e9f7ff 52%, #f6fcff 100%);
}
.proof__layout {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(320px, .72fr);
  gap: 34px;
  align-items: stretch;
}
.proof__content,
.proof__panel {
  position: relative;
  border-radius: 36px;
  border: 1px solid rgba(255,255,255,.90);
  background: rgba(255,255,255,.74);
  box-shadow: 0 22px 64px rgba(6,39,98,.09);
  backdrop-filter: blur(18px);
}
.proof__content { padding: clamp(30px, 4vw, 48px); }
.proof__content h2 { max-width: 840px; }
.proof__content p { max-width: 820px; }
.proof__panel {
  padding: clamp(30px, 4vw, 44px);
  overflow: hidden;
  background: linear-gradient(160deg, rgba(6,70,184,.96), rgba(84,202,78,.86));
  color: #fff;
}
.proof__panel::before {
  content: "";
  position: absolute;
  width: 280px;
  height: 280px;
  right: -95px;
  top: -100px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(87,223,255,.32), transparent 66%);
}
.proof__panel > * { position: relative; }
.proof__number {
  display: block;
  color: #fff;
  font-size: clamp(4.2rem, 9vw, 7.2rem);
  line-height: .84;
  font-weight: 950;
  letter-spacing: -.08em;
  margin-bottom: 26px;
}
.proof__panel p {
  color: rgba(255,255,255,.84);
  font-weight: 620;
}
.ecosystem {
  background: linear-gradient(135deg, #071833 0%, #0b2047 48%, #081a38 100%);
  overflow: hidden;
}
.ecosystem::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    radial-gradient(circle at 14% 22%, rgba(33,183,255,.16), transparent 26%),
    radial-gradient(circle at 86% 26%, rgba(84,202,78,.12), transparent 25%);
  pointer-events: none;
}
.ecosystem__layout {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(360px, 1fr);
  gap: 34px;
  align-items: center;
}
.ecosystem .section-kicker { color: #6dc5ff; }
.ecosystem h2 { color: #fff; }
.ecosystem__intro p { color: rgba(227,237,255,.78); max-width: 760px; }
.ecosystem__cards {
  display: grid;
  gap: 18px;
}
.ecosystem-card {
  position: relative;
  overflow: hidden;
  padding: 30px;
  border-radius: 30px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: 0 24px 64px rgba(0,0,0,.18);
  backdrop-filter: blur(18px);
}
.ecosystem-card::after {
  content: "";
  position: absolute;
  inset: auto 24px 0;
  height: 4px;
  border-radius: 999px 999px 0 0;
  background: linear-gradient(90deg, var(--green-500), var(--blue-400));
  opacity: .9;
}
.ecosystem-card span {
  display: inline-flex;
  margin-bottom: 16px;
  color: #54CA4E;
  letter-spacing: .12em;
  text-transform: uppercase;
  font-weight: 900;
  font-size: .78rem;
}
.ecosystem-card h3 { color: #fff; }
.ecosystem-card p { color: rgba(227,237,255,.76); margin-bottom: 0; }
.ecosystem-card--rodyam span { color: #6dc5ff; }
.footer__credit {
  margin-top: -8px;
  font-size: .94rem;
  color: rgba(227,237,255,.62) !important;
}
.footer__credit a {
  color: #54CA4E;
  font-weight: 780;
}
.footer__credit a:hover { color: #6dc5ff; }
@media (max-width: 980px) {
  .proof__layout,
  .ecosystem__layout {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 760px) {
  .proof__content,
  .proof__panel,
  .ecosystem-card {
    border-radius: 26px;
  }
  .proof__number { font-size: 4.4rem; }
}


/* === Étape 22 : articulation PILOTYAM / RODYAM clarifiée === */
.ecosystem__intro p {
  margin-bottom: 16px;
}
.ecosystem__intro p:last-child {
  margin-bottom: 0;
}
.ecosystem-card h3 {
  line-height: 1.18;
}
.ecosystem-card p {
  line-height: 1.62;
}


/* === Étape 23 : sobriété visuelle, suppression des dégradés UI, preuve moins redondante === */
body {
  background: #f3faff !important;
}
body::before {
  background-image:
    linear-gradient(rgba(6, 99, 255, .025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(6, 99, 255, .025) 1px, transparent 1px) !important;
}
.page-glow {
  display: none !important;
}

/* Couleurs pleines à la place des dégradés décoratifs */
.eyebrow span,
.hero__stage .eyebrow span,
.method-card::after,
.ecosystem-card::after {
  background: #54CA4E !important;
}
.button--primary {
  background: #0a63ff !important;
  box-shadow: 0 16px 34px rgba(10, 99, 255, .18) !important;
}
.problem,
.offers,
.distinction,
.faq,
.ecosystem,
.site-footer {
  background: #071833 !important;
}
.method,
.audience,
.diagnostic,
.contact,
.proof {
  background: #eef8ff !important;
}
.hero__stage,
.outcome-panel,
.offer-card--main {
  background: #0646b8 !important;
}
.distinction__panel,
.diagnostic__box,
.visual-card,
.result-card,
.method-card,
.offer-card,
.mini-card,
.contact-form,
details,
.proof__content,
.proof__panel,
.ecosystem-card,
.audience__tags span {
  background: rgba(255,255,255,.88) !important;
}
.problem .mini-card,
.faq details,
.ecosystem-card {
  background: rgba(255,255,255,.08) !important;
}
.logo-card::before,
.method-card::before,
.proof__panel::before,
.ecosystem::before,
.diagnostic__box::before,
.outcome-panel::before {
  display: none !important;
}

/* Section preuve : moins de redondance, plus de substance */
.proof__layout {
  grid-template-columns: minmax(0, .98fr) minmax(360px, .82fr) !important;
}
.proof__content,
.proof__panel {
  border: 1px solid rgba(6, 99, 255, .10) !important;
  box-shadow: 0 20px 54px rgba(6, 39, 98, .08) !important;
}
.proof__panel {
  color: #08234f !important;
  padding: clamp(30px, 4vw, 46px) !important;
}
.proof__label {
  margin: 0 0 22px;
  color: #0646b8 !important;
  font-size: .8rem;
  letter-spacing: .13em;
  text-transform: uppercase;
  font-weight: 900;
}
.proof__points {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  gap: 14px;
}
.proof__points li {
  display: grid;
  gap: 4px;
  padding: 16px 18px;
  border-radius: 18px;
  background: #f4f9ff;
  border: 1px solid rgba(6, 99, 255, .10);
}
.proof__points strong {
  color: #08234f;
  font-size: 1.02rem;
}
.proof__points span {
  color: #4b6680;
  line-height: 1.55;
  font-weight: 620;
}
.proof__note {
  margin-top: 22px;
  color: #536a82 !important;
  font-weight: 620 !important;
}
.proof__number {
  color: #08234f !important;
}

/* Puces et pastilles : style plat, plus sobre */
.hero__signals span,
.method-card li,
.offer-card li,
.audience__tags span,
.check-list li {
  background: #f2f7ff !important;
  border: 1px solid rgba(6, 99, 255, .10) !important;
  color: #28435f !important;
  box-shadow: none !important;
}
.offer-card--main li {
  background: rgba(255,255,255,.14) !important;
  border-color: rgba(255,255,255,.18) !important;
  color: rgba(255,255,255,.86) !important;
}
.method-card li::before {
  display: none !important;
}
.method-card li::after {
  background: #54CA4E !important;
  box-shadow: none !important;
}
.method-card__index {
  background: none !important;
  color: rgba(10, 99, 255, .22) !important;
  text-shadow: none !important;
}

/* Cartes RODYAM/PILOTYAM : pas de dégradé, mais contraste conservé */
.ecosystem-card h3 { color: #ffffff !important; }
.ecosystem-card p { color: rgba(227,237,255,.78) !important; }
.ecosystem-card span { color: #54CA4E !important; }
.ecosystem-card--rodyam span { color: #6dc5ff !important; }
.ecosystem-card::after {
  height: 3px !important;
  opacity: .85 !important;
}

@media (max-width: 980px) {
  .proof__layout {
    grid-template-columns: 1fr !important;
  }
}


/* === Étape 24 : retour aux couleurs précédentes pour les offres et la FAQ === */
.offers,
.faq {
  background: linear-gradient(135deg, #071833 0%, #0b2047 48%, #081a38 100%) !important;
}

/* Offres : retour au contraste précédent */
.offers .offer-card {
  background: rgba(255,255,255,.88) !important;
  box-shadow: 0 18px 54px rgba(0,0,0,.18) !important;
}
.offers .offer-card h3,
.offers .offer-card__intro,
.offers .offer-card__included,
.offers .offer-card__price,
.offers .offer-card__price-label,
.offers .offer-card a {
  color: #09234f !important;
}
.offers .offer-card__label {
  color: var(--green-700) !important;
}
.offers .offer-check-list li {
  background: rgba(10,99,255,.065) !important;
  color: #2d506f !important;
  border: 1px solid rgba(6,99,255,.06) !important;
}
.offers .offer-check-list li::before {
  color: #54CA4E !important;
  background: rgba(84,202,78,.14) !important;
}
.offers .offer-card__price-block {
  border-top: 1px solid rgba(6,99,255,.12) !important;
}
.offers .offer-card--main {
  background: linear-gradient(160deg, rgba(5, 48, 127, .94), rgba(7, 99, 255, .88)) !important;
  color: #ffffff !important;
}
.offers .offer-card--main h3,
.offers .offer-card--main .offer-card__intro,
.offers .offer-card--main .offer-card__price,
.offers .offer-card--main a {
  color: #ffffff !important;
}
.offers .offer-card--main .offer-card__label,
.offers .offer-card--main .offer-card__included,
.offers .offer-card--main .offer-card__price-label {
  color: #54CA4E !important;
}
.offers .offer-card--main .offer-check-list li {
  background: rgba(255,255,255,.12) !important;
  color: rgba(255,255,255,.88) !important;
  border: 1px solid rgba(255,255,255,.10) !important;
}
.offers .offer-card--main .offer-check-list li::before {
  color: #54CA4E !important;
  background: rgba(84,202,78,.16) !important;
}
.offers .offer-card--main .offer-card__price-block {
  border-top: 1px solid rgba(255,255,255,.18) !important;
}

/* FAQ : retour au rendu clair précédent */
.faq details {
  background: rgba(255,255,255,.86) !important;
  box-shadow: 0 18px 54px rgba(0,0,0,.18) !important;
}
.faq summary {
  color: #0a2344 !important;
}
.faq details p {
  color: #42607d !important;
}


/* === Étape 25 : cartes méthode en bleu comme l'offre + texte blanc + animation plus visible === */
.method-card,
.method-card--featured {
  background: linear-gradient(160deg, rgba(5, 48, 127, .96), rgba(7, 99, 255, .90)) !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  box-shadow: 0 22px 58px rgba(6,39,98,.18), inset 0 1px 0 rgba(255,255,255,.10) !important;
}
.method-card::before {
  display: block !important;
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  padding: 1px;
  background: linear-gradient(135deg, rgba(84,202,78,.26), rgba(109,197,255,.24), rgba(255,255,255,.10));
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  opacity: .95;
  pointer-events: none;
}
.method-card::after {
  inset: auto 26px 0 !important;
  height: 5px !important;
  background: linear-gradient(90deg, #54CA4E 0%, #55d4ff 45%, #ffffff 100%) !important;
  box-shadow: 0 0 18px rgba(85,212,255,.30) !important;
  opacity: .95;
}
.method-card:hover {
  transform: translateY(-8px) scale(1.01);
  border-color: rgba(255,255,255,.18) !important;
  box-shadow: 0 26px 64px rgba(6,39,98,.24), 0 0 0 7px rgba(85,212,255,.09) !important;
}
.method-card--featured {
  transform: translateY(-14px) scale(1.02);
  box-shadow: 0 26px 74px rgba(6,39,98,.24), 0 0 0 8px rgba(109,197,255,.10) !important;
}
.method-card--featured:hover { transform: translateY(-18px) scale(1.025); }
.method-card__index {
  color: rgba(255,255,255,.22) !important;
  background: none !important;
  text-shadow: none !important;
}
.method-card h3,
.method-card p {
  color: #ffffff !important;
}
.method-card p {
  color: rgba(255,255,255,.82) !important;
}
.method-card ul {
  margin-top: 26px;
  gap: 12px;
}
.method-card li {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  background: rgba(255,255,255,.10) !important;
  border: 1px solid rgba(255,255,255,.22) !important;
  color: #ffffff !important;
  box-shadow: 0 12px 24px rgba(4, 28, 78, .18) !important;
  padding: 11px 16px 12px;
  font-size: .95rem;
  font-weight: 800;
  animation: methodPillBlueFloat 2.6s ease-in-out infinite;
}
.method-card li::before {
  display: block !important;
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: linear-gradient(90deg, rgba(84,202,78,.85) 0%, rgba(85,212,255,.82) 48%, rgba(255,255,255,0) 100%);
  opacity: .95;
  transform: translateX(-130%);
  animation: methodPillBlueSweep 2.6s ease-in-out infinite;
  z-index: 0;
}
.method-card li::after {
  content: "";
  position: absolute;
  left: 10px;
  right: 10px;
  top: 0;
  height: 4px;
  border-radius: 999px;
  background: linear-gradient(90deg, #54CA4E 0%, #5ad8ff 55%, #ffffff 100%) !important;
  box-shadow: 0 0 14px rgba(85,212,255,.45) !important;
  animation: methodPillBluePulse 1.5s ease-in-out infinite;
  z-index: 1;
}
.method-card li > * { position: relative; z-index: 2; }
.method-card li:hover {
  transform: translateY(-8px) scale(1.08);
  box-shadow: 0 20px 34px rgba(4,28,78,.28), 0 0 0 6px rgba(85,212,255,.10) !important;
  color: #ffffff !important;
}
@keyframes methodPillBlueFloat {
  0%,100% { transform: translateY(0) scale(1); }
  50% { transform: translateY(-8px) scale(1.06); }
}
@keyframes methodPillBlueSweep {
  0%,52%,100% { transform: translateX(-130%); opacity: 0; }
  14% { opacity: .98; }
  34% { transform: translateX(130%); opacity: 0; }
}
@keyframes methodPillBluePulse {
  0%,100% { opacity: .55; transform: scaleX(.70); }
  50% { opacity: 1; transform: scaleX(1); }
}
@media (prefers-reduced-motion: reduce) {
  .method-card li,
  .method-card li::before,
  .method-card li::after {
    animation: none !important;
  }
}


/* === Étape 31 : sélection spéciale PILOTYAM === */
.founder-program {
  padding-top: 10px;
}
.founder-program__panel {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(320px, .95fr);
  gap: 28px;
  align-items: stretch;
  background: #0a4ec2;
  border: 1px solid rgba(255,255,255,.12);
  border-radius: 34px;
  padding: 34px;
  box-shadow: 0 24px 70px rgba(7, 33, 84, .18);
  overflow: hidden;
  position: relative;
}
.founder-program__panel::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: radial-gradient(circle at 12% 12%, rgba(255,255,255,.08), transparent 22%), radial-gradient(circle at 88% 82%, rgba(255,138,61,.12), transparent 20%);
}
.founder-program__content,
.founder-program__aside {
  position: relative;
  z-index: 1;
}
.founder-program__kicker {
  color: rgba(255,255,255,.72);
}
.founder-program__rating {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
  margin: 4px 0 14px;
}
.founder-program__star {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  color: #ff8a3d;
  font-size: 1.15rem;
  text-shadow: 0 0 10px rgba(255,138,61,.28);
  animation: founderStarFloat 2.6s ease-in-out infinite;
}
.founder-program__star:nth-child(1) { animation-delay: 0s; }
.founder-program__star:nth-child(2) { animation-delay: .18s; }
.founder-program__star:nth-child(3) { animation-delay: .36s; }
.founder-program__star:nth-child(4) { animation-delay: .54s; }
.founder-program__star:nth-child(5) { animation-delay: .72s; }
.founder-program__rating-text {
  margin-left: 6px;
  color: #ffb36b;
  font-size: .95rem;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}
.founder-program h2 {
  color: #ffffff;
  margin-bottom: 16px;
}
.founder-program p {
  color: rgba(255,255,255,.86);
  margin: 0 0 12px;
}
.founder-program__note {
  color: rgba(255,255,255,.70);
  max-width: 62ch;
}
.founder-program__aside {
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 28px;
  padding: 24px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 18px;
}
.founder-program__list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 10px;
}
.founder-program__list li {
  position: relative;
  padding: 12px 14px 12px 48px;
  border-radius: 18px;
  background: rgba(255,255,255,.10);
  color: #ffffff;
  font-weight: 700;
}
.founder-program__list li::before {
  content: "★";
  position: absolute;
  left: 14px;
  top: 50%;
  transform: translateY(-50%);
  width: 22px;
  height: 22px;
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #0a4ec2;
  background: #ff8a3d;
  font-size: .78rem;
  box-shadow: 0 0 0 4px rgba(255,138,61,.16);
}
.founder-program__reassurance {
  margin: 0;
  color: rgba(255,255,255,.78);
  font-size: .95rem;
}
.founder-program__button {
  align-self: flex-start;
  background: #ff8a3d;
  color: #0a2f73;
  border-color: #ff8a3d;
  box-shadow: 0 14px 28px rgba(255,138,61,.26);
}
.founder-program__button:hover {
  background: #ffad6a;
  color: #082963;
  border-color: #ffad6a;
}
@keyframes founderStarFloat {
  0%, 100% { transform: translateY(0) scale(1); opacity: .88; }
  50% { transform: translateY(-5px) scale(1.08); opacity: 1; }
}
@media (max-width: 980px) {
  .founder-program__panel {
    grid-template-columns: 1fr;
    padding: 28px;
  }
}
@media (max-width: 760px) {
  .founder-program__panel {
    border-radius: 28px;
    padding: 22px;
    gap: 20px;
  }
  .founder-program__aside {
    border-radius: 22px;
    padding: 18px;
  }
  .founder-program__rating-text {
    flex-basis: 100%;
    margin-left: 0;
  }
}
@media (prefers-reduced-motion: reduce) {
  .founder-program__star {
    animation: none !important;
  }
}


/* === Étape 29 : urgence douce avec sablier animé === */
.founder-program__eyebrow {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-bottom: 2px;
}
.founder-program__urgency {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  width: fit-content;
  max-width: 100%;
  padding: 10px 14px;
  border-radius: 999px;
  background: rgba(255, 138, 61, .14);
  border: 1px solid rgba(255, 138, 61, .32);
  box-shadow: 0 10px 28px rgba(255, 138, 61, .12);
}
.founder-program__hourglass {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: #ff8a3d;
  color: #0a4ec2;
  font-size: 1rem;
  box-shadow: 0 0 0 5px rgba(255,138,61,.14), 0 10px 18px rgba(255,138,61,.18);
  animation: founderHourglassTilt 2.4s ease-in-out infinite;
}
.founder-program__urgency-text {
  color: #ffe39a;
  font-size: .92rem;
  font-weight: 800;
  line-height: 1.35;
}
.founder-program__button {
  animation: founderButtonPulse 2.8s ease-in-out infinite;
}
@keyframes founderHourglassTilt {
  0%, 100% { transform: rotate(0deg) scale(1); }
  22% { transform: rotate(-10deg) scale(1.04); }
  50% { transform: rotate(10deg) scale(1.08); }
  78% { transform: rotate(-6deg) scale(1.03); }
}
@keyframes founderButtonPulse {
  0%, 100% { box-shadow: 0 14px 28px rgba(255,138,61,.26); }
  50% { box-shadow: 0 18px 36px rgba(255,138,61,.34), 0 0 0 10px rgba(255,138,61,.06); }
}
@media (max-width: 760px) {
  .founder-program__urgency {
    border-radius: 22px;
    align-items: flex-start;
    padding: 10px 12px;
  }
  .founder-program__urgency-text {
    font-size: .88rem;
  }
}
@media (prefers-reduced-motion: reduce) {
  .founder-program__hourglass,
  .founder-program__button {
    animation: none !important;
  }
}


/* === Étape 31 : pages commerciales indexables PILOTYAM === */
.content-page .site-header {
  background: rgba(247, 251, 255, .88);
  backdrop-filter: blur(18px);
}
.content-hero {
  padding-top: 150px;
  padding-bottom: 70px;
  background: radial-gradient(circle at 18% 8%, rgba(10,99,255,.12), transparent 28%), linear-gradient(180deg, rgba(245,250,255,.96), rgba(255,255,255,1));
}
.content-hero__layout {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(300px, .82fr);
  gap: 36px;
  align-items: center;
}
.content-hero h1 {
  font-size: clamp(2.45rem, 5vw, 5.2rem);
  line-height: .95;
  margin-bottom: 22px;
  letter-spacing: -0.07em;
}
.content-hero p {
  font-size: 1.12rem;
  color: #35506a;
  max-width: 66ch;
}
.content-hero__card {
  background: linear-gradient(180deg, rgba(10,99,255,.96), rgba(5,70,168,.96));
  border-radius: 34px;
  padding: 30px;
  color: #fff;
  box-shadow: 0 26px 70px rgba(5,70,168,.18);
}
.content-hero__card h2,
.content-hero__card p { color: #fff; }
.content-hero__card p { color: rgba(255,255,255,.82); }
.content-section {
  padding: 82px 0;
}
.content-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}
.content-card {
  background: #ffffff;
  border: 1px solid rgba(7,33,84,.10);
  border-radius: 28px;
  padding: 26px;
  box-shadow: 0 18px 50px rgba(7,33,84,.08);
}
.content-card h3 { margin-bottom: 10px; }
.content-card p { color: #3e5872; }
.content-columns {
  display: grid;
  grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
  gap: 36px;
  align-items: start;
}
.content-list {
  list-style: none;
  padding: 0;
  margin: 20px 0 0;
  display: grid;
  gap: 12px;
}
.content-list li {
  position: relative;
  padding: 14px 16px 14px 48px;
  background: rgba(10,99,255,.06);
  border: 1px solid rgba(10,99,255,.09);
  border-radius: 18px;
  color: #243f59;
  font-weight: 700;
}
.content-list li::before {
  content: "";
  position: absolute;
  left: 16px;
  top: 19px;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background: linear-gradient(135deg, #54CA4E, #0a63ff);
}
.content-cta {
  background: linear-gradient(135deg, rgba(6,76,184,.96), rgba(6,52,128,.98));
  border-radius: 34px;
  padding: 34px;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}
.content-cta h2, .content-cta p { color: #fff; }
.content-cta p { color: rgba(255,255,255,.78); margin-bottom: 0; }
@media (max-width: 980px) {
  .content-hero__layout,
  .content-columns,
  .content-grid {
    grid-template-columns: 1fr;
  }
  .content-cta {
    flex-direction: column;
    align-items: flex-start;
  }
}


/* === Étape 32 : mentions légales, confidentialité et note RGPD === */
.form-privacy-note {
  margin: 12px 0 0;
  color: rgba(44, 68, 92, .72);
  font-size: .86rem;
  line-height: 1.55;
}
.legal-content {
  max-width: 940px;
  background: rgba(255,255,255,.82);
  border: 1px solid rgba(10,99,255,.10);
  border-radius: 30px;
  padding: 38px;
  box-shadow: 0 18px 60px rgba(14, 37, 73, .08);
}
.legal-content h2 {
  margin: 28px 0 10px;
  color: #0b1730;
}
.legal-content h2:first-child { margin-top: 0; }
.legal-content p {
  color: #41556f;
  line-height: 1.68;
}
.legal-content a {
  color: #0a63ff;
  font-weight: 800;
}
@media (max-width: 760px) {
  .legal-content {
    padding: 24px;
    border-radius: 24px;
  }
}


/* === Étape 34 : réintégration stratégique des 3 visuels === */
.visual-story {
  background: #eef8ff;
}
.visual-strip--story {
  margin-top: 0;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
}
.visual-card {
  border-radius: 28px;
  overflow: hidden;
}
.visual-card figcaption {
  padding: 20px 22px 24px;
  color: #3c5874;
  font-weight: 500;
}
.visual-card__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 10px;
  font-size: .82rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #0e64d6;
}
.visual-card h3 {
  margin: 0 0 10px;
  color: #082a59;
  font-size: clamp(1.1rem, 1.9vw, 1.32rem);
  line-height: 1.3;
}
.visual-card p {
  margin: 0;
  color: #506b84;
  font-size: 1rem;
  line-height: 1.6;
}
@media (max-width: 980px) {
  .visual-strip--story {
    grid-template-columns: 1fr;
  }
  .visual-card img {
    aspect-ratio: 16 / 10;
  }
}


/* === Étape 36 : offre de démarrage avant les offres principales === */
.launch-offer {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(300px, .65fr);
  gap: 26px;
  align-items: stretch;
  margin-bottom: 30px;
  padding: clamp(28px, 4vw, 42px);
  border-radius: 34px;
  background: linear-gradient(135deg, #073a99 0%, #0b63ff 60%, #54CA4E 100%);
  color: #fff;
  box-shadow: 0 26px 70px rgba(6, 60, 150, .22);
  position: relative;
  overflow: hidden;
}
.launch-offer::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 12% 0%, rgba(255,255,255,.16), transparent 26%), radial-gradient(circle at 92% 100%, rgba(255,138,61,.16), transparent 24%);
  pointer-events: none;
}
.launch-offer__content,
.launch-offer__aside {
  position: relative;
  z-index: 1;
}
.launch-offer__label {
  margin: 0 0 12px;
  color: #dff9ff;
  font-size: .82rem;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.launch-offer h3 {
  margin: 0 0 14px;
  color: #fff;
  font-size: clamp(2rem, 4vw, 3.4rem);
  line-height: 1;
}
.launch-offer__subtitle {
  margin: 0;
  max-width: 760px;
  color: rgba(255,255,255,.88);
  font-size: clamp(1.02rem, 1.6vw, 1.16rem);
  line-height: 1.65;
}
.launch-offer__list {
  list-style: none;
  padding: 0;
  margin: 24px 0 0;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}
.launch-offer__list li {
  position: relative;
  padding: 12px 14px 12px 42px;
  border-radius: 18px;
  background: rgba(255,255,255,.12);
  color: #fff;
  font-weight: 750;
  line-height: 1.45;
}
.launch-offer__list li::before {
  content: "✓";
  position: absolute;
  left: 14px;
  top: 12px;
  width: 20px;
  height: 20px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: #ff8a3d;
  color: #073a99;
  font-size: .82rem;
  font-weight: 900;
}
.launch-offer__aside {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 14px;
  padding: 24px;
  border-radius: 26px;
  background: rgba(255,255,255,.12);
  border: 1px solid rgba(255,255,255,.16);
}
.launch-offer__tag {
  width: fit-content;
  padding: 9px 12px;
  border-radius: 999px;
  background: rgba(255,138,61,.18);
  color: #ffd0a6;
  font-size: .82rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .06em;
}
.launch-offer__price {
  margin: 0;
  color: #fff;
  font-size: clamp(1.45rem, 2.4vw, 2rem);
  font-weight: 900;
}
.launch-offer__note {
  margin: 0;
  color: rgba(255,255,255,.76);
  font-size: .95rem;
  line-height: 1.55;
}
.launch-offer__button {
  align-self: flex-start;
  background: #ff8a3d;
  color: #082a59;
  border-color: #ff8a3d;
  box-shadow: 0 16px 30px rgba(255,138,61,.24);
}
.launch-offer__button:hover {
  background: #ffad6a;
  color: #082a59;
  border-color: #ffad6a;
}
@media (max-width: 980px) {
  .launch-offer {
    grid-template-columns: 1fr;
  }
  .launch-offer__list {
    grid-template-columns: 1fr;
  }
}


/* === Étape 37 : précision offre de démarrage et projection commerciale === */
.launch-offer__positioning {
  margin: 12px 0 18px;
  color: rgba(255,255,255,.82);
  font-size: .98rem;
  line-height: 1.65;
  max-width: 74ch;
}
.launch-offer__note {
  line-height: 1.65;
}


/* === Étape 38 : intégration du visuel de démarrage sans redondance === */
.launch-offer--with-visual {
  grid-template-columns: minmax(0, 1.05fr) minmax(360px, .95fr);
  align-items: stretch;
}
.launch-offer__media {
  position: relative;
  z-index: 1;
  display: grid;
  gap: 16px;
  align-content: stretch;
}
.launch-offer__figure {
  margin: 0;
  border-radius: 28px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.26);
  background: rgba(255,255,255,.12);
  box-shadow: 0 18px 46px rgba(0,0,0,.18);
  min-height: 280px;
}
.launch-offer__figure img {
  width: 100%;
  height: 100%;
  min-height: 280px;
  object-fit: cover;
  object-position: center;
}
.launch-offer--with-visual .launch-offer__aside {
  padding: 20px;
  background: rgba(255,255,255,.14);
}
@media (max-width: 1100px) {
  .launch-offer--with-visual {
    grid-template-columns: 1fr;
  }
  .launch-offer__media {
    grid-template-columns: minmax(0, .95fr) minmax(280px, .75fr);
    align-items: stretch;
  }
}
@media (max-width: 820px) {
  .launch-offer__media {
    grid-template-columns: 1fr;
  }
  .launch-offer__figure,
  .launch-offer__figure img {
    min-height: 240px;
  }
}


/* === Étape 39 : mouvement flottant sur les visuels stratégiques === */
.hero__media-frame,
.launch-offer__figure {
  position: relative;
  will-change: transform;
  animation: pilotyamImageFloatForward 7.2s ease-in-out infinite;
}
.launch-offer__figure {
  animation-delay: .85s;
}
.hero__media-frame img,
.launch-offer__figure img {
  backface-visibility: hidden;
  transform: translateZ(0);
}
.hero__media-frame::after,
.launch-offer__figure::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  background: linear-gradient(115deg, transparent 0%, rgba(255,255,255,.18) 44%, rgba(255, 211, 76, .16) 50%, transparent 58%);
  opacity: 0;
  transform: translateX(-110%);
  animation: pilotyamImageLightSweep 8.6s ease-in-out infinite;
}
.launch-offer__figure::after {
  animation-delay: 1.2s;
}
@keyframes pilotyamImageFloatForward {
  0%, 100% {
    transform: translate3d(0, 0, 0) rotate(0deg);
  }
  38% {
    transform: translate3d(0, -9px, 0) rotate(.28deg);
  }
  68% {
    transform: translate3d(5px, -4px, 0) rotate(-.18deg);
  }
}
@keyframes pilotyamImageLightSweep {
  0%, 64%, 100% {
    opacity: 0;
    transform: translateX(-115%);
  }
  74% {
    opacity: .72;
  }
  88% {
    opacity: 0;
    transform: translateX(115%);
  }
}
@media (prefers-reduced-motion: reduce) {
  .hero__media-frame,
  .launch-offer__figure,
  .hero__media-frame::after,
  .launch-offer__figure::after {
    animation: none !important;
  }
}


/* === Étape 48 : orange premium + navigation plus visible === */
.site-header {
  background: linear-gradient(135deg, rgba(255, 138, 61, .96), rgba(255, 173, 106, .92)) !important;
  border-color: rgba(255, 138, 61, .84) !important;
  box-shadow: 0 20px 55px rgba(255, 138, 61, .22), 0 14px 36px rgba(6,39,98,.10) !important;
}
.site-header.is-scrolled {
  background: linear-gradient(135deg, rgba(255, 138, 61, .98), rgba(255, 173, 106, .96)) !important;
  box-shadow: 0 18px 48px rgba(255, 138, 61, .26), 0 14px 34px rgba(6,39,98,.12) !important;
}
.site-header .brand__icon {
  background: rgba(255,255,255,.94) !important;
  box-shadow: 0 10px 24px rgba(10, 61, 128, .14) !important;
}
.site-header .brand__text,
.site-header .brand__text span {
  color: #082a59 !important;
}
.site-header .brand__text strong {
  color: #54CA4E !important;
}
.main-nav a {
  color: #082a59 !important;
  background: rgba(255,255,255,.32);
  border: 1px solid rgba(255,255,255,.30);
}
.main-nav a:hover,
.main-nav a:focus-visible {
  background: rgba(255,255,255,.72) !important;
  color: #0646b8 !important;
  box-shadow: 0 10px 22px rgba(8, 42, 89, .10);
}
.nav-cta {
  background: linear-gradient(135deg, #0646b8, #54CA4E) !important;
  color: #ffffff !important;
  border-color: rgba(255,255,255,.24) !important;
  box-shadow: 0 12px 28px rgba(6, 70, 184, .24) !important;
}
.nav-cta:hover,
.nav-cta:focus-visible {
  background: linear-gradient(135deg, #043f9f, #54CA4E) !important;
  color: #ffffff !important;
}
.nav-toggle {
  background: rgba(255,255,255,.76) !important;
  box-shadow: 0 8px 18px rgba(8, 42, 89, .10);
}
.nav-toggle span {
  background: #082a59 !important;
}
@media (max-width: 900px) {
  .main-nav {
    background: linear-gradient(180deg, rgba(255,173,106,.98), rgba(255,138,61,.96)) !important;
    border-color: rgba(255,255,255,.60) !important;
  }
  .main-nav a {
    background: rgba(255,255,255,.42);
  }
}


/* === Étape 41 : bouton Contact bleu uni, footer conservé sobre === */
.nav-cta {
  background: #0646b8 !important;
  color: #ffffff !important;
  border-color: #0646b8 !important;
  box-shadow: 0 12px 28px rgba(6, 70, 184, .24) !important;
}
.nav-cta:hover,
.nav-cta:focus-visible {
  background: #043f9f !important;
  color: #ffffff !important;
  border-color: #043f9f !important;
  box-shadow: 0 14px 30px rgba(6, 70, 184, .30) !important;
}

/* === Étape 42 : lisibilité du bouton Contact dans le header jaune === */
.site-header .main-nav a.nav-cta,
.site-header .main-nav a.nav-cta:visited {
  background: #0646b8 !important;
  color: #ffffff !important;
  border-color: #0646b8 !important;
  box-shadow: 0 12px 28px rgba(6, 70, 184, .24) !important;
}
.site-header .main-nav a.nav-cta:hover,
.site-header .main-nav a.nav-cta:focus-visible {
  background: #043f9f !important;
  color: #ffffff !important;
  border-color: #043f9f !important;
  box-shadow: 0 14px 30px rgba(6, 70, 184, .30) !important;
}


/* === Étape 43 : visuels réintégrés dans les 3 mouvements === */
.method-card__visual {
  position: relative;
  z-index: 1;
  margin: 0 0 22px;
  border-radius: 24px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.22);
  background: rgba(255,255,255,.12);
  box-shadow: 0 18px 40px rgba(0, 0, 0, .14);
  animation: pilotyamMethodImageFloat 7.6s ease-in-out infinite;
}
.method-card:nth-child(2) .method-card__visual { animation-delay: .45s; }
.method-card:nth-child(3) .method-card__visual { animation-delay: .9s; }
.method-card__visual img {
  width: 100%;
  aspect-ratio: 16 / 10;
  object-fit: cover;
  object-position: center;
  display: block;
  transform: translateZ(0) scale(1.01);
}
.method-card__visual::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(115deg, transparent 0%, rgba(255,255,255,.14) 45%, rgba(255,138,61,.16) 51%, transparent 60%);
  opacity: 0;
  transform: translateX(-120%);
  animation: pilotyamMethodImageSweep 8.8s ease-in-out infinite;
}
.method-card:nth-child(2) .method-card__visual::after { animation-delay: .8s; }
.method-card:nth-child(3) .method-card__visual::after { animation-delay: 1.4s; }
@keyframes pilotyamMethodImageFloat {
  0%, 100% { transform: translate3d(0,0,0) rotate(0deg); }
  44% { transform: translate3d(0,-7px,0) rotate(.22deg); }
  72% { transform: translate3d(3px,-3px,0) rotate(-.16deg); }
}
@keyframes pilotyamMethodImageSweep {
  0%, 62%, 100% { opacity: 0; transform: translateX(-120%); }
  74% { opacity: .62; }
  88% { opacity: 0; transform: translateX(120%); }
}
@media (max-width: 980px) {
  .method-card__visual img { aspect-ratio: 16 / 9; }
}
@media (prefers-reduced-motion: reduce) {
  .method-card__visual,
  .method-card__visual::after {
    animation: none !important;
  }
}


/* === Étape 44 : formulaire SMTP prêt à connecter === */
.form-hp {
  position: absolute !important;
  left: -9999px !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}
.contact-form input:focus,
.contact-form select:focus,
.contact-form textarea:focus {
  outline: 2px solid rgba(255, 138, 61, .65);
  outline-offset: 2px;
}


/* === Étape 46 : wordmark PILOTYAM — flèche centrale corrigée === */
.site-header .brand {
  gap: 12px;
}
.site-header .brand__text {
  position: relative;
  display: inline-flex;
  align-items: baseline;
  gap: 2px;
  padding: 0 2px 8px;
  font-family: "Arial Rounded MT Bold", "Trebuchet MS", "Montserrat", "Instrument Sans", system-ui, sans-serif;
  font-size: clamp(1.18rem, 1.7vw, 1.48rem) !important;
  font-weight: 900 !important;
  letter-spacing: .18em !important;
  line-height: 1;
  text-transform: uppercase;
  filter: drop-shadow(0 3px 6px rgba(8, 42, 89, .10));
}
.site-header .brand__text span {
  color: #075fe8 !important;
  background: linear-gradient(180deg, #0b74ff 0%, #0646b8 58%, #062f83 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}
.site-header .brand__text strong {
  color: #54CA4E !important;
  background: linear-gradient(180deg, #54CA4E 0%, #54CA4E 60%, #54CA4E 100%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  font-weight: 900 !important;
}
.site-header .brand__text::after {
  content: "";
  position: absolute;
  left: 2px;
  right: 2px;
  bottom: 0;
  height: 2px;
  border-radius: 999px;
  background: linear-gradient(90deg, #54CA4E 0%, #54CA4E 48%, transparent 48%, transparent 54%, #075fe8 54%, #075fe8 100%);
  box-shadow: 0 0 0 1px rgba(255,255,255,.22), 0 4px 12px rgba(6, 70, 184, .14);
}
.site-header .brand__text::before {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -6px;
  width: 18px;
  height: 18px;
  transform: translateX(-48%) rotate(-28deg);
  background: linear-gradient(135deg, #22c7ff 0%, #0b74ff 46%, #06348e 100%);
  clip-path: polygon(7% 48%, 100% 0, 61% 100%);
  box-shadow: 0 3px 8px rgba(6, 70, 184, .28);
  z-index: 2;
}
@media (max-width: 900px) {
  .site-header .brand__text {
    font-size: 1.04rem !important;
    letter-spacing: .135em !important;
  }
  .site-header .brand__text::before {
    width: 15px;
    height: 15px;
    bottom: -5px;
  }
}
@media (max-width: 420px) {
  .site-header .brand__text {
    font-size: .92rem !important;
    letter-spacing: .105em !important;
  }
}


/* === Étape 48 : harmonisation orange premium === */
:root {
  --orange-600: #ff8a3d;
  --orange-400: #ffad6a;
}
.site-header {
  background: linear-gradient(135deg, rgba(255, 138, 61, .96), rgba(255, 173, 106, .92)) !important;
  border-color: rgba(255, 138, 61, .78) !important;
  box-shadow: 0 20px 55px rgba(255, 138, 61, .20), 0 14px 36px rgba(6,39,98,.10) !important;
}
.site-header.is-scrolled {
  background: linear-gradient(135deg, rgba(255, 126, 43, .98), rgba(255, 173, 106, .95)) !important;
  box-shadow: 0 18px 48px rgba(255, 138, 61, .24), 0 14px 34px rgba(6,39,98,.12) !important;
}
@media (max-width: 900px) {
  .main-nav {
    background: linear-gradient(180deg, rgba(255, 173, 106, .98), rgba(255, 138, 61, .96)) !important;
  }
}
.hero__media-frame::after,
.launch-offer__figure::after,
.method-card__visual::after {
  background: linear-gradient(115deg, transparent 0%, rgba(255,255,255,.13) 45%, rgba(255,138,61,.18) 51%, transparent 60%) !important;
}
.contact-form input:focus,
.contact-form select:focus,
.contact-form textarea:focus {
  outline-color: rgba(255, 138, 61, .65) !important;
}


/* === Étape 49 : palette champagne premium + lisibilité renforcée === */
:root {
  --champagne-600: #E2C98B;
  --champagne-500: #D4B06A;
  --champagne-400: #E9D9B0;
}
.site-header {
  background: linear-gradient(135deg, rgba(226, 201, 139, .97), rgba(233, 217, 176, .94)) !important;
  border-color: rgba(212, 176, 106, .72) !important;
  box-shadow: 0 20px 55px rgba(212, 176, 106, .20), 0 14px 36px rgba(6,39,98,.10) !important;
}
.site-header.is-scrolled {
  background: linear-gradient(135deg, rgba(226, 201, 139, .99), rgba(233, 217, 176, .97)) !important;
  box-shadow: 0 18px 48px rgba(212, 176, 106, .24), 0 14px 34px rgba(6,39,98,.12) !important;
}
.site-header .brand__text,
.site-header .brand__text span,
.site-header .brand__text strong,
.main-nav a,
.main-nav a:visited {
  color: #082a59 !important;
}
.main-nav a {
  background: rgba(255,255,255,.42) !important;
  border: 1px solid rgba(255,255,255,.38) !important;
}
.main-nav a:hover,
.main-nav a:focus-visible {
  background: rgba(255,255,255,.82) !important;
  color: #0646b8 !important;
}
.nav-toggle {
  background: rgba(255,255,255,.86) !important;
}
.nav-toggle span { background: #082a59 !important; }
@media (max-width: 900px) {
  .main-nav {
    background: linear-gradient(180deg, rgba(233, 217, 176, .98), rgba(226, 201, 139, .96)) !important;
    border-color: rgba(255,255,255,.62) !important;
  }
}
.hero__media-frame::after,
.launch-offer__figure::after,
.method-card__visual::after {
  background: linear-gradient(115deg, transparent 0%, rgba(255,255,255,.14) 45%, rgba(226,201,139,.18) 51%, transparent 60%) !important;
}
.contact-form input:focus,
.contact-form select:focus,
.contact-form textarea:focus {
  outline-color: rgba(212, 176, 106, .72) !important;
}
.founder-program__star {
  color: var(--champagne-500) !important;
  text-shadow: 0 0 10px rgba(212,176,106,.24) !important;
}
.founder-program__rating-text {
  color: var(--champagne-400) !important;
}
.founder-program__list li::before,
.founder-program__button,
.launch-offer__list li::before,
.launch-offer__button,
.launch-offer__button:visited {
  background: var(--champagne-600) !important;
  border-color: var(--champagne-600) !important;
  color: #082a59 !important;
  box-shadow: 0 14px 28px rgba(212,176,106,.22) !important;
}
.founder-program__button:hover,
.launch-offer__button:hover,
.launch-offer__button:focus-visible,
.founder-program__button:focus-visible {
  background: var(--champagne-400) !important;
  border-color: var(--champagne-400) !important;
  color: #082a59 !important;
}
.launch-offer__tag {
  background: rgba(226,201,139,.20) !important;
  color: #fff4d8 !important;
}
.section .button--accent,
.button--accent {
  background: var(--champagne-600) !important;
  border-color: var(--champagne-600) !important;
  color: #082a59 !important;
}
.section .button--accent:hover,
.button--accent:hover,
.section .button--accent:focus-visible,
.button--accent:focus-visible {
  background: var(--champagne-400) !important;
  border-color: var(--champagne-400) !important;
  color: #082a59 !important;
}
.nav-cta,
.site-header .main-nav a.nav-cta,
.site-header .main-nav a.nav-cta:visited,
.button--primary {
  background: #0646b8 !important;
  color: #ffffff !important;
  border-color: #0646b8 !important;
}
.nav-cta:hover,
.nav-cta:focus-visible,
.site-header .main-nav a.nav-cta:hover,
.site-header .main-nav a.nav-cta:focus-visible,
.button--primary:hover,
.button--primary:focus-visible {
  background: #043f9f !important;
  color: #ffffff !important;
  border-color: #043f9f !important;
}


/* === Étape 50 : violet premium RODYAM-compatible + nouveau logo menu === */
:root {
  --pilot-lilac-700: #8D73C7;
  --pilot-lilac-600: #A48AD8;
  --pilot-lilac-500: #C5B3E8;
  --pilot-lilac-400: #E6DFF4;
  --pilot-lilac-300: #F2EEFA;
}
body {
  background:
    radial-gradient(circle at 16% 14%, rgba(141, 115, 199, .12), transparent 28%),
    radial-gradient(circle at 86% 22%, rgba(33, 183, 255, .10), transparent 24%),
    radial-gradient(circle at 84% 78%, rgba(84,202,78,.08), transparent 20%),
    linear-gradient(180deg, #ffffff 0%, #faf8fd 42%, #ffffff 100%) !important;
}
body::before {
  background-image:
    linear-gradient(rgba(141, 115, 199, .040) 1px, transparent 1px),
    linear-gradient(90deg, rgba(141, 115, 199, .040) 1px, transparent 1px) !important;
}
.page-glow {
  background: radial-gradient(ellipse at center, rgba(141, 115, 199, .14), transparent 63%) !important;
}
.site-header {
  height: 82px;
  padding: 10px 14px 10px 16px;
  background: linear-gradient(135deg, rgba(232, 225, 245, .98), rgba(245, 241, 251, .96)) !important;
  border-color: rgba(164, 138, 216, .36) !important;
  box-shadow: 0 20px 55px rgba(141, 115, 199, .15), 0 14px 36px rgba(6,39,98,.08) !important;
}
.site-header.is-scrolled {
  background: linear-gradient(135deg, rgba(232, 225, 245, .99), rgba(245, 241, 251, .98)) !important;
  box-shadow: 0 18px 48px rgba(141, 115, 199, .18), 0 14px 34px rgba(6,39,98,.10) !important;
}
.site-header .brand {
  gap: 0;
  min-width: 0;
  padding-right: 10px;
}
.site-header .brand__icon,
.site-header .brand__text { display: none !important; }
.site-header .brand__logo-full {
  display: block;
  height: 56px;
  width: auto;
  max-width: min(43vw, 420px);
  object-fit: contain;
  filter: drop-shadow(0 6px 14px rgba(255,255,255,.55)) drop-shadow(0 8px 18px rgba(10, 44, 107, .10));
}
.main-nav {
  gap: 10px;
}
.main-nav a,
.main-nav a:visited {
  color: #15375f !important;
}
.main-nav a {
  background: rgba(255,255,255,.56) !important;
  border: 1px solid rgba(164, 138, 216, .18) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.44);
  padding: 12px 15px;
}
.main-nav a:hover,
.main-nav a:focus-visible {
  background: rgba(255,255,255,.90) !important;
  color: #0646b8 !important;
  box-shadow: 0 12px 24px rgba(141, 115, 199, .12), inset 0 1px 0 rgba(255,255,255,.55);
}
.nav-cta,
.site-header .main-nav a.nav-cta,
.site-header .main-nav a.nav-cta:visited,
.button--primary {
  background: #0646b8 !important;
  color: #ffffff !important;
  border-color: #0646b8 !important;
  box-shadow: 0 14px 30px rgba(6, 70, 184, .22) !important;
}
.nav-cta:hover,
.nav-cta:focus-visible,
.site-header .main-nav a.nav-cta:hover,
.site-header .main-nav a.nav-cta:focus-visible,
.button--primary:hover,
.button--primary:focus-visible {
  background: #043f9f !important;
  color: #ffffff !important;
  border-color: #043f9f !important;
}
.nav-toggle {
  background: rgba(255,255,255,.90) !important;
  border: 1px solid rgba(164, 138, 216, .24);
  box-shadow: 0 8px 18px rgba(141, 115, 199, .10);
}
.nav-toggle span { background: #082a59 !important; }
.hero__media-frame::after,
.launch-offer__figure::after,
.method-card__visual::after {
  background: linear-gradient(115deg, transparent 0%, rgba(255,255,255,.14) 45%, rgba(164,138,216,.18) 51%, transparent 60%) !important;
}
.contact-form input:focus,
.contact-form select:focus,
.contact-form textarea:focus {
  outline-color: rgba(141, 115, 199, .68) !important;
}
.founder-program__star {
  color: var(--pilot-lilac-700) !important;
  text-shadow: 0 0 10px rgba(141,115,199,.22) !important;
}
.founder-program__rating-text {
  color: #5b5482 !important;
}
.founder-program__list li::before,
.founder-program__button,
.launch-offer__list li::before,
.launch-offer__button,
.launch-offer__button:visited,
.section .button--accent,
.button--accent {
  background: var(--pilot-lilac-400) !important;
  border-color: var(--pilot-lilac-500) !important;
  color: #173861 !important;
  box-shadow: 0 14px 28px rgba(141,115,199,.16) !important;
}
.founder-program__button:hover,
.launch-offer__button:hover,
.launch-offer__button:focus-visible,
.founder-program__button:focus-visible,
.section .button--accent:hover,
.button--accent:hover,
.section .button--accent:focus-visible,
.button--accent:focus-visible {
  background: #ffffff !important;
  border-color: var(--pilot-lilac-600) !important;
  color: #173861 !important;
}
.launch-offer__tag {
  background: rgba(141,115,199,.18) !important;
  color: #ece6fb !important;
}
@media (max-width: 980px) {
  .site-header { height: 78px; }
  .site-header .brand__logo-full {
    height: 50px;
    max-width: 48vw;
  }
}
@media (max-width: 900px) {
  .main-nav {
    background: linear-gradient(180deg, rgba(245,241,251,.99), rgba(232,225,245,.97)) !important;
    border: 1px solid rgba(164,138,216,.24) !important;
    box-shadow: 0 18px 45px rgba(141,115,199,.14) !important;
  }
  .main-nav a {
    background: rgba(255,255,255,.72) !important;
  }
}
@media (max-width: 760px) {
  .site-header {
    inset: 12px 12px auto;
    height: 72px;
    padding: 8px 10px 8px 12px;
  }
  .site-header .brand__logo-full {
    height: 42px;
    max-width: 54vw;
  }
}
@media (max-width: 420px) {
  .site-header .brand__logo-full {
    height: 38px;
    max-width: 58vw;
  }
}


/* === Étape 51 : direction graphique stabilisée — anthracite, argent, bleu, vert, champagne === */
:root {
  --p51-ink: #12171F;
  --p51-ink-2: #1C2330;
  --p51-ink-3: #263141;
  --p51-paper: #F4F6FA;
  --p51-silver: #B8C0CC;
  --p51-silver-light: #E5E9EF;
  --p51-blue: #2358E8;
  --p51-blue-dark: #1644BD;
  --p51-green: #54CA4E;
  --p51-green-light: #54CA4E;
  --p51-champagne: #C89A3D;
  --p51-champagne-light: #F6D67A;
  --p51-bronze-readable: #996515;
}
body {
  color: var(--p51-ink) !important;
  background:
    radial-gradient(circle at 15% 12%, rgba(35, 88, 232, .10), transparent 25%),
    radial-gradient(circle at 86% 18%, rgba(84,202,78,.08), transparent 25%),
    radial-gradient(circle at 50% 92%, rgba(184, 192, 204, .18), transparent 36%),
    linear-gradient(180deg, #ffffff 0%, var(--p51-paper) 47%, #ffffff 100%) !important;
}
body::before {
  background-image:
    linear-gradient(rgba(18, 23, 31, .034) 1px, transparent 1px),
    linear-gradient(90deg, rgba(18, 23, 31, .034) 1px, transparent 1px) !important;
}
.page-glow {
  background: radial-gradient(ellipse at center, rgba(184, 192, 204, .18), transparent 64%) !important;
}
p { color: #4F6078; }
.section-kicker, .eyebrow { color: var(--p51-blue); }
.site-header {
  height: 86px !important;
  padding: 10px 14px 10px 16px !important;
  background:
    linear-gradient(135deg, rgba(18, 23, 31, .985) 0%, rgba(28, 35, 48, .965) 58%, rgba(38, 49, 65, .955) 100%) !important;
  border: 1px solid rgba(229, 233, 239, .20) !important;
  box-shadow: 0 24px 68px rgba(18, 23, 31, .28), 0 12px 28px rgba(35, 88, 232, .08) !important;
  backdrop-filter: blur(22px) saturate(135%) !important;
}
.site-header::after {
  content: "";
  position: absolute;
  inset: 1px 1px auto 1px;
  height: 44%;
  border-radius: 999px 999px 44px 44px;
  background: linear-gradient(180deg, rgba(255,255,255,.13), rgba(255,255,255,0));
  pointer-events: none;
}
.site-header.is-scrolled {
  background:
    linear-gradient(135deg, rgba(18, 23, 31, .995) 0%, rgba(28, 35, 48, .985) 100%) !important;
  box-shadow: 0 20px 60px rgba(18, 23, 31, .34), 0 10px 24px rgba(35, 88, 232, .10) !important;
}
.site-header .brand {
  gap: 0 !important;
  min-width: 0;
  padding: 0 12px 0 0;
  position: relative;
  z-index: 2;
}
.site-header .brand__icon,
.site-header .brand__text { display: none !important; }
.site-header .brand__logo-full {
  display: block !important;
  height: 60px !important;
  width: auto !important;
  max-width: min(44vw, 430px) !important;
  object-fit: contain !important;
  filter:
    drop-shadow(0 1px 0 rgba(255,255,255,.22))
    drop-shadow(0 7px 14px rgba(0,0,0,.28))
    drop-shadow(0 0 10px rgba(255,255,255,.14)) !important;
}
.main-nav {
  gap: 9px !important;
  position: relative;
  z-index: 3;
}
.main-nav a,
.main-nav a:visited {
  color: #F4F6FA !important;
}
.main-nav a {
  padding: 12px 15px !important;
  background: rgba(244, 246, 250, .075) !important;
  border: 1px solid rgba(229, 233, 239, .14) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.07), 0 8px 18px rgba(0,0,0,.08) !important;
}
.main-nav a:hover,
.main-nav a:focus-visible {
  background: rgba(244, 246, 250, .16) !important;
  color: #ffffff !important;
  border-color: rgba(184, 192, 204, .36) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.10), 0 10px 22px rgba(0,0,0,.13) !important;
}
.nav-cta,
.site-header .main-nav a.nav-cta,
.site-header .main-nav a.nav-cta:visited,
.button--primary {
  background: var(--p51-blue) !important;
  color: #ffffff !important;
  border-color: rgba(255,255,255,.18) !important;
  box-shadow: 0 14px 30px rgba(35, 88, 232, .28), inset 0 1px 0 rgba(255,255,255,.16) !important;
}
.nav-cta:hover,
.nav-cta:focus-visible,
.site-header .main-nav a.nav-cta:hover,
.site-header .main-nav a.nav-cta:focus-visible,
.button--primary:hover,
.button--primary:focus-visible {
  background: var(--p51-blue-dark) !important;
  color: #ffffff !important;
  border-color: rgba(255,255,255,.24) !important;
}
.nav-toggle {
  background: rgba(244, 246, 250, .10) !important;
  border: 1px solid rgba(229, 233, 239, .18) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 8px 18px rgba(0,0,0,.14) !important;
}
.nav-toggle span { background: #F4F6FA !important; }
.hero__media-frame,
.logo-card,
.visual-card,
.method-card__visual {
  box-shadow: 0 22px 60px rgba(18, 23, 31, .15), 0 0 0 1px rgba(184,192,204,.20) !important;
}
.hero__media-frame::after,
.launch-offer__figure::after,
.method-card__visual::after {
  background: linear-gradient(115deg, transparent 0%, rgba(255,255,255,.15) 44%, rgba(184,192,204,.24) 49%, rgba(200,154,61,.10) 52%, transparent 61%) !important;
}
.method-card,
.offer-card,
.diagnostic__box,
.contact-form,
details,
.mini-card {
  border-color: rgba(184, 192, 204, .35) !important;
  box-shadow: 0 18px 50px rgba(18, 23, 31, .075) !important;
}
.problem,
.ecosystem,
.site-footer,
.founder-program__panel {
  background: linear-gradient(135deg, #12171F 0%, #1C2330 52%, #202C3C 100%) !important;
}
.problem .section-kicker,
.ecosystem .section-kicker,
.founder-program__kicker {
  color: #D9E0EA !important;
}
.problem h2,
.ecosystem h2,
.founder-program h2 {
  color: #ffffff !important;
}
.problem p,
.ecosystem p,
.founder-program p,
.founder-program__note,
.founder-program__reassurance {
  color: rgba(244,246,250,.78) !important;
}
.founder-program__star {
  color: var(--p51-champagne-light) !important;
  text-shadow: 0 0 8px rgba(246,214,122,.24), 0 3px 10px rgba(0,0,0,.20) !important;
  filter: drop-shadow(0 1px 0 rgba(255,255,255,.18));
}
.founder-program__rating-text {
  color: #F6D67A !important;
  letter-spacing: .08em !important;
}
.founder-program__urgency {
  background: rgba(244,246,250,.08) !important;
  border: 1px solid rgba(246,214,122,.26) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.08), 0 14px 34px rgba(0,0,0,.18) !important;
}
.founder-program__hourglass {
  background: linear-gradient(180deg, #F6D67A 0%, #C89A3D 100%) !important;
  color: #12171F !important;
  box-shadow: 0 0 0 5px rgba(246,214,122,.12), 0 10px 22px rgba(0,0,0,.22) !important;
}
.founder-program__urgency-text {
  color: #F4F6FA !important;
}
.founder-program__aside {
  background: rgba(244,246,250,.075) !important;
  border: 1px solid rgba(184,192,204,.22) !important;
}
.founder-program__list li {
  background: rgba(244,246,250,.08) !important;
  color: #F4F6FA !important;
}
.founder-program__list li::before,
.launch-offer__list li::before {
  background: var(--p51-champagne-light) !important;
  color: #12171F !important;
  box-shadow: 0 0 0 4px rgba(246,214,122,.13) !important;
}
.founder-program__button,
.founder-program__button:visited,
.launch-offer__button,
.launch-offer__button:visited,
.button--accent,
.section .button--accent {
  background: var(--p51-champagne-light) !important;
  color: #12171F !important;
  border-color: rgba(255,255,255,.22) !important;
  box-shadow: 0 14px 30px rgba(200,154,61,.23), inset 0 1px 0 rgba(255,255,255,.28) !important;
}
.founder-program__button:hover,
.founder-program__button:focus-visible,
.launch-offer__button:hover,
.launch-offer__button:focus-visible,
.button--accent:hover,
.button--accent:focus-visible,
.section .button--accent:hover,
.section .button--accent:focus-visible {
  background: #ffffff !important;
  color: #12171F !important;
  border-color: var(--p51-champagne) !important;
}
.launch-offer__tag {
  background: rgba(246,214,122,.14) !important;
  color: #F6D67A !important;
  border: 1px solid rgba(246,214,122,.22) !important;
}
.launch-offer__price,
.launch-offer__list li,
.launch-offer__note {
  color: #ffffff !important;
}
.check-list li::before,
.offer-card--main .offer-card__label,
.offer-card--main .offer-card__included,
.outcome-list strong,
.ecosystem-card span {
  color: var(--p51-green-light) !important;
}
.contact-form input:focus,
.contact-form select:focus,
.contact-form textarea:focus {
  outline: 2px solid rgba(35, 88, 232, .72) !important;
  outline-offset: 2px !important;
}
@media (max-width: 980px) {
  .site-header { height: 80px !important; }
  .site-header .brand__logo-full {
    height: 54px !important;
    max-width: 48vw !important;
  }
}
@media (max-width: 900px) {
  .main-nav {
    background: linear-gradient(180deg, rgba(18,23,31,.98), rgba(28,35,48,.98)) !important;
    border: 1px solid rgba(229,233,239,.16) !important;
    box-shadow: 0 18px 45px rgba(18,23,31,.25) !important;
  }
  .main-nav a {
    background: rgba(244,246,250,.08) !important;
    color: #F4F6FA !important;
  }
}
@media (max-width: 760px) {
  .site-header {
    inset: 12px 12px auto !important;
    height: 72px !important;
    padding: 8px 10px 8px 12px !important;
  }
  .site-header .brand__logo-full {
    height: 44px !important;
    max-width: 56vw !important;
  }
}
@media (max-width: 420px) {
  .site-header .brand__logo-full {
    height: 39px !important;
    max-width: 60vw !important;
  }
}


/* === Étape 52 : header définitif anthracite / argent + logo renforcé === */
:root {
  --p52-anthracite-950: #0B0F15;
  --p52-anthracite-900: #12171F;
  --p52-anthracite-850: #171E29;
  --p52-anthracite-800: #1C2330;
  --p52-silver-200: #F4F6FA;
  --p52-silver-350: #D9E0EA;
  --p52-silver-500: #B8C0CC;
  --p52-blue: #2358E8;
  --p52-blue-dark: #1545C7;
  --p52-green: #54CA4E;
  --p52-bronze: #996515;
  --p52-champagne: #C89A3D;
  --p52-champagne-light: #F6D67A;
}

body {
  background:
    radial-gradient(circle at 14% 12%, rgba(35, 88, 232, .10), transparent 26%),
    radial-gradient(circle at 88% 22%, rgba(84,202,78,.075), transparent 24%),
    radial-gradient(circle at 54% 88%, rgba(184, 192, 204, .12), transparent 30%),
    linear-gradient(180deg, #F8FBFF 0%, #F3F7FC 42%, #FFFFFF 100%) !important;
}

body::before {
  background-image:
    linear-gradient(rgba(18,23,31,.035) 1px, transparent 1px),
    linear-gradient(90deg, rgba(18,23,31,.035) 1px, transparent 1px) !important;
  opacity: .82;
}

.page-glow {
  background: radial-gradient(ellipse at center, rgba(35, 88, 232, .10), transparent 63%) !important;
}

/* Header : on retire toute dominante jaune/violette. Le menu devient le socle premium. */
.site-header {
  inset: 18px 18px auto !important;
  height: 96px !important;
  padding: 12px 18px 12px 18px !important;
  border-radius: 999px !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.075) 0%, rgba(255,255,255,.018) 38%, rgba(0,0,0,.16) 100%),
    radial-gradient(circle at 18% 14%, rgba(184,192,204,.18), transparent 34%),
    linear-gradient(135deg, #111820 0%, #171E29 48%, #0B0F15 100%) !important;
  border: 1px solid rgba(217, 224, 234, .32) !important;
  box-shadow:
    0 24px 70px rgba(18,23,31,.24),
    0 0 0 1px rgba(255,255,255,.035) inset,
    0 1px 0 rgba(255,255,255,.22) inset !important;
  backdrop-filter: blur(22px) saturate(1.18) !important;
}

.site-header.is-scrolled {
  background:
    linear-gradient(180deg, rgba(255,255,255,.065) 0%, rgba(255,255,255,.014) 42%, rgba(0,0,0,.18) 100%),
    linear-gradient(135deg, #10161E 0%, #171F2B 50%, #090D13 100%) !important;
  box-shadow:
    0 20px 62px rgba(18,23,31,.28),
    0 0 0 1px rgba(255,255,255,.035) inset,
    0 1px 0 rgba(255,255,255,.20) inset !important;
}

/* Logo : zone dédiée + version renforcée pour éviter qu'il se perde sur le noir. */
.site-header .brand {
  height: 72px !important;
  min-width: min(44vw, 560px) !important;
  max-width: min(46vw, 590px) !important;
  padding: 8px 24px 8px 12px !important;
  gap: 0 !important;
  border-radius: 999px !important;
  background:
    linear-gradient(90deg, rgba(244,246,250,.105) 0%, rgba(244,246,250,.05) 58%, rgba(244,246,250,0) 100%) !important;
  border: 1px solid rgba(217,224,234,.18) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.14),
    0 14px 34px rgba(0,0,0,.16) !important;
}

.site-header .brand::after {
  content: "";
  display: block;
  width: 1px;
  height: 42px;
  margin-left: 22px;
  background: linear-gradient(180deg, transparent 0%, rgba(217,224,234,.34) 18%, rgba(217,224,234,.28) 82%, transparent 100%);
  flex: 0 0 auto;
}

.site-header .brand__icon,
.site-header .brand__text {
  display: none !important;
}

.site-header .brand__logo-full {
  display: block !important;
  height: 66px !important;
  width: auto !important;
  max-width: 500px !important;
  object-fit: contain !important;
  object-position: left center !important;
  transform: translateY(1px) scale(1.02);
  transform-origin: left center;
  filter:
    brightness(1.22)
    contrast(1.16)
    saturate(1.08)
    drop-shadow(0 1px 0 rgba(255,255,255,.22))
    drop-shadow(0 8px 18px rgba(0,0,0,.45))
    drop-shadow(0 0 12px rgba(35,88,232,.12)) !important;
}

/* Navigation : texte clair, calme, premium. */
.main-nav {
  gap: 12px !important;
  margin-left: 18px !important;
}

.main-nav a,
.main-nav a:visited {
  color: #F4F6FA !important;
}

.main-nav a {
  padding: 13px 16px !important;
  font-weight: 780 !important;
  letter-spacing: -.01em;
  background: transparent !important;
  border: 1px solid transparent !important;
  text-shadow: 0 1px 10px rgba(0,0,0,.30);
}

.main-nav a:hover,
.main-nav a:focus-visible {
  background: rgba(244,246,250,.10) !important;
  color: #FFFFFF !important;
  border-color: rgba(217,224,234,.18) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.10),
    0 10px 22px rgba(0,0,0,.16) !important;
}

/* CTA : le bleu reste la seule couleur d'action. */
.nav-cta,
.site-header .main-nav a.nav-cta,
.site-header .main-nav a.nav-cta:visited,
.button--primary {
  background: linear-gradient(180deg, #2D6BFF 0%, var(--p52-blue) 54%, var(--p52-blue-dark) 100%) !important;
  color: #FFFFFF !important;
  border-color: rgba(255,255,255,.20) !important;
  text-shadow: none !important;
  box-shadow:
    0 16px 34px rgba(35,88,232,.34),
    inset 0 1px 0 rgba(255,255,255,.25) !important;
}

.nav-cta:hover,
.nav-cta:focus-visible,
.site-header .main-nav a.nav-cta:hover,
.site-header .main-nav a.nav-cta:focus-visible,
.button--primary:hover,
.button--primary:focus-visible {
  background: linear-gradient(180deg, #3674FF 0%, #2358E8 58%, #143FB8 100%) !important;
  color: #FFFFFF !important;
  border-color: rgba(255,255,255,.30) !important;
}

/* Argent / champagne : uniquement en micro-accent, pas en couleur dominante. */
.hero__media-frame,
.logo-card,
.visual-card,
.method-card__visual {
  box-shadow:
    0 22px 60px rgba(18, 23, 31, .13),
    0 0 0 1px rgba(184,192,204,.18) !important;
}

.hero__media-frame::after,
.launch-offer__figure::after,
.method-card__visual::after {
  background: linear-gradient(115deg, transparent 0%, rgba(255,255,255,.16) 44%, rgba(184,192,204,.26) 50%, transparent 61%) !important;
}

.founder-program__star {
  color: var(--p52-champagne-light) !important;
  text-shadow: 0 0 8px rgba(246,214,122,.20), 0 3px 10px rgba(0,0,0,.24) !important;
  filter: drop-shadow(0 1px 0 rgba(255,255,255,.16));
}

.founder-program__rating-text {
  color: #F6D67A !important;
}

.founder-program__hourglass,
.founder-program__list li::before,
.launch-offer__list li::before {
  background: linear-gradient(180deg, #F6D67A 0%, #C89A3D 100%) !important;
  color: #12171F !important;
  box-shadow: 0 0 0 4px rgba(246,214,122,.12), 0 10px 22px rgba(0,0,0,.18) !important;
}

.founder-program__button,
.founder-program__button:visited,
.launch-offer__button,
.launch-offer__button:visited,
.button--accent,
.section .button--accent {
  background: #F4F6FA !important;
  color: #12171F !important;
  border-color: rgba(184,192,204,.42) !important;
  box-shadow:
    0 14px 30px rgba(18,23,31,.12),
    inset 0 1px 0 rgba(255,255,255,.42) !important;
}

.founder-program__button:hover,
.founder-program__button:focus-visible,
.launch-offer__button:hover,
.launch-offer__button:focus-visible,
.button--accent:hover,
.button--accent:focus-visible,
.section .button--accent:hover,
.section .button--accent:focus-visible {
  background: #FFFFFF !important;
  color: #12171F !important;
  border-color: var(--p52-silver-500) !important;
}

.launch-offer__tag {
  background: rgba(246,214,122,.12) !important;
  color: #F6D67A !important;
  border: 1px solid rgba(246,214,122,.20) !important;
}

.nav-toggle {
  background: rgba(244,246,250,.10) !important;
  border: 1px solid rgba(217,224,234,.22) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.10), 0 8px 18px rgba(0,0,0,.18) !important;
}

.nav-toggle span {
  background: #F4F6FA !important;
}

@media (max-width: 1180px) {
  .site-header .brand {
    min-width: 400px !important;
    max-width: 44vw !important;
  }
  .site-header .brand__logo-full {
    height: 60px !important;
    max-width: 440px !important;
  }
  .main-nav {
    gap: 8px !important;
    margin-left: 10px !important;
  }
  .main-nav a {
    padding: 12px 12px !important;
  }
}

@media (max-width: 980px) {
  .site-header {
    height: 82px !important;
  }
  .site-header .brand {
    min-width: 0 !important;
    max-width: 58vw !important;
    height: 62px !important;
    padding: 6px 16px 6px 10px !important;
  }
  .site-header .brand::after {
    display: none;
  }
  .site-header .brand__logo-full {
    height: 54px !important;
    max-width: 50vw !important;
  }
}

@media (max-width: 900px) {
  .main-nav {
    background: linear-gradient(180deg, rgba(18,23,31,.985), rgba(28,35,48,.98)) !important;
    border: 1px solid rgba(217,224,234,.16) !important;
    box-shadow: 0 18px 45px rgba(18,23,31,.28) !important;
  }
  .main-nav a {
    background: rgba(244,246,250,.07) !important;
    color: #F4F6FA !important;
    border-color: rgba(217,224,234,.10) !important;
  }
}

@media (max-width: 760px) {
  .site-header {
    inset: 12px 12px auto !important;
    height: 72px !important;
    padding: 8px 10px 8px 10px !important;
  }
  .site-header .brand {
    height: 54px !important;
    max-width: 60vw !important;
    padding: 5px 10px 5px 8px !important;
  }
  .site-header .brand__logo-full {
    height: 46px !important;
    max-width: 54vw !important;
  }
}

@media (max-width: 420px) {
  .site-header .brand__logo-full {
    height: 40px !important;
    max-width: 58vw !important;
  }
}


/* === Étape 53 : direction lumineuse / bleu électrique / rythme commercial === */
:root {
  --p53-ink: #061B3A;
  --p53-ink-soft: #29435F;
  --p53-muted: #52657C;
  --p53-bg: #F7FBFF;
  --p53-card: rgba(255,255,255,.86);
  --p53-silver: #D9E3EF;
  --p53-silver-strong: #B8C4D3;
  --p53-blue: #0A63FF;
  --p53-blue-electric: #136DFF;
  --p53-blue-deep: #073A99;
  --p53-green: #54CA4E;
  --p53-green-deep: #54CA4E;
}

/* Base générale : on remet de la lumière et de l'élan. */
body {
  color: var(--p53-ink);
  background:
    radial-gradient(circle at 16% 10%, rgba(10, 99, 255, .13), transparent 25%),
    radial-gradient(circle at 88% 20%, rgba(84,202,78,.095), transparent 22%),
    radial-gradient(circle at 48% 88%, rgba(33, 183, 255, .075), transparent 30%),
    linear-gradient(180deg, #FFFFFF 0%, #F3F9FF 42%, #FFFFFF 100%) !important;
}

body::before {
  background-image:
    linear-gradient(rgba(10,99,255,.040) 1px, transparent 1px),
    linear-gradient(90deg, rgba(10,99,255,.040) 1px, transparent 1px) !important;
  opacity: .80;
}

.page-glow {
  background: radial-gradient(ellipse at center, rgba(10, 99, 255, .12), transparent 64%) !important;
}

/* Header final clair : logo lisible, navigation nette, CTA bleu. */
.site-header {
  inset: 16px 18px auto !important;
  height: 92px !important;
  padding: 12px 18px !important;
  border-radius: 999px !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.98) 0%, rgba(246,250,255,.95) 100%) !important;
  border: 1px solid rgba(184, 196, 211, .64) !important;
  box-shadow:
    0 22px 60px rgba(6, 39, 98, .13),
    0 0 0 1px rgba(255,255,255,.70) inset,
    0 1px 0 rgba(255,255,255,.95) inset !important;
  backdrop-filter: blur(22px) saturate(1.12) !important;
}

.site-header.is-scrolled {
  background:
    linear-gradient(180deg, rgba(255,255,255,.99) 0%, rgba(244,249,255,.97) 100%) !important;
  box-shadow:
    0 18px 50px rgba(6,39,98,.16),
    0 0 0 1px rgba(255,255,255,.74) inset !important;
}

/* Logo : capsule blanche assumée, aucun fond noir autour du mot-symbole. */
.site-header .brand {
  height: 72px !important;
  min-width: min(44vw, 560px) !important;
  max-width: min(46vw, 590px) !important;
  padding: 7px 24px 7px 10px !important;
  border-radius: 999px !important;
  background:
    radial-gradient(circle at 20% 20%, rgba(255,255,255,1), rgba(255,255,255,.72) 62%, rgba(235,244,255,.70) 100%) !important;
  border: 1px solid rgba(184,196,211,.50) !important;
  box-shadow:
    0 12px 30px rgba(6,39,98,.08),
    inset 0 1px 0 rgba(255,255,255,.95) !important;
}

.site-header .brand::after {
  content: "";
  display: block;
  width: 1px;
  height: 42px;
  margin-left: 22px;
  background: linear-gradient(180deg, transparent, rgba(10,99,255,.22), transparent);
  flex: 0 0 auto;
}

.site-header .brand__icon,
.site-header .brand__text {
  display: none !important;
}

.site-header .brand__logo-full {
  display: block !important;
  height: 64px !important;
  width: auto !important;
  max-width: 500px !important;
  object-fit: contain !important;
  object-position: left center !important;
  transform: translateY(0) scale(1.01);
  transform-origin: left center;
  filter:
    brightness(1.04)
    contrast(1.08)
    saturate(1.05)
    drop-shadow(0 1px 0 rgba(255,255,255,.55))
    drop-shadow(0 7px 14px rgba(6,39,98,.11)) !important;
}

/* Menu : plus léger, plus actionnable. */
.main-nav {
  gap: 9px !important;
  margin-left: 16px !important;
}

.main-nav a,
.main-nav a:visited {
  color: var(--p53-ink) !important;
}

.main-nav a {
  padding: 12px 15px !important;
  font-weight: 820 !important;
  background: rgba(255,255,255,.72) !important;
  border: 1px solid rgba(184,196,211,.34) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.72);
  text-shadow: none !important;
}

.main-nav a:hover,
.main-nav a:focus-visible {
  background: rgba(10,99,255,.10) !important;
  color: var(--p53-blue-deep) !important;
  border-color: rgba(10,99,255,.22) !important;
  box-shadow: 0 10px 22px rgba(10,99,255,.10), inset 0 1px 0 rgba(255,255,255,.80) !important;
}

/* CTA : bleu électrique, blanc lisible. */
.nav-cta,
.site-header .main-nav a.nav-cta,
.site-header .main-nav a.nav-cta:visited,
.button--primary {
  background: linear-gradient(180deg, #2E80FF 0%, var(--p53-blue-electric) 52%, #074ECF 100%) !important;
  color: #FFFFFF !important;
  border-color: rgba(255,255,255,.26) !important;
  box-shadow:
    0 16px 34px rgba(10,99,255,.26),
    inset 0 1px 0 rgba(255,255,255,.26) !important;
}

.nav-cta:hover,
.nav-cta:focus-visible,
.site-header .main-nav a.nav-cta:hover,
.site-header .main-nav a.nav-cta:focus-visible,
.button--primary:hover,
.button--primary:focus-visible {
  background: linear-gradient(180deg, #3A8BFF 0%, #0A63FF 58%, #0646B8 100%) !important;
  color: #FFFFFF !important;
  border-color: rgba(255,255,255,.34) !important;
}

/* La section problème redevient lumineuse : croissance = mouvement, pas lourdeur. */
.problem {
  background:
    radial-gradient(circle at 18% 18%, rgba(10,99,255,.11), transparent 28%),
    radial-gradient(circle at 88% 20%, rgba(84,202,78,.08), transparent 24%),
    linear-gradient(180deg, #F7FBFF 0%, #EEF7FF 100%) !important;
}

.problem .section-kicker {
  color: var(--p53-blue-deep) !important;
}

.problem h2 {
  color: var(--p53-ink) !important;
}

.problem p {
  color: var(--p53-muted) !important;
}

/* Bulles / cartes : bleu électrique assumé, lisible et engageant. */
.problem .mini-card {
  background: linear-gradient(180deg, #1472FF 0%, #075FE8 58%, #0646B8 100%) !important;
  border: 1px solid rgba(255,255,255,.70) !important;
  box-shadow: 0 22px 46px rgba(10,99,255,.20), inset 0 1px 0 rgba(255,255,255,.20) !important;
  color: #FFFFFF !important;
}

.problem .mini-card span {
  color: #54CA4E !important;
  text-shadow: 0 4px 14px rgba(0,0,0,.12);
}

.problem .mini-card h3 {
  color: #FFFFFF !important;
}

.problem .mini-card p {
  color: rgba(255,255,255,.88) !important;
}

/* Pont de réponse : punchy, proche de l’énergie des offres. */
.solution-bridge {
  background:
    linear-gradient(135deg, #073A99 0%, #0A63FF 62%, #54CA4E 100%) !important;
  border: 1px solid rgba(255,255,255,.62) !important;
  box-shadow: 0 24px 60px rgba(10,99,255,.22) !important;
}

.solution-bridge__label {
  color: rgba(255,255,255,.76) !important;
}

.solution-bridge h3 {
  color: #FFFFFF !important;
}

.solution-bridge p {
  color: rgba(255,255,255,.86) !important;
}

/* Méthode : on garde les cartes bleues, mais on renforce le côté électrique sans assombrir l’ensemble. */
.method {
  background:
    linear-gradient(180deg, #FFFFFF 0%, #F2F8FF 100%) !important;
}

.method .section-kicker {
  color: var(--p53-blue-deep) !important;
}

.method-card {
  background: linear-gradient(180deg, #126FFF 0%, #0A5EEA 62%, #0746B8 100%) !important;
  border: 1px solid rgba(255,255,255,.65) !important;
  box-shadow: 0 24px 52px rgba(10,99,255,.20), inset 0 1px 0 rgba(255,255,255,.18) !important;
}

.method-card__index {
  color: rgba(255,255,255,.28) !important;
}

.method-card h3,
.method-card p,
.method-card li {
  color: #FFFFFF !important;
}

.method-card p {
  color: rgba(255,255,255,.86) !important;
}

.method-card li {
  background: rgba(255,255,255,.14) !important;
  border: 1px solid rgba(255,255,255,.18);
}

/* On réserve le sombre aux zones qui ont besoin d'autorité, pas aux blocs de croissance. */
.ecosystem,
.site-footer {
  background: linear-gradient(135deg, #12171F 0%, #1C2330 52%, #202C3C 100%) !important;
}

.ecosystem .section-kicker,
.site-footer p,
.site-footer a {
  color: rgba(244,246,250,.78) !important;
}

/* Images : reflets plus propres, argent + bleu, pas jaune. */
.hero__media-frame::after,
.launch-offer__figure::after,
.method-card__visual::after {
  background: linear-gradient(115deg, transparent 0%, rgba(255,255,255,.14) 43%, rgba(33,183,255,.18) 50%, rgba(184,196,211,.12) 55%, transparent 64%) !important;
}

/* Champagne uniquement là où il signale une rareté ou une sélection. */
.founder-program__star {
  color: #F6D67A !important;
  text-shadow: 0 0 8px rgba(246,214,122,.22), 0 3px 10px rgba(0,0,0,.20) !important;
}

.founder-program__hourglass,
.founder-program__list li::before,
.launch-offer__list li::before {
  background: linear-gradient(180deg, #F6D67A 0%, #C89A3D 100%) !important;
  color: #12171F !important;
}

/* Boutons secondaires : plus sobres, moins de couleur parasite. */
.founder-program__button,
.founder-program__button:visited,
.launch-offer__button,
.launch-offer__button:visited,
.button--accent,
.section .button--accent {
  background: #FFFFFF !important;
  color: var(--p53-ink) !important;
  border-color: rgba(184,196,211,.52) !important;
  box-shadow: 0 14px 30px rgba(6,39,98,.12), inset 0 1px 0 rgba(255,255,255,.75) !important;
}

.founder-program__button:hover,
.founder-program__button:focus-visible,
.launch-offer__button:hover,
.launch-offer__button:focus-visible,
.button--accent:hover,
.button--accent:focus-visible,
.section .button--accent:hover,
.section .button--accent:focus-visible {
  background: rgba(10,99,255,.08) !important;
  border-color: rgba(10,99,255,.25) !important;
  color: var(--p53-blue-deep) !important;
}

.nav-toggle {
  background: rgba(255,255,255,.90) !important;
  border: 1px solid rgba(184,196,211,.42) !important;
  box-shadow: 0 8px 18px rgba(6,39,98,.10) !important;
}

.nav-toggle span {
  background: var(--p53-ink) !important;
}

@media (max-width: 1180px) {
  .site-header .brand {
    min-width: 380px !important;
    max-width: 44vw !important;
  }
  .site-header .brand__logo-full {
    height: 58px !important;
    max-width: 420px !important;
  }
  .main-nav {
    gap: 7px !important;
    margin-left: 10px !important;
  }
  .main-nav a {
    padding: 12px 12px !important;
  }
}

@media (max-width: 980px) {
  .site-header {
    height: 80px !important;
  }
  .site-header .brand {
    min-width: 0 !important;
    max-width: 58vw !important;
    height: 62px !important;
    padding: 6px 14px 6px 8px !important;
  }
  .site-header .brand::after {
    display: none;
  }
  .site-header .brand__logo-full {
    height: 52px !important;
    max-width: 50vw !important;
  }
}

@media (max-width: 900px) {
  .main-nav {
    background: rgba(255,255,255,.97) !important;
    border: 1px solid rgba(184,196,211,.44) !important;
    box-shadow: 0 18px 45px rgba(6,39,98,.16) !important;
  }
  .main-nav a {
    background: rgba(10,99,255,.055) !important;
    color: var(--p53-ink) !important;
    border-color: rgba(10,99,255,.10) !important;
  }
  .site-header .main-nav a.nav-cta {
    color: #FFFFFF !important;
  }
}

@media (max-width: 760px) {
  .site-header {
    inset: 12px 12px auto !important;
    height: 72px !important;
    padding: 8px 10px !important;
  }
  .site-header .brand {
    height: 54px !important;
    max-width: 60vw !important;
    padding: 5px 10px 5px 6px !important;
  }
  .site-header .brand__logo-full {
    height: 44px !important;
    max-width: 54vw !important;
  }
}

@media (max-width: 420px) {
  .site-header .brand__logo-full {
    height: 38px !important;
    max-width: 58vw !important;
  }
}


/* === Étape 54 : suppression anthracite / politique bleu nuit / rééquilibrage global === */
:root {
  --p54-night-1: #0A234A;
  --p54-night-2: #10356B;
  --p54-night-3: #1A4C93;
  --p54-night-soft: #214C84;
  --p54-sky: #F5FAFF;
  --p54-sky-2: #ECF5FF;
  --p54-sky-3: #E3F0FF;
  --p54-text: #082246;
  --p54-text-soft: #47617F;
  --p54-line: rgba(16, 53, 107, .14);
}

/* Intention globale : moins de rupture clair/noir, plus de continuité claire -> bleu nuit. */
body {
  color: var(--p54-text) !important;
  background:
    radial-gradient(circle at 14% 8%, rgba(19,109,255,.12), transparent 24%),
    radial-gradient(circle at 84% 16%, rgba(84,202,78,.07), transparent 22%),
    linear-gradient(180deg, #FFFFFF 0%, #F6FAFF 22%, #F1F8FF 50%, #EEF6FF 100%) !important;
}

body::before {
  opacity: .66 !important;
}

/* Section problem : on enlève la lourdeur anthracite, on garde de l’impact avec un bleu nuit plus propre. */
.problem {
  background:
    radial-gradient(circle at 14% 18%, rgba(255,255,255,.10), transparent 24%),
    radial-gradient(circle at 86% 22%, rgba(33,183,255,.16), transparent 22%),
    linear-gradient(135deg, #0B2A57 0%, #123A73 54%, #184988 100%) !important;
}
.problem .section-kicker { color: #A8D9FF !important; }
.problem h2 { color: #FFFFFF !important; }
.problem .narrow p { color: rgba(235,244,255,.86) !important; }
.problem .mini-card {
  background: linear-gradient(180deg, rgba(255,255,255,.14), rgba(255,255,255,.10)) !important;
  border: 1px solid rgba(255,255,255,.18) !important;
  box-shadow: 0 22px 52px rgba(6,34,70,.18), inset 0 1px 0 rgba(255,255,255,.08) !important;
}

/* Offre / preuves / audiences : plus de lumière pour casser la descente vers le sombre. */
.proof,
.offers,
.audience,
.faq,
.contact {
  background:
    radial-gradient(circle at 10% 16%, rgba(19,109,255,.07), transparent 24%),
    radial-gradient(circle at 88% 18%, rgba(84,202,78,.05), transparent 18%),
    linear-gradient(180deg, var(--p54-sky) 0%, var(--p54-sky-2) 100%) !important;
}

.proof__content,
.contact-form,
details,
.offer-card:not(.offer-card--main),
.audience__tags span {
  background: rgba(255,255,255,.84) !important;
  border: 1px solid rgba(255,255,255,.88) !important;
  box-shadow: 0 20px 56px rgba(8,34,70,.08) !important;
}

.proof__panel {
  background: linear-gradient(145deg, #0D3F8B 0%, #1160D8 65%, #54CA4E 100%) !important;
}

.offer-card--main {
  background: linear-gradient(155deg, #0B3B82 0%, #0A63FF 62%, #54CA4E 100%) !important;
}

/* Offre de lancement et programme fondateur : rester premium, mais sans anthracite parasite. */
.launch-offer {
  background: linear-gradient(135deg, #0B3A81 0%, #0A63FF 58%, #54CA4E 100%) !important;
  box-shadow: 0 28px 70px rgba(10,99,255,.22) !important;
}
.launch-offer::before {
  background:
    radial-gradient(circle at 12% 0%, rgba(255,255,255,.16), transparent 26%),
    radial-gradient(circle at 90% 100%, rgba(118,194,255,.18), transparent 24%) !important;
}

.founder-program {
  background: linear-gradient(180deg, #F7FBFF 0%, #EFF7FF 100%) !important;
}
.founder-program__panel {
  background: linear-gradient(140deg, #0B3571 0%, #0E4B9F 58%, #1474D1 100%) !important;
  border: 1px solid rgba(255,255,255,.14) !important;
  box-shadow: 0 24px 68px rgba(8,34,70,.18) !important;
}
.founder-program__panel::before {
  background:
    radial-gradient(circle at 12% 12%, rgba(255,255,255,.08), transparent 22%),
    radial-gradient(circle at 86% 86%, rgba(118,194,255,.16), transparent 22%) !important;
}

/* Écosystème et footer : on remplace l’anthracite par un vrai bleu nuit. */
.ecosystem {
  background:
    radial-gradient(circle at 14% 14%, rgba(255,255,255,.09), transparent 20%),
    radial-gradient(circle at 84% 18%, rgba(33,183,255,.18), transparent 20%),
    linear-gradient(135deg, #0A234A 0%, #10356B 56%, #1A4C93 100%) !important;
}

.ecosystem__intro h2,
.ecosystem__intro p,
.ecosystem .section-kicker,
.ecosystem-card h3,
.ecosystem-card p { color: #FFFFFF !important; }
.ecosystem__intro p,
.ecosystem-card p { color: rgba(236,244,255,.82) !important; }
.ecosystem .section-kicker { color: #A8D9FF !important; }

.ecosystem-card {
  background: linear-gradient(180deg, rgba(255,255,255,.12), rgba(255,255,255,.07)) !important;
  border: 1px solid rgba(255,255,255,.14) !important;
  box-shadow: 0 24px 64px rgba(7,31,63,.18) !important;
}
.ecosystem-card span { color: #54CA4E !important; }
.ecosystem-card--rodyam span { color: #9DD3FF !important; }

.site-footer {
  background: linear-gradient(180deg, #0F2F60 0%, #143B75 100%) !important;
  border-top: 1px solid rgba(255,255,255,.10) !important;
}
.site-footer .footer__grid p,
.site-footer .footer__grid nav a,
.site-footer .footer__credit,
.site-footer a { color: rgba(236,244,255,.84) !important; }
.site-footer a:hover { color: #FFFFFF !important; }

/* Méthode : on garde les cartes punchy, mais le fond remonte légèrement en intensité pour mieux relier le haut et le bas. */
.method {
  background:
    radial-gradient(circle at 14% 20%, rgba(19,109,255,.10), transparent 24%),
    linear-gradient(180deg, #FFFFFF 0%, #F1F8FF 100%) !important;
}

/* Contact / FAQ / audience : lisibilité et respiration. */
.faq details,
.contact-form,
.audience__tags span {
  border-color: rgba(16,53,107,.10) !important;
}
summary,
.contact-form label,
.offer-card:not(.offer-card--main) h3,
.proof__content h2,
.audience__content h2,
.faq h2,
.contact h2 { color: var(--p54-text) !important; }

.contact-form input,
.contact-form select,
.contact-form textarea {
  background: rgba(255,255,255,.94) !important;
  border-color: rgba(16,53,107,.14) !important;
}

/* Harmonisation des boutons secondaires pour éviter une pollution de couleurs. */
.founder-program__button,
.founder-program__button:visited,
.launch-offer__button,
.launch-offer__button:visited,
.offer-card a:not(.button),
.button--accent,
.section .button--accent {
  color: #0A2E63 !important;
}

/* Mobile menu : garder la clarté du header et la cohérence bleue. */
@media (max-width: 900px) {
  .main-nav {
    background: rgba(255,255,255,.97) !important;
    border: 1px solid rgba(16,53,107,.12) !important;
    box-shadow: 0 18px 45px rgba(8,34,70,.14) !important;
  }
}


/* === Étape 55 : image hero blanche + halo bleu discret, animation conservée === */
.hero__media-frame--growth {
  background: #f7fcff !important;
  border-color: rgba(33, 183, 255, .24) !important;
  box-shadow:
    0 26px 82px rgba(8, 55, 130, .16),
    0 0 0 1px rgba(33, 183, 255, .16),
    0 0 54px rgba(33, 183, 255, .18) !important;
}
.hero__media-frame--growth::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 1;
  background:
    radial-gradient(circle at 18% 52%, rgba(33,183,255,.16), transparent 30%),
    radial-gradient(circle at 74% 38%, rgba(33,183,255,.18), transparent 34%),
    linear-gradient(115deg, rgba(33,183,255,0) 0%, rgba(33,183,255,.10) 44%, rgba(84,202,78,.08) 68%, rgba(33,183,255,0) 100%);
  mix-blend-mode: multiply;
}
.hero__media-frame--growth::after {
  background: linear-gradient(115deg, transparent 0%, rgba(255,255,255,.16) 42%, rgba(33,183,255,.22) 50%, rgba(184,196,211,.10) 56%, transparent 65%) !important;
}
.hero-wide-growth__wash {
  background:
    radial-gradient(circle at 16% 32%, rgba(33,183,255,.18), transparent 24%),
    radial-gradient(circle at 78% 28%, rgba(33,183,255,.15), transparent 26%),
    radial-gradient(circle at 86% 42%, rgba(84,202,78,.10), transparent 22%),
    linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(225,245,255,.32) 42%, rgba(255,255,255,0) 100%) !important;
}
.hero__mission {
  max-width: 1060px;
}
.hero__intro .hero__lead {
  max-width: 1040px;
}

/* === Étape 57 : bandeau de projection sous le hero, sans CTA précoce === */
.hero-capabilities {
  position: relative;
  max-width: 1180px;
  margin: 34px auto 0;
  padding: 22px 0 14px;
  border-radius: 34px;
  background:
    radial-gradient(circle at 18% 24%, rgba(33, 183, 255, .16), transparent 30%),
    radial-gradient(circle at 82% 78%, rgba(84,202,78,.12), transparent 32%),
    linear-gradient(135deg, rgba(255, 255, 255, .88), rgba(241, 248, 255, .72));
  border: 1px solid rgba(33, 183, 255, .16);
  box-shadow: 0 22px 70px rgba(6, 39, 98, .08);
  overflow: hidden;
}
.hero-capabilities::before,
.hero-capabilities::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  width: 92px;
  z-index: 2;
  pointer-events: none;
}
.hero-capabilities::before {
  left: 0;
  background: linear-gradient(90deg, rgba(249, 253, 255, .98), rgba(249, 253, 255, 0));
}
.hero-capabilities::after {
  right: 0;
  background: linear-gradient(270deg, rgba(249, 253, 255, .98), rgba(249, 253, 255, 0));
}
.hero-capabilities__label {
  position: relative;
  z-index: 3;
  margin: 0 22px 10px;
  color: #0b3f7e;
  font-size: .82rem;
  font-weight: 880;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.hero-capabilities__marquee {
  position: relative;
  z-index: 1;
  overflow: hidden;
  padding: 6px 0;
}
.hero-capabilities__track {
  display: flex;
  width: max-content;
  gap: 12px;
  animation: capabilityScroll 44s linear infinite;
  will-change: transform;
}
.hero-capabilities__marquee--reverse .hero-capabilities__track {
  animation-duration: 54s;
  animation-direction: reverse;
}
.hero-capabilities:hover .hero-capabilities__track,
.hero-capabilities:focus-within .hero-capabilities__track {
  animation-play-state: paused;
}
.hero-capabilities__set {
  display: flex;
  gap: 12px;
  padding-right: 12px;
}
.capability-chip {
  position: relative;
  min-height: 46px;
  display: inline-flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  gap: 3px;
  padding: 11px 16px;
  border-radius: 999px;
  background: rgba(255, 255, 255, .84);
  border: 1px solid rgba(6, 99, 255, .12);
  box-shadow: 0 14px 34px rgba(6, 39, 98, .07);
  color: #183f67;
  white-space: nowrap;
  cursor: help;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease, background .22s ease;
}
.capability-chip strong {
  font-size: .92rem;
  line-height: 1.1;
  font-weight: 850;
}
.capability-chip em {
  display: block;
  max-width: 0;
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  color: #46637d;
  font-style: normal;
  font-size: .76rem;
  line-height: 1.28;
  white-space: normal;
  transition: opacity .22s ease, max-height .22s ease, max-width .22s ease;
}
.capability-chip:hover,
.capability-chip:focus-visible {
  transform: translateY(-2px);
  background: rgba(255, 255, 255, .96);
  border-color: rgba(84,202,78,.28);
  box-shadow: 0 18px 44px rgba(6, 99, 255, .13), 0 0 0 4px rgba(33, 183, 255, .08);
  outline: none;
}
.capability-chip:hover em,
.capability-chip:focus-visible em {
  max-width: 260px;
  max-height: 4.6em;
  opacity: 1;
}
.hero-capabilities__hint {
  position: relative;
  z-index: 3;
  margin: 12px 22px 0;
  color: #6a7e92;
  font-size: .82rem;
  font-weight: 650;
}
@keyframes capabilityScroll {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}
@media (max-width: 760px) {
  .hero-capabilities {
    margin-top: 28px;
    padding: 20px;
    border-radius: 28px;
  }
  .hero-capabilities::before,
  .hero-capabilities::after {
    display: none;
  }
  .hero-capabilities__label,
  .hero-capabilities__hint {
    margin-inline: 0;
    text-align: left;
  }
  .hero-capabilities__marquee {
    overflow: visible;
    padding: 5px 0;
  }
  .hero-capabilities__track {
    width: 100%;
    animation: none;
  }
  .hero-capabilities__set {
    width: 100%;
    flex-wrap: wrap;
    padding-right: 0;
  }
  .hero-capabilities__set[aria-hidden="true"] {
    display: none;
  }
  .capability-chip {
    width: 100%;
    border-radius: 18px;
    white-space: normal;
  }
  .capability-chip em {
    max-width: 100%;
    max-height: none;
    opacity: 1;
  }
}
@media (prefers-reduced-motion: reduce) {
  .hero-capabilities__track {
    animation: none !important;
    transform: none !important;
  }
}


/* === Étape 58 : conteneur suivant cohérent avec le bandeau de leviers === */
.problem--leviers {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 18% 8%, rgba(33, 183, 255, .24), transparent 30%),
    radial-gradient(circle at 84% 22%, rgba(84,202,78,.18), transparent 28%),
    linear-gradient(135deg, #06162f 0%, #0b2457 46%, #071936 100%);
}
.problem--leviers::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px),
    linear-gradient(180deg, rgba(255,255,255,.04) 1px, transparent 1px);
  background-size: 58px 58px;
  mask-image: radial-gradient(circle at 50% 18%, black 0%, transparent 72%);
  opacity: .38;
}
.problem--leviers::after {
  content: "";
  position: absolute;
  left: 50%;
  top: -120px;
  width: min(860px, 88vw);
  height: 260px;
  transform: translateX(-50%);
  background: radial-gradient(ellipse at center, rgba(33, 183, 255, .18), transparent 70%);
  pointer-events: none;
}
.problem--leviers > .container {
  position: relative;
  z-index: 1;
}
.problem__header {
  max-width: 1040px;
}
.problem__header h2 {
  max-width: 960px;
}
.problem__header p:not(.section-kicker) {
  max-width: 980px;
  margin-top: 18px;
  color: rgba(230, 242, 255, .82);
  font-size: clamp(1.04rem, 1.35vw, 1.18rem);
  line-height: 1.75;
}
.problem-flow {
  margin-top: 34px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}
.problem-flow__item {
  position: relative;
  min-height: 174px;
  padding: 24px 20px 22px;
  border-radius: 28px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.14), rgba(255,255,255,.07));
  border: 1px solid rgba(255,255,255,.15);
  box-shadow: 0 20px 58px rgba(0,0,0,.15), inset 0 1px 0 rgba(255,255,255,.12);
  backdrop-filter: blur(18px);
  overflow: hidden;
}
.problem-flow__item::before {
  content: "";
  position: absolute;
  inset: auto 18px 0;
  height: 3px;
  border-radius: 999px 999px 0 0;
  background: linear-gradient(90deg, #54CA4E, #6dc5ff);
  opacity: .9;
}
.problem-flow__item::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(120deg, transparent 0%, rgba(109,197,255,.12) 48%, transparent 100%);
  transform: translateX(-120%);
  animation: problemCardSweep 6.8s ease-in-out infinite;
}
.problem-flow__item:nth-child(2)::after { animation-delay: .45s; }
.problem-flow__item:nth-child(3)::after { animation-delay: .9s; }
.problem-flow__item:nth-child(4)::after { animation-delay: 1.35s; }
.problem-flow__item span,
.problem-flow__item strong,
.problem-flow__item em {
  position: relative;
  z-index: 1;
}
.problem-flow__item span {
  display: inline-flex;
  margin-bottom: 18px;
  color: #54CA4E;
  font-size: .78rem;
  font-weight: 920;
  letter-spacing: .13em;
}
.problem-flow__item strong {
  display: block;
  color: #ffffff;
  font-size: clamp(1.05rem, 1.35vw, 1.32rem);
  line-height: 1.18;
}
.problem-flow__item em {
  display: block;
  margin-top: 10px;
  color: rgba(230,242,255,.72);
  font-style: normal;
  font-size: .94rem;
  line-height: 1.55;
}
.problem--leviers .problem__grid {
  margin-top: 28px;
}
.problem--leviers .mini-card {
  position: relative;
  min-height: 246px;
  padding: 28px;
  border-color: rgba(255,255,255,.14);
  background:
    radial-gradient(circle at 24% 18%, rgba(109,197,255,.12), transparent 34%),
    linear-gradient(180deg, rgba(255,255,255,.12), rgba(255,255,255,.065));
  transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease, background .28s ease;
  overflow: hidden;
}
.problem--leviers .mini-card::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  border: 1px solid rgba(109,197,255,.0);
  pointer-events: none;
}
.problem--leviers .mini-card:hover {
  transform: translateY(-6px);
  border-color: rgba(84,202,78,.28);
  box-shadow: 0 28px 72px rgba(0,0,0,.20), 0 0 0 5px rgba(109,197,255,.055);
  background:
    radial-gradient(circle at 24% 18%, rgba(109,197,255,.18), transparent 36%),
    linear-gradient(180deg, rgba(255,255,255,.16), rgba(255,255,255,.075));
}
.problem--leviers .mini-card span {
  margin-bottom: 20px;
  padding: 7px 10px;
  border-radius: 999px;
  background: rgba(84,202,78,.11);
  color: #54CA4E;
  border: 1px solid rgba(84,202,78,.20);
}
.problem--leviers .mini-card h3 {
  font-size: clamp(1.12rem, 1.3vw, 1.35rem);
  line-height: 1.18;
}
.problem--leviers .mini-card p {
  margin-top: 12px;
  color: rgba(230,242,255,.78);
  line-height: 1.62;
}
.problem--leviers .solution-bridge {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 18% 20%, rgba(84,202,78,.16), transparent 30%),
    linear-gradient(135deg, rgba(255,255,255,.16), rgba(255,255,255,.075));
  border-color: rgba(255,255,255,.18);
}
.problem--leviers .solution-bridge::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(100deg, transparent 0%, rgba(109,197,255,.11) 44%, transparent 82%);
  opacity: .8;
  pointer-events: none;
}
.problem--leviers .solution-bridge > * {
  position: relative;
  z-index: 1;
}
.solution-bridge__tags {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 24px;
}
.solution-bridge__tags span {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  padding: 10px 14px;
  border-radius: 999px;
  background: rgba(255,255,255,.10);
  border: 1px solid rgba(255,255,255,.16);
  color: rgba(245,250,255,.90);
  font-size: .9rem;
  font-weight: 780;
}
.solution-bridge__tags span::before {
  content: "";
  width: 7px;
  height: 7px;
  margin-right: 8px;
  border-radius: 999px;
  background: #54CA4E;
  box-shadow: 0 0 16px rgba(84,202,78,.72);
}
@keyframes problemCardSweep {
  0%, 74%, 100% { transform: translateX(-120%); opacity: 0; }
  12%, 46% { opacity: .9; }
  56% { transform: translateX(120%); opacity: 0; }
}
@media (max-width: 980px) {
  .problem-flow { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  .problem__header p:not(.section-kicker) { font-size: 1rem; }
  .problem-flow { grid-template-columns: 1fr; }
  .problem-flow__item { min-height: unset; }
  .problem--leviers .mini-card { min-height: unset; }
}


/* === Étape 60 : lisibilité texte + bulle réponse blanche === */
.problem--leviers .problem__header p:not(.section-kicker) {
  color: #54CA4E !important;
  text-shadow: 0 0 20px rgba(84,202,78,.24);
}

.problem--leviers .solution-bridge {
  background: #ffffff !important;
  border: 1px solid rgba(255,255,255,.94) !important;
  box-shadow: 0 30px 84px rgba(0,0,0,.28), 0 0 0 1px rgba(84,202,78,.10) !important;
}

.problem--leviers .solution-bridge::before {
  background:
    radial-gradient(circle at 14% 18%, rgba(84,202,78,.18), transparent 34%),
    linear-gradient(100deg, transparent 0%, rgba(109,197,255,.08) 46%, transparent 84%) !important;
  opacity: .9 !important;
}

.problem--leviers .solution-bridge__label {
  color: #54CA4E !important;
}

.problem--leviers .solution-bridge h3 {
  color: #06162f !important;
}

.problem--leviers .solution-bridge p:not(.solution-bridge__label) {
  color: #1c2d40 !important;
}

.problem--leviers .solution-bridge__tags span {
  background: rgba(10,99,255,.06) !important;
  border: 1px solid rgba(10,99,255,.13) !important;
  color: #10233a !important;
}

.problem--leviers .solution-bridge__tags span::before {
  background: #54CA4E !important;
  box-shadow: 0 0 15px rgba(84,202,78,.45) !important;
}


/* === Étape 61 : 10 bulles réponse + suppression pastilles numérotées du bas === */
.problem--leviers .problem__grid .mini-card h3 {
  margin-top: 0;
}

.problem--leviers .solution-bridge__tags {
  gap: 12px;
}

.problem--leviers .solution-bridge__tags span {
  min-height: 40px;
  padding: 10px 14px;
}

@media (min-width: 1180px) {
  .problem--leviers .solution-bridge__tags {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, max-content));
    justify-content: start;
  }
}

@media (max-width: 1179px) {
  .problem--leviers .solution-bridge__tags {
    display: flex;
    flex-wrap: wrap;
  }
}


/* === Étape 62 : nouveau hero sombre + effet adapté === */
.hero__media-frame--growth {
  background: #071224 !important;
  border-color: rgba(47, 180, 255, .18) !important;
  box-shadow:
    0 30px 90px rgba(2, 14, 38, .46),
    0 0 0 1px rgba(47, 180, 255, .12),
    0 0 56px rgba(47, 180, 255, .10),
    0 0 80px rgba(84,202,78,.08) !important;
}
.hero__media-frame--growth img {
  filter: contrast(1.04) saturate(1.03);
}
.hero__media-frame--growth::before {
  background:
    radial-gradient(circle at 14% 54%, rgba(29, 164, 255, .12), transparent 26%),
    radial-gradient(circle at 82% 18%, rgba(84,202,78,.12), transparent 24%),
    linear-gradient(90deg, rgba(6, 16, 34, .08) 0%, rgba(6, 16, 34, 0) 24%, rgba(6, 16, 34, 0) 76%, rgba(6, 16, 34, .08) 100%) !important;
  mix-blend-mode: screen;
}
.hero__media-frame--growth::after {
  background: linear-gradient(115deg, transparent 0%, rgba(255,255,255,.05) 40%, rgba(36,175,255,.08) 49%, rgba(84,202,78,.06) 56%, transparent 66%) !important;
}
.hero-wide-growth__wash {
  background:
    radial-gradient(circle at 12% 26%, rgba(25, 153, 255, .12), transparent 22%),
    radial-gradient(circle at 88% 24%, rgba(84,202,78,.10), transparent 22%),
    radial-gradient(circle at 50% 10%, rgba(14, 73, 180, .10), transparent 28%),
    linear-gradient(180deg, rgba(9, 18, 36, 0) 0%, rgba(8, 20, 42, .14) 46%, rgba(9, 18, 36, 0) 100%) !important;
}
.hero-wide-growth__cluster {
  filter: drop-shadow(0 0 20px rgba(46,176,255,.18)) drop-shadow(0 0 26px rgba(84,202,78,.08));
}


/* === Étape 64 : lisibilité hero + bandeau leviers cohérent avec le hero sombre === */
.hero__intro .eyebrow {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  color: #2d5fe0;
  font-size: clamp(.80rem, .95vw, .96rem);
  letter-spacing: .16em;
  text-shadow: 0 1px 0 rgba(255,255,255,.28);
}
.hero__intro .eyebrow::after {
  content: "";
  width: 66px;
  height: 3px;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--blue-600), var(--green-700));
  box-shadow: 0 0 14px rgba(84,202,78,.18);
}
.hero__intro .eyebrow span {
  width: 66px;
  height: 3px;
  box-shadow: 0 0 14px rgba(84,202,78,.18);
}
.hero-capabilities {
  max-width: 1280px;
  margin-top: 38px;
  padding: 26px 0 18px;
  border-radius: 36px;
  background:
    radial-gradient(circle at 16% 22%, rgba(26, 175, 255, .18), transparent 26%),
    radial-gradient(circle at 84% 76%, rgba(84,202,78,.14), transparent 28%),
    linear-gradient(145deg, rgba(6, 16, 36, .96), rgba(4, 12, 30, .94) 56%, rgba(7, 20, 42, .96));
  border: 1px solid rgba(81, 186, 255, .18);
  box-shadow:
    0 26px 70px rgba(1, 9, 24, .38),
    inset 0 1px 0 rgba(255,255,255,.03),
    0 0 0 1px rgba(21, 112, 255, .05);
}
.hero-capabilities::before,
.hero-capabilities::after {
  width: 84px;
}
.hero-capabilities::before {
  background: linear-gradient(90deg, rgba(6, 16, 36, .98), rgba(6, 16, 36, 0));
}
.hero-capabilities::after {
  background: linear-gradient(270deg, rgba(6, 16, 36, .98), rgba(6, 16, 36, 0));
}
.hero-capabilities__label {
  margin: 0 24px 12px;
  color: #f2f8ff;
  font-size: clamp(.88rem, .95vw, 1rem);
  font-weight: 900;
  letter-spacing: .11em;
  text-align: center;
}
.hero-capabilities__hint {
  margin: 14px 22px 2px;
  color: #9bb0c8;
  font-size: .92rem;
  font-weight: 650;
  text-align: center;
}
.capability-chip {
  min-height: 52px;
  padding: 12px 18px;
  border-radius: 999px;
  background: linear-gradient(180deg, rgba(15, 32, 62, .96), rgba(9, 21, 43, .94));
  border: 1px solid rgba(85, 184, 255, .16);
  box-shadow: 0 14px 26px rgba(0, 0, 0, .22), inset 0 1px 0 rgba(255, 255, 255, .04);
  color: #f3f8ff;
}
.capability-chip strong {
  font-size: 1.02rem;
  font-weight: 850;
  color: #f3f8ff;
  letter-spacing: -.01em;
}
.capability-chip em {
  color: #9dcaf1;
  font-size: .80rem;
}
.capability-chip:hover,
.capability-chip:focus-visible {
  transform: translateY(-3px) scale(1.01);
  background: linear-gradient(180deg, rgba(16, 42, 80, .98), rgba(11, 27, 55, .96));
  border-color: rgba(84,202,78,.42);
  box-shadow: 0 18px 34px rgba(0, 0, 0, .28), 0 0 0 4px rgba(45, 159, 255, .12), 0 0 24px rgba(84,202,78,.10);
}
@media (max-width: 900px) {
  .hero__intro .eyebrow {
    gap: 14px;
    letter-spacing: .12em;
  }
  .hero__intro .eyebrow span,
  .hero__intro .eyebrow::after {
    width: 34px;
  }
  .hero-capabilities {
    border-radius: 28px;
    padding-top: 22px;
  }
  .hero-capabilities__label {
    font-size: .84rem;
    line-height: 1.35;
  }
  .hero-capabilities__hint {
    font-size: .84rem;
  }
  .capability-chip strong {
    font-size: .96rem;
  }
}


/* === Étape 65 : titre hero plus lisible + logo header officiel noir encadré vert === */
.hero__intro .eyebrow {
  color: #214fd7;
  font-size: clamp(.90rem, 1.05vw, 1.06rem);
  font-weight: 860;
  letter-spacing: .17em;
  text-shadow: 0 1px 0 rgba(255,255,255,.34);
}
.hero__intro .eyebrow::after {
  background: linear-gradient(90deg, #54CA4E, #54CA4E);
  box-shadow: 0 0 16px rgba(84,202,78,.22);
}
.hero__intro .eyebrow span {
  background: linear-gradient(90deg, #54CA4E, #54CA4E);
  box-shadow: 0 0 16px rgba(84,202,78,.22);
}

.site-header .brand {
  min-width: min(36vw, 410px) !important;
  max-width: min(40vw, 450px) !important;
  height: 72px !important;
  padding: 7px 14px !important;
  border-radius: 22px !important;
  background: linear-gradient(180deg, rgba(5,10,22,.98) 0%, rgba(7,14,28,.96) 100%) !important;
  border: 1px solid rgba(84,202,78,.54) !important;
  box-shadow:
    0 14px 34px rgba(0,0,0,.22),
    0 0 0 1px rgba(84,202,78,.12) inset,
    0 0 24px rgba(84,202,78,.12) !important;
}
.site-header .brand::after {
  display: none !important;
}
.site-header .brand__logo-full {
  height: 56px !important;
  max-width: 100% !important;
  width: auto !important;
  object-fit: contain !important;
  object-position: left center !important;
  transform: none !important;
  filter: contrast(1.05) saturate(1.02) drop-shadow(0 6px 14px rgba(0,0,0,.22)) !important;
}
@media (max-width: 1100px) {
  .site-header .brand {
    min-width: 290px !important;
    max-width: 320px !important;
    padding: 7px 12px !important;
  }
  .site-header .brand__logo-full {
    height: 50px !important;
  }
}
@media (max-width: 700px) {
  .hero__intro .eyebrow {
    font-size: .80rem;
    letter-spacing: .12em;
  }
  .site-header .brand {
    min-width: 242px !important;
    max-width: 262px !important;
    height: 64px !important;
    border-radius: 18px !important;
  }
  .site-header .brand__logo-full {
    height: 44px !important;
  }
}


/* === Étape 66 : refonte de la charte graphique alignée sur le hero principal === */
:root {
  --blue-900: #040b18;
  --blue-800: #1c63ff;
  --blue-600: #2a7cff;
  --blue-400: #53c2ff;
  --green-900: #54CA4E;
  --green-700: #54CA4E;
  --green-500: #54CA4E;
  --orange-600: #54CA4E;
  --orange-400: #54CA4E;
  --white: #ffffff;
  --ink: #f2f8ff;
  --muted: #a4b7cc;
  --line: rgba(84, 164, 255, 0.16);
  --card: rgba(10, 18, 34, 0.82);
  --shadow: 0 24px 80px rgba(0, 0, 0, 0.32);
}

body {
  color: var(--ink);
  background:
    radial-gradient(circle at 18% 12%, rgba(32, 112, 255, .13), transparent 24%),
    radial-gradient(circle at 84% 18%, rgba(84,202,78,.10), transparent 24%),
    linear-gradient(180deg, #040915 0%, #071224 36%, #08152a 62%, #09111e 100%) !important;
}

body::before {
  background-image:
    linear-gradient(rgba(42, 124, 255, .045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(42, 124, 255, .045) 1px, transparent 1px) !important;
  background-size: 68px 68px;
  mask-image: radial-gradient(circle at 50% 12%, black 0, transparent 70%);
}

.page-glow {
  background: radial-gradient(ellipse at center, rgba(28, 99, 255, .14), transparent 62%) !important;
}

p { color: var(--muted); }
.section { position: relative; }
.section::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(circle at 15% 22%, rgba(42, 124, 255, .04), transparent 22%),
    radial-gradient(circle at 85% 20%, rgba(84,202,78,.035), transparent 24%);
  opacity: .9;
}
.section > .container { position: relative; z-index: 1; }

.section-kicker {
  color: #54CA4E !important;
  letter-spacing: .15em;
}

.section-head h2,
.problem h2,
.method h2,
.proof h2,
.offers h2,
.founder-program h2,
.audience h2,
.ecosystem h2,
.diagnostic h2,
.faq h2,
.contact h2 {
  color: #f6fbff !important;
  text-shadow: 0 10px 34px rgba(0,0,0,.18);
}

.section-head p:last-child,
.problem > .container > p,
.proof__content p,
.offers .section-head p:last-child,
.founder-program p,
.audience__content p,
.ecosystem__intro p,
.diagnostic__box p,
.faq details p,
.contact__content p,
.offer-tax-note,
.form-privacy-note {
  color: #a8bbcf !important;
}

/* Header sombre cohérent avec le hero. */
.site-header {
  background: linear-gradient(180deg, rgba(4,10,20,.94) 0%, rgba(6,14,27,.92) 100%) !important;
  border: 1px solid rgba(85, 184, 255, .16) !important;
  box-shadow:
    0 20px 54px rgba(0,0,0,.34),
    0 0 0 1px rgba(84,202,78,.06) inset !important;
  backdrop-filter: blur(20px) saturate(1.06) !important;
}
.site-header.is-scrolled {
  background: linear-gradient(180deg, rgba(4,10,20,.98) 0%, rgba(5,12,23,.96) 100%) !important;
}
.site-header .main-nav a,
.site-header .main-nav a:visited {
  color: #edf5ff !important;
  background: rgba(255,255,255,.03) !important;
  border-color: rgba(85,184,255,.10) !important;
}
.site-header .main-nav a:hover,
.site-header .main-nav a:focus-visible {
  color: #ffffff !important;
  background: rgba(28,99,255,.14) !important;
  border-color: rgba(85,184,255,.24) !important;
  box-shadow: 0 10px 22px rgba(28,99,255,.12), 0 0 0 1px rgba(84,202,78,.06) inset !important;
}
.nav-cta,
.site-header .main-nav a.nav-cta,
.site-header .main-nav a.nav-cta:visited,
.button--primary,
.button,
.founder-program__button,
.launch-offer__button {
  background: linear-gradient(180deg, #2d86ff 0%, #135dff 54%, #0a41c6 100%) !important;
  color: #ffffff !important;
  border: 1px solid rgba(255,255,255,.16) !important;
  box-shadow: 0 16px 36px rgba(18, 94, 255, .26), inset 0 1px 0 rgba(255,255,255,.18) !important;
}
.nav-cta:hover,
.site-header .main-nav a.nav-cta:hover,
.button--primary:hover,
.button:hover,
.founder-program__button:hover,
.launch-offer__button:hover,
.nav-cta:focus-visible,
.site-header .main-nav a.nav-cta:focus-visible,
.button--primary:focus-visible,
.button:focus-visible,
.founder-program__button:focus-visible,
.launch-offer__button:focus-visible {
  background: linear-gradient(180deg, #4aa0ff 0%, #1c63ff 56%, #0a3fb9 100%) !important;
}

/* Sections et cartes : verre sombre / noir bleuté, aligné sur le hero. */
.problem,
.method,
.proof,
.offers,
.founder-program,
.audience,
.ecosystem,
.diagnostic,
.faq,
.contact,
.site-footer {
  background:
    radial-gradient(circle at 18% 18%, rgba(32, 112, 255, .06), transparent 24%),
    radial-gradient(circle at 84% 18%, rgba(84,202,78,.05), transparent 24%),
    linear-gradient(180deg, rgba(5,11,22,.86) 0%, rgba(7,14,28,.94) 100%) !important;
}

.problem::after,
.method::after,
.proof::after,
.offers::after,
.founder-program::after,
.audience::after,
.ecosystem::after,
.diagnostic::after,
.faq::after,
.contact::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(83,194,255,.22), rgba(84,202,78,.18), transparent);
  pointer-events: none;
}

.problem__steps article,
.problem .mini-card,
.solution-bridge,
.method-card,
.method-card--featured,
.proof__content,
.proof__panel,
.launch-offer,
.launch-offer__aside,
.offer-card,
.founder-program__panel,
.audience__tags span,
.ecosystem-card,
.diagnostic__box,
.faq details,
.contact-form,
.site-footer {
  background:
    linear-gradient(180deg, rgba(11,22,41,.92) 0%, rgba(7,15,30,.94) 100%) !important;
  border: 1px solid rgba(82, 168, 255, .15) !important;
  box-shadow:
    0 22px 60px rgba(0,0,0,.26),
    inset 0 1px 0 rgba(255,255,255,.03),
    0 0 0 1px rgba(84,202,78,.04) !important;
}

.hero-capabilities,
.solution-bridge,
.founder-program__panel,
.diagnostic__box {
  box-shadow:
    0 26px 70px rgba(0,0,0,.34),
    inset 0 1px 0 rgba(255,255,255,.03),
    0 0 0 1px rgba(21,112,255,.06) !important;
}

.method-card h3,
.method-card p,
.problem .mini-card h3,
.problem .mini-card p,
.proof__content h2,
.proof__label,
.proof__points strong,
.proof__points span,
.proof__note,
.offer-card h3,
.offer-card__intro,
.offer-card__included,
.offer-card__price,
.offer-card__price-label,
.offer-card a,
.launch-offer__content h3,
.launch-offer__subtitle,
.launch-offer__positioning,
.launch-offer__list li,
.launch-offer__tag,
.launch-offer__note,
.founder-program__rating-text,
.founder-program__list li,
.founder-program__reassurance,
.audience__tags span,
.ecosystem-card h3,
.ecosystem-card p,
.diagnostic__box h2,
.diagnostic__box p,
.faq summary,
.faq details p,
.contact-form label,
.contact__content h2,
.contact__content p,
.site-footer,
.footer__grid,
.footer__grid * {
  color: #eff6ff !important;
}

.method-card__index,
.offer-card__label,
.proof__label,
.proof__number,
.launch-offer__label,
.launch-offer__price,
.ecosystem-card span,
.diagnostic-step span,
.founder-program__kicker,
.founder-program__urgency-text strong {
  color: #54CA4E !important;
}

.method-card li,
.offer-card li,
.audience__tags span,
.proof__points li,
.founder-program__list li,
.diagnostic-step,
.launch-offer__tag {
  background: rgba(255,255,255,.04) !important;
  border: 1px solid rgba(83, 194, 255, .12) !important;
  color: #d9ecff !important;
}

.method-card li::before,
.offer-check-list li::before,
.launch-offer__list li::before,
.founder-program__list li::before,
.proof__points li::before {
  color: #54CA4E !important;
}

.method-card::after,
.ecosystem-card::after,
.solution-bridge::after,
.method-card li::after {
  background: linear-gradient(90deg, #54CA4E 0%, #53c2ff 48%, #ffffff 100%) !important;
}

.problem h2 .accent,
.method h2 .accent,
.proof h2 .accent,
.offers h2 .accent,
.contact h2 .accent,
strong.accent,
.text-accent {
  color: #54CA4E !important;
}

/* Offres : toutes les cartes harmonisées sur le fond hero. */
.offers .offer-card,
.offers .offer-card--main,
.launch-offer__content,
.launch-offer__aside {
  background: linear-gradient(180deg, rgba(10,20,38,.95) 0%, rgba(6,14,27,.96) 100%) !important;
}
.offers .offer-card--main,
.offer-card--main {
  border-color: rgba(84,202,78,.22) !important;
}
.offers .offer-card__label,
.offers .offer-card--main .offer-card__label,
.offers .offer-card__included,
.offers .offer-card--main .offer-card__included,
.offers .offer-card__price-label,
.offers .offer-card--main .offer-card__price-label,
.launch-offer__label,
.launch-offer__price {
  color: #54CA4E !important;
}
.offers .offer-card a,
.offers .offer-card--main a {
  color: #eef6ff !important;
}

/* Méthode : supprimons les bleus secondaires inutiles. */
.method-card__index {
  color: rgba(83, 194, 255, .18) !important;
}
.method-card li:hover {
  background: rgba(84,202,78,.08) !important;
  border-color: rgba(84,202,78,.24) !important;
}

/* Audience & tags */
.audience__tags span {
  color: #f3f8ff !important;
}

/* Diagnostic & contact */
.contact-form input,
.contact-form select,
.contact-form textarea {
  background: rgba(255,255,255,.06) !important;
  border: 1px solid rgba(83,194,255,.15) !important;
  color: #f4f9ff !important;
}
.contact-form input::placeholder,
.contact-form textarea::placeholder { color: #8ea3ba !important; }
.contact-form input:focus,
.contact-form select:focus,
.contact-form textarea:focus {
  border-color: rgba(83,194,255,.36) !important;
  box-shadow: 0 0 0 4px rgba(28,99,255,.10) !important;
}

/* FAQ */
.faq summary {
  color: #f3f8ff !important;
}
.faq details[open] {
  border-color: rgba(84,202,78,.22) !important;
}

/* Founder program : étoiles et sablier passent au vert de l'image principale. */
.founder-program__star,
.founder-program__hourglass,
.founder-program__urgency,
.founder-program__button,
.founder-program__rating-text {
  color: #54CA4E !important;
}
.founder-program__hourglass {
  background: rgba(84,202,78,.12) !important;
  border: 1px solid rgba(84,202,78,.22) !important;
  box-shadow: 0 0 18px rgba(84,202,78,.14) !important;
}
.founder-program__urgency {
  background: rgba(255,255,255,.04) !important;
  border: 1px solid rgba(84,202,78,.22) !important;
}
.founder-program__star { text-shadow: 0 0 16px rgba(84,202,78,.16) !important; }

/* Ecosystem */
.ecosystem .section-kicker { color: #54CA4E !important; }
.ecosystem-card--rodyam span { color: #53c2ff !important; }

/* Footer plus propre sur fond sombre */
.site-footer {
  border-top: 1px solid rgba(83,194,255,.14) !important;
}
.site-footer a { color: #dcedff !important; }
.site-footer a:hover { color: #54CA4E !important; }

/* Mobile : conserver la lisibilité. */
@media (max-width: 900px) {
  .section-head h2,
  .problem h2,
  .method h2,
  .proof h2,
  .offers h2,
  .founder-program h2,
  .audience h2,
  .ecosystem h2,
  .diagnostic h2,
  .faq h2,
  .contact h2 {
    line-height: 1.02;
  }

  .site-header {
    border-radius: 26px !important;
  }

  .problem,
  .method,
  .proof,
  .offers,
  .founder-program,
  .audience,
  .ecosystem,
  .diagnostic,
  .faq,
  .contact {
    background: linear-gradient(180deg, rgba(5,11,22,.94) 0%, rgba(7,14,28,.98) 100%) !important;
  }
}


/* === Étape 67 : charte rééquilibrée, alternance clair/sombre, vert unifié sur le logo === */
:root {
  --pilot-green: #54CA4E;
  --pilot-green-deep: #54CA4E;
  --pilot-blue: #1C63FF;
  --pilot-blue-soft: #53C2FF;
  --pilot-navy: #071224;
  --pilot-navy-2: #0B1B31;
  --pilot-paper: #F7FBFF;
  --pilot-paper-2: #FFFFFF;
  --pilot-ink: #102945;
  --pilot-muted: #60758E;
  --green-900: #54CA4E;
  --green-700: #54CA4E;
  --green-500: #54CA4E;
  --orange-600: #54CA4E;
  --orange-400: #54CA4E;
}

body {
  background:
    radial-gradient(circle at 18% 12%, rgba(28,99,255,.10), transparent 24%),
    radial-gradient(circle at 84% 18%, rgba(84,202,78,.08), transparent 24%),
    linear-gradient(180deg, #040915 0%, #071224 26%, #0a1322 40%, #ffffff 40.1%, #f7fbff 100%) !important;
  color: #eef5ff;
}

/* Uniformisation des accents verts sur la base du logo officiel */
.section-kicker,
.problem .section-kicker,
.method .section-kicker,
.proof .section-kicker,
.offers .section-kicker,
.founder-program .section-kicker,
.audience .section-kicker,
.ecosystem .section-kicker,
.diagnostic .section-kicker,
.faq .section-kicker,
.contact .section-kicker,
.hero__intro .eyebrow span,
.hero__intro .eyebrow::after,
.problem-flow__item span,
.solution-bridge__label,
.method-card__index,
.offer-card__label,
.launch-offer__label,
.launch-offer__price,
.offer-card__price-label,
.diagnostic-step span,
.proof__number,
.proof__label,
.founder-program__star,
.founder-program__hourglass,
.founder-program__rating-text,
.founder-program__urgency,
.founder-program__kicker,
.ecosystem-card span {
  color: var(--pilot-green) !important;
}

.hero__intro .eyebrow span,
.hero__intro .eyebrow::after,
.problem-flow__item::after,
.problem-flow__item::before,
.problem .mini-card::after,
.method-card::after,
.ecosystem-card::after,
.solution-bridge::after,
.method-card li::after,
.problem .solution-bridge__tags span::after {
  background: linear-gradient(90deg, var(--pilot-green) 0%, var(--pilot-blue-soft) 60%, #ffffff 100%) !important;
}

/* Alternance des sections pour éviter un site trop sombre */
.problem,
.proof,
.founder-program,
.ecosystem,
.site-footer {
  background:
    radial-gradient(circle at 18% 18%, rgba(28,99,255,.08), transparent 26%),
    radial-gradient(circle at 84% 18%, rgba(84,202,78,.06), transparent 24%),
    linear-gradient(180deg, #071224 0%, #0B1B31 100%) !important;
}

.method,
.offers,
.audience,
.diagnostic,
.faq,
.contact {
  background:
    radial-gradient(circle at 14% 14%, rgba(28,99,255,.05), transparent 24%),
    radial-gradient(circle at 86% 18%, rgba(84,202,78,.05), transparent 24%),
    linear-gradient(180deg, #F7FBFF 0%, #FFFFFF 100%) !important;
}

/* Textes sections claires */
.method h2,
.offers h2,
.audience h2,
.diagnostic h2,
.faq h2,
.contact h2,
.method .section-head p:last-child,
.offers .section-head p:last-child,
.audience__content p,
.diagnostic__box p,
.faq details p,
.contact__content p,
.offer-tax-note,
.form-privacy-note {
  color: var(--pilot-ink) !important;
}
.method .section-head p:last-child,
.offers .section-head p:last-child,
.audience__content p,
.diagnostic__box p,
.faq details p,
.contact__content p,
.offer-tax-note,
.form-privacy-note,
.contact-form label {
  color: var(--pilot-muted) !important;
}

/* Textes sections sombres */
.problem h2,
.proof h2,
.founder-program h2,
.ecosystem h2,
.problem p,
.proof__content p,
.proof__note,
.founder-program p,
.ecosystem__intro p,
.site-footer,
.site-footer * {
  color: #eef6ff !important;
}
.problem > .container > p,
.proof__content p,
.proof__points span,
.founder-program p,
.ecosystem__intro p,
.site-footer .footer__grid * {
  color: #aac0d5 !important;
}

/* Blocs problématiques / méthode */
.problem__steps article,
.problem .mini-card,
.solution-bridge,
.proof__content,
.proof__panel,
.founder-program__panel,
.ecosystem-card,
.site-footer {
  background:
    linear-gradient(180deg, rgba(11,24,43,.92) 0%, rgba(7,16,31,.96) 100%) !important;
  border: 1px solid rgba(83,194,255,.14) !important;
  box-shadow: 0 22px 60px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.03) !important;
}

.method-card,
.audience__tags span,
.diagnostic__box,
.faq details,
.contact-form {
  background: #ffffff !important;
  border: 1px solid rgba(18,58,110,.10) !important;
  box-shadow: 0 18px 46px rgba(9,36,84,.08), 0 1px 0 rgba(255,255,255,.86) inset !important;
}
.method-card h3,
.method-card p,
.method-card li,
.audience__tags span,
.diagnostic__box h2,
.diagnostic__box p,
.faq summary,
.faq details p,
.contact-form label,
.contact__content h2,
.contact__content p {
  color: var(--pilot-ink) !important;
}
.method-card li,
.audience__tags span,
.diagnostic-step {
  background: #F6FAFF !important;
  border: 1px solid rgba(28,99,255,.08) !important;
  color: #26405D !important;
}
.method-card__index {
  color: rgba(84,202,78,.22) !important;
}

/* Partie mouvement / logique 01-04 */
.problem-flow__item {
  background: linear-gradient(180deg, rgba(13,27,49,.86), rgba(10,20,38,.92)) !important;
  border: 1px solid rgba(83,194,255,.14) !important;
}
.problem-flow__item strong { color: #ffffff !important; }
.problem-flow__item em { color: #c3d4e5 !important; }
.problem-flow__item span {
  color: var(--pilot-green) !important;
  text-shadow: 0 0 14px rgba(84,202,78,.16) !important;
}

.solution-bridge {
  background: #ffffff !important;
  border: 1px solid rgba(18,58,110,.10) !important;
  box-shadow: 0 18px 46px rgba(9,36,84,.09) !important;
}
.solution-bridge__label,
.solution-bridge h3 {
  color: var(--pilot-ink) !important;
}
.solution-bridge p { color: var(--pilot-muted) !important; }
.solution-bridge__tags span {
  background: #F7FBFF !important;
  border: 1px solid rgba(28,99,255,.08) !important;
  color: #1D3652 !important;
}

/* Offres : éclaircir fortement pour éviter le ton sur ton */
.offers .section-head h2,
.offers .section-head p:last-child,
.offers .offer-card h3,
.offers .offer-card__intro,
.offers .offer-card__included,
.offers .offer-card__price,
.offers .offer-card__price-label,
.offers .offer-card a,
.launch-offer__content h3,
.launch-offer__subtitle,
.launch-offer__positioning,
.launch-offer__note,
.launch-offer__aside p,
.launch-offer__aside a {
  color: var(--pilot-ink) !important;
}

.launch-offer,
.offers .offer-card {
  background: #ffffff !important;
  border: 1px solid rgba(18,58,110,.10) !important;
  box-shadow: 0 18px 48px rgba(9,36,84,.08) !important;
}
.launch-offer__content {
  background: #ffffff !important;
}
.launch-offer__aside {
  background: #F7FBFF !important;
  border: 1px solid rgba(28,99,255,.08) !important;
}
.launch-offer__label,
.launch-offer__price,
.offers .offer-card__label,
.offers .offer-card__included,
.offers .offer-card__price-label {
  color: var(--pilot-green) !important;
}
.offers .offer-card li,
.launch-offer__tag,
.launch-offer__list li {
  background: #F5FAFF !important;
  border: 1px solid rgba(28,99,255,.08) !important;
  color: #29425F !important;
}
.offers .offer-card a,
.launch-offer__button {
  color: var(--pilot-blue) !important;
}
.offer-card--main {
  background: linear-gradient(180deg, #081427 0%, #10264A 100%) !important;
  border: 1px solid rgba(84,202,78,.24) !important;
  box-shadow: 0 22px 56px rgba(0,0,0,.18) !important;
}
.offer-card--main h3,
.offer-card--main .offer-card__intro,
.offer-card--main .offer-card__price,
.offer-card--main a,
.offer-card--main li { color: #f3f8ff !important; }
.offer-card--main .offer-card__label,
.offer-card--main .offer-card__included,
.offer-card--main .offer-card__price-label,
.offer-card--main .offer-check-list li::before { color: var(--pilot-green) !important; }
.offer-card--main li {
  background: rgba(255,255,255,.06) !important;
  border: 1px solid rgba(83,194,255,.12) !important;
}

/* Diagnostic steps and form */
.diagnostic-step {
  background: #F7FBFF !important;
  color: var(--pilot-ink) !important;
}
.contact-form input,
.contact-form select,
.contact-form textarea {
  background: #ffffff !important;
  border: 1px solid rgba(18,58,110,.12) !important;
  color: var(--pilot-ink) !important;
}
.contact-form input::placeholder,
.contact-form textarea::placeholder {
  color: #7A8FA7 !important;
}

/* Founder program : vert logo partout au lieu du jaune */
.founder-program__hourglass {
  background: rgba(84,202,78,.12) !important;
  border: 1px solid rgba(84,202,78,.24) !important;
  color: var(--pilot-green) !important;
}
.founder-program__urgency {
  background: rgba(255,255,255,.04) !important;
  border: 1px solid rgba(84,202,78,.22) !important;
}
.founder-program__star { color: var(--pilot-green) !important; }

/* Footer and links */
.site-footer a:hover,
.offers .offer-card a:hover,
.launch-offer__button:hover,
.contact .button:hover,
.diagnostic .button:hover {
  color: var(--pilot-green) !important;
}

@media (max-width: 900px) {
  body {
    background: linear-gradient(180deg, #040915 0%, #071224 24%, #ffffff 24.1%, #f7fbff 100%) !important;
  }
  .method,
  .offers,
  .audience,
  .diagnostic,
  .faq,
  .contact,
  .problem,
  .proof,
  .founder-program,
  .ecosystem {
    background-attachment: initial !important;
  }
  .offer-card--main {
    transform: none !important;
  }
}


/* === Étape 68 : menu conservé, intro hero et bloc leviers repassés sur fond blanc === */
.hero--stacked {
  background:
    linear-gradient(180deg, #040915 0%, #071224 44%, #f7fbff 44.1%, #ffffff 100%) !important;
}

.hero__intro {
  margin-top: 30px;
  padding: clamp(26px, 3.4vw, 40px) !important;
  border-radius: 34px;
  background:
    radial-gradient(circle at 88% 16%, rgba(84,202,78,.12), transparent 22%),
    radial-gradient(circle at 10% 16%, rgba(83, 194, 255, .09), transparent 22%),
    linear-gradient(180deg, rgba(255,255,255,.98) 0%, rgba(247,251,255,.99) 100%) !important;
  border: 1px solid rgba(17, 57, 109, .08);
  box-shadow: 0 18px 48px rgba(9, 36, 84, .08), 0 1px 0 rgba(255,255,255,.88) inset;
}

.hero__intro .eyebrow {
  color: #2450d6 !important;
  text-shadow: none !important;
}
.hero__intro h1 {
  color: #0f2743 !important;
  text-shadow: none !important;
}
.hero__intro .hero__lead {
  color: #5e748d !important;
}
.hero__mission {
  display: inline-block;
  max-width: 980px;
  margin: 0 0 16px !important;
  padding: 14px 18px;
  border-radius: 18px;
  background:
    radial-gradient(circle at 85% 18%, rgba(84,202,78,.10), transparent 24%),
    linear-gradient(180deg, #ffffff 0%, #f7fbff 100%) !important;
  border: 1px solid rgba(17,57,109,.08);
  color: #244360 !important;
  box-shadow: 0 10px 28px rgba(9,36,84,.06);
}

.hero-capabilities {
  margin-top: 28px;
  background:
    radial-gradient(circle at 84% 78%, rgba(84,202,78,.10), transparent 28%),
    radial-gradient(circle at 12% 18%, rgba(83,194,255,.08), transparent 26%),
    linear-gradient(180deg, #ffffff 0%, #f7fbff 100%) !important;
  border: 1px solid rgba(17,57,109,.08) !important;
  box-shadow: 0 18px 48px rgba(9,36,84,.08), 0 1px 0 rgba(255,255,255,.86) inset !important;
}
.hero-capabilities::before {
  background: linear-gradient(90deg, rgba(247,251,255,.98), rgba(247,251,255,0)) !important;
}
.hero-capabilities::after {
  background: linear-gradient(270deg, rgba(247,251,255,.98), rgba(247,251,255,0)) !important;
}
.hero-capabilities__label {
  color: #173d70 !important;
}
.hero-capabilities__hint {
  color: #71869d !important;
}
.capability-chip {
  background: #ffffff !important;
  border: 1px solid rgba(28,99,255,.10) !important;
  box-shadow: 0 10px 24px rgba(9,36,84,.05) !important;
  color: #1b3654 !important;
}
.capability-chip strong {
  color: #173d70 !important;
}
.capability-chip em {
  color: #6b8198 !important;
}
.capability-chip:hover,
.capability-chip:focus-visible {
  background: #ffffff !important;
  border-color: rgba(84,202,78,.30) !important;
  box-shadow: 0 14px 28px rgba(9,36,84,.08), 0 0 0 4px rgba(84,202,78,.10) !important;
}

@media (max-width: 900px) {
  .hero--stacked {
    background: linear-gradient(180deg, #040915 0%, #071224 32%, #f7fbff 32.1%, #ffffff 100%) !important;
  }
  .hero__intro {
    border-radius: 28px;
    padding: 24px !important;
  }
  .hero__mission {
    display: block;
  }
  .hero-capabilities {
    border-radius: 28px;
  }
}


/* === Étape 69 : bulle leviers alignée sur le hero + titres en vert PILOTYAM === */
.hero-capabilities {
  background:
    radial-gradient(circle at 88% 16%, rgba(84,202,78,.12), transparent 22%),
    radial-gradient(circle at 10% 16%, rgba(83, 194, 255, .09), transparent 22%),
    linear-gradient(180deg, rgba(255,255,255,.98) 0%, rgba(247,251,255,.99) 100%) !important;
  border: 1px solid rgba(17,57,109,.08) !important;
  box-shadow: 0 18px 48px rgba(9,36,84,.08), 0 1px 0 rgba(255,255,255,.88) inset !important;
}
.hero-capabilities__label,
.hero-capabilities__hint {
  color: var(--pilot-green) !important;
}
.hero-capabilities__label {
  text-shadow: 0 0 14px rgba(84,202,78,.08);
}
.hero-capabilities__hint {
  font-weight: 700;
}
.hero-capabilities::before {
  background: linear-gradient(90deg, rgba(247,251,255,.98), rgba(247,251,255,0)) !important;
}
.hero-capabilities::after {
  background: linear-gradient(270deg, rgba(247,251,255,.98), rgba(247,251,255,0)) !important;
}
@media (max-width: 900px) {
  .hero-capabilities__label,
  .hero-capabilities__hint {
    color: var(--pilot-green) !important;
  }
}


/* === Étape 70 : vert logo unifié + animation hero blanc/vert/bleu + panel leviers sur fond hero sombre === */
:root {
  --pilot-green: #54CA4E;
  --pilot-green-deep: #54CA4E;
  --green-900: #54CA4E;
  --green-700: #54CA4E;
  --green-500: #54CA4E;
  --orange-600: #54CA4E;
  --orange-400: #54CA4E;
}

/* Animation des flèches sur fond foncé : blanc, vert logo et bleu. */
.hero-wide-growth__line,
.hero-wide-growth__cluster--left .hero-wide-growth__line {
  background: linear-gradient(90deg,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,.92) 18%,
    rgba(84,202,78,.98) 46%,
    rgba(83,194,255,.98) 72%,
    rgba(28,99,255,0) 100%) !important;
  box-shadow: 0 0 20px rgba(83,194,255,.28), 0 0 24px rgba(84,202,78,.14) !important;
}
.hero-wide-growth__cluster--right .hero-wide-growth__line {
  background: linear-gradient(270deg,
    rgba(255,255,255,0) 0%,
    rgba(255,255,255,.92) 18%,
    rgba(84,202,78,.98) 46%,
    rgba(83,194,255,.98) 72%,
    rgba(28,99,255,0) 100%) !important;
  box-shadow: 0 0 20px rgba(83,194,255,.28), 0 0 24px rgba(84,202,78,.14) !important;
}
.hero-wide-growth__line::after,
.hero-wide-growth__cluster--left .hero-wide-growth__line::after,
.hero-wide-growth__cluster--right .hero-wide-growth__line::after {
  background: linear-gradient(135deg, #ffffff 0%, #54CA4E 42%, #53C2FF 76%, #1C63FF 100%) !important;
  filter: drop-shadow(0 0 10px rgba(83,194,255,.40)) !important;
}

/* Panel de leviers : fond hero sombre, cohérent avec le haut. */
.hero-capabilities {
  background:
    radial-gradient(circle at 88% 16%, rgba(84,202,78,.14), transparent 24%),
    radial-gradient(circle at 10% 16%, rgba(83, 194, 255, .10), transparent 24%),
    linear-gradient(180deg, rgba(5, 12, 24, .98) 0%, rgba(7, 18, 36, .98) 100%) !important;
  border: 1px solid rgba(83,194,255,.14) !important;
  box-shadow: 0 24px 64px rgba(0,0,0,.26), inset 0 1px 0 rgba(255,255,255,.03) !important;
}
.hero-capabilities::before {
  background: linear-gradient(90deg, rgba(7,18,36,.98), rgba(7,18,36,0)) !important;
}
.hero-capabilities::after {
  background: linear-gradient(270deg, rgba(7,18,36,.98), rgba(7,18,36,0)) !important;
}
.hero-capabilities__label,
.hero-capabilities__hint {
  color: var(--pilot-green) !important;
  text-shadow: 0 0 14px rgba(84,202,78,.10);
}
.hero-capabilities__hint {
  font-weight: 700;
}
.capability-chip {
  background: rgba(255,255,255,.98) !important;
  border: 1px solid rgba(83,194,255,.12) !important;
  box-shadow: 0 12px 28px rgba(0,0,0,.14) !important;
}
.capability-chip strong {
  color: #173d70 !important;
}
.capability-chip em {
  color: #687f97 !important;
}
.capability-chip:hover,
.capability-chip:focus-visible {
  background: #ffffff !important;
  border-color: rgba(84,202,78,.36) !important;
  box-shadow: 0 16px 30px rgba(0,0,0,.16), 0 0 0 4px rgba(84,202,78,.10) !important;
}
@media (max-width: 900px) {
  .hero-capabilities {
    border-radius: 28px;
  }
  .hero-capabilities__label,
  .hero-capabilities__hint {
    color: var(--pilot-green) !important;
  }
}


/* === Étape 71 : flèches alignées, bulles launch/offres hero dark, animations premium === */
:root {
  --pilot-green: #54CA4E;
  --pilot-green-deep: #54CA4E;
  --pilot-hero-dark: #071224;
  --pilot-hero-dark-2: #0b1b31;
  --pilot-hero-blue: #1c63ff;
  --pilot-hero-blue-soft: #53c2ff;
}

/* 1) Flèches latérales : elles arrivent au niveau du bloc blanc, sans filer derrière. */
@media (min-width: 981px) {
  .hero-wide-growth__cluster {
    width: min(22vw, 270px) !important;
    min-width: 220px !important;
    top: 118px !important;
    bottom: 298px !important;
  }
  .hero-wide-growth__cluster--left { left: -12px !important; }
  .hero-wide-growth__cluster--right { right: -12px !important; }
}
.hero-wide-growth__wash {
  background:
    radial-gradient(circle at 14% 24%, rgba(83, 194, 255, .16), transparent 24%),
    radial-gradient(circle at 84% 18%, rgba(84,202,78,.12), transparent 24%),
    radial-gradient(circle at 50% 10%, rgba(28, 99, 255, .08), transparent 30%),
    linear-gradient(180deg, rgba(255,255,255,0) 0%, rgba(234,245,255,.24) 42%, rgba(255,255,255,0) 100%) !important;
}

/* 2) Les 4 bulles du pack lancement passent au noir du hero. */
.launch-offer__list li {
  padding: 18px 18px 18px 62px !important;
  border-radius: 26px !important;
  background: linear-gradient(180deg, rgba(7,18,36,.98) 0%, rgba(11,27,49,.98) 100%) !important;
  border: 1px solid rgba(83,194,255,.16) !important;
  box-shadow: 0 18px 40px rgba(0,0,0,.16), inset 0 1px 0 rgba(255,255,255,.03) !important;
  color: #f1f7ff !important;
  font-weight: 780 !important;
  line-height: 1.38 !important;
  transition: transform .26s ease, box-shadow .26s ease, border-color .26s ease, background .26s ease !important;
  opacity: 0;
  transform: translateY(16px);
  animation: launchBubbleReveal .72s cubic-bezier(.2,.8,.2,1) forwards;
}
.launch-offer__list li:nth-child(1) { animation-delay: .08s; }
.launch-offer__list li:nth-child(2) { animation-delay: .16s; }
.launch-offer__list li:nth-child(3) { animation-delay: .24s; }
.launch-offer__list li:nth-child(4) { animation-delay: .32s; }
.launch-offer__list li::before {
  left: 18px !important;
  top: 16px !important;
  width: 28px !important;
  height: 28px !important;
  background: linear-gradient(180deg, #d8ecff 0%, #b8d6ff 100%) !important;
  color: var(--pilot-green) !important;
  box-shadow: 0 10px 18px rgba(20, 59, 117, .18) !important;
  font-size: .92rem !important;
}
.launch-offer__list li:hover,
.launch-offer__list li:focus-within {
  transform: translateY(-6px) scale(1.01) !important;
  border-color: rgba(84,202,78,.30) !important;
  box-shadow: 0 24px 50px rgba(0,0,0,.22), 0 0 0 4px rgba(84,202,78,.08) !important;
  background: linear-gradient(180deg, rgba(8,22,43,.99) 0%, rgba(12,31,58,.99) 100%) !important;
}

/* 3) Les trois offres passent en fond hero sombre, texte blanc + accents verts. */
.offers__grid--detailed .offer-card {
  background: linear-gradient(180deg, rgba(7,18,36,.98) 0%, rgba(11,27,49,.98) 100%) !important;
  border: 1px solid rgba(83,194,255,.16) !important;
  box-shadow: 0 22px 54px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.03) !important;
  color: #f1f7ff !important;
  transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease, background .28s ease !important;
}
.offers__grid--detailed .offer-card h3,
.offers__grid--detailed .offer-card__intro,
.offers__grid--detailed .offer-card__included,
.offers__grid--detailed .offer-card__price,
.offers__grid--detailed .offer-card__price-label,
.offers__grid--detailed .offer-card a,
.offers__grid--detailed .offer-card li {
  color: #f1f7ff !important;
}
.offers__grid--detailed .offer-card__label,
.offers__grid--detailed .offer-card__included,
.offers__grid--detailed .offer-card__price-label,
.offers__grid--detailed .offer-check-list li::before {
  color: var(--pilot-green) !important;
}
.offers__grid--detailed .offer-card li {
  background: rgba(255,255,255,.06) !important;
  border: 1px solid rgba(83,194,255,.10) !important;
  color: rgba(241,247,255,.92) !important;
}
.offers__grid--detailed .offer-card a {
  color: #ffffff !important;
}
.offers__grid--detailed .offer-card:hover,
.offers__grid--detailed .offer-card:focus-within {
  transform: translateY(-8px) scale(1.012) !important;
  border-color: rgba(84,202,78,.28) !important;
  box-shadow: 0 30px 68px rgba(0,0,0,.24), 0 0 0 4px rgba(84,202,78,.08) !important;
  background: linear-gradient(180deg, rgba(8,22,43,.99) 0%, rgba(12,31,58,.99) 100%) !important;
}
.offers__grid--detailed .offer-card--main {
  background:
    radial-gradient(circle at 84% 18%, rgba(84,202,78,.12), transparent 22%),
    linear-gradient(180deg, rgba(8,22,43,.99) 0%, rgba(14,34,62,.99) 100%) !important;
  border-color: rgba(84,202,78,.24) !important;
  transform: translateY(-4px);
}
.offers__grid--detailed .offer-card--main:hover,
.offers__grid--detailed .offer-card--main:focus-within {
  transform: translateY(-10px) scale(1.015) !important;
}

/* 4) Animation premium recommandée : apparition en cascade + lift + glow léger. */
.offers__grid--detailed .offer-card.reveal:nth-child(1) { transition-delay: .04s; }
.offers__grid--detailed .offer-card.reveal:nth-child(2) { transition-delay: .14s; }
.offers__grid--detailed .offer-card.reveal:nth-child(3) { transition-delay: .24s; }
@keyframes launchBubbleReveal {
  0% { opacity: 0; transform: translateY(16px) scale(.985); }
  100% { opacity: 1; transform: translateY(0) scale(1); }
}

/* Cohérence des boutons et tags dans l’offre de lancement. */
.launch-offer {
  background: linear-gradient(180deg, rgba(6,16,32,.98) 0%, rgba(9,22,43,.98) 100%) !important;
  border: 1px solid rgba(83,194,255,.16) !important;
  box-shadow: 0 24px 60px rgba(0,0,0,.18) !important;
}
.launch-offer::before {
  background:
    radial-gradient(circle at 12% 0%, rgba(83,194,255,.10), transparent 26%),
    radial-gradient(circle at 92% 100%, rgba(84,202,78,.10), transparent 24%) !important;
}
.launch-offer__content h3,
.launch-offer__subtitle,
.launch-offer__positioning,
.launch-offer__note,
.launch-offer__price,
.launch-offer__list li,
.launch-offer__tag,
.launch-offer__label {
  color: #f1f7ff !important;
}
.launch-offer__label,
.launch-offer__price { color: var(--pilot-green) !important; }
.launch-offer__tag {
  background: rgba(255,255,255,.08) !important;
  border: 1px solid rgba(83,194,255,.12) !important;
  color: var(--pilot-green) !important;
}
.launch-offer__button,
.launch-offer__button:visited {
  background: linear-gradient(180deg, #1c63ff 0%, #0b49d8 100%) !important;
  border-color: rgba(255,255,255,.14) !important;
  color: #ffffff !important;
}
.launch-offer__button:hover,
.launch-offer__button:focus-visible {
  background: linear-gradient(180deg, #2a76ff 0%, #0b49d8 100%) !important;
}

@media (prefers-reduced-motion: reduce) {
  .launch-offer__list li {
    animation: none !important;
    opacity: 1 !important;
    transform: none !important;
  }
  .launch-offer__list li,
  .offers__grid--detailed .offer-card {
    transition: none !important;
  }
}


/* === Étape 72 : meilleur équilibre visuel du pack lancement === */
.launch-offer--with-visual {
  gap: 24px !important;
}

/* Le grand bloc reste dans l'univers sombre, mais le contenu texte retrouve une carte claire et lisible. */
.launch-offer {
  padding: 22px !important;
}
.launch-offer__content {
  padding: 28px 32px 30px !important;
  border-radius: 30px !important;
  background:
    radial-gradient(circle at 88% 12%, rgba(84,202,78,.08), transparent 22%),
    radial-gradient(circle at 8% 14%, rgba(83,194,255,.08), transparent 22%),
    linear-gradient(180deg, #ffffff 0%, #f8fbff 100%) !important;
  border: 1px solid rgba(18,58,110,.10) !important;
  box-shadow: 0 18px 44px rgba(0,0,0,.10) !important;
}
.launch-offer__label {
  color: var(--pilot-green) !important;
}
.launch-offer__content h3 {
  color: #112b4a !important;
  margin-bottom: 16px !important;
}
.launch-offer__subtitle,
.launch-offer__positioning {
  color: #57708b !important;
}
.launch-offer__subtitle {
  font-size: clamp(1.06rem, 1.7vw, 1.2rem) !important;
  line-height: 1.62 !important;
}
.launch-offer__positioning {
  margin-top: 18px !important;
  line-height: 1.65 !important;
}
.launch-offer__list {
  margin-top: 28px !important;
  gap: 16px !important;
}

/* Les bulles gardent l'esprit hero sombre, mais respirent davantage et contrastent mieux. */
.launch-offer__list li {
  padding: 22px 22px 22px 68px !important;
  border-radius: 24px !important;
  background:
    radial-gradient(circle at 88% 16%, rgba(83,194,255,.08), transparent 24%),
    linear-gradient(180deg, #08192f 0%, #0c2342 100%) !important;
  border: 1px solid rgba(83,194,255,.18) !important;
  box-shadow: 0 16px 34px rgba(10,21,39,.16), inset 0 1px 0 rgba(255,255,255,.03) !important;
  color: #f4f8ff !important;
  font-size: .95rem !important;
  line-height: 1.34 !important;
}
.launch-offer__list li::before {
  left: 18px !important;
  top: 18px !important;
  width: 30px !important;
  height: 30px !important;
  background: linear-gradient(180deg, #cfe4ff 0%, #a6cbff 100%) !important;
  color: var(--pilot-green) !important;
}
.launch-offer__list li:hover,
.launch-offer__list li:focus-within {
  transform: translateY(-5px) scale(1.008) !important;
  background:
    radial-gradient(circle at 88% 16%, rgba(84,202,78,.10), transparent 24%),
    linear-gradient(180deg, #0a1e37 0%, #0f294a 100%) !important;
  border-color: rgba(84,202,78,.32) !important;
  box-shadow: 0 22px 42px rgba(10,21,39,.20), 0 0 0 4px rgba(84,202,78,.08) !important;
}

/* Partie image / encadré prix : plus claire et plus équilibrée pour éviter le noir sur noir. */
.launch-offer__figure {
  border: 1px solid rgba(255,255,255,.18) !important;
  background: rgba(255,255,255,.06) !important;
}
.launch-offer--with-visual .launch-offer__aside {
  padding: 22px !important;
  border-radius: 28px !important;
  background:
    radial-gradient(circle at 84% 18%, rgba(84,202,78,.08), transparent 22%),
    linear-gradient(180deg, #ffffff 0%, #f8fbff 100%) !important;
  border: 1px solid rgba(18,58,110,.10) !important;
  box-shadow: 0 18px 42px rgba(0,0,0,.10) !important;
}
.launch-offer__tag {
  background: rgba(84,202,78,.10) !important;
  border: 1px solid rgba(84,202,78,.20) !important;
  color: var(--pilot-green) !important;
}
.launch-offer__price {
  color: #112b4a !important;
}
.launch-offer__note {
  color: #526b85 !important;
}

/* Meilleur équilibre responsive */
@media (max-width: 1100px) {
  .launch-offer__content {
    padding: 24px 24px 26px !important;
  }
}
@media (max-width: 820px) {
  .launch-offer {
    padding: 16px !important;
  }
  .launch-offer__content,
  .launch-offer--with-visual .launch-offer__aside {
    padding: 22px 20px !important;
    border-radius: 24px !important;
  }
  .launch-offer__list {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }
  .launch-offer__list li {
    padding: 20px 18px 20px 62px !important;
  }
}


/* === Étape 73 : pictos bleus foncés + coches blanches, CTA texte blanc === */
.launch-offer__list li::before {
  background: linear-gradient(180deg, #123864 0%, #0b2747 100%) !important;
  color: #ffffff !important;
  border: 1px solid rgba(83,194,255,.20) !important;
  box-shadow: 0 10px 20px rgba(10,21,39,.24), inset 0 1px 0 rgba(255,255,255,.06) !important;
}
.launch-offer__button,
.launch-offer__button:visited {
  color: #ffffff !important;
}


/* === Étape 74 : coches vert logo + texte du bouton bleu en blanc === */
.launch-offer__list li::before {
  color: var(--pilot-green) !important;
}

.launch-offer__button,
.launch-offer__button:visited,
.launch-offer__button:hover,
.launch-offer__button:focus-visible,
.launch-offer__button:active {
  color: #ffffff !important;
}


/* === Étape 75 : forçage final du CTA "Cadrer mon lancement" en blanc === */
.launch-offer--with-visual .launch-offer__aside a.launch-offer__button,
.launch-offer--with-visual .launch-offer__aside a.launch-offer__button:link,
.launch-offer--with-visual .launch-offer__aside a.launch-offer__button:visited,
.launch-offer--with-visual .launch-offer__aside a.launch-offer__button:hover,
.launch-offer--with-visual .launch-offer__aside a.launch-offer__button:focus,
.launch-offer--with-visual .launch-offer__aside a.launch-offer__button:focus-visible,
.launch-offer--with-visual .launch-offer__aside a.launch-offer__button:active,
a.button.launch-offer__button,
a.button.launch-offer__button:link,
a.button.launch-offer__button:visited,
a.button.launch-offer__button:hover,
a.button.launch-offer__button:focus,
a.button.launch-offer__button:focus-visible,
a.button.launch-offer__button:active {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  text-shadow: none !important;
}


/* === Étape 76 : suppression du bloc négatif, enchaînement plus direct === */
.problem--leviers .solution-bridge {
  margin-top: 34px !important;
}
@media (max-width: 900px) {
  .problem--leviers .solution-bridge {
    margin-top: 26px !important;
  }
}


/* === Étape 77 : cartes méthode sur fond hero sombre, chiffres verts, textes blancs === */
.method__grid {
  gap: 26px !important;
}
.method-card,
.method-card--featured {
  background:
    radial-gradient(circle at 86% 14%, rgba(84,202,78,.10), transparent 22%),
    radial-gradient(circle at 12% 18%, rgba(83,194,255,.09), transparent 24%),
    linear-gradient(180deg, rgba(7,18,36,.98) 0%, rgba(10,26,48,.98) 100%) !important;
  border: 1px solid rgba(83,194,255,.16) !important;
  box-shadow: 0 22px 56px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.03) !important;
}
.method-card:hover,
.method-card--featured:hover {
  background:
    radial-gradient(circle at 86% 14%, rgba(84,202,78,.12), transparent 22%),
    radial-gradient(circle at 12% 18%, rgba(83,194,255,.10), transparent 24%),
    linear-gradient(180deg, rgba(8,22,42,.99) 0%, rgba(12,31,58,.99) 100%) !important;
  border-color: rgba(84,202,78,.24) !important;
}
.method-card__index {
  color: #54CA4E !important;
  text-shadow: 0 0 18px rgba(84,202,78,.14) !important;
}
.method-card h3,
.method-card p,
.method-card li {
  color: #ffffff !important;
}
.method-card p {
  color: rgba(240,247,255,.94) !important;
}
.method-card li {
  background: rgba(255,255,255,.08) !important;
  border: 1px solid rgba(83,194,255,.12) !important;
  color: #ffffff !important;
  box-shadow: 0 10px 24px rgba(0,0,0,.12) !important;
}
.method-card li:hover {
  background: rgba(255,255,255,.10) !important;
  border-color: rgba(84,202,78,.26) !important;
  color: #ffffff !important;
}
.method-card li::before,
.method-card li::after,
.method-card::after {
  background: linear-gradient(90deg, #54CA4E 0%, #53C2FF 62%, #ffffff 100%) !important;
}
@media (max-width: 900px) {
  .method__grid {
    gap: 20px !important;
  }
}


/* === Étape 78 : unification globale du vert du site sur le vert du logo === */
:root {
  --pilot-green: #54CA4E !important;
  --pilot-green-deep: #54CA4E !important;
  --green-900: #54CA4E !important;
  --green-700: #54CA4E !important;
  --green-500: #54CA4E !important;
  --orange-600: #54CA4E !important;
  --orange-400: #54CA4E !important;
}
.section-kicker, .hero__mission strong, .hero-capabilities__label, .hero-capabilities__hint, .method-card__index, .problem-flow__item span, .solution-bridge__label, .offer-card__label, .launch-offer__label, .launch-offer__price-label, .proof__number, .proof__label, .founder-program__kicker, .founder-program__urgency, .founder-program__star, .founder-program__hourglass, .ecosystem-card span, .audience__content strong, .contact .section-kicker, .faq .section-kicker, .proof .section-kicker, .offers .section-kicker, .method .section-kicker {
  color: #54CA4E !important;
}


/* === Étape 79 : chiffres méthode rééquilibrés + animation des bulles déplacée en bas === */
.method-card__index {
  font-size: clamp(3.2rem, 5vw, 3.8rem) !important;
  font-weight: 800 !important;
  line-height: .9 !important;
  letter-spacing: -.02em !important;
  margin-bottom: 18px !important;
}

.method-card li {
  padding: 11px 16px 16px !important;
}

.method-card li::after {
  top: auto !important;
  bottom: 6px !important;
  left: 14px !important;
  right: 14px !important;
  height: 4px !important;
  border-radius: 999px !important;
}

@media (max-width: 900px) {
  .method-card__index {
    font-size: clamp(2.8rem, 9vw, 3.4rem) !important;
  }
}


/* === Étape 80 : pills méthode sans barre basse + paragraphe preuve vert + coches sur bénéfices === */
/* Pilles : on garde le léger passage lumineux, mais on retire la barre animée sous le mot. */
.method-card li {
  overflow: hidden !important;
}
.method-card li::after {
  content: none !important;
  display: none !important;
}
.method-card li::before {
  display: block !important;
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  border-radius: inherit !important;
  background: linear-gradient(90deg, rgba(84,202,78,.16) 0%, rgba(83,194,255,.20) 52%, rgba(255,255,255,.10) 100%) !important;
  opacity: .95 !important;
  transform: translateX(-130%) !important;
  animation: methodPillBlueSweep 2.8s ease-in-out infinite !important;
  z-index: 0 !important;
}

/* Bloc expérience : premier paragraphe en vert du logo. */
.proof__content h2 + p {
  color: #54CA4E !important;
}

/* Bloc bénéfices : petite coche verte avant chaque item. */
.proof__points li {
  position: relative !important;
  padding: 18px 18px 18px 52px !important;
}
.proof__points li::before {
  content: "✓" !important;
  position: absolute !important;
  left: 18px !important;
  top: 19px !important;
  font-size: .95rem !important;
  line-height: 1 !important;
  font-weight: 900 !important;
  color: #54CA4E !important;
  text-shadow: 0 0 12px rgba(84,202,78,.16) !important;
}


/* === Étape 81 : halo / laser vert au survol des bulles des offres === */
.offers__grid--detailed .offer-card li,
.launch-offer__list li {
  position: relative !important;
  isolation: isolate !important;
  transition: transform .24s ease, border-color .24s ease, box-shadow .24s ease, background .24s ease !important;
}

.offers__grid--detailed .offer-card li::after,
.launch-offer__list li::after {
  content: "" !important;
  position: absolute !important;
  inset: -1px !important;
  border-radius: inherit !important;
  border: 1px solid rgba(84,202,78,0) !important;
  box-shadow: 0 0 0 rgba(84,202,78,0) !important;
  pointer-events: none !important;
  transition: border-color .24s ease, box-shadow .24s ease, opacity .24s ease !important;
  opacity: 0 !important;
}

.offers__grid--detailed .offer-card li:hover,
.offers__grid--detailed .offer-card li:focus-visible,
.launch-offer__list li:hover,
.launch-offer__list li:focus-visible {
  transform: translateY(-2px) !important;
  border-color: rgba(84,202,78,.34) !important;
  box-shadow: 0 0 0 1px rgba(84,202,78,.18) inset, 0 0 18px rgba(84,202,78,.18), 0 10px 24px rgba(0,0,0,.18) !important;
  background: rgba(255,255,255,.09) !important;
}

.offers__grid--detailed .offer-card li:hover::after,
.offers__grid--detailed .offer-card li:focus-visible::after,
.launch-offer__list li:hover::after,
.launch-offer__list li:focus-visible::after {
  opacity: 1 !important;
  border-color: rgba(84,202,78,.62) !important;
  box-shadow: 0 0 14px rgba(84,202,78,.34), 0 0 26px rgba(84,202,78,.18), inset 0 0 10px rgba(84,202,78,.10) !important;
}


/* === Étape 83 : contour vert animé autour des 3 offres === */
.offers__grid--detailed .offer-card {
  position: relative !important;
  isolation: isolate !important;
}
.offers__grid--detailed .offer-card > * {
  position: relative;
  z-index: 2;
}
.offers__grid--detailed .offer-card::before {
  content: "";
  position: absolute;
  inset: -1px;
  border-radius: inherit;
  background: linear-gradient(180deg, rgba(84,202,78,.22), rgba(83,194,255,.14));
  opacity: .55;
  z-index: 0;
  pointer-events: none;
  box-shadow: 0 0 18px rgba(84,202,78,.10), 0 0 34px rgba(83,194,255,.06);
}
.offers__grid--detailed .offer-card::after {
  content: "";
  position: absolute;
  inset: -2px;
  border-radius: inherit;
  z-index: 1;
  pointer-events: none;
  background: conic-gradient(from 0deg, transparent 0deg, transparent 308deg, rgba(84,202,78,.96) 330deg, rgba(83,194,255,.85) 344deg, rgba(255,255,255,.96) 355deg, transparent 360deg);
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  padding: 2px;
  opacity: .82;
  animation: offerLaserOrbit 6.2s linear infinite;
  filter: drop-shadow(0 0 8px rgba(84,202,78,.30)) drop-shadow(0 0 18px rgba(83,194,255,.18));
}
.offers__grid--detailed .offer-card:hover::after,
.offers__grid--detailed .offer-card:focus-within::after {
  opacity: 1;
  animation-duration: 3.8s;
  filter: drop-shadow(0 0 10px rgba(84,202,78,.42)) drop-shadow(0 0 24px rgba(83,194,255,.24));
}
.offers__grid--detailed .offer-card--main::before {
  opacity: .72;
  box-shadow: 0 0 22px rgba(84,202,78,.14), 0 0 40px rgba(83,194,255,.08);
}
.offers__grid--detailed .offer-card--main::after {
  animation-duration: 5s;
}
@keyframes offerLaserOrbit {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}


/* === Étape 84 : fond derrière le hero réassombri et rendu plus net === */
body {
  background:
    radial-gradient(circle at 18% 10%, rgba(28,99,255,.10), transparent 24%),
    radial-gradient(circle at 84% 14%, rgba(84,202,78,.07), transparent 22%),
    linear-gradient(180deg, #040915 0%, #071224 32%, #08152a 54%, #ffffff 54.1%, #f7fbff 100%) !important;
}

.hero--stacked::before {
  content: "";
  position: absolute;
  inset: 64px 0 auto 0;
  height: min(64vw, 720px);
  pointer-events: none;
  z-index: 0;
  background:
    radial-gradient(circle at 50% 22%, rgba(8,18,38,.56), transparent 52%),
    radial-gradient(circle at 18% 34%, rgba(18,92,198,.16), transparent 24%),
    radial-gradient(circle at 82% 28%, rgba(84,202,78,.10), transparent 22%),
    linear-gradient(180deg, rgba(5,13,28,.20) 0%, rgba(5,13,28,.12) 52%, rgba(5,13,28,0) 100%);
}

.hero-wide-growth__wash {
  background:
    radial-gradient(circle at 14% 24%, rgba(54,164,255,.14), transparent 22%),
    radial-gradient(circle at 84% 18%, rgba(84,202,78,.10), transparent 22%),
    radial-gradient(circle at 50% 12%, rgba(10,99,255,.07), transparent 28%),
    linear-gradient(180deg, rgba(6,14,30,0) 0%, rgba(6,14,30,.18) 40%, rgba(6,14,30,.08) 62%, rgba(6,14,30,0) 100%) !important;
}

.page-glow {
  background: radial-gradient(ellipse at center, rgba(18,76,178,.16), transparent 62%) !important;
}


/* === Étape 85 : suppression du contour animé complexe des offres + hover vert simple sur les grandes cartes === */
.offers__grid--detailed .offer-card::before,
.offers__grid--detailed .offer-card::after {
  content: none !important;
  display: none !important;
}

.offers__grid--detailed .offer-card,
.offers__grid--detailed .offer-card--main {
  background: linear-gradient(180deg, rgba(7,18,36,.98) 0%, rgba(11,27,49,.98) 100%) !important;
  border: 1px solid rgba(83,194,255,.16) !important;
  box-shadow: 0 22px 54px rgba(0,0,0,.18), inset 0 1px 0 rgba(255,255,255,.03) !important;
}

.offers__grid--detailed .offer-card--main {
  background:
    radial-gradient(circle at 84% 18%, rgba(84,202,78,.10), transparent 22%),
    linear-gradient(180deg, rgba(8,22,43,.99) 0%, rgba(14,34,62,.99) 100%) !important;
  border-color: rgba(84,202,78,.24) !important;
}

.offers__grid--detailed .offer-card:hover,
.offers__grid--detailed .offer-card:focus-within,
.offers__grid--detailed .offer-card--main:hover,
.offers__grid--detailed .offer-card--main:focus-within {
  transform: translateY(-4px) !important;
  border-color: rgba(84,202,78,.34) !important;
  box-shadow: 0 0 0 1px rgba(84,202,78,.18) inset, 0 0 18px rgba(84,202,78,.18), 0 14px 32px rgba(0,0,0,.20) !important;
}


/* === Étape 86 : fond bleu cohérent pour le bloc "Je lance mon activité" === */
.launch-offer {
  background: linear-gradient(180deg, #081427 0%, #10264A 100%) !important;
  border: 1px solid rgba(83,194,255,.16) !important;
  box-shadow: 0 22px 60px rgba(0,0,0,.20), inset 0 1px 0 rgba(255,255,255,.03) !important;
}

.launch-offer::before {
  background:
    radial-gradient(circle at 14% 12%, rgba(83,194,255,.12), transparent 24%),
    radial-gradient(circle at 86% 18%, rgba(84,202,78,.08), transparent 22%),
    linear-gradient(180deg, rgba(255,255,255,.02) 0%, rgba(255,255,255,0) 100%) !important;
}


/* === Étape 87 : bloc diagnostics pilotes repositionné avant contact + style harmonisé === */
.founder-program {
  margin-top: 0 !important;
}

.founder-program__hourglass {
  color: var(--pilot-green) !important;
  background: rgba(84,202,78,.10) !important;
  border: 1px solid rgba(84,202,78,.22) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04), 0 0 12px rgba(84,202,78,.10) !important;
}

.founder-program__urgency {
  border-color: rgba(84,202,78,.22) !important;
  background: linear-gradient(180deg, rgba(7,18,36,.96) 0%, rgba(11,27,49,.96) 100%) !important;
}

/* Bulles de droite dans l'esprit des bulles avec coche validée */
.founder-program__list {
  gap: 1rem !important;
}

.founder-program__list li {
  position: relative !important;
  padding: 1.35rem 1.4rem 1.35rem 4.25rem !important;
  border-radius: 1.65rem !important;
  background: linear-gradient(180deg, rgba(33,53,84,.96) 0%, rgba(28,47,76,.96) 100%) !important;
  border: 1px solid rgba(83,194,255,.14) !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.03), 0 16px 36px rgba(0,0,0,.12) !important;
  color: rgba(240,248,255,.96) !important;
  transition: transform .22s ease, border-color .22s ease, box-shadow .22s ease !important;
}

.founder-program__list li::before {
  content: "✓" !important;
  position: absolute !important;
  left: 1.25rem !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 2.2rem !important;
  height: 2.2rem !important;
  border-radius: 999px !important;
  display: grid !important;
  place-items: center !important;
  background: linear-gradient(180deg, #13396B 0%, #0D2D57 100%) !important;
  border: 1px solid rgba(83,194,255,.22) !important;
  color: var(--pilot-green) !important;
  font-size: 1.05rem !important;
  font-weight: 900 !important;
  box-shadow: inset 0 1px 0 rgba(255,255,255,.06), 0 0 12px rgba(84,202,78,.08) !important;
}

.founder-program__list li:hover,
.founder-program__list li:focus-visible {
  transform: translateY(-2px) !important;
  border-color: rgba(84,202,78,.32) !important;
  box-shadow: 0 0 0 1px rgba(84,202,78,.18) inset, 0 0 18px rgba(84,202,78,.14), 0 14px 30px rgba(0,0,0,.16) !important;
}

.founder-program__reassurance {
  margin-top: 1rem !important;
}


/* ==========================================================
   ÉTAPE 88 — STABILISATION GRAPHIQUE PREMIUM
   Objectif : cohérence DA, moins d'effets, plus de maîtrise.
   ========================================================== */

:root {
  --pilot-green: #54CA4E !important;
  --pilot-blue-electric: #1C63FF !important;
  --pilot-blue-soft: #53C2FF !important;
  --pilot-night: #081427 !important;
  --pilot-night-2: #10264A !important;
  --pilot-night-3: #0B1B31 !important;
  --pilot-paper: #F7FBFF !important;
  --pilot-paper-2: #FFFFFF !important;
  --pilot-ink: #112B4A !important;
  --pilot-muted: #5D748D !important;
}

/* 1) Fonds sombres : plus de noir dur, uniquement bleu nuit premium. */
.hero-capabilities,
.method-card,
.method-card--featured,
.launch-offer,
.offers__grid--detailed .offer-card,
.offers__grid--detailed .offer-card--main,
.founder-program__panel,
.proof__content,
.proof__panel,
.ecosystem-card {
  background:
    radial-gradient(circle at 86% 14%, rgba(84,202,78,.08), transparent 22%),
    radial-gradient(circle at 12% 16%, rgba(83,194,255,.08), transparent 24%),
    linear-gradient(180deg, var(--pilot-night) 0%, var(--pilot-night-2) 100%) !important;
  border: 1px solid rgba(83,194,255,.16) !important;
  box-shadow:
    0 22px 56px rgba(3,12,26,.18),
    inset 0 1px 0 rgba(255,255,255,.03) !important;
}

/* 2) Sections claires : respiration contrôlée, pas blanc clinique. */
.method,
.offers,
.audience,
.diagnostic,
.faq,
.contact {
  background:
    radial-gradient(circle at 14% 12%, rgba(28,99,255,.045), transparent 24%),
    radial-gradient(circle at 88% 18%, rgba(84,202,78,.035), transparent 22%),
    linear-gradient(180deg, #F7FBFF 0%, #FFFFFF 100%) !important;
}

/* 3) Bulles : style unique, hover vert cohérent. */
.capability-chip,
.method-card li,
.launch-offer__list li,
.offers__grid--detailed .offer-card li,
.founder-program__list li,
.proof__points li,
.audience__tags span,
.diagnostic-step {
  border-radius: 22px !important;
  transition:
    transform .22s ease,
    border-color .22s ease,
    box-shadow .22s ease,
    background .22s ease !important;
}

.method-card li,
.launch-offer__list li,
.offers__grid--detailed .offer-card li,
.founder-program__list li {
  background: rgba(255,255,255,.075) !important;
  border: 1px solid rgba(83,194,255,.13) !important;
  color: rgba(245,249,255,.96) !important;
  box-shadow: 0 10px 24px rgba(0,0,0,.11), inset 0 1px 0 rgba(255,255,255,.03) !important;
}

.capability-chip,
.proof__points li,
.audience__tags span,
.diagnostic-step {
  background: #FFFFFF !important;
  border: 1px solid rgba(28,99,255,.09) !important;
  color: var(--pilot-ink) !important;
  box-shadow: 0 12px 28px rgba(9,36,84,.06) !important;
}

.capability-chip:hover,
.capability-chip:focus-visible,
.method-card li:hover,
.method-card li:focus-visible,
.launch-offer__list li:hover,
.launch-offer__list li:focus-visible,
.offers__grid--detailed .offer-card li:hover,
.offers__grid--detailed .offer-card li:focus-visible,
.founder-program__list li:hover,
.founder-program__list li:focus-visible,
.proof__points li:hover,
.proof__points li:focus-visible {
  transform: translateY(-2px) !important;
  border-color: rgba(84,202,78,.34) !important;
  box-shadow:
    0 0 0 1px rgba(84,202,78,.16) inset,
    0 0 16px rgba(84,202,78,.14),
    0 12px 26px rgba(0,0,0,.14) !important;
}

/* 4) Offres : rendu commercial net, sans effet complexe. */
.offers__grid--detailed .offer-card::before,
.offers__grid--detailed .offer-card::after,
.offers__grid--detailed .offer-card li::after,
.launch-offer__list li::after {
  content: none !important;
  display: none !important;
}

.offers__grid--detailed {
  gap: clamp(18px, 2.4vw, 28px) !important;
}

.offers__grid--detailed .offer-card {
  padding: clamp(28px, 3vw, 36px) !important;
  overflow: hidden !important;
}

.offers__grid--detailed .offer-card:hover,
.offers__grid--detailed .offer-card:focus-within {
  transform: translateY(-5px) !important;
  border-color: rgba(84,202,78,.36) !important;
  box-shadow:
    0 0 0 1px rgba(84,202,78,.16) inset,
    0 0 18px rgba(84,202,78,.14),
    0 22px 48px rgba(0,0,0,.20) !important;
}

.offers__grid--detailed .offer-card--main {
  transform: translateY(-4px) !important;
  border-color: rgba(84,202,78,.26) !important;
}

.offers__grid--detailed .offer-card--main:hover,
.offers__grid--detailed .offer-card--main:focus-within {
  transform: translateY(-7px) !important;
}

.offers__grid--detailed .offer-card h3,
.offers__grid--detailed .offer-card__intro,
.offers__grid--detailed .offer-card__price,
.offers__grid--detailed .offer-card a {
  color: #FFFFFF !important;
}

.offers__grid--detailed .offer-card__label,
.offers__grid--detailed .offer-card__included,
.offers__grid--detailed .offer-card__price-label,
.offers__grid--detailed .offer-check-list li::before {
  color: var(--pilot-green) !important;
}

/* 5) Bloc "5 diagnostics" : compact, premium, avant contact. */
.founder-program {
  padding-block: clamp(56px, 7vw, 86px) !important;
}

.founder-program__panel {
  padding: clamp(24px, 3.2vw, 38px) !important;
  border-radius: 34px !important;
  grid-template-columns: minmax(0, 1.02fr) minmax(320px, .78fr) !important;
  gap: clamp(24px, 3vw, 36px) !important;
}

.founder-program h2 {
  font-size: clamp(2rem, 4vw, 3.2rem) !important;
  line-height: 1.02 !important;
  margin-bottom: 16px !important;
  color: #FFFFFF !important;
}

.founder-program p,
.founder-program__note,
.founder-program__reassurance {
  color: rgba(235,244,255,.82) !important;
  line-height: 1.62 !important;
}

.founder-program__eyebrow {
  gap: 12px !important;
  margin-bottom: 16px !important;
}

.founder-program__rating {
  margin-bottom: 14px !important;
}

.founder-program__hourglass {
  color: var(--pilot-green) !important;
  background: rgba(84,202,78,.10) !important;
  border: 1px solid rgba(84,202,78,.22) !important;
  box-shadow: 0 0 12px rgba(84,202,78,.10), inset 0 1px 0 rgba(255,255,255,.04) !important;
}

.founder-program__list {
  display: grid !important;
  gap: 12px !important;
}

.founder-program__list li {
  padding: 16px 16px 16px 56px !important;
  border-radius: 22px !important;
  background: rgba(255,255,255,.075) !important;
  border: 1px solid rgba(83,194,255,.13) !important;
  color: rgba(245,249,255,.96) !important;
}

.founder-program__list li::before {
  content: "✓" !important;
  position: absolute !important;
  left: 16px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  width: 28px !important;
  height: 28px !important;
  border-radius: 999px !important;
  display: grid !important;
  place-items: center !important;
  background: linear-gradient(180deg, #13396B 0%, #0D2D57 100%) !important;
  border: 1px solid rgba(83,194,255,.22) !important;
  color: var(--pilot-green) !important;
  font-size: .95rem !important;
  font-weight: 900 !important;
}

.founder-program__button,
.founder-program__button:visited {
  color: #FFFFFF !important;
  background: linear-gradient(180deg, #1C63FF 0%, #0B49D8 100%) !important;
  border: 1px solid rgba(255,255,255,.16) !important;
}

/* 6) Typographie : moins massive, plus régulière. */
.method-card__index {
  font-size: clamp(2.85rem, 4.3vw, 3.45rem) !important;
  font-weight: 760 !important;
  line-height: .92 !important;
  margin-bottom: 16px !important;
}

.method-card h3,
.offer-card h3,
.launch-offer h3,
.proof__content h2,
.founder-program h2 {
  letter-spacing: -.035em !important;
}

.section-head h2,
.problem h2,
.method h2,
.proof h2,
.offers h2,
.founder-program h2,
.audience h2,
.ecosystem h2,
.diagnostic h2,
.faq h2,
.contact h2 {
  text-wrap: balance;
}

.section-kicker,
.offer-card__label,
.launch-offer__label,
.proof__label,
.founder-program__kicker {
  font-size: .78rem !important;
  letter-spacing: .14em !important;
  font-weight: 850 !important;
  color: var(--pilot-green) !important;
}

/* 7) Images : traitement plus homogène. */
.hero__media-frame,
.method-card__visual,
.launch-offer__figure {
  border-radius: 30px !important;
  border: 1px solid rgba(83,194,255,.16) !important;
  box-shadow: 0 20px 54px rgba(4,16,36,.18) !important;
  background: var(--pilot-night) !important;
}

.method-card__visual img,
.launch-offer__figure img,
.hero__media-frame img {
  filter: contrast(1.03) saturate(1.02) !important;
}

/* 8) Transitions entre sections : plus douces. */
.section {
  scroll-margin-top: 120px;
}

/* Accessibilité mouvement : on conserve la sobriété. */
@media (prefers-reduced-motion: reduce) {
  .method-card li::before,
  .capability-chip,
  .offer-card,
  .founder-program__list li,
  .launch-offer__list li {
    animation: none !important;
    transition: none !important;
  }
}

@media (max-width: 980px) {
  .founder-program__panel {
    grid-template-columns: 1fr !important;
  }

  .offers__grid--detailed .offer-card--main {
    transform: none !important;
  }

  .method-card__index {
    font-size: clamp(2.6rem, 8vw, 3.2rem) !important;
  }
}


/* ==========================================================
   ÉTAPE 89 — FOCUS ÉCOSYSTÈME RODYAM
   ========================================================== */
.ecosystem {
  background:
    radial-gradient(circle at 12% 18%, rgba(83,194,255,.05), transparent 24%),
    radial-gradient(circle at 88% 20%, rgba(84,202,78,.04), transparent 22%),
    linear-gradient(180deg, #071324 0%, #0B1B31 100%) !important;
}

.ecosystem__layout {
  display: grid;
  gap: clamp(26px, 3vw, 34px);
}

.ecosystem .section-kicker {
  color: var(--pilot-green) !important;
}

.ecosystem__intro h2 {
  max-width: 980px;
  color: #FFFFFF !important;
}

.ecosystem__intro p {
  max-width: 920px;
  color: rgba(236,244,255,.84) !important;
}

.ecosystem__intro strong {
  color: #FFFFFF !important;
}

.ecosystem__cards {
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(320px, .92fr);
  gap: clamp(20px, 2.4vw, 28px);
  align-items: stretch;
}

.ecosystem-card {
  position: relative;
  overflow: hidden;
  border-radius: 32px !important;
  padding: clamp(28px, 3vw, 36px) !important;
}

.ecosystem-card--pilotyam {
  background:
    radial-gradient(circle at 86% 14%, rgba(84,202,78,.07), transparent 22%),
    radial-gradient(circle at 12% 14%, rgba(83,194,255,.08), transparent 24%),
    linear-gradient(180deg, rgba(8,20,39,.98) 0%, rgba(16,38,74,.98) 100%) !important;
  border: 1px solid rgba(83,194,255,.16) !important;
}

.ecosystem-card--rodyam {
  background:
    radial-gradient(circle at 86% 18%, rgba(173,96,255,.16), transparent 24%),
    radial-gradient(circle at 18% 18%, rgba(255,255,255,.05), transparent 16%),
    linear-gradient(180deg, rgba(6,6,10,.98) 0%, rgba(15,10,20,.99) 100%) !important;
  border: 1px solid rgba(190,120,255,.22) !important;
  box-shadow:
    0 20px 56px rgba(0,0,0,.28),
    0 0 0 1px rgba(255,255,255,.02) inset,
    0 0 24px rgba(166,92,255,.08) !important;
}

.ecosystem-card::after {
  content: none !important;
}

.ecosystem-card span {
  display: inline-flex;
  align-items: center;
  margin-bottom: 12px;
  font-size: .8rem;
  letter-spacing: .15em;
  font-weight: 850;
  text-transform: uppercase;
  color: var(--pilot-green) !important;
}

.ecosystem-card--rodyam > span {
  color: #C88BFF !important;
}

.ecosystem-card h3 {
  color: #FFFFFF !important;
  font-size: clamp(1.36rem, 2vw, 1.75rem);
  line-height: 1.14;
  letter-spacing: -.03em;
  margin-bottom: 14px;
}

.ecosystem-card p {
  color: rgba(236,244,255,.82) !important;
  line-height: 1.68;
}

.ecosystem-card__audiences {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 18px;
}

.ecosystem-card__audiences span {
  margin: 0;
  padding: 11px 14px;
  border-radius: 999px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(83,194,255,.14);
  color: #F3F8FF !important;
  letter-spacing: normal;
  text-transform: none;
  font-size: .94rem;
  font-weight: 650;
}

.ecosystem-card__logo {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  margin-bottom: 16px;
  padding: 8px 0 2px;
}

.ecosystem-card__logo img {
  width: min(100%, 420px);
  height: auto;
  display: block;
  filter: drop-shadow(0 10px 24px rgba(140,62,255,.12));
}

.ecosystem-card__link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-top: 18px;
  padding: 13px 18px;
  border-radius: 999px;
  color: #F8F3FF !important;
  text-decoration: none;
  font-weight: 700;
  background: linear-gradient(135deg, rgba(118,56,228,.96), rgba(183,104,255,.96));
  border: 1px solid rgba(255,255,255,.12);
  box-shadow: 0 14px 34px rgba(101,36,185,.24);
  transition: transform .22s ease, box-shadow .22s ease, filter .22s ease;
}

.ecosystem-card__link:hover,
.ecosystem-card__link:focus-visible {
  transform: translateY(-2px);
  box-shadow: 0 18px 38px rgba(131,54,234,.28);
  filter: brightness(1.04);
}

@media (max-width: 980px) {
  .ecosystem__cards {
    grid-template-columns: 1fr;
  }

  .ecosystem-card__logo img {
    width: min(100%, 360px);
  }
}


/* ==========================================================
   ÉTAPE 90 — CONTRASTES & LISIBILITÉ SUR FONDS CLAIRS
   Objectif : supprimer les textes trop clairs sur blanc / blanc bleuté.
   ========================================================== */

/* Base claire : dès qu'une section est claire, le texte revient en bleu nuit/noir lisible. */
.method,
.offers,
.audience,
.diagnostic,
.faq,
.contact,
.launch-offer__content,
.launch-offer__aside,
.solution-bridge,
.contact-form,
.faq details,
.diagnostic__box {
  color: var(--pilot-ink, #112B4A) !important;
}

/* Titres et paragraphes sur les fonds blancs / blanc bleuté. */
.method .section-head h2,
.method .section-head p,
.offers .section-head h2,
.offers .section-head p,
.audience h2,
.audience p,
.diagnostic h2,
.diagnostic p,
.faq h2,
.faq summary,
.faq details p,
.contact h2,
.contact p,
.launch-offer__content h3,
.launch-offer__subtitle,
.launch-offer__positioning,
.launch-offer__aside p,
.solution-bridge h3,
.solution-bridge p,
.contact-form label,
.form-privacy-note {
  color: var(--pilot-ink, #112B4A) !important;
  -webkit-text-fill-color: currentColor !important;
}

/* Paragraphes secondaires : assez doux, mais jamais gris trop pâle. */
.method .section-head p,
.offers .section-head p,
.audience p,
.diagnostic p,
.faq details p,
.contact p,
.launch-offer__subtitle,
.launch-offer__positioning,
.launch-offer__note,
.solution-bridge p,
.form-privacy-note {
  color: #405A76 !important;
}

/* Labels verts : conservation de la marque, mais lisibles sur blanc. */
.launch-offer__label,
.launch-offer__price,
.launch-offer__tag,
.offers .section-kicker,
.method .section-kicker,
.audience .section-kicker,
.diagnostic .section-kicker,
.faq .section-kicker,
.contact .section-kicker,
.solution-bridge__label {
  color: var(--pilot-green, #54CA4E) !important;
  -webkit-text-fill-color: var(--pilot-green, #54CA4E) !important;
}

/* Bulles claires : texte sombre obligatoire. */
.capability-chip,
.proof__points li,
.audience__tags span,
.diagnostic-step,
.solution-bridge__tags span,
.launch-offer__tag,
.faq details {
  background: #FFFFFF !important;
  color: var(--pilot-ink, #112B4A) !important;
  border-color: rgba(28,99,255,.10) !important;
}

.capability-chip *,
.proof__points li *,
.audience__tags span,
.diagnostic-step *,
.solution-bridge__tags span,
.launch-offer__tag,
.faq details * {
  color: var(--pilot-ink, #112B4A) !important;
  -webkit-text-fill-color: currentColor !important;
}

/* Les bulles sombres gardent du texte clair. */
.method-card li,
.launch-offer__list li,
.offers__grid--detailed .offer-card li,
.founder-program__list li {
  color: #F3F8FF !important;
  -webkit-text-fill-color: #F3F8FF !important;
}

/* Cartes sombres : verrouillage du contraste blanc. */
.method-card,
.offers__grid--detailed .offer-card,
.founder-program__panel,
.ecosystem-card,
.proof__content,
.proof__panel {
  color: #F3F8FF !important;
}

.method-card h3,
.method-card p,
.offers__grid--detailed .offer-card h3,
.offers__grid--detailed .offer-card p,
.offers__grid--detailed .offer-card a,
.founder-program__panel h2,
.founder-program__panel p,
.ecosystem-card h3,
.ecosystem-card p,
.proof__content h2,
.proof__content p,
.proof__panel h3,
.proof__panel p {
  color: #F3F8FF !important;
  -webkit-text-fill-color: #F3F8FF !important;
}

/* Exceptions vertes sur cartes sombres. */
.method-card__index,
.offers__grid--detailed .offer-card__label,
.offers__grid--detailed .offer-card__included,
.offers__grid--detailed .offer-card__price-label,
.offers__grid--detailed .offer-check-list li::before,
.founder-program__kicker,
.founder-program__hourglass,
.ecosystem-card--pilotyam > span,
.proof__number,
.proof__label {
  color: var(--pilot-green, #54CA4E) !important;
  -webkit-text-fill-color: var(--pilot-green, #54CA4E) !important;
}

/* Exception RODYAM violet. */
.ecosystem-card--rodyam > span {
  color: #C88BFF !important;
  -webkit-text-fill-color: #C88BFF !important;
}

/* Formulaire : champs parfaitement lisibles. */
.contact-form input,
.contact-form select,
.contact-form textarea {
  color: #102642 !important;
  -webkit-text-fill-color: #102642 !important;
  background: #FFFFFF !important;
  border-color: rgba(28,99,255,.16) !important;
}

.contact-form input::placeholder,
.contact-form textarea::placeholder {
  color: #71869C !important;
  opacity: 1 !important;
}

/* Boutons sur fond clair : texte toujours blanc quand bouton principal. */
.button--primary,
.button--primary:visited,
.contact-form button,
.contact-form button:visited,
.launch-offer__button,
.launch-offer__button:visited,
.founder-program__button,
.founder-program__button:visited {
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
}

/* Liens simples sur fond clair : bleus lisibles, pas gris pâle. */
.diagnostic__box a:not(.button),
.contact a:not(.button),
.faq a:not(.button),
.offers a:not(.button) {
  color: #0B49D8 !important;
  -webkit-text-fill-color: #0B49D8 !important;
}

/* Sécurité anti texte blanc accidentel dans les principaux panneaux clairs. */
.launch-offer__content *,
.launch-offer__aside *,
.solution-bridge *,
.diagnostic__box *,
.contact-form *,
.faq details * {
  text-shadow: none !important;
}


/* ==========================================================
   ÉTAPE 91 — CORRECTION CONVERSION + CONTRASTE BULLES BLANCHES
   ========================================================== */

/* Suppression visuelle de sécurité si une ancienne ancre pré-diagnostic subsiste. */
#diagnostic {
  display: none !important;
}

/* Bulles blanches du bloc "Je lance mon activité" : texte sombre lisible. */
.launch-offer__list li {
  background: #FFFFFF !important;
  color: #112B4A !important;
  -webkit-text-fill-color: #112B4A !important;
  border: 1px solid rgba(28,99,255,.12) !important;
  box-shadow:
    0 16px 34px rgba(9,36,84,.08),
    inset 0 1px 0 rgba(255,255,255,.92) !important;
}

.launch-offer__list li * {
  color: #112B4A !important;
  -webkit-text-fill-color: #112B4A !important;
}

.launch-offer__list li::before {
  background: linear-gradient(180deg, #0D376B 0%, #08264D 100%) !important;
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
  border: 1px solid rgba(28,99,255,.22) !important;
  box-shadow: 0 10px 20px rgba(9,36,84,.16) !important;
}

.launch-offer__list li:hover,
.launch-offer__list li:focus-visible {
  transform: translateY(-2px) !important;
  border-color: rgba(84,202,78,.36) !important;
  box-shadow:
    0 0 0 1px rgba(84,202,78,.16) inset,
    0 0 16px rgba(84,202,78,.12),
    0 16px 32px rgba(9,36,84,.10) !important;
}

/* Le bloc contact devient la porte d'entrée unique pour pré-diagnostic, candidature et demande. */
.contact {
  background:
    radial-gradient(circle at 14% 10%, rgba(28,99,255,.05), transparent 24%),
    radial-gradient(circle at 86% 16%, rgba(84,202,78,.035), transparent 22%),
    linear-gradient(180deg, #F7FBFF 0%, #FFFFFF 100%) !important;
}

.contact-form select,
.contact-form input,
.contact-form textarea {
  background: #FFFFFF !important;
  color: #102642 !important;
  -webkit-text-fill-color: #102642 !important;
}

.contact-form select option {
  color: #102642 !important;
  background: #FFFFFF !important;
}


/* ==========================================================
   ÉTAPE 92 — OFFRES : HOVER VERT, LIENS VERTS, PRIX ALIGNÉS
   + remise en vert du texte expérience.
   ========================================================== */

/* 1) Texte expérience : retour au vert logo sélectionné. */
.proof__content h2 + p {
  color: var(--pilot-green, #54CA4E) !important;
  -webkit-text-fill-color: var(--pilot-green, #54CA4E) !important;
  text-shadow: 0 0 16px rgba(84,202,78,.10) !important;
}

/* 2) Offres : les trois grandes cartes gardent un hover vert simple et lisible. */
.offers__grid--detailed .offer-card,
.offers__grid--detailed .offer-card--main {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;
  border: 1px solid rgba(83,194,255,.16) !important;
  box-shadow:
    0 22px 56px rgba(3,12,26,.18),
    inset 0 1px 0 rgba(255,255,255,.03) !important;
  transition:
    transform .24s ease,
    border-color .24s ease,
    box-shadow .24s ease,
    filter .24s ease !important;
}

.offers__grid--detailed .offer-card::before,
.offers__grid--detailed .offer-card::after {
  content: "" !important;
  position: absolute !important;
  inset: -1px !important;
  border-radius: inherit !important;
  pointer-events: none !important;
  opacity: 0 !important;
  transition: opacity .24s ease, box-shadow .24s ease, border-color .24s ease !important;
}

.offers__grid--detailed .offer-card::before {
  border: 1px solid rgba(84,202,78,.0) !important;
  box-shadow: none !important;
}

.offers__grid--detailed .offer-card::after {
  display: block !important;
  background: transparent !important;
  box-shadow: 0 0 0 rgba(84,202,78,0) !important;
}

.offers__grid--detailed .offer-card:hover,
.offers__grid--detailed .offer-card:focus-within {
  transform: translateY(-5px) !important;
  border-color: rgba(84,202,78,.46) !important;
  box-shadow:
    0 0 0 1px rgba(84,202,78,.22) inset,
    0 0 22px rgba(84,202,78,.20),
    0 24px 52px rgba(3,12,26,.24) !important;
}

.offers__grid--detailed .offer-card:hover::before,
.offers__grid--detailed .offer-card:focus-within::before {
  opacity: 1 !important;
  border-color: rgba(84,202,78,.58) !important;
  box-shadow:
    0 0 18px rgba(84,202,78,.26),
    0 0 34px rgba(84,202,78,.12),
    inset 0 0 16px rgba(84,202,78,.08) !important;
}

.offers__grid--detailed .offer-card:hover::after,
.offers__grid--detailed .offer-card:focus-within::after {
  opacity: 1 !important;
  box-shadow: 0 0 30px rgba(84,202,78,.14) !important;
}

/* 3) Liens d'action des offres : bleu remplacé par vert logo. */
.offers__grid--detailed .offer-card a,
.offers__grid--detailed .offer-card a:visited,
.offers__grid--detailed .offer-card a:hover,
.offers__grid--detailed .offer-card a:focus-visible {
  color: var(--pilot-green, #54CA4E) !important;
  -webkit-text-fill-color: var(--pilot-green, #54CA4E) !important;
  text-decoration: none !important;
}

.offers__grid--detailed .offer-card a:hover,
.offers__grid--detailed .offer-card a:focus-visible {
  text-shadow: 0 0 14px rgba(84,202,78,.22) !important;
}

/* 4) Alignement des prix : même niveau visuel sur les trois cartes. */
.offers__grid--detailed {
  align-items: stretch !important;
}

.offers__grid--detailed .offer-card {
  min-height: 100% !important;
}

.offers__grid--detailed .offer-check-list,
.offers__grid--detailed .offer-card ul {
  margin-bottom: 30px !important;
}

.offers__grid--detailed .offer-card__price-block {
  margin-top: auto !important;
  padding-top: 24px !important;
  min-height: 128px !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: flex-start !important;
  border-top: 1px solid rgba(83,194,255,.12) !important;
}

.offers__grid--detailed .offer-card__price {
  min-height: 74px !important;
  display: flex !important;
  align-items: flex-start !important;
}

.offers__grid--detailed .offer-card > a {
  margin-top: 18px !important;
  padding-top: 0 !important;
}

/* Sécurité : les libellés restent verts, les textes de prix blancs. */
.offers__grid--detailed .offer-card__price-label {
  color: var(--pilot-green, #54CA4E) !important;
  -webkit-text-fill-color: var(--pilot-green, #54CA4E) !important;
}

.offers__grid--detailed .offer-card__price {
  color: #F3F8FF !important;
  -webkit-text-fill-color: #F3F8FF !important;
}

@media (max-width: 980px) {
  .offers__grid--detailed .offer-card__price-block,
  .offers__grid--detailed .offer-card__price {
    min-height: auto !important;
  }
}


/* ==========================================================
   ÉTAPE 93 — FORMULAIRE ENFONCÉ + COCHES VERTES
   ========================================================== */

/* 1) Les petites coches du bloc diagnostics repassent en vert logo. */
.founder-program__list li::before {
  color: var(--pilot-green, #54CA4E) !important;
  -webkit-text-fill-color: var(--pilot-green, #54CA4E) !important;
  background: linear-gradient(180deg, #13396B 0%, #0D2D57 100%) !important;
  border: 1px solid rgba(84,202,78,.22) !important;
  box-shadow:
    0 0 0 1px rgba(84,202,78,.10) inset,
    0 0 12px rgba(84,202,78,.12),
    0 10px 20px rgba(9,36,84,.18) !important;
}

/* 2) Formulaire : conteneur bleu nuit enfoncé, avec texte blanc. */
.contact-form {
  background:
    radial-gradient(circle at 82% 10%, rgba(84,202,78,.06), transparent 24%),
    radial-gradient(circle at 12% 12%, rgba(83,194,255,.08), transparent 24%),
    linear-gradient(180deg, #081427 0%, #10264A 100%) !important;
  border: 1px solid rgba(83,194,255,.18) !important;
  box-shadow:
    inset 0 2px 0 rgba(255,255,255,.035),
    inset 0 -18px 38px rgba(0,0,0,.12),
    0 24px 60px rgba(4,16,36,.18) !important;
  border-radius: 34px !important;
  color: #F3F8FF !important;
}

/* Tous les textes portés par le fond enfoncé passent en blanc/lisible. */
.contact-form label,
.contact-form .form-privacy-note,
.contact-form p,
.contact-form small {
  color: #F3F8FF !important;
  -webkit-text-fill-color: #F3F8FF !important;
  text-shadow: none !important;
}

/* 3) Bulles/champs : on les conserve en blanc, très lisibles. */
.contact-form input,
.contact-form select,
.contact-form textarea {
  background: #FFFFFF !important;
  color: #102642 !important;
  -webkit-text-fill-color: #102642 !important;
  border: 1px solid rgba(208,225,255,.95) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.95),
    0 10px 24px rgba(0,0,0,.08) !important;
}

.contact-form input::placeholder,
.contact-form textarea::placeholder {
  color: #5E748B !important;
  -webkit-text-fill-color: #5E748B !important;
  opacity: 1 !important;
}

/* 4) Menu déroulant : flèche plus grande et plus visible. */
.contact-form select {
  appearance: none !important;
  -webkit-appearance: none !important;
  padding-right: 4.2rem !important;
  background-image:
    linear-gradient(45deg, transparent 50%, #0B49D8 50%),
    linear-gradient(135deg, #0B49D8 50%, transparent 50%),
    radial-gradient(circle at center, rgba(84,202,78,.12) 0%, rgba(84,202,78,.12) 48%, transparent 49%) !important;
  background-position:
    calc(100% - 2.05rem) 50%,
    calc(100% - 1.58rem) 50%,
    calc(100% - 1.78rem) 50% !important;
  background-size:
    .48rem .48rem,
    .48rem .48rem,
    2.2rem 2.2rem !important;
  background-repeat: no-repeat !important;
  cursor: pointer !important;
}

.contact-form select:required:invalid {
  color: #5E748B !important;
  -webkit-text-fill-color: #5E748B !important;
}

.contact-form select option {
  color: #102642 !important;
  background: #FFFFFF !important;
}

/* Accent focus premium : lisible, mais pas agressif. */
.contact-form input:focus,
.contact-form select:focus,
.contact-form textarea:focus {
  outline: none !important;
  border-color: rgba(84,202,78,.52) !important;
  box-shadow:
    0 0 0 3px rgba(84,202,78,.14),
    0 12px 28px rgba(0,0,0,.10) !important;
}

/* Bouton dans le formulaire : contraste blanc verrouillé. */
.contact-form button,
.contact-form button:visited,
.contact-form button:hover,
.contact-form button:focus-visible {
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
}

/* La note RGPD reste lisible mais moins dominante. */
.contact-form .form-privacy-note {
  color: rgba(243,248,255,.76) !important;
  -webkit-text-fill-color: rgba(243,248,255,.76) !important;
  line-height: 1.55 !important;
}


/* ==========================================================
   ÉTAPE 95 — CONNEXION CAL.COM / PRÉ-DIAGNOSTIC GRATUIT
   Objectif : proposer le rendez-vous gratuit sans affaiblir le formulaire.
   ========================================================== */

.booking-cta {
  margin-top: 1.35rem;
  padding: clamp(1.25rem, 2vw, 1.65rem);
  border-radius: 28px;
  background:
    radial-gradient(circle at 86% 16%, rgba(84,202,78,.10), transparent 24%),
    linear-gradient(180deg, rgba(8,20,39,.98) 0%, rgba(16,38,74,.98) 100%);
  border: 1px solid rgba(83,194,255,.16);
  box-shadow:
    0 18px 42px rgba(4,16,36,.16),
    inset 0 1px 0 rgba(255,255,255,.035);
  color: #F3F8FF;
}

.booking-cta__eyebrow {
  margin: 0 0 .55rem;
  color: var(--pilot-green, #54CA4E) !important;
  -webkit-text-fill-color: var(--pilot-green, #54CA4E) !important;
  font-size: .78rem;
  letter-spacing: .14em;
  text-transform: uppercase;
  font-weight: 850;
}

.booking-cta h3 {
  margin: 0 0 .65rem;
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
  font-size: clamp(1.25rem, 2.1vw, 1.7rem);
  line-height: 1.12;
  letter-spacing: -.03em;
}

.booking-cta p:not(.booking-cta__eyebrow) {
  margin: 0;
  color: rgba(243,248,255,.82) !important;
  -webkit-text-fill-color: rgba(243,248,255,.82) !important;
  line-height: 1.58;
}

.booking-cta__button,
.booking-cta__button:visited,
.booking-cta__button:hover,
.booking-cta__button:focus-visible {
  margin-top: 1rem;
  display: inline-flex;
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
  background: linear-gradient(180deg, #1C63FF 0%, #0B49D8 100%) !important;
  border: 1px solid rgba(255,255,255,.14) !important;
  box-shadow:
    0 14px 32px rgba(28,99,255,.22),
    0 0 0 1px rgba(84,202,78,.06) inset !important;
}

.booking-cta__button:hover,
.booking-cta__button:focus-visible {
  transform: translateY(-2px);
  box-shadow:
    0 18px 38px rgba(28,99,255,.28),
    0 0 18px rgba(84,202,78,.14) !important;
}

.booking-cta__visual {
  margin-top: 1.15rem;
  border-radius: 24px;
  overflow: hidden;
  border: 1px solid rgba(131, 206, 255, .14);
  box-shadow:
    0 20px 40px rgba(3, 10, 26, .22),
    inset 0 1px 0 rgba(255,255,255,.04);
  background: linear-gradient(180deg, rgba(5,14,30,.55) 0%, rgba(9,22,45,.78) 100%);
}

.booking-cta__visual img {
  display: block;
  width: 100%;
  height: auto;
}


/* ==========================================================
   ÉTAPE 96 — ALIGNEMENT DES DEUX BLOCS CONTACT
   Le texte d’introduction passe au-dessus,
   puis les deux cartes sombres démarrent au même niveau.
   ========================================================== */
.contact__layout {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.6rem;
}

.contact__intro {
  max-width: 760px;
}

.contact__actions {
  display: grid;
  grid-template-columns: minmax(280px, .75fr) minmax(420px, 1fr);
  gap: 34px;
  align-items: start;
}

.contact__actions .booking-cta,
.contact__actions .contact-form {
  margin-top: 0 !important;
  align-self: start;
}

.contact__actions .booking-cta {
  min-height: 100%;
}

@media (max-width: 980px) {
  .contact__actions {
    grid-template-columns: 1fr;
  }
}


/* ==========================================================
   ÉTAPE 98 — FORMULAIRE ALIGNÉ + SURVOL VERT PREMIUM
   Objectif : rendre le formulaire aussi haut que le bloc appel,
   et créer un contour vert visible au survol des deux cartes.
   ========================================================== */

.contact__actions {
  align-items: stretch !important;
}

.contact__actions .booking-cta,
.contact__actions .contact-form {
  height: 100% !important;
  min-height: 100% !important;
  align-self: stretch !important;
  border: 1px solid rgba(83, 194, 255, .18) !important;
  transition:
    border-color .22s ease,
    box-shadow .22s ease,
    transform .22s ease,
    background .22s ease !important;
}

.contact__actions .contact-form {
  display: flex !important;
  flex-direction: column !important;
}

.contact__actions .contact-form textarea {
  min-height: clamp(180px, 16vw, 240px) !important;
}

.contact__actions .booking-cta:hover,
.contact__actions .booking-cta:focus-within,
.contact__actions .contact-form:hover,
.contact__actions .contact-form:focus-within {
  border-color: rgba(84, 202, 78, .95) !important;
  box-shadow:
    0 0 0 2px rgba(84, 202, 78, .34),
    0 0 34px rgba(84, 202, 78, .26),
    0 22px 54px rgba(4, 16, 36, .22),
    inset 0 1px 0 rgba(255, 255, 255, .055) !important;
  transform: translateY(-2px);
}

.contact__actions .booking-cta:hover .booking-cta__visual,
.contact__actions .booking-cta:focus-within .booking-cta__visual {
  border-color: rgba(84, 202, 78, .55) !important;
  box-shadow:
    0 18px 42px rgba(3, 10, 26, .24),
    0 0 26px rgba(84, 202, 78, .16) !important;
}

@media (max-width: 980px) {
  .contact__actions .booking-cta,
  .contact__actions .contact-form {
    height: auto !important;
    min-height: 0 !important;
  }

  .contact__actions .contact-form textarea {
    min-height: 160px !important;
  }
}


/* ==========================================================
   ÉTAPE 99 — DIAGNOSTICS : RETRAIT DU FOND BLEU DES COCHES
   On conserve seulement le cercle vert + la coche verte.
   ========================================================== */
.founder-program__list li::before {
  color: var(--pilot-green, #54CA4E) !important;
  -webkit-text-fill-color: var(--pilot-green, #54CA4E) !important;
  background: transparent !important;
  background-image: none !important;
  border: 1.5px solid rgba(84,202,78,.78) !important;
  box-shadow:
    0 0 0 1px rgba(84,202,78,.10) inset,
    0 0 14px rgba(84,202,78,.16) !important;
}

/* ==========================================================
   ÉTAPE 100 — VISUEL CONTACT CORRIGÉ + HOVER VERT HARMONISÉ SUR LES 3 OFFRES
   - remplace le visuel du premier échange par la version corrigée
   - harmonise le contour lumineux vert des trois cartes d'offres
   ========================================================== */
.offers__grid--detailed .offer-card,
.offers__grid--detailed .offer-card--main {
  border: 1px solid rgba(83, 194, 255, .18) !important;
  transition:
    border-color .22s ease,
    box-shadow .22s ease,
    transform .22s ease,
    background .22s ease !important;
}

.offers__grid--detailed .offer-card:hover,
.offers__grid--detailed .offer-card:focus-within,
.offers__grid--detailed .offer-card--main:hover,
.offers__grid--detailed .offer-card--main:focus-within {
  border-color: rgba(84, 202, 78, .95) !important;
  box-shadow:
    0 0 0 2px rgba(84, 202, 78, .34),
    0 0 34px rgba(84, 202, 78, .26),
    0 22px 54px rgba(4, 16, 36, .22),
    inset 0 1px 0 rgba(255, 255, 255, .055) !important;
  transform: translateY(-2px) !important;
}

.offers__grid--detailed .offer-card::before,
.offers__grid--detailed .offer-card::after,
.offers__grid--detailed .offer-card--main::before,
.offers__grid--detailed .offer-card--main::after {
  opacity: 0 !important;
  box-shadow: none !important;
}


/* ==========================================================
   ÉTAPE 101 — OPTIONS COMPLÉMENTAIRES : PAGE WEB VITRINE
   Objectif : clarifier que la page web est une option facturée séparément,
   sans brouiller le positionnement stratégique PILOTYAM.
   ========================================================== */

.launch-offer__option-note,
.offer-card__option-note {
  margin: .9rem 0 0 !important;
  padding: .85rem .95rem !important;
  border-radius: 18px !important;
  background:
    radial-gradient(circle at 12% 12%, rgba(84,202,78,.10), transparent 30%),
    rgba(84,202,78,.055) !important;
  border: 1px solid rgba(84,202,78,.18) !important;
  color: rgba(243,248,255,.84) !important;
  -webkit-text-fill-color: rgba(243,248,255,.84) !important;
  font-size: .94rem !important;
  line-height: 1.5 !important;
}

.launch-offer__option-note {
  color: rgba(12,35,64,.88) !important;
  -webkit-text-fill-color: rgba(12,35,64,.88) !important;
  background:
    radial-gradient(circle at 12% 12%, rgba(84,202,78,.11), transparent 30%),
    rgba(84,202,78,.065) !important;
}

.web-options {
  margin-top: clamp(2rem, 4vw, 3.2rem);
  padding: clamp(1.25rem, 2.6vw, 2rem);
  border-radius: 34px;
  background:
    radial-gradient(circle at 12% 10%, rgba(83,194,255,.10), transparent 30%),
    radial-gradient(circle at 90% 4%, rgba(84,202,78,.10), transparent 28%),
    linear-gradient(180deg, rgba(8,20,39,.98) 0%, rgba(13,31,59,.98) 100%);
  border: 1px solid rgba(83,194,255,.16);
  box-shadow:
    0 26px 66px rgba(3,12,26,.22),
    inset 0 1px 0 rgba(255,255,255,.04);
  color: #F3F8FF;
}

.web-options__header {
  max-width: 860px;
  margin-bottom: clamp(1.2rem, 2.4vw, 1.8rem);
}

.web-options__header h3 {
  margin: .35rem 0 .8rem;
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
  font-size: clamp(1.55rem, 3vw, 2.35rem);
  line-height: 1.05;
  letter-spacing: -.045em;
}

.web-options__header p {
  color: rgba(243,248,255,.80) !important;
  -webkit-text-fill-color: rgba(243,248,255,.80) !important;
  line-height: 1.62;
}

.web-options__precision {
  margin-top: .85rem !important;
  padding: .95rem 1rem;
  border-radius: 20px;
  background: rgba(255,255,255,.045);
  border: 1px solid rgba(255,255,255,.08);
}

.web-options__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
  align-items: stretch;
}

.web-option-card {
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 100%;
  padding: clamp(1.1rem, 2vw, 1.45rem);
  border-radius: 28px;
  background:
    radial-gradient(circle at 88% 8%, rgba(84,202,78,.08), transparent 28%),
    linear-gradient(180deg, rgba(16,38,74,.92) 0%, rgba(8,20,39,.96) 100%);
  border: 1px solid rgba(83,194,255,.16);
  box-shadow:
    0 18px 42px rgba(3,12,26,.20),
    inset 0 1px 0 rgba(255,255,255,.035);
  transition:
    border-color .22s ease,
    box-shadow .22s ease,
    transform .22s ease;
}

.web-option-card:hover,
.web-option-card:focus-within {
  border-color: rgba(84,202,78,.95);
  box-shadow:
    0 0 0 2px rgba(84,202,78,.30),
    0 0 34px rgba(84,202,78,.22),
    0 22px 54px rgba(4,16,36,.25),
    inset 0 1px 0 rgba(255,255,255,.055);
  transform: translateY(-2px);
}

.web-option-card--featured {
  background:
    radial-gradient(circle at 86% 10%, rgba(84,202,78,.14), transparent 30%),
    linear-gradient(180deg, rgba(12,48,84,.96) 0%, rgba(8,20,39,.98) 100%);
  border-color: rgba(84,202,78,.28);
}

.web-option-card--rodyam {
  background:
    radial-gradient(circle at 88% 8%, rgba(162,93,255,.13), transparent 32%),
    linear-gradient(180deg, rgba(13,22,46,.98) 0%, rgba(8,10,23,.98) 100%);
}

.web-option-card__label {
  width: fit-content;
  margin: 0 0 .8rem;
  padding: .42rem .72rem;
  border-radius: 999px;
  background: rgba(84,202,78,.10);
  border: 1px solid rgba(84,202,78,.22);
  color: var(--pilot-green, #54CA4E) !important;
  -webkit-text-fill-color: var(--pilot-green, #54CA4E) !important;
  font-size: .76rem;
  font-weight: 850;
  letter-spacing: .11em;
  text-transform: uppercase;
}

.web-option-card h4 {
  margin: 0 0 .7rem;
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
  font-size: clamp(1.08rem, 2vw, 1.35rem);
  line-height: 1.16;
  letter-spacing: -.025em;
}

.web-option-card__price {
  margin: 0 0 .9rem !important;
  color: var(--pilot-green, #54CA4E) !important;
  -webkit-text-fill-color: var(--pilot-green, #54CA4E) !important;
  font-weight: 850;
  font-size: 1.02rem;
}

.web-option-card p:not(.web-option-card__price) {
  color: rgba(243,248,255,.78) !important;
  -webkit-text-fill-color: rgba(243,248,255,.78) !important;
  line-height: 1.55;
}

.web-option-card ul {
  list-style: none;
  padding: 0;
  margin: 1rem 0 0;
  display: grid;
  gap: .55rem;
}

.web-option-card li {
  position: relative;
  padding-left: 1.35rem;
  color: rgba(243,248,255,.76) !important;
  -webkit-text-fill-color: rgba(243,248,255,.76) !important;
  font-size: .92rem;
  line-height: 1.42;
}

.web-option-card li::before {
  content: "✓";
  position: absolute;
  left: 0;
  top: .02rem;
  color: var(--pilot-green, #54CA4E);
  -webkit-text-fill-color: var(--pilot-green, #54CA4E);
  font-weight: 900;
}

.web-option-card__link {
  margin-top: auto;
  padding-top: 1rem;
  color: var(--pilot-green, #54CA4E) !important;
  -webkit-text-fill-color: var(--pilot-green, #54CA4E) !important;
  font-weight: 850;
  text-decoration: none;
}

.web-option-card__link:hover,
.web-option-card__link:focus-visible {
  text-shadow: 0 0 16px rgba(84,202,78,.28);
}

@media (max-width: 1080px) {
  .web-options__grid {
    grid-template-columns: 1fr;
  }
}


/* ==========================================================
   ÉTAPE 102 — FAISCEAU FUCHSIA OFFICIEL RODYAM
   Application sur :
   1) la carte RODYAM dans les options visibilité web
   2) la bulle RODYAM dans l'écosystème
   ========================================================== */
:root {
  --rodyam-fuchsia: #C95CFF;
  --rodyam-fuchsia-soft: rgba(201, 92, 255, .26);
  --rodyam-fuchsia-glow: rgba(201, 92, 255, .34);
}

.web-option-card--rodyam {
  border-color: rgba(201, 92, 255, .22) !important;
  background:
    radial-gradient(circle at 88% 8%, rgba(201, 92, 255, .14), transparent 32%),
    linear-gradient(180deg, rgba(18, 18, 38, .98) 0%, rgba(8, 10, 23, .98) 100%) !important;
}

.web-option-card--rodyam:hover,
.web-option-card--rodyam:focus-within {
  border-color: rgba(201, 92, 255, .95) !important;
  box-shadow:
    0 0 0 2px rgba(201, 92, 255, .30),
    0 0 36px rgba(201, 92, 255, .24),
    0 24px 58px rgba(6, 10, 24, .28),
    inset 0 1px 0 rgba(255,255,255,.055) !important;
  transform: translateY(-2px);
}

.web-option-card--rodyam .web-option-card__label,
.web-option-card--rodyam .web-option-card__price,
.web-option-card--rodyam .web-option-card__link {
  color: var(--rodyam-fuchsia) !important;
  -webkit-text-fill-color: var(--rodyam-fuchsia) !important;
}

.web-option-card--rodyam .web-option-card__label {
  background: rgba(201, 92, 255, .10) !important;
  border-color: rgba(201, 92, 255, .22) !important;
}

.ecosystem-card--rodyam {
  border-color: rgba(201, 92, 255, .18) !important;
  background:
    radial-gradient(circle at 86% 10%, rgba(201, 92, 255, .12), transparent 32%),
    linear-gradient(180deg, rgba(20, 16, 36, .98) 0%, rgba(8, 10, 23, .98) 100%) !important;
  transition:
    border-color .22s ease,
    box-shadow .22s ease,
    transform .22s ease,
    background .22s ease !important;
}

.ecosystem-card--rodyam:hover,
.ecosystem-card--rodyam:focus-within {
  border-color: rgba(201, 92, 255, .95) !important;
  box-shadow:
    0 0 0 2px rgba(201, 92, 255, .28),
    0 0 34px rgba(201, 92, 255, .22),
    0 22px 54px rgba(4,16,36,.24),
    inset 0 1px 0 rgba(255,255,255,.05) !important;
  transform: translateY(-2px);
}

.ecosystem-card--rodyam > span,
.ecosystem-card--rodyam .ecosystem-card__link {
  color: var(--rodyam-fuchsia) !important;
  -webkit-text-fill-color: var(--rodyam-fuchsia) !important;
}

.ecosystem-card--rodyam .ecosystem-card__logo {
  border-color: rgba(201, 92, 255, .18) !important;
  box-shadow:
    0 18px 38px rgba(10, 8, 24, .18),
    0 0 0 1px rgba(201, 92, 255, .08) inset !important;
}


/* ==========================================================
   ÉTAPE 103 — OFFRES SYNTHÉTIQUES + RODYAM FUCHSIA
   Objectif : rendre les offres immédiatement lisibles,
   et harmoniser la carte RODYAM avec sa charte fuchsia/violette.
   ========================================================== */

.offers__grid--detailed .offer-card {
  padding: clamp(1.25rem, 2.2vw, 1.65rem) !important;
}

.offers__grid--detailed .offer-card__intro {
  margin-bottom: .8rem !important;
}

.offers__grid--detailed .offer-check-list {
  gap: .58rem !important;
  margin-top: .85rem !important;
  margin-bottom: 1.05rem !important;
}

.offers__grid--detailed .offer-check-list li {
  padding-top: .58rem !important;
  padding-bottom: .58rem !important;
  line-height: 1.34 !important;
}

.offers__grid--detailed .offer-card__price-block {
  min-height: auto !important;
  padding-top: 1rem !important;
}

.offers__grid--detailed .offer-card__price {
  min-height: auto !important;
}

.web-option-card--rodyam,
.ecosystem-card--rodyam {
  --rodyam-fuchsia: #C95CFF;
}

.web-option-card--rodyam .web-option-card__link,
.web-option-card--rodyam .web-option-card__link:visited,
.web-option-card--rodyam .web-option-card__link:hover,
.web-option-card--rodyam .web-option-card__link:focus-visible,
.ecosystem-card--rodyam .ecosystem-card__link,
.ecosystem-card--rodyam .ecosystem-card__link:visited,
.ecosystem-card--rodyam .ecosystem-card__link:hover,
.ecosystem-card--rodyam .ecosystem-card__link:focus-visible {
  color: var(--rodyam-fuchsia, #C95CFF) !important;
  -webkit-text-fill-color: var(--rodyam-fuchsia, #C95CFF) !important;
  text-decoration-color: rgba(201,92,255,.45) !important;
}

.web-option-card--rodyam .web-option-card__link:hover,
.web-option-card--rodyam .web-option-card__link:focus-visible,
.ecosystem-card--rodyam .ecosystem-card__link:hover,
.ecosystem-card--rodyam .ecosystem-card__link:focus-visible {
  text-shadow: 0 0 18px rgba(201,92,255,.32) !important;
}


/* ==========================================================
   ÉTAPE 105 — LISIBILITÉ DU BOUTON RODYAM
   Le fond reste violet/fuchsia RODYAM, mais le texte passe en blanc.
   ========================================================== */

.ecosystem-card--rodyam .ecosystem-card__link,
.ecosystem-card--rodyam .ecosystem-card__link:visited,
.ecosystem-card--rodyam .ecosystem-card__link:hover,
.ecosystem-card--rodyam .ecosystem-card__link:focus-visible {
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
  text-decoration-color: rgba(255,255,255,.62) !important;
}

.ecosystem-card--rodyam .ecosystem-card__link:hover,
.ecosystem-card--rodyam .ecosystem-card__link:focus-visible {
  text-shadow:
    0 0 14px rgba(255,255,255,.28),
    0 0 20px rgba(201,92,255,.30) !important;
}


/* ==========================================================
   ÉTAPE 106 — SUPPRESSION DES DIAGNOSTICS OFFERTS
   Le bloc "5 diagnostics pilotes offerts" est retiré.
   La FAQ clarifie l'appel stratégique gratuit vs Diagnostic Pilote.
   ========================================================== */


/* ==========================================================
   ÉTAPE 107 — PROBLEM FLOW PREMIUM VERT UNIQUEMENT
   Suppression des balayages bleus / blancs sur les 4 cartes
   au profit d'une animation plus sobre, plus premium et 100% verte.
   ========================================================== */
.problem--leviers .problem-flow__item {
  background: linear-gradient(180deg, rgba(10,22,40,.92) 0%, rgba(8,18,34,.97) 100%) !important;
  border: 1px solid rgba(84,202,78,.16) !important;
  box-shadow: 0 22px 54px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.03) !important;
}
.problem--leviers .problem-flow__item::before {
  inset: auto 18px 0 !important;
  height: 3px !important;
  border-radius: 999px 999px 0 0 !important;
  background: linear-gradient(90deg, rgba(84,202,78,.95) 0%, rgba(136,232,123,.98) 48%, rgba(84,202,78,.55) 100%) !important;
  box-shadow: 0 0 14px rgba(84,202,78,.35) !important;
}
.problem--leviers .problem-flow__item::after {
  background: linear-gradient(115deg,
    transparent 0%,
    rgba(84,202,78,0) 22%,
    rgba(84,202,78,.08) 36%,
    rgba(136,232,123,.22) 50%,
    rgba(84,202,78,.10) 64%,
    rgba(84,202,78,0) 78%,
    transparent 100%) !important;
  animation: problemCardSweepGreen 7.2s cubic-bezier(.4,0,.2,1) infinite !important;
}
.problem--leviers .problem-flow__item:hover,
.problem--leviers .problem-flow__item:focus-within {
  border-color: rgba(84,202,78,.36) !important;
  box-shadow: 0 26px 64px rgba(0,0,0,.28), 0 0 0 1px rgba(84,202,78,.18), inset 0 1px 0 rgba(255,255,255,.04) !important;
}
.problem--leviers .problem-flow__item span {
  text-shadow: 0 0 18px rgba(84,202,78,.24) !important;
}
@keyframes problemCardSweepGreen {
  0%, 72%, 100% { transform: translateX(-130%); opacity: 0; }
  12%, 46% { opacity: .92; }
  56% { transform: translateX(125%); opacity: 0; }
}


/* ==========================================================
   ÉTAPE 109 — MICRO-PASSE ÉDITORIALE
   Objectif : réduire les répétitions, rendre le problème plus concret,
   raccourcir la FAQ et clarifier la complémentarité PILOTYAM / RODYAM.
   ========================================================== */


/* ==========================================================
   ÉTAPE 110 — SECTION CONTACT BLEU NUIT + IMAGE RDV INTÉGRÉE
   Objectif : passer la zone contact sur fond bleu sombre,
   rééquilibrer les contrastes et intégrer le nouveau visuel RDV.
   ========================================================== */

.contact {
  background:
    radial-gradient(circle at 12% 12%, rgba(28, 99, 255, .14), transparent 28%),
    radial-gradient(circle at 86% 10%, rgba(84, 202, 78, .09), transparent 26%),
    linear-gradient(180deg, #071224 0%, #0B1B31 100%) !important;
}

.contact .section-kicker {
  color: var(--pilot-green, #54CA4E) !important;
  -webkit-text-fill-color: var(--pilot-green, #54CA4E) !important;
}

.contact__intro h2,
.contact h2 {
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
}

.contact__intro p,
.contact__content p {
  color: rgba(226, 238, 255, .78) !important;
  -webkit-text-fill-color: rgba(226, 238, 255, .78) !important;
}

.contact__actions .booking-cta,
.contact__actions .contact-form {
  background:
    radial-gradient(circle at 86% 12%, rgba(84, 202, 78, .10), transparent 30%),
    linear-gradient(180deg, rgba(8, 20, 39, .98) 0%, rgba(13, 31, 59, .98) 100%) !important;
  border: 1px solid rgba(83, 194, 255, .18) !important;
  box-shadow:
    0 26px 66px rgba(2, 10, 24, .34),
    inset 0 1px 0 rgba(255, 255, 255, .045) !important;
}

.contact__actions .contact-form label {
  color: #F3F8FF !important;
  -webkit-text-fill-color: #F3F8FF !important;
}

.contact__actions .contact-form input,
.contact__actions .contact-form select,
.contact__actions .contact-form textarea {
  background: #FFFFFF !important;
  color: #0C2038 !important;
  -webkit-text-fill-color: #0C2038 !important;
  border: 1px solid rgba(83, 194, 255, .18) !important;
  box-shadow:
    0 12px 28px rgba(3, 12, 26, .10),
    inset 0 1px 0 rgba(255, 255, 255, .86) !important;
}

.contact__actions .contact-form input::placeholder,
.contact__actions .contact-form textarea::placeholder {
  color: rgba(45, 70, 96, .72) !important;
  -webkit-text-fill-color: rgba(45, 70, 96, .72) !important;
}

.contact__actions .form-privacy-note {
  color: rgba(226, 238, 255, .72) !important;
  -webkit-text-fill-color: rgba(226, 238, 255, .72) !important;
}

.booking-cta__visual {
  background: rgba(255, 255, 255, .96) !important;
  border-color: rgba(83, 194, 255, .16) !important;
}

.booking-cta__visual img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
}

.contact__actions .booking-cta:hover,
.contact__actions .booking-cta:focus-within,
.contact__actions .contact-form:hover,
.contact__actions .contact-form:focus-within {
  border-color: rgba(84, 202, 78, .95) !important;
  box-shadow:
    0 0 0 2px rgba(84, 202, 78, .34),
    0 0 34px rgba(84, 202, 78, .26),
    0 28px 68px rgba(2, 10, 24, .36),
    inset 0 1px 0 rgba(255, 255, 255, .06) !important;
}


/* ==========================================================
   ÉTAPE 112 — LOGO NAVIGATION REMPLACÉ
   Objectif : remplacer le logo de la barre de navigation
   par la nouvelle version plus nette et qualitative.
   ========================================================== */

/* ==========================================================
   ÉTAPE 113 — LIEN RODYAM HAUT MIS AU VIOLET DE LA BULLE
   Objectif : harmoniser le lien "Découvrir RODYAM" (carte premium)
   avec le violet/fuchsia du bouton RODYAM situé plus bas.
   ========================================================== */
.web-option-card--rodyam .web-option-card__link,
.web-option-card--rodyam .web-option-card__link:visited,
.web-option-card--rodyam .web-option-card__link:hover,
.web-option-card--rodyam .web-option-card__link:focus-visible {
  color: #B768FF !important;
  -webkit-text-fill-color: #B768FF !important;
  text-decoration-color: rgba(183,104,255,.48) !important;
  text-shadow: 0 0 14px rgba(183,104,255,.16) !important;
}

.web-option-card--rodyam .web-option-card__link:hover,
.web-option-card--rodyam .web-option-card__link:focus-visible {
  color: #C785FF !important;
  -webkit-text-fill-color: #C785FF !important;
  text-shadow: 0 0 18px rgba(199,133,255,.28) !important;
}


/* ==========================================================
   ÉTAPE 114 — CARTE ÉCOSYSTÈME RODYAM : IDENTITÉ CORRIGÉE
   Le mot "RODYAM" en texte brut est retiré au profit du vrai logo
   pour garder une cohérence visuelle avec la charte RODYAM.
   ========================================================== */
.ecosystem-card__logo--wordmark-only {
  margin-bottom: 18px;
  padding-top: 2px;
}

.ecosystem-card__logo--wordmark-only img {
  width: min(100%, 460px);
}


/* ==========================================================
   ÉTAPE 115 — CTA RODYAM OPTIONS EN VIOLET RODYAM
   Choix validé : pas de logo supplémentaire dans la carte option.
   Le logo RODYAM reste dans la section écosystème pour éviter la répétition.
   ========================================================== */
.web-option-card--rodyam .web-option-card__link--rodyam-violet,
.web-option-card--rodyam .web-option-card__link--rodyam-violet:visited,
.web-option-card--rodyam .web-option-card__link--rodyam-violet:hover,
.web-option-card--rodyam .web-option-card__link--rodyam-violet:focus-visible {
  color: #C95CFF !important;
  -webkit-text-fill-color: #C95CFF !important;
  text-decoration-color: rgba(201, 92, 255, .55) !important;
  text-shadow: 0 0 16px rgba(201, 92, 255, .24) !important;
}

.web-option-card--rodyam .web-option-card__link--rodyam-violet:hover,
.web-option-card--rodyam .web-option-card__link--rodyam-violet:focus-visible {
  color: #D889FF !important;
  -webkit-text-fill-color: #D889FF !important;
  text-shadow:
    0 0 16px rgba(216, 137, 255, .34),
    0 0 28px rgba(201, 92, 255, .20) !important;
}

/* ==========================================================
   ÉTAPE 116 — CTA RODYAM SUPPRIMÉ DANS LA CARTE OPTION
   Le lien d’action RODYAM reste uniquement dans la section Écosystème.
   ========================================================== */

/* ==========================================================
   ÉTAPE 117 — CACHE-BUSTING + CTA RODYAM OPTION SUPPRIMÉ
   Le lien "Découvrir RODYAM" est supprimé de la carte option.
   Le lien RODYAM reste uniquement dans la section Écosystème.
   ========================================================== */

/* ==========================================================
   ÉTAPE 118 — IMAGE RENDEZ-VOUS REMPLACÉE
   Nouvelle image intégrée dans la section appel stratégique,
   sans la grande bulle "Réserver un créneau gratuit".
   ========================================================== */

/* ==========================================================
   ÉTAPE 119 — IMAGE RDV SIMPLE SANS CADRES INTÉGRÉE
   Remplacement de l'image de prise de rendez-vous par la version
   simple, sans encadrements internes, car le site applique déjà
   son propre effet de cadre.
   ========================================================== */

/* ==========================================================
   ÉTAPE 121 — PASSE SEO PRÉ-LANCEMENT
   Métadonnées, Open Graph/Twitter, sitemap, noindex pages légales
   et données structurées BreadcrumbList renforcées.
   ========================================================== */

/* ==========================================================
   ÉTAPE 122 — FORMULAIRE ORIENTÉ DEMANDE ÉCRITE
   Le bouton Cal.com sert à réserver l'appel.
   Le formulaire sert à choisir une offre, souscrire/prendre service
   ou demander une précision par écrit.
   ========================================================== */

.contact-form__intro {
  margin: 0 0 1.05rem !important;
  padding: 0 0 .95rem !important;
  border-bottom: 1px solid rgba(131, 206, 255, .14) !important;
}

.contact-form__eyebrow {
  margin: 0 0 .5rem !important;
  color: var(--pilot-green, #54CA4E) !important;
  -webkit-text-fill-color: var(--pilot-green, #54CA4E) !important;
  font-size: .76rem !important;
  letter-spacing: .14em !important;
  text-transform: uppercase !important;
  font-weight: 850 !important;
}

.contact-form__intro h3 {
  margin: 0 0 .55rem !important;
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
  font-size: clamp(1.2rem, 1.8vw, 1.55rem) !important;
  line-height: 1.15 !important;
  letter-spacing: -.025em !important;
}

.contact-form__intro p {
  margin: 0 !important;
  color: rgba(243,248,255,.80) !important;
  -webkit-text-fill-color: rgba(243,248,255,.80) !important;
  line-height: 1.58 !important;
  font-size: .96rem !important;
}

.contact-form select option {
  white-space: normal !important;
}

/* ==========================================================
   ÉTAPE 123 — CHAMP TECHNIQUE + PAGE RÉPONSE FORMULAIRE
   Champ form_build finalisé.
   Page de confirmation/erreur du formulaire alignée avec le site,
   noindex, claire et orientée demande écrite.
   ========================================================== */

.form-response-page {
  min-height: 100vh !important;
  background:
    radial-gradient(circle at 20% 10%, rgba(84,202,78,.12), transparent 34%),
    radial-gradient(circle at 80% 20%, rgba(131,206,255,.10), transparent 36%),
    #060C13 !important;
}

.form-response-section {
  min-height: 100vh !important;
  display: flex !important;
  align-items: center !important;
}

.form-response-card {
  position: relative !important;
  overflow: hidden !important;
  padding: clamp(2rem, 5vw, 3.2rem) !important;
  border-radius: 28px !important;
  border: 1px solid rgba(131,206,255,.18) !important;
  background:
    linear-gradient(135deg, rgba(9,20,31,.96), rgba(10,31,35,.92)),
    rgba(9,20,31,.92) !important;
  box-shadow:
    0 24px 80px rgba(0,0,0,.38),
    inset 0 1px 0 rgba(255,255,255,.08) !important;
}

.form-response-card::before {
  content: "" !important;
  position: absolute !important;
  inset: -35% auto auto -20% !important;
  width: 60% !important;
  height: 80% !important;
  background: radial-gradient(circle, rgba(84,202,78,.18), transparent 68%) !important;
  pointer-events: none !important;
}

.form-response-card h1 {
  position: relative !important;
  margin: 0 0 1rem !important;
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
  font-size: clamp(2rem, 4vw, 3.4rem) !important;
  line-height: 1.05 !important;
  letter-spacing: -.04em !important;
}

.form-response-card p {
  position: relative !important;
  color: rgba(243,248,255,.82) !important;
  -webkit-text-fill-color: rgba(243,248,255,.82) !important;
  font-size: 1.04rem !important;
  line-height: 1.7 !important;
  max-width: 760px !important;
}

.form-response-card--success .section-kicker {
  color: var(--pilot-green, #54CA4E) !important;
  -webkit-text-fill-color: var(--pilot-green, #54CA4E) !important;
}

.form-response-card--error .section-kicker {
  color: #ff8f7e !important;
  -webkit-text-fill-color: #ff8f7e !important;
}

.form-response-actions {
  position: relative !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: .85rem !important;
  margin-top: 1.8rem !important;
}

/* ==========================================================
   ÉTAPE 124 — SECTION MÉTHODE CODÉE HTML/CSS
   Remplace les visuels générés par une vraie section texte,
   indexable, responsive et cohérente avec PILOTYAM.
   ========================================================== */

.method-coded {
  position: relative !important;
  overflow: hidden !important;
  background:
    radial-gradient(circle at 18% 16%, rgba(84,202,78,.12), transparent 34%),
    radial-gradient(circle at 78% 20%, rgba(18, 103, 255, .10), transparent 36%),
    linear-gradient(180deg, rgba(255,255,255,0), rgba(237,247,255,.70), rgba(255,255,255,0)) !important;
}

.method-coded::before {
  content: "" !important;
  position: absolute !important;
  inset: 10% auto auto 50% !important;
  width: min(52vw, 760px) !important;
  height: min(52vw, 760px) !important;
  transform: translateX(-4%) rotate(-18deg) !important;
  border-radius: 38% 62% 58% 42% / 46% 42% 58% 54% !important;
  background: linear-gradient(135deg, rgba(84,202,78,.08), rgba(9,91,180,.08)) !important;
  filter: blur(.2px) !important;
  pointer-events: none !important;
}

.method-coded > .container {
  position: relative !important;
  z-index: 1 !important;
}

.method-coded__layout {
  display: grid !important;
  grid-template-columns: minmax(0, .95fr) minmax(420px, 1.05fr) !important;
  gap: clamp(2.8rem, 5.4vw, 6.2rem) !important;
  align-items: center !important;
}

.method-coded__content h2 {
  max-width: 760px !important;
  margin-bottom: 1.4rem !important;
  color: #071833 !important;
  -webkit-text-fill-color: #071833 !important;
  font-size: clamp(2.35rem, 5vw, 5rem) !important;
  line-height: .98 !important;
  letter-spacing: -.055em !important;
}

.method-coded__content p:not(.section-kicker) {
  max-width: 780px !important;
  color: #29435b !important;
  -webkit-text-fill-color: #29435b !important;
  font-size: clamp(1rem, 1.2vw, 1.16rem) !important;
  line-height: 1.78 !important;
}

.method-coded__benefits {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 1rem !important;
  margin-top: clamp(1.6rem, 3vw, 2.4rem) !important;
}

.method-coded__benefit {
  position: relative !important;
  padding: 1.15rem 1.15rem 1.2rem !important;
  border-radius: 22px !important;
  background: rgba(255,255,255,.78) !important;
  border: 1px solid rgba(6, 99, 255, .08) !important;
  box-shadow: 0 16px 42px rgba(7, 52, 122, .08) !important;
  overflow: hidden !important;
}

.method-coded__benefit::before {
  content: "" !important;
  position: absolute !important;
  inset: 0 auto 0 0 !important;
  width: 4px !important;
  background: linear-gradient(180deg, #54CA4E, #0a63ff) !important;
  opacity: .86 !important;
}

.method-coded__benefit span {
  display: inline-flex !important;
  margin-bottom: .6rem !important;
  color: #17a544 !important;
  -webkit-text-fill-color: #17a544 !important;
  font-weight: 920 !important;
  font-size: .72rem !important;
  letter-spacing: .12em !important;
}

.method-coded__benefit strong {
  display: block !important;
  margin-bottom: .35rem !important;
  color: #081b35 !important;
  -webkit-text-fill-color: #081b35 !important;
  font-size: 1.05rem !important;
  letter-spacing: -.015em !important;
}

.method-coded__benefit p {
  margin: 0 !important;
  color: #3e5870 !important;
  -webkit-text-fill-color: #3e5870 !important;
  font-size: .94rem !important;
  line-height: 1.55 !important;
}

.method-coded__system {
  position: relative !important;
  min-height: 700px !important;
  border-radius: 40px !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.92), rgba(248,252,255,.78)),
    rgba(255,255,255,.82) !important;
  border: 1px solid rgba(6, 99, 255, .08) !important;
  box-shadow: 0 26px 90px rgba(7,52,122,.12), inset 0 1px 0 rgba(255,255,255,.9) !important;
  overflow: hidden !important;
}

.method-coded__system::before {
  content: "" !important;
  position: absolute !important;
  inset: 14% 11% !important;
  border-radius: 999px !important;
  border: 16px solid rgba(7, 34, 65, .08) !important;
  box-shadow: inset 0 0 0 1px rgba(84,202,78,.12) !important;
}

.method-coded__system::after {
  content: "" !important;
  position: absolute !important;
  inset: 18% 15% !important;
  border-radius: 999px !important;
  border: 1px dashed rgba(7, 34, 65, .28) !important;
  animation: pilotyamOrbit 36s linear infinite !important;
}

@keyframes pilotyamOrbit {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

.method-coded__core {
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  z-index: 2 !important;
  width: clamp(200px, 19vw, 270px) !important;
  height: clamp(200px, 19vw, 270px) !important;
  transform: translate(-50%, -50%) !important;
  border-radius: 50% !important;
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: center !important;
  text-align: center !important;
  padding: 1.4rem !important;
  background:
    radial-gradient(circle at 35% 25%, rgba(84,202,78,.18), transparent 34%),
    linear-gradient(135deg, #061529, #0b2a48 62%, #062036) !important;
  color: #ffffff !important;
  box-shadow: 0 24px 55px rgba(4,24,55,.28), inset 0 1px 0 rgba(255,255,255,.12) !important;
}

.method-coded__core span {
  margin-bottom: .55rem !important;
  color: #54CA4E !important;
  -webkit-text-fill-color: #54CA4E !important;
  font-size: .88rem !important;
  font-weight: 920 !important;
  letter-spacing: .15em !important;
}

.method-coded__core strong {
  max-width: 172px !important;
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
  font-size: clamp(1.2rem, 1.55vw, 1.62rem) !important;
  line-height: 1.12 !important;
  letter-spacing: -.03em !important;
}

.method-coded__steps {
  position: absolute !important;
  inset: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

.method-coded__step {
  position: absolute !important;
  z-index: 3 !important;
  width: min(192px, 23vw) !important;
  min-height: 118px !important;
  padding: .92rem .95rem .96rem !important;
  border-radius: 24px !important;
  background: rgba(255,255,255,.90) !important;
  border: 1px solid rgba(8, 27, 53, .08) !important;
  box-shadow: 0 18px 48px rgba(7,52,122,.12) !important;
  backdrop-filter: blur(16px) !important;
}

.method-coded__step span {
  display: inline-flex !important;
  width: 30px !important;
  height: 30px !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 999px !important;
  margin-bottom: .55rem !important;
  background: linear-gradient(135deg, #54CA4E, #1ca35f) !important;
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
  font-weight: 920 !important;
  font-size: .88rem !important;
}

.method-coded__step strong {
  display: block !important;
  margin-bottom: .25rem !important;
  color: #071833 !important;
  -webkit-text-fill-color: #071833 !important;
  font-size: .95rem !important;
  line-height: 1.12 !important;
  text-transform: uppercase !important;
  letter-spacing: .01em !important;
}

.method-coded__step p {
  margin: 0 !important;
  color: #36506a !important;
  -webkit-text-fill-color: #36506a !important;
  font-size: .83rem !important;
  line-height: 1.34 !important;
}

.method-coded__step strong,
.method-coded__step p {
  max-width: 100% !important;
  word-break: normal !important;
}

.method-coded__step:hover {
  transform: translateY(-2px) !important;
}

.method-coded__step--one:hover,
.method-coded__step--four:hover {
  transform: translateX(-50%) translateY(-2px) !important;
}

.method-coded__step--one { left: 50%; top: 5%; transform: translateX(-50%); }
.method-coded__step--two { right: 4%; top: 23%; }
.method-coded__step--three { right: 6%; bottom: 17%; }
.method-coded__step--four { left: 50%; bottom: 9%; transform: translateX(-50%); }
.method-coded__step--five { left: 4%; bottom: 17%; }
.method-coded__step--six { left: 4%; top: 23%; }

.method-coded__sequence {
  position: absolute !important;
  z-index: 4 !important;
  left: 50% !important;
  bottom: 1.5rem !important;
  transform: translateX(-50%) !important;
  width: calc(100% - 4rem) !important;
  margin: 0 !important;
  text-align: center !important;
  color: #071833 !important;
  -webkit-text-fill-color: #071833 !important;
  font-weight: 760 !important;
  font-size: .98rem !important;
}

.method-coded__baseline {
  display: flex !important;
  align-items: center !important;
  gap: .75rem !important;
  margin-top: 2rem !important;
  padding: 1.15rem 1.25rem !important;
  border-radius: 22px !important;
  background: linear-gradient(135deg, rgba(7,24,51,.96), rgba(10,39,71,.94)) !important;
  border: 1px solid rgba(84,202,78,.22) !important;
  box-shadow: 0 20px 55px rgba(4,24,55,.18) !important;
}

.method-coded__baseline strong {
  color: #54CA4E !important;
  -webkit-text-fill-color: #54CA4E !important;
  white-space: nowrap !important;
}

.method-coded__baseline span {
  color: rgba(255,255,255,.88) !important;
  -webkit-text-fill-color: rgba(255,255,255,.88) !important;
  line-height: 1.55 !important;
}

@media (max-width: 1180px) {
  .method-coded__layout {
    grid-template-columns: 1fr !important;
  }
  .method-coded__content h2,
  .method-coded__content p:not(.section-kicker) {
    max-width: 920px !important;
  }
  .method-coded__system {
    min-height: 660px !important;
    max-width: 860px !important;
    margin-inline: auto !important;
    width: 100% !important;
  }
}

@media (max-width: 760px) {
  .method-coded {
    padding-top: 4rem !important;
    padding-bottom: 4rem !important;
  }
  .method-coded__content h2 {
    font-size: clamp(2.2rem, 12vw, 3.2rem) !important;
  }
  .method-coded__benefits {
    grid-template-columns: 1fr !important;
  }
  .method-coded__system {
    min-height: auto !important;
    padding: 1rem !important;
  }
  .method-coded__system::before,
  .method-coded__system::after,
  .method-coded__core {
    display: none !important;
  }
  .method-coded__steps {
    position: relative !important;
    display: grid !important;
    gap: .85rem !important;
  }
  .method-coded__step,
  .method-coded__step--one,
  .method-coded__step--two,
  .method-coded__step--three,
  .method-coded__step--four,
  .method-coded__step--five,
  .method-coded__step--six {
    position: relative !important;
    inset: auto !important;
    width: auto !important;
    min-height: auto !important;
    transform: none !important;
    display: grid !important;
    grid-template-columns: auto 1fr !important;
    column-gap: .85rem !important;
    align-items: start !important;
  }
  .method-coded__step span {
    grid-row: span 2 !important;
    margin-bottom: 0 !important;
  }
  .method-coded__sequence {
    position: relative !important;
    left: auto !important;
    bottom: auto !important;
    transform: none !important;
    width: auto !important;
    margin: 1rem 0 0 !important;
  }
  .method-coded__baseline {
    flex-direction: column !important;
    align-items: flex-start !important;
  }
  .method-coded__baseline strong {
    white-space: normal !important;
  }
}

/* ==========================================================
   ÉTAPE 126 — MÉTHODE : FOND BLANC + IMAGE INTÉGRÉE
   Suppression du voile bleu et du rond vert de fond.
   La partie droite devient une image dédiée, plus propre et lisible.
   ========================================================== */

.method-coded {
  background: #FFFFFF !important;
  background-image: none !important;
}

.method-coded::before,
.method-coded::after {
  display: none !important;
  content: none !important;
  background: none !important;
}

.method-coded__layout {
  grid-template-columns: minmax(0, .82fr) minmax(520px, 1.18fr) !important;
  gap: clamp(2.2rem, 4.8vw, 5rem) !important;
  align-items: center !important;
}

.method-coded__content {
  position: relative !important;
  z-index: 2 !important;
  background: transparent !important;
}

.method-coded__content h2 {
  color: #071833 !important;
  -webkit-text-fill-color: #071833 !important;
  text-shadow: none !important;
}

.method-coded__content p:not(.section-kicker) {
  color: #243F58 !important;
  -webkit-text-fill-color: #243F58 !important;
  text-shadow: none !important;
}

.method-coded__benefit {
  background: #FFFFFF !important;
  border-color: rgba(7, 34, 65, .08) !important;
  box-shadow: 0 14px 38px rgba(7,52,122,.08) !important;
}

.method-coded__visual {
  position: relative !important;
  z-index: 2 !important;
  margin: 0 !important;
  width: 100% !important;
  border-radius: 34px !important;
  overflow: hidden !important;
  background: #FFFFFF !important;
  border: 1px solid rgba(7, 34, 65, .07) !important;
  box-shadow: 0 24px 70px rgba(7, 52, 122, .10) !important;
}

.method-coded__visual img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 1086 / 1448 !important;
  object-fit: cover !important;
  object-position: center center !important;
}

.method-coded__baseline {
  margin-top: clamp(1.4rem, 2.5vw, 2rem) !important;
}

@media (max-width: 1180px) {
  .method-coded__layout {
    grid-template-columns: 1fr !important;
  }

  .method-coded__visual {
    max-width: 760px !important;
    margin-inline: auto !important;
  }
}

@media (max-width: 760px) {
  .method-coded {
    background: #FFFFFF !important;
  }

  .method-coded__visual {
    border-radius: 24px !important;
  }

  .method-coded__visual img {
    aspect-ratio: auto !important;
  }
}


/* ==========================================================
   ÉTAPE 127 — OFFRES : SÉPARATION LANCEMENT / ACTIVITÉ EXISTANTE
   Ajout startup sans transformer PILOTYAM en cabinet startup-only.
   ========================================================== */
.offers--staged {
  background:
    radial-gradient(circle at 12% 8%, rgba(10, 99, 255, .055), transparent 24%),
    linear-gradient(180deg, #F7FBFF 0%, #FFFFFF 48%, #F4FAFF 100%) !important;
}

.offers--staged .section-head {
  margin-bottom: clamp(1.8rem, 4vw, 3rem) !important;
}

.offer-stage {
  position: relative;
  border-radius: 38px;
  margin-top: clamp(1.6rem, 4vw, 3rem);
  padding: clamp(1.15rem, 2.8vw, 2rem);
  border: 1px solid rgba(8, 45, 92, .08);
  background: rgba(255, 255, 255, .86);
  box-shadow: 0 24px 76px rgba(7, 37, 74, .075);
  overflow: hidden;
}

.offer-stage::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  background: linear-gradient(90deg, rgba(84,202,78,.16), transparent 26%, transparent 74%, rgba(10,99,255,.10));
  opacity: .75;
}

.offer-stage > * {
  position: relative;
  z-index: 1;
}

.offer-stage__header {
  display: grid;
  gap: .85rem;
  max-width: 980px;
  margin: 0 0 clamp(1.15rem, 3vw, 1.8rem);
}

.offer-stage__header--split {
  grid-template-columns: minmax(0, .72fr) minmax(320px, 1fr);
  align-items: end;
  max-width: none;
  gap: clamp(1rem, 3vw, 2rem);
}

.offer-stage__eyebrow {
  margin: 0;
  color: #0FAE4F;
  font-weight: 950;
  letter-spacing: .12em;
  text-transform: uppercase;
  font-size: .78rem;
}

.offer-stage__header h3 {
  margin: 0;
  color: #071833;
  font-size: clamp(1.75rem, 3.2vw, 2.75rem);
  line-height: 1.04;
  letter-spacing: -.045em;
}

.offer-stage__header p {
  margin: 0;
  color: #314D66;
  font-size: clamp(1rem, 1.35vw, 1.12rem);
  line-height: 1.65;
}

.offer-stage--launch {
  background: linear-gradient(180deg, #FFFFFF 0%, #F6FBFF 100%) !important;
  border-color: rgba(16, 185, 88, .18);
}

.offer-stage--existing {
  background: #FFFFFF !important;
  border-color: rgba(10,99,255,.12);
}

.launch-offer--isolated {
  margin: 0 !important;
  box-shadow: 0 24px 62px rgba(10,99,255,.18) !important;
}

.offers__grid--existing {
  margin: 0 !important;
  padding: clamp(1rem, 2vw, 1.25rem);
  border-radius: 30px;
  background: linear-gradient(180deg, #FFFFFF 0%, #F7FBFF 100%);
  border: 1px solid rgba(8, 45, 92, .07);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.95);
}

.offers__grid--existing .offer-card {
  min-height: 100%;
}

@media (max-width: 980px) {
  .offer-stage__header--split {
    grid-template-columns: 1fr;
    align-items: start;
  }
  .offer-stage {
    border-radius: 30px;
  }
}

@media (max-width: 720px) {
  .offer-stage {
    padding: 1rem;
  }
  .offers__grid--existing {
    padding: .75rem;
  }
}


/* ÉTAPE 128 — Offres : fondation, lancement d’activité et startup */


/* ÉTAPE 129 — Section offres : thème entrepreneurs & startups */
.offer-stage--launch {
  background: #ffffff !important;
  border-color: rgba(10, 99, 255, .10) !important;
  box-shadow: 0 20px 50px rgba(8, 45, 92, .06), inset 0 1px 0 rgba(255,255,255,.95);
}
.offer-stage--launch .offer-stage__header {
  gap: 14px;
}
.offer-stage--launch .offer-stage__header h3 {
  color: #082a59;
}
.launch-offer--isolated {
  box-shadow: 0 24px 60px rgba(8, 45, 92, .10) !important;
}
.launch-offer {
  background: linear-gradient(135deg, #ffffff 0%, #f5fbff 58%, #f1fbf3 100%) !important;
  color: #082a59 !important;
  border: 1px solid rgba(10, 99, 255, .10);
  box-shadow: 0 28px 60px rgba(8, 45, 92, .10);
}
.launch-offer::before {
  background:
    radial-gradient(circle at 8% 10%, rgba(10,99,255,.08), transparent 28%),
    radial-gradient(circle at 92% 88%, rgba(84,202,78,.10), transparent 26%),
    linear-gradient(180deg, rgba(255,255,255,.45), rgba(255,255,255,0));
}
.launch-offer__label {
  color: #2ea74a !important;
}
.launch-offer h3 {
  color: #082a59 !important;
  line-height: 1.02;
}
.launch-offer__subtitle,
.launch-offer__positioning {
  color: rgba(8,42,89,.82) !important;
}
.launch-offer__list li {
  background: rgba(255,255,255,.86) !important;
  color: #103765 !important;
  border: 1px solid rgba(10, 99, 255, .10);
  box-shadow: 0 12px 24px rgba(8,45,92,.05);
}
.launch-offer__list li::before {
  background: #54CA4E !important;
  color: #ffffff !important;
}
.launch-offer__figure {
  border: 1px solid rgba(10,99,255,.12) !important;
  background: #ffffff !important;
  box-shadow: 0 18px 40px rgba(8,45,92,.10) !important;
}
.launch-offer__figure::after {
  background: linear-gradient(115deg, transparent 0%, rgba(255,255,255,.25) 44%, rgba(84,202,78,.12) 50%, transparent 58%) !important;
}
.launch-offer--with-visual .launch-offer__aside {
  background: linear-gradient(180deg, #0a2d5c 0%, #0b63ff 100%) !important;
  border: 1px solid rgba(255,255,255,.14) !important;
  box-shadow: 0 18px 40px rgba(8,45,92,.18);
}
.launch-offer__tag {
  background: rgba(84,202,78,.14) !important;
  color: #d4ffd0 !important;
}
.launch-offer__price,
.launch-offer--with-visual .launch-offer__aside .launch-offer__note {
  color: #ffffff !important;
}
.launch-offer__button {
  background: #54CA4E !important;
  border-color: #54CA4E !important;
  color: #082a59 !important;
  box-shadow: 0 16px 30px rgba(84,202,78,.22) !important;
}
.launch-offer__button:hover,
.launch-offer__button:focus-visible {
  background: #74da6d !important;
  border-color: #74da6d !important;
  color: #082a59 !important;
}
@media (max-width: 820px) {
  .launch-offer h3 {
    font-size: clamp(1.85rem, 7vw, 2.45rem) !important;
  }
}


/* ÉTAPE 130 — Images intégrées aux bons endroits : entrepreneurs & startups */
.launch-offer__figure {
  background: #ffffff !important;
  border: 1px solid rgba(10, 99, 255, .12) !important;
  box-shadow: 0 18px 44px rgba(8,45,92,.10) !important;
  min-height: 0 !important;
  aspect-ratio: 1491 / 1055;
}
.launch-offer__figure img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
  object-fit: cover !important;
  object-position: center center !important;
}
.offer-stage__visual {
  margin: clamp(1rem, 2vw, 1.4rem) 0 clamp(1.1rem, 2.4vw, 1.6rem);
  border-radius: 28px;
  overflow: hidden;
  background: #ffffff;
  border: 1px solid rgba(10, 99, 255, .10);
  box-shadow: 0 20px 46px rgba(8,45,92,.08);
}
.offer-stage__visual img {
  display: block;
  width: 100%;
  aspect-ratio: 1491 / 1055;
  height: auto;
  object-fit: cover;
  object-position: center center;
}
.offer-stage--existing .offer-stage__visual {
  background: linear-gradient(180deg, #ffffff 0%, #f7fbff 100%);
}
.offer-stage--existing .offers__grid--existing {
  margin-top: 0 !important;
}
@media (max-width: 820px) {
  .launch-offer__figure,
  .offer-stage__visual img {
    aspect-ratio: 4 / 3;
  }
  .offer-stage__visual {
    border-radius: 22px;
  }
}


/* ÉTAPE 131 — Offres : lancement blanc compact */
.offer-stage--launch {
  background: #FFFFFF !important;
  background-image: none !important;
  border-color: rgba(8, 45, 92, .08) !important;
  box-shadow: 0 18px 46px rgba(8, 45, 92, .06) !important;
}

.launch-offer--compact-white {
  display: grid !important;
  grid-template-columns: minmax(0, 1.05fr) minmax(330px, .72fr) !important;
  gap: clamp(1.35rem, 2.4vw, 2rem) !important;
  align-items: stretch !important;
  background: #FFFFFF !important;
  background-image: none !important;
  color: #082a59 !important;
  border: 1px solid rgba(8, 45, 92, .08) !important;
  box-shadow: 0 24px 58px rgba(8, 45, 92, .08) !important;
  padding: clamp(1.35rem, 2.6vw, 2rem) !important;
}

.launch-offer--compact-white::before {
  display: none !important;
  content: none !important;
}

.launch-offer--compact-white .launch-offer__content {
  align-self: center !important;
}

.launch-offer--compact-white .launch-offer__label {
  color: #54CA4E !important;
  margin-bottom: .8rem !important;
}

.launch-offer--compact-white h3 {
  color: #082a59 !important;
  font-size: clamp(2rem, 3.5vw, 3rem) !important;
  line-height: 1.02 !important;
}

.launch-offer--compact-white .launch-offer__subtitle,
.launch-offer--compact-white .launch-offer__positioning {
  color: rgba(8, 42, 89, .78) !important;
  max-width: 66ch !important;
}

.launch-offer--compact-white .launch-offer__list {
  grid-template-columns: 1fr !important;
  gap: .7rem !important;
  margin-top: 1.25rem !important;
}

.launch-offer--compact-white .launch-offer__list li {
  color: #103765 !important;
  background: #F7FBFF !important;
  border: 1px solid rgba(8, 45, 92, .07) !important;
  box-shadow: none !important;
  padding-top: .85rem !important;
  padding-bottom: .85rem !important;
}

.launch-offer--compact-white .launch-offer__list li::before {
  background: #54CA4E !important;
  color: #FFFFFF !important;
}

.launch-offer--compact-white .launch-offer__media {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 1rem !important;
  align-content: start !important;
}

.launch-offer--compact-white .launch-offer__figure {
  min-height: 0 !important;
  height: auto !important;
  aspect-ratio: 16 / 10 !important;
  border-radius: 24px !important;
  border: 1px solid rgba(8,45,92,.08) !important;
  background: #FFFFFF !important;
  box-shadow: 0 14px 36px rgba(8,45,92,.08) !important;
  animation: none !important;
}

.launch-offer--compact-white .launch-offer__figure img {
  display: block !important;
  min-height: 0 !important;
  height: 100% !important;
  width: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
}

.launch-offer--compact-white .launch-offer__figure::after {
  display: none !important;
  content: none !important;
}

.launch-offer--compact-white .launch-offer__aside {
  background: #F7FBFF !important;
  border: 1px solid rgba(8, 45, 92, .08) !important;
  border-radius: 24px !important;
  padding: clamp(1rem, 2vw, 1.25rem) !important;
  box-shadow: none !important;
}

.launch-offer--compact-white .launch-offer__tag {
  background: rgba(84, 202, 78, .12) !important;
  color: #0E7A36 !important;
}

.launch-offer--compact-white .launch-offer__price {
  color: #082a59 !important;
  font-size: clamp(1.55rem, 2.5vw, 2.15rem) !important;
}

.launch-offer--compact-white .launch-offer__note {
  color: rgba(8, 42, 89, .72) !important;
}

.launch-offer--compact-white .launch-offer__button {
  background: #54CA4E !important;
  border-color: #54CA4E !important;
  color: #082a59 !important;
  box-shadow: 0 12px 26px rgba(84,202,78,.22) !important;
}

.launch-offer--compact-white .launch-offer__button:hover,
.launch-offer--compact-white .launch-offer__button:focus-visible {
  background: #72DC6B !important;
  border-color: #72DC6B !important;
  color: #082a59 !important;
}

.offer-stage--existing {
  background: #FFFFFF !important;
  background-image: none !important;
}

.offers__grid--existing {
  background: #FFFFFF !important;
}

.existing-offers__visual,
.existing-offers-media,
.offers-existing-visual {
  display: none !important;
}

@media (max-width: 1080px) {
  .launch-offer--compact-white {
    grid-template-columns: 1fr !important;
  }

  .launch-offer--compact-white .launch-offer__media {
    grid-template-columns: minmax(0, .95fr) minmax(260px, .7fr) !important;
    align-items: stretch !important;
  }
}

@media (max-width: 760px) {
  .launch-offer--compact-white {
    padding: 1rem !important;
    border-radius: 26px !important;
  }

  .launch-offer--compact-white .launch-offer__media {
    grid-template-columns: 1fr !important;
  }

  .launch-offer--compact-white .launch-offer__figure {
    aspect-ratio: 16 / 11 !important;
  }

  .launch-offer--compact-white h3 {
    font-size: clamp(1.9rem, 9vw, 2.4rem) !important;
  }
}


/* ÉTAPE 132 — Contraste texte carte lancement */
/* Correction demandée : le texte posé sur fond blanc / bleu très clair doit rester lisible. */
.launch-offer--compact-white.launch-offer--with-visual .launch-offer__aside,
.launch-offer--compact-white.launch-offer--with-visual .launch-offer__aside p,
.launch-offer--compact-white.launch-offer--with-visual .launch-offer__aside .launch-offer__note,
.launch-offer--compact-white.launch-offer--with-visual .launch-offer__aside .launch-offer__price,
.launch-offer--compact-white.launch-offer--with-visual .launch-offer__aside .launch-offer__price-label {
  color: #082A59 !important;
  -webkit-text-fill-color: #082A59 !important;
  text-shadow: none !important;
}

.launch-offer--compact-white.launch-offer--with-visual .launch-offer__aside .launch-offer__note {
  opacity: 1 !important;
  font-weight: 650 !important;
}

.launch-offer--compact-white.launch-offer--with-visual .launch-offer__aside .launch-offer__tag {
  color: #0E7A36 !important;
  -webkit-text-fill-color: #0E7A36 !important;
}

.launch-offer--compact-white.launch-offer--with-visual .launch-offer__aside .launch-offer__button {
  color: #FFFFFF !important;
  -webkit-text-fill-color: #FFFFFF !important;
}

/* === Protection légère anti-copie / anti-récupération === */
.protected-site img,
.protected-site picture,
.protected-site svg,
.protected-site video {
  -webkit-user-drag: none;
  user-select: none;
}

.protected-site ::selection {
  background: rgba(84, 202, 78, 0.16);
  color: inherit;
}

.protected-site input::selection,
.protected-site textarea::selection,
.protected-site select::selection {
  background: rgba(6, 99, 255, 0.22);
}

.footer__protection {
  max-width: 760px;
  margin-top: 12px !important;
  color: rgba(236,244,255,.66) !important;
  font-size: .86rem;
  line-height: 1.55;
}

.protection-toast {
  position: fixed;
  left: 50%;
  bottom: 24px;
  transform: translateX(-50%) translateY(16px);
  width: min(92vw, 760px);
  padding: 14px 18px;
  border-radius: 16px;
  background: rgba(7, 24, 51, 0.94);
  border: 1px solid rgba(84, 202, 78, 0.28);
  color: #f4f9ff;
  box-shadow: 0 20px 48px rgba(0,0,0,.22);
  text-align: center;
  font-size: .92rem;
  line-height: 1.45;
  opacity: 0;
  pointer-events: none;
  transition: opacity .22s ease, transform .22s ease;
  z-index: 9999;
}

.protection-toast.is-visible {
  opacity: 1;
  transform: translateX(-50%) translateY(0);
}

/* === Section vidéo PILOTYAM — univers de marque après les offres === */
.method-video {
  position: relative;
  overflow: hidden;
  background: linear-gradient(135deg, #071833 0%, #0B2143 54%, #071833 100%);
  color: #f5f9ff;
}

.method-video::before {
  content: "";
  position: absolute;
  inset: 10% -12% auto auto;
  width: 420px;
  height: 420px;
  border-radius: 999px;
  background: radial-gradient(circle, rgba(84,202,78,.16), rgba(6,99,255,.09) 44%, transparent 70%);
  pointer-events: none;
}

.method-video__layout {
  position: relative;
  display: grid;
  grid-template-columns: minmax(500px, 1.38fr) minmax(260px, .62fr);
  gap: clamp(24px, 4vw, 56px);
  align-items: center;
}

.method-video__content {
  max-width: 500px;
}

.method-video .section-kicker {
  color: #54CA4E;
}

.method-video h2 {
  margin: 0;
  color: #ffffff;
  font-size: clamp(2rem, 3.35vw, 3.65rem);
  line-height: 1.02;
  letter-spacing: -.05em;
}

.method-video p:not(.section-kicker) {
  max-width: 500px;
  color: rgba(236,244,255,.78);
  font-size: clamp(1rem, 1.12vw, 1.08rem);
  line-height: 1.68;
}

.method-video__points {
  display: grid;
  gap: 10px;
  margin: 24px 0 0;
  padding: 0;
  list-style: none;
}

.method-video__points li {
  position: relative;
  padding: 11px 14px 11px 40px;
  border-radius: 999px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.11);
  color: rgba(255,255,255,.86);
  font-weight: 760;
  line-height: 1.35;
}

.method-video__points li::before {
  content: "✓";
  position: absolute;
  left: 13px;
  top: 50%;
  transform: translateY(-50%);
  width: 18px;
  height: 18px;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: rgba(84,202,78,.18);
  color: #54CA4E;
  font-size: .78rem;
  font-weight: 900;
}

.method-video__frame {
  position: relative;
  width: min(100%, 780px);
  margin-left: 0;
  padding: 10px;
  border-radius: 30px;
  background: linear-gradient(135deg, rgba(84,202,78,.40), rgba(6,99,255,.30), rgba(255,255,255,.10));
  box-shadow: 0 28px 78px rgba(0,0,0,.28);
}

.method-video__frame::after {
  content: "PILOTYAM";
  position: absolute;
  left: 24px;
  top: 24px;
  z-index: 2;
  padding: 7px 11px;
  border-radius: 999px;
  background: rgba(7,24,51,.72);
  color: rgba(255,255,255,.82);
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
  backdrop-filter: blur(10px);
  pointer-events: none;
}

.method-video__frame video {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 9;
  object-fit: cover;
  border-radius: 22px;
  background: #071833;
}

.method-video__actions {
  margin-top: 28px;
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.method-video__actions .button {
  box-shadow: 0 18px 42px rgba(84,202,78,.18);
}

@media (max-width: 980px) {
  .method-video__layout {
    grid-template-columns: 1fr;
  }
  .method-video__frame {
    width: min(100%, 620px);
    margin: 0 auto;
  }
}

@media (max-width: 640px) {
  .method-video__frame {
    padding: 7px;
    border-radius: 22px;
  }
  .method-video__frame video {
    border-radius: 16px;
  }
  .method-video__frame::after {
    left: 16px;
    top: 16px;
  }
  .method-video__points li {
    border-radius: 18px;
  }
}
