/* LegalFlow — système Insyder partagé pour toutes les pages satellites. */
:root{--ink:#171512!important;--paper:#f5f1ea!important;--cream:#f5f1ea!important;--sheet:#fffdf9!important;--soft:#ece5d9!important;--ivory:#f5f1ea!important;--muted:#716b64!important;--gray:#716b64!important;--line:rgba(23,21,18,.13)!important;--line-soft:rgba(23,21,18,.08)!important;--gold:#1e6b47!important;--accent:#1e6b47!important;--accent-ink:#171512!important;--forest:#171512!important;--green:#171512!important;--green-2:#211e1b!important;--radius-card:18px!important;--radius-panel:18px!important;--radius-small:12px!important;--radius-pill:12px!important;color-scheme:light!important}
*{box-shadow:none!important}html,body{background:var(--paper)!important;color:var(--ink)!important}body{font-family:Geist,Arial,sans-serif!important;color:var(--ink)!important}a{color:inherit;text-decoration:none}::selection{background:var(--ink);color:var(--paper)}
/* Même navigation flottante que la home. */
.nav-wrap{position:sticky!important;z-index:50!important;top:14px!important;left:auto!important;width:min(calc(100% - 32px),890px)!important;margin:14px auto -73px!important;padding:9px 10px 9px 18px!important;border:1px solid var(--line)!important;border-radius:14px!important;background:rgba(245,241,234,.88)!important;backdrop-filter:blur(18px)!important;box-shadow:none!important}.nav-wrap:after{display:none!important}.nav{width:100%!important;min-height:40px!important;display:flex!important;align-items:center!important;gap:20px!important}.nav .brand{color:var(--ink)!important;font-size:15px!important;font-weight:760!important;letter-spacing:-.05em!important}.nav .brand img{width:28px!important;height:28px!important}.nav-links,.nav-actions{display:flex!important;gap:18px!important;margin-left:auto!important}.nav-links a,.nav-actions a,.nav a{color:var(--muted)!important;font-size:12px!important}.nav-links a:hover,.nav-actions a:hover,.nav a:hover{color:var(--ink)!important}.nav .button,.nav .btn,.nav-actions .button{padding:10px 13px!important;border:1px solid var(--ink)!important;border-radius:10px!important;background:var(--ink)!important;color:var(--paper)!important;font-size:11px!important}.footer,footer{background:var(--ink)!important;color:#aaa198!important;border:0!important;box-shadow:none!important}.footer a,footer a{color:#aaa198!important}.footer a:hover,footer a:hover{color:var(--paper)!important}
/* Hero : blanc chaud, centré, moins immense, même rythme que la home. */
main,main>div,main section,body>section{background:var(--paper)!important;color:var(--ink)!important}.page-hero,.diag-hero{position:relative!important;padding:160px 0 72px!important;text-align:center!important;background:var(--paper)!important;border:0!important;overflow:hidden}.page-hero:before,.diag-hero:before{content:''!important;position:absolute!important;z-index:0!important;left:50%!important;bottom:-250px!important;width:850px!important;height:440px!important;transform:translateX(-50%)!important;border-radius:50%!important;background:radial-gradient(ellipse at 45% 28%,rgba(30,107,71,.20),rgba(30,107,71,.08) 36%,rgba(245,241,234,0) 70%)!important;filter:blur(6px)!important}.page-hero>.shell,.diag-hero>.shell{position:relative!important;z-index:1!important}.page-hero .grid{display:block!important;max-width:830px!important;margin:0 auto!important}.page-hero-copy,.page-hero-meta{max-width:760px!important;margin-left:auto!important;margin-right:auto!important;text-align:center!important}.page-hero .eyebrow,.diag-hero .eyebrow,.diag-eyebrow{justify-content:center!important;color:var(--muted)!important}.page-hero h1,.diag-hero h1{max-width:850px!important;margin:18px auto 22px!important;color:var(--ink)!important;font-family:Geist,Arial,sans-serif!important;font-size:clamp(40px,4.7vw,68px)!important;font-weight:650!important;letter-spacing:-.075em!important;line-height:.96!important;text-align:center!important}.page-hero .lede,.diag-hero .lede{max-width:58ch!important;margin-left:auto!important;margin-right:auto!important;color:#514c46!important;text-align:center!important}.page-hero-meta{margin-top:20px!important;color:var(--muted)!important}.page-hero-meta .body-text{max-width:none!important;text-align:center!important}
/* Le fond réel des contenus reprend la luminosité et les surfaces douces du hero. */
h1,h2,h3,h4{font-family:Geist,Arial,sans-serif!important;color:var(--ink)!important;letter-spacing:-.065em!important}p,li,.body-text,.lede,.doc-body,.legal-note,.privacy-note,.fact-label{color:#514c46!important}.eyebrow,.diag-eyebrow,.kicker,.toc-label,.step-label{color:var(--muted)!important}.eyebrow:before,.kicker:before{background:currentColor!important}.doc-layout,.doc-section,.doc-body,.doc-grid,.doc-columns,.grid,.measures-grid,.measure,.note-strip,.fact-panel,.cta-panel,.diag-frame,.diag-section,.diag-step,.recap,.choice,.q,.field{background:transparent!important;box-shadow:none!important}.doc-layout{padding-top:90px!important}.doc-section,.doc-toc,.doc-toc a,.rights-list li,.measure,.fact-panel,.note-strip{border-color:var(--line)!important}.doc-section{border-top:1px solid var(--line)!important}.doc-toc a{color:var(--muted)!important}.doc-toc a:hover{color:var(--ink)!important}.cta-section{background:var(--soft)!important}.cta-panel,.fact-panel,.note-strip{border:1px solid var(--line)!important;border-radius:18px!important;background:rgba(255,255,255,.42)!important}
/* Boutons et formulaires : même contraste noir/ivoire que la home. */
.button,.btn,.primary,.button-primary,.cta-panel .button{background:var(--ink)!important;color:var(--paper)!important;border:1px solid var(--ink)!important;border-radius:10px!important;box-shadow:none!important}.button:hover,.btn:hover,.primary:hover,.button-primary:hover,.cta-panel .button:hover{background:transparent!important;color:var(--ink)!important;transform:translateY(-2px)!important}.ghost-link,.secondary,.btn.back{background:transparent!important;color:var(--ink)!important;border-color:var(--line)!important;box-shadow:none!important}input,textarea,select{background:transparent!important;color:var(--ink)!important;border-color:var(--line)!important;border-radius:0!important;box-shadow:none!important}input::placeholder,textarea::placeholder{color:#989087!important}input:focus,textarea:focus,select:focus{border-color:var(--ink)!important;outline:none!important;box-shadow:none!important}.choice,.radio,.check{border-color:var(--line)!important;background:rgba(255,255,255,.35)!important;color:#514c46!important}.choice.active,.choice:has(input:checked),.radio:has(input:checked),.check:has(input:checked){border-color:var(--ink)!important;background:#fffdf9!important;color:var(--ink)!important}
/* Documents et diagnostics : surfaces ivoire, angles doux et aucun vert résiduel. */
.app,.stage{background:var(--paper)!important}.masthead,.doc-head{border-color:var(--line)!important}.sheet{background:var(--sheet)!important;color:var(--ink)!important;border:1px solid var(--line)!important;border-radius:18px!important;box-shadow:none!important}.sheet p,.sheet .lead,.constat p,.prior-plate p{color:#514c46!important}.prior-plate{background:var(--ink)!important;color:var(--paper)!important;border-radius:18px!important}.prior-plate h2,.prior-plate p b{color:var(--paper)!important}.progress,.progress-wrap,.intro-index,.constat,.measure{border-color:var(--line)!important;background:transparent!important}.progress i{background:var(--gold)!important}
@media(max-width:820px){.nav-wrap{top:10px!important;margin:10px auto -68px!important}.nav{min-height:40px!important}.nav-links{display:none!important}.page-hero,.diag-hero{padding:130px 0 58px!important}.page-hero h1,.diag-hero h1{font-size:clamp(36px,10.2vw,52px)!important}.doc-layout{padding-top:65px!important}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}


/* Insyder, poussé jusqu'au bout : blanc pur, lumière, profondeur et mouvement. */
:root{--paper:#fff!important;--sheet:#fff!important;--soft:#fff!important;--ink:#111111!important;--muted:#6c6c73!important;--line:rgba(17,17,17,.13)!important;--gold:#1e6b47!important;--accent:#1e6b47!important}
html,body,main,main>div,main section,body>section{background:#fff!important}
body{overflow-x:hidden!important}
.nav-wrap{background:rgba(255,255,255,.78)!important;border-color:rgba(17,17,17,.12)!important;box-shadow:0 9px 34px rgba(41,24,58,.08)!important}
.nav .button,.nav .btn,.nav-actions .button{background:#111!important;color:#fff!important;border-color:#111!important;box-shadow:0 8px 20px rgba(17,17,17,.14)!important}
/* Chaque hero devient une scène lumineuse, pas une page blanche plate. */
.page-hero,.diag-hero{isolation:isolate!important;background:#fff!important}
.page-hero:before,.diag-hero:before{z-index:-2!important;bottom:-300px!important;width:min(1100px,100vw)!important;height:590px!important;background:radial-gradient(ellipse at 42% 32%,rgba(30,107,71,.22),rgba(30,107,71,.10) 32%,rgba(255,255,255,0) 70%)!important;filter:blur(10px)!important;animation:insyderGlow 9s ease-in-out infinite alternate!important}
.page-hero:after,.diag-hero:after{content:''!important;position:absolute!important;z-index:0!important;left:50%!important;bottom:-184px!important;width:min(720px,80vw)!important;height:242px!important;transform:translateX(-50%) perspective(700px) rotateX(59deg)!important;border:1px solid rgba(17,17,17,.17)!important;border-radius:20px 20px 0 0!important;background:linear-gradient(145deg,rgba(255,255,255,.78),rgba(255,255,255,.19))!important;box-shadow:0 -10px 38px rgba(30,107,71,.14),inset 0 1px rgba(255,255,255,.94)!important;animation:insyderFloat 7s ease-in-out infinite!important}
.page-hero h1,.diag-hero h1{position:relative!important;z-index:1!important}.page-hero .lede,.diag-hero .lede{position:relative!important;z-index:1!important}
/* Surfaces UI lumineuses plutôt que documents ternes. */
.cta-panel,.fact-panel,.note-strip,.sheet{background:rgba(255,255,255,.72)!important;border-color:rgba(17,17,17,.12)!important;box-shadow:0 24px 60px rgba(54,37,83,.08)!important}
.doc-section,.doc-toc,.doc-toc a,.rights-list li,.measure,.fact-panel,.note-strip{border-color:rgba(17,17,17,.12)!important}
.button,.btn,.primary,.button-primary,.cta-panel .button{background:#111!important;color:#fff!important;border-color:#111!important;box-shadow:0 9px 22px rgba(17,17,17,.15)!important}
.button:hover,.btn:hover,.primary:hover,.button-primary:hover,.cta-panel .button:hover{background:#fff!important;color:#111!important;box-shadow:0 12px 32px rgba(30,107,71,.22)!important}
/* Motion sur les éléments d'interface, toujours désactivable. */
.cta-panel,.fact-panel,.note-strip,.measure,.sheet{transition:transform .35s cubic-bezier(.22,.61,.36,1),box-shadow .35s cubic-bezier(.22,.61,.36,1)!important}.cta-panel:hover,.fact-panel:hover,.note-strip:hover,.measure:hover,.sheet:hover{transform:translateY(-5px)!important;box-shadow:0 26px 65px rgba(28,50,40,.14)!important}
@keyframes insyderGlow{0%{transform:translateX(-52%) scale(.92);opacity:.7}100%{transform:translateX(-47%) scale(1.08);opacity:1}}
@keyframes insyderFloat{0%,100%{margin-bottom:0}50%{margin-bottom:12px}}
@media(max-width:820px){.page-hero:before,.diag-hero:before{bottom:-250px!important;width:670px!important;height:470px!important}.page-hero:after,.diag-hero:after{bottom:-156px!important;width:95vw!important;height:190px!important}}
@media(prefers-reduced-motion:reduce){.page-hero:before,.diag-hero:before,.page-hero:after,.diag-hero:after{animation:none!important}.cta-panel,.fact-panel,.note-strip,.measure,.sheet{transition:none!important}.cta-panel:hover,.fact-panel:hover,.note-strip:hover,.measure:hover,.sheet:hover{transform:none!important}}

/* Mockup honnête par page métier : schéma, jamais une interface client fictive. */
.insyder-architecture-preview{position:relative;width:min(calc(100% - 48px),900px);margin:-10px auto 84px;padding:16px 18px 18px;border:1px solid rgba(17,17,17,.13);border-radius:20px;background:rgba(255,255,255,.72);box-shadow:0 28px 65px rgba(20,40,30,.10),inset 0 1px rgba(255,255,255,.98);overflow:hidden;animation:insyderFloat 7s ease-in-out infinite}.insyder-architecture-preview:before{content:'';position:absolute;z-index:0;inset:auto -80px -135px;width:480px;height:280px;border-radius:50%;background:radial-gradient(ellipse,rgba(30,107,71,.28),rgba(30,107,71,.10) 43%,transparent 70%);filter:blur(8px)}.architecture-caption{position:relative;z-index:1;color:#6c6c73;font-size:10px;letter-spacing:.14em}.architecture-canvas{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;gap:15px;min-height:102px;margin-top:14px;border:1px solid rgba(17,17,17,.1);border-radius:13px;background:rgba(255,255,255,.55)}.architecture-node{min-width:130px;padding:15px 14px;border:1px solid rgba(17,17,17,.13);border-radius:10px;background:linear-gradient(135deg,rgba(255,255,255,.95),rgba(236,245,239,.82));text-align:center;color:#111;font-size:12px;font-weight:650;box-shadow:0 8px 18px rgba(20,60,42,.06)}.architecture-node:nth-of-type(2){background:linear-gradient(135deg,rgba(236,245,239,.95),rgba(230,243,235,.9))}.architecture-canvas i{width:28px;height:1px;background:linear-gradient(90deg,#1e6b47,#1e6b47);animation:flowPulse 2.2s ease-in-out infinite}@keyframes flowPulse{0%,100%{opacity:.4;transform:scaleX(.8)}50%{opacity:1;transform:scaleX(1)}}
@media(max-width:820px){.insyder-architecture-preview{width:calc(100% - 32px);margin:-4px auto 58px;padding:14px}.architecture-canvas{gap:7px;min-height:88px}.architecture-node{min-width:0;flex:1;padding:12px 5px;font-size:10px}.architecture-canvas i{width:13px;flex:0 0 13px}}@media(prefers-reduced-motion:reduce){.insyder-architecture-preview,.architecture-canvas i{animation:none!important}}

/* Navbar LegalFlow : reproduction de la structure Insyder, pas une interprétation. */
header.nav-wrap{position:relative!important;z-index:50!important;top:auto!important;left:auto!important;width:100%!important;margin:0!important;padding:16px 0!important;border:0!important;border-radius:0!important;background:transparent!important;backdrop-filter:none!important;box-shadow:none!important}header.nav-wrap>.shell{width:min(calc(100% - 32px),808px)!important;margin:0 auto!important;padding:0!important}header.nav-wrap .nav{width:100%!important;height:78px!important;min-height:78px!important;display:flex!important;align-items:center!important;gap:0!important;padding:0 10px 0 12px!important;border:4px solid #edf1f3!important;border-radius:14px!important;background:#fff!important;box-shadow:none!important;font-family:Arial,sans-serif!important}header.nav-wrap .nav .brand{width:80px!important;margin-right:auto!important;color:#111!important;font-family:Arial,sans-serif!important;font-size:17px!important;font-weight:800!important;letter-spacing:-.07em!important}header.nav-wrap .nav .brand img{width:33px!important;height:33px!important;object-fit:contain!important}header.nav-wrap .nav-links{display:flex!important;align-items:center!important;gap:0!important;margin:0 auto!important}header.nav-wrap .nav-links a{display:inline-flex!important;align-items:center!important;height:37px!important;padding:8px 16px!important;border-radius:100px!important;color:#4e5963!important;font-family:Arial,sans-serif!important;font-size:14px!important;font-weight:600!important;white-space:nowrap!important}header.nav-wrap .nav-links a:hover{background:#eef1f3!important;color:#111!important}.nav-icon{display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 50px!important;width:50px!important;height:50px!important;margin-left:6px!important;border:0!important;border-radius:16px!important;background:#e8e8e8!important;color:#111!important;font-family:Arial,sans-serif!important;font-size:0!important;font-weight:800!important;line-height:1!important;box-shadow:none!important}.nav-icon:hover{background:#dedede!important;transform:none!important;box-shadow:none!important}.nav-icon-one:before{content:'in';font-size:16px;font-weight:850;letter-spacing:-.09em}.nav-icon-two:before{content:'↗';font-size:27px;font-weight:500;transform:translateY(-1px)}
@media(max-width:820px){header.nav-wrap{padding:14px 0!important}header.nav-wrap>.shell{width:calc(100% - 28px)!important}header.nav-wrap .nav{height:74px!important;min-height:74px!important;padding:0 9px!important;border-width:3px!important;border-radius:13px!important}header.nav-wrap .nav .brand{width:auto!important;margin-right:auto!important;font-size:17px!important}header.nav-wrap .nav-links{display:none!important}.nav-icon{flex-basis:50px!important;width:50px!important;height:50px!important;margin-left:6px!important;border-radius:16px!important}}


/* Wordmark LegalFlow : même traitement que la home (LEGAL noir + FLOW vert + point). */
header.nav-wrap .nav .brand{display:inline-flex!important;align-items:baseline!important;gap:0!important;width:auto!important;min-width:104px!important;color:#151515!important;text-decoration:none!important}
header.nav-wrap .nav .brand span{font-family:Geist,Arial,sans-serif!important;font-size:14px!important;font-weight:760!important;letter-spacing:.075em!important;color:#151515!important}
header.nav-wrap .nav .brand strong{font-family:Geist,Arial,sans-serif!important;font-size:14px!important;font-weight:850!important;letter-spacing:.075em!important;color:#1e6b43!important}
header.nav-wrap .nav .brand i{margin-left:1px!important;font-family:Geist,Arial,sans-serif!important;font-size:18px!important;font-weight:900!important;font-style:normal!important;color:#1e6b43!important}
header.nav-wrap .nav .brand:hover{opacity:.78!important}
@media(max-width:820px){header.nav-wrap .nav .brand{min-width:94px!important}header.nav-wrap .nav .brand span,header.nav-wrap .nav .brand strong{font-size:13px!important}header.nav-wrap .nav .brand i{font-size:17px!important}}


/* ============================================================
   SÉLECTEUR DE LANGUE + RTL (pages secondaires)
   ============================================================ */
.lf-lang-switch{position:relative;display:inline-flex;align-items:center;margin-left:12px;flex:0 0 auto}
.lf-lang-label{position:relative;display:inline-flex;align-items:center;gap:5px;height:32px;padding:0 9px;
  border:1px solid rgba(20,26,22,.14);border-radius:9px;background:rgba(255,255,255,.72);color:#3f4b44;
  cursor:pointer;transition:border-color .25s ease,background .25s ease,box-shadow .25s ease}
.lf-lang-label:hover{border-color:rgba(30,107,71,.42);background:#fff;box-shadow:0 4px 12px rgba(18,26,22,.07)}
.lf-lang-globe,.lf-lang-globe svg{width:14px;height:14px;display:inline-flex;color:#1e6b43}
.lf-lang-caret,.lf-lang-caret svg{width:11px;height:11px;display:inline-flex;color:#7b857e}
.lf-lang-select{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;border:0;background:transparent}
.lf-lang-switch:focus-within .lf-lang-label{border-color:rgba(30,107,71,.6);box-shadow:0 0 0 3px rgba(30,107,71,.12)}
.lf-lang-switch .lf-lang-current{font:600 11.5px/1 Geist,Arial,sans-serif;letter-spacing:.06em;color:#2c352f;direction:ltr}

@media(max-width:820px){
  .lf-lang-switch{margin-left:auto;margin-right:6px}
  .lf-lang-label{height:30px;padding:0 7px;gap:4px}
  .lf-lang-switch .lf-lang-current{display:none}
}

/* RTL / arabe */
html[lang="ar"] body{font-family:"Noto Naskh Arabic","Geeza Pro","Segoe UI",Tahoma,Arial,sans-serif!important}
html[lang="ar"] *{letter-spacing:0!important}
html[lang="ar"] h1,html[lang="ar"] h2,html[lang="ar"] h3{line-height:1.28!important;text-transform:none!important}
html[lang="ar"] .eyebrow,html[lang="ar"] .diag-eyebrow,html[lang="ar"] .kicker{text-transform:none!important}
body.is-rtl .page-hero h1,body.is-rtl .page-hero .lede,body.is-rtl .doc-body,
body.is-rtl .doc-section p,body.is-rtl .measure p,body.is-rtl .cta-panel{text-align:right}
body.is-rtl .lf-lang-switch{margin-left:0;margin-right:12px}
body.is-rtl .lf-lang-select,body.is-rtl .lf-lang-current{direction:ltr}


/* ============================================================
   RTL — correctifs : le logo doit rester lisible en latin,
   et le sélecteur de langue ne doit pas être comprimé.
   ============================================================ */
html[lang="ar"] .brand,
body.is-rtl .brand{
  direction:ltr!important;
  unicode-bidi:isolate!important;
  display:inline-flex!important;
  flex-direction:row!important;
}
html[lang="ar"] .brand span,
html[lang="ar"] .brand strong,
html[lang="ar"] .brand i,
body.is-rtl .brand span,
body.is-rtl .brand strong,
body.is-rtl .brand i{
  direction:ltr!important;
  unicode-bidi:isolate!important;
}

/* Sélecteur de langue : jamais comprimé, toujours en lecture latine. */
html[lang="ar"] .lf-lang-switch,
body.is-rtl .lf-lang-switch{
  direction:ltr!important;
  flex:0 0 auto!important;
  min-width:max-content!important;
}
html[lang="ar"] .lf-lang-label,
body.is-rtl .lf-lang-label{
  direction:ltr!important;
  white-space:nowrap!important;
}
html[lang="ar"] .lf-lang-current,
body.is-rtl .lf-lang-current{
  display:inline-block!important;
  min-width:2ch!important;
}
/* Le mot latin "LegalFlow" au milieu du texte arabe garde son sens. */
html[lang="ar"] a[href*="linkedin"],
body.is-rtl a[href*="linkedin"]{direction:ltr!important}


/* RTL correctifs — haute spécificité pour les pages à navbar dédiée. */
html[lang="ar"] header.nav-wrap .nav .brand,
body.is-rtl header.nav-wrap .nav .brand{
  direction:ltr!important;unicode-bidi:isolate!important;
  display:inline-flex!important;flex-direction:row!important;
}
html[lang="ar"] header.nav-wrap .nav .brand span,
html[lang="ar"] header.nav-wrap .nav .brand strong,
html[lang="ar"] header.nav-wrap .nav .brand i,
body.is-rtl header.nav-wrap .nav .brand span,
body.is-rtl header.nav-wrap .nav .brand strong,
body.is-rtl header.nav-wrap .nav .brand i{
  direction:ltr!important;unicode-bidi:isolate!important;
}
html[lang="ar"] header.nav-wrap .lf-lang-switch,
body.is-rtl header.nav-wrap .lf-lang-switch{
  direction:ltr!important;flex:0 0 auto!important;min-width:max-content!important;
}
html[lang="ar"] header.nav-wrap .lf-lang-label,
body.is-rtl header.nav-wrap .lf-lang-label{
  direction:ltr!important;white-space:nowrap!important;
}
