@font-face{font-family:Outfit;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/outfit-latin-ext-400-normal.5tcqmc2S.woff2)format("woff2"),url(/_astro/outfit-latin-ext-400-normal.DHm7mdGe.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/outfit-latin-400-normal.BGsTXAXT.woff2)format("woff2"),url(/_astro/outfit-latin-400-normal.DMwTpYkH.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Outfit;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/outfit-latin-ext-500-normal.zeox_O30.woff2)format("woff2"),url(/_astro/outfit-latin-ext-500-normal.DrCvqoFD.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/outfit-latin-500-normal.DKnIMDSk.woff2)format("woff2"),url(/_astro/outfit-latin-500-normal.ClnHRwRh.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Outfit;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/outfit-latin-ext-600-normal.B85nYjL1.woff2)format("woff2"),url(/_astro/outfit-latin-ext-600-normal.CWJcPgd7.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/outfit-latin-600-normal.B7SfZ07L.woff2)format("woff2"),url(/_astro/outfit-latin-600-normal.BEfTtDA7.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Outfit;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/outfit-latin-ext-700-normal.CI4iH74K.woff2)format("woff2"),url(/_astro/outfit-latin-ext-700-normal.fjS8-Gm7.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/outfit-latin-700-normal.Cu9v6i1X.woff2)format("woff2"),url(/_astro/outfit-latin-700-normal.D4itBLBr.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/poppins-devanagari-500-normal.BIdkeU1p.woff2)format("woff2"),url(/_astro/poppins-devanagari-500-normal.DMPDjHtT.woff)format("woff");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/poppins-latin-ext-500-normal.CK-6C4Hw.woff2)format("woff2"),url(/_astro/poppins-latin-ext-500-normal.CgAe2rWW.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/poppins-latin-500-normal.C8OXljZJ.woff2)format("woff2"),url(/_astro/poppins-latin-500-normal.DGXqpDMm.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/poppins-devanagari-600-normal.STEjXBNN.woff2)format("woff2"),url(/_astro/poppins-devanagari-600-normal.ClASKHrr.woff)format("woff");unicode-range:U+900-97F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/poppins-latin-ext-600-normal.CAhIAdZj.woff2)format("woff2"),url(/_astro/poppins-latin-ext-600-normal.Df5ffKXP.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/poppins-latin-600-normal.zEkxB9Mr.woff2)format("woff2"),url(/_astro/poppins-latin-600-normal.BJdTmd5m.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-sans-cyrillic-ext-400-normal.g30qAdWV.woff2)format("woff2"),url(/_astro/ibm-plex-sans-cyrillic-ext-400-normal.Dsrv2Tcn.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-sans-cyrillic-400-normal.DZqxrq2p.woff2)format("woff2"),url(/_astro/ibm-plex-sans-cyrillic-400-normal.BTotfTJu.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-sans-greek-400-normal._efipK4i.woff2)format("woff2"),url(/_astro/ibm-plex-sans-greek-400-normal.D9ESIMu3.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-sans-vietnamese-400-normal.DG4YqDda.woff2)format("woff2"),url(/_astro/ibm-plex-sans-vietnamese-400-normal.fK1oJ5dG.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-sans-latin-ext-400-normal.C5H60-Va.woff2)format("woff2"),url(/_astro/ibm-plex-sans-latin-ext-400-normal.RBey6euL.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-sans-latin-400-normal.CDDApCn2.woff2)format("woff2"),url(/_astro/ibm-plex-sans-latin-400-normal.CYLoc0-x.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-sans-cyrillic-ext-500-normal.Cs5J6C77.woff2)format("woff2"),url(/_astro/ibm-plex-sans-cyrillic-ext-500-normal.DB5PtV2g.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-sans-cyrillic-500-normal.CocWQlwt.woff2)format("woff2"),url(/_astro/ibm-plex-sans-cyrillic-500-normal.ByOcLdNv.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-sans-greek-500-normal.JMMifIXV.woff2)format("woff2"),url(/_astro/ibm-plex-sans-greek-500-normal.CuWXN6rf.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-sans-vietnamese-500-normal.e4dixQRQ.woff2)format("woff2"),url(/_astro/ibm-plex-sans-vietnamese-500-normal.BEb3_waV.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-sans-latin-ext-500-normal.DakdToA3.woff2)format("woff2"),url(/_astro/ibm-plex-sans-latin-ext-500-normal.D0aIdm-b.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-sans-latin-500-normal.6ng42L7E.woff2)format("woff2"),url(/_astro/ibm-plex-sans-latin-500-normal.BgVn5rGT.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/ibm-plex-sans-cyrillic-ext-600-normal.DUMzJB7m.woff2)format("woff2"),url(/_astro/ibm-plex-sans-cyrillic-ext-600-normal.Bz0x94Yp.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/ibm-plex-sans-cyrillic-600-normal.71GNu3SW.woff2)format("woff2"),url(/_astro/ibm-plex-sans-cyrillic-600-normal.BGq0mW3O.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/ibm-plex-sans-greek-600-normal.DzTrcv_p.woff2)format("woff2"),url(/_astro/ibm-plex-sans-greek-600-normal.D-CqTdkO.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/ibm-plex-sans-vietnamese-600-normal.DpPYBSTl.woff2)format("woff2"),url(/_astro/ibm-plex-sans-vietnamese-600-normal.DgdngZtN.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/ibm-plex-sans-latin-ext-600-normal.DOrvGEcy.woff2)format("woff2"),url(/_astro/ibm-plex-sans-latin-ext-600-normal.DIrixKbi.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/ibm-plex-sans-latin-600-normal.CuJfVYMP.woff2)format("woff2"),url(/_astro/ibm-plex-sans-latin-600-normal.Cu4Hd6ag.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-cyrillic-ext-500-normal.BqneJy0T.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-ext-500-normal.BIfNGwUT.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-cyrillic-500-normal.Bq9vWWag.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-500-normal.Ael50iVv.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-vietnamese-500-normal.DZ4AoWbu.woff2)format("woff2"),url(/_astro/ibm-plex-mono-vietnamese-500-normal.C8zxqsMH.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-latin-ext-500-normal.CAhNIIs5.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-ext-500-normal.CZ70TYgx.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-latin-500-normal.DSY6xOcd.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-500-normal.CB9ihrfo.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#f4f6fa;--paper:#fff;--line:#e3e8f0;--ink:#1e3456;--ink-2:#3c5170;--mute:#56688a;--display-soft:#6c7e98;--accent:#087082;--navy:#142440;--navy-ink:#1e3456;--cyan:#00abc8;--cyan-soft:#e2f5f8;--cyan-light:#7fd9e8;--green:#63b32f;--plum:#8f4292;--on-dark:#fff;--on-dark-2:#b4c0d3;--on-dark-3:#a3b0c4;--line-dark:#ffffff1f;--font:"IBM Plex Sans", system-ui, -apple-system, sans-serif;--font-display:"Poppins", var(--font);--font-mono:"IBM Plex Mono", ui-monospace, monospace;--r-sm:12px;--r-md:18px;--r-lg:24px;--r-xl:32px;--container:1200px;--gutter:24px;--section-y:clamp(72px, 9vw, 120px);--shadow-soft:0 8px 24px #0b16260d;--shadow-lift:0 18px 40px -18px #0b16262e;--grad-dark:linear-gradient(160deg, #24406b 0%, #1e3456 55%, #192c49 100%);--bg-0:var(--bg);--surface:#fff;--surface-2:#f9fafc;--border:var(--line);--border-strong:#d2dae7;--text:var(--ink);--text-dim:var(--ink-2);--text-mute:var(--mute);--accent-2:#3d7a1f;--accent-3:var(--plum);--grad-1:linear-gradient(120deg, #00abc8 0%, #087082 100%);--grad-soft:var(--cyan-soft);--grad-ink:linear-gradient(135deg, #1e3456 0%, #0b1626 100%);--brand-navy:#1e3456;--brand-cyan:#00abc8;--brand-green:#63b32f;--brand-purple:#8f4292;--brand-yellow:#fbb800;--radius:14px;--radius-lg:20px;--tag-bg:var(--bg);--lt-bg:#fff;--lt-bg-2:#fff;--lt-ink:var(--ink);--lt-text:var(--ink-2);--lt-mute:var(--mute);--lt-border:var(--line);--lt-border-strong:#d2dae7;--lt-accent:#087082}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--text-dim);font:400 16px/1.6 var(--font);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;overflow-x:hidden}img,svg{max-width:100%}h1,h2,h3,h4,p,ul{margin:0}ul{padding:0}h1,h2,h3,h4{color:var(--text);font-weight:600;font-family:var(--font-display)}.client-name,.layer strong,.model-step strong,.hm-city,.hm-clock-time{font-family:var(--font-display)}h1{letter-spacing:-.025em;font-size:clamp(40px,5.4vw,68px);line-height:1.02}h2{letter-spacing:-.02em;font-size:clamp(32px,4vw,50px);line-height:1.06}h3{letter-spacing:-.02em;font-size:clamp(19px,1.6vw,23px);line-height:1.2}h4{letter-spacing:-.01em;font-size:17px;line-height:1.3}p{color:var(--text-dim)}a{color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:6px}main:focus{outline:none}.container{max-width:calc(var(--container) + 2 * var(--gutter));padding:0 var(--gutter);margin:0 auto}section,.section{padding:var(--section-y) 0;position:relative}section.compact{padding:clamp(56px,7vw,88px) 0}.section--white,.section-light{background:var(--paper);--dot-bg:var(--paper)}.section--dark{background:radial-gradient(60% 50% at 85% 0%, #00abc824, transparent 70%), radial-gradient(50% 50% at 0% 100%, #63b32f14, transparent 70%), var(--navy-ink);color:var(--on-dark-2)}.skip-link{z-index:200;background:var(--ink);color:#fff;border-radius:999px;padding:10px 18px;font-weight:500;text-decoration:none;transition:top .2s;position:absolute;top:-60px;left:16px}.skip-link:focus{top:16px}.section--dark,.visual-card,.cta-box,.cta-banner,.book-cover,footer{--text:#fff;--text-dim:var(--on-dark-2);--text-mute:var(--on-dark-3);--accent:var(--cyan-light);--accent-2:#a6da82;--surface:#ffffff0d;--border:var(--line-dark);--border-strong:#ffffff38;--grad-soft:#00abc829;--tag-bg:#ffffff0f;--lt-ink:#fff;--lt-text:var(--on-dark-2);--lt-mute:var(--on-dark-3);--lt-accent:var(--cyan-light);--lt-border:var(--line-dark);--lt-border-strong:#ffffff38;--lt-bg-2:#ffffff0d;--btn-bg:var(--cyan);--btn-bg-hover:#2bbcd5;--btn-fg:var(--ink);--btn-arrow:var(--ink);--ghost-line:#ffffff40;--ghost-line-hover:#ffffff73;--ghost-hover:#ffffff0f;color:var(--text-dim)}.section--dark{--dot-bg:var(--navy-ink)}.section--dark :focus-visible,.visual-card :focus-visible,.cta-box :focus-visible,.cta-banner :focus-visible,footer :focus-visible{outline-color:var(--cyan-light)}.h1{letter-spacing:-.025em;font-size:clamp(42px,5.6vw,72px);line-height:1}.h2{letter-spacing:-.02em;font-size:clamp(34px,4.2vw,54px);line-height:1.04}.accent,.gradient-text{color:var(--accent);font-style:normal}.lead{color:var(--text-dim);max-width:600px;font-size:clamp(16.5px,1.4vw,18.5px);line-height:1.55}.eyebrow{font:500 12px/1.4 var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--accent);align-items:center;gap:10px;display:inline-flex}.eyebrow .num{opacity:.75}.section-head{max-width:800px;margin-bottom:clamp(40px,5vw,60px)}.section-head h2{margin:18px 0 14px}.section-head>p{font-size:17px;line-height:1.6}.section-head.split{grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:end;gap:24px 64px;max-width:none;margin-bottom:clamp(40px,5vw,64px);display:grid}.section-head .h2{max-width:900px;margin:18px 0 0}.section-head .lead{padding-bottom:6px;font-size:16.5px}.btn{font:500 15px/1.2 var(--font-display);cursor:pointer;white-space:nowrap;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:10px;padding:14px 24px;text-decoration:none;transition:background-color .2s,border-color .2s,transform .2s,box-shadow .2s;display:inline-flex}.btn:hover{transform:translateY(-1px)}.btn .arr,.btn .btn-icon{flex-shrink:0;width:16px;height:16px;transition:transform .2s}.btn:hover .btn-icon{transform:translate(3px)}.btn-primary{background:var(--btn-bg,var(--ink));color:var(--btn-fg,#fff)}.btn-primary .arr,.btn-primary .btn-icon{color:var(--btn-arrow,var(--cyan))}.btn-primary:hover{background:var(--btn-bg-hover,var(--navy));box-shadow:var(--shadow-lift)}.btn-ghost{color:var(--text);border-color:var(--ghost-line,#0b16262e);background:0 0}.btn-ghost:hover{background:var(--ghost-hover,var(--paper));border-color:var(--ghost-line-hover,#0b162652)}.btn-cyan{background:var(--cyan);color:var(--ink)}.btn-cyan:hover{background:#2bbcd5}.btn-ghost-dark{color:#fff;background:0 0;border-color:#ffffff40}.btn-ghost-dark:hover{background:#ffffff0f;border-color:#ffffff73}.tag{background:var(--tag-bg);border:1px solid var(--border);color:var(--text-dim);border-radius:999px;align-items:center;padding:5px 11px;font-size:12.5px;line-height:1.3;display:inline-flex}.icon-tile{border-radius:var(--r-sm);background:var(--cyan-soft);width:44px;height:44px;color:var(--accent);flex-shrink:0;place-items:center;display:grid}.icon-tile svg{width:20px;height:20px}.nav-wrap{z-index:100;padding:16px var(--gutter) 0;position:sticky;top:0}.nav{max-width:var(--container);backdrop-filter:blur(12px)saturate(160%);border:1px solid var(--line);box-shadow:var(--shadow-soft);background:#ffffffd1;border-radius:999px;align-items:center;gap:18px;margin:0 auto;padding:10px 10px 10px 24px;display:flex;position:relative}.nav-logo{flex-shrink:0;align-items:center;display:flex}.nav-logo img{width:auto;height:26px;display:block}.nav-links{align-items:center;gap:2px;margin:0 auto;list-style:none;display:flex}.nav-links>li{position:relative}.nav-links a,.nav-dd-btn{cursor:pointer;font:500 14.5px/1.2 var(--font);color:var(--ink);white-space:nowrap;background:0 0;border:0;border-radius:999px;align-items:center;gap:4px;padding:8px 12px;text-decoration:none;transition:color .2s,background-color .2s;display:inline-flex}.nav-links a:hover,.nav-dd-btn:hover,.nav-dd.open>.nav-dd-btn{color:var(--accent);background:#00abc812}.nav-links a.active,.nav-dd.has-active>.nav-dd-btn{color:var(--ink);font-weight:600}.nav-links>li>a.active{background:var(--cyan-soft)}.nav-dd-btn svg{width:14px;height:14px;transition:transform .2s}.nav-dd.open>.nav-dd-btn svg{transform:rotate(180deg)}.nav-dd-menu{z-index:110;background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);flex-direction:column;gap:2px;min-width:260px;padding:8px;display:none;position:absolute;top:calc(100% + 16px);left:50%;transform:translate(-50%);box-shadow:0 18px 44px -12px #0b16262e}.nav-dd-menu:before{content:"";height:18px;position:absolute;top:-18px;left:0;right:0}.nav-dd.open>.nav-dd-menu{display:flex}.nav-dd-menu a{border-radius:10px;padding:10px 12px;display:block}.nav-dd-menu a.active{background:var(--cyan-soft)}.nav-dd-sep{background:var(--line);height:1px;margin:4px 8px}.nav-dd-menu a.nav-dd-sub{color:var(--mute);font-size:13.5px}.nav-dd-menu a.nav-dd-sub:hover{color:var(--ink)}.nav-cta{white-space:nowrap;background:var(--ink);color:#fff;font:500 14.5px/1.2 var(--font-display);border-radius:999px;align-items:center;padding:11px 20px;text-decoration:none;transition:background-color .2s;display:inline-flex}.nav-cta:hover{background:var(--navy)}.nav-burger{color:var(--ink);cursor:pointer;background:0 0;border:0;padding:8px;display:none}.nav-burger svg{display:block}@media (width>=861px) and (width<=1023px){.nav{gap:10px;padding-left:18px}.nav-links a,.nav-dd-btn{padding-left:8px;padding-right:8px}.nav-cta{padding:10px 16px}}@media (hover:hover) and (width>=861px){.nav-dd:hover>.nav-dd-menu{display:flex}.nav-dd:hover>.nav-dd-btn{color:var(--accent);background:#00abc812}.nav-dd:hover>.nav-dd-btn svg{transform:rotate(180deg)}}@media (width<=860px){.nav{justify-content:space-between;padding:8px 8px 8px 20px}.nav-links{width:min(360px, calc(100vw - 2 * var(--gutter)));background:var(--paper);border:1px solid var(--line);border-radius:20px;flex-direction:column;align-items:stretch;gap:2px;margin:0;padding:12px;display:none;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 18px 44px -12px #0b162633}.nav-links.open{display:flex}.nav-links a,.nav-dd-btn{border-radius:12px;justify-content:space-between;width:100%;padding:11px 12px;display:flex}.nav-dd-menu{z-index:auto;min-width:0;box-shadow:none;background:0 0;border:0;padding:2px 0 6px 12px;position:static;transform:none}.nav-dd-menu:before{display:none}.nav-cta-wrap{margin-left:auto}.nav-burger{display:block}}@media (width<=720px){.nav-cta-wrap{display:none}}.js .reveal{opacity:0;transition:opacity .7s,transform .7s cubic-bezier(.2,.7,.3,1);transform:translateY(18px)}.js .reveal.in{opacity:1;transform:none}@media print{.js .reveal{opacity:1;transition:none;transform:none}}.reveal-delay-1{transition-delay:80ms}.reveal-delay-2{transition-delay:.16s}.reveal-delay-3{transition-delay:.24s}.reveal-delay-4{transition-delay:.32s}.hero{padding:clamp(40px,4vw,56px) 0 0}.hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,480px);align-items:start;gap:clamp(40px,5vw,72px);display:grid}.hero-pill{background:var(--paper);border:1px solid var(--line);color:var(--ink-2);border-radius:999px;align-items:center;gap:10px;padding:7px 14px 7px 10px;font-size:13px;line-height:1.3;display:inline-flex}.hero-pill i{background:var(--cyan);width:8px;height:8px;box-shadow:0 0 0 4px var(--cyan-soft);border-radius:50%}.hero .h1{margin-top:26px}.hero .h1>span{display:block}.hero .lead{max-width:560px;margin-top:28px}.hero .lead strong{color:var(--ink);font-weight:600}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:34px;display:flex}.hero-proof{color:var(--mute);flex-wrap:wrap;gap:8px 22px;margin-top:30px;font-size:13.5px;list-style:none;display:flex}.hero-proof li{align-items:center;gap:8px;display:inline-flex}.hero-proof li:before{content:"";background:var(--green);border-radius:50%;width:6px;height:6px}.hero-proof strong{color:var(--ink-2);font-weight:600}.hero-map{--hm-cyan:var(--cyan);--hm-green:var(--green);--hm-green-ink:#4e9a24;aspect-ratio:20/19;isolation:isolate;width:100%;max-width:480px;font-family:var(--font);position:relative}.hm-svg{-webkit-mask-composite:source-in;width:100%;height:100%;position:absolute;inset:0;overflow:visible;-webkit-mask-image:linear-gradient(#0000,#000 16% 84%,#0000),linear-gradient(90deg,#0000,#000 22%);mask-image:linear-gradient(#0000,#000 16% 84%,#0000),linear-gradient(90deg,#0000,#000 22%);mask-composite:intersect}#hm-dots circle{fill:var(--navy);fill-opacity:.05}.hm-context{pointer-events:none}.hm-neigh path{fill:none;stroke:#1e345614;stroke-width:.8px;stroke-linejoin:round;vector-effect:non-scaling-stroke}.hm-country{stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:.1 4.6;vector-effect:non-scaling-stroke;cursor:pointer;transition:fill .35s,opacity .35s;animation:30s linear infinite hm-border}.hm-country--fr{fill:#00abc812;stroke:var(--hm-cyan)}.hm-country--tn{fill:#63b32f14;stroke:var(--hm-green-ink)}@keyframes hm-border{to{stroke-dashoffset:-47px}}.hm-route-base{fill:none;stroke:#1e345614;stroke-width:2px}.hm-route{fill:none;stroke:url(#hm-route-grad);stroke-width:3px;stroke-linecap:round;stroke-dasharray:3 12;animation:1.6s linear infinite hm-flow}@keyframes hm-flow{to{stroke-dashoffset:-30px}}.hm-traveler{fill:var(--hm-cyan);filter:drop-shadow(0 0 4px #00abc899)}.hm-pin{cursor:pointer}.hm-pin-hit{fill:#0000}.hm-pin-dot{stroke:#fff;stroke-width:3px;transition:r .25s}.hm-pin-halo{opacity:.22;transition:opacity .3s,r .3s}.hm-pin-pulse{fill:none;stroke-width:1.5px;opacity:0;transform-box:fill-box;transform-origin:50%;animation:2.4s ease-out infinite hm-pulse}.hm-pin--paris .hm-pin-dot,.hm-pin--paris .hm-pin-halo{fill:var(--hm-cyan)}.hm-pin--paris .hm-pin-pulse{stroke:var(--hm-cyan)}.hm-pin--tunis .hm-pin-dot,.hm-pin--tunis .hm-pin-halo{fill:var(--hm-green)}.hm-pin--tunis .hm-pin-pulse{stroke:var(--hm-green);animation-delay:1.2s}@keyframes hm-pulse{0%{opacity:.7;transform:scale(1)}to{opacity:0;transform:scale(3.2)}}.hm-cards{flex-direction:column;gap:10px;width:min(220px,48%);display:flex;position:absolute;bottom:22px;left:22px}.hm-card{all:unset;box-sizing:border-box;border:1px solid var(--line);backdrop-filter:blur(8px);cursor:pointer;background:#ffffffeb;border-radius:14px;align-items:flex-start;gap:12px;padding:10px 12px;transition:border-color .25s,transform .25s,opacity .25s;display:flex;box-shadow:0 10px 28px -14px #0b162640}.hm-card:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.hm-card-dot{border-radius:50%;flex:none;width:10px;height:10px;margin-top:5px}.hm-card--paris .hm-card-dot{background:var(--hm-cyan);box-shadow:0 0 0 4px var(--cyan-soft)}.hm-card--tunis .hm-card-dot{background:var(--hm-green);box-shadow:0 0 0 4px #e8f4df}.hm-card-body{flex-direction:column;gap:1px;display:flex}.hm-city{color:var(--ink);letter-spacing:-.01em;font-size:15px;font-weight:600}.hm-label{color:var(--ink-2);font-size:12px;line-height:1.45}.hero-map[data-active=paris] .hm-country--fr{fill:#00abc82e}.hero-map[data-active=tunis] .hm-country--tn{fill:#63b32f33}.hero-map[data-active=paris] .hm-country--tn,.hero-map[data-active=tunis] .hm-country--fr{opacity:.45}.hero-map[data-active=paris] .hm-pin--paris .hm-pin-halo,.hero-map[data-active=tunis] .hm-pin--tunis .hm-pin-halo{opacity:.4;r:24}.hero-map[data-active=paris] .hm-pin--paris .hm-pin-dot,.hero-map[data-active=tunis] .hm-pin--tunis .hm-pin-dot{r:9}.hero-map[data-active=paris] .hm-card--paris{border-color:#00abc899;transform:translate(4px)}.hero-map[data-active=tunis] .hm-card--tunis{border-color:#4e9a2499;transform:translate(4px)}.hero-map[data-active=paris] .hm-card--tunis,.hero-map[data-active=tunis] .hm-card--paris{opacity:.65}.hm-corner{z-index:2;flex-direction:column;gap:10px;display:flex;position:absolute;top:18px;right:18px}.hm-clock{border:1px solid var(--line);backdrop-filter:blur(8px);background:#ffffffeb;border-radius:14px;gap:6px;padding:6px;display:flex;box-shadow:0 10px 28px -14px #0b162640}.hm-clock-item{flex-direction:column;gap:2px;padding:6px 10px;display:flex}.hm-clock-item+.hm-clock-item{border-left:1px solid var(--line)}.hm-clock-label{font:500 10.5px/1.2 var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2);align-items:center;gap:6px;display:flex}.hm-clock-label:before{content:"";background:var(--hm-cyan);border-radius:50%;width:6px;height:6px}.hm-clock-item--tn .hm-clock-label:before{background:var(--hm-green-ink)}.hm-clock-time{color:var(--ink);font-variant-numeric:tabular-nums;font-size:20px;font-weight:600;line-height:1.1}.hm-clock-note{max-width:120px;color:var(--ink-2);align-self:center;padding:0 8px;font-size:11px;line-height:1.35}.hm-badge{border:1px solid var(--line);backdrop-filter:blur(8px);background:#ffffffeb;border-radius:14px;align-items:center;gap:12px;padding:12px 16px;display:flex;box-shadow:0 10px 28px -14px #0b162640}.hm-badge-icon{background:var(--cyan-soft);width:32px;height:32px;color:var(--accent);border-radius:9px;flex:none;place-items:center;display:grid}.hm-badge-txt{color:var(--ink-2);white-space:nowrap;font-size:12.5px;line-height:1.45}.hm-badge-txt strong{color:var(--ink);font-weight:600}.hero-grid>.hero-map{justify-self:end}@media (width>=1101px){.hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,540px)}.hero-grid>.hero-map{--bleed:max(var(--gutter), calc((100vw - var(--container)) / 2 - 8px));width:calc(100% + var(--bleed));max-width:none;margin-right:calc(-1 * var(--bleed));aspect-ratio:auto;height:clamp(420px,34vw,520px)}}@media (width<=1100px){.hero-map{max-width:480px;margin-bottom:92px}.hm-corner{flex-flow:wrap;top:calc(100% + 12px);left:0;right:auto}.hm-clock-note{display:none}}@media (width<=520px){.hero-map{aspect-ratio:10/11;margin-bottom:176px}.hm-corner{flex-direction:column;align-items:flex-start}.hm-cards{gap:8px;width:52%;bottom:14px;left:14px}.hm-card{padding:9px 11px}.hm-city{font-size:14px}.hm-label{font-size:11.5px}.hm-clock-note{display:none}.hm-clock-time{font-size:17px}}@media (prefers-reduced-motion:reduce){.hm-route,.hm-pin-pulse,.hm-country{animation:none}.hm-pin-pulse{opacity:0}.hm-traveler{display:none}.hm-card,.hm-country{transition:none}}.client-band{margin-top:clamp(56px,7vw,88px);padding-top:28px}.client-band-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 24px;margin-bottom:20px;display:flex}.client-band-link{color:var(--accent);font-size:14.5px;font-weight:500;text-decoration:none}.client-band-link:hover{text-underline-offset:3px;text-decoration:underline}.client-band-label{font:500 11.5px/1.5 var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--mute);margin-bottom:0}.client-band-list{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px 36px;list-style:none;display:flex}.client-name{letter-spacing:-.015em;color:#7c8798;font-size:21px;font-weight:600}.client-logo img{mix-blend-mode:multiply;filter:grayscale();opacity:.7;width:auto;height:34px;transition:filter .25s,opacity .25s;display:block}.client-logo img:hover{filter:none;opacity:1}.client-band-filters{width:0;height:0;position:absolute;overflow:hidden}.client-logo--invert img{filter:url(#client-logo-sur-noir)}.client-logo--invert img:hover{filter:url(#client-logo-sur-noir-couleur);opacity:1}@media (width<=720px){.client-band-list{justify-content:flex-start;gap:18px 28px}.client-logo img{height:28px}}.card{border-radius:var(--r-lg);background:var(--paper);border:1px solid var(--line);flex-direction:column;padding:30px;transition:transform .25s,box-shadow .25s,border-color .25s;display:flex;position:relative}.card:hover{box-shadow:var(--shadow-lift);transform:translateY(-3px)}.card-top{justify-content:space-between;align-items:center;margin-bottom:clamp(28px,4vw,48px);display:flex}.card h3{letter-spacing:-.025em;margin-bottom:12px;font-size:clamp(21px,1.9vw,25px);line-height:1.15}.card p{font-size:15.5px;line-height:1.6}.card p+p{color:var(--ink);margin-top:10px}.card-link{color:var(--ink);align-self:flex-start;align-items:center;gap:6px;margin-top:auto;padding-top:26px;font-size:14.5px;font-weight:500;text-decoration:none;display:inline-flex}.card-link .arr{width:15px;height:15px;color:var(--accent);transition:transform .2s}.card:hover .card-link .arr{transform:translate(3px)}.card-link:after{content:"";border-radius:inherit;position:absolute;inset:0}.card--dark{background:var(--grad-dark);color:var(--on-dark-2);border-color:#0000}.card--dark h3,.card--dark p+p{color:var(--on-dark)}.card--dark .icon-tile{color:var(--cyan-light);background:#00abc829}.card--dark .card-link{color:var(--on-dark)}.card--dark .card-link .arr{color:var(--cyan-light)}.bento{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.bento .card{min-height:300px}.card--wide{grid-column:span 2}.card--wide h3{letter-spacing:-.02em;font-size:clamp(26px,2.8vw,36px)}.card--wide p{max-width:620px}.card--wide p:first-of-type{font-size:17px}.model-grid{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:center;gap:clamp(40px,6vw,88px);display:grid}.model-grid .h2{margin-top:18px}.model-text{color:var(--on-dark-2);max-width:480px;margin-top:24px;font-size:16.5px;line-height:1.65}.model-text a{color:var(--cyan-light);text-underline-offset:3px;font-weight:500}.model-text a:hover{color:#fff}.model-grid .btn{margin-top:32px}.layers{flex-direction:column;gap:16px;display:flex}.layer{border:1px solid var(--line-dark);background:#ffffff08;border-radius:20px;grid-template-columns:108px minmax(0,1fr);align-items:start;gap:6px 20px;padding:24px 26px;display:grid;position:relative}.layer+.layer:before{content:"";background:linear-gradient(var(--cyan), var(--green));opacity:.7;width:2px;height:16px;position:absolute;top:-17px;left:64px}.layer--hi{background:#00abc814;border-color:#00abc88c;box-shadow:0 0 0 4px #00abc812}.layer-who{font:500 11px/1.2 var(--font-mono);letter-spacing:.08em;color:var(--cyan-light);white-space:nowrap;border:1px solid #7fd9e859;border-radius:999px;grid-row:span 2;justify-self:start;padding:6px 11px}.layer strong{letter-spacing:-.02em;color:var(--on-dark);font-size:19px;font-weight:600}.layer p{color:var(--on-dark-2);font-size:15px;line-height:1.6}.entry-grid{grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:stretch;gap:16px;display:grid}.entry-card{border-radius:var(--r-lg);background:var(--paper);border:1px solid var(--line);flex-direction:column;padding:clamp(24px,3vw,34px);display:flex}.entry-card h3{letter-spacing:-.02em;margin-top:20px;font-size:clamp(22px,2.2vw,27px)}.entry-card>p{margin-top:10px;font-size:15.5px;line-height:1.6}.checklist{margin:20px 0 0;list-style:none}.checklist li{align-items:flex-start;gap:12px;padding:7px 0;font-size:15px;line-height:1.5;display:flex}.checklist svg{width:18px;height:18px;color:var(--accent);flex-shrink:0;margin-top:2px}.entry-card .btn{align-self:flex-start;margin-top:auto}.entry-card .checklist{margin-bottom:26px}.entry-card--featured{box-shadow:0 0 0 4px var(--cyan-soft), var(--shadow-lift);border-color:#08708273}.entry-card--second h3{font-size:clamp(20px,1.9vw,23px)}.entry-card--second .icon-tile{width:38px;height:38px}.entry-note{color:var(--mute);align-items:center;gap:10px;margin-top:20px;font-size:14.5px;display:flex}.entry-note:before{content:"";background:var(--cyan);border-radius:50%;flex:none;width:6px;height:6px}.section--cta{padding-top:0}.cta-box,.cta-banner{isolation:isolate;text-align:center;background:var(--navy-ink);border-radius:36px;padding:clamp(48px,7vw,96px) clamp(24px,6vw,80px);position:relative;overflow:hidden}.cta-box:before,.cta-box:after,.cta-banner:before,.cta-banner:after{content:"";z-index:-1;filter:blur(80px);border-radius:50%;position:absolute}.cta-box:before,.cta-banner:before{background:#00abc861;width:460px;height:460px;top:-180px;right:-120px}.cta-box:after,.cta-banner:after{background:#63b32f38;width:380px;height:380px;bottom:-220px;left:-140px}.cta-box h2,.cta-banner h2{max-width:820px;margin:0 auto}.cta-box p,.cta-banner p{max-width:640px;margin:22px auto 36px;font-size:18px;line-height:1.55}.cta-box .hero-actions{justify-content:center;margin-top:0}footer{color:var(--on-dark-2);background:#142440;padding:72px 0 32px;font-size:14.5px}.foot-grid{grid-template-columns:1.4fr 1fr 1fr 1fr;gap:40px;display:grid}.foot-brand img{width:auto;height:28px;margin-bottom:20px;display:block}.foot-brand p{max-width:300px;color:var(--on-dark-2);line-height:1.6}.foot-col h2{font:500 11.5px/1.4 var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--on-dark-3);margin-bottom:16px}.foot-col a:not(.btn){color:var(--on-dark-2);padding:5px 0;text-decoration:none;transition:color .2s;display:block}.foot-col a:not(.btn):hover{color:#fff}.foot-col p{color:var(--on-dark-2);line-height:1.55}.foot-bottom{border-top:1px solid var(--line-dark);color:var(--on-dark-3);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:56px;padding-top:24px;font-size:13px;display:flex}.foot-legal{flex-wrap:wrap;align-items:center;gap:8px 18px;display:flex}.foot-legal a{color:var(--on-dark-3);text-decoration:none}.foot-legal a:hover{color:#fff}.foot-social{gap:8px;display:flex}.foot-social a{width:36px;height:36px;color:var(--on-dark-2);border:1px solid #fff3;border-radius:50%;place-items:center;transition:color .2s,border-color .2s;display:grid}.foot-social a:hover{color:var(--cyan-light);border-color:var(--cyan-light)}.page-hero{padding:clamp(48px,6vw,88px) 0 clamp(40px,5vw,72px)}.page-hero h1{letter-spacing:-.025em;max-width:920px;margin:22px 0;font-size:clamp(38px,5vw,64px);line-height:1.03}.page-hero p{max-width:700px;font-size:clamp(16.5px,1.4vw,18.5px);line-height:1.55}.page-hero .crumbs{font:500 11.5px/1.4 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--mute);margin-bottom:26px}.crumbs a{color:var(--mute);text-decoration:none}.crumbs a:hover{color:var(--ink)}.crumbs span{color:var(--mute);margin:0 8px}.orbit,.case-glow{display:none}.pillars,.services-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px;display:grid}.pillar,.service-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:30px 28px;transition:transform .25s,box-shadow .25s,border-color .25s;position:relative}.pillar:hover,.service-card:hover{box-shadow:var(--shadow-lift);transform:translateY(-3px)}.pillar-icon,.service-icon,.offer-icon{border-radius:var(--r-sm);background:var(--grad-soft);width:44px;height:44px;color:var(--accent);place-items:center;margin-bottom:28px;display:grid}.pillar-icon svg,.service-icon svg,.offer-icon svg{width:21px;height:21px}.pillar-num{font:500 12px/1 var(--font-mono);color:var(--text-mute);position:absolute;top:32px;right:28px}.pillar h3,.service-card h3{margin-bottom:10px}.vision{text-align:center;max-width:960px}.vision-statement{font:500 clamp(24px, 2.8vw, 34px)/1.3 var(--font-display);letter-spacing:-.015em;color:var(--ink);text-wrap:balance;margin-top:22px}.align-box{border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--border-strong);padding:24px 28px}.align-box-grid{grid-template-columns:repeat(var(--align-cols,4), minmax(0, 1fr));gap:14px var(--align-gap,72px);color:var(--text-dim);font-size:.88rem;display:grid}@media (width<=980px){.align-box-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px}}@media (width<=560px){.align-box-grid{grid-template-columns:1fr}}.page-hero .draft-banner{margin-bottom:18px;display:table}.pillars--3{grid-template-columns:repeat(3,minmax(0,1fr))}@media (width<=980px){.pillars--3{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=620px){.pillars--3{grid-template-columns:1fr}}.a-valider{color:#5c4600;background:#fff3c4;border-radius:4px;padding:1px 4px}.pillar .trust-mark{border-top:1px solid var(--line);font:500 12px/1.45 var(--font-mono);letter-spacing:.02em;color:var(--accent);align-items:flex-start;gap:8px;margin-top:16px;padding-top:14px;display:flex}.trust-mark svg{flex:none;margin-top:1px}.trust-mark a{color:var(--accent);text-underline-offset:3px;white-space:nowrap;font-weight:600;text-decoration:underline}.pillar-letter{font:600 clamp(52px, 5vw, 68px)/1 var(--font-display);color:var(--accent);margin-bottom:18px;display:block}.pillar .pillar-pair{font-size:14.5px;line-height:1.55}.pillar .pillar-pair+.pillar-pair{margin-top:10px}.pillar-who{font:600 12px/1.4 var(--font-display);color:var(--text);margin-bottom:2px;display:block}.pillar .pillar-proof{font:500 11.5px/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--accent);margin:-4px 0 10px}.pillar p,.service-card p{font-size:15.5px;line-height:1.6}.service-card .tags{flex-wrap:wrap;gap:6px;margin-top:18px;display:flex}.tech-tabs,.mode-tabs{flex-wrap:wrap;gap:8px;margin-bottom:32px;display:flex}.tech-tab,.mode-tab{cursor:pointer;background:var(--surface);border:1px solid var(--border);font:500 14px/1.2 var(--font);color:var(--text-dim);border-radius:999px;padding:10px 18px;transition:color .2s,background-color .2s,border-color .2s}.tech-tab:hover,.mode-tab:hover{color:var(--text);border-color:var(--border-strong)}.tech-tab.active,.mode-tab.active{background:var(--ink);border-color:var(--ink);color:#fff}.tech-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px;display:grid}.tech-item{text-align:center;background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:22px 14px;transition:transform .25s,box-shadow .25s;display:flex}.tech-item:hover{box-shadow:var(--shadow-lift);transform:translateY(-3px)}.tech-logo{justify-content:center;align-items:center;width:40px;height:40px;display:flex}.tech-logo svg,.tech-logo img{object-fit:contain;width:100%;height:100%}.tech-monogram{width:40px;height:40px;font:600 13px/1 var(--font);color:#fff;border-radius:11px;justify-content:center;align-items:center;display:flex}.tech-name{color:var(--text-dim);font-size:13px;font-weight:500}.pipeline{padding:8px 0;position:relative}.pipeline-track{grid-template-columns:repeat(5,minmax(0,1fr));gap:24px;display:grid;position:relative}.pipeline-track:before{content:"";background:var(--border-strong);height:1px;position:absolute;top:16px;left:16px;right:0}.pipe-step{z-index:1;text-align:left;padding:0;position:relative}.pipe-dot{background:var(--dot-bg,var(--bg));border:1px solid var(--text);width:33px;height:33px;font:500 12px/1 var(--font-mono);color:var(--text);border-radius:50%;justify-content:center;align-items:center;margin:0 0 22px;display:flex}.pipe-step h3{letter-spacing:-.015em;margin-bottom:8px;font-size:17px}.pipe-step p{font-size:14.5px;line-height:1.55}.d2d{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:40px;display:grid}.steps7{grid-template-columns:repeat(7,minmax(0,1fr));gap:12px;display:grid}.d2d-phase{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:22px 20px;position:relative}.d2d-num{font:500 12px/1 var(--font-mono);color:var(--accent);margin-bottom:18px;display:block}.d2d-phase h4{margin-bottom:6px;font-size:16.5px}.d2d-phase p{font-size:14px;line-height:1.55}.step-who{background:var(--grad-soft);color:var(--accent);font:500 10.5px/1.3 var(--font-mono);letter-spacing:.08em;border-radius:999px;margin-top:12px;padding:3px 8px;display:inline-block}.case-studies{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px;display:grid}.case{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:clamp(26px,3vw,36px);position:relative;overflow:hidden}.case-label{font:500 11.5px/1.4 var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-bottom:14px;display:inline-block}.case h3{margin-bottom:14px}.case p{margin-bottom:16px;font-size:15.5px;line-height:1.6}.case-result{background:var(--grad-soft);border-left:3px solid var(--accent);border-radius:0 12px 12px 0;margin-top:22px;padding:16px 18px}.case-result strong{color:var(--accent)}.case-tech{flex-wrap:wrap;gap:6px;margin-top:18px;display:flex}.offers{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px;display:grid}.offer{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);flex-direction:column;padding:clamp(28px,3vw,36px);display:flex;position:relative}.offer.featured{box-shadow:0 0 0 4px var(--cyan-soft), var(--shadow-lift);border-color:#08708273}.offer.featured:before{content:"RECOMMANDÉ";background:var(--ink);color:#fff;font:500 10.5px/1.3 var(--font-mono);letter-spacing:.1em;border-radius:999px;padding:4px 10px;position:absolute;top:22px;right:22px}.offer h3{margin-bottom:12px}.offer ul{border-bottom:1px solid var(--border);flex:1;margin:22px 0 28px;padding:0;list-style:none}.offer li{border-top:1px solid var(--border);color:var(--text-dim);align-items:flex-start;gap:12px;padding:12px 0;font-size:15px;line-height:1.5;display:flex}.offer li svg{color:var(--accent);flex-shrink:0;margin-top:2px}.locations{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;margin-top:48px;display:grid}.location{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:30px;position:relative}.location-flag{margin-bottom:14px;font-size:28px}.location h3{margin-bottom:8px}.location .addr{color:var(--text-dim);font-size:15px;line-height:1.7}.badge,.location .badge{background:var(--grad-soft);color:var(--accent);font:500 10.5px/1.3 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;border-radius:999px;margin-top:14px;padding:4px 10px;display:inline-block}.badge.new,.location .badge.new{color:#7a3a7d;background:#f3e9f3}.value-list{padding:0;list-style:none}.value-list li{color:var(--text-dim);align-items:flex-start;gap:12px;padding:10px 0;display:flex}.value-list li svg{color:var(--accent);flex-shrink:0;margin-top:4px}.value-list li strong{color:var(--text)}.two-col{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(40px,6vw,80px);display:grid}.two-col.flip>:first-child{order:2}.visual-card{isolation:isolate;contain:paint;border-radius:var(--r-lg);background:var(--grad-dark);padding:clamp(24px,3vw,34px);position:relative;overflow:hidden;box-shadow:0 40px 80px -44px #0b16268c}.visual-card--light,.section--dark .visual-card{--text:var(--ink);--text-dim:var(--ink-2);--text-mute:var(--mute);--accent:#087082;--accent-2:#3d7a1f;--surface:#fff;--border:var(--line);--border-strong:#d2dae7;--grad-soft:var(--cyan-soft);--tag-bg:var(--bg);--lt-ink:var(--ink);--lt-text:var(--ink-2);--lt-mute:var(--mute);--lt-accent:#087082;--lt-border:var(--line);--lt-border-strong:#d2dae7;--lt-bg-2:#fff;--btn-bg:var(--ink);--btn-bg-hover:var(--navy);--btn-fg:#fff;--btn-arrow:var(--cyan);--ghost-line:#0b16262e;--ghost-line-hover:#0b162652;--ghost-hover:var(--paper);background:var(--paper);border:1px solid var(--line);box-shadow:none;color:var(--text-dim)}.visual-card--light .visual-orb,.section--dark .visual-orb{display:none}.visual-orb{z-index:-1;filter:blur(70px);pointer-events:none;border-radius:50%;width:240px;height:240px;position:absolute}.visual-orb-1{background:var(--cyan);opacity:.32;top:-110px;right:-90px}.visual-orb-2{background:var(--green);opacity:.18;bottom:-120px;left:-100px}.segments{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:48px;display:grid}.segment{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);flex-direction:column;padding:28px 26px;display:flex;position:relative}.segment-tag{font:500 11.5px/1.4 var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--accent);margin-bottom:16px;display:block}.segment h3{color:var(--text);margin-bottom:10px}.segment p{color:var(--text-dim);flex:1;font-size:15px;line-height:1.6}.segment-foot{flex-wrap:wrap;gap:6px;margin-top:18px;display:flex}.segment-foot span{background:var(--tag-bg,var(--bg));border:1px solid var(--border);color:var(--text-dim);border-radius:999px;padding:4px 10px;font-size:12.5px}.model-note{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:44px;display:grid}.model-step{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:26px}.model-step .n{font:500 11.5px/1.4 var(--font-mono);letter-spacing:.08em;color:var(--accent);margin-bottom:14px;display:block}.model-step strong{letter-spacing:-.015em;color:var(--text);margin-bottom:6px;font-size:18px;font-weight:600;display:block}.model-step p{font-size:15px;line-height:1.6}.partner-logo{align-items:center;height:56px;margin:0 0 16px;display:flex}.partner-logo img{mix-blend-mode:multiply;width:auto;max-width:100%;display:block}.partner-logo--blanc img{filter:brightness(0)}.partner-mono{border-radius:var(--r-sm);background:var(--grad-ink);color:#fff;width:54px;height:54px;font:600 14px/1 var(--font);letter-spacing:.05em;justify-content:center;align-items:center;margin-bottom:14px;display:flex}.contact-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:clamp(32px,5vw,64px);display:grid}.form{border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow-soft);padding:clamp(24px,4vw,40px)}.form-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;display:grid}.field{margin-bottom:18px}.field label{color:var(--text-dim);margin-bottom:8px;font-size:13.5px;font-weight:500;display:block}.field input,.field textarea,.field select{width:100%;min-height:48px;color:var(--ink);border:1px solid var(--border-strong);border-radius:var(--r-sm);font:400 15px/1.4 var(--font);background:#fff;padding:12px 14px;transition:border-color .2s,box-shadow .2s}.field input::placeholder,.field textarea::placeholder{color:var(--mute)}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 4px #00abc826}.field textarea{resize:vertical;min-height:140px}.form button[type=submit]{white-space:normal;text-align:center;line-height:1.4}.page-toc{z-index:90;pointer-events:none;justify-content:center;margin-bottom:-12px;padding:0 16px;display:flex;position:sticky;top:84px}.page-toc-inner{pointer-events:auto;backdrop-filter:blur(12px)saturate(160%);border:1px solid var(--line);box-shadow:var(--shadow-soft);background:#ffffffd9;border-radius:999px;position:relative}.page-toc-toggle{cursor:pointer;font:500 13.5px/1.2 var(--font);color:var(--ink);white-space:nowrap;background:0 0;border:0;align-items:center;gap:8px;padding:10px 14px 10px 18px;display:flex}.page-toc-toggle .n,.page-toc-link .n{font:500 11px/1 var(--font-mono);letter-spacing:.04em;color:var(--mute);transition:color .25s}.page-toc-toggle .n{color:var(--accent)}.page-toc-toggle .n:empty{display:none}.page-toc-toggle svg{width:16px;height:16px;color:var(--mute);transition:transform .25s}.page-toc.open .page-toc-toggle svg{transform:rotate(180deg)}.page-toc-track{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);flex-direction:column;align-items:stretch;gap:2px;width:min(300px,100vw - 32px);padding:8px;display:none;position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%);box-shadow:0 18px 44px -12px #0b16262e}.page-toc.open .page-toc-track{display:flex}.page-toc-link,.page-toc-ext{white-space:nowrap;border-radius:12px;align-items:center;gap:8px;padding:11px 14px;font-size:14px;font-weight:500;text-decoration:none;transition:color .25s,background-color .25s;display:flex}.page-toc-link{color:var(--ink-2)}.page-toc-link:hover{color:var(--ink);background:#0b16260d}.page-toc-link[aria-current=true]{color:var(--ink);background:var(--cyan-soft)}.page-toc-link[aria-current=true] .n,.page-toc-ext{color:var(--accent)}.page-toc-ext:hover{color:var(--ink)}.page-toc-ext svg{flex:none;width:14px;height:14px}.page-toc-sep{background:var(--line);height:1px;margin:4px 10px}.page-toc-progress{background:var(--cyan);transform-origin:0;height:2px;transform:scaleX(var(--toc-progress,0));pointer-events:none;border-radius:2px;transition:transform .15s linear;position:absolute;bottom:0;left:18px;right:18px}.page-toc-toggle:focus-visible,.page-toc-link:focus-visible,.page-toc-ext:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.page-toc~section[id]{scroll-margin-top:96px}@media (width>=1340px){.page-toc{opacity:0;visibility:hidden;margin:0;padding:0;transition:opacity .35s,visibility .35s;display:block;position:fixed;top:50%;left:10px;transform:translateY(-50%)}.page-toc.is-visible{opacity:1;visibility:visible}.page-toc-inner{border-radius:var(--r-md);padding:8px 10px 8px 8px}.page-toc-toggle{display:none}.page-toc-track{width:auto;box-shadow:none;background:0 0;border:0;border-radius:0;align-items:flex-start;gap:4px;padding:0;display:flex;position:relative;top:auto;left:auto;transform:none}.page-toc-link,.page-toc-ext{background:0 0;border-radius:0;gap:0;padding:6px 0 6px 18px;font-size:13px;position:relative}.page-toc-link:hover,.page-toc-link[aria-current=true]{background:0 0}.page-toc-link:before{content:"";background:var(--paper);border:1px solid var(--border-strong);border-radius:50%;width:9px;height:9px;margin-top:-4.5px;transition:background-color .25s,border-color .25s;position:absolute;top:50%;left:0}.page-toc-link.done:before{background:#00abc873;border-color:#0000}.page-toc-link[aria-current=true]:before{background:var(--cyan);border-color:var(--cyan);box-shadow:0 0 0 3px var(--cyan-soft)}.page-toc-ext{gap:10px;margin-top:2px;padding-left:0;font-size:12.5px}.page-toc-ext svg{order:-1;width:11px;height:11px;margin-left:-1px}.page-toc-sep{width:18px;margin:4px 0 2px -4px}.page-toc-inner:before{content:"";width:1px;left:12px;top:var(--rail-top,0);height:var(--rail-len,0);background:var(--border-strong);position:absolute}.page-toc-progress{width:2px;height:var(--rail-fill,0);bottom:auto;left:11.5px;right:auto;top:var(--rail-top,0);transition:height .15s linear;transform:none}.page-toc-link .t,.page-toc-ext .t{opacity:0;visibility:hidden;width:0;margin-left:0;transition:opacity .2s,transform .2s,visibility .2s;transform:translate(-4px)}.page-toc:hover .t,.page-toc:focus-within .t{opacity:1;visibility:visible;width:auto;margin-left:8px;transform:none}.page-toc:hover .page-toc-inner,.page-toc:focus-within .page-toc-inner{background:#fffffff7;padding-right:18px}.page-toc-link:hover{color:var(--ink)}}@media (width>=1680px){.page-toc-link .t,.page-toc-ext .t{opacity:1;visibility:visible;width:auto;margin-left:8px;transform:none}.page-toc-inner{padding-right:18px}}.article-prose{max-width:720px;color:var(--text-dim);margin:0 auto;font-size:17.5px;line-height:1.75}.article-prose h2{letter-spacing:-.025em;margin:48px 0 16px;scroll-margin-top:96px;font-size:clamp(24px,2.4vw,28px);line-height:1.25}.article-prose h3{margin:34px 0 12px;font-size:20px}.article-prose p{margin:0 0 20px}.article-prose ul,.article-prose ol{margin:0 0 20px 22px}.article-prose li{margin-bottom:8px}.article-prose strong{color:var(--text)}.article-prose a{color:var(--accent);text-underline-offset:3px;text-decoration:underline}.article-prose blockquote{border-left:3px solid var(--accent);color:var(--text);margin:26px 0;padding:4px 0 4px 22px}.article-prose blockquote p:last-child{margin-bottom:0}.article-prose code{background:var(--bg);border:1px solid var(--line);font:.88em var(--font-mono);border-radius:6px;padding:2px 7px}.article-prose pre{background:var(--surface);border:1px solid var(--border);border-radius:14px;margin:0 0 20px;padding:18px 20px;overflow-x:auto}.article-prose pre code{color:inherit;background:0 0;border:0;padding:0}.article-prose hr{border:0;border-top:1px solid var(--line);margin:40px 0}.article-prose img{border-radius:12px;max-width:100%;height:auto;margin:30px auto;display:block}.article-prose table{border-collapse:collapse;width:100%;margin:0 0 22px;font-size:.95rem;line-height:1.55;display:block;overflow-x:auto}.article-prose th,.article-prose td{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;padding:10px 14px}.article-prose th{color:var(--text);font-weight:600}.article-prose li:has(>input[type=checkbox]){margin-left:-24px;list-style:none}.article-prose input[type=checkbox]{accent-color:var(--accent);margin-right:8px}.section-light .article-prose{color:var(--lt-text)}.section-light .article-prose h2,.section-light .article-prose h3,.section-light .article-prose strong,.section-light .article-prose blockquote{color:var(--lt-ink)}.section-light .article-prose a{color:var(--lt-accent)}.section-light .article-prose blockquote{border-left-color:#0a7d91}.section-light .article-prose code{border-color:var(--lt-border);color:var(--lt-ink);background:#eaf1f8}.section-light .article-prose pre{border-color:var(--lt-border)}.section-light .article-prose pre code{color:inherit;background:0 0;border:none}.section-light .article-prose hr{border-top-color:var(--lt-border)}.section-light .article-prose img{border:1px solid var(--lt-border)}.section-light .article-prose th,.section-light .article-prose td{border-bottom-color:var(--lt-border)}.section-light .article-prose th{color:var(--lt-ink);background:#eaf1f8}.section-light .article-prose input[type=checkbox]{accent-color:var(--lt-accent)}section.article-section{background:#fff;padding-top:36px}.article-section{--read-font:"Outfit", "Inter", sans-serif}.article-section .article-prose,.article-section .article-prose p,.article-section .article-prose li,.article-section .article-prose td{font-family:var(--read-font);color:#1f2a3d;font-size:1.125rem;line-height:1.75}.article-section .article-prose h2,.article-section .article-prose h3{font-family:var(--read-font);color:#1e3456;letter-spacing:-.01em}.article-section .article-prose h2{margin:52px 0 18px;font-size:1.75rem;font-weight:600;line-height:1.25}.article-section .article-prose h3{font-size:1.3rem;font-weight:600}.article-section .article-prose strong{color:#16243c;font-weight:600}.article-section .article-prose code{font-size:.82em}.article-section .article-prose table,.article-section .article-prose td{font-size:1rem;line-height:1.55}.article-source{border:1px solid var(--lt-border);background:#eef3f9;border-radius:14px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin:44px 0 0;padding:20px 22px;display:flex}.article-source strong{color:var(--lt-ink);display:block}.article-source span{color:var(--lt-mute);font-size:.85rem}.section-light .article-source a{color:#fff;background:var(--lt-accent);white-space:nowrap;border-radius:999px;padding:10px 18px;font-size:.92rem;font-weight:600;text-decoration:none}.section-light .article-source a:hover{background:#065e6d}.draft-banner{background:var(--brand-yellow);color:#1b1b1b;border-radius:8px;margin:0 0 14px;padding:6px 12px;font-size:12.5px;font-weight:600;display:inline-block}body.is-blog,body.is-blog h1,body.is-blog h2,body.is-blog h3,body.is-blog h4{font-family:Outfit,Inter,sans-serif}body.is-blog h1,body.is-blog h2,body.is-blog h3{letter-spacing:-.01em}.blog-nav{background:#fff}.blog-nav-top{background:var(--brand-navy);position:relative}.blog-nav-top:after{content:"";background:linear-gradient(90deg, var(--cyan), var(--green));height:2px;position:absolute;bottom:0;left:0;right:0;-webkit-mask:radial-gradient(circle,#000 .9px,#0000 1.3px) 0/7px 2px repeat-x;mask:radial-gradient(circle,#000 .9px,#0000 1.3px) 0/7px 2px repeat-x}.blog-nav-row{justify-content:space-between;align-items:center;gap:16px;min-height:76px;display:flex}.blog-brand{color:#fff;align-items:center;gap:14px;text-decoration:none;display:flex}.blog-brand img{width:auto;height:28px;display:block}.blog-brand-sep{background:#ffffff59;width:1px;height:26px}.blog-brand-name{letter-spacing:.02em;align-items:center;gap:9px;font-size:1.35rem;font-weight:600;display:inline-flex}.blog-brand-dot{background:var(--cyan);border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 3px #00abc840}.blog-nav-links{gap:6px;display:flex}.blog-nav-links a{color:#dde6f2;border-radius:999px;padding:8px 12px;font-size:14.5px;font-weight:500;text-decoration:none}.blog-nav-links a:hover{color:#fff;background:#00abc82e}.blog-nav-links{align-items:center}.blog-nav-links a.blog-nav-icon{border:1px solid #ffffff38;place-items:center;width:36px;height:36px;padding:0;display:grid}.blog-nav-links a.blog-nav-site{white-space:nowrap;color:#fff;border:1px solid #ffffff73;margin-left:6px;padding:8px 16px;font-weight:600}.blog-nav-links a.blog-nav-site:hover{color:var(--brand-navy);background:#fff}.blog-nav a:focus-visible{outline:2px solid var(--brand-cyan);outline-offset:2px}.blog-nav .cat-bar{max-width:1200px;margin:0 auto;padding-top:16px}@media (width<=1339px){.is-blog .page-toc{top:12px}}.is-blog main{background:#fff}.is-blog footer{margin-top:0}@media (width<=560px){.blog-nav-row{gap:10px;min-height:64px}.blog-brand{gap:10px}.blog-brand img{height:22px}.blog-brand-name{gap:7px;font-size:1.15rem}.blog-nav-careers{display:none}.blog-nav-links a.blog-nav-site{margin-left:0;padding:7px 12px;font-size:13.5px}}@media (width<=480px){.blog-nav-links a.blog-nav-icon{display:none}}.blog-index{background:#fff;padding:48px 0 100px}.blog-index .blog-col{max-width:948px}.blog-index h1{color:var(--brand-navy);margin:0 0 8px;font-size:clamp(1.6rem,2.4vw,2rem)}.blog-index .blog-intro{color:var(--lt-text);margin:0;font-size:1.1rem}.cat-bar ul{background:var(--bg);border:1px solid var(--line);border-radius:16px;flex-wrap:wrap;justify-content:center;gap:2px;margin:0;padding:6px;list-style:none;display:flex}.cat-bar a{white-space:nowrap;letter-spacing:.02em;text-transform:uppercase;color:var(--lt-ink);border-radius:999px;padding:9px 12px;font-size:13px;font-weight:600;text-decoration:none;transition:background .2s,color .2s;display:block}.cat-bar a:hover{background:var(--cyan-soft);color:var(--lt-accent)}.cat-bar a[aria-current]{background:var(--brand-navy);color:#fff;align-items:center;gap:7px;display:inline-flex}.cat-bar a[aria-current]:before{content:"";background:var(--cyan);border-radius:50%;width:6px;height:6px}.post-list{margin:24px 0 0;padding:0;list-style:none}.post-item{border-bottom:1px solid var(--lt-border);align-items:flex-start;gap:28px;padding:32px 0;display:flex}.post-item:last-child{border-bottom:none}.post-item-cover{flex:0 0 240px;display:block}.post-item-cover img{border:1px solid var(--lt-border);border-radius:12px;width:100%;height:auto;display:block}.post-item-body{flex:1;min-width:0}.post-item h2{margin:0 0 10px;font-size:1.4rem;line-height:1.3}.post-item h2 a{color:#1e3456;text-decoration:none;transition:color .2s}.post-item h2 a:hover{color:var(--lt-accent);text-underline-offset:3px;text-decoration:underline}.blog-index .post-item-meta{color:var(--lt-mute);flex-wrap:wrap;align-items:center;gap:8px 12px;margin:0 0 12px;font-size:14px;display:flex}.cat-pill{color:#1e3456;border:1px solid #1e3456;border-radius:999px;padding:3px 12px;font-size:13px;font-weight:500;text-decoration:none;transition:background .2s,color .2s}.cat-pill:hover{color:#fff;background:#1e3456}.blog-index .post-item-desc{color:var(--lt-text);margin:0;font-size:1rem;line-height:1.65}.post-list-empty{text-align:center;margin-top:40px}.post-item h3{margin:0 0 10px;font-size:1.4rem;line-height:1.3}.post-item h3 a{color:#1e3456;text-decoration:none;transition:color .2s}.post-item h3 a:hover{color:var(--lt-accent);text-underline-offset:3px;text-decoration:underline}.blog-index .post-item-meta a.post-item-auteur{color:var(--lt-accent);text-decoration:none}.blog-index .post-item-meta a.post-item-auteur:hover{text-decoration:underline}.avatar{object-fit:cover;border-radius:50%;flex:none;display:inline-block}.avatar-initiales{background:var(--brand-navy);color:#fff;letter-spacing:.02em;justify-content:center;align-items:center;font-weight:600;display:inline-flex}.blog-avatars{display:inline-flex}.blog-avatars .avatar{border:2px solid #fff}.blog-avatars .avatar+.avatar{margin-left:-10px}.blog-auteur{border-bottom:1px solid var(--lt-border);align-items:flex-start;gap:28px;margin:0 0 40px;padding-bottom:32px;display:flex}.blog-auteur h1{margin:0 0 6px}.blog-auteur .blog-auteur-role{letter-spacing:.06em;text-transform:uppercase;color:var(--lt-accent);margin:0 0 14px;font-size:14px;font-weight:600}.blog-auteur .blog-auteur-bio p{color:var(--lt-text);margin:0 0 12px;font-size:1.05rem;line-height:1.65}.blog-auteur .blog-auteur-lien{color:var(--lt-accent);font-weight:600;text-decoration:none}.blog-auteur .blog-auteur-lien:hover{text-decoration:underline}.blog-index h2.blog-auteur-titre{color:var(--brand-navy);margin:0;font-size:1.3rem}@media (width<=600px){.blog-auteur{flex-direction:column;gap:18px}}.post-item-meta .draft-badge{margin-left:0}.blog-article-head{background:#fff;padding:56px 0 0}.blog-read{max-width:760px;margin:0 auto}.blog-article-head h1{color:var(--brand-navy);margin:0 0 16px;font-size:clamp(1.9rem,3.4vw,2.7rem);line-height:1.2}.blog-article-meta{color:var(--lt-mute);flex-wrap:wrap;align-items:center;gap:8px 12px;margin:0 0 18px;font-size:15px;display:flex}.blog-article-meta a:not(.cat-pill){color:var(--lt-accent)}.blog-article-intro{border-bottom:1px solid var(--lt-border);align-items:flex-start;gap:24px;padding-bottom:28px;display:flex}.blog-article-thumb{border-radius:12px;flex:0 0 220px;width:220px;height:auto}.blog-article-lead{color:var(--lt-text);margin:0;font-size:1.2rem;line-height:1.6}@media (width<=600px){.blog-article-intro{flex-direction:column;gap:16px}.blog-article-thumb{flex:none;width:100%}}@media (width<=700px){.cat-bar ul{flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto}.post-item{flex-direction:column;gap:16px}.post-item-cover{flex:none;width:100%}}.draft-badge{background:var(--brand-yellow);color:#1b1b1b;letter-spacing:.04em;border-radius:6px;margin-left:10px;padding:2px 8px;font-weight:600}.article-meta{font:500 12px/1.4 var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--text-mute);flex-wrap:wrap;align-items:center;gap:14px;display:flex}@media (width<=1100px){.steps7{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width<=980px){.two-col,.contact-grid{grid-template-columns:1fr;gap:32px}.two-col.flip>:first-child{order:0}.pipeline-track,.d2d{grid-template-columns:repeat(2,minmax(0,1fr))!important}.pipeline-track:before{display:none}.segments{grid-template-columns:repeat(2,minmax(0,1fr))}.model-note{grid-template-columns:1fr}}@media (width<=720px){.pipeline-track,.d2d{grid-template-columns:1fr!important}.form-row{grid-template-columns:1fr}.steps7{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=560px){.segments{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.page-toc,.page-toc-link,.page-toc-link:before,.page-toc-link .n,.page-toc .t,.page-toc-progress,.page-toc-toggle svg,.pillar,.service-card,.tech-item{transition:none}}@media (width<=1100px){.hero-grid{grid-template-columns:1fr}.hero-grid>.hero-map{justify-self:start}.bento{grid-template-columns:repeat(2,minmax(0,1fr))}.model-grid{grid-template-columns:1fr}.foot-grid{grid-template-columns:1fr 1fr}}@media (width<=900px){.section-head,.entry-grid{grid-template-columns:1fr}}@media (width<=720px){:root{--gutter:18px}.bento{grid-template-columns:1fr}.card--wide{grid-column:auto}.bento .card{min-height:0}.layer{grid-template-columns:1fr;padding:20px}.layer-who{grid-row:auto;margin-bottom:8px}.layer+.layer:before{left:32px}.foot-grid{grid-template-columns:1fr;gap:32px}.hero-actions .btn{flex:auto}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.js .reveal{opacity:1;transition:none;transform:none}.btn,.card{transition:none}}.accent,.gradient-text{font-family:inherit;font-style:normal;font-weight:inherit;letter-spacing:inherit;font-size:1em}.tag{border-radius:8px}.eyebrow:before{content:"";background:var(--cyan);width:7px;height:7px;box-shadow:0 0 0 3px var(--cyan-soft);border-radius:50%;flex:none}.section--dark .eyebrow:before,.visual-card .eyebrow:before{box-shadow:0 0 0 3px #00abc840}.hero-pill i{box-shadow:0 0 0 4px var(--cyan-soft)}.client-band,footer{border-top:0;position:relative}.client-band:before,footer:before{content:"";background:linear-gradient(90deg, var(--cyan), var(--green));height:2px;position:absolute;top:0;left:0;right:0;-webkit-mask:radial-gradient(circle,#000 .9px,#0000 1.3px) 0/7px 2px repeat-x;mask:radial-gradient(circle,#000 .9px,#0000 1.3px) 0/7px 2px repeat-x}footer:before{left:max(var(--gutter), calc((100vw - var(--container)) / 2));right:max(var(--gutter), calc((100vw - var(--container)) / 2))}.client-band:after{content:"";pointer-events:none;background:radial-gradient(circle at 4px 4px, var(--cyan) 3.5px, transparent 4px), radial-gradient(circle at calc(100% - 4px) 4px, var(--green) 3.5px, transparent 4px);height:8px;position:absolute;top:-3px;left:0;right:0}.pipeline-track:before{background:linear-gradient(90deg, var(--cyan), var(--green));height:2px;-webkit-mask:radial-gradient(circle,#000 .9px,#0000 1.3px) 0/7px 2px repeat-x;mask:radial-gradient(circle,#000 .9px,#0000 1.3px) 0/7px 2px repeat-x}.pipe-step:first-child .pipe-dot{border-color:var(--cyan);color:var(--accent)}.pipe-step:last-child .pipe-dot{border-color:var(--green);color:var(--accent-2)}.layer+.layer:before{background:linear-gradient(var(--cyan), var(--green));opacity:1;width:2px;-webkit-mask:radial-gradient(circle,#000 .9px,#0000 1.3px) 50% 0/2px 6px repeat-y;mask:radial-gradient(circle,#000 .9px,#0000 1.3px) 50% 0/2px 6px repeat-y}.layer:nth-child(3){border-color:#63b32f73}.layer:nth-child(3) .layer-who{color:#a6da82;border-color:#a6da8266}.nav-links>li>a.active{background:0 0;position:relative}.nav-dd.has-active>.nav-dd-btn{position:relative}.nav-links>li>a.active:after,.nav-dd.has-active>.nav-dd-btn:after{content:"";background:var(--cyan);border-radius:50%;width:5px;height:5px;margin-left:-2.5px;position:absolute;bottom:1px;left:50%}.nav-dd.has-active>.nav-dd-btn:after{left:calc(50% - 9px)}@media (width<=860px){.nav-links>li>a.active:after,.nav-dd.has-active>.nav-dd-btn:after{margin:-2.5px 0 0;top:50%;bottom:auto;left:2px}}
