/* L'attribut hidden prime sur toute regle display (filtres, pagination, menus). */
[hidden]{display:none!important}

:root{--a900:#1B0A22;--a800:#230D2C;--a700:#290F33;--a600:#2F193C;--a500:#3D2150;--a400:#4C0990;--a300:#6B0990;--c4:#43DBFF;--c3:#9CF7FE;--c2:#C7FBFF;--mist:rgba(255,255,255,.72);--mist2:rgba(255,255,255,.45);--hair:rgba(156,247,254,.14);--red:#FF5C7A;--body:'Manrope',sans-serif;--disp:'Sora',sans-serif;--mono:'JetBrains Mono',monospace;}
*{box-sizing:border-box;}
body{margin:0;background:#1B0A22;color:#fff;font-family:var(--body);-webkit-font-smoothing:antialiased;overflow-x:hidden;}
::selection{background:rgba(67,219,255,.3);color:#fff;}
input,textarea,select,button{font-family:inherit;}
a{color:inherit;}
@keyframes floatY{0%,100%{transform:translateY(0);}50%{transform:translateY(-7px);}}
@keyframes marquee{from{transform:translateX(0);}to{transform:translateX(-50%);}}
@keyframes scanY{0%{top:-6%;opacity:0;}12%{opacity:1;}88%{opacity:1;}100%{top:104%;opacity:0;}}
@keyframes rowIn{from{opacity:0;transform:translateX(12px);}to{opacity:1;transform:none;}}
@keyframes boxIn{from{opacity:0;transform:scale(.9);}to{opacity:1;transform:none;}}
@keyframes revealUp{from{opacity:0;transform:translateY(26px);}to{opacity:1;transform:none;}}
@keyframes pulseRing{0%{transform:scale(.5);opacity:.85;}100%{transform:scale(2.8);opacity:0;}}
@keyframes blink{0%,49%{opacity:1;}50%,100%{opacity:0;}}
@keyframes blobDrift{0%,100%{transform:translate(0,0) scale(1);}50%{transform:translate(46px,-34px) scale(1.18);}}
@keyframes spinSlow{to{transform:rotate(360deg);}}
@keyframes travel{0%{left:1%;opacity:0;}7%{opacity:1;}33%{left:33%;}40%{left:35%;}66%{left:65%;}73%{left:67%;}92%{left:90%;opacity:1;}100%{left:93%;opacity:0;}}
@keyframes lit1{0%,100%{opacity:.22;}5%,30%{opacity:1;}}
@keyframes lit2{0%,100%{opacity:.22;}40%,62%{opacity:1;}}
@keyframes lit3{0%,100%{opacity:.22;}72%,95%{opacity:1;}}
@keyframes sweepX{0%{left:-30%;}100%{left:130%;}}
[data-reveal]{animation:revealUp 1s cubic-bezier(.16,1,.3,1) both;animation-timeline:view();animation-range:entry 3% cover 24%;}
@media (max-width:980px){[data-cols2]{grid-template-columns:1fr !important;}[data-hero-demo]{grid-template-columns:1fr !important;}[data-navlinks]{display:none !important;}[data-mobilecta]{display:flex !important;}[data-pipe]{grid-template-columns:1fr !important;}}
@media (max-width:640px){[data-pad]{padding-left:20px !important;padding-right:20px !important;}}
@media (prefers-reduced-motion:reduce){*{animation:none !important;transition:none !important;scroll-behavior:auto !important;}[data-reveal]{opacity:1 !important;transform:none !important;}}
/* États pilotés par main.js : !important car les boutons portent leur style en ligne. */
[data-sector-chip].chip-on{border-color:rgba(156,247,254,.5)!important;background:rgba(156,247,254,.12)!important;color:var(--c2)!important;}
[data-uc-tab].uc-on{border-color:rgba(156,247,254,.45)!important;background:rgba(156,247,254,.1)!important;color:var(--c2)!important;}
[data-docs]>[data-doc].doc-on{border-color:rgba(156,247,254,.5)!important;color:var(--c2)!important;}
[data-docs]>[data-doc].doc-off{opacity:.25;}
