  :root{
    --bg:#06060b; --cyan:#00f0ff; --violet:#7b2ff7; --line:#f8f8fa; --text:#f8f8fa; --muted:#aeb0bd;
    --warm:#e8a24c; --warm2:#d2703a;
    --display:'Clash Display',sans-serif; --body:'General Sans',sans-serif; --mono:'Space Mono',monospace;
    --grad:linear-gradient(120deg,var(--cyan),var(--violet));
    --gradw:linear-gradient(120deg,var(--warm),var(--warm2));
  }
  *{box-sizing:border-box}
  html{scroll-behavior:smooth}
  html,body{margin:0;background:var(--bg);color:var(--text);font-family:var(--body)}

  /* ===== Ambiances enchaînées (crossfade façon scanner, décor hero visible) ===== */
  .oamb{position:fixed;inset:0;z-index:1;overflow:hidden;pointer-events:none;will-change:opacity;opacity:0}
  .oamb video{width:100%;height:100%;object-fit:cover;transform-origin:center;transform:scale(1.14);transition:transform 1.2s cubic-bezier(.22,1,.36,1)}
  .oamb.act video{transform:scale(1)}
  .oamb::after{content:"";position:absolute;inset:0;
    background:radial-gradient(64% 66% at 50% 42%, #06060b33 0%, #06060ba6 60%, #06060bee 100%)}
  #ambMain video{filter:brightness(.95) saturate(1.05);object-position:64% 50%}
  #ambMain::after{background:linear-gradient(90deg,#06060bf0 0%,#06060ba8 36%,#06060b33 62%,transparent 100%)}
  #ambCircuit video{filter:brightness(.5) saturate(1.1)}
  @media (max-width:900px){#ambMain::after{background:linear-gradient(180deg,#06060b99,#06060bcc)}}
  #ambFaq video{filter:brightness(.5) saturate(1.12)}

  .page{position:relative;z-index:2}

  /* ===== Chip coin coupé ===== */
  .chip{display:inline-block;font-family:var(--mono);font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;color:var(--cyan);
    background:#00f0ff1a;padding:.32rem .74rem;margin:0 0 18px;
    clip-path:polygon(7px 0,100% 0,100% calc(100% - 7px),calc(100% - 7px) 100%,0 100%,0 7px)}

  /* ===== Nav biseautée ===== */
  .nav{position:fixed;top:0;left:0;right:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:20px;
    padding:14px clamp(16px,4vw,38px);background:linear-gradient(180deg,#06060bcc,#06060b00);
    backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:1px solid transparent;transition:background .3s ease,border-color .3s ease}
  .nav.scrolled{background:#06060be6;border-bottom-color:#ffffff12}
  .nav__logo{display:inline-flex;align-items:center;gap:11px;font-family:var(--display);font-weight:800;letter-spacing:.14em;font-size:.86rem;color:var(--text);text-decoration:none;white-space:nowrap}
  .nav__logo img{display:block;height:23px;width:auto}
    .nav__right{display:flex;align-items:center;gap:24px}
  .nav__links{display:flex;align-items:center;gap:24px}
  .nav__links a{font-size:.88rem;color:var(--muted);text-decoration:none;transition:color .2s ease}
  .nav__links a:hover{color:var(--text)}
  .nav__links a:focus-visible,.foot__col a:focus-visible,.foot__brand a:focus-visible{outline:2px solid var(--cyan);outline-offset:2px;border-radius:2px}
  .nav__cta{position:relative;display:inline-flex;align-items:center;gap:.5rem;font-weight:600;font-size:.88rem;color:var(--text);
    background:#e8a24c70;padding:.56rem 1.1rem;text-decoration:none;white-space:nowrap;
    clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px);
    transition:transform .2s ease,filter .25s ease,background .25s ease}
  .nav__cta::after{content:"";position:absolute;inset:1.4px;z-index:-1;background:#120d07;
    clip-path:polygon(7px 0,100% 0,100% calc(100% - 7px),calc(100% - 7px) 100%,0 100%,0 7px)}
  .nav__cta:hover{transform:translateY(-2px);background:var(--warm);filter:drop-shadow(0 8px 16px #e8a24c88)}
  .nav__cta:hover::after{background:#1a1206}
  .nav__cta:focus-visible{outline:2px solid var(--warm);outline-offset:3px}
  @media (max-width:760px){ .nav__links{display:none} .nav__right{gap:0} }

  .reveal{opacity:0;transform:translateY(40px) scale(.97);transition:opacity .75s cubic-bezier(.22,1,.36,1),transform .75s cubic-bezier(.22,1,.36,1);transition-delay:calc(var(--i,0)*80ms)}
  .reveal.in{opacity:1;transform:none}

  /* ===== Boutons signature ECG ===== */
  .btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:.6rem;font-family:var(--body);font-weight:600;font-size:.96rem;color:var(--text);
    text-decoration:none;cursor:pointer;background:#00f0ff5c;border:none;padding:.86rem 1.5rem;white-space:nowrap;
    clip-path:polygon(10px 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%,0 10px);
    transition:transform .2s ease,filter .25s ease,background .25s ease,opacity .2s ease}
  .btn::after{content:"";position:absolute;inset:1.5px;z-index:-1;background:#0a0a12;
    clip-path:polygon(9px 0,100% 0,100% calc(100% - 9px),calc(100% - 9px) 100%,0 100%,0 9px)}
  .btn::before{content:"";width:30px;height:16px;flex:none;opacity:.92;
    background:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='58'%20height='16'%20viewBox='0%200%2058%2016'%3E%3Cpath%20d='M0%208H17l3-5%204%2010%203-12%203%207h25'%20fill='none'%20stroke='%2300f0ff'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'/%3E%3C/svg%3E") repeat-x left center/58px 16px;
    animation:ecgscroll 1.9s linear infinite}
  @keyframes ecgscroll{to{background-position-x:-58px}}
  .btn svg{width:16px;height:16px;transition:transform .25s ease}
  .btn:hover{transform:translateY(-2px);background:var(--cyan);filter:drop-shadow(0 8px 18px #00f0ff88)}
  .btn:hover::after{background:#0d1420}
  .btn:hover::before{animation-duration:.85s}
  .btn:hover svg{transform:translateX(4px)}
  .btn:focus-visible{outline:2px solid var(--cyan);outline-offset:3px}
  .btn--warm{background:var(--warm)}
  .btn--warm::after{background:#140c03;transform-origin:right;transition:transform .4s cubic-bezier(.22,1,.36,1)}
  .btn--warm::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='58'%20height='16'%20viewBox='0%200%2058%2016'%3E%3Cpath%20d='M0%208H17l3-5%204%2010%203-12%203%207h25'%20fill='none'%20stroke='%23e8a24c'%20stroke-width='2'%20stroke-linecap='round'%20stroke-linejoin='round'/%3E%3C/svg%3E")}
  .btn--warm:hover{transform:translateY(-2px);background:var(--warm);color:#1a1206;filter:none}
  .btn--warm:hover::after{transform:scaleX(0)}
  .btn--warm:hover::before{filter:brightness(0)}
  .btn--warm:focus-visible{outline-color:var(--warm)}

  /* ===== Hero ===== */
  .hero{max-width:860px;margin:0 auto;padding:clamp(118px,16vh,172px) 6vw clamp(20px,4vh,34px);text-align:center}
  .hero h1{font-family:var(--display);font-weight:700;line-height:1.05;letter-spacing:-.01em;font-size:clamp(2.1rem,5vw,3.6rem);margin:0 0 18px}
  .hero h1 em{font-style:normal;color:#ffcf7a}
  .hero p.lede{font-size:clamp(1rem,1.6vw,1.18rem);color:var(--muted);line-height:1.6;margin:0 auto;max-width:60ch}

  /* ===== Démo live (carte verre au premier plan, voile local renforcé pour la lisibilité) ===== */
  .demowrap{max-width:720px;margin:clamp(26px,5vh,46px) auto 0;padding:0 6vw}
  .demo{position:relative;overflow:hidden;border:1px solid #ffffff22;border-radius:0;background:#0b0b16f2;
    backdrop-filter:blur(10px) saturate(1.15);-webkit-backdrop-filter:blur(10px) saturate(1.15);
    box-shadow:0 36px 90px -50px #7b2ff766,0 0 0 1px #ffffff0a}
  .demo__bar{display:flex;align-items:center;gap:12px;padding:16px 18px;border-bottom:1px solid #ffffff14;background:#0a0a12cc}
  .demo__avatar{width:40px;height:40px;border-radius:0;flex:none;background:#11111e;border:1px solid #ffffff14;object-fit:contain;padding:4px}
  .demo__id{display:flex;flex-direction:column;gap:2px;margin-right:auto;text-align:left}
  .demo__name{font-family:var(--display);font-weight:600;font-size:.98rem}
  .demo__status{display:flex;align-items:center;gap:7px;font-family:var(--mono);font-size:.62rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
  .demo__status i{width:7px;height:7px;border-radius:50%;background:#2fd08a;box-shadow:0 0 8px #2fd08a;animation:blink 1.6s ease-in-out infinite}
  @keyframes blink{50%{opacity:.3}}
  .demo__badge{font-family:var(--mono);font-size:.58rem;letter-spacing:.14em;color:var(--cyan);background:#00f0ff1a;padding:.3rem .6rem;white-space:nowrap;
    clip-path:polygon(6px 0,100% 0,100% calc(100% - 6px),calc(100% - 6px) 100%,0 100%,0 6px)}
  .demo__thread{padding:20px 18px 6px}
  .demo__bubble{border:1px solid #ffffff14;border-radius:4px 16px 16px 16px;background:#11111e;padding:14px 16px;max-width:92%}
  .demo__bubble p{margin:0;font-size:.95rem;line-height:1.6;color:var(--text);text-align:left}
  .demo__chips{display:flex;flex-wrap:wrap;gap:9px;list-style:none;margin:16px 0 4px;padding:0}
  .suggest{font-family:var(--mono);font-size:.74rem;letter-spacing:.02em;color:var(--text);cursor:pointer;
    border:1px solid #ffffff22;background:#0b0b16aa;padding:.5rem 1rem;min-height:36px;
    clip-path:polygon(7px 0,100% 0,100% calc(100% - 7px),calc(100% - 7px) 100%,0 100%,0 7px);
    transition:transform .2s ease,border-color .2s ease,color .2s ease}
  .suggest:hover{transform:translateY(-2px);border-color:var(--cyan);color:var(--cyan)}
  .suggest:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}
  .demo__form{display:flex;align-items:center;gap:9px;padding:14px 18px 18px}
  .demo__form input{flex:1 1 auto;min-width:0;background:#06060b;border:1px solid #ffffff22;border-radius:0;padding:.8rem 1rem;color:var(--text);font-family:var(--body);font-size:.96rem}
  .demo__form input:focus,.demo__form input:focus-visible{outline:2px solid var(--cyan);outline-offset:1px;border-color:transparent}
  .iconbtn{flex:none;display:grid;place-items:center;width:46px;height:46px;cursor:pointer;color:var(--text);
    border:1px solid #ffffff22;background:#0b0b16aa;
    clip-path:polygon(9px 0,100% 0,100% calc(100% - 9px),calc(100% - 9px) 100%,0 100%,0 9px);
    transition:transform .2s ease,border-color .2s ease,color .2s ease}
  .iconbtn svg{width:19px;height:19px}
  .iconbtn:hover{transform:translateY(-2px);border-color:var(--cyan);color:var(--cyan)}
  .iconbtn:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}
  .demo__send{color:#06060b;background:var(--cyan);border-color:transparent}
  .demo__send:hover{color:#06060b;filter:drop-shadow(0 6px 14px #00f0ff88)}
  .demo__state{margin:0;padding:0 18px 18px;min-height:1em;font-size:.85rem;line-height:1.5;color:var(--cyan);text-align:left}
  .demo__state.show{padding-top:2px}
  .demo__notes{max-width:720px;margin:16px auto 0;padding:0 6vw;display:flex;flex-direction:column;gap:9px}
  .demo__notes p{margin:0;font-size:.82rem;line-height:1.55;color:var(--muted);display:flex;align-items:flex-start;gap:9px}
  .demo__notes svg{width:16px;height:16px;flex:none;margin-top:2px;color:var(--cyan)}

  /* ===== Sections ===== */
  .sec{position:relative;padding:clamp(56px,9vh,110px) 6vw}
  .sec__wrap{position:relative;z-index:2;max-width:1120px;margin:0 auto}
  .sec__head{max-width:62ch;margin:0 0 clamp(32px,5vh,52px)}
  .sec__title{font-family:var(--display);font-weight:700;line-height:1.1;letter-spacing:-.01em;font-size:clamp(1.8rem,4vw,2.8rem);margin:0 0 14px}
  .sec__title em{font-style:normal;color:#ffcf7a}
  .sec__lead{font-size:clamp(1rem,1.6vw,1.16rem);color:var(--muted);line-height:1.6;margin:0}
  .sec__lead a{color:var(--cyan);text-decoration:none;border-bottom:1px solid #00f0ff55}
  .sec__lead a:hover{border-bottom-color:var(--cyan)}
  .sec__lead a:focus-visible{outline:2px solid var(--cyan);outline-offset:2px;border-radius:2px}

  /* La différence : comparatif 2 colonnes */
  .diff{display:grid;grid-template-columns:1fr 1fr;gap:18px}
  .col{border:1px solid #ffffff14;border-radius:0;padding:26px 24px;background:#0b0b1670;
    backdrop-filter:blur(10px) saturate(1.15);-webkit-backdrop-filter:blur(10px) saturate(1.15)}
  .col--a{border-top:2px solid #6b6d7a}
  .col--b{border-top:2px solid var(--cyan)}
  .col__tag{font-family:var(--mono);font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0 0 6px}
  .col--b .col__tag{color:var(--cyan)}
  .col h3{font-family:var(--display);font-weight:600;font-size:1.18rem;margin:0 0 16px}
  .col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:11px}
  .col li{position:relative;padding-left:26px;font-size:.92rem;line-height:1.55;color:var(--muted)}
  .col li svg{position:absolute;left:0;top:2px;width:17px;height:17px}
  .col--a li svg{color:#6b6d7a}
  .col--b li svg{color:#2fd08a}

  /* Déjà en action : 2 cartes */
  .action{display:grid;grid-template-columns:1fr 1fr;gap:18px}
  .act2{display:flex;flex-direction:column;border:1px solid #ffffff14;border-radius:0;padding:26px 24px;background:#0b0b1670;
    backdrop-filter:blur(10px) saturate(1.15);-webkit-backdrop-filter:blur(10px) saturate(1.15);border-top:2px solid var(--violet)}
  .act2:first-child{border-top-color:var(--cyan)}
  .act2__tag{font-family:var(--mono);font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0 0 6px}
  .act2 h3{font-family:var(--display);font-weight:600;font-size:1.18rem;margin:0 0 10px}
  .act2 p{font-size:.93rem;color:var(--muted);line-height:1.58;margin:0 0 18px}
  .act2 a{margin-top:auto;display:inline-flex;align-items:center;gap:.5rem;font-weight:600;font-size:.9rem;color:var(--cyan);text-decoration:none;align-self:flex-start}
  .act2 a svg{width:15px;height:15px;transition:transform .25s ease}
  .act2 a:hover svg{transform:translateX(4px)}
  .act2 a:focus-visible{outline:2px solid var(--cyan);outline-offset:3px;border-radius:2px}

  /* Sous le capot : 3 cartes numérotées */
  .caps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
  .cap{position:relative;border:1px solid #ffffff14;border-radius:0;padding:30px 24px 24px;background:#0b0b1670;
    backdrop-filter:blur(10px) saturate(1.15);-webkit-backdrop-filter:blur(10px) saturate(1.15);border-top:2px solid var(--cyan)}
  .cap:nth-child(2){border-top-color:var(--violet)}
  .cap:nth-child(3){border-top-color:#2fd08a}
  .cap__n{font-family:var(--mono);font-size:.82rem;color:var(--cyan)}
  .cap:nth-child(2) .cap__n{color:var(--violet)}
  .cap:nth-child(3) .cap__n{color:#2fd08a}
  .cap h3{font-family:var(--display);font-weight:600;font-size:1.14rem;margin:8px 0 10px}
  .cap p{font-size:.92rem;color:var(--muted);line-height:1.58;margin:0}

  /* FAQ constellation */
  .faq__list{display:flex;flex-direction:column;gap:12px}
  .qa{border:1px solid #ffffff14;border-radius:0;background:#0b0b1670;
    backdrop-filter:blur(10px) saturate(1.15);-webkit-backdrop-filter:blur(10px) saturate(1.15);overflow:hidden}
  .qa summary{list-style:none;cursor:pointer;padding:18px 22px;font-family:var(--display);font-weight:600;font-size:1.04rem;display:flex;align-items:center;justify-content:space-between;gap:16px}
  .qa summary::-webkit-details-marker{display:none}
  .qa summary::after{content:"";width:12px;height:12px;flex:none;border-right:2px solid var(--cyan);border-bottom:2px solid var(--cyan);transform:rotate(45deg);transition:transform .25s ease}
  .qa[open] summary::after{transform:rotate(-135deg)}
  .qa summary:focus-visible{outline:2px solid var(--cyan);outline-offset:-2px}
  .qa__a{padding:0 22px 20px;color:var(--muted);line-height:1.62;font-size:.95rem}
  .qa__a strong{color:var(--text)}

  /* CTA final conversion (warm) */
  .warn{position:relative;text-align:center;border:1px solid #e8a24c33;border-radius:0;padding:clamp(36px,6vw,66px) clamp(24px,5vw,56px);
    background:linear-gradient(160deg,#140f08cc,#0a0a12cc);backdrop-filter:blur(10px) saturate(1.15);-webkit-backdrop-filter:blur(10px) saturate(1.15);overflow:hidden}
  .warn::before{content:"";position:absolute;inset:0;background:radial-gradient(70% 120% at 50% 0%,#e8a24c1c,transparent 62%);pointer-events:none}
  .warn h2{position:relative;font-family:var(--display);font-weight:700;font-size:clamp(1.6rem,3.4vw,2.5rem);line-height:1.14;margin:0 0 14px}
  .warn h2 em{font-style:normal;color:#ffcf7a}
  .warn p{position:relative;color:var(--muted);line-height:1.6;max-width:56ch;margin:0 auto 26px}
  .warn__btns{position:relative;display:flex;flex-wrap:wrap;gap:14px;justify-content:center}

  /* ===== Footer signature (pouls) ===== */
  .foot{position:relative;z-index:40;overflow:hidden;background:#07070d;border-top:1px solid #ffffff14;padding:clamp(50px,7vh,88px) 6vw clamp(18px,3vh,30px);color:var(--muted)}
  .foot::before{content:"";position:absolute;inset:0;background:radial-gradient(70% 130% at 50% 0%,#7b2ff716,transparent 68%);pointer-events:none}
  .foot__pulse{display:block;width:100%;height:42px;margin:clamp(34px,5vh,56px) 0 clamp(16px,3vh,26px);opacity:.55;overflow:visible}
  .foot__pulse path{fill:none;stroke:url(#footGrad);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:14 10;animation:footflow 2.6s linear infinite}
  @keyframes footflow{to{stroke-dashoffset:-48}}
  .foot__wrap{position:relative;z-index:2;max-width:1180px;margin:0 auto}
  .foot__cta{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:22px;padding:0 0 clamp(34px,5vh,52px);margin:0 0 clamp(34px,5vh,52px);border-bottom:1px solid #ffffff14}
  .foot__cta h2{font-family:var(--display);font-weight:700;font-size:clamp(1.5rem,3.4vw,2.5rem);line-height:1.1;margin:0;color:var(--text);letter-spacing:-.01em}
  .foot__cta h2 em{font-style:normal;color:#ffcf7a}
  .foot__top{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:30px 24px}
  .foot__brand p{margin:0 0 9px;font-size:.9rem;line-height:1.6;max-width:36ch}
  .foot__brand a{color:var(--muted);text-decoration:none}
  .foot__brand a:hover{color:var(--text)}
  .foot__col h4{font-family:var(--mono);font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:0 0 15px}
  .foot__col ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
  .foot__col a{font-size:.9rem;color:#b8bac4;text-decoration:none;transition:color .2s ease}
  .foot__col a:hover{color:var(--cyan)}
  .foot__lockup{display:flex;align-items:center;gap:13px;margin:0 0 14px}
  .foot__mark{width:clamp(52px,6vw,70px);height:auto;flex:none;opacity:.95;animation:footglow 4.5s ease-in-out infinite}
  .foot__name{font-family:var(--display);font-weight:800;font-size:.98rem;color:var(--text);letter-spacing:.14em}
    @keyframes footglow{0%,100%{filter:drop-shadow(0 0 7px #00f0ff40)}50%{filter:drop-shadow(0 0 15px #00f0ff82) drop-shadow(0 0 30px #7b2ff755)}}
  .foot__bottom{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;font-size:.8rem;margin-top:22px}
  .foot__bottom p{margin:0}

  @media (max-width:900px){ .diff{grid-template-columns:1fr} .action{grid-template-columns:1fr} .caps{grid-template-columns:1fr} }
  @media (max-width:820px){ .foot__top{grid-template-columns:1fr 1fr} .foot__brand{grid-column:1/-1} }
  @media (max-width:480px){ .foot__top{grid-template-columns:1fr} .foot__bottom{flex-direction:column;align-items:flex-start} .warn__btns{flex-direction:column} .warn__btns .btn{width:100%} .iconbtn{width:44px;height:44px} }
  /* Mobile : les vidéos plein écran et les calques de flou font chuter le
     débit d'images sur certains téléphones. Les images fixes conservent
     l'ambiance sans monopoliser le GPU. */
  @media (max-width:900px){
    .oamb video{display:none}
    #ambMain{background:linear-gradient(180deg,#06060b66,#06060bcc),url('/assets/assistant-amb-still.webp') center/cover no-repeat}
    #ambCircuit{background:linear-gradient(#06060b77,#06060bd9),url('/assets/drea-valeur-still.webp') center/cover no-repeat}
    #ambFaq{background:linear-gradient(#06060b77,#06060bd9),url('/assets/faq-amb-still.jpg') center/cover no-repeat}
    .nav,.demo,.col,.act2,.cap,.qa,.warn{backdrop-filter:none;-webkit-backdrop-filter:none}
  }
  @media (prefers-reduced-motion:reduce){
    html{scroll-behavior:auto}
    .reveal{opacity:1;transform:none;transition:none}
    .oamb video{transform:scale(1.06)!important;transition:none}
    .demo__status i,.foot__mark,.foot__pulse path,.btn::before{animation:none!important}
    .qa summary::after{transition:none}
  }

/* hero à gauche, le robot Dédé à droite */
@media (min-width:1000px){.hero{margin:0;max-width:min(660px,52vw);padding-left:max(6vw,64px);text-align:left}.hero p.lede{margin-left:0}}
