:root{
  --bg:#f8f2eb;
  --paper:#fffaf4;
  --ink:#1f2733;
  --ink-soft:#57657a;
  --ink-faint:#8c94a3;
  --line:rgba(31,39,51,.1);
  --line-soft:rgba(31,39,51,.06);
  --plum:#401d45;
  --plum-deep:#231127;
  --coral:#f06e4f;
  --coral-deep:#d95f43;
  --gold:#e0a82f;
  --gold-soft:#f6e2a8;
  --teal:#0f8a83;
  --teal-soft:#d9f0ee;
  --rose:#f4d4d7;
  --cream:#f7efe4;
  --panel:#f4ece4;
  --shadow:0 28px 60px -35px rgba(40,17,48,.35);
  --shadow-soft:0 20px 46px -32px rgba(40,17,48,.28);
  --wrap:1240px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{
  font-family:'Inter',sans-serif;
  background:
   radial-gradient(circle at 20% 0%, rgba(240,110,79,.08), transparent 24%),
   radial-gradient(circle at 82% 10%, rgba(224,168,47,.12), transparent 22%),
   linear-gradient(180deg,#fbf6ef 0%, #f7efe4 60%, #f8f2eb 100%);
  color:var(--ink);
  line-height:1.6;
}
a{text-decoration:none;color:inherit}
img{display:block;max-width:100%}
.wrap{width:min(var(--wrap),calc(100% - 40px));margin:0 auto}
.page-shell{position:relative;overflow:hidden}

.nav{position:sticky;top:0;z-index:40;padding:16px 0;background:rgba(248,242,235,.86);backdrop-filter:blur(14px);border-bottom:1px solid rgba(64,29,69,.08)}
.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:20px}
.logo{font-family:'Poppins',sans-serif;font-weight:800;font-size:1.4rem;letter-spacing:-.03em;color:var(--plum)}
.logo span{color:var(--coral)}
.nav-links,.nav-actions{display:flex;align-items:center;gap:18px}
.nav-links a{font-weight:600;font-size:.95rem;color:var(--ink-soft)}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 22px;border-radius:999px;font-weight:700;transition:.25s ease;border:1px solid transparent}
.btn-primary{background:linear-gradient(90deg,var(--coral),#ffb800);color:#fff;box-shadow:0 12px 30px -16px rgba(240,110,79,.65)}
.btn-secondary{background:rgba(255,255,255,.72);border-color:rgba(64,29,69,.14);color:var(--plum)}
.btn-secondary.light{background:transparent;border-color:rgba(255,255,255,.35);color:#fff}
.btn:hover{transform:translateY(-2px)}

.hero{position:relative;padding:72px 0 42px}
.hero-pattern{position:absolute;pointer-events:none;opacity:.85}
.hero-pattern-left{left:-90px;top:80px;width:270px;height:270px;background:
 radial-gradient(circle at 50% 50%, transparent 20%, rgba(64,29,69,.15) 21%, rgba(64,29,69,.15) 24%, transparent 25%),
 radial-gradient(circle at 50% 50%, transparent 44%, rgba(240,110,79,.22) 45%, rgba(240,110,79,.22) 49%, transparent 50%),
 radial-gradient(circle at 50% 50%, transparent 68%, rgba(224,168,47,.22) 69%, rgba(224,168,47,.22) 72%, transparent 73%);
 border-radius:50%;transform:rotate(-10deg)}
.hero-pattern-right{right:-30px;bottom:50px;width:230px;height:230px;background:
 conic-gradient(from 0deg,var(--gold) 0 12%, transparent 12% 24%, var(--coral) 24% 36%, transparent 36% 48%, var(--plum) 48% 60%, transparent 60% 72%, var(--teal) 72% 84%, transparent 84% 100%);
 mask:radial-gradient(circle at center, transparent 0 26%, #000 27% 66%, transparent 67%);
 opacity:.24}
.hero-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:38px;align-items:start}
.hero-kicker{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;background:rgba(255,255,255,.7);border:1px solid rgba(64,29,69,.08);border-radius:999px;font-size:.8rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:var(--coral-deep)}
.hero h1{font-family:'Poppins',sans-serif;font-size:clamp(3rem,5vw,5.1rem);line-height:.95;letter-spacing:-.05em;margin:18px 0 20px;color:var(--plum-deep)}
.hero h1 span{color:var(--coral)}
.hero-sub{font-size:1.08rem;max-width:620px;color:var(--ink-soft)}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}
.hero-pills{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.hero-pills span{padding:10px 14px;border-radius:999px;background:#fff;border:1px solid rgba(64,29,69,.09);font-size:.85rem;font-weight:700;color:var(--plum)}

.hero-visual{display:grid;grid-template-columns:1.12fr .88fr;gap:18px;align-items:start}
.editorial-stack{display:grid;grid-template-columns:1fr;gap:16px}
.editorial-pair{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.visual-card{border-radius:30px;overflow:hidden;box-shadow:var(--shadow)}
.card-photo{position:relative;background:#ddd;min-height:100px}
.editorial-main img{width:100%;height:320px;object-fit:cover}
.side-photo img,.team-photo img{width:100%;height:185px;object-fit:cover}
.photo-badge{position:absolute;left:18px;bottom:18px;background:rgba(35,17,39,.78);backdrop-filter:blur(8px);color:#fff;padding:14px 16px;border-radius:18px;font-size:.9rem;font-weight:600}
.photo-badge strong{display:block;color:#ffd66b;font-family:'Poppins',sans-serif;font-size:1.02rem}
.motif-card{position:relative;background:linear-gradient(135deg,#fff 0%, #fff6eb 100%);padding:22px;border:1px solid rgba(64,29,69,.08);min-height:130px}
.motif-card p{position:relative;z-index:2;max-width:280px;font-weight:700;color:var(--plum);font-size:1rem}
.motif-grid{position:absolute;inset:0;background:
 linear-gradient(45deg, transparent 41%, rgba(240,110,79,.12) 42% 46%, transparent 47%),
 linear-gradient(-45deg, transparent 41%, rgba(64,29,69,.08) 42% 46%, transparent 47%),
 radial-gradient(circle at 22px 22px, rgba(224,168,47,.22) 0 9px, transparent 10px),
 radial-gradient(circle at 82px 82px, rgba(15,138,131,.16) 0 9px, transparent 10px);
 background-size:120px 120px;background-position:0 0,0 0,0 0,0 0;opacity:.9}

.product-stage{position:relative;min-height:690px;display:grid;place-items:center;padding:24px 10px 30px 24px}
.product-stage:before{content:"";position:absolute;inset:42px 18px 18px 64px;background:linear-gradient(145deg,var(--plum-deep),#241522);border-radius:38px;transform:rotate(2.5deg);box-shadow:0 34px 90px -34px rgba(58,33,56,.62)}
.app-preview{position:relative;width:100%;background:#fff;border:1px solid var(--line);border-radius:28px;box-shadow:0 36px 90px -42px rgba(58,33,56,.55);overflow:hidden;transform:rotate(-1.2deg);transition:.45s ease;z-index:1}
.app-preview:hover{transform:rotate(0) translateY(-6px)}
.preview-bar{height:58px;display:flex;align-items:center;gap:9px;padding:0 20px;border-bottom:1px solid var(--line-soft);background:#fff}
.preview-dot{width:12px;height:12px;border-radius:50%}
.preview-url{margin-left:12px;font-size:.94rem;color:var(--ink-faint);font-weight:500}
.preview-body{display:grid;grid-template-columns:180px 1fr;min-height:560px}
.preview-side{background:#fff;border-right:1px solid var(--line);padding:22px 0 18px 16px}
.preview-side .mini-logo{font-family:'Poppins';font-weight:800;font-size:1.15rem;padding:0 12px 22px;color:var(--plum)}
.preview-side .mini-logo span{color:var(--coral)}
.pnav{display:flex;align-items:center;gap:12px;padding:12px 14px;margin-right:10px;border-radius:0 20px 20px 0;color:#6e5b73;font-size:1rem;font-weight:700}
.pnav.active{background:#f4ede3;color:var(--coral)}
.pnav .ic{width:28px;height:28px;display:grid;place-items:center;border-radius:10px;background:#f2ebf3;color:#8f7a95}
.pnav .ic svg{width:16px;height:16px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.preview-main{padding:28px;background:#fbf6f9}
.feed-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px;gap:16px}
.feed-head strong{font-family:'Poppins';font-size:1.08rem;color:var(--plum)}
.think{display:flex;align-items:center;gap:7px;font-size:.74rem;color:var(--ink-faint);font-weight:700;text-transform:uppercase}
.pulse{width:8px;height:8px;border-radius:50%;background:var(--coral);animation:pulse 1.6s infinite}
@keyframes pulse{0%,100%{opacity:.3;transform:scale(.8)}50%{opacity:1;transform:scale(1.12)}}
.feed-item{background:#fff;border:1px solid var(--line);border-radius:20px;padding:20px 20px 18px;margin-bottom:18px;box-shadow:0 5px 14px rgba(58,33,56,.04)}
.feed-item.hot{border-left:4px solid var(--gold);border-radius:0 20px 20px 0}
.feed-meta{font-size:.82rem;text-transform:uppercase;letter-spacing:.08em;color:#9a8c9d;font-weight:800;margin-bottom:10px}
.feed-task{font-family:'Poppins';font-size:1rem;font-weight:700;color:var(--plum);margin-bottom:8px}
.feed-desc{font-size:.88rem;color:var(--ink-soft);line-height:1.45;margin-bottom:14px}
.modes{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.mode{padding:10px 8px;border:1px solid #eadfdf;border-radius:12px;font-size:.84rem;text-align:center;color:var(--ink-soft);font-weight:800;background:#fff}
.mode.sel{background:#f7efe4;color:var(--coral);border-color:rgba(194,90,46,.32)}
.mode.prim{background:#c86d38;color:#fff;border-color:#c86d38}
.done{display:flex;align-items:center;gap:10px;padding:12px 14px;background:#efe7ef;border-radius:15px;color:var(--ink-soft);font-size:.82rem}
.done b{width:20px;height:20px;border-radius:50%;display:grid;place-items:center;background:rgba(46,107,62,.12);color:#2e6b3e}
.float-badge{position:absolute;z-index:3;background:#fff;border:1px solid var(--line);border-radius:18px;padding:16px 18px;box-shadow:var(--shadow-soft);font-size:.88rem;color:var(--ink-soft);animation:float 5s ease-in-out infinite;line-height:1.35;max-width:280px}
.float-badge strong{display:block;color:var(--plum);font-family:'Poppins';font-size:1rem;margin-bottom:4px}
.float-1{right:-24px;top:54px}
.float-2{left:-8px;bottom:8px;animation-delay:1s;max-width:320px}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}

.brands-strip{padding:18px 0 28px}
.brands-row{display:flex;align-items:center;justify-content:space-between;gap:22px;flex-wrap:wrap;color:var(--ink-soft);font-size:.95rem}
.brand-pills{display:flex;gap:10px;flex-wrap:wrap}
.brand-pills b{padding:10px 14px;border-radius:999px;background:#fff;border:1px solid rgba(64,29,69,.08);font-size:.82rem;color:var(--plum)}

.section{padding:92px 0;position:relative}
.eyebrow{font-size:.8rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--coral);margin-bottom:14px}
.section h2{font-family:'Poppins',sans-serif;font-size:clamp(2rem,4vw,3.8rem);line-height:1.02;letter-spacing:-.04em;color:var(--plum-deep)}
.section p{color:var(--ink-soft);font-size:1rem}
.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:34px}
.section-head p{max-width:470px}

.product-proof-section{padding-top:54px}
.product-proof-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:34px;align-items:center}
.product-proof-copy{padding:28px 0}
.product-proof-points{display:grid;gap:10px;margin-top:22px}
.product-proof-points span{font-weight:700;color:var(--plum)}
.product-proof-visual{background:#fff;border:1px solid rgba(64,29,69,.08);padding:18px;border-radius:32px;box-shadow:var(--shadow)}
.product-proof-visual img{width:100%;height:auto;border-radius:22px;background:#fff8fb}

.manifesto-grid{display:grid;grid-template-columns:.86fr 1.14fr;gap:34px;align-items:start}
.manifesto-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.issue-card{padding:24px;border-radius:28px;min-height:250px;color:#fff;box-shadow:var(--shadow)}
.issue-card h3{font-family:'Poppins';font-size:1.35rem;line-height:1.05;margin:24px 0 12px}
.issue-card p{color:rgba(255,255,255,.86);font-size:.94rem}
.issue-no{display:inline-flex;width:44px;height:44px;border-radius:50%;align-items:center;justify-content:center;background:rgba(255,255,255,.16);font-weight:800}
.tone-plum{background:linear-gradient(180deg,#4b2150,#2f1636)}
.tone-coral{background:linear-gradient(180deg,#f27758,#d95f43)}
.tone-gold{background:linear-gradient(180deg,#d4a53b,#ac8121)}

.system-grid{display:grid;grid-template-columns:.88fr 1.12fr;gap:26px;align-items:start}
.system-panel,.autonomy-board{border-radius:34px;padding:32px;background:#fff;box-shadow:var(--shadow);border:1px solid rgba(64,29,69,.08)}
.steps-list{display:grid;gap:14px;margin-top:26px}
.step-item{display:grid;grid-template-columns:48px 1fr;gap:16px;align-items:start;padding:12px 0;border-bottom:1px solid rgba(64,29,69,.08)}
.step-item:last-child{border-bottom:0}
.step-item span{width:42px;height:42px;border-radius:14px;background:rgba(240,110,79,.14);display:grid;place-items:center;font-family:'Poppins';font-weight:800;color:var(--coral)}
.step-item strong{display:block;font-size:1rem;color:var(--plum);margin-bottom:4px}
.step-item p{font-size:.92rem}
.autonomy-board{background:linear-gradient(180deg,#3d1941 0%, #28112c 100%);color:#fff;position:relative;overflow:hidden}
.autonomy-board:before{content:"";position:absolute;inset:0;background:
 radial-gradient(circle at 10% 20%, rgba(224,168,47,.15), transparent 24%),
 radial-gradient(circle at 90% 10%, rgba(240,110,79,.16), transparent 22%),
 linear-gradient(45deg, transparent 47%, rgba(255,255,255,.04) 48% 52%, transparent 53%);
 background-size:auto,auto,100px 100px;pointer-events:none}
.board-header{font-size:.82rem;text-transform:uppercase;letter-spacing:.08em;font-weight:800;color:#ffd66b;position:relative;z-index:1}
.autonomy-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:18px;position:relative;z-index:1}
.autonomy-grid article{padding:22px;border-radius:24px;background:rgba(255,255,255,.08);backdrop-filter:blur(8px)}
.autonomy-grid article.featured{background:linear-gradient(180deg,rgba(240,110,79,.22),rgba(224,168,47,.18));outline:1px solid rgba(255,214,107,.4)}
.autonomy-grid small{display:block;color:#f2d79f;font-size:.72rem;font-weight:800;letter-spacing:.08em;margin-bottom:10px}
.autonomy-grid h3{font-family:'Poppins';font-size:1.4rem;margin-bottom:10px}
.autonomy-grid p{color:rgba(255,255,255,.82);font-size:.9rem}
.board-foot{position:relative;z-index:1;margin-top:18px;padding:14px 16px;border-radius:16px;background:rgba(255,255,255,.08);color:#fff;font-weight:700}

.collage-section{background:linear-gradient(180deg,rgba(255,255,255,.45),rgba(255,255,255,0))}
.hub-collage{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:16px}
.hub-tile{position:relative;border-radius:30px;background:#fff;padding:22px;box-shadow:var(--shadow);overflow:hidden;min-height:180px}
.hub-tile.large{grid-row:span 2;padding:0;min-height:520px}
.hub-tile.large img{height:100%;width:100%;object-fit:cover;filter:saturate(1.03)}
.tile-copy{position:absolute;left:22px;right:22px;bottom:22px;padding:20px;background:rgba(35,17,39,.76);backdrop-filter:blur(10px);border-radius:22px;color:#fff}
.tile-copy h3{font-family:'Poppins';font-size:1.9rem;line-height:1.02;margin:10px 0}
.tile-copy p{color:rgba(255,255,255,.84)}
.tile-tag{display:inline-flex;padding:8px 12px;border-radius:999px;background:rgba(255,255,255,.14);font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;font-weight:800}
.tone-panel{background:linear-gradient(160deg,#fff7ef 0%, #f7eee1 100%)}
.tone-panel.alt{background:linear-gradient(160deg,#f6f1fb 0%, #efe6f5 100%)}
.tone-panel h3{font-family:'Poppins';font-size:1.6rem;line-height:1.08;color:var(--plum);margin:18px 0 12px}
.tone-panel p{font-size:.95rem}
.tone-mini{display:flex;flex-direction:column;justify-content:flex-end;background:linear-gradient(180deg,#ffffff 0%, #f1e7dc 100%)}
.tone-mini.coral{background:linear-gradient(180deg,#fff6f2 0%, #ffe0d8 100%)}
.tone-mini.gold{background:linear-gradient(180deg,#fff9eb 0%, #f5e1a4 100%)}
.tone-mini p{margin-top:14px;font-size:1rem;font-weight:600;color:var(--plum)}
.tone-image{padding:0;min-height:240px;background:linear-gradient(160deg,#fff7ef 0%, #ffe6d9 100%)}
.tone-image img{width:100%;height:100%;min-height:240px;object-fit:cover}
.tone-image-caption{position:absolute;left:18px;right:18px;bottom:18px;padding:14px 16px;border-radius:18px;background:rgba(35,17,39,.8);color:#fff}
.tone-image-caption span{display:block;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:#ffd66b;font-weight:800;margin-bottom:6px}
.tone-image-caption p{font-size:.92rem;color:rgba(255,255,255,.86)}
.gold-frame{border:1px solid rgba(224,168,47,.34)}

.forces-section{background:linear-gradient(180deg,#241228 0%, #3c1b42 100%)}
.forces-section .eyebrow,.forces-section h2,.forces-section p{color:#fff}
.forces-section p{color:rgba(255,255,255,.8)}
.forces-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:30px;align-items:start}
.forces-ribbons{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.ribbon{display:flex;align-items:center;gap:14px;padding:18px 18px;border-radius:18px;font-weight:800;color:#fff;box-shadow:0 14px 30px -16px rgba(0,0,0,.28)}
.ribbon span{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:rgba(255,255,255,.16);font-size:.78rem}
.ribbon.plum{background:linear-gradient(90deg,#6f3c76,#4b2150)}
.ribbon.coral{background:linear-gradient(90deg,#ff8d61,#e06748)}
.ribbon.gold{background:linear-gradient(90deg,#f3c65b,#c8961f)}
.ribbon.teal{background:linear-gradient(90deg,#26a7a0,#0f8a83)}
.ribbon.full{grid-column:1/-1}

.start-row{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:28px}
.start-card{padding:26px;border-radius:26px;background:#fff;box-shadow:var(--shadow);border:1px solid rgba(64,29,69,.08)}
.start-card strong{display:inline-grid;place-items:center;width:48px;height:48px;border-radius:14px;background:rgba(64,29,69,.08);font-family:'Poppins';font-size:1.05rem;color:var(--plum)}
.start-card h3{font-family:'Poppins';font-size:1.4rem;line-height:1.08;margin:18px 0 10px;color:var(--plum)}
.start-card p{font-size:.95rem}

.cta-section{padding:96px 0 110px}
.cta-box{display:grid;grid-template-columns:1fr auto;gap:28px;align-items:center;padding:44px;border-radius:36px;background:linear-gradient(135deg,#3d1941 0%, #251029 100%);position:relative;overflow:hidden;box-shadow:0 40px 80px -34px rgba(40,17,48,.55)}
.cta-box:before{content:"";position:absolute;inset:0;background:
 radial-gradient(circle at 88% 20%, rgba(255,214,107,.2), transparent 18%),
 radial-gradient(circle at 10% 80%, rgba(240,110,79,.18), transparent 18%),
 linear-gradient(45deg, transparent 46%, rgba(255,255,255,.04) 47% 50%, transparent 51%);
 background-size:auto,auto,110px 110px;pointer-events:none}
.cta-box h2{position:relative;z-index:1;color:#fff;max-width:760px;font-family:'Poppins';font-size:clamp(2rem,4vw,3.6rem);line-height:1.02}
.cta-box p{position:relative;z-index:1;color:rgba(255,255,255,.82);max-width:650px;margin-top:14px}
.cta-actions{display:flex;flex-direction:column;gap:12px;position:relative;z-index:1}

.footer{padding:0 0 48px}
.footer-grid{display:flex;justify-content:space-between;gap:20px;align-items:center;padding-top:24px;border-top:1px solid rgba(64,29,69,.08)}
.footer-note{margin-top:8px;color:var(--ink-soft);font-size:.92rem}
.footer-links{display:flex;gap:16px;flex-wrap:wrap;color:var(--ink-soft);font-weight:700}

.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease}
.reveal.visible{opacity:1;transform:none}

/* ── Éditions (blocs par édition, façon catalogue produit) ── */
.editions-section{padding-top:64px}
.editions-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.edition-card{--accent:var(--coral);position:relative;display:flex;flex-direction:column;gap:18px;padding:26px 24px 24px;background:#fff;border:1px solid rgba(64,29,69,.09);border-radius:28px;box-shadow:var(--shadow);overflow:hidden}
.edition-card:before{content:"";position:absolute;left:0;top:0;right:0;height:5px;background:var(--accent)}
.edition-card.accent-coral{--accent:var(--coral)}
.edition-card.accent-teal{--accent:var(--teal)}
.edition-card.accent-plum{--accent:var(--plum)}
.edition-badge{align-self:flex-start;display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:color-mix(in srgb,var(--accent) 12%,#fff);color:var(--accent);font-family:'Poppins',sans-serif;font-weight:700;font-size:.86rem;border:1px solid color-mix(in srgb,var(--accent) 26%,transparent)}
.edition-card h3{font-family:'Poppins',sans-serif;font-size:1.28rem;line-height:1.14;letter-spacing:-.02em;color:var(--plum-deep)}
.edition-block{display:grid;gap:9px}
.edition-label{font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint)}
.edition-hubs{display:flex;flex-wrap:wrap;gap:8px}
.hub-chip{padding:6px 11px;border-radius:999px;background:var(--cream);border:1px solid rgba(64,29,69,.09);font-size:.82rem;font-weight:700;color:var(--plum)}
.edition-forwhom{font-size:.94rem;color:var(--ink-soft);line-height:1.5}
.edition-actions{display:flex;flex-direction:column;gap:10px;margin-top:auto}
.edition-actions .btn{width:100%;padding:12px 18px}

/* ── Modale « Demander une démo » ── */
.demo-overlay{position:fixed;inset:0;z-index:120;display:flex;align-items:center;justify-content:center;padding:22px;background:rgba(35,17,39,.55);backdrop-filter:blur(6px);animation:demoFade .2s ease}
.demo-overlay[hidden]{display:none}
@keyframes demoFade{from{opacity:0}to{opacity:1}}
.demo-modal{position:relative;width:min(560px,100%);max-height:calc(100vh - 44px);overflow:auto;background:var(--paper);border:1px solid rgba(64,29,69,.1);border-radius:28px;box-shadow:0 50px 100px -40px rgba(35,17,39,.6);padding:34px 32px 30px}
.demo-close{position:absolute;top:16px;right:18px;width:38px;height:38px;border-radius:50%;border:1px solid rgba(64,29,69,.1);background:#fff;color:var(--ink-soft);font-size:1.5rem;line-height:1;cursor:pointer;display:grid;place-items:center;transition:.2s}
.demo-close:hover{background:var(--cream);color:var(--plum)}
.demo-eyebrow{font-size:.78rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--coral);margin-bottom:10px}
.demo-modal h3{font-family:'Poppins',sans-serif;font-size:1.5rem;line-height:1.1;letter-spacing:-.02em;color:var(--plum-deep)}
.demo-intro{margin:10px 0 20px;color:var(--ink-soft);font-size:.96rem}
.demo-field{display:grid;gap:6px;margin-bottom:14px}
.demo-field>span{font-size:.82rem;font-weight:700;color:var(--plum)}
.demo-field input,.demo-field select,.demo-field textarea{width:100%;padding:12px 14px;border:1px solid rgba(64,29,69,.16);border-radius:13px;background:#fff;color:var(--ink);font-size:.95rem;transition:border-color .2s,box-shadow .2s}
.demo-field textarea{resize:vertical;min-height:74px}
.demo-field input:focus,.demo-field select:focus,.demo-field textarea:focus{outline:none;border-color:var(--coral);box-shadow:0 0 0 3px rgba(240,110,79,.16)}
.demo-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.demo-row .demo-field{margin-bottom:14px}
.demo-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.demo-error{margin:0 0 12px;padding:11px 14px;border-radius:12px;background:rgba(217,95,67,.1);border:1px solid rgba(217,95,67,.28);color:var(--coral-deep);font-size:.9rem;font-weight:600}
.demo-submit{width:100%;margin-top:4px}
.demo-submit:disabled{opacity:.7;cursor:progress}
.demo-success{text-align:center;padding:14px 6px 8px}
.demo-check{width:66px;height:66px;margin:0 auto 18px;border-radius:50%;display:grid;place-items:center;background:rgba(15,138,131,.12);color:var(--teal);font-size:2rem}
.demo-success h3{margin-bottom:10px}
.demo-success p{color:var(--ink-soft);margin-bottom:22px}

/* ── Accents génériques (utilisables hors .edition-card) ── */
.accent-coral{--accent:var(--coral)}
.accent-teal{--accent:var(--teal)}
.accent-plum{--accent:var(--plum)}

/* ── Page Logiciels ── */
.lg-hero{padding:56px 0 40px}
.lg-hero-copy{max-width:820px}
.lg-hero-copy h1{font-family:'Poppins',sans-serif;font-size:clamp(2.4rem,4.6vw,4rem);line-height:1;letter-spacing:-.04em;color:var(--plum-deep);margin:14px 0 16px}
.lg-hero-chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.lg-chip{display:inline-flex;align-items:center;padding:10px 16px;border-radius:999px;background:#fff;border:1px solid color-mix(in srgb,var(--accent) 34%,var(--line));color:var(--accent);font-weight:700;font-size:.9rem;transition:.2s}
.lg-chip:hover{transform:translateY(-2px);box-shadow:var(--shadow-soft)}
.lg-edition{padding:70px 0}
.lg-edition.is-alt{background:linear-gradient(180deg,rgba(255,255,255,.5),rgba(255,255,255,0))}
.lg-edition-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:38px;align-items:start}
.lg-edition.is-alt .lg-edition-grid{direction:rtl}
.lg-edition.is-alt .lg-edition-grid>*{direction:ltr}
.lg-edition-intro h2{font-family:'Poppins',sans-serif;font-size:clamp(1.6rem,2.6vw,2.4rem);line-height:1.08;letter-spacing:-.02em;color:var(--plum-deep);margin:16px 0 20px}
.lg-block{display:grid;gap:8px;margin-bottom:22px}
.lg-block p{color:var(--ink-soft);font-size:1rem;line-height:1.55}
.lg-edition-actions{display:flex;flex-wrap:wrap;gap:12px}
.lg-hub-list{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:12px}
.lg-hub-item{padding:18px 18px 16px;background:#fff;border:1px solid rgba(64,29,69,.09);border-left:4px solid var(--accent);border-radius:16px;box-shadow:var(--shadow-soft)}
.lg-hub-item strong{display:block;font-family:'Poppins',sans-serif;font-size:1.02rem;color:var(--plum);margin-bottom:6px}
.lg-hub-item p{font-size:.9rem;color:var(--ink-soft);line-height:1.45}
.lg-table-wrap{overflow-x:auto;border:1px solid rgba(64,29,69,.1);border-radius:22px;background:#fff;box-shadow:var(--shadow-soft)}
.lg-table{width:100%;border-collapse:collapse;min-width:560px}
.lg-table th,.lg-table td{padding:16px 18px;text-align:center;border-bottom:1px solid rgba(64,29,69,.08)}
.lg-table thead th{font-family:'Poppins',sans-serif;font-size:1rem;color:var(--accent,var(--plum));background:var(--cream)}
.lg-table thead th:first-child{color:var(--ink-faint)}
.lg-table tbody th{text-align:left;font-weight:700;color:var(--plum);white-space:nowrap}
.lg-table tbody tr:last-child th,.lg-table tbody tr:last-child td{border-bottom:0}
.lg-yes{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;background:color-mix(in srgb,var(--accent) 14%,#fff);color:var(--accent);font-weight:800}
.lg-no{color:var(--ink-faint);font-size:1.1rem}

/* ── Page Découverte + simulateur live ── */
.decouverte-hero{padding:56px 0 20px}
.sim-section{padding-top:20px}
.sim-card{background:#fff;border:1px solid rgba(64,29,69,.1);border-radius:32px;box-shadow:var(--shadow);padding:34px 32px}
.sim-intro{max-width:720px;margin-bottom:22px}
.sim-intro h2{font-family:'Poppins',sans-serif;font-size:clamp(1.6rem,2.6vw,2.2rem);line-height:1.1;letter-spacing:-.02em;color:var(--plum-deep);margin:6px 0 10px}
.sim-intro p{color:var(--ink-soft);font-size:1rem;line-height:1.55}
.sim-form{max-width:760px}
.sim-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.sim-submit{margin-top:6px;padding:14px 26px}
.sim-loading{display:grid;justify-items:center;gap:8px;text-align:center;padding:44px 20px}
.sim-loading strong{font-family:'Poppins',sans-serif;font-size:1.15rem;color:var(--plum)}
.sim-loading-note{color:var(--ink-faint);font-size:.9rem}
.sim-spinner{width:40px;height:40px;border-radius:50%;border:3px solid rgba(240,110,79,.22);border-top-color:var(--coral);animation:simspin .8s linear infinite;margin-bottom:6px}
@keyframes simspin{to{transform:rotate(360deg)}}
.sim-result{display:grid;gap:20px}
.sim-res-head h3{font-family:'Poppins',sans-serif;font-size:clamp(1.3rem,2.2vw,1.9rem);line-height:1.18;letter-spacing:-.02em;color:var(--plum-deep);margin-top:6px}
.sim-block{display:grid;gap:9px}
.sim-block>p{color:var(--ink-soft);line-height:1.55;font-size:1rem}
.sim-swot{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.sim-swot-q{padding:16px 18px;border:1px solid rgba(64,29,69,.09);border-left:4px solid var(--accent);border-radius:14px;background:var(--cream)}
.sim-swot-q ul{margin:8px 0 0;padding-left:18px;display:grid;gap:5px}
.sim-swot-q li{color:var(--ink-soft);font-size:.92rem;line-height:1.4}
.sim-insights{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.sim-insight{padding:15px 16px;border:1px solid rgba(64,29,69,.09);border-radius:13px;background:#fff;box-shadow:var(--shadow-soft)}
.sim-insight strong{display:block;font-family:'Poppins',sans-serif;font-size:.98rem;color:var(--plum);margin-bottom:5px}
.sim-insight p{font-size:.9rem;color:var(--ink-soft);line-height:1.45}
.sim-next{padding:16px 18px;border-radius:14px;background:color-mix(in srgb,var(--gold) 10%,var(--surface,#fff));border:1px solid color-mix(in srgb,var(--gold) 30%,var(--line))}
.sim-next p{margin-top:6px;font-weight:700;color:var(--plum);line-height:1.45}
.sim-cta{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:22px;border-radius:20px;background:linear-gradient(135deg,#3d1941,#251029);color:#fff}
.sim-cta strong{font-family:'Poppins',sans-serif;font-size:1.15rem;display:block;margin-bottom:4px}
.sim-cta p{color:rgba(255,255,255,.8);font-size:.95rem;max-width:520px}
.sim-cta-actions{display:flex;gap:10px;flex-wrap:wrap}

@media (max-width:1180px){
  .hero-grid,.product-proof-grid,.manifesto-grid,.system-grid,.forces-grid,.cta-box{grid-template-columns:1fr}
  .hero-visual{grid-template-columns:1fr}
  .editorial-stack{grid-template-columns:1fr}
  .product-stage{min-height:620px}
  .float-1{right:8px}
  .float-2{left:8px}
  .hub-collage{grid-template-columns:1fr 1fr}
  .hub-tile.large{grid-column:1/-1;grid-row:auto;min-height:420px}
  .editions-grid{grid-template-columns:1fr 1fr}
  .lg-edition-grid{grid-template-columns:1fr}
  .lg-edition.is-alt .lg-edition-grid{direction:ltr}
}
@media (max-width:900px){
  .wrap{width:min(var(--wrap),calc(100% - 28px))}
  .nav-links{display:none}
  /* ⚠ LA RÈGLE PRÉCÉDENTE MASQUAIT « Se connecter » — `.nav-actions .btn-secondary{display:none}`.
     Combinée à `.nav-links{display:none}` juste au-dessus, il ne restait sur téléphone QU'UN seul
     bouton : « Demander une démo ». Ni connexion, ni inscription, ni navigation — sur le marché
     prioritaire, qui est mobile. On masque désormais la démo (la seule action qu'on peut différer)
     et on garde les deux portes d'entrée, resserrées pour tenir sur une ligne. */
  .nav-actions .nav-demo{display:none}
  .nav-actions{gap:10px}
  .nav-actions .nav-auth{padding:11px 15px;font-size:.9rem}
  .hero{padding-top:42px}
  .preview-body{grid-template-columns:1fr}
  .preview-side{border-right:0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:16px}
  .preview-side .mini-logo{grid-column:1/-1;padding:0 0 8px}
  .pnav{margin-right:0;border-radius:14px;padding:10px 12px;font-size:.86rem}
  .pnav .ic{width:24px;height:24px}
  .product-stage{min-height:auto;padding:18px 0 26px}
  .product-stage:before{inset:28px 10px 10px 30px}
  .float-badge{position:static;max-width:none;margin-top:12px;animation:none}
  .editorial-pair,.autonomy-grid,.manifesto-cards,.start-row,.editions-grid,.demo-row,.lg-hub-list,.sim-row,.sim-swot,.sim-insights{grid-template-columns:1fr}
  .section{padding:74px 0}
  .section-head,.brands-row,.footer-grid{display:block}
  .forces-ribbons,.hub-collage{grid-template-columns:1fr}
  .hub-tile.large{min-height:360px}
  .cta-actions{width:100%}
}
@media (max-width:560px){
  .hero h1{font-size:2.6rem}
  .preview-bar{height:50px;padding:0 14px}
  .preview-url{font-size:.78rem}
  .preview-main{padding:18px}
  .feed-item{padding:16px}
  .modes{grid-template-columns:1fr}
  .editorial-main img{height:280px}
  .side-photo img,.team-photo img,.tone-image img{min-height:220px;height:220px}
  .demo-modal{padding:26px 20px 22px}
}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}}

/* LES PAGES DE CAMPAGNE SUR TÉLÉPHONE (31/10). La barre de tête passe à la ligne : le nom sur une ligne, puis la langue, « Masquer » et « Effacer », tous à portée de doigt.
   Spécificité double : le <style> de ces deux pages se charge après cette feuille. */
@media (max-width:640px){
  .tn-nav .tn-nav-in{flex-wrap:wrap;gap:10px 14px}
  .tn-nav .logo{white-space:nowrap}
  .tn-nav .tn-actions{flex:1 0 100%;margin:0;flex-wrap:wrap}
}
