/* Inter latin 400, servi localement. */
@font-face{font-family:'Inter';font-style:normal;font-display:swap;font-weight:400;src:url('/assets/home-v2/fonts/inter-latin-400-normal.8909904ab6c8.woff2') format('woff2');}
/* Inter latin 500, servi localement. */
@font-face{font-family:'Inter';font-style:normal;font-display:swap;font-weight:500;src:url('/assets/home-v2/fonts/inter-latin-500-normal.f3779f1efccc.woff2') format('woff2');}
/* Inter latin 600, servi localement. */
@font-face{font-family:'Inter';font-style:normal;font-display:swap;font-weight:600;src:url('/assets/home-v2/fonts/inter-latin-600-normal.f9a06e79cd3a.woff2') format('woff2');}
/* Inter latin 700, servi localement. */
@font-face{font-family:'Inter';font-style:normal;font-display:swap;font-weight:700;src:url('/assets/home-v2/fonts/inter-latin-700-normal.6f56409fd3d6.woff2') format('woff2');}

/* ---- styles.css ---- */
/* Design 1 : surfaces ouvertes, typo sobre et textes sources conservés. */
:root { --f-body:'Inter',system-ui,-apple-system,sans-serif; --f-display:var(--f-body); --ink:#17212d; --muted:#657084; --line:#e7eaf0; --r-sm:6px; }
html { scroll-padding-top:100px; }
body { min-width:320px; font-family:var(--f-body); background:#fff; }
.container { width:min(1240px,calc(100% - 80px)); }
a,button { -webkit-tap-highlight-color:transparent; }
a:focus-visible,button:focus-visible,.ptable-wrap:focus-visible { outline:2px solid var(--orange-deep); outline-offset:5px; }
.btn { border-radius:6px; min-height:48px; font-size:15px; font-weight:600; box-shadow:none; }
.btn-primary:hover { box-shadow:none; }

/* En-tête discret et accroche centrée. */
.site-header { position:sticky; background:transparent; backdrop-filter:none; border-bottom-color:transparent; transition:background .25s ease,border-color .25s ease; }
.site-header[data-scrolled="true"] { background:rgba(255,255,255,.92); border-bottom-color:#17212d0d; backdrop-filter:blur(14px); }
.site-header .inner { min-height:78px; padding-block:14px; }
.site-header .logo { font-size:21px; gap:7px; }
.site-header .logo .mark { width:36px; height:32px; }
.header-actions { gap:12px; }
.header-actions .btn { min-height:44px; padding:11px 21px; font-size:14px; gap:8px; }
.header-actions .btn::before,.hero-ctas .btn-primary::before { content:''; display:block; flex:none; width:18px; height:18px; background:currentColor; mask:url('/assets/home-v2/icons/user-plus.svg?v=9a7b6ca2f2f9') center/contain no-repeat; animation:none; }
.header-actions .btn-outline::before { mask-image:url('/assets/home-v2/icons/login.svg?v=b0167d7d443a'); }
.header-actions .btn,.hero-ctas .btn { animation:none; transform:none; transition:background .15s ease,border-color .15s ease,color .15s ease; }
.header-actions .btn:hover,.header-actions .btn:active,.hero-ctas .btn:hover,.hero-ctas .btn:active { transform:none; }
.hero-cta.rise { animation:none; }

/* Fond clair : l’orange souligne les actions et les illustrations. */
.hero { padding:24px 0 0; border:0; overflow:visible; isolation:isolate; background:transparent; }
.hero::before { content:''; position:absolute; z-index:-1; inset:-90px 0 auto; height:780px; pointer-events:none; background:radial-gradient(ellipse 40% 50% at 0% 5%,#ed71171a,transparent 75%),radial-gradient(ellipse 30% 38% at 100% 48%,#ed711712,transparent 75%); animation:none; mask-image:linear-gradient(#000 75%,transparent); }
.hero-v3 { width:min(1240px,calc(100% - 80px)); display:flex; flex-direction:column; gap:0; }
.hero-v3::before { display:none; }
.hero-top { position:relative; width:100%; max-width:none; min-height:clamp(250px,32svh,320px); display:flex; flex-direction:column; justify-content:flex-end; align-items:stretch; gap:0; padding:72px 0 0; margin:0; order:0; }
.hero-flash { position:absolute; top:0; right:0; left:auto; display:grid; grid-template-columns:34px minmax(0,1fr) 16px; column-gap:12px; row-gap:3px; width:max-content; max-width:100%; align-self:flex-end; align-items:center; padding:13px 17px; text-align:left; color:var(--ink); background:rgba(255,255,255,.8); border:1px solid #ed71173d; border-radius:18px; box-shadow:0 6px 22px #b5571010; animation:none; text-decoration:none; transition:background .2s ease,border-color .2s ease; }
.hero-flash::before { content:''; grid-column:1; grid-row:1/span 2; width:34px; height:34px; background:var(--orange-deep); mask:url('/assets/home-v2/icons/building-estate.svg?v=a0fab41af5a8') center/contain no-repeat; }
.hero-flash::after { content:''; grid-column:3; grid-row:1/span 2; width:16px; height:16px; background:var(--orange-deep); mask:url('/assets/home-v2/icons/arrow-up-right.svg?v=450ff3ea98d6') center/contain no-repeat; }
.hero-flash strong,.hero-flash span { grid-column:2; }
.hero-flash:hover { background:#fff; border-color:var(--orange); }
.hero-flash strong { font-size:14px; font-weight:600; }
.hero-flash span { font-size:13px; color:var(--orange-deep); }
.hero-title { flex:none; width:100%; max-width:1130px; margin:0 auto; color:var(--ink); font-size:clamp(34px,3.6vw,52px); line-height:1.12; letter-spacing:-.045em; font-weight:650; text-align:center; text-wrap:balance; }
.hero-title strong { font-weight:inherit; }
.hero-cta { width:100%; max-width:none; order:1; padding:0; margin:24px 0 0; border:0; }
.hero-cta__title,.hero-cta__sub { color:var(--ink); font-weight:400; font-size:18px; line-height:1.65; }
.hero-cta__sub { margin:0; }
.hero-ctas { margin-top:22px; gap:14px; }
.hero-ctas .btn { min-height:54px; padding:14px 27px; font-size:15px; }

/* Quatre bénéfices sans cartes ni illustrations encerclées. */
.hero-feats { width:100%; max-width:1100px; order:2; display:flex; flex-direction:column; gap:0; margin:64px auto; padding-top:38px; border-top:1px solid var(--line); }
.hero-audience { display:block; }
.hero-list,.hero-list--panel,.hero-feats > .hero-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:56px; padding:0; margin:0; background:none; border-radius:0; }
.hero-list--panel { padding:0 0 30px; border-bottom:1px solid var(--line); }
.hero-feats > .hero-list { padding-top:30px; }
.hero-audience__tab { display:block; padding:0; margin:0 0 34px; text-align:center; color:var(--ink); background:none; border-radius:0; font-size:26px; font-weight:600; letter-spacing:-.03em; }
.hero-item { display:grid; grid-template-columns:44px minmax(0,1fr); align-items:start; gap:22px; }
.hero-ico { width:38px; height:38px; margin-top:4px; transition:transform .3s ease; }
.hero-item:hover .hero-ico { transform:translateY(-4px) rotate(-5deg); }
.hero-item__copy { display:flex; flex-direction:column; align-items:flex-start; }
.hero-item__title { order:0; font-size:19px; font-weight:600; line-height:1.4; color:var(--ink); letter-spacing:-.025em; text-wrap:pretty; }
.hero-item__note { order:1; margin:4px 0 0; font-size:13px; line-height:1.5; text-align:left; color:var(--muted); }
.hero-item p { order:2; max-width:475px; margin:6px 0 0; font-size:15px; line-height:1.65; color:var(--muted); }

/* Démonstration autonome avec les interactions d’origine. */
#medias { order:3; align-self:stretch; width:auto; margin-inline:calc((min(1240px,100vw - 80px) - 100vw)/2); padding:36px max(40px,calc((100vw - 1240px)/2)) 46px; background:#f8f9fb; border-top:1px solid #17212d08; }
.hero-sectors { display:flex; flex-wrap:nowrap; justify-content:center; width:100%; max-width:980px; gap:24px; margin:0 auto 34px; border-bottom:1px solid #e2e6ed; }
.hero-sectors button { width:auto; min-height:50px; padding:12px 30px 16px 16px; border:0; border-bottom:0; border-radius:0; background:transparent; color:var(--muted); font-size:14px; font-weight:500; box-shadow:none; }
.hero-sectors button::before { display:block; inset:auto 0 0; height:4px; z-index:1; background:var(--orange); transform:scaleX(var(--sector-progress)); transition:transform .1s linear; }
.hero-sectors button[aria-pressed="true"] { color:var(--orange-deep); background:#fff0e3; box-shadow:none; }
.hero-sectors button:hover { color:var(--orange-deep); background:#fff6ef; }
.hero-sector__play { display:none; right:11px; }
#medias[data-playback="paused"] button[aria-pressed="true"] .hero-sector__play { display:block; }
#medias[data-playback="playing"] button[aria-pressed="true"]::after { content:''; position:absolute; right:9px; top:17px; width:14px; height:14px; background:currentColor; mask:url('/assets/home-v2/icons/player-pause.svg?v=a797446af04b') center/contain no-repeat; }
#medias .hero-media__grid { width:100%; max-width:980px; margin-inline:auto; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:0; }
#medias .hero-media__col { gap:24px; padding:0 42px; border:0; }
#medias .hero-media__col--rcs { border-left:1px solid #e2e6ed; }
#medias .hero-channel { order:-1; min-height:140px; }
.hero-channel__head { gap:0; }
.hero-channel__head .media-pill { display:none; }
.hero-channel__head h2 { font-size:21px; font-weight:600; letter-spacing:-.025em; }
.hero-channel__feats { margin-top:10px; gap:4px; }
.hero-channel__feats li { padding-left:13px; font-size:14px; line-height:1.5; color:var(--muted); }
.hero-channel--sms .hero-channel__feats li::before,.hero-channel--rcs .hero-channel__feats li::before { width:4px; height:4px; background:#1aa57a; }
#medias .hero-phone { width:100%; max-width:280px; }
.hero-phone__tag { display:none; }
#medias .hero-phone .phone-mock__shell { aspect-ratio:9/18.5; padding:5px; border:1px solid #616a73; border-radius:32px; background:#3c444c; box-shadow:0 6px 15px #17212d16; }
#medias .hero-phone .phone-mock__screen { border-radius:29px; background:#fbfcfd; }
#medias .hero-phone .phone-mock__screen::before { width:9px; height:9px; top:9px; }
#medias .hero-phone .phone-mock__status { padding:9px 17px 4px; font-size:11px; }
#medias .hero-phone .phone-mock__header { min-height:48px; padding:7px 15px; background:#fbfcfd; }
#medias .hero-phone .phone-mock__avatar { width:27px; height:27px; background:var(--orange); }
#medias .hero-phone .phone-mock__brand { font-size:12px; }
#medias .hero-phone .phone-mock__verified-label { font-size:10px; }
#medias .hero-phone .phone-mock__chat { padding:14px; scrollbar-color:#d6dce5 transparent; }
#medias .hero-phone .phone-mock__bubble--sms { background:#f0f2f5; box-shadow:none; font-size:14px; line-height:1.55; padding:15px; border-radius:16px; }
#medias .hero-phone .phone-mock__rcs { box-shadow:none; border-radius:12px; }
#medias .hero-phone .phone-mock__rcs-body { padding:12px; }
#medias .hero-phone .phone-mock__rcs-body p,#medias .hero-phone .media-rcs-title { font-size:12px; line-height:1.5; }
#medias .hero-phone .phone-mock__composer { margin:8px 14px 12px; padding:9px 13px; font-size:11px; border:1px solid var(--line); box-shadow:none; }
.media-expand { min-height:40px; border:0; background:transparent; font-size:13px; padding:8px 12px; margin-top:14px; border-radius:6px; }
.media-expand:hover { background:#e9edf2; }

/* Étapes ouvertes et chiffres sans bandeaux. */
.section,.section.tight { padding:46px 0; }
.section-title { max-width:none; color:var(--ink); font-size:32px; font-weight:600; line-height:1.25; letter-spacing:-.035em; }
.reveal,.reveal.in-view { opacity:1; transform:none; transition:none; }
.steps { margin-top:36px; grid-template-columns:repeat(3,minmax(0,1fr)); gap:38px; }
.step-arrow { display:none; }
.step-card { display:block; padding:0 8px 0 0; border:0; border-radius:0; background:none; box-shadow:none; }
.step-card + .step-arrow + .step-card { border-left:1px solid var(--line); padding-left:30px; }
.step-card:hover { box-shadow:none; }
.step-head { gap:20px; margin-bottom:13px; }
.step-card .step-num { width:32px; height:38px; display:block; font-size:34px; font-weight:500; line-height:1; color:var(--orange); border-radius:0; background:none; }
.step-card h3 { font-size:17px; font-weight:600; line-height:1.4; letter-spacing:-.025em; }
.step-card p { font-size:14px; line-height:1.65; }
.step-card .step-visual { margin-top:16px; border:0; border-radius:0; box-shadow:none; }
.step-card .step-visual--map { background:none; }
.step-visual > img { display:block; width:100%; height:auto; aspect-ratio:34/19; object-fit:contain; }
.step-link { color:var(--ink-2); border-color:#b9c1cc; font-weight:400; font-size:13px; }
.sms-preview { padding:10px; }
.steps-trust { margin-top:34px; gap:40px; font-size:14px; font-weight:400; }
.stat-band-section.section { padding:48px 0; background:var(--orange); border:0; }
.stat-band { gap:18px; max-width:1100px; margin-inline:auto; }
.stat-band__line { padding:0; color:#fff; background:none; border-radius:0; font-size:24px; font-weight:400; line-height:1.55; }
.stat-band__line strong { color:#fff; font-weight:700; }
.stat-band__line:last-child { font-size:30px; }

/* Tableau tarifaire complet, lignes fines et colonnes alignées. */
#tarifs { padding-top:26px; padding-bottom:32px; }
.tarifs-head { display:block; text-align:center; }
.tarifs-head .section-title { max-width:none; text-align:center; font-size:31px; font-weight:600; line-height:1.3; color:var(--ink); }
.tarifs-head__main { display:inline; color:inherit; font-size:inherit; font-weight:inherit; letter-spacing:inherit; }
.tarifs-head .section-title b { font-weight:inherit; }
.pricing { margin-top:26px; }
.ptable-wrap { padding:0; border:1px solid var(--line); border-radius:8px; }
.ptable { width:100%; min-width:0; border-collapse:separate; border-spacing:0; table-layout:fixed; }
.ptable thead .lead { width:29%; }
.ptable th,.ptable td { padding:6px 16px; }
.ptable .pcol { background:#fff; border-left:1px solid var(--line); color:var(--ink); }
.ptable .pcol-top { padding:14px 22px 16px; border-radius:0; border-bottom:1px solid var(--line); }
.ptable .pcol-top::after { display:none; }
.pflag,.plan-propulse .pflag,.plan-ultime .pflag { position:static; display:inline-block; margin-bottom:8px; padding:0; background:none; color:var(--orange-deep); font-size:12px; font-weight:500; text-transform:none; letter-spacing:0; }
.plan-essentiel .pflag { color:var(--muted); }
.pname,.plan-propulse .pname,.plan-ultime .pname { color:var(--ink); font-size:24px; font-weight:600; letter-spacing:-.035em; }
.pdesc { font-size:13px; line-height:1.5; text-wrap:pretty; }
.ptable .lead { padding-left:16px; }
.grouprow th,.grouprow td { background:#f7f8fa !important; padding-block:8px; }
.gpill { width:100%; max-width:none; padding:0; background:none; border-radius:0; color:var(--ink); white-space:normal; }
.gpill b { font-size:13px; font-weight:600; line-height:1.4; }
.gpill small { font-size:11px; color:var(--muted); opacity:1; line-height:1.45; }
.ptable-section--prospect .prow .lead,.ptable-section--clients .prow .lead { border-left:0; padding-left:16px; }
.prow th,.prow td { border-bottom:1px solid var(--line-soft); }
.prow .type { font-size:14px; }
.prow .chars { font-size:11px; color:var(--muted); line-height:1.45; }
.ptable .price,.plan-propulse.price,.plan-ultime.price { font-size:17px; color:var(--ink); }
.ptable .price sup { font-size:10px; margin-left:3px; }
.ptable-section--feats .prow th,.ptable-section--feats .prow td { padding-block:8px; border-bottom:1px solid var(--line-soft); }
.pmark { width:20px; height:20px; }
.ptext,.plan-propulse .ptext,.plan-ultime .ptext { font-size:13px; color:var(--ink-2); }
.ptable .pcol-bottom { padding:14px 22px; border-radius:0; }
.pfoot-inner,.plan-propulse .pfoot-inner,.plan-ultime .pfoot-inner { flex-direction:column; align-items:stretch; gap:12px; padding:0; border:0; }
.pprice,.plan-propulse .pprice,.plan-ultime .pprice { color:var(--ink); font-size:20px; line-height:1.3; font-weight:600; }
.pprice sup { font-size:10px; }
.pcta,.plan-propulse .pcta:not(.pcta--current),.plan-ultime .pcta:not(.pcta--current) { display:flex; flex-direction:column; justify-content:center; min-height:48px; padding:9px 12px; border-radius:5px; background:var(--orange); color:#fff; font-size:12px; font-weight:500; }
.pcta:hover { filter:none; background:var(--orange-deep) !important; transform:none; }
.pcta span { white-space:normal; }
.pricing-reassure { margin-top:20px; font-size:12px; }

/* Conclusion légère et pied de page original. */
.cta-final { padding:20px 0 32px; border:0; border-radius:0; background:none; color:var(--ink); gap:30px; }
.cta-final h2 { max-width:none; font-size:32px; font-weight:600; letter-spacing:-.035em; }
.cta-final p { color:var(--muted); font-size:14px; }
.cta-final .btn-stack { position:relative; align-self:flex-start; min-width:248px; padding:14px 26px; }
.cta-final .btn-stack small { position:absolute; top:calc(100% + 8px); color:var(--muted); font-size:12px; font-weight:400; }
.site-footer { margin:0; padding:30px 0 18px; background:#f8f9fb; }
.site-footer .cols { grid-template-columns:1.5fr 1fr 1fr 1.1fr; gap:50px; padding-bottom:30px; }
.site-footer h4 { font-size:13px; font-weight:600; margin-bottom:10px; }
.site-footer a,.site-footer p { font-size:12px; line-height:1.7; }
.site-footer .logo { display:inline-flex; padding:0; font-size:14px; gap:3px; }
.site-footer .legal { font-size:11px; padding-top:18px; color:var(--muted); }

@media (max-width:1100px) {
  .hero-title { font-size:46px; }
  .hero-list,.hero-list--panel,.hero-feats > .hero-list { column-gap:38px; }
  #medias .hero-media__col { padding-inline:34px; }
  .steps { gap:25px; }
  .step-card + .step-arrow + .step-card { padding-left:20px; }
  .step-head { gap:12px; }
}
@media (max-width:900px) {
  .container,.hero-v3 { width:calc(100% - 40px); }
  .site-header .inner { min-height:68px; }
  .site-header .logo { font-size:17px; gap:4px; }
  .site-header .logo .mark { width:28px; height:26px; }
  .header-actions { gap:7px; }
  .header-actions .btn { min-height:40px; padding:9px 12px; font-size:12px; gap:6px; }
  .hero { padding-top:22px; }
  .hero-title { margin-top:0; font-size:clamp(32px,6vw,43px); letter-spacing:-.04em; }
  .hero-cta { margin-top:22px; }
  .hero-cta__title,.hero-cta__sub { font-size:15px; line-height:1.6; }
  .hero-ctas .btn { flex:none; padding:13px 18px; min-height:48px; font-size:14px; }
  .hero-feats { gap:0; margin:54px 0 45px; padding-top:32px; }
  .hero-audience__tab { margin-bottom:28px; font-size:24px; }
  .hero-list,.hero-list--panel,.hero-feats > .hero-list { column-gap:30px; }
  .hero-item { grid-template-columns:30px minmax(0,1fr); gap:15px; }
  .hero-ico { width:28px; height:28px; }
  .hero-item__title { font-size:16px; }
  .hero-item p { font-size:14px; }
  #medias { margin-inline:-20px; padding:25px 20px 36px; }
  .hero-sectors { max-width:none; overflow-x:auto; justify-content:flex-start; gap:10px; }
  .hero-sectors li { flex:0 0 auto; }
  .hero-sectors button { padding-inline:10px 26px; font-size:13px; }
  #medias .hero-media__col { padding-inline:24px; }
  .hero-channel__head h2 { font-size:19px; }
  .hero-channel__feats li { font-size:13px; }
  #medias .hero-channel { min-height:180px; }
  #medias .hero-phone { max-width:260px; width:100%; }
  .section,.section.tight { padding:35px 0; }
  .section-title,.tarifs-head .section-title { font-size:26px; }
  .steps { grid-template-columns:1fr; gap:30px; }
  .step-card,.step-card + .step-arrow + .step-card { display:grid; grid-template-columns:1fr 1fr; column-gap:24px; padding:0; border:0; }
  .step-card > * { grid-column:1; }
  .step-card > .step-visual { grid-column:2; grid-row:1/span 4; align-self:center; margin-top:0; }
  .stat-band-section.section { padding:38px 0; }
  .stat-band__line { font-size:24px; }
  .stat-band__line:last-child { font-size:26px; }
  .ptable { min-width:580px; }
  .ptable thead .lead { width:130px; }
  .ptable-wrap { padding-right:0; scroll-padding-left:130px; }
  .ptable .lead { position:sticky; left:0; background:#fff; z-index:2; box-shadow:none; }
  .ptable .pcol-top,.ptable .pcol-bottom { padding-inline:16px; }
  .ptable-hint { display:block; margin-bottom:12px; }
  .site-footer .cols { grid-template-columns:repeat(2,1fr); gap:26px 30px; }
  .cta-final { padding:0 0 34px; }
  .cta-final h2 { font-size:27px; }
}
@media (max-width:540px) {
  .site-header .logo { font-size:15px; }
  .site-header .logo .mark { width:24px; height:24px; }
  .site-header--vitrine .header-actions .btn { padding-inline:8px; font-size:11px; gap:4px; }
  .header-actions .btn::before { width:14px; height:14px; }
  .hero-top { min-height:0; padding-top:0; gap:0; }
  .hero-flash { position:static; align-self:center; transform:none; margin-bottom:32px; width:max-content; max-width:100%; grid-template-columns:28px minmax(0,1fr) 14px; column-gap:10px; padding:11px 13px; border-radius:15px; }
  .hero-flash::before { width:28px; height:28px; }
  .hero-flash strong { font-size:13px; }
  .hero-flash span { font-size:11px; }
  .hero-flash::after { width:14px; height:14px; }
  .hero::before { height:700px; }
  .hero-list,.hero-list--panel,.hero-feats > .hero-list { grid-template-columns:1fr; row-gap:27px; }
  .hero-audience__tab { margin-bottom:28px; font-size:23px; }
  .hero-item__title { font-size:18px; }
  .hero-item { gap:18px; }
  #medias .hero-media__grid { grid-template-columns:1fr; row-gap:34px; }
  #medias .hero-media__col { padding:0; gap:20px; border:0; }
  #medias .hero-media__col--rcs { padding-top:28px; border-top:1px solid var(--line); }
  #medias .hero-channel { min-height:0; }
  #medias .hero-phone { max-width:260px; }
  .step-card,.step-card + .step-arrow + .step-card { display:block; }
  .step-card > .step-visual { margin-top:16px; }
  .steps { gap:35px; }
  .steps-trust { gap:18px; font-size:13px; margin-top:28px; }
  .cta-final .btn-stack { min-width:0; width:100%; }
  .site-footer .legal { flex-direction:column; gap:7px; }
}
@media (max-width:359px) {
  .hero-top { min-height:0; padding-top:0; gap:0; }
  .hero-flash { position:static; align-self:center; transform:none; }
  .site-header .logo { font-size:14px; }
  .site-header .logo .mark { display:none; }
  .site-header--vitrine .header-actions .btn { padding-inline:6px; }
  .hero-ctas .btn { padding-inline:16px; font-size:13px; }
  .hero-title { font-size:31px; }
}
@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  .hero::before { animation:none; }
  *,*::before,*::after { animation-duration:.01ms !important; transition-duration:.01ms !important; }
}


/* ---- steps-motion.css ---- */
/* Les cartes apparaissent successivement sans déplacer la grille. */
#etapes[data-steps-motion] .step-card {
  position:relative;
  opacity:1;
  transform:none;
  transition:opacity .55s ease,transform .65s cubic-bezier(.2,.7,.3,1),color .35s ease;
}
#etapes[data-steps-motion] .step-card[data-motion-state="pending"] {
  opacity:0;
  transform:translateY(12px);
}
#etapes[data-steps-motion] .step-card[data-motion-focus="revealed"] {
  opacity:1;
  transform:none;
  transition:none;
}
#etapes[data-steps-motion] .step-card::before {
  content:'';
  position:absolute;
  top:-18px;
  left:0;
  width:calc(100% - 18px);
  height:2px;
  border-radius:2px;
  background:var(--orange);
  transform:scaleX(0);
  transform-origin:left;
  opacity:0;
}
#etapes[data-steps-motion] .step-card + .step-arrow + .step-card::before {
  left:30px;
  width:calc(100% - 48px);
}
#etapes[data-steps-motion] .step-card h3,
#etapes[data-steps-motion] .step-card .step-num {
  transition:color .4s ease,transform .4s ease;
}
#etapes[data-steps-motion] .step-card[data-motion-state="active"] h3 {
  color:var(--orange-deep);
}
#etapes[data-steps-motion] .step-card[data-motion-state="active"]::before {
  opacity:1;
  animation:stepProgress var(--stage-duration) linear both;
}
#etapes[data-steps-motion] .step-card[data-motion-state="complete"]::before {
  opacity:.25;
  transform:scaleX(1);
  transition:opacity .6s ease;
}
#etapes[data-steps-motion] .step-card .step-visual {
  transition:opacity .55s ease,transform .65s cubic-bezier(.2,.7,.3,1);
}
#etapes[data-steps-motion] .step-card[data-motion-state="pending"] .step-visual {
  opacity:.28;
  transform:translateY(10px) scale(.98);
}
#etapes[data-steps-motion] .step-card[data-motion-state="active"] .step-visual,
#etapes[data-steps-motion] .step-card[data-motion-state="complete"] .step-visual,
#etapes[data-steps-motion] .step-card[data-motion-focus="revealed"] .step-visual {
  opacity:1;
  transform:none;
}

/* Les animations de carte du module historique suivent maintenant la séquence. */
#etapes[data-steps-motion] .etape-pin,
#etapes[data-steps-motion] .etape-ripple,
#etapes[data-steps-motion] .etape-orbit {
  animation:none;
}
#etapes[data-steps-motion] .etape-ripple { opacity:.3; }
#etapes[data-steps-motion] .step-card[data-motion-state="active"] .etape-pin {
  animation:etapePulse 1.3s ease-in-out 2;
}
#etapes[data-steps-motion] .step-card[data-motion-state="active"] .etape-ripple {
  animation:etapeRipple 1.3s ease-out 2;
}
#etapes[data-steps-motion] .step-card[data-motion-state="active"] .etape-orbit {
  animation:stepOrbit 2.6s linear both;
}
#etapes[data-steps-motion] .sms-bubble {
  min-height:126px;
  font-size:13px;
  line-height:1.6;
}
#etapes[data-steps-motion] .step-card:not([data-motion-state="active"]) #etape-caret {
  display:none;
}
#etapes[data-steps-motion] .step-card[data-motion-state="active"] .sms-send-btn {
  animation:stepSend .65s ease-in-out 2.9s both;
}
#etapes[data-steps-motion] .step-card--3[data-motion-state="active"] .step-visual > img {
  animation:stepResults 1s cubic-bezier(.2,.7,.3,1) both;
}

@keyframes stepProgress { from { transform:scaleX(0); } to { transform:scaleX(1); } }
@keyframes stepOrbit { to { transform:rotate(90deg); } }
@keyframes stepSend { 0%,100% { transform:scale(1); } 50% { transform:scale(1.13); } }
@keyframes stepResults { from { opacity:.25; transform:translateY(18px) scale(.94); } to { opacity:1; transform:none; } }

@media (max-width:1100px) {
  #etapes[data-steps-motion] .step-card + .step-arrow + .step-card::before {
    left:20px;
    width:calc(100% - 38px);
  }
}
@media (max-width:900px) {
  #etapes[data-steps-motion] .step-card::before,
  #etapes[data-steps-motion] .step-card + .step-arrow + .step-card::before {
    left:0;
    top:-12px;
    width:100%;
  }
}
@media (prefers-reduced-motion:reduce) {
  #etapes[data-steps-motion] .step-card[data-motion-state] {
    opacity:1;
    transform:none;
    transition:none;
  }
  #etapes[data-steps-motion] .step-card .step-visual {
    opacity:1;
    transform:none;
  }
  #etapes[data-steps-motion] .step-card::before { display:none; }
  #etapes[data-steps-motion] .etape-pin,
  #etapes[data-steps-motion] .etape-ripple,
  #etapes[data-steps-motion] .etape-orbit,
  #etapes[data-steps-motion] .sms-send-btn,
  #etapes[data-steps-motion] .step-visual > img {
    animation:none;
  }
}


/* ---- audience-motion.css ---- */
/* Bénéfices plus compacts, toujours en deux choix puis deux actions. */
.hero-feats {
  max-width:1000px;
  margin:36px auto 38px;
  padding-top:24px;
}
.hero-feats .hero-audience__tab {
  margin:0 0 22px;
  font-size:20px;
  line-height:1.35;
  letter-spacing:-.025em;
}
.hero-feats .hero-list,
.hero-feats .hero-list--panel,
.hero-feats > .hero-list {
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:20px 36px;
}
.hero-feats .hero-list--panel { padding-bottom:20px; }
.hero-feats > .hero-list { padding-top:20px; }
.hero-feats .hero-item {
  position:relative;
  grid-template-columns:28px minmax(0,1fr);
  gap:13px;
  min-width:0;
}
.hero-feats .hero-ico {
  width:28px;
  height:28px;
  margin-top:1px;
  transform:none;
  transition:none;
}
.hero-feats .hero-item:hover .hero-ico { transform:none; }
.hero-feats .hero-item__title {
  font-size:16px;
  line-height:1.4;
  letter-spacing:-.02em;
}
.hero-feats .hero-item__note {
  margin-top:3px;
  font-size:12px;
  line-height:1.45;
}
.hero-feats .hero-item p {
  max-width:none;
  margin-top:5px;
  font-size:13.5px;
  line-height:1.55;
}
.hero-feats a:focus-visible,
.hero-feats button:focus-visible {
  outline:2px solid var(--orange-deep);
  outline-offset:4px;
}

/* Aucun contenu n’est masqué si JavaScript n’est pas disponible. */
.hero-feats[data-audience-motion] {
  opacity:1;
  transform:none;
  animation:none;
}
.hero-feats[data-audience-motion] .hero-item {
  opacity:1;
  transform:none;
  transition:opacity .55s ease,transform .65s cubic-bezier(.2,.7,.3,1);
}
.hero-feats[data-audience-motion] .hero-item[data-audience-state="pending"],
.hero-feats[data-audience-motion] .hero-item[data-audience-state="queued"] {
  opacity:0;
  transform:translateY(10px);
}
.hero-feats[data-audience-motion] .hero-item[data-audience-immediate="true"] {
  opacity:1;
  transform:none;
  transition:none;
}
.hero-feats[data-audience-motion] .hero-item::before {
  content:'';
  position:absolute;
  top:-5px;
  left:-6px;
  width:40px;
  height:40px;
  border:1.5px solid var(--orange);
  border-radius:50%;
  pointer-events:none;
  opacity:0;
}
.hero-feats[data-audience-motion] .hero-item[data-audience-signal="play"]::before {
  animation:audienceSignal 1.05s ease-out .12s both;
}
.hero-feats[data-audience-motion] .hero-item[data-audience-signal="play"] .hero-ico {
  animation:audienceIcon .7s cubic-bezier(.2,.7,.3,1) .12s both;
}
@keyframes audienceSignal {
  0% { opacity:0; transform:scale(.5); }
  25% { opacity:.7; }
  100% { opacity:0; transform:scale(1.35); }
}
@keyframes audienceIcon {
  0%,100% { transform:none; }
  42% { transform:translateY(-3px) scale(1.12); }
  72% { transform:translateY(1px) scale(.97); }
}

@media (max-width:900px) {
  .hero-feats { margin:32px auto 34px; padding-top:22px; }
  .hero-feats .hero-list,
  .hero-feats .hero-list--panel,
  .hero-feats > .hero-list { column-gap:26px; }
}
@media (max-width:540px) {
  .hero-feats { margin:30px auto 32px; padding-top:22px; }
  .hero-feats .hero-audience__tab { margin-bottom:20px; font-size:20px; }
  .hero-feats .hero-list,
  .hero-feats .hero-list--panel,
  .hero-feats > .hero-list { grid-template-columns:1fr; row-gap:20px; }
  .hero-feats .hero-item { gap:12px; }
  .hero-feats .hero-item__title { font-size:16px; }
  .hero-feats .hero-item p { font-size:13.5px; }
}
@media (prefers-reduced-motion:reduce) {
  .hero-feats[data-audience-motion] .hero-item[data-audience-state] {
    opacity:1;
    transform:none;
    transition:none;
  }
  .hero-feats[data-audience-motion] .hero-item::before,
  .hero-feats[data-audience-motion] .hero-item .hero-ico {
    animation:none;
  }
}


/* ---- hero-motion.css ---- */
/* Les fragments restent inline : le titre conserve sa largeur et ses retours. */
.hero-title[data-hero-motion] {
  animation:none;
  opacity:1;
  transform:none;
}
.hero-title[data-hero-motion] .hero-title__fragment {
  position:relative;
  top:0;
  opacity:1;
}
.hero-title[data-hero-state="waiting"] .hero-title__fragment {
  top:12px;
  opacity:0;
}
.hero-title[data-hero-state="playing"] .hero-title__fragment {
  animation:heroPhrase .7s cubic-bezier(.2,.7,.3,1) var(--hero-fragment-delay) both;
}
.hero-title[data-hero-motion] .hl {
  display:inline-flex;
  align-items:center;
  gap:.1em;
  white-space:nowrap;
}
.hero-title[data-hero-motion] .hl::before {
  content:'';
  display:inline-block;
  flex:none;
  width:.52em;
  height:.52em;
  background:currentColor;
  mask:url('/assets/home-v2/icons/messages.svg?v=261686b56111') center/contain no-repeat;
}
.hero-title[data-hero-motion] .hl[data-hero-channel="rcs"]::before {
  mask-image:url('/assets/home-v2/icons/photo.svg?v=9aa0bd44bef4');
}

/* Les canaux reprennent des pictogrammes cohérents avec ceux du titre. */
.hero-channel__head[data-channel-motion] {
  gap:11px;
  opacity:1;
  transform:none;
}
.hero-channel__head[data-channel-motion] .media-pill {
  display:grid;
  place-items:center;
  flex:none;
  width:34px;
  height:34px;
  border:1px solid #ed711738;
  border-radius:10px;
  background:#fff8f1;
  color:var(--orange-deep);
}
.hero-channel__head[data-channel-motion] .media-pill > svg { display:none; }
.hero-channel__head[data-channel-motion] .media-pill::before {
  content:'';
  width:21px;
  height:21px;
  background:currentColor;
  mask:url('/assets/home-v2/icons/messages.svg?v=261686b56111') center/contain no-repeat;
}
.hero-channel--rcs .hero-channel__head[data-channel-motion] .media-pill::before {
  mask-image:url('/assets/home-v2/icons/photo.svg?v=9aa0bd44bef4');
}
.hero-channel__head[data-channel-motion="waiting"] {
  opacity:1;
  transform:none;
}
.hero-channel__head[data-channel-motion="playing"] {
  animation:heroChannel .7s cubic-bezier(.2,.7,.3,1) both;
}
.hero-channel__head[data-channel-motion="playing"] .media-pill {
  animation:heroProcessIcon .7s cubic-bezier(.2,.7,.3,1) .1s both;
}

@keyframes heroPhrase {
  from { opacity:0; top:12px; filter:blur(3px); }
  to { opacity:1; top:0; filter:blur(0); }
}
@keyframes heroProcessIcon {
  0% { opacity:.25; transform:translateY(5px) scale(.86); }
  65% { opacity:1; transform:translateY(-2px) scale(1.05); }
  100% { opacity:1; transform:none; }
}
@keyframes heroChannel {
  from { opacity:0; transform:translateY(10px); }
  to { opacity:1; transform:none; }
}

@media (max-width:540px) {
  .hero-title[data-hero-motion] .hl::before { width:.48em; height:.48em; }
  .hero-channel__head[data-channel-motion] { gap:10px; }
  .hero-channel__head[data-channel-motion] .media-pill { width:32px; height:32px; }
}
@media (prefers-reduced-motion:reduce) {
  .hero-title[data-hero-motion] .hero-title__fragment,
  .hero-channel__head[data-channel-motion] {
    opacity:1;
    top:0;
    transform:none;
    filter:none;
    animation:none;
  }
  .hero-channel__head[data-channel-motion] .media-pill {
    opacity:1;
    transform:none;
    animation:none;
  }
}

