/* =====================================================================
   Ï-NAYA — PAGE DATA & IA · v1 (Desktop / Tablette / Mobile)
   Toutes les règles sont confinées au conteneur .nxd (aucune collision Webflow/Framer).
   Police : Inter (Google Fonts) — voir LISEZ-MOI.md
   ===================================================================== */
html{scroll-behavior:smooth;scroll-padding-top:100px}
html.nxd-lock,html.nxd-lock body{overflow:hidden}
@media(max-width:850px){html{scroll-padding-top:70px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.nxd.is-paused *,.nxd.is-paused *::before,.nxd.is-paused *::after{animation-play-state:paused!important}

/* ---------- 1. MAQUETTE (styles d'origine, confinés) ---------- */

.nxd{--navy:#071b37;--navy2:#0d2d55;--deep:#061327;--blue:#0d64c8;--azure:#147beb;--cyan:#24d1e5;--cyan2:#5af2f1;--ink:#0c2442;--text:#273f5a;--muted:#647791;--line:#dce8f2;--pale:#f3f9fd;--paper:#fff;--shadow:0 14px 44px rgba(3,29,64,.065)}
.nxd *,.nxd *::before,.nxd *::after{box-sizing:border-box}.nxd{margin:0;color:var(--ink);background:#fff;font-family:"Inter","Inter Display",ui-sans-serif,system-ui,-apple-system,"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}.nxd a{color:inherit;text-decoration:none}.nxd button{font:inherit}.nxd svg{display:block}.nxd .ico{height:20px;width:20px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.nxd h1,.nxd h2,.nxd h3,.nxd h4,.nxd p{margin-top:0}.nxd h1,.nxd h2,.nxd h3,.nxd h4{letter-spacing:-.042em}.nxd p{line-height:1.77}.nxd strong{font-weight:700}.nxd .container{width:min(calc(100% - 112px),1320px);margin-inline:auto}.nxd .section{padding:112px 0;position:relative}.nxd .eyebrow{font-size:11px;font-weight:800;letter-spacing:.185em;text-transform:uppercase;color:#0873cd;display:flex;gap:13px;align-items:center;margin-bottom:22px}.nxd .eyebrow:before{content:"";width:23px;height:2px;background:var(--cyan);display:inline-block}.nxd .eyebrow-on-dark{color:#69def3}.nxd .cyan-text{color:#119acb}.nxd .section h2{font-size:clamp(34px,3.3vw,50px);line-height:1.15;font-weight:770;letter-spacing:-.056em;margin-bottom:24px}.nxd .section-topline{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(310px,.6fr);gap:120px;align-items:end;margin-bottom:48px}.nxd .section-topline h2{margin-bottom:0}.nxd .section-topline p{font-size:15px;color:var(--muted);margin:0;line-height:1.85}.nxd .text-link{display:inline-flex;align-items:center;gap:13px;color:#075da9;font-size:13px;font-weight:750;padding-bottom:7px;border-bottom:1px solid #aad7e9;transition:gap .2s,color .2s}.nxd .text-link:hover{gap:22px;color:#0e9ec2}.nxd .text-link .ico{height:16px;width:16px}.nxd .btn{display:inline-flex;justify-content:center;align-items:center;gap:15px;min-height:52px;padding:14px 23px;font-size:13px;line-height:1.2;font-weight:760;border-radius:9px;white-space:nowrap;transition:transform .25s,background .25s,box-shadow .25s;border:1px solid transparent}.nxd .btn:hover{transform:translateY(-2px)}.nxd .btn-primary{background:linear-gradient(125deg,#35e0e8,#18bee2);color:#052b46;box-shadow:0 8px 30px rgba(2,206,225,.14)}.nxd .btn-primary:hover{background:linear-gradient(125deg,#79f4fa,#26d3f0);box-shadow:0 9px 40px rgba(2,206,225,.22)}.nxd .btn .ico{height:17px;width:17px}.nxd .btn-ghost{background:transparent;color:#effaff;border-color:rgba(171,224,255,.35)}.nxd .btn-ghost:hover{background:rgba(255,255,255,.08)}.nxd .btn-outline{border-color:#bdd1e6;background:#fff;color:#0a315e}.nxd .btn-outline:hover{border-color:var(--cyan);box-shadow:var(--shadow)}

.nxd .site-header{position:sticky;top:0;z-index:60;background:rgba(255,255,255,.97);border-bottom:1px solid rgba(17,57,108,.09);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.nxd .header-inner{height:80px;display:flex;align-items:center;gap:20px}.nxd .brand{position:relative;display:inline-block;white-space:nowrap;font-weight:860;font-size:32px;letter-spacing:-.075em;line-height:1;color:#093569;padding:3px 2px}.nxd .brand-dots{position:absolute;color:#19cbe1;font-size:28px;line-height:1;left:1px;top:-12px;letter-spacing:7px;pointer-events:none}.nxd .brand-stroke{position:absolute;height:3px;width:58px;background:linear-gradient(90deg,#2fe2f0,#0774db);right:-3px;bottom:-3px;border-radius:2px;transform:skew(-30deg)}.nxd .desktop-nav{display:flex;align-items:center;justify-content:center;gap:25px;margin-left:auto;margin-right:auto}.nxd .desktop-nav a{position:relative;padding:32px 0;color:#39536c;font-size:12px;font-weight:650;white-space:nowrap;transition:color .2s}.nxd .desktop-nav a:hover,.nxd .desktop-nav a.active{color:#035da8}.nxd .desktop-nav a.active:after{position:absolute;content:"";height:2px;background:var(--cyan);left:0;right:0;bottom:0}.nxd .caret{font-size:14px}.nxd .btn-header{font-size:12px;min-height:43px;padding:11px 19px;border-radius:24px}.nxd .btn-header .ico{width:15px;height:15px}.nxd .menu-toggle,.nxd .mobile-nav{display:none}

.nxd .hero{background:linear-gradient(113deg,#06162e 0%,#0a254c 54%,#0a2f61 100%);color:#fff;overflow:hidden;position:relative}.nxd .hero-atmosphere{position:absolute;inset:0;background:radial-gradient(ellipse at 71% 41%,rgba(14,139,225,.3),transparent 43%),radial-gradient(ellipse at 93% 0%,rgba(13,181,216,.16),transparent 35%);pointer-events:none}.nxd .hero-main{position:relative;display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:36px;align-items:center;padding:88px 0 90px;min-height:675px}.nxd .hero-copy{position:relative;z-index:3;padding-bottom:4px}.nxd .hero-copy .eyebrow{font-size:10px;letter-spacing:.17em;margin-bottom:23px}.nxd .hero-pill{font-size:9.5px;letter-spacing:.11em;font-weight:750;color:#afd9ed;border:1px solid rgba(119,213,237,.25);padding:10px 12px;border-radius:30px;display:inline-flex;align-items:center;gap:8px;margin-bottom:26px;background:rgba(11,95,144,.16)}.nxd .live-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#44edf0;box-shadow:0 0 12px rgba(68,237,240,.72)}.nxd .hero h1{font-size:clamp(43px,4.3vw,69px);font-weight:780;line-height:1.07;letter-spacing:-.066em;max-width:700px;margin-bottom:25px}.nxd .hero h1 em{font-style:normal;color:#50dbe8}.nxd .hero-lead{font-size:15.5px;line-height:1.9;max-width:525px;color:#c9daeb;margin-bottom:32px}.nxd .hero-lead strong{color:#fff}.nxd .hero-actions{display:flex;gap:12px;flex-wrap:wrap}.nxd .hero-proof{display:flex;flex-wrap:wrap;gap:22px;margin-top:30px}.nxd .hero-proof span{font-size:11px;color:#a3c5db;display:flex;align-items:center;gap:6px;white-space:nowrap}.nxd .hero-proof .ico{height:13px;width:13px;color:#4ae8ef}.nxd .hero-art{height:440px;position:relative;margin-left:-15px;filter:drop-shadow(0 20px 40px rgba(0,6,40,.32))}.nxd .hero-art-photo{position:absolute;inset:16px -85px 0 -50px;background:linear-gradient(90deg,#082246 3%,rgba(2,19,50,.16) 28%,transparent 52%),linear-gradient(0deg,#082446 0%,transparent 40%),none;border-radius:35px;mask-image:radial-gradient(ellipse at 58% 47%,#000 36%,transparent 78%)}.nxd .hero-art-shine{position:absolute;width:75%;height:70%;right:0;top:10%;border-radius:50%;background:radial-gradient(ellipse,rgba(4,160,247,.12),transparent 72%);filter:blur(12px)}.nxd .art-meta{position:absolute;z-index:3;min-width:142px;min-height:60px;padding:12px 16px;font-weight:800;letter-spacing:.08em;line-height:1.5;font-size:9px;border:1px solid rgba(89,195,245,.38);background:rgba(7,37,74,.76);box-shadow:0 10px 30px rgba(0,0,0,.11);backdrop-filter:blur(10px);border-radius:9px;color:#7be5f4}.nxd .art-meta strong{display:block;color:#f7feff;font-size:11px;letter-spacing:.015em;margin-top:3px}.nxd .mini-dot{display:inline-block;width:5px;height:5px;background:#46e6f0;border-radius:50%;margin-right:3px}.nxd .art-meta-one{left:5%;top:3%}.nxd .art-meta-two{right:17%;top:0}.nxd .art-meta-three{right:-1%;bottom:19%}.nxd .pulse{position:absolute;width:8px;height:8px;border-radius:50%;background:#a9ffff;box-shadow:0 0 0 7px rgba(25,210,237,.16),0 0 30px 12px rgba(40,207,245,.25);animation:nxdPulse 3s infinite}.nxd .pulse-one{left:17%;top:50%}.nxd .pulse-two{left:56%;top:36%;animation-delay:1s}.nxd .pulse-three{left:82%;top:61%;animation-delay:2s}.nxd .art-legend{position:absolute;bottom:4%;right:3%;font-size:10px;font-weight:730;letter-spacing:.09em;color:#9fddf2;display:flex;align-items:center;gap:10px}.nxd .art-legend-line{width:28px;height:2px;background:var(--cyan)}.nxd .hero-rail{position:relative;display:grid;grid-template-columns:repeat(4,1fr);z-index:5;padding:0 0 32px;margin-top:-10px}.nxd .hero-rail div{display:flex;align-items:center;gap:14px;font-size:12px;font-weight:650;border-right:1px solid rgba(158,205,235,.22);padding:12px 32px}.nxd .hero-rail div:first-child{padding-left:0}.nxd .hero-rail div:last-child{border-right:0}.nxd .hero-rail .ico{width:25px;height:25px;color:#39dce9}.nxd .hero-bottom-line{height:4px;background:linear-gradient(90deg,#0d3e89,#21d9e9 53%,#1776de)}

.nxd .section-challenges{background:#f7fbff}.nxd .challenges-grid{display:grid;grid-template-columns:.88fr 1.12fr;gap:100px}.nxd .section-intro h2{font-size:clamp(34px,3.1vw,48px)}.nxd .section-intro p{font-size:15px;color:var(--muted);max-width:400px}.nxd .section-intro .text-link{margin-top:15px}.nxd .challenge-decoration{position:relative;width:300px;height:124px;margin-top:54px;overflow:hidden}.nxd .challenge-decoration span{position:absolute;left:8%;width:92%;height:75px;border:1px solid rgba(12,142,199,.15);border-radius:50%;transform:rotate(-18deg)}.nxd .challenge-decoration span:nth-child(2){top:17px;left:0;border-color:rgba(12,142,199,.28)}.nxd .challenge-decoration span:nth-child(3){top:37px;border-color:rgba(12,142,199,.36)}.nxd .challenge-decoration span:nth-child(4){top:57px;left:2%;border-color:rgba(12,142,199,.15)}.nxd .challenge-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.nxd .challenge-card{background:#fff;padding:28px 26px 22px;border:1px solid #e5eef7;box-shadow:var(--shadow);border-radius:13px;min-height:257px;position:relative;transition:transform .2s,box-shadow .2s}.nxd .challenge-card:hover{transform:translateY(-4px);box-shadow:0 18px 50px rgba(3,29,64,.1)}.nxd .circle-icon{border-radius:50%;width:48px;height:48px;background:#e7f9fe;display:grid;place-items:center;color:#057cbe}.nxd .circle-icon .ico{width:25px;height:25px}.nxd .challenge-index{position:absolute;right:26px;top:34px;font-size:12px;color:#8db3d1;font-weight:750}.nxd .challenge-card h3{font-size:18px;line-height:1.25;font-weight:760;margin:24px 0 11px}.nxd .challenge-card p{color:var(--muted);font-size:12px;line-height:1.68;margin-bottom:19px}.nxd .challenge-result{font-size:10.5px;font-weight:650;color:#6f90a6;border-top:1px solid #edf3fa;padding-top:13px}.nxd .challenge-result span{color:#078bb8;font-weight:780}

.nxd .section-expertises{background:#fff}.nxd .expertise-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.nxd .expertise-card{border:1px solid #e3ebf3;border-radius:14px;padding:28px 28px 24px;background:#fff;min-height:360px;display:flex;flex-direction:column;box-shadow:0 6px 16px rgba(3,37,80,.022);transition:box-shadow .24s,transform .24s,border-color .24s}.nxd .expertise-card:hover{transform:translateY(-5px);border-color:#91dbef;box-shadow:0 18px 40px rgba(3,37,80,.09)}.nxd .card-top{display:flex;justify-content:space-between;align-items:center}.nxd .card-top>span{font-size:10px;letter-spacing:.11em;color:#91a4b9;font-weight:720}.nxd .square-icon{height:50px;width:50px;border:1px solid #cceefe;border-radius:11px;background:linear-gradient(140deg,#f4fcff,#e9f7fc);color:#0785c9;display:grid;place-items:center}.nxd .square-icon .ico{height:27px;width:27px}.nxd .expertise-card h3{font-size:22px;line-height:1.21;letter-spacing:-.044em;margin:24px 0 11px;min-height:52px}.nxd .expertise-card p{font-size:12.5px;color:var(--muted);line-height:1.69;margin-bottom:20px}.nxd .tags{margin-top:auto;display:flex;flex-wrap:wrap;gap:6px}.nxd .tags span{font-size:9.5px;background:#f0f6fb;color:#507392;padding:6px 9px;border-radius:4px;font-weight:650}.nxd .card-link{font-size:11.5px;font-weight:760;color:#0872bd;display:flex;align-items:center;justify-content:space-between;margin-top:25px;border-top:1px solid #eaf0f6;padding-top:17px}.nxd .card-link .ico{width:16px;height:16px}

.nxd .section-architecture{background:linear-gradient(125deg,#07172f,#0c3060 68%,#08284e);color:#fff;overflow:hidden}.nxd .architecture-glow{position:absolute;width:900px;height:700px;right:-350px;top:-200px;border-radius:50%;background:radial-gradient(ellipse,rgba(0,176,241,.17),transparent 66%);filter:blur(10px)}.nxd .section-topline.on-dark{position:relative}.nxd .on-dark h2{color:#fff}.nxd .on-dark p{color:#acc5df}.nxd .on-dark .cyan-text{color:#5de8ee}.nxd .architecture-diagram{display:grid;grid-template-columns:1fr .18fr 1.55fr .18fr 1fr;gap:11px;align-items:center;margin-top:55px;position:relative}.nxd .arch-column{padding:20px 16px;border:1px solid rgba(100,188,230,.26);background:rgba(7,34,72,.6);border-radius:14px;min-height:380px}.nxd .arch-column-title{font-size:9px;letter-spacing:.11em;color:#78bfdb;font-weight:800;margin:1px 0 23px}.nxd .arch-pill{display:flex;align-items:center;gap:11px;background:rgba(255,255,255,.075);border:1px solid rgba(176,217,235,.17);border-radius:8px;margin-bottom:12px;padding:13px 12px;min-height:56px;font-size:12px;font-weight:650;color:#e9f7ff}.nxd .arch-pill:last-child{margin-bottom:0}.nxd .arch-pill .ico{width:19px;height:19px;color:#65dbf4}.nxd .arch-engine{padding:20px 16px;background:linear-gradient(145deg,rgba(9,68,124,.67),rgba(8,35,75,.86));border-color:rgba(91,198,241,.48)}.nxd .arch-engine .arch-column-title{text-align:center}.nxd .arch-engine-card{min-height:79px;border-radius:9px;display:flex;align-items:center;gap:15px;margin-bottom:13px;background:linear-gradient(120deg,#0d4f9c,#1388ca);padding:13px 17px;box-shadow:0 8px 25px rgba(0,10,30,.15)}.nxd .arch-engine-card:nth-of-type(3){background:linear-gradient(110deg,#0e71a2,#14aab8)}.nxd .arch-engine-card:nth-of-type(4){background:linear-gradient(110deg,#122f83,#2b52a2)}.nxd .arch-engine-card:last-child{margin-bottom:0}.nxd .arch-engine-card .ico{color:#bcf6ff;width:27px;height:27px}.nxd .arch-engine-card div{flex:1}.nxd .arch-engine-card b{display:block;font-size:13px;line-height:1.4}.nxd .arch-engine-card small{font-size:10px;display:block;color:#cce9f9;margin-top:4px}.nxd .arch-engine-card>span{font-size:11px;color:rgba(255,255,255,.52)}.nxd .arch-connector{display:grid;place-items:center;gap:50px}.nxd .arch-connector span{display:block;width:100%;height:1px;background:#39b7dd;position:relative}.nxd .arch-connector span:after{content:"";position:absolute;right:0;top:-3px;width:7px;height:7px;border-right:1px solid #37dff0;border-top:1px solid #37dff0;transform:rotate(45deg)}.nxd .arch-note{display:flex;align-items:center;gap:11px;padding:26px 2px 0;font-size:12px;color:#a2bed5}.nxd .arch-note>.ico{color:#55e5e8}.nxd .arch-note a{color:#5ce6f3;font-weight:750;margin-left:auto;display:flex;align-items:center;gap:8px}.nxd .arch-note a .ico{width:15px;height:15px}

.nxd .section-usecases{background:#fff}.nxd .case-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.nxd .case-card{overflow:hidden;border:1px solid #e5edf5;border-radius:13px;background:#fff;box-shadow:var(--shadow);transition:transform .2s}.nxd .case-card:hover{transform:translateY(-5px)}.nxd .case-visual{height:200px;position:relative;overflow:hidden;background:#082a51}.nxd .visual-label{position:absolute;top:16px;left:16px;font-size:9px;color:#cffaff;font-weight:850;letter-spacing:.12em;z-index:4}.nxd .case-floating{position:absolute;z-index:4;display:flex;align-items:center;gap:6px;right:12px;bottom:14px;border-radius:6px;border:1px solid rgba(133,222,247,.45);background:rgba(11,38,77,.77);padding:9px 12px;font-size:10px;color:#eaffff;backdrop-filter:blur(6px)}.nxd .case-floating .ico{width:13px;height:13px;color:#50edee}.nxd .case-finance{background:radial-gradient(ellipse at 76% 20%,#1065bb,#092950 64%,#071b37)}.nxd .finance-board{position:absolute;top:54px;left:22px;width:83%;height:114px;display:flex;gap:12px;border:1px solid rgba(124,211,245,.38);padding:14px;background:rgba(4,22,49,.77);transform:perspective(400px) rotateY(-12deg) rotateX(4deg);box-shadow:9px 14px 15px #04153166}.nxd .chart-lines{display:flex;align-items:flex-end;gap:8px;flex:1;border-bottom:1px solid #367bab}.nxd .chart-lines span{flex:1;background:linear-gradient(#30dff2,#1567b1);border-radius:4px 4px 0 0;height:37%}.nxd .chart-lines span:nth-child(2){height:72%}.nxd .chart-lines span:nth-child(3){height:55%}.nxd .chart-lines span:nth-child(4){height:83%}.nxd .chart-lines span:nth-child(5){height:66%}.nxd .finance-numbers{display:flex;flex-direction:column;justify-content:center;gap:6px;flex:1}.nxd .finance-numbers small{font-size:8px;color:#70d4ef}.nxd .finance-numbers b{font-size:13px}.nxd .finance-numbers i{font-style:normal;font-size:9px;color:#6edbcf}.nxd .case-retail{background:radial-gradient(circle at 35% 80%,#0e687e,#062a56 72%)}.nxd .retail-bars{position:absolute;left:20px;right:20px;bottom:27px;top:70px;display:flex;align-items:flex-end;gap:10px;opacity:.8}.nxd .retail-bars span{flex:1;background:linear-gradient(#1ba8db,#0d477d);border-radius:4px 4px 0 0;height:40%}.nxd .retail-bars span:nth-child(2){height:56%}.nxd .retail-bars span:nth-child(3){height:34%}.nxd .retail-bars span:nth-child(4){height:67%}.nxd .retail-bars span:nth-child(5){height:50%}.nxd .retail-bars span:nth-child(6){height:82%}.nxd .retail-bars span:nth-child(7){height:63%}.nxd .retail-bars span:nth-child(8){height:97%}.nxd .retail-line{position:absolute;left:22px;right:22px;top:66px;height:90px;filter:drop-shadow(0 2px 5px #35e4fc)}.nxd .retail-line svg{width:100%;height:100%}.nxd .case-banking{background:radial-gradient(circle at 65% 45%,#14508b,#061a3a 65%)}.nxd .doc-stack{position:absolute;left:31px;top:53px;width:122px;height:125px}.nxd .doc-stack>div{width:105px;height:111px;position:absolute;top:0;left:0;background:linear-gradient(140deg,#fbffff,#a8dcf2);border-radius:8px;transform:rotate(-10deg);padding:20px 14px;box-shadow:0 8px 28px #031a4599}.nxd .doc-stack>div:first-child{transform:rotate(9deg);left:16px;top:4px;background:#a1cbdf}.nxd .doc-stack .ico{color:#2c7bb9;width:23px;height:23px}.nxd .doc-stack span{display:block;height:4px;background:#6eafcd;border-radius:2px;margin-top:12px}.nxd .doc-stack span:last-child{width:70%;margin-top:7px}.nxd .ai-orb{position:absolute;right:30px;top:70px;height:86px;width:86px;border-radius:50%;background:radial-gradient(circle,#0f94b4,#08254d 68%);border:1px solid #55cce8;box-shadow:0 0 55px #18c7ef63;display:grid;place-items:center;color:#99eafa}.nxd .ai-orb .ico{width:43px;height:43px}.nxd .case-industry{background:radial-gradient(circle at 30% 50%,#175b85,#092343 62%,#07182e)}.nxd .industry-grid{position:absolute;inset:45px 15px 24px;display:grid;grid-template-columns:repeat(4,1fr);grid-template-rows:repeat(2,1fr);gap:10px;opacity:.48}.nxd .industry-grid span{border:1px solid #38bbda70;border-radius:2px;background:linear-gradient(160deg,#144a85,#122e52)}.nxd .industry-curve{position:absolute;width:90%;height:130px;top:39px;left:6%;filter:drop-shadow(0 0 9px #10e2fb)}.nxd .case-info{padding:22px 20px 21px;min-height:235px;display:flex;flex-direction:column}.nxd .case-sector{font-size:9.5px;font-weight:800;color:#008ac7;letter-spacing:.075em;margin-bottom:12px}.nxd .case-info h3{font-size:19px;line-height:1.23;margin-bottom:12px}.nxd .case-info p{font-size:12px;line-height:1.7;color:#64758a;margin-bottom:18px}.nxd .case-measure{margin-top:auto;display:flex;gap:6px;align-items:flex-start;font-size:10px;color:#647b8d;border-top:1px solid #ebf1f7;padding-top:13px}.nxd .case-measure .ico{height:14px;width:14px;color:#0989b7}.nxd .usecase-caveat{margin:21px 0 0;display:flex;gap:8px;align-items:center;font-size:11px;color:#7b8ca1}.nxd .usecase-caveat .ico{width:15px;height:15px;color:#0a92b9}

.nxd .section-method{background:linear-gradient(150deg,#f0f8fe,#fff 60%,#f6f5ff)}.nxd .method-line{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;position:relative}.nxd .method-line:before{content:"";position:absolute;left:6%;right:6%;top:80px;border-top:1px dashed #9bcde7}.nxd .method-item{position:relative;min-height:278px;padding:27px 19px 23px;background:white;border-radius:13px;border:1px solid #e1ebf7;box-shadow:var(--shadow);text-align:left}.nxd .method-num{display:block;font-size:11px;color:#1c93bd;font-weight:800;margin-bottom:15px;letter-spacing:.1em}.nxd .method-ico{height:54px;width:54px;background:#edfaff;display:grid;place-items:center;border:1px solid #d1effa;border-radius:12px;position:relative;z-index:1;margin-bottom:25px}.nxd .method-ico .ico{width:27px;height:27px;color:#097fbb}.nxd .method-item h3{font-size:17px;margin-bottom:9px}.nxd .method-item p{font-size:11.5px;color:#657d92;line-height:1.7;margin-bottom:20px}.nxd .method-deliverable{display:block;font-size:10px;color:#0a7fb1;font-weight:750;padding-top:13px;border-top:1px solid #eaf0f5;margin-top:auto}.nxd .method-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:30px;border-top:1px solid #dcecf7;padding-top:28px;gap:30px}.nxd .method-bottom div{display:flex;gap:12px;flex-wrap:wrap;font-size:13px}.nxd .method-bottom div span{color:#7b8b9d}

.nxd .section-trust{background:linear-gradient(120deg,#07182f 0%,#0a315b 90%);color:white;overflow:hidden}.nxd .trust-header{display:grid;grid-template-columns:1fr .62fr;align-items:end;gap:130px;position:relative}.nxd .trust-header h2{margin:0;color:#fff}.nxd .trust-header h2 .cyan-text{color:#50e7ee}.nxd .trust-header p{color:#bbd1df;margin:0;font-size:14.5px}.nxd .trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;position:relative;margin-top:62px}.nxd .trust-item{padding:2px 25px 0;border-right:1px solid rgba(134,200,236,.25);min-height:174px}.nxd .trust-item:first-child{padding-left:0}.nxd .trust-item:last-child{border:0}.nxd .trust-icon{height:47px;width:47px;border:1px solid rgba(77,220,237,.42);border-radius:12px;background:rgba(24,126,170,.2);color:#51e6ef;display:grid;place-items:center;margin-bottom:23px}.nxd .trust-icon .ico{width:24px;height:24px}.nxd .trust-item h3{font-size:17px;letter-spacing:-.02em;margin-bottom:10px}.nxd .trust-item p{font-size:12px;color:#a6c5db;line-height:1.7;margin-bottom:0}.nxd .trust-orbit{position:absolute;height:700px;width:700px;right:-250px;bottom:-380px;border-radius:50%;border:1px solid rgba(36,207,234,.22);transform:rotateX(55deg) rotate(26deg)}.nxd .trust-orbit.two{width:500px;height:500px;right:-150px;bottom:-270px;border-color:rgba(36,207,234,.3)}

.nxd .section-tech{background:#fff}.nxd .tech-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:13px}.nxd .tech-card{border:1px solid #e4ebf3;border-radius:12px;padding:22px 17px 20px;min-height:215px;background:#fff;position:relative;box-shadow:0 6px 19px rgba(3,36,78,.025)}.nxd .tech-number{display:block;color:#0096cb;font-size:10px;font-weight:800;margin-bottom:28px}.nxd .tech-card h3{font-size:16px;line-height:1.25;margin-bottom:6px}.nxd .tech-card p{font-size:10.5px;color:#7e8da0;line-height:1.5;margin-bottom:17px}.nxd .tech-tags{display:flex;flex-wrap:wrap;gap:7px}.nxd .tech-tags span{font-size:10px;background:#f0f6fa;border-radius:4px;padding:7px 8px;color:#265f80;font-weight:650}.nxd .tech-footnote{display:flex;gap:9px;align-items:flex-start;font-size:11px;color:#8794a3;margin-top:21px}.nxd .tech-footnote .ico{width:16px;height:16px;color:#148eac}

.nxd .section-why{background:#f4f9fc}.nxd .why-shell{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px}.nxd .why-intro p{max-width:430px;font-size:14.5px;color:#6b7d91}.nxd .why-signature{margin-top:55px;font-size:23px;line-height:1.4;font-weight:620;color:#8ba1b6}.nxd .why-signature b{color:#073d76}.nxd .why-list{border-top:1px solid #d6e4ef}.nxd .why-item{display:grid;grid-template-columns:35px 1fr 20px;gap:20px;align-items:start;border-bottom:1px solid #d6e4ef;padding:25px 0 21px}.nxd .why-item>span{font-size:12px;color:#1495bb;font-weight:750}.nxd .why-item h3{font-size:18px;letter-spacing:-.03em;margin:0 0 8px}.nxd .why-item p{font-size:12px;color:#718296;line-height:1.68;margin:0;max-width:470px}.nxd .why-item>.ico{width:15px;height:15px;color:#157ca8}

.nxd .section-pont{background:#fff;padding:57px 0}.nxd .pont-inner{border:1px solid #d5e8f4;border-radius:17px;padding:36px 42px;display:flex;align-items:center;gap:26px;background:linear-gradient(120deg,#f5fbff,#fff 67%)}.nxd .pont-icon{width:70px;height:70px;display:grid;place-items:center;flex-shrink:0;background:#e3f7fc;color:#0e8fba;border-radius:50%}.nxd .pont-icon .ico{width:31px;height:31px}.nxd .section-pont .eyebrow{margin:0 0 10px;font-size:9px}.nxd .section-pont h2{font-size:25px;line-height:1.16;margin:0 0 10px}.nxd .section-pont h2 span{color:#067fb4}.nxd .section-pont p{font-size:12px;max-width:700px;color:#6b8095;margin:0}.nxd .pont-inner .btn{margin-left:auto;font-size:11.5px}

.nxd .section-faq{background:#fff}.nxd .faq-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:115px}.nxd .faq-intro p{font-size:14px;color:#7b8999;max-width:380px}.nxd .faq-intro .text-link{margin-top:20px}.nxd .faq-items{border-top:1px solid #dae7f1}.nxd .faq-items details{border-bottom:1px solid #dae7f1}.nxd .faq-items summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 4px;cursor:pointer;font-weight:680;font-size:14px;line-height:1.5}.nxd .faq-items summary::-webkit-details-marker{display:none}.nxd .faq-items summary:focus-visible{outline:2px solid #2eafdb;outline-offset:2px}.nxd .faq-sign{width:25px;height:25px;border:1px solid #bfd9e7;border-radius:50%;position:relative;flex-shrink:0}.nxd .faq-sign:before,.nxd .faq-sign:after{content:"";position:absolute;left:6px;top:11px;height:1.5px;width:11px;background:#077da8;transition:transform .2s}.nxd .faq-sign:after{transform:rotate(90deg)}.nxd details[open] .faq-sign:after{transform:rotate(0)}.nxd .faq-items details p{font-size:12.5px;color:#6d8192;margin:0;padding:0 40px 25px 4px;line-height:1.85}

.nxd .final-cta{background:linear-gradient(110deg,#071731,#0d3670 76%,#0a4e83);color:#fff;overflow:hidden;padding:75px 0}.nxd .cta-grid{display:grid;grid-template-columns:1.25fr .75fr;align-items:center;gap:50px}.nxd .cta-copy{position:relative;z-index:4}.nxd .final-cta h2{font-size:clamp(34px,3.5vw,53px);line-height:1.14;color:#fff;max-width:830px}.nxd .final-cta h2 span{color:#59e8f0}.nxd .final-cta p{font-size:14px;color:#bfd1e6;max-width:650px}.nxd .cta-actions{display:flex;align-items:center;gap:23px;flex-wrap:wrap;margin-top:28px}.nxd .cta-actions>span{display:flex;align-items:center;gap:8px;font-size:11px;color:#b1d3e1}.nxd .cta-actions>span .ico{color:#58dfef;width:16px;height:16px}.nxd .cta-visual{position:relative;height:350px;display:grid;place-items:center}.nxd .cta-orbit{width:330px;height:330px;border-radius:50%;position:absolute;border:1px solid #4ae2ea88;transform:rotateX(65deg) rotate(-30deg);box-shadow:0 0 55px rgba(0,201,248,.05)}.nxd .orb-b{height:260px;width:260px;border-color:#27aaf1ad;transform:rotateY(64deg) rotate(21deg)}.nxd .orb-c{width:380px;height:250px;transform:rotate(34deg);border-color:#136ad6bd}.nxd .cta-core{height:128px;width:128px;border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle at 40% 35%,#1867bc,#051b3d);box-shadow:0 0 70px #19c5e664,0 0 0 10px #31d9e70e;color:#fff;font-size:40px;font-weight:850;letter-spacing:-.06em;z-index:2}.nxd .floating-label{position:absolute;font-size:10px;color:#83eaf5;letter-spacing:.15em;font-weight:800}.nxd .float-a{left:1%;top:18%}.nxd .float-b{right:0;top:45%}.nxd .float-c{left:15%;bottom:13%}

.nxd .footer{background:#051329;color:#fff;padding:70px 0 0}.nxd .footer-main{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:55px}.nxd .footer .brand{color:#f0fbff}.nxd .footer-brand p{font-size:13px;line-height:1.72;color:#a7c3d9;margin:26px 0 26px}.nxd .footer-sub{font-size:9px;font-weight:750;letter-spacing:.16em;color:#5adbe8}.nxd .footer-col h4{font-size:12px;letter-spacing:.02em;margin-bottom:22px;color:#ecf7ff}.nxd .footer-col a{display:block;font-size:11.5px;color:#9ab6cd;margin-bottom:14px;transition:color .2s}.nxd .footer-col a:hover{color:#5be6ef}.nxd .footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #29435c;margin-top:68px;padding:27px 0;color:#7793ab;font-size:10.5px}
@media(max-width:1200px){.nxd .container{width:min(calc(100% - 72px),1320px)}.nxd .desktop-nav{gap:16px}.nxd .desktop-nav a{font-size:11px}.nxd .hero h1{font-size:59px}.nxd .section-topline{gap:70px}.nxd .challenges-grid{gap:50px}.nxd .expertise-card{padding:25px 23px}.nxd .case-info{padding:20px 16px}.nxd .case-info h3{font-size:17px}.nxd .why-shell{gap:55px}.nxd .faq-grid{gap:75px}}
@media(max-width:1000px){.nxd .desktop-nav{gap:11px}.nxd .desktop-nav a{font-size:10px}.nxd .btn-header{padding:10px 13px}.nxd .brand{font-size:28px}.nxd .hero-main{grid-template-columns:1fr .88fr;gap:18px}.nxd .hero h1{font-size:53px}.nxd .hero-art{margin-left:-24px}.nxd .hero-proof{gap:12px}.nxd .challenges-grid{gap:45px}.nxd .section-topline{gap:35px}.nxd .case-grid{grid-template-columns:repeat(2,1fr)}.nxd .case-visual{height:220px}.nxd .case-info{min-height:200px}.nxd .method-item{padding:23px 13px}.nxd .method-item h3{font-size:15px}.nxd .tech-grid{grid-template-columns:repeat(3,1fr)}.nxd .pont-inner{flex-wrap:wrap}.nxd .pont-inner .btn{margin-left:95px}}
@media(max-width:850px){html{scroll-padding-top:70px}.nxd .container{width:min(calc(100% - 42px),680px)}.nxd .site-header .header-inner{height:69px}.nxd .desktop-nav,.nxd .btn-header{display:none}.nxd .menu-toggle{display:grid;place-items:center;margin-left:auto;border:1px solid #d8e9f5;background:#f5fbfe;border-radius:8px;width:42px;height:42px;color:#063d68;cursor:pointer}.nxd .menu-toggle .ico{width:22px;height:22px}.nxd .mobile-nav{display:flex;flex-direction:column;position:absolute;left:0;top:69px;right:0;background:#fff;padding:12px 21px 23px;box-shadow:0 19px 35px #071e3d28;border-bottom:1px solid #d9eaf6;max-height:calc(100dvh - 69px);overflow-y:auto}.nxd .mobile-nav[hidden]{display:none}.nxd .mobile-nav a{font-size:13px;font-weight:650;border-bottom:1px solid #ecf3f8;padding:13px 3px;color:#184160}.nxd .mobile-nav a.current{color:#078cb6}.nxd .mobile-nav-cta{background:#1ccde4;text-align:center;border-radius:8px;margin-top:12px;color:#062b48!important}.nxd .section{padding:82px 0}.nxd .section h2{font-size:39px}.nxd .section-topline{display:block;margin-bottom:34px}.nxd .section-topline p{font-size:13.5px;margin-top:17px;max-width:600px}.nxd .hero-main{display:flex;flex-direction:column;align-items:stretch;gap:14px;padding:72px 0 16px;min-height:0}.nxd .hero h1{font-size:clamp(45px,8vw,62px)}.nxd .hero-lead{max-width:600px}.nxd .hero-art{height:360px;margin:0}.nxd .hero-art-photo{inset:-2px -26px 0 -26px}.nxd .art-meta-one{left:7%}.nxd .art-meta-two{right:12%}.nxd .art-meta-three{right:5%}.nxd .hero-rail{padding:20px 0 30px;grid-template-columns:repeat(2,1fr)}.nxd .hero-rail div{font-size:11px;padding:14px 0}.nxd .hero-rail div:nth-child(2){border-right:0}.nxd .hero-rail div:nth-child(3),.nxd .hero-rail div:nth-child(4){border-top:1px solid #42617d60}.nxd .challenges-grid{grid-template-columns:1fr;gap:20px}.nxd .challenge-decoration{display:none}.nxd .challenge-cards{gap:12px}.nxd .expertise-grid{grid-template-columns:repeat(2,1fr)}.nxd .expertise-card{min-height:350px}.nxd .architecture-diagram{grid-template-columns:1fr 30px 1.5fr 30px 1fr;gap:5px}.nxd .arch-column{padding:14px 10px}.nxd .arch-pill{font-size:10px;gap:6px;padding:10px 6px}.nxd .arch-pill .ico{width:16px;height:16px}.nxd .arch-engine-card{padding:10px 11px}.nxd .arch-engine-card b{font-size:11px}.nxd .arch-engine-card small{font-size:9px}.nxd .arch-engine-card .ico{width:20px;height:20px}.nxd .arch-note{flex-wrap:wrap}.nxd .arch-note a{margin-left:0}.nxd .method-line{grid-template-columns:repeat(3,1fr)}.nxd .method-line:before{display:none}.nxd .method-item{min-height:245px}.nxd .trust-header{grid-template-columns:1fr;gap:16px}.nxd .trust-header p{max-width:570px}.nxd .trust-grid{grid-template-columns:repeat(2,1fr);gap:32px 10px}.nxd .trust-item:nth-child(2){border-right:0}.nxd .trust-item:nth-child(3){padding-left:0}.nxd .why-shell{grid-template-columns:1fr;gap:28px}.nxd .why-signature{margin-top:28px}.nxd .faq-grid{grid-template-columns:1fr;gap:32px}.nxd .cta-grid{grid-template-columns:1fr;gap:16px}.nxd .cta-visual{height:220px}.nxd .cta-orbit{width:230px;height:230px}.nxd .orb-b{width:200px;height:200px}.nxd .orb-c{width:290px;height:200px}.nxd .footer-main{grid-template-columns:repeat(3,1fr);gap:34px}.nxd .footer-brand{grid-column:1/-1}.nxd .footer-bottom{margin-top:42px}}
@media(max-width:560px){.nxd .container{width:calc(100% - 38px)}.nxd .brand{font-size:27px}.nxd .header-inner{height:66px}.nxd .section{padding:70px 0}.nxd .section h2{font-size:34px;line-height:1.15}.nxd .eyebrow{font-size:9px;letter-spacing:.14em;gap:9px;margin-bottom:19px}.nxd .eyebrow:before{width:17px}.nxd .hero-main{padding:57px 0 7px}.nxd .hero-pill{font-size:8.5px;margin-bottom:18px}.nxd .hero h1{font-size:clamp(40px,10.7vw,50px);line-height:1.075;margin-bottom:22px}.nxd .hero-lead{font-size:13px;line-height:1.85}.nxd .hero-actions{gap:10px}.nxd .hero-actions .btn{font-size:11px;padding:13px 16px;min-height:47px}.nxd .hero-proof{margin-top:25px;gap:8px 14px}.nxd .hero-proof span{font-size:9px}.nxd .hero-art{height:255px;margin-top:17px}.nxd .hero-art-photo{inset:0 -45px 0 -20px;background-position:center 38%}.nxd .art-meta{min-width:102px;min-height:48px;padding:7px 9px;font-size:7px}.nxd .art-meta strong{font-size:7.6px}.nxd .art-meta-one{left:1%;top:-3%}.nxd .art-meta-two{right:5%;top:-5%}.nxd .art-meta-three{right:2%;bottom:16%}.nxd .art-legend{font-size:6.4px;bottom:0}.nxd .hero-rail{padding:13px 0 24px}.nxd .hero-rail div{padding:12px 2px;gap:10px;font-size:9px}.nxd .hero-rail .ico{width:19px;height:19px}.nxd .section-intro p{font-size:13px}.nxd .challenge-cards{grid-template-columns:1fr;gap:10px}.nxd .challenge-card{padding:21px 20px 17px;min-height:192px}.nxd .challenge-card h3{margin-top:14px;font-size:17px}.nxd .challenge-card p{font-size:11.7px;margin-bottom:13px}.nxd .circle-icon{height:39px;width:39px}.nxd .circle-icon .ico{width:21px;height:21px}.nxd .expertise-grid{grid-template-columns:1fr;gap:10px}.nxd .expertise-card{padding:22px 22px 19px;min-height:0}.nxd .expertise-card h3{font-size:21px;min-height:0;margin:18px 0 10px}.nxd .expertise-card p{font-size:12px;line-height:1.67}.nxd .tags span{font-size:9px}.nxd .card-link{margin-top:17px;padding-top:14px}.nxd .section-architecture{padding:75px 0}.nxd .architecture-diagram{grid-template-columns:1fr;gap:0;margin-top:32px}.nxd .arch-column{min-height:0;padding:19px}.nxd .arch-column-title{margin-bottom:14px}.nxd .arch-input,.nxd .arch-output{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.nxd .arch-column-title{grid-column:1/-1}.nxd .arch-pill{margin-bottom:0;min-height:50px;font-size:10px;padding:8px 11px}.nxd .arch-connector{height:31px;display:flex;flex-direction:column;gap:0;justify-content:center}.nxd .arch-connector span{display:none}.nxd .arch-connector:after{content:"↓";font-size:22px;color:#44e7ef}.nxd .arch-engine{margin:0}.nxd .arch-engine-card{min-height:68px}.nxd .arch-engine-card b{font-size:12px}.nxd .arch-engine-card small{font-size:9px}.nxd .arch-note{font-size:11px}.nxd .arch-note a{margin-top:7px}.nxd .case-grid{grid-template-columns:1fr;gap:13px}.nxd .case-visual{height:175px}.nxd .case-info{min-height:0;padding:21px}.nxd .case-info h3{font-size:19px}.nxd .case-info p{font-size:12px}.nxd .case-measure{margin-top:7px}.nxd .usecase-caveat{font-size:10px;align-items:flex-start}.nxd .method-line{grid-template-columns:1fr 1fr;gap:10px}.nxd .method-item{padding:18px 14px;min-height:227px}.nxd .method-num{margin-bottom:13px}.nxd .method-ico{width:43px;height:43px;margin-bottom:17px}.nxd .method-ico .ico{width:22px;height:22px}.nxd .method-item h3{font-size:15px;line-height:1.3}.nxd .method-item p{font-size:11px;line-height:1.55}.nxd .method-deliverable{font-size:9px}.nxd .method-bottom{display:block}.nxd .method-bottom div{font-size:12px;margin-bottom:22px}.nxd .method-bottom .text-link{font-size:12px}.nxd .trust-grid{grid-template-columns:1fr 1fr;gap:29px 13px;margin-top:40px}.nxd .trust-item{padding:0 9px 0 0;min-height:0}.nxd .trust-item:nth-child(odd){border-right:1px solid #496b805c}.nxd .trust-item:nth-child(even){padding-left:4px}.nxd .trust-item h3{font-size:14.5px;line-height:1.3}.nxd .trust-item p{font-size:10.5px}.nxd .trust-icon{width:43px;height:43px;margin-bottom:17px}.nxd .tech-grid{grid-template-columns:1fr 1fr;gap:10px}.nxd .tech-card{padding:18px 13px;min-height:178px}.nxd .tech-number{margin-bottom:17px}.nxd .tech-card h3{font-size:15px}.nxd .tech-card p{font-size:10px}.nxd .tech-tags span{font-size:9px;padding:5px 6px}.nxd .tech-footnote{font-size:10px;line-height:1.5}.nxd .why-shell{gap:25px}.nxd .why-item{grid-template-columns:25px 1fr 17px;gap:10px;padding:21px 0}.nxd .why-item h3{font-size:16px}.nxd .why-item p{font-size:11.5px}.nxd .why-signature{font-size:20px}.nxd .section-pont{padding:34px 0}.nxd .pont-inner{display:block;padding:24px}.nxd .pont-icon{height:52px;width:52px;margin-bottom:17px}.nxd .pont-icon .ico{width:25px;height:25px}.nxd .section-pont h2{font-size:24px}.nxd .pont-inner .btn{margin:22px 0 0;font-size:11px}.nxd .faq-grid{gap:10px}.nxd .faq-intro p{font-size:12.5px}.nxd .faq-items summary{font-size:12px;padding:19px 2px}.nxd .faq-items details p{font-size:11.5px}.nxd .final-cta{padding:67px 0}.nxd .final-cta h2{font-size:34px}.nxd .final-cta p{font-size:12.5px}.nxd .cta-actions{display:block}.nxd .cta-actions .btn{white-space:normal;max-width:100%;font-size:12px}.nxd .cta-actions>span{margin-top:18px}.nxd .cta-visual{height:210px;margin-top:14px}.nxd .footer{padding-top:53px}.nxd .footer-main{grid-template-columns:1fr 1fr;gap:33px 20px}.nxd .footer-brand{grid-column:1/-1}.nxd .footer-col{min-width:0}.nxd .footer-col h4{font-size:11px}.nxd .footer-col a{font-size:10.5px;line-height:1.4}.nxd .footer-bottom{flex-direction:column;padding:22px 0;font-size:9.5px;gap:7px}}
@media(prefers-reduced-motion:reduce){.nxd *,.nxd *::before,.nxd *::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* =====================================================================
   Ï-NAYA — DATA & IA · COUCHE « MOTION & INTÉGRATION »
   (ajouts au-dessus de la maquette : logo officiel, photo réelle, animations, grain)
   ===================================================================== */
.nxd{--ease:cubic-bezier(.16,1,.3,1);--ease2:cubic-bezier(.2,.8,.2,1);--grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .55 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
.nxd{overflow-x:clip}

/* ---------- Logo officiel (SVG) ---------- */
.nxd .brand{padding:0;font-size:0;line-height:0;letter-spacing:0}
.nxd .brand .nx-logo{height:29px;width:auto}
.nxd .footer .brand .nx-logo{height:30px}
.nxd .nx-logo .nx-l{transform-box:fill-box;transform-origin:50% 100%}
.nxd .nx-logo .nx-dot{transform-box:fill-box;transform-origin:50% 100%}
.nxd .nx-logo .nx-shine{mix-blend-mode:screen;opacity:.95}
.nxd.nx-js .nx-logo .nx-l{opacity:0;transform:translateY(55%)}
.nxd.nx-js .nx-logo.is-on .nx-l{animation:nxdLetter .8s var(--ease) forwards;animation-delay:calc(var(--i) * 70ms + 80ms)}
.nxd.nx-js .nx-logo .nx-dot{opacity:0;transform:translateY(-260%)}
.nxd.nx-js .nx-logo.is-on .nx-dot{animation:nxdDrop .9s cubic-bezier(.3,1.4,.5,1) forwards;animation-delay:calc(var(--i) * 110ms + 640ms)}
.nxd.nx-js .nx-logo .nx-wave{clip-path:inset(0 100% 0 0)}
.nxd.nx-js .nx-logo.is-on .nx-wave{animation:nxdWipe 1.15s .42s var(--ease) forwards}
.nxd .brand:hover .nx-logo.is-on .nx-dot{animation:nxdHop .6s var(--ease2) both;animation-delay:calc(var(--i) * 90ms);opacity:1;transform:none}
@keyframes nxdLetter{to{opacity:1;transform:none}}
@keyframes nxdDrop{0%{opacity:0;transform:translateY(-260%)}40%{opacity:1}70%{transform:translateY(12%) scaleY(.86)}100%{opacity:1;transform:none}}
@keyframes nxdWipe{to{clip-path:inset(0 0 0 0)}}
@keyframes nxdHop{0%,100%{transform:none}45%{transform:translateY(-55%)}}

/* ---------- Header : ombre au scroll + soulignement animé ---------- */
.nxd .site-header{transition:box-shadow .35s,background .35s}
.nxd .site-header.is-scrolled{box-shadow:0 10px 30px rgba(7,27,55,.08)}
.nxd .desktop-nav a:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--cyan);transform:scaleX(0);transform-origin:left;transition:transform .35s var(--ease)}
.nxd .desktop-nav a:hover:after,.nxd .desktop-nav a.active:after{transform:scaleX(1)}
.nxd .btn-header .ico,.nxd .btn .ico{transition:transform .3s var(--ease)}
.nxd .btn:hover .ico{transform:translateX(3px)}
.nxd .btn-header:hover .ico{transform:translate(2px,-2px)}
.nxd .btn-primary{position:relative;overflow:hidden;isolation:isolate}
.nxd .btn-primary:before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.6) 50%,transparent 65%) no-repeat;background-size:250% 100%;background-position:130% 0;animation:nxdSheen 6s 1.8s ease-in-out infinite}
@keyframes nxdSheen{0%,72%{background-position:130% 0}100%{background-position:-130% 0}}

/* ---------- Grain sur les sections foncées ---------- */
.nxd .hero:after,.nxd .section-architecture:after,.nxd .section-trust:after,.nxd .final-cta:after,.nxd .footer:after{content:"";position:absolute;inset:0;pointer-events:none;background:var(--grain);opacity:.07;mix-blend-mode:overlay;z-index:1}
.nxd .footer{position:relative;overflow:hidden}
.nxd .section-architecture>.container,.nxd .section-trust>.container,.nxd .final-cta>.container,.nxd .footer>.container{position:relative;z-index:2}

/* ---------- Hero : photo réelle + faisceaux ---------- */
.nxd .hero-art-photo{background:none;overflow:hidden}
.nxd .hero-art-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:56% 42%;transform:scale(1.08) translate3d(var(--px,0),var(--py,0),0);transition:transform 1.2s var(--ease)}
.nxd .hero-art-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#082246 3%,rgba(2,19,50,.16) 28%,transparent 52%),linear-gradient(0deg,#082446 0%,transparent 40%),linear-gradient(180deg,#0a2650 0%,rgba(10,38,80,.6) 14%,transparent 38%),linear-gradient(270deg,rgba(10,44,92,.55),transparent 22%)}
.nxd.nx-js .hero-art-photo img{opacity:0;transform:scale(1.16)}
.nxd.nx-js .hero.is-ready .hero-art-photo img{opacity:1;transform:scale(1.08) translate3d(var(--px,0),var(--py,0),0);transition:opacity 1.4s .25s ease,transform 2.6s .25s var(--ease)}
.nxd.nx-js .hero.is-ready.is-settled .hero-art-photo img{transition:transform 1.2s var(--ease)}
.nxd .art-beams{position:absolute;inset:0;z-index:2;pointer-events:none}
.nxd .art-beam{position:absolute;top:4%;bottom:30%;width:130px;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center}
.nxd .art-beam b{font-size:11px;line-height:1.25;font-weight:800;letter-spacing:.09em;color:rgba(205,232,255,.62);text-transform:uppercase;text-align:center;text-shadow:0 0 14px rgba(40,170,255,.35)}
.nxd .art-beam .ico{width:46px;height:46px;margin-top:38px;color:#d6fbff;stroke-width:1.35;filter:drop-shadow(0 0 8px rgba(70,220,255,.85)) drop-shadow(0 0 22px rgba(30,140,255,.55))}
.nxd .art-beam i{position:relative;flex:1;width:1px;margin-top:14px;background:linear-gradient(180deg,rgba(120,220,255,.55),rgba(60,170,255,.08));overflow:hidden}
.nxd .art-beam i:after{content:"";position:absolute;left:-1px;width:3px;height:42%;top:-45%;border-radius:2px;background:linear-gradient(180deg,transparent,#9ff6ff,transparent);animation:nxdBeam 3.6s var(--d,0s) infinite cubic-bezier(.45,0,.3,1)}
@keyframes nxdBeam{0%{top:-45%}70%,100%{top:110%}}
.nxd .beam-a{left:33%}.nxd .beam-b{left:55%}.nxd .beam-c{left:90.5%}
.nxd .art-side{position:absolute;left:1.5%;top:22%;display:grid;gap:14px;z-index:2;opacity:.32}
.nxd .art-side .ico{width:34px;height:34px;color:#bfe3ff;stroke-width:1.2}
.nxd.nx-js .art-beam,.nxd.nx-js .art-side{opacity:0;transform:translateX(-50%) translateY(14px);transition:opacity .9s,transform 1.1s var(--ease)}
.nxd.nx-js .art-side{transform:translateY(14px)}
.nxd.nx-js .hero.is-ready .art-beam{opacity:1;transform:translateX(-50%)}
.nxd.nx-js .hero.is-ready .art-side{opacity:.32;transform:none;transition-delay:1.1s}
.nxd.nx-js .hero.is-ready .beam-a{transition-delay:.9s}.nxd.nx-js .hero.is-ready .beam-b{transition-delay:1.05s}.nxd.nx-js .hero.is-ready .beam-c{transition-delay:1.2s}
.nxd .art-meta{animation:nxdFloat 7s ease-in-out infinite;z-index:4}
.nxd .art-meta-two{animation-delay:-2.3s}.nxd .art-meta-three{animation-delay:-4.6s}
@keyframes nxdFloat{0%,100%{translate:0 0}50%{translate:0 -7px}}
.nxd.nx-js .art-meta,.nxd.nx-js .art-legend{opacity:0;scale:.94;transition:opacity .8s,scale .9s var(--ease)}
.nxd.nx-js .hero.is-ready .art-meta,.nxd.nx-js .hero.is-ready .art-legend{opacity:1;scale:1}
.nxd.nx-js .hero.is-ready .art-meta-one{transition-delay:1.3s}.nxd.nx-js .hero.is-ready .art-meta-two{transition-delay:1.45s}.nxd.nx-js .hero.is-ready .art-meta-three{transition-delay:1.6s}.nxd.nx-js .hero.is-ready .art-legend{transition-delay:1.8s}
.nxd .pulse{z-index:3;animation-name:nxdPulse}
.nxd .pulse-one{left:15%;top:62%}.nxd .pulse-two{left:52%;top:41%}.nxd .pulse-three{left:84%;top:56%}
.nxd .art-legend-line{transform-origin:left;animation:nxdLine 3s ease-in-out infinite}
@keyframes nxdLine{0%,100%{transform:scaleX(.4)}50%{transform:scaleX(1)}}
@keyframes nxdPulse{50%{box-shadow:0 0 0 13px rgba(25,210,237,.03),0 0 40px 20px rgba(40,207,245,.2)}}
.nxd .hero-bottom-line{background-size:200% 100%;animation:nxdFlow 8s linear infinite;background-image:linear-gradient(90deg,#0d3e89,#21d9e9 25%,#1776de 50%,#0d3e89 75%,#21d9e9)}
@keyframes nxdFlow{to{background-position:-200% 0}}
.nxd .hero-rail,.nxd .hero-main{z-index:3}
.nxd.nx-js .hero-rail>div{opacity:0;transform:translateY(16px);transition:opacity .8s,transform 1s var(--ease)}
.nxd.nx-js .hero.is-ready .hero-rail>div{opacity:1;transform:none}
.nxd.nx-js .hero.is-ready .hero-rail>div:nth-child(1){transition-delay:1.5s}.nxd.nx-js .hero.is-ready .hero-rail>div:nth-child(2){transition-delay:1.6s}.nxd.nx-js .hero.is-ready .hero-rail>div:nth-child(3){transition-delay:1.7s}.nxd.nx-js .hero.is-ready .hero-rail>div:nth-child(4){transition-delay:1.8s}
.nxd .hero-rail .ico{transition:transform .4s var(--ease)}.nxd .hero-rail>div:hover .ico{transform:translateY(-3px) scale(1.06)}
.nxd .hero-atmosphere{z-index:0}

.nxd .hero h1 .w{display:inline-block;overflow:hidden;vertical-align:top;padding:0 .02em .08em;margin:0 -.02em -.08em}
.nxd .hero h1 .w>span{display:inline-block}
.nxd.nx-js .hero h1 .w>span{transform:translateY(105%);opacity:0}
.nxd.nx-js .hero.is-ready h1 .w>span{transform:none;opacity:1;transition:transform 1s var(--ease),opacity .6s;transition-delay:calc(var(--wi) * 55ms + 150ms)}

/* ---------- Apparitions au scroll ---------- */
.nxd.nx-js [data-in]{opacity:0;transform:translateY(26px);transition:opacity .9s var(--ease),transform 1.1s var(--ease);transition-delay:calc(var(--d,0) * 85ms)}
.nxd.nx-js [data-in].is-in{opacity:1;transform:none}
.nxd.nx-js [data-in="fade"]{transform:none}
.nxd.nx-js [data-in="left"]{transform:translateX(-28px)}
.nxd.nx-js [data-in="scale"]{transform:scale(.96)}

.nxd.nx-js [data-in].is-done{transition:transform .25s,box-shadow .25s,border-color .25s,opacity .3s;transition-delay:0s}
.nxd .challenge-card.is-done:hover,.nxd .case-card.is-done:hover{transform:translateY(-5px)}
.nxd .expertise-card.is-done:hover{transform:translateY(-5px)}

.nxd .expertise-card{position:relative;overflow:hidden;isolation:isolate}
.nxd .expertise-card:before{content:"";position:absolute;inset:0;z-index:-1;opacity:0;transition:opacity .35s;background:radial-gradient(340px circle at var(--mx,50%) var(--my,0%),rgba(36,209,229,.12),transparent 60%)}
.nxd .expertise-card:hover:before{opacity:1}
.nxd .square-icon,.nxd .circle-icon,.nxd .method-ico,.nxd .trust-icon{transition:transform .4s var(--ease),background .3s}
.nxd .expertise-card:hover .square-icon,.nxd .challenge-card:hover .circle-icon,.nxd .method-item:hover .method-ico{transform:translateY(-3px) rotate(-6deg)}
.nxd .card-link .ico{transition:transform .3s var(--ease)}
.nxd .card-link:hover .ico{transform:translateX(4px)}
.nxd .challenge-decoration span{animation:nxdOrb 9s ease-in-out infinite}
.nxd .challenge-decoration span:nth-child(2){animation-delay:-2s}.nxd .challenge-decoration span:nth-child(3){animation-delay:-4s}.nxd .challenge-decoration span:nth-child(4){animation-delay:-6s}
@keyframes nxdOrb{0%,100%{transform:rotate(-18deg)}50%{transform:rotate(-12deg) translateX(8px)}}

/* ---------- Architecture : flux de données ---------- */
.nxd .arch-connector span{overflow:visible;background:linear-gradient(90deg,rgba(57,183,221,.25),#39b7dd)}
.nxd .arch-connector span:before{content:"";position:absolute;top:-2px;left:0;width:5px;height:5px;border-radius:50%;background:#aefcff;box-shadow:0 0 10px 3px rgba(55,223,240,.7);animation:nxdPacket 2.4s linear infinite;opacity:0}
.nxd .arch-connector span:nth-child(2):before{animation-delay:.8s}.nxd .arch-connector span:nth-child(3):before{animation-delay:1.6s}
.nxd .arch-connector.reverse span:before{animation-delay:.4s}.nxd .arch-connector.reverse span:nth-child(2):before{animation-delay:1.2s}.nxd .arch-connector.reverse span:nth-child(3):before{animation-delay:2s}
@keyframes nxdPacket{0%{left:0;opacity:0}12%{opacity:1}85%{opacity:1}100%{left:calc(100% - 6px);opacity:0}}
.nxd .arch-engine-card{position:relative;overflow:hidden}
.nxd .arch-engine-card:after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 30%,rgba(255,255,255,.18) 50%,transparent 70%);transform:translateX(-120%);animation:nxdScan 6s infinite}
.nxd .arch-engine-card:nth-of-type(3):after{animation-delay:2s}.nxd .arch-engine-card:nth-of-type(4):after{animation-delay:4s}
@keyframes nxdScan{0%{transform:translateX(-120%)}22%,100%{transform:translateX(120%)}}
.nxd .arch-pill{transition:background .3s,border-color .3s,transform .3s var(--ease)}
.nxd .arch-pill:hover{background:rgba(255,255,255,.12);border-color:rgba(91,220,245,.45);transform:translateX(3px)}
.nxd .arch-engine{box-shadow:0 0 0 0 rgba(36,209,229,.0);animation:nxdHalo 4s ease-in-out infinite}
@keyframes nxdHalo{50%{box-shadow:0 0 50px -10px rgba(36,209,229,.35)}}

/* ---------- Cas d'usage : visuels animés ---------- */
.nxd .chart-lines span,.nxd .retail-bars span{transform-origin:bottom;transition:transform 1.1s var(--ease)}
.nxd.nx-js .case-card:not(.is-in) .chart-lines span,.nxd.nx-js .case-card:not(.is-in) .retail-bars span{transform:scaleY(0)}
.nxd .chart-lines span:nth-child(2),.nxd .retail-bars span:nth-child(2){transition-delay:.08s}.nxd .chart-lines span:nth-child(3),.nxd .retail-bars span:nth-child(3){transition-delay:.16s}.nxd .chart-lines span:nth-child(4),.nxd .retail-bars span:nth-child(4){transition-delay:.24s}.nxd .chart-lines span:nth-child(5),.nxd .retail-bars span:nth-child(5){transition-delay:.32s}.nxd .retail-bars span:nth-child(6){transition-delay:.4s}.nxd .retail-bars span:nth-child(7){transition-delay:.48s}.nxd .retail-bars span:nth-child(8){transition-delay:.56s}
.nxd .retail-line path,.nxd .industry-curve path{stroke-dasharray:var(--len,600);stroke-dashoffset:0;transition:stroke-dashoffset 1.8s .35s var(--ease)}
.nxd.nx-js .case-card:not(.is-in) .retail-line path,.nxd.nx-js .case-card:not(.is-in) .industry-curve path{stroke-dashoffset:var(--len,600)}
.nxd .case-visual>*{transition:transform .6s var(--ease)}
.nxd .case-card:hover .finance-board{transform:perspective(400px) rotateY(-4deg) rotateX(2deg)}
.nxd .case-card:hover .doc-stack>div:last-child{transform:rotate(-14deg) translateY(-4px)}
.nxd .doc-stack>div{transition:transform .6s var(--ease)}
.nxd .ai-orb{animation:nxdOrbGlow 3.4s ease-in-out infinite}
@keyframes nxdOrbGlow{50%{box-shadow:0 0 75px #18c7ef8c;transform:scale(1.04)}}
.nxd .case-floating{transition:transform .5s var(--ease)}
.nxd .case-card:hover .case-floating{transform:translateY(-3px)}
.nxd .industry-grid span{animation:nxdCell 4s ease-in-out infinite}
.nxd .industry-grid span:nth-child(3n){animation-delay:-1.3s}.nxd .industry-grid span:nth-child(3n+1){animation-delay:-2.6s}
@keyframes nxdCell{50%{background:linear-gradient(160deg,#1b5c9e,#143a66)}}

/* ---------- Méthode : ligne qui se trace ---------- */
.nxd .method-line:before{transform-origin:left;transition:transform 1.6s .2s var(--ease)}
.nxd.nx-js .method-line:not(.is-in):before{transform:scaleX(0)}
.nxd .method-item{transition:transform .3s var(--ease),box-shadow .3s,border-color .3s}
.nxd .method-item.is-done:hover{transform:translateY(-4px);border-color:#a9dff1;box-shadow:0 18px 40px rgba(3,37,80,.09)}

/* ---------- Confiance : orbites ---------- */
.nxd .trust-orbit{animation:nxdSpin 40s linear infinite}
.nxd .trust-orbit.two{animation-duration:28s;animation-direction:reverse}
@keyframes nxdSpin{from{transform:rotateX(55deg) rotate(26deg)}to{transform:rotateX(55deg) rotate(386deg)}}
.nxd .trust-orbit:after{content:"";position:absolute;top:50%;left:-4px;width:7px;height:7px;border-radius:50%;background:#7ff6ff;box-shadow:0 0 14px 4px rgba(36,207,234,.6)}
.nxd .trust-item:hover .trust-icon{transform:translateY(-3px);background:rgba(24,126,170,.38)}

/* ---------- Technologies / Pourquoi ---------- */
.nxd .tech-card{transition:transform .3s var(--ease),border-color .3s,box-shadow .3s}
.nxd .tech-card.is-done:hover{transform:translateY(-4px);border-color:#a9dff1;box-shadow:0 16px 36px rgba(3,37,80,.08)}
.nxd .tech-tags span{transition:background .25s,color .25s}
.nxd .tech-card:hover .tech-tags span{background:#e3f6fc;color:#0a6f98}
.nxd .why-item{position:relative;transition:padding .35s var(--ease)}
.nxd .why-item:after{content:"";position:absolute;left:0;bottom:-1px;height:1px;width:100%;background:linear-gradient(90deg,#24d1e5,#0d64c8);transform:scaleX(0);transform-origin:left;transition:transform .6s var(--ease)}
.nxd .why-item:hover:after{transform:scaleX(1)}
.nxd .why-item>.ico{transition:transform .35s var(--ease)}
.nxd .why-item:hover>.ico{transform:translate(3px,-3px);color:#24bfe0}
.nxd .pont-icon{position:relative}
.nxd .pont-icon:after{content:"";position:absolute;inset:-6px;border-radius:50%;border:1px solid rgba(14,143,186,.35);animation:nxdPing 2.6s var(--ease) infinite}
@keyframes nxdPing{0%{transform:scale(.85);opacity:1}100%{transform:scale(1.35);opacity:0}}

/* ---------- FAQ : ouverture fluide ---------- */
.nxd .faq-items details p{overflow:hidden}
.nxd .faq-items summary{transition:color .2s}
.nxd .faq-items summary:hover{color:#0a6fb0}
.nxd .faq-sign{transition:border-color .3s,background .3s}
.nxd details[open] .faq-sign{border-color:#24d1e5;background:#effbfe}

/* ---------- CTA final : orbites ---------- */
.nxd .cta-orbit{animation:nxdOrbA 26s linear infinite}
.nxd .orb-b{animation-name:nxdOrbB;animation-duration:20s}
.nxd .orb-c{animation-name:nxdOrbC;animation-duration:34s;animation-direction:reverse}
@keyframes nxdOrbA{from{transform:rotateX(65deg) rotate(-30deg)}to{transform:rotateX(65deg) rotate(330deg)}}
@keyframes nxdOrbB{from{transform:rotateY(64deg) rotate(21deg)}to{transform:rotateY(64deg) rotate(381deg)}}
@keyframes nxdOrbC{from{transform:rotate(34deg)}to{transform:rotate(394deg)}}
.nxd .cta-orbit:after{content:"";position:absolute;top:50%;right:-4px;width:7px;height:7px;border-radius:50%;background:#8ff7ff;box-shadow:0 0 14px 4px rgba(74,226,234,.55)}
.nxd .cta-core{animation:nxdCore 4s ease-in-out infinite}
@keyframes nxdCore{50%{box-shadow:0 0 95px #19c5e68a,0 0 0 16px #31d9e712}}
.nxd .floating-label{animation:nxdFloat 6s ease-in-out infinite}
.nxd .float-b{animation-delay:-2s}.nxd .float-c{animation-delay:-4s}

/* ---------- Menu mobile ---------- */
.nxd .mobile-nav{transform-origin:top;animation:nxdDrop2 .35s var(--ease)}
@keyframes nxdDrop2{from{opacity:0;transform:translateY(-8px)}}
.nxd .footer-col a{position:relative}
.nxd .footer-col a:hover{transform:translateX(3px)}
.nxd .footer-col a{transition:color .2s,transform .3s var(--ease)}

@media(max-width:850px){.nxd .art-beam{width:100px}.nxd .art-beam b{font-size:9px}.nxd .art-beam .ico{width:36px;height:36px;margin-top:24px}.nxd .brand .nx-logo{height:28px}}
@media(max-width:560px){.nxd .art-beam{width:76px;top:3%;bottom:34%}.nxd .art-beam b{font-size:6.6px}.nxd .art-beam .ico{width:25px;height:25px;margin-top:8px}.nxd .art-beam i{margin-top:8px}.nxd .art-side{display:none}.nxd .beam-a{left:41%}.nxd .beam-b{left:57%}.nxd .beam-c{left:83%}.nxd .beam-c b{visibility:hidden}.nxd .brand .nx-logo{height:27px}}
@media(prefers-reduced-motion:reduce){.nxd.nx-js [data-in]{opacity:1;transform:none}.nxd.nx-js .hero h1 .w>span{transform:none;opacity:1}.nxd.nx-js .hero-rail>div,.nxd.nx-js .hero-art-photo img,.nxd.nx-js .art-beam,.nxd.nx-js .art-side,.nxd.nx-js .art-meta,.nxd.nx-js .art-legend{opacity:1;transform:none;scale:1}.nxd.nx-js .nx-logo .nx-l,.nxd.nx-js .nx-logo .nx-dot{opacity:1;transform:none}.nxd.nx-js .nx-logo .nx-wave{clip-path:none}}
@media(min-width:851px) and (max-width:1200px){.nxd .art-beam{width:96px}.nxd .art-beam b{font-size:9px}.nxd .beam-a{left:44%}.nxd .beam-b{left:62%}.nxd .beam-c{left:88%}.nxd .beam-b b,.nxd .beam-c b{visibility:hidden}}
@media(min-width:561px) and (max-width:850px){.nxd .beam-a{left:40%}.nxd .beam-b b,.nxd .beam-c b{visibility:hidden}}
