
.bd {
  --vert:#00241B; --mint:#00F0B5; --mint-clair:#28F7C4; --bleu:#4056F4; --bleu-fonce:#2E41C9;
  --lavande:#ECEEFE; --blanc:#FFFFFF; --gris:#6B7392; --mint-texte:#046B50; --vert-clair:#00382A; --mint-texte:#046B50;
  --r-pill:100px; --r-lg:40px; --r-md:28px; --r-sm:22px;
  background:var(--lavande); color:var(--vert);
  font-family:Manrope,system-ui,-apple-system,sans-serif; font-size:16px; line-height:1.6;
  -webkit-font-smoothing:antialiased; overflow-x:hidden;
}
.bd *,.bd *::before,.bd *::after { box-sizing:border-box; }
:where(.bd) :where(h1,h2,h3) { font-family:'Bricolage Grotesque',Manrope,sans-serif; font-weight:600; margin:0; }
:where(.bd) :where(p,ul) { margin:0; }
:where(.bd) :where(ul) { list-style:none; padding:0; }
:where(.bd) :where(a) { color:inherit; text-decoration:none; }
:where(.bd) :where(p) a { color:var(--bleu); text-decoration:underline; text-underline-offset:2px; }
:where(.bd) :where(p) a:hover { color:var(--bleu-fonce); }
:where(.bd) :where(button) { font-family:inherit; }

.bd-wrap { max-width:1200px; margin:0 auto; padding-left:28px; padding-right:28px; }
.bd-eyebrow { font-size:12.5px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--bleu); margin-bottom:12px; }
.bd-eyebrow--mint { color:var(--mint); }
.bd-h2 { font-size:clamp(30px,4.4vw,52px); line-height:1.02; letter-spacing:-.032em; }
.bd-lead { font-size:18.5px; line-height:1.7; }
.bd-muted { color:var(--gris); }

.bd-btn { display:inline-flex; align-items:center; justify-content:center; gap:11px; text-decoration:none; border-radius:var(--r-pill); font-weight:700; font-size:16px; padding:17px 30px; border:1px solid transparent; transition:background 150ms ease,border-color 150ms ease; }
.bd-btn--mint { background:var(--mint); color:var(--vert); }
.bd-btn--mint:hover { background:var(--mint-clair); color:var(--vert); }
.bd-btn--vert { background:var(--vert); color:var(--lavande); }
.bd-btn--vert:hover { background:var(--vert-clair); color:var(--lavande); }
.bd-btn--ghost-clair { color:var(--lavande); border-color:rgba(236,238,254,.35); font-weight:600; }
.bd-btn--ghost-clair:hover { border-color:var(--lavande); color:var(--lavande); }
.bd-btn--ghost-blanc { color:#fff; border-color:rgba(255,255,255,.5); font-weight:600; }
.bd-btn--ghost-blanc:hover { border-color:#fff; color:#fff; }
.bd-btn--outline { color:var(--vert); border:1.5px solid var(--vert); padding:14px 22px; font-size:15px; width:100%; }
.bd-btn--outline:hover { background:var(--lavande); color:var(--vert); }
.bd-btn--sm { padding:12px 22px; font-size:14.5px; }
.bd-btn__dot { width:26px; height:26px; border-radius:50%; background:rgba(236,238,254,.14); display:inline-flex; align-items:center; justify-content:center; font-size:12px; }
.bd-btn__dot--mint { background:var(--mint); color:var(--vert); width:22px; height:22px; font-size:11px; }

/* ---------- Header + héro ---------- */
.bd-top { background:var(--vert); color:var(--lavande); position:relative; overflow:hidden; }
.bd-ring { position:absolute; border-radius:50%; pointer-events:none; }
.bd-ring--1 { top:-260px; right:-200px; width:640px; height:640px; border:1px solid rgba(0,240,181,.18); }
.bd-ring--2 { top:-160px; right:-100px; width:440px; height:440px; border:1px solid rgba(0,240,181,.12); }
.bd-glow { display:none; } /* le halo bleu vit désormais dans .bd-stage__bg, sous la fenêtre */

.bd-header { position:relative; display:flex; align-items:center; gap:28px; padding-top:22px; padding-bottom:22px; }
.bd-logo { display:flex; align-items:center; gap:9px; font-family:'Bricolage Grotesque',sans-serif; font-weight:700; font-size:22px; letter-spacing:-.02em; text-decoration:none; color:var(--lavande); }
.bd-logo__dot { width:22px; height:22px; border-radius:50%; background:var(--mint); flex:0 0 auto; }
.bd-nav { display:flex; flex-wrap:wrap; gap:26px; margin-left:auto; align-items:center; font-size:14.5px; font-weight:500; }
:where(.bd-nav) :where(a) { color:rgba(236,238,254,.72); text-decoration:none; }
:where(.bd-nav) :where(a):hover { color:var(--lavande); }
.bd-nav a.bd-nav__login { color:var(--lavande); }
.bd-nav a.bd-nav__login:hover { color:var(--mint); }

.bd-hero { position:relative; padding-top:clamp(18px,2.6vw,32px); padding-bottom:calc(clamp(150px,15vw,190px) + clamp(20px,2.5vw,32px)); display:flex; justify-content:center; text-align:center; }
.bd-hero > div { max-width:960px; display:flex; flex-direction:column; align-items:center; }
.bd-pill { display:inline-flex; align-items:center; gap:10px; background:rgba(236,238,254,.1); border:1px solid rgba(236,238,254,.2); border-radius:var(--r-pill); padding:8px 18px 8px 12px; font-size:13.5px; font-weight:600; margin-bottom:26px; }
.bd-pill__dot { width:8px; height:8px; border-radius:50%; background:var(--mint); }
:where(.bd-hero) :where(h1) { font-size:clamp(36px,5.2vw,66px); line-height:1.04; letter-spacing:-.038em; font-weight:500; margin-bottom:16px; }
.bd-hero h1 em { font-style:normal; color:var(--mint); white-space:nowrap; }
.bd-trust { list-style:none; margin:0 0 clamp(16px,2.2vw,24px); padding:0; display:flex; flex-wrap:wrap; justify-content:center; gap:10px 24px; font-size:13px; font-weight:600; color:rgba(236,238,254,.82); }
.bd-trust li { display:inline-flex; align-items:center; gap:8px; }
.bd-trust svg { flex:0 0 auto; display:block; color:var(--mint); }
.bd-mini__more { margin-top:2px; font-size:9.5px; font-style:italic; color:rgba(236,238,254,.5); text-align:right; }
.bd-hero__eyebrow { margin:0 0 18px; display:inline-flex; align-items:center; gap:9px; font-size:13px; font-weight:500; color:rgba(236,238,254,.78); border:1px solid rgba(236,238,254,.18); border-radius:100px; padding:6px 14px 6px 11px; }
.bd-hero__eyebrow::before { content:""; width:15px; height:10px; border-radius:2px; background:linear-gradient(90deg,#002395 0 33.33%,#FFFFFF 33.33% 66.66%,#ED2939 66.66%); box-shadow:0 0 0 1px rgba(236,238,254,.25); flex-shrink:0; }
.bd-hero__lead { color:rgba(236,238,254,.72); max-width:780px; margin-bottom:0; text-wrap:pretty; font-size:16px; font-weight:400; line-height:1.6; }
.bd-hero .bd-btn { padding:12px 22px; font-size:14.5px; gap:9px; }
.bd-hero .bd-btn__dot { width:22px; height:22px; font-size:11px; }
.bd-cta-row { display:flex; flex-wrap:wrap; gap:12px; align-items:center; justify-content:center; }
.bd-note { font-size:12.5px; color:rgba(236,238,254,.55); margin-top:16px; }

.bd-float { position:relative; animation:bdFloat 7s ease-in-out infinite; }
@keyframes bdFloat { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-10px)} }
.bd-stack { animation:bdFloat 7s ease-in-out infinite; }
@media (prefers-reduced-motion:reduce) { .bd-float, .bd-stack { animation:none; } }
.bd-float { padding:8px 0; max-width:400px; width:100%; justify-self:end; }
.bd-float__blue { position:absolute; top:-30px; left:-30px; width:96px; height:96px; border-radius:50%; background:var(--bleu); opacity:.9; }
.bd-float__ring { position:absolute; bottom:-18px; left:34%; width:64px; height:64px; border-radius:50%; border:2px solid var(--mint); }
.bd-avatar { width:34px; height:34px; border-radius:50%; background:var(--lavande); color:var(--bleu); display:inline-flex; align-items:center; justify-content:center; font-family:'Bricolage Grotesque',sans-serif; font-weight:700; font-size:14px; flex:0 0 auto; }

/* Illustration : page de garde + trois documents dérivés */
.bd-derive { position:relative; display:grid; grid-template-columns:minmax(0,1.55fr) minmax(0,1fr); align-items:center; }
.bd-derive__fan { grid-column:2; grid-row:1; z-index:1; display:flex; flex-direction:column; gap:clamp(10px,1.4vw,16px); margin-left:clamp(-30px,-2.2vw,-14px); }
.bd-mini { display:flex; flex-direction:column; gap:5px; }
.bd-mini:nth-child(1) { transform:rotate(3deg); }
.bd-mini:nth-child(2) { transform:rotate(-2deg); }
.bd-mini:nth-child(3) { transform:rotate(2.5deg); }
.bd-mini__paper { background:var(--blanc); border-radius:10px; padding:9px; box-shadow:0 14px 28px -20px rgba(0,36,27,.8); }
.bd-mini__label { font-size:9.5px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:rgba(236,238,254,.75); text-align:right; }
.bd-mini__paper--slide { aspect-ratio:16 / 9; display:flex; flex-direction:column; gap:6px; }
.bd-mini__slide-title { height:4px; width:52%; border-radius:var(--r-pill); background:var(--vert); }
.bd-mini__slide-blocks { flex:1; display:grid; grid-template-columns:1fr 1fr 1fr; gap:5px; }
:where(.bd-mini__slide-blocks) :where(span) { border-radius:5px; background:var(--lavande); }
.bd-mini__slide-blocks span:first-child { background:var(--bleu); }
.bd-mini__slide-blocks span:nth-child(2) { background:rgba(64,86,244,.28); }
.bd-mini__paper--table { display:flex; flex-direction:column; gap:4px; }
.bd-mini__row { display:flex; align-items:center; gap:6px; padding:2px 3px; border-radius:4px; }
:where(.bd-mini__row) :where(span) { height:3.5px; border-radius:var(--r-pill); background:var(--lavande); }
.bd-mini__row span:nth-child(2) { margin-left:auto; }
.bd-mini__row--total { background:rgba(0,36,27,.06); }
.bd-mini__row--total span:first-child { background:var(--vert); }
.bd-mini__row--total span:nth-child(2),.bd-mini__row--total span:last-child { background:var(--mint); }
.bd-mini__paper--a4 { aspect-ratio:1 / 1.414; display:flex; padding:0; overflow:hidden; }
.bd-mini__a4-side { width:34%; background:linear-gradient(160deg,var(--vert) 0%,#0B4A3B 60%,var(--bleu) 100%); padding:8px 7px; display:flex; flex-direction:column; gap:5px; }
:where(.bd-mini__a4-side) :where(span) { height:3px; border-radius:var(--r-pill); background:rgba(236,238,254,.32); }
.bd-mini__a4-side .bd-dot { height:8px; width:8px; border-radius:50%; background:var(--mint); }
.bd-mini__a4-side .bd-tag { margin-top:6px; height:7px; width:70%; border-radius:3px; background:var(--mint); }
.bd-mini__a4-side .bd-last { margin-top:auto; }
.bd-mini__a4-main { flex:1; padding:8px 8px 8px 7px; display:flex; flex-direction:column; gap:5px; }
.bd-mini__a4-title { height:4px; width:64%; border-radius:var(--r-pill); background:var(--vert); }
.bd-mini__a4-pair { display:flex; gap:4px; }
:where(.bd-mini__a4-pair) :where(span) { flex:1; height:16px; border-radius:4px; background:var(--lavande); }
.bd-mini__a4-hero { height:20px; border-radius:5px; background:var(--bleu); }
.bd-mini__a4-lines { display:flex; flex-direction:column; gap:3px; }
:where(.bd-mini__a4-lines) :where(span) { height:3px; border-radius:var(--r-pill); background:var(--lavande); }
.bd-mini__a4-chart { margin-top:auto; background:rgba(0,240,181,.16); border-radius:5px; padding:5px; display:flex; align-items:flex-end; gap:3px; height:26px; }
:where(.bd-mini__a4-chart) :where(span) { flex:1; border-radius:2px; background:rgba(64,86,244,.3); }

/* ---------- Chiffres ---------- */
.bd-figs { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(130px,100%),1fr)); gap:10px; }
.bd-fig { background:var(--blanc); border-radius:18px; padding:15px 17px; }
.bd-fig--lavande { background:var(--lavande); }
.bd-fig--vert { background:var(--vert); color:var(--lavande); }
.bd-fig__k { font-size:11px; font-weight:600; color:var(--gris); margin-bottom:3px; }
.bd-fig--vert .bd-fig__k { color:rgba(236,238,254,.65); }
.bd-fig__v { font-family:'Bricolage Grotesque',sans-serif; font-weight:600; font-size:23px; letter-spacing:-.02em; }

/* ---------- Aperçu / onglets ---------- */
/* L'aperçu est posé à cheval sur la fin du fond vert : fenêtre produit, pas un bloc qui flotte */
.bd-stage { position:relative; }
.bd-stage__bg { position:absolute; top:0; left:0; right:0; height:clamp(150px,17vw,240px); background:radial-gradient(460px 130px at 0% 100%, rgba(64,86,244,.45), transparent 100%), var(--vert); border-radius:0 0 var(--r-lg) var(--r-lg); }
.bd-window { position:relative; background:var(--blanc); border-radius:28px; padding:0 8px 8px; box-shadow:0 2px 4px rgba(0,36,27,.08), 0 50px 90px -40px rgba(0,36,27,.55); }
.bd-window__bar { display:flex; align-items:center; gap:14px; height:44px; padding:0 10px; }
.bd-window__dots { flex:0 0 52px; display:flex; gap:7px; }
.bd-window__dots i { width:10px; height:10px; border-radius:50%; background:rgba(0,36,27,.13); }
.bd-window__label { flex:1; min-width:0; text-align:center; font-size:12.5px; color:var(--gris); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.bd-window__label b { font-weight:700; color:var(--vert); }
.bd-window__body { background:var(--lavande); border-radius:22px; padding:clamp(8px,1.4vw,16px); }
@media (max-width:720px) { .bd-window { border-radius:20px; padding:0 5px 5px; } .bd-window__body { border-radius:16px; } .bd-window__dots--ghost { display:none; } .bd-window__label { text-align:left; } }
.bd-section { padding-top:clamp(52px,7vw,88px); padding-bottom:clamp(52px,7vw,88px); }
.bd-head-row { display:flex; flex-wrap:wrap; gap:20px; align-items:flex-end; justify-content:space-between; margin-bottom:28px; }
.bd-tabs { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(176px,100%),1fr)); gap:4px; background:var(--blanc); border-radius:22px; padding:6px; margin-bottom:20px; }
.bd-tab { text-align:left; padding:10px 16px; border-radius:16px; cursor:pointer; border:none; background:transparent; color:var(--gris); transition:background 140ms ease,color 140ms ease; }
.bd-tab__label { display:block; font-size:14px; font-weight:700; }
.bd-tab__sub { display:block; margin-top:2px; font-size:10.5px; font-weight:600; color:var(--gris); }
.bd-tab[aria-selected="true"] .bd-tab__sub { color:rgba(255,255,255,.72); }
.bd-tab:hover { color:var(--vert); }
.bd-tab[aria-selected="true"] { background:var(--bleu); color:#fff; }
.bd-panel-shell { background:var(--blanc); border-radius:32px; padding:clamp(18px,3.4vw,40px); position:relative; overflow:hidden; }
.bd-panel-shell::after { content:""; position:absolute; top:-90px; right:-70px; width:260px; height:260px; border-radius:50%; background:rgba(64,86,244,.06); pointer-events:none; }
.bd-panel[hidden] { display:none; }
.bd-doc { position:relative; background:var(--lavande); border-radius:24px; padding:clamp(22px,4vw,46px); margin:0 auto; }
.bd-doc__head { display:flex; flex-wrap:wrap; gap:12px; justify-content:space-between; align-items:center; margin-bottom:26px; font-size:12px; }
.bd-doc__ref { font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--bleu); }
:where(.bd-doc) :where(h3) { font-size:clamp(24px,3.2vw,32px); letter-spacing:-.028em; margin-bottom:8px; }
.bd-doc__sub { font-size:13.5px; color:var(--gris); margin-bottom:22px; }
.bd-doc__p { font-size:16px; line-height:1.78; margin-bottom:16px; }
.bd-doc__p--last { margin-bottom:28px; }

.bd-slides { position:relative; display:grid; grid-template-columns:repeat(auto-fit,minmax(min(225px,100%),1fr)); gap:16px; max-width:900px; margin:0 auto; }
.bd-slide { border-radius:24px; aspect-ratio:4/3; padding:26px; display:flex; flex-direction:column; background:var(--lavande); position:relative; overflow:hidden; }
.bd-slide--vert { background:var(--vert); color:var(--lavande); justify-content:flex-end; }
.bd-slide--vert::before { content:""; position:absolute; top:-40px; right:-40px; width:150px; height:150px; border-radius:50%; border:1px solid rgba(0,240,181,.3); }
.bd-slide__label { font-size:11px; font-weight:700; letter-spacing:.1em; text-transform:uppercase; color:var(--bleu); margin-bottom:10px; }
.bd-slide--vert .bd-slide__label { color:var(--mint); }
.bd-slide__title { font-family:'Bricolage Grotesque',sans-serif; font-weight:600; letter-spacing:-.024em; font-size:20px; line-height:1.15; margin-bottom:18px; }
.bd-slide--vert .bd-slide__title { font-size:27px; line-height:1.05; letter-spacing:-.028em; margin-bottom:0; }
.bd-bars { display:flex; flex-direction:column; gap:10px; margin-top:auto; }
.bd-bar { display:flex; align-items:center; gap:10px; font-size:11.5px; font-weight:600; color:var(--gris); }
.bd-bar > span:first-child { height:11px; border-radius:var(--r-pill); }
.bd-lines { margin-top:auto; display:flex; flex-direction:column; gap:9px; font-size:12.5px; }
.bd-lines > div { display:flex; justify-content:space-between; gap:12px; }
.bd-lines b { font-weight:700; }

.bd-table-wrap { overflow-x:auto; }
.bd-table { width:100%; border-collapse:separate; border-spacing:0 6px; font-size:14.5px; min-width:460px; }
.bd-table th { text-align:right; padding:0 14px 8px; font-size:11px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--gris); }
.bd-table th:first-child { text-align:left; }
.bd-table td { text-align:right; padding:14px; background:var(--blanc); font-variant-numeric:tabular-nums; }
.bd-table td:first-child { text-align:left; font-weight:600; border-radius:14px 0 0 14px; }
.bd-table td:last-child { border-radius:0 14px 14px 0; }
.bd-table tr.is-total td { background:var(--vert); color:var(--lavande); font-weight:700; }
.bd-hyp { margin-top:22px; font-size:13px; color:var(--gris); line-height:1.75; }

.bd-one__head { display:flex; flex-wrap:wrap; gap:10px; justify-content:space-between; align-items:center; margin-bottom:26px; }
.bd-one__title { font-family:'Bricolage Grotesque',sans-serif; font-weight:600; font-size:26px; letter-spacing:-.028em; }
.bd-chip { background:var(--blanc); border-radius:var(--r-pill); padding:7px 15px; font-size:11.5px; font-weight:700; color:var(--bleu); white-space:nowrap; }
.bd-one__grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(195px,100%),1fr)); gap:14px; margin-bottom:14px; }
.bd-one__block { background:var(--blanc); border-radius:20px; padding:20px; }
.bd-one__block p:first-child { font-size:11.5px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--bleu); margin-bottom:8px; }
.bd-one__block p:last-child { font-size:14.5px; line-height:1.7; }

/* ---------- Confiance ---------- */
.bd-split { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr)); gap:clamp(28px,4vw,56px); align-items:start; }
.bd-stack { display:flex; flex-direction:column; gap:14px; }
.bd-reason { background:var(--blanc); border-radius:24px; padding:26px 28px; display:grid; grid-template-columns:44px 1fr; gap:16px; align-items:start; }
.bd-num { width:44px; height:44px; border-radius:50%; background:var(--lavande); color:var(--bleu); display:inline-flex; align-items:center; justify-content:center; font-family:'Bricolage Grotesque',sans-serif; font-weight:700; font-size:16px; }
.bd-num--mint { background:rgba(0,240,181,.22); color:var(--mint-texte); }
:where(.bd-reason) :where(h3) { font-size:19px; letter-spacing:-.02em; margin-bottom:8px; }
:where(.bd-reason) :where(p) { font-size:15px; color:var(--gris); line-height:1.75; }

/* ---------- Étapes ---------- */
.bd-block-vert { background:var(--vert); color:var(--lavande); border-radius:var(--r-lg); margin:0 clamp(0px,1.6vw,20px); position:relative; overflow:hidden; }
.bd-block-vert__ring { position:absolute; top:-210px; right:-150px; width:440px; height:440px; border-radius:50%; border:1px solid rgba(236,238,254,.12); pointer-events:none; }
.bd-block-vert__glow { position:absolute; top:-180px; right:-100px; width:400px; height:400px; border-radius:50%; background:radial-gradient(circle at 40% 40%,rgba(0,240,181,.22),transparent 70%); pointer-events:none; }
:where(.bd-block-vert) :where(h2) { font-size:clamp(30px,4.6vw,56px); line-height:1; letter-spacing:-.034em; max-width:680px; margin-bottom:clamp(36px,5vw,56px); }
.bd-steps { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(215px,100%),1fr)); gap:14px; }
.bd-step { background:rgba(236,238,254,.07); border:1px solid rgba(236,238,254,.13); border-radius:24px; padding:26px; }
.bd-step__num { width:40px; height:40px; border-radius:50%; display:inline-flex; align-items:center; justify-content:center; font-family:'Bricolage Grotesque',sans-serif; font-weight:700; font-size:15px; margin-bottom:18px; background:var(--mint); color:var(--vert); }
.bd-step__num--bleu { background:var(--bleu); color:#fff; }
:where(.bd-step) :where(h3) { font-size:18px; letter-spacing:-.02em; margin-bottom:9px; }
:where(.bd-step) :where(p) { font-size:14.5px; color:rgba(236,238,254,.7); line-height:1.7; }

/* ---------- Pour qui ---------- */
.bd-cards4 { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(255px,100%),1fr)); gap:14px; }
.bd-usecase { background:var(--blanc); border-radius:24px; padding:28px; position:relative; overflow:hidden; }
.bd-usecase::before { content:""; position:absolute; top:-30px; right:-30px; width:110px; height:110px; border-radius:50%; background:rgba(64,86,244,.07); }
.bd-usecase--mint::before { background:rgba(0,240,181,.16); }
:where(.bd-usecase) :where(h3) { position:relative; font-size:18px; letter-spacing:-.02em; margin-bottom:10px; }
:where(.bd-usecase) :where(p) { position:relative; font-size:14.5px; color:var(--gris); line-height:1.75; }

/* ---------- Tarifs ---------- */
.bd-plans { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr)); gap:14px; align-items:stretch; max-width:860px; margin:0 auto; }
.bd-plan { background:var(--blanc); border-radius:var(--r-md); padding:30px; display:flex; flex-direction:column; position:relative; overflow:hidden; }
.bd-plan--vert { background:var(--vert); color:var(--lavande); }
.bd-plan--vert::before { content:""; position:absolute; top:-60px; right:-60px; width:190px; height:190px; border-radius:50%; background:rgba(0,240,181,.14); }
.bd-plan__label { position:relative; font-size:12px; font-weight:700; letter-spacing:.08em; text-transform:uppercase; color:var(--gris); margin-bottom:8px; }
.bd-plan--vert .bd-plan__label { color:var(--mint); }
.bd-plan__head { position:relative; display:flex; flex-wrap:wrap; gap:10px; justify-content:space-between; align-items:center; margin-bottom:8px; }
.bd-badge { background:var(--mint); color:var(--vert); border-radius:var(--r-pill); padding:5px 12px; font-size:11px; font-weight:700; }
.bd-price { position:relative; font-family:'Bricolage Grotesque',sans-serif; font-weight:600; font-size:46px; line-height:1; letter-spacing:-.03em; margin-bottom:8px; }
.bd-price__unit { font-family:Manrope,sans-serif; font-size:14px; font-weight:500; color:var(--gris); }
.bd-plan--vert .bd-price__unit { color:rgba(236,238,254,.6); }
.bd-plan__desc { position:relative; font-size:14px; color:var(--gris); line-height:1.65; margin-bottom:24px; }
.bd-plan--vert .bd-plan__desc { color:rgba(236,238,254,.7); }
.bd-feats { position:relative; display:flex; flex-direction:column; gap:12px; font-size:14.5px; line-height:1.6; margin-bottom:28px; }
:where(.bd-feats) :where(li) { display:flex; gap:10px; }
.bd-check { width:19px; height:19px; border-radius:50%; background:var(--lavande); color:var(--bleu); display:inline-flex; align-items:center; justify-content:center; font-size:11px; flex:0 0 auto; margin-top:2px; }
.bd-plan--vert .bd-check { background:var(--mint); color:var(--vert); }
.bd-plan__cta { margin-top:auto; position:relative; }
.bd-plan__cta .bd-btn { width:100%; }
.bd-plan__fineprint { position:relative; margin-bottom:24px; font-size:11.5px; color:rgba(236,238,254,.5); }
.bd-feats__off { color:var(--gris); }
.bd-check--off { color:var(--gris); }
.bd-switch { display:inline-flex; align-items:center; gap:4px; background:var(--blanc); border-radius:var(--r-pill); padding:5px; }
.bd-switch__btn { font-family:Manrope,sans-serif; font-size:14px; font-weight:700; padding:11px 20px; border-radius:var(--r-pill); border:none; cursor:pointer; display:inline-flex; align-items:center; gap:9px; background:transparent; color:var(--gris); transition:background 140ms ease,color 140ms ease; }
.bd-switch__btn.is-on { background:var(--bleu); color:#fff; }
.bd-switch__off { background:var(--lavande); color:var(--vert); border-radius:var(--r-pill); padding:3px 9px; font-size:11px; font-weight:700; }
.bd-switch__btn.is-on .bd-switch__off { background:var(--mint); }

/* ---------- FAQ ---------- */
.bd-faq { display:flex; flex-direction:column; gap:10px; }
.bd-faq__item { background:var(--blanc); border-radius:var(--r-sm); padding:22px 26px; }
.bd-faq__item.is-open { box-shadow:inset 0 0 0 1.5px var(--bleu); }
.bd-faq__q { width:100%; text-align:left; background:none; border:none; padding:0; font-family:'Bricolage Grotesque',sans-serif; font-size:17.5px; font-weight:600; letter-spacing:-.02em; color:var(--vert); cursor:pointer; display:flex; gap:16px; justify-content:space-between; align-items:center; line-height:1.35; }
.bd-faq__icon { width:30px; height:30px; border-radius:50%; display:inline-flex; align-items:center; justify-content:center; font-size:16px; flex:0 0 auto; background:var(--lavande); color:var(--bleu); transition:background 140ms ease,color 140ms ease; }
.bd-faq__item.is-open .bd-faq__icon { background:var(--bleu); color:#fff; }
.bd-faq__a { margin:14px 44px 0 0; font-size:15px; color:var(--gris); line-height:1.8; }
.bd-faq__a[hidden] { display:none; }

/* ---------- CTA final + footer ---------- */
.bd-final { padding:0 clamp(0px,1.6vw,20px) clamp(20px,3vw,28px); }
.bd-final__inner { background:var(--bleu); color:#fff; border-radius:var(--r-lg); position:relative; overflow:hidden; text-align:center; }
.bd-final__ring { position:absolute; top:-190px; left:-120px; width:480px; height:480px; border-radius:50%; border:1px solid rgba(255,255,255,.2); pointer-events:none; }
.bd-final__glow { position:absolute; bottom:-230px; right:-90px; width:460px; height:460px; border-radius:50%; background:radial-gradient(circle at 40% 40%,rgba(0,240,181,.4),transparent 68%); pointer-events:none; }
:where(.bd-final) :where(h2) { position:relative; font-size:clamp(34px,5.6vw,70px); line-height:1; letter-spacing:-.036em; max-width:660px; margin:0 auto 20px; }
.bd-final__lead { position:relative; font-size:17.5px; color:rgba(255,255,255,.82); max-width:440px; margin:0 auto 34px; line-height:1.65; }
.bd-final .bd-cta-row { position:relative; justify-content:center; }
.bd-final__note { position:relative; margin-top:22px; font-size:13.5px; color:rgba(255,255,255,.65); }
.bd-footer { display:flex; flex-wrap:wrap; gap:22px; align-items:center; justify-content:space-between; font-size:14px; color:var(--gris); padding-top:12px; padding-bottom:44px; }
.bd-footer__logo { display:flex; align-items:center; gap:9px; font-family:'Bricolage Grotesque',sans-serif; font-weight:700; font-size:19px; letter-spacing:-.02em; color:var(--vert); }
:where(.bd-footer__logo) :where(span) { width:18px; height:18px; border-radius:50%; background:var(--mint); }
:where(.bd-footer) :where(nav) { display:flex; flex-wrap:wrap; gap:22px; }
:where(.bd-footer) :where(a) { color:var(--gris); text-decoration:none; }
:where(.bd-footer) :where(a):hover { color:var(--vert); }

@media (max-width:980px) {
  #bd-objectifs > div { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
}
@media (max-width:600px) {
  #bd-objectifs > div { grid-template-columns:1fr !important; }
}
@media (max-width:720px) {
  .bd-wrap { padding-left:20px; padding-right:20px; }
  .bd-nav { gap:18px; font-size:14px; }
  .bd-nav a:not(.bd-nav__cta):not(.bd-nav__login) { display:none; }
  .bd-reason { grid-template-columns:1fr; }
  .bd-derive { grid-template-columns:1fr; }
  .bd-cover { grid-column:1; grid-row:1; }
  .bd-derive__fan { grid-column:1; grid-row:2; flex-direction:row; align-items:flex-start; margin-left:0; margin-top:-10px; }
  .bd-derive__fan .bd-mini { flex:1; min-width:0; }
  .bd-derive__fan .bd-mini { flex:1; min-width:0; }
  .bd-faq__a { margin-right:0; }
}

/* ---------- Saisie du héro ---------- */
.bd-compo-zone { position:relative; z-index:3; margin-top:calc(-1 * clamp(150px,15vw,190px)); display:flex; flex-direction:column; align-items:center; }
.bd-compo__note { margin:18px 0 0; text-align:center; font-size:14px; color:var(--gris); }
.bd-compo { position:relative; width:100%; max-width:880px; margin:0 auto; text-align:left; background:#fff; color:var(--vert); border-radius:22px; padding:clamp(16px,2vw,22px) clamp(16px,2.2vw,24px) clamp(14px,1.8vw,18px); box-shadow:0 1px 2px rgba(0,36,27,.06), 0 30px 70px -40px rgba(0,36,27,.45); transition:box-shadow .2s ease; }
.bd-compo:focus-within { box-shadow:0 0 0 4px rgba(64,86,244,.14), 0 1px 2px rgba(0,36,27,.06), 0 30px 70px -40px rgba(0,36,27,.45); }
.bd-compo__label { display:block; margin:0 0 4px; font-size:12.5px; font-weight:500; color:var(--gris); }
.bd-compo__texte { display:block; width:100%; min-height:60px; resize:none; border:0; outline:0; background:transparent; padding:0 0 14px; font:inherit; font-weight:400; font-size:clamp(16px,1.5vw,18px); line-height:1.5; color:var(--vert); }
.bd-compo__texte::placeholder { color:#9AA0B8; }
.bd-compo__bulles { display:flex; flex-wrap:wrap; align-items:center; gap:6px; padding-top:14px; border-top:1px solid rgba(0,36,27,.06); }
.bd-compo__pour { font-size:13px; font-weight:400; color:var(--gris); padding-right:2px; }
.bd-bulle { display:inline-flex; align-items:center; gap:7px; white-space:nowrap; border-radius:100px; padding:7px 13px 7px 11px; font:inherit; font-size:13.5px; font-weight:500; cursor:pointer; background:#fff; color:var(--vert); border:1px solid rgba(0,36,27,.12); transition:background .12s, border-color .12s, color .12s; }
.bd-bulle svg { width:15px; height:15px; color:var(--gris); }
.bd-bulle:hover { border-color:rgba(64,86,244,.5); }
.bd-bulle.is-demo { border-color:rgba(64,86,244,.45); background:#F7F8FF; color:var(--bleu-fonce); }
.bd-bulle.is-demo svg, .bd-bulle[aria-pressed="true"] svg { color:var(--bleu); }
.bd-bulle[aria-pressed="true"] { background:#F3F5FF; color:var(--bleu-fonce); border-color:var(--bleu); }
.bd-compo__pied { display:flex; flex-wrap:wrap; align-items:center; gap:10px 16px; margin-top:14px; padding-top:14px; border-top:1px solid rgba(0,36,27,.06); }
.bd-compo__juge { flex:1 1 260px; min-width:0; margin:0; font-size:13.5px; line-height:1.45; color:#5F6785; }
.bd-compo__cta { flex:0 0 auto; margin-left:auto; display:inline-flex; align-items:center; gap:9px; border:0; border-radius:100px; padding:11px 20px; font:inherit; font-size:14.5px; font-weight:600; cursor:pointer; background:var(--bleu); color:#fff; box-shadow:0 8px 18px -12px rgba(64,86,244,.8); transition:background .14s; }
.bd-objectif-lien { transition:box-shadow .16s ease, transform .16s ease; }
.bd-objectif-lien:hover { box-shadow:0 18px 36px -24px rgba(0,36,27,.35); transform:translateY(-2px); }
.bd-compo__cta:hover { background:var(--bleu-fonce); }
.bd-compo__cta:disabled { background:#E3E5EF; color:#7C829C; cursor:not-allowed; box-shadow:none; }
@media (max-width:560px) { .bd-compo__cta { flex:1 1 100%; justify-content:center; } }

/* ---------- Atouts ---------- */
.bd-atouts { padding-top:clamp(40px,6vw,72px); }
.bd-atouts__tete { text-align:center; margin-bottom:clamp(22px,3vw,32px); }
.bd-atouts__tete .bd-h2 { max-width:680px; margin:0 auto; font-weight:500; font-size:clamp(26px,3.2vw,38px); }
.bd-atouts__grille { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,1fr); grid-template-rows:auto auto; gap:12px; max-width:1040px; margin:0 auto; }
.bd-atout { display:flex; flex-direction:column; gap:10px; background:var(--blanc); border-radius:20px; border:1px solid rgba(0,36,27,.06); padding:clamp(18px,2vw,24px); }
.bd-atout h3 { margin:0; font-family:'Bricolage Grotesque',sans-serif; font-weight:500; font-size:17px; line-height:1.25; letter-spacing:-.015em; }
.bd-atout p { margin:0; font-size:14px; line-height:1.65; color:var(--gris); }
.bd-atout__ico { display:inline-flex; width:38px; height:38px; border-radius:12px; align-items:center; justify-content:center; background:var(--lavande); color:var(--bleu); margin-bottom:6px; }
.bd-atout:not(.bd-atout--fr) { display:grid; grid-template-columns:auto minmax(0,1fr); column-gap:18px; row-gap:8px; align-content:center; }
.bd-atout:not(.bd-atout--fr) .bd-atout__ico { grid-row:1 / span 2; margin:0; }
.bd-atout:not(.bd-atout--fr) h3 { align-self:end; }
.bd-atout--fr { grid-row:1 / span 2; justify-content:flex-start; padding:clamp(22px,2.6vw,30px); background:var(--vert); color:var(--lavande); border-color:transparent; position:relative; overflow:hidden; }
.bd-atout--fr::after { content:""; position:absolute; right:-70px; bottom:-70px; width:200px; height:200px; border-radius:50%; border:1px solid rgba(0,240,181,.22); }
.bd-atout--fr h3 { font-size:clamp(20px,2vw,24px); line-height:1.2; max-width:400px; }
.bd-atout--fr p { font-size:14.5px; max-width:440px; color:rgba(236,238,254,.78); }
.bd-atout--fr .bd-atout__ico { background:rgba(0,240,181,.14); color:var(--mint); }
.bd-atout__tags { list-style:none; margin:auto 0 0; padding:8px 0 0; display:flex; flex-wrap:wrap; gap:6px; position:relative; z-index:1; }
.bd-atout__tags li { font-size:12px; font-weight:500; padding:3px 10px; border-radius:100px; border:1px solid rgba(236,238,254,.22); color:var(--lavande); }
@media (max-width:900px) { .bd-atouts__grille { grid-template-columns:1fr; } .bd-atout--fr { grid-row:auto; } }
@media (max-width:520px) { .bd-atout:not(.bd-atout--fr) { grid-template-columns:1fr; } .bd-atout:not(.bd-atout--fr) .bd-atout__ico { grid-row:auto; } }
