/* FieldOps AI — motion & modern polish 2026 */
/* ---- Hub : robot Field Ops AI + écrans produit ---- */
.fo-hub{position:relative;padding:92px 0 80px;overflow:hidden;background:radial-gradient(ellipse 60% 45% at 50% 62%,#e6f0ff 0,transparent 70%),linear-gradient(180deg,#f3f8ff 0%,#fff 30%)}
.fo-hub .hp-ai-orbit-head{position:relative;z-index:3;margin-bottom:26px}
.fo-hub-wrap{position:relative;width:min(1400px,calc(100% - 32px));margin:0 auto;height:calc(820px*var(--s,.7))}
.fo-hub-stage{position:absolute;left:0;top:0;width:1400px;height:820px;transform:scale(var(--s,.7));transform-origin:0 0}
.fo-hub-links{position:absolute;inset:0;width:1400px;height:820px;pointer-events:none}
.fo-hub-links path{fill:none;stroke:var(--hp-blue);stroke-width:1.5;stroke-linecap:round;stroke-dasharray:3 7;opacity:0;animation:foHubFlow 1.6s linear infinite,foHubShow .8s ease forwards}
@keyframes foHubFlow{to{stroke-dashoffset:-20}}@keyframes foHubShow{to{opacity:.42}}
.fo-hub-card{position:absolute;margin:0;padding:8px;background:#fff;border:1px solid #e6edf8;border-radius:14px;box-shadow:0 18px 40px -14px rgba(20,50,120,.28);opacity:0;transform:translateY(34px) scale(.92);transition:opacity .8s calc(.5s + var(--i)*.16s) ease,transform .95s calc(.5s + var(--i)*.16s) cubic-bezier(.2,.9,.3,1.2),translate .35s ease,box-shadow .3s}
.fo-hub.is-live .fo-hub-card{opacity:1;transform:none}
.fo-hub-card:hover{box-shadow:0 26px 54px -14px rgba(9,105,248,.38);z-index:5}
.fo-hub-card__in{position:relative}
.fo-hub.is-live .fo-hub-card__in{animation:foHubBob 5.5s calc(1.9s + var(--i)*-.7s) ease-in-out infinite}
@keyframes foHubBob{50%{transform:translateY(-9px)}}
.fo-hub-card img{display:block;width:100%;height:auto;border-radius:8px}
.fo-hub-tag{position:absolute;left:6px;top:-21px;z-index:2;padding:4px 11px;border-radius:99px;background:var(--hp-blue);color:#fff;font-size:11px;font-weight:800;letter-spacing:.2px;white-space:nowrap;box-shadow:0 6px 14px rgba(9,105,248,.3)}
.fo-hub-hero{position:absolute;left:520px;top:215px;width:360px;text-align:center}
.fo-hub-hero svg{display:block;width:280px;height:280px;margin:0 auto;overflow:visible}
.fo-hub-hero strong{display:block;margin-top:8px;color:var(--hp-text);font-size:34px;letter-spacing:-.6px;opacity:0;transform:translateY(12px);transition:.8s 1.7s}
.fo-hub-hero strong b{color:var(--hp-blue)}
.fo-hub-hero small{display:block;margin-top:4px;color:var(--hp-muted);font-size:14px;font-weight:600;opacity:0;transition:.8s 2s}
.fo-hub.is-live .fo-hub-hero strong{opacity:1;transform:none}.fo-hub.is-live .fo-hub-hero small{opacity:1}
.fo-hub .hd{fill:none;stroke:var(--hp-text);stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:600;stroke-dashoffset:600}
.fo-hub .hd.ha{stroke:var(--hp-blue)}
.fo-hub.is-live .hd{animation:foHubDraw 2.2s .3s ease forwards}
.fo-hub.is-live .hd.hpd{animation:foHubDraw 2.2s .3s ease forwards,foHubPd 1.6s 2.6s ease-in-out infinite}
.fo-hub .hpd{transform-box:fill-box;transform-origin:center}
.fo-hub .heye{fill:var(--hp-blue);opacity:0;transform-box:fill-box;transform-origin:center}
.fo-hub.is-live .heye{animation:foHubIn .4s 1.7s forwards,foHubBlink 4s 2.6s infinite}
.fo-hub .hring{fill:none;stroke:var(--hp-blue);stroke-width:1.5;opacity:0;transform-origin:140px 140px}
.fo-hub.is-live .hring{animation:foHubRing 3s ease-out infinite}
.fo-hub.is-live .hbot{animation:foHubBob 4s 2s ease-in-out infinite}
@keyframes foHubDraw{to{stroke-dashoffset:0}}@keyframes foHubIn{to{opacity:1}}
@keyframes foHubBlink{0%,94%,100%{transform:scaleY(1)}97%{transform:scaleY(.1)}}
@keyframes foHubPd{50%{transform:scale(1.5)}}
@keyframes foHubRing{0%{transform:scale(.5);opacity:.55}100%{transform:scale(1.35);opacity:0}}
@media(max-width:760px){
  .fo-hub{padding:64px 0 56px}
  .fo-hub-wrap{height:auto;width:calc(100% - 28px)}
  .fo-hub-stage{position:relative;width:100%;height:auto;transform:none;display:grid;grid-template-columns:1fr 1fr;gap:30px 12px}
  .fo-hub-links{display:none}
  .fo-hub-hero{position:relative;left:auto;top:auto;width:auto;grid-column:1/-1}
  .fo-hub-hero svg{width:220px;height:220px}
  .fo-hub-card{position:relative;left:auto!important;top:auto!important;width:auto!important}
  .fo-hub-card:nth-of-type(3n+1){grid-column:1/-1}
  .fo-hub-card{transition-delay:calc(var(--i)*.07s)}
}
@media(prefers-reduced-motion:reduce){.fo-hub *{animation:none!important;transition:none!important}.fo-hub .hd{stroke-dashoffset:0}.fo-hub .heye,.fo-hub-card,.fo-hub-hero strong,.fo-hub-hero small{opacity:1!important;transform:none!important}}
.hp-flow-rail{top:960px;height:calc(100% - 1180px)}
/* ---- Progression de scroll + nav ---- */
#fo-progress{position:fixed;left:0;top:0;z-index:200;height:3px;width:100%;transform:scaleX(0);transform-origin:0 50%;background:linear-gradient(90deg,#0969f8,#31c7eb,#7957e8);pointer-events:none}
/* ---- Micro-interactions ---- */
.hp-btn{transition:transform .25s cubic-bezier(.2,.8,.2,1),box-shadow .25s,background .25s}
.hp-btn:hover{transform:translateY(-2px);box-shadow:0 14px 28px -10px rgba(9,105,248,.45)}.hp-btn:active{transform:none}
.hp-team-card,.hp-trust-item,.hp-config-tile,.hp-metric{transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s}
.hp-team-card:hover,.hp-config-tile:hover,.hp-metric:hover{transform:translateY(-5px);box-shadow:0 22px 40px -18px rgba(11,31,74,.28)}
.hp-hero h1 .en>span,.hp-hero h1 .fr>span{background:linear-gradient(90deg,#0969f8,#31c7eb,#7957e8,#0969f8);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;color:transparent!important;animation:foTextShine 7s linear infinite}
@keyframes foTextShine{to{background-position:-220% 0}}
.hp-hero-art img{animation:foHeroFloat 7s ease-in-out infinite}@keyframes foHeroFloat{50%{transform:translateY(-8px)}}
@media(prefers-reduced-motion:reduce){#fo-progress{display:none}.hp-hero-art img,.hp-hero h1 span{animation:none!important}.hp-btn:hover,.hp-team-card:hover{transform:none}}
/* ---- Hero : vrais écrans ---- */
.fo-hero-stack{position:absolute;z-index:2;left:0;right:0;bottom:0;top:0;pointer-events:none}
.fo-hero-card{position:absolute;margin:0;padding:7px;background:#fff;border:1px solid #e6edf8;border-radius:14px;box-shadow:0 24px 50px -16px rgba(11,31,74,.4);opacity:0;animation:foHeroIn 1s var(--d,1s) cubic-bezier(.2,.9,.3,1.2) forwards,foHeroBob 6s calc(var(--d,1s) + 1s) ease-in-out infinite}
.fo-hero-card img{display:block;width:100%;height:auto;border-radius:8px}
.fo-hero-card .fo-hub-tag{top:-13px}
.fo-hero-card.hc1{--d:.9s;left:41%;bottom:34px;width:min(31vw,420px)}
.fo-hero-card.hc2{--d:1.2s;left:62%;bottom:78px;width:min(19vw,260px)}
@keyframes foHeroIn{from{opacity:0;transform:translateY(40px) scale(.92)}to{opacity:1;transform:none}}
@keyframes foHeroBob{50%{translate:0 -9px}}
@media(max-width:1100px){.fo-hero-stack{display:none}}
/* ---- Visuels Prioritize / Measure ---- */
.fo-vis{position:relative;min-height:380px}
.fo-vis-glow{position:absolute;inset:6% 0;border-radius:50%;background:radial-gradient(circle,rgba(255,184,27,.22),transparent 68%)}
.fo-vis .fo-hero-card{opacity:1;animation:foHeroBob 6.5s ease-in-out infinite}
.fo-vis .vp1{left:0;top:30px;width:88%}.fo-vis .vp2{right:0;bottom:0;width:46%;animation-delay:-2s}
.hp-prioritize .hp-section-copy{text-align:left}.hp-prioritize .hp-benefits{justify-content:flex-start}
.fo-measure-vis{position:relative;z-index:2;display:grid;grid-template-columns:1.25fr 1fr;gap:34px;align-items:center;margin:8px auto 0;padding-bottom:70px;max-width:1100px}
.fo-measure-shot{position:relative;padding-top:14px}.fo-measure-shot .fo-hero-card{position:relative;opacity:1;animation:foHeroBob 7s ease-in-out infinite;width:100%}
.fo-kpis{display:grid;gap:14px}
.fo-kpi{padding:20px 24px;border:1px solid #e5defa;border-radius:18px;background:#fff;box-shadow:0 18px 36px -22px rgba(121,87,232,.5);transition:transform .3s}
.fo-kpi:hover{transform:translateX(6px)}
.fo-kpi b{display:block;font-size:46px;line-height:1;letter-spacing:-1.5px;color:var(--hp-purple);font-variant-numeric:tabular-nums}
.fo-kpi span{display:block;margin-top:6px;color:var(--hp-muted);font-size:14px;font-weight:700}
@media(max-width:900px){.fo-measure-vis{grid-template-columns:1fr}.fo-vis{min-height:300px;margin-top:30px}.hp-prioritize .hp-section-copy{text-align:center}.hp-prioritize .hp-benefits{justify-content:center}}
@media(prefers-reduced-motion:reduce){.fo-hero-card{animation:none!important;opacity:1!important}}
.hp-hero-art .fo-hero-card img{position:relative!important;inset:auto!important;width:100%!important;height:auto!important;object-fit:fill!important;object-position:center!important;border-radius:8px}
@media(min-width:901px){.hp-prioritize .hp-section-grid{display:grid!important;grid-template-columns:.9fr 1.1fr!important;gap:56px!important;align-items:center}.hp-prioritize .hp-section-copy{max-width:none!important;padding:0!important;text-align:left!important}.hp-prioritize .hp-section-copy p{margin:0 0 22px!important;max-width:520px!important;text-align:left!important}.hp-prioritize .hp-section-copy h2{text-align:left!important}.hp-prioritize{padding:80px 0}}
.hp-wide-measure{flex-direction:column!important;justify-content:center;align-items:stretch!important;min-height:0!important;padding:70px 0 0}
.hp-wide-measure .hp-wide-inner{width:min(1180px,calc(100% - 40px));margin:0 auto}
.hp-wide-measure .fo-measure-vis{width:min(1100px,calc(100% - 40px));margin:30px auto 0}
.fo-kpi{min-width:0}
.fo-kpis{grid-template-columns:1fr!important}.fo-kpi b{font-size:40px}
.hp-wide-measure{padding-top:0}.hp-wide-measure .hp-wide-inner .hp-section-copy{padding:50px 0 0!important}.hp-wide-measure .hp-wide-inner{min-height:0!important}
/* ====== Scènes illustrées (Detect / Prioritize / Execute) ====== */
.fo-scene{position:relative;container-type:inline-size;width:100%;max-width:600px;margin:0 auto;aspect-ratio:560/440;filter:drop-shadow(0 30px 40px rgba(11,31,74,.14))}
.fo-scene>svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.sc-chip{position:absolute;display:inline-flex;align-items:center;gap:1.4cqw;padding:1.5cqw 2.6cqw;border-radius:99px;background:#fff;color:#0b1f4a;font-size:2.5cqw;font-weight:800;white-space:nowrap;box-shadow:0 12px 24px -10px rgba(11,31,74,.35);opacity:0;transform:translateY(14px) scale(.9);transition:opacity .6s,transform .7s cubic-bezier(.2,.9,.3,1.3)}
.sc-chip b{font-weight:800}.sc-chip .dot{width:1.9cqw;height:1.9cqw;border-radius:50%;background:currentColor;animation:scDot 1.5s infinite}
.c-blue{color:#0969f8}.c-blue>span{color:#0b1f4a}.c-red{color:#e5384f;border:1.5px solid #ffc9d0}.c-red b{color:#0b1f4a}.c-amber{border:1.5px solid #ffe2a1;color:#b87900}.c-green{color:#0e9f6e;border:1.5px solid #bdf0da}
@keyframes scDot{50%{opacity:.25;transform:scale(1.5)}}
.fo-scene.is-live .sc-chip{opacity:1;transform:none}
.fo-scene.is-live .sc-chip:nth-of-type(1){transition-delay:.4s}.fo-scene.is-live .sc-chip:nth-of-type(2){transition-delay:2s}.fo-scene.is-live .sc-chip:nth-of-type(3){transition-delay:3.2s}.fo-scene.is-live .sc-chip:nth-of-type(4){transition-delay:4.2s}
/* Detect */
.fo-sc-detect .gap{fill:#fff1f3;stroke:#ff5f6d;stroke-width:2.5;stroke-dasharray:6 5;animation:scGap 1.6s infinite;opacity:0}
.fo-sc-detect.is-live .gap{opacity:1}
@keyframes scGap{50%{fill:#ffd9de}}
.fo-sc-detect .scan{transform:translateX(-100px);opacity:0}
.fo-sc-detect.is-live .scan{animation:scScan 5s .3s ease-in-out infinite}
@keyframes scScan{0%{transform:translateX(-100px);opacity:0}10%{opacity:1}90%{opacity:1}100%{transform:translateX(560px);opacity:0}}
/* Prioritize */
.fo-sc-prio .route{stroke-dashoffset:100;stroke-dasharray:100}
.fo-sc-prio.is-live .route{animation:scRoute 2.4s .6s ease forwards;stroke-dasharray:8 9}
.fo-sc-prio .route{stroke-dasharray:100;stroke-dashoffset:100}
@keyframes scRoute{to{stroke-dashoffset:0}}
.fo-sc-prio .pin{opacity:0;transform-box:fill-box;transform-origin:50% 100%;transform:translateY(-24px)}
.fo-sc-prio.is-live .pin{animation:scPin .7s var(--d) cubic-bezier(.2,.9,.3,1.4) forwards}
@keyframes scPin{to{opacity:1;transform:none}}.fo-sc-prio .pin.dim{opacity:.0}
.rank{position:absolute;right:3%;bottom:5%;width:50%;padding:2.6cqw;border-radius:2.6cqw;background:#fff;border:1px solid #f1e3bd;box-shadow:0 18px 34px -16px rgba(120,90,10,.35);opacity:0;transform:translateY(18px);transition:.8s 1.6s}
.fo-sc-prio.is-live .rank{opacity:1;transform:none}
.rank h4{margin:0 0 1.8cqw;font-size:2.6cqw;color:#0b1f4a}
.rk{display:grid;grid-template-columns:1fr auto;gap:.6cqw 1.5cqw;margin-bottom:1.8cqw;font-size:2.3cqw}.rk b{color:#0b1f4a}.rk em{font-style:normal;font-weight:800;font-size:2cqw;padding:.3cqw 1.4cqw;border-radius:99px}
.t-red{background:#ffe4e8;color:#d62b45}.t-amber{background:#fff0cc;color:#a56a00}
.rk u{grid-column:1/-1;display:block;height:1.2cqw;border-radius:9px;background:#f1f3f8;overflow:hidden}.rk s{display:block;height:100%;width:0;border-radius:9px;background:linear-gradient(90deg,#0969f8,#31c7eb);transition:width 1.2s 2.2s cubic-bezier(.2,.8,.2,1)}
.fo-sc-prio.is-live .rk s{width:var(--w)}
/* Execute */
.fo-sc-exec{display:flex;align-items:center;justify-content:center}
.ex-card{position:relative;width:92%;padding:3.4cqw;border-radius:3.4cqw;background:#fff;border:1px solid #d6efe5;box-shadow:0 30px 50px -24px rgba(20,120,90,.4)}
.ex-head{display:flex;justify-content:space-between;align-items:center}.ex-head small{display:block;color:#5b6b84;font-size:2.2cqw;font-weight:700}.ex-head b{font-size:3.4cqw;color:#0b1f4a}
.ex-pill{padding:1cqw 2.2cqw;border-radius:99px;background:#e5faf1;color:#0e9f6e;font-size:2.2cqw;font-weight:800}
.ex-bar{height:1.5cqw;margin:2.4cqw 0;border-radius:9px;background:#e9f3ef;overflow:hidden}.ex-bar s{display:block;height:100%;width:0;background:linear-gradient(90deg,#20c787,#31c7eb);border-radius:9px}
.fo-sc-exec.is-live .ex-bar s{animation:scBar 4.5s .6s ease forwards}@keyframes scBar{to{width:100%}}
.ex-body{display:grid;grid-template-columns:1.2fr 1fr;gap:3cqw;align-items:center}
.ex-body ul{list-style:none;margin:0;padding:0;display:grid;gap:2.2cqw}
.ex-body li{display:flex;align-items:center;gap:2cqw;font-size:2.6cqw;font-weight:700;color:#0b1f4a}
.ex-body li i{flex:0 0 4.2cqw;width:4.2cqw;height:4.2cqw;border-radius:50%;border:2px solid #cfe0d9;display:grid;place-items:center;transition:.4s}
.ex-body li i svg{width:70%;height:70%;fill:none;stroke:#fff;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:20;stroke-dashoffset:20;transition:stroke-dashoffset .5s}
.fo-sc-exec.is-live li i{background:#20c787;border-color:#20c787;transition-delay:calc(.8s + var(--n)*1.1s)}.fo-sc-exec.is-live li i svg{stroke-dashoffset:0;transition-delay:calc(1s + var(--n)*1.1s)}
.ex-photo{position:relative;border-radius:2.2cqw;overflow:hidden;box-shadow:0 10px 24px -12px rgba(11,31,74,.4)}.ex-photo svg{display:block;width:100%;height:auto}
.ex-photo .flash{position:absolute;inset:0;background:#fff;opacity:0}.fo-sc-exec.is-live .flash{animation:scFlash 6s 3.4s infinite}@keyframes scFlash{0%,6%,100%{opacity:0}2%{opacity:.9}}
.ex-photo .cam{position:absolute;right:1.6cqw;bottom:1.6cqw;width:5cqw;height:5cqw;padding:1cqw;border-radius:50%;background:#0969f8}.cam svg{width:100%;height:100%;fill:none;stroke:#fff;stroke-width:2;stroke-linejoin:round}
.ex-chip{right:2%;bottom:-3%;left:auto}
/* mise en page des sections */
.hp-wide-detect,.hp-wide-execute{background-image:none!important;min-height:0!important}
.hp-wide-detect{background:linear-gradient(180deg,#f3f8ff,#fff)!important}.hp-wide-execute{background:#effcf8!important}
.hp-wide-detect:after,.hp-wide-execute:after{display:none!important}
@media(min-width:901px){
  .hp-wide-detect .hp-wide-inner,.hp-wide-execute .hp-wide-inner{display:grid!important;grid-template-columns:.9fr 1.1fr;gap:56px;align-items:center;min-height:0!important;padding:84px 0}
  .hp-wide-detect .hp-section-copy,.hp-wide-execute .hp-section-copy{width:auto!important;max-width:none!important;padding:0!important;text-align:left!important}
  .hp-wide-detect .hp-section-copy p,.hp-wide-execute .hp-section-copy p{margin-left:0!important;text-align:left}
  .hp-wide-detect .hp-benefits,.hp-wide-execute .hp-benefits{justify-content:flex-start!important}
  .hp-prioritize .hp-section-grid{grid-template-columns:1.1fr .9fr!important}.hp-prioritize .fo-scene{order:-1}
}
@media(max-width:900px){.fo-scene{margin-top:26px;max-width:520px}.hp-wide-detect .hp-wide-inner,.hp-wide-execute .hp-wide-inner{padding-bottom:50px}}
@media(prefers-reduced-motion:reduce){.fo-scene *{animation:none!important;transition:none!important}.fo-scene .sc-chip,.fo-scene .pin:not(.dim),.fo-scene .rank,.fo-scene .gap{opacity:1!important;transform:none!important}.fo-sc-prio .route{stroke-dashoffset:0}.fo-sc-prio .rk s{width:var(--w)}.fo-sc-exec .ex-bar s{width:100%}.fo-sc-exec li i{background:#20c787}.fo-sc-exec li i svg{stroke-dashoffset:0}}
.ex-chip{bottom:auto!important;top:70%;right:1%!important}
/* page Plateforme : scènes */
.pf-scenes{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin:36px 0 30px}
.pf-scene{margin:0;text-align:center}.pf-scene .fo-scene{filter:drop-shadow(0 18px 24px rgba(11,31,74,.12))}
.pf-scene figcaption{margin-top:14px;color:#5d6b84;font-size:14px;line-height:1.5}.pf-scene figcaption b{display:block;margin-bottom:3px;color:#10234d;font-size:18px}
@media(max-width:900px){.pf-scenes{grid-template-columns:1fr}.pf-scene .fo-scene{max-width:480px}}
.pf-scene .fo-scene{text-align:left}
/* ---- Hero mobile : image plein cadre, sans vide à gauche ---- */
.hp-hero-art img{animation:none!important}
@media(max-width:980px){
  .hp-hero-art{left:0!important;right:0!important;width:100%!important;border-radius:0!important}
  .hp-hero-art>img:first-child{object-position:52% 40%!important}
  .hp-slider-dots{display:none!important}
  .hp-story-pills{top:auto!important;bottom:12px!important;right:10px!important;left:10px!important;display:grid!important;grid-template-columns:1fr 1fr;gap:7px}
  .hp-story-pill{width:auto!important;transform:none!important}
}
@media(max-width:980px){
  .hp-hero-art{left:calc(50% - 50vw)!important;right:calc(50% - 50vw)!important;width:auto!important}
  .hp-story-pill{font-size:11.5px!important;padding:6px 8px!important;gap:6px!important;line-height:1.15}
  .hp-story-pill i{flex:0 0 22px;width:22px!important;height:22px!important}
}
@media(min-width:521px) and (max-width:980px){.hp-hero-art{top:385px!important}.hp-hero-grid{min-height:820px!important}}
/* ====== Scènes page Plateforme ====== */
.pf-split .fo-scene,.pf-config-layout .fo-scene{max-width:620px}
.fo-sc-mgr,.fo-sc-promo,.fo-sc-cfg,.fo-sc-phone{display:flex;align-items:center;justify-content:center}
.mg-card,.pr-card,.cf-card{position:relative;width:94%;padding:3.2cqw;border-radius:3cqw;background:#fff;border:1px solid #dfe8f4;box-shadow:0 30px 50px -26px rgba(11,31,74,.35)}
.mg-top{display:flex;justify-content:space-between;align-items:center;font-size:2.8cqw;color:#0b1f4a}.mg-live{display:inline-flex;align-items:center;gap:1cqw;font-size:2.2cqw;font-weight:800;color:#0e9f6e}.mg-live i{width:1.6cqw;height:1.6cqw;border-radius:50%;background:#20c787;animation:scDot 1.4s infinite}
.mg-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:2cqw;margin:2.4cqw 0}.mg-kpis div{padding:1.8cqw 2cqw;border-radius:2cqw;background:#f4f8ff}.mg-kpis b{display:block;font-size:5cqw;color:#0969f8;line-height:1}.mg-kpis span{font-size:2.1cqw;color:#5d6b84;font-weight:700}
.mg-hours{display:grid;grid-template-columns:5cqw 1fr;margin-bottom:1cqw;font-size:1.9cqw;color:#8a97ad;font-weight:700}.mg-hours div{display:flex;justify-content:space-between}
.mg-row{display:grid;grid-template-columns:5cqw 1fr;align-items:center;margin-bottom:1.6cqw}.mg-row em{font-style:normal;display:grid;place-items:center;width:4cqw;height:4cqw;border-radius:50%;background:#e6efff;color:#0969f8;font-size:1.7cqw;font-weight:800}
.mg-track{position:relative;height:5.2cqw;border-radius:1.4cqw;background:repeating-linear-gradient(90deg,#f4f7fc 0 24.9%,#e8eef8 25% 25.3%)}
.b{position:absolute;top:0;height:100%;display:grid;place-items:center;border-radius:1.2cqw;font-size:1.8cqw;font-weight:800;color:#fff;overflow:hidden;white-space:nowrap;opacity:0;transform:scaleX(.2);transform-origin:left}
.b.done{background:#20c787}.b.prog{background:#0969f8}.b.plan{background:#b9c4d9;color:#3b4a66}
.fo-sc-mgr.is-live .b{animation:mgIn .6s calc(.6s + var(--n)*.22s) cubic-bezier(.2,.9,.3,1.2) forwards}@keyframes mgIn{to{opacity:1;transform:none}}
.mg-now{position:absolute;top:30%;bottom:4%;left:calc(3.2cqw + 5cqw);width:.5cqw;background:#ff5f6d;border-radius:9px;opacity:0}
.fo-sc-mgr.is-live .mg-now{animation:mgNow 4s 1.2s ease forwards}@keyframes mgNow{0%{opacity:1;transform:translateX(0)}100%{opacity:1;transform:translateX(41cqw)}}
.ph{position:relative;width:36cqw;height:97%;padding:2.4cqw;border-radius:5cqw;background:#fff;border:.7cqw solid #0b1f4a;box-shadow:0 30px 50px -22px rgba(11,31,74,.5)}
.ph-notch{width:30%;height:1.6cqw;margin:0 auto 2cqw;border-radius:9px;background:#0b1f4a}.ph-head small{display:block;color:#5d6b84;font-size:2cqw;font-weight:700}.ph-head b{display:block;font-size:3.6cqw;color:#0b1f4a;margin-bottom:1.8cqw}
.ph-card{display:flex;align-items:center;gap:1.6cqw;padding:1.7cqw;margin-bottom:1.5cqw;border-radius:2cqw;background:#f4f8ff;opacity:0;transform:translateY(16px)}.ph-card b{display:block;font-size:2.3cqw;color:#0b1f4a}.ph-card small{font-size:1.8cqw;color:#5d6b84;font-weight:700}
.np{flex:0 0 4cqw;width:4cqw;height:4cqw;display:grid;place-items:center;border-radius:50%;font-style:normal;font-weight:800;font-size:2cqw}.np.t-red{background:#ff5f6d;color:#fff}.np.t-amber{background:#ffb51b;color:#fff}
.fo-sc-phone.is-live .ph-card{animation:phIn .6s calc(.7s + var(--n)*.5s) ease forwards}@keyframes phIn{to{opacity:1;transform:none}}
.ph-btn{position:absolute;left:2.4cqw;right:2.4cqw;bottom:2.6cqw;padding:2cqw;border-radius:99px;background:#0969f8;color:#fff;text-align:center;font-size:2.4cqw;font-weight:800}.fo-sc-phone.is-live .ph-btn{animation:phBtn 2s 2.6s infinite}@keyframes phBtn{50%{box-shadow:0 0 0 1.4cqw rgba(9,105,248,.2)}}
.pr-card{display:grid;grid-template-columns:.8fr 1.3fr;gap:3cqw;align-items:center;border-color:#e5defa}
.pr-ring{position:relative;text-align:center}.pr-ring svg{width:100%;display:block}.pr-ring b{position:absolute;left:0;right:0;top:34%;font-size:6.4cqw;color:#7957e8;line-height:1}.pr-ring small{position:absolute;left:0;right:0;top:56%;font-size:1.9cqw;color:#5d6b84;font-weight:700;padding:0 4cqw}
.pr-ring .arc{stroke-dasharray:314;stroke-dashoffset:314}.fo-sc-promo.is-live .arc{animation:prArc 2s .6s cubic-bezier(.2,.8,.2,1) forwards}@keyframes prArc{to{stroke-dashoffset:88}}
.pr-card ul{list-style:none;margin:0;padding:0;display:grid;gap:2.4cqw}.pr-card li{display:grid;grid-template-columns:1fr auto;gap:.8cqw 1.4cqw;font-size:2.2cqw}.pr-card li b{color:#0b1f4a}
.tg{display:flex;gap:.7cqw}.tg i{font-style:normal;padding:.3cqw 1.1cqw;border-radius:99px;background:#eef1f7;color:#8a97ad;font-size:1.7cqw;font-weight:800;transition:.4s}
.fo-sc-promo.is-live .tg i{background:#d9f7ea;color:#0e9f6e;transition-delay:calc(1.2s + var(--n,0)*.5s + var(--k)*.3s)}.pr-card li:nth-child(1){--n:0}.pr-card li:nth-child(2){--n:1}.pr-card li:nth-child(3){--n:2}
.pr-card li u{grid-column:1/-1;height:1.3cqw;border-radius:9px;background:#f1ecff;overflow:hidden;display:block}.pr-card li s{display:block;height:100%;width:0;background:linear-gradient(90deg,#7957e8,#0969f8);border-radius:9px;transition:width 1.3s 1.2s cubic-bezier(.2,.8,.2,1)}.fo-sc-promo.is-live li s{width:var(--w)}
.cf-card h4{margin:0 0 2.4cqw;font-size:3cqw;color:#0b1f4a}.cf-row{display:flex;justify-content:space-between;align-items:center;padding:2cqw 0;border-top:1px solid #edf1f8;font-size:2.6cqw;font-weight:700;color:#0b1f4a}
.sw{position:relative;width:8cqw;height:4.2cqw;border-radius:99px;background:#d5deec;transition:background .4s}.sw i{position:absolute;left:.5cqw;top:.5cqw;width:3.2cqw;height:3.2cqw;border-radius:50%;background:#fff;box-shadow:0 2px 6px rgba(0,0,0,.2);transition:transform .4s}
.fo-sc-cfg.is-live .sw{background:#0969f8;transition-delay:calc(.7s + var(--n)*.5s)}.fo-sc-cfg.is-live .sw i{transform:translateX(3.8cqw);transition-delay:calc(.7s + var(--n)*.5s)}
.fo-sc-mgr.is-live .sc-chip:nth-of-type(1){transition-delay:3s}.fo-sc-mgr.is-live .sc-chip:nth-of-type(2){transition-delay:3.6s}
.fo-sc-phone.is-live .sc-chip:nth-of-type(1){transition-delay:1s}.fo-sc-phone.is-live .sc-chip:nth-of-type(2){transition-delay:2s}.fo-sc-phone.is-live .sc-chip:nth-of-type(3){transition-delay:3s}
.fo-sc-promo.is-live .sc-chip:nth-of-type(1){transition-delay:2.6s}.fo-sc-promo.is-live .sc-chip:nth-of-type(2){transition-delay:3.4s}.fo-sc-cfg.is-live .sc-chip{transition-delay:4s}
@media(prefers-reduced-motion:reduce){.fo-scene .b,.fo-scene .ph-card{opacity:1!important;transform:none!important}.fo-sc-promo .arc{stroke-dashoffset:88}.fo-sc-cfg .sw{background:#0969f8}.fo-sc-cfg .sw i{transform:translateX(3.8cqw)}.fo-sc-promo .tg i{background:#d9f7ea}.fo-sc-promo li s{width:var(--w)}}
/* ====== Barre démo fixe (mobile) ====== */
.fo-sticky-cta{position:fixed;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px));z-index:45;display:none;align-items:center;justify-content:center;gap:8px;padding:14px 18px;border-radius:99px;background:linear-gradient(120deg,#0969f8,#4f7bff);color:#fff;font:800 15px Inter,Arial,sans-serif;text-decoration:none;box-shadow:0 18px 34px -10px rgba(9,105,248,.6);transform:translateY(130%);transition:transform .45s cubic-bezier(.2,.8,.2,1)}
.fo-sticky-cta.is-on{transform:none}
@media(max-width:760px){.fo-sticky-cta{display:flex}body{padding-bottom:0}}
.pr-card li{align-items:center}.tg{align-self:center}.tg i{align-self:center;white-space:nowrap}
/* =================== HERO PLATEFORME =================== */
.fo-phero{position:relative;margin-top:-84px;padding:140px 0 70px;overflow:hidden;color:#fff;background:#071230}
.fo-phero-bg{position:absolute;inset:0;pointer-events:none}.fo-phero-bg .g1,.fo-phero-bg .g2{position:absolute;border-radius:50%;filter:blur(70px)}
.fo-phero-bg .g1{width:760px;height:760px;left:-12%;top:-30%;background:radial-gradient(circle,rgba(9,105,248,.65),transparent 65%);animation:foDrift 14s ease-in-out infinite}
.fo-phero-bg .g2{width:700px;height:700px;right:-10%;top:10%;background:radial-gradient(circle,rgba(121,87,232,.5),transparent 65%);animation:foDrift 17s -5s ease-in-out infinite reverse}
.fo-phero-bg span{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px);background-size:56px 56px;-webkit-mask:radial-gradient(ellipse at 50% 30%,#000 10%,transparent 72%);mask:radial-gradient(ellipse at 50% 30%,#000 10%,transparent 72%)}
@keyframes foDrift{50%{transform:translate(60px,40px) scale(1.12)}}
.fo-phero-head{position:relative;z-index:2;text-align:center;max-width:900px}
.fo-pkicker{display:inline-block;padding:7px 16px;border-radius:99px;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.07);color:#9fc2ff;font-size:12.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.fo-phero h1{margin:20px 0 18px;color:#fff;font-size:clamp(40px,6vw,72px);line-height:1.02;letter-spacing:-.045em}
.fo-phero h1 em{font-style:normal;background:linear-gradient(90deg,#5aa2ff,#31c7eb 45%,#a98bff);-webkit-background-clip:text;background-clip:text;color:transparent}
.fo-phero p{max-width:720px;margin:0 auto;color:#b9c8e6;font-size:18px;line-height:1.6}
.fo-pactions{display:flex;justify-content:center;flex-wrap:wrap;gap:14px;margin-top:30px}
.fo-pbtn{display:inline-flex;align-items:center;padding:15px 26px;border-radius:15px;font-weight:800;font-size:15px;text-decoration:none;transition:transform .25s,box-shadow .25s,background .25s}
.fo-pbtn.main{color:#0b1f4a;background:#fff;box-shadow:0 18px 36px -14px rgba(255,255,255,.4)}.fo-pbtn.ghost{color:#fff;border:1px solid rgba(255,255,255,.28);background:rgba(255,255,255,.07)}
.fo-pbtn:hover{transform:translateY(-3px)}.fo-pbtn.ghost:hover{background:rgba(255,255,255,.16)}
.fo-phero-stage{position:relative;z-index:2;width:min(1180px,calc(100% - 40px));margin:54px auto 0;perspective:1800px}
.fo-ptabs{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin-bottom:26px}
.fo-ptabs button{position:relative;overflow:hidden;padding:11px 20px;border-radius:99px;border:1px solid rgba(255,255,255,.16);background:rgba(255,255,255,.05);color:#b9c8e6;font:700 14px Inter,Arial,sans-serif;cursor:pointer;transition:all .3s}
.fo-ptabs button:hover{color:#fff;background:rgba(255,255,255,.11)}.fo-ptabs button.on{color:#fff;background:rgba(255,255,255,.15);border-color:rgba(255,255,255,.35)}
.fo-ptabs button:after{content:"";position:absolute;left:0;bottom:0;height:3px;width:0;background:linear-gradient(90deg,#5aa2ff,#a98bff)}
.fo-ptabs button.on.run:after{animation:foPTab 5.2s linear forwards}@keyframes foPTab{to{width:100%}}
.fo-phero-stage.paused .fo-ptabs button.on:after{animation-play-state:paused}
.fo-pdev{position:relative;padding:9px;border-radius:24px;background:linear-gradient(150deg,#2b4a8c,#101f48 60%);box-shadow:0 60px 130px -30px rgba(9,105,248,.65),0 0 0 1px rgba(255,255,255,.14);opacity:0;transform:rotateX(14deg) translateY(60px) scale(.94);transition:opacity 1s .2s,transform 1.5s .2s cubic-bezier(.2,.8,.2,1)}
.fo-phero.is-live .fo-pdev{opacity:1;transform:rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg))}
.fo-pbar{display:flex;align-items:center;gap:7px;height:34px;padding:0 14px;border-radius:15px 15px 0 0;background:#eef3fb}.fo-pbar i{width:10px;height:10px;border-radius:50%;background:#ff6b6b}.fo-pbar i:nth-child(2){background:#ffc041}.fo-pbar i:nth-child(3){background:#2ecf8a}.fo-pbar span{margin-left:14px;padding:3px 18px;border-radius:9px;background:#fff;color:#5d6b84;font-size:12px;font-weight:600}
.fo-pscreen{position:relative;aspect-ratio:2.1/1;border-radius:0 0 15px 15px;overflow:hidden;background:#fff}
.fo-pscreen img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top left;opacity:0;transform:scale(1.04);transition:opacity .7s ease,transform 1.4s cubic-bezier(.2,.8,.2,1)}
.fo-pscreen img.on{opacity:1;transform:none}
.fo-pscan{position:absolute;top:0;bottom:0;left:-30%;width:26%;background:linear-gradient(90deg,transparent,rgba(9,105,248,.2),transparent);pointer-events:none}
.fo-phero.is-live .fo-pscan{animation:foPScan 6s 1.5s ease-in-out infinite}@keyframes foPScan{0%{left:-30%}60%,100%{left:130%}}
.fo-pcap{position:relative;min-height:30px;margin:26px auto 0;text-align:center;color:#cfdcf5;font-size:17px;font-weight:600}.fo-pcap .cap{display:none}.fo-pcap .cap.on{display:block;animation:foCap .6s ease}@keyframes foCap{from{opacity:0;transform:translateY(8px)}}
.fo-pfloat{position:absolute;z-index:3;display:flex;align-items:center;gap:9px;padding:13px 17px;border-radius:16px;background:rgba(255,255,255,.95);color:#0b1f4a;box-shadow:0 22px 40px -16px rgba(0,0,0,.55);opacity:0;animation:foPF 6s ease-in-out infinite}
.fo-phero.is-live .fo-pfloat{opacity:1;transition:opacity .8s 1.4s}
.fo-pfloat b{font-size:14.5px;font-weight:800}.fo-pfloat small{display:block;font-size:12px;color:#5d6b84;font-weight:700}
.fo-pfloat.f2,.fo-pfloat.f3{flex-direction:column;align-items:flex-start;gap:2px}.fo-pfloat.f2 b,.fo-pfloat.f3 b{font-size:26px;line-height:1;color:#0969f8}
.fo-pfloat .dot{width:10px;height:10px;border-radius:50%;animation:scDot 1.6s infinite}.dot.g{background:#20c787}.dot.b{background:#0969f8}.dot.p{background:#7957e8}
.fo-pfloat.f1{left:-3.5%;top:30%}.fo-pfloat.f2{right:-3%;top:20%;animation-delay:-1.5s}.fo-pfloat.f3{left:-2%;top:62%;animation-delay:-3s}.fo-pfloat.f4{right:-2.5%;top:52%;animation-delay:-2s}.fo-pfloat.f5{left:30%;top:97%;animation-delay:-4s}
@keyframes foPF{50%{translate:0 -12px}}
@media(max-width:1260px){.fo-pfloat.f1{left:-1%}.fo-pfloat.f2{right:-1%}.fo-pfloat.f3{left:0}.fo-pfloat.f4{right:-1%}}
@media(max-width:900px){.fo-pfloat{display:none}.fo-phero{padding:120px 0 50px}.fo-ptabs{flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;padding-bottom:6px;scrollbar-width:none}.fo-ptabs button{flex:0 0 auto}.fo-pscreen{aspect-ratio:1.35/1}.fo-pscreen img{object-position:0 0}.fo-phero p{font-size:16px}}
@media(prefers-reduced-motion:reduce){.fo-phero *{animation:none!important}.fo-pdev,.fo-pfloat{opacity:1!important;transform:none!important}}

/* =================== NAVIGATION SIMPLE (non figée, sans fond) =================== */
.hp-nav{position:relative!important;top:auto!important;z-index:60;width:100%;margin:0!important;border:0!important;border-radius:0!important;background:transparent!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;box-shadow:none!important}
.hp-nav .hp-nav-inner{width:min(1180px,calc(100% - 40px))!important;max-width:none!important;margin:0 auto!important;min-height:76px!important;padding:0!important;gap:14px}
.hp-brand{gap:10px!important}.hp-brand img{width:34px!important;height:34px!important;border-radius:0;box-shadow:none}
.hp-brand span{font-size:20px;font-weight:800;letter-spacing:-.03em;color:#0b1f4a}.hp-brand span b{color:#0969f8;font-weight:800}.hp-brand span em{margin-left:5px;padding:0;background:none;box-shadow:none;font-style:normal;font-size:inherit;font-weight:600;letter-spacing:-.02em;color:#8b98b0}
@media(min-width:981px){
.hp-nav .hp-links{display:flex;gap:4px;margin:0 auto;padding:0;background:none;border:0}
.hp-nav .hp-links a{position:relative;padding:9px 15px;border-radius:0;background:none!important;font-size:15px;font-weight:600;color:#3b4a66;transition:color .2s}
.hp-nav .hp-links a:after{content:"";position:absolute;left:15px;right:15px;bottom:2px;height:2px;border-radius:2px;background:#0969f8;transform:scaleX(0);transition:transform .25s}
.hp-nav .hp-links a:hover,.hp-nav .hp-links a.active{color:#0969f8}.hp-nav .hp-links a:hover:after,.hp-nav .hp-links a.active:after{transform:scaleX(1)}
.hp-nav .hp-links a.hp-mobile-link{display:none}}
.fo-nav-ind{display:none!important}
.hp-nav .hp-actions{display:flex;align-items:center;gap:6px}
.hp-lang{display:inline-flex!important;padding:0!important;background:none!important;border:0!important;border-radius:0!important}
.hp-lang button{border:0!important;background:none!important;padding:4px 9px!important;border-radius:0!important;font-size:13px!important;font-weight:700!important;color:#9aa6bc!important;cursor:pointer;box-shadow:none!important}
.hp-lang button+button{border-left:1px solid #d9e1ef!important}.hp-lang button.active{color:#0969f8!important}
.hp-nav .hp-login{padding:9px 12px;border:0;background:none;box-shadow:none;font-size:15px;font-weight:600;color:#3b4a66}.hp-nav .hp-login:before{display:none}.hp-nav .hp-login:hover{color:#0969f8;transform:none}
.hp-nav .hp-actions .hp-btn.primary{margin-left:8px;padding:11px 22px;border-radius:99px;border:0;background:#0969f8;color:#fff;font-size:14.5px;font-weight:700;box-shadow:0 10px 22px -12px rgba(9,105,248,.8);transition:background .2s,transform .2s}
.hp-nav .hp-actions .hp-btn.primary:before,.hp-nav .hp-actions .hp-btn.primary:after{display:none}.hp-nav .hp-actions .hp-btn.primary:hover{background:#0757d0;transform:translateY(-1px)}
.hp-menu{width:40px;height:40px;border:0!important;background:none!important;border-radius:10px!important;font-size:24px;color:#0b1f4a}
@media(max-width:980px){
  .hp-nav .hp-nav-inner{position:relative;min-height:64px!important}
  .hp-nav .hp-links{top:100%!important;left:0!important;right:0!important;padding:8px!important;border:1px solid #e8edf5!important;border-radius:16px!important;background:#fff!important;box-shadow:0 24px 44px -22px rgba(11,31,74,.35)!important}
  .hp-nav .hp-links a{padding:13px 14px;border-radius:10px;font-weight:600;color:#3b4a66}.hp-nav .hp-links a:after{display:none}.hp-nav .hp-links a.active{background:#eef4ff;color:#0969f8}
}
@media(max-width:900px){.hp-nav .hp-login{display:none!important}.hp-nav .hp-actions{margin-left:auto}}
@media(max-width:820px){.hp-nav .hp-actions .hp-btn.primary{display:none}}
@media(max-width:430px){.hp-nav .hp-nav-inner{width:calc(100% - 24px)!important;gap:4px}.hp-brand span{font-size:18px}}
/* hero plateforme : plus de chevauchement avec le menu */
.fo-phero{margin-top:0!important;padding-top:84px!important}
@media(max-width:900px){.fo-phero{padding-top:64px!important}}
@media(max-width:980px){.hp-nav .hp-links a.hp-mobile-demo{background:#0969f8!important;color:#fff!important;text-align:center;font-weight:700;margin-top:4px}}
/* ---- Bouton retour en haut ---- */
.fo-totop{position:fixed;right:20px;bottom:calc(20px + env(safe-area-inset-bottom,0px));z-index:70;width:48px;height:48px;padding:0;border:0;border-radius:50%;background:#fff;color:#0b1f4a;cursor:pointer;display:grid;place-items:center;box-shadow:0 12px 28px -10px rgba(11,31,74,.4),0 0 0 1px rgba(11,31,74,.06);opacity:0;transform:translateY(16px) scale(.9);pointer-events:none;transition:opacity .3s,transform .3s cubic-bezier(.2,.8,.2,1),background .2s,color .2s}
.fo-totop.is-on{opacity:1;transform:none;pointer-events:auto}
.fo-totop:hover{background:#0969f8;color:#fff;transform:translateY(-3px)}
.fo-totop:focus-visible{outline:3px solid rgba(9,105,248,.45);outline-offset:3px}
.fo-totop svg{grid-area:1/1;width:48px;height:48px}.fo-totop .ring{fill:none;stroke:#0969f8;stroke-width:2.5;stroke-linecap:round;stroke-dasharray:132;stroke-dashoffset:132;transform:rotate(-90deg);transform-origin:50% 50%;transition:stroke-dashoffset .15s}
.fo-totop:hover .ring{stroke:#fff}
.fo-totop .arr{grid-area:1/1;width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:760px){.fo-totop{right:14px;bottom:calc(78px + env(safe-area-inset-bottom,0px));width:44px;height:44px}.fo-totop svg:first-child{width:44px;height:44px}}
@media(prefers-reduced-motion:reduce){.fo-totop{transition:none}}
/* captures retravaillées : cadre 2.2/1, centrées */
.fo-pscreen{aspect-ratio:2.2/1;background:#e6efff}
.fo-pscreen img{object-fit:cover;object-position:center}
@media(max-width:900px){.fo-pscreen{aspect-ratio:1.6/1}.fo-pscreen img{object-fit:contain;object-position:center}}
.fo-phero{overflow:hidden;overflow:clip!important}
/* fix : la page ne doit jamais glisser horizontalement (clic sur une ancre) */
main,main.pf{overflow-x:clip!important}
.fo-ptabs button{padding:10px 16px;font-size:13.5px}.fo-ptabs{gap:7px}
