html[data-theme=light] body[data-page-slug=home]{--home-ink:var(--sumatoni-ink);--home-copy:#345260;--home-paper:var(--sumatoni-paper);--home-line:var(--sumatoni-line);background:var(--sumatoni-white);color:var(--home-ink)}body[data-page-slug=home]:before{display:none}body[data-page-slug=home] .container-shell{width:100%;max-width:1320px;padding-inline:clamp(24px,4.5vw,72px)}html body[data-page-slug=home] header{box-shadow:none;backdrop-filter:blur(12px);position:sticky;top:0;background:#f7fbfdf7!important}body[data-page-slug=home] header>.container-shell{padding-block:16px}body[data-page-slug=home] .brand-badge-wrap{box-shadow:none;background:0 0;border:0;width:46px;height:52px;padding:0}body[data-page-slug=home] .brand-mark{filter:none}body[data-page-slug=home] .brand-copy{transform:none}body[data-page-slug=home] .brand-wordmark{width:170px}body[data-page-slug=home] .brand-tagline{margin-top:4px;font-size:.75rem}body[data-page-slug=home] .section{padding-block:clamp(56px,6vw,88px)}body[data-page-slug=home] main :is(h1,h2,h3){letter-spacing:-.035em;text-wrap:balance;hyphens:none;overflow-wrap:break-word;color:var(--home-ink)!important}body[data-page-slug=home] main p{color:var(--home-copy)!important}body[data-page-slug=home] .eyebrow{letter-spacing:.15em;background:0 0;border:0;border-radius:0;padding:0;font-size:.75rem;line-height:1.7;color:var(--sumatoni-link)!important}body[data-page-slug=home] .eyebrow:before{display:none}body[data-page-slug=home] .btn-primary,body[data-page-slug=home] .btn-secondary{min-height:48px;box-shadow:none;white-space:normal;border-radius:6px;padding:16px 24px;font-size:.875rem;line-height:1.5}body[data-page-slug=home] .btn-primary{color:var(--home-ink);background:var(--sumatoni-cyan);border:1px solid var(--sumatoni-cyan);gap:18px}body[data-page-slug=home] .btn-primary:hover{background:var(--sumatoni-cyan-hover);border-color:var(--sumatoni-cyan-hover);transform:none}body[data-page-slug=home] .btn-secondary{color:var(--home-ink);border-color:var(--sumatoni-line);background:0 0}body[data-page-slug=home] .btn-secondary:hover{background:var(--sumatoni-surface)}body[data-page-slug=home] a:focus-visible,body[data-page-slug=home] button:focus-visible{outline:3px solid var(--sumatoni-link);outline-offset:5px}body[data-page-slug=home] .home-hero{padding-block:0;display:block}body[data-page-slug=home] .home-editorial-hero{isolation:isolate;background:var(--home-paper);display:grid;position:relative}body[data-page-slug=home] .home-hero-copy{z-index:1;text-align:left;grid-area:1/1;align-self:start;width:100%;margin-inline:auto;padding-block:clamp(24px,3vw,48px)}body[data-page-slug=home] .home-hero-copy>.eyebrow{max-width:620px}html body[data-page-slug=home] main .hero-home-title{color:var(--home-ink)!important}body[data-page-slug=home] .hero-home-title{max-width:700px;margin:12px 0 0;font-size:clamp(2rem,3.5vw,3.5rem);font-weight:700;line-height:1.1;display:block}body[data-page-slug=home] .hero-home-line{display:block}body[data-page-slug=home] .hero-home-line-gradient{color:var(--sumatoni-link);-webkit-text-fill-color:currentColor;background:0 0}body[data-page-slug=home] .hero-home-title:after{display:none}body[data-page-slug=home] .home-hero-intro{text-wrap:pretty;max-width:70ch;margin:0;font-size:clamp(1.0625rem,1.5vw,1.25rem);line-height:1.6}body[data-page-slug=home] .home-hero-actions{flex-wrap:wrap;align-items:center;gap:16px;max-width:620px;margin-top:30px;display:flex}body[data-page-slug=home] .home-hero-actions .btn-secondary{border:0;border-bottom:1px solid var(--sumatoni-line);border-radius:0;padding-inline:0}body[data-page-slug=home] figure{min-width:0;margin:0}body[data-page-slug=home] .home-hero-photograph{grid-area:1/1;align-self:center;position:relative}body[data-page-slug=home] .home-hero-image{isolation:isolate;width:100%;position:relative;overflow:hidden}body[data-page-slug=home] .home-hero-image>img{-o-object-fit:cover;object-fit:cover;-o-object-position:center 35%;object-position:center 35%;width:100%;height:min(43.478vw,56svh,620px);display:block}body[data-page-slug=home] .home-hero-image:after{content:"";pointer-events:none;background:linear-gradient(#f7fbfdeb,#f7fbfd80 55%,#f7fbfd00);height:35%;position:absolute;inset:0 0 auto;mask-image:linear-gradient(90deg,#000,#000 35%,#0000 75%)}body[data-page-slug=home] .home-overview{padding-block:28px 36px}body[data-page-slug=home] .home-hero-support{grid-template-columns:minmax(0,1fr) minmax(280px,.6fr);align-items:center;gap:32px 64px;display:grid}body[data-page-slug=home] .home-hero-support .home-hero-actions{flex-direction:column;align-items:stretch;gap:8px;margin:0;display:flex}body[data-page-slug=home] .home-hero-actions .btn-secondary{text-decoration:underline;text-decoration-color:var(--sumatoni-line);text-underline-offset:6px;border:0;justify-content:center}body[data-page-slug=home] .home-entry-nav{border-top:1px solid var(--home-line);margin-top:24px;padding-top:20px}body[data-page-slug=home] .home-entry-nav a{color:var(--home-ink);text-underline-offset:5px}body[data-page-slug=home] .home-entry-primary{align-items:center;gap:20px;padding-block:4px;font-size:1.2rem;line-height:1.5;display:inline-flex}body[data-page-slug=home] .home-entry-primary span{color:var(--sumatoni-link)}body[data-page-slug=home] .home-entry-nav ul{flex-wrap:wrap;gap:2px 24px;margin:8px 0 0;padding:0;list-style:none;display:flex}body[data-page-slug=home] .home-entry-nav li a{color:var(--home-copy);padding-block:6px;font-size:.875rem;display:inline-block}body[data-page-slug=home] .home-entry-nav a:hover{color:var(--sumatoni-link);text-decoration:underline}body[data-page-slug=home] .home-entry-nav a:focus-visible{outline:3px solid var(--sumatoni-link);outline-offset:4px}body[data-page-slug=home] .section-heading{text-align:left;max-width:52rem;margin-inline:0}body[data-page-slug=home] :is(.section-heading,.section-heading-sticky) h2{text-wrap:pretty;margin-top:14px;font-size:clamp(1.85rem,3vw,2.65rem);font-weight:600;line-height:1.2}body[data-page-slug=home] :is(.section-heading,.section-heading-sticky) p{max-width:65ch;margin-top:20px;font-size:1.0625rem;line-height:1.75}body[data-page-slug=home] .section-heading-sticky{position:static}body[data-page-slug=home] :is(.section-heading,.section-heading-sticky)>.eyebrow{border-left:3px solid var(--sumatoni-cyan);padding-left:12px}body[data-page-slug=home] .section-surface{background:var(--sumatoni-white);border:0}body[data-page-slug=home] figure>img{border-radius:6px;width:100%;height:auto;display:block}body[data-page-slug=home] figcaption{color:var(--home-copy);text-align:right;margin-top:10px;font-size:.75rem;line-height:1.6}body[data-page-slug=home] .home-hero-photograph figcaption{background:var(--sumatoni-white);margin:0;padding:10px 4.5vw}body[data-page-slug=home] #realisations{background:var(--sumatoni-white)}body[data-page-slug=home] .case-study-list{border:0;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:24px;margin-top:36px;display:grid}body[data-page-slug=home] .case-study-list:has(details[open]){align-items:start}body[data-page-slug=home] .case-study{border:1px solid var(--home-line);border-top:3px solid var(--sumatoni-cyan);background:var(--home-paper);border-radius:0 0 8px 8px;flex-direction:column;gap:0;padding:28px;display:flex}body[data-page-slug=home] .case-study-index{align-items:center;gap:12px}body[data-page-slug=home] .case-study-number{color:var(--sumatoni-link);font-size:1.125rem;font-weight:600}body[data-page-slug=home] .case-study-meta{letter-spacing:.025em;font-size:.75rem;line-height:1.6}body[data-page-slug=home] .case-study-head h3{text-wrap:pretty;min-height:7.6rem;margin:22px 0 24px;font-size:1.4rem;font-weight:600;line-height:1.35}body[data-page-slug=home] .case-study-result{background:0 0;border:0;margin-bottom:24px;padding:0}body[data-page-slug=home] .case-study-label{color:var(--sumatoni-link);letter-spacing:.08em;font-size:.75rem}body[data-page-slug=home] .case-study-block p{margin-top:10px;font-size:.9375rem;line-height:1.75}body[data-page-slug=home] .case-study-more{border-top:1px solid var(--home-line);margin-top:auto}body[data-page-slug=home] .case-study-more summary{cursor:pointer;min-height:52px;color:var(--home-ink);justify-content:space-between;align-items:center;gap:16px;padding:16px 0 0;font-size:.875rem;font-weight:600;list-style:none;display:flex}body[data-page-slug=home] .case-study-more summary::-webkit-details-marker{display:none}body[data-page-slug=home] .case-study-more summary:hover{color:var(--sumatoni-link)}body[data-page-slug=home] .case-study-more summary:focus-visible{outline:3px solid var(--sumatoni-link);outline-offset:4px}body[data-page-slug=home] .case-toggle:before{content:"+";font-size:1.5rem;font-weight:400}body[data-page-slug=home] details[open] .case-toggle:before{content:"−"}body[data-page-slug=home] .case-study-detail{padding-top:20px;display:block}body[data-page-slug=home] .case-study-detail>*+*{margin-top:20px}body[data-page-slug=home] .case-study-role{border-color:var(--home-line);padding-top:20px;display:block}body[data-page-slug=home] .case-study-role p{margin-top:10px;font-size:.9375rem}body[data-page-slug=home] .case-study-block li{padding-block:8px;font-size:.9375rem}body[data-page-slug=home] .case-study-block li:before{top:18px}body[data-page-slug=home] :is(#departement-it,#cybersecurite,#open-source,#realisations){scroll-margin-top:0}body[data-page-slug=home] .home-department{background:var(--home-paper)}body[data-page-slug=home] .home-department-scope{grid-template-columns:minmax(0,1.4fr) minmax(0,.8fr);align-items:center;gap:56px;display:grid}body[data-page-slug=home] .home-department-scope h3{max-width:34ch;margin-top:12px;font-size:clamp(1.4rem,2vw,1.8rem);font-weight:600;line-height:1.35}body[data-page-slug=home] .home-department-scope p{max-width:62ch;margin-top:16px;font-size:1rem;line-height:1.75}body[data-page-slug=home] .home-department-scope img{-o-object-fit:cover;object-fit:cover;max-height:240px}body[data-page-slug=home] .home-department .scope-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:0 40px;margin-top:32px}body[data-page-slug=home] .department-method-note{border-top:1px solid var(--home-line);justify-content:space-between;align-items:center;gap:24px 48px;margin-top:24px;padding-top:24px;display:flex}body[data-page-slug=home] .department-method-note p{max-width:72ch;margin:0;font-size:.9375rem;line-height:1.7}body[data-page-slug=home] .department-method-note a{color:var(--sumatoni-link);text-underline-offset:5px;flex-shrink:0;font-size:.9375rem;font-weight:600;text-decoration:underline}body[data-page-slug=home] .home-cybersecurity{background:var(--sumatoni-surface)}body[data-page-slug=home] :is(.home-cybersecurity,.home-open-source){padding-block:clamp(48px,4vw,64px)}body[data-page-slug=home] .home-cybersecurity .btn-secondary{margin-top:28px}body[data-page-slug=home] .home-cyber-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-top:36px;display:grid}body[data-page-slug=home] .home-cyber-steps article{border-top:1px solid var(--home-line);padding-top:24px}body[data-page-slug=home] .home-cyber-steps h3{font-size:1.2rem;font-weight:600;line-height:1.4}body[data-page-slug=home] .home-cyber-steps p{margin-top:14px;font-size:.9375rem;line-height:1.75}body[data-page-slug=home] .scope-card{border:0;border-top:1px solid var(--home-line);box-shadow:none;background:0 0;border-radius:0;padding:24px 0}body[data-page-slug=home] .scope-card h3{text-wrap:pretty;margin-top:12px;font-size:1.25rem;font-weight:600;line-height:1.4}body[data-page-slug=home] .scope-card p{margin-top:12px;font-size:.9375rem;line-height:1.75}body[data-page-slug=home] .scope-code{min-width:auto;color:var(--sumatoni-link);border:0;padding:0;font-size:.75rem}body[data-page-slug=home] .home-open-source{background:var(--sumatoni-white)}body[data-page-slug=home] .home-open-source>.container-shell{grid-template-columns:1fr 1.15fr;align-items:start;gap:32px 64px;display:grid}body[data-page-slug=home] .home-oss-examples{grid-area:1/2/3;padding-top:8px}body[data-page-slug=home] .home-oss-examples ul{margin:20px 0 0;padding:0;list-style:none}body[data-page-slug=home] .home-oss-examples li{border-top:1px solid var(--home-line);padding-block:16px}body[data-page-slug=home] .home-oss-examples strong{font-size:1rem;font-weight:600;display:block}body[data-page-slug=home] .home-oss-examples span{color:var(--home-copy);margin-top:8px;font-size:.9375rem;line-height:1.6;display:block}body[data-page-slug=home] .home-open-source .btn-secondary{justify-self:start;margin-top:0}body[data-page-slug=home] .home-contact-cta{border:0;padding-top:0;background:var(--sumatoni-white)!important}body[data-page-slug=home] .home-contact-cta>.container-shell{border-top:3px solid var(--sumatoni-cyan);background:var(--sumatoni-surface);text-align:left;border-radius:0 0 12px 12px;width:calc(100% - 48px);max-width:1176px;padding:clamp(32px,5vw,64px)}body[data-page-slug=home] .home-contact-cta h2{text-wrap:pretty;max-width:26ch;margin:18px 0 0;font-size:clamp(1.85rem,3vw,2.65rem);font-weight:600;line-height:1.2}body[data-page-slug=home] .home-contact-cta p{max-width:64ch;margin:24px 0 0;font-size:1.0625rem;line-height:1.75}body[data-page-slug=home] .home-contact-cta .flex{justify-content:flex-start}@media (width<=1100px){body[data-page-slug=home] .hero-home-title{font-size:clamp(1.85rem,3.5vw,2.5rem)}body[data-page-slug=home] .home-hero-support{gap:32px}body[data-page-slug=home] .case-study-list{gap:16px}body[data-page-slug=home] .case-study{padding:24px 20px}body[data-page-slug=home] .case-study-head h3{min-height:9.5rem;font-size:1.25rem}body[data-page-slug=home] .home-department-scope{gap:32px}body[data-page-slug=home] .home-department .scope-grid{grid-template-columns:repeat(2,minmax(0,1fr))}body[data-page-slug=home] .home-open-source>.container-shell{gap:24px 40px}}@media (width<=900px){body[data-page-slug=home] .case-study-list{grid-template-columns:1fr;gap:24px}body[data-page-slug=home] .case-study{padding:28px}body[data-page-slug=home] .case-study-head h3{min-height:0;font-size:1.4rem}body[data-page-slug=home] .case-study-result{max-width:65ch}body[data-page-slug=home] .home-open-source>.container-shell{grid-template-columns:1fr}body[data-page-slug=home] .home-oss-examples{grid-area:auto}}@media (width<=767px){body[data-page-slug=home] .department-method-note{flex-direction:column;align-items:flex-start;gap:16px}body[data-page-slug=home] .home-overview{padding-block:28px 36px}body[data-page-slug=home] .home-hero-support{grid-template-columns:1fr;gap:24px}body[data-page-slug=home] .home-hero-support .home-hero-actions{align-items:flex-start}body[data-page-slug=home] :is(.home-department-scope,.home-cyber-steps){grid-template-columns:1fr}body[data-page-slug=home] .home-department-scope img{max-height:260px}body[data-page-slug=home] .home-contact-cta .flex{align-items:flex-start}}@media (width<=600px){body[data-page-slug=home] .home-editorial-hero{flex-direction:column;display:flex}body[data-page-slug=home] .home-hero-copy{text-align:left;width:100%;padding:32px 24px}body[data-page-slug=home] .home-hero-actions{gap:8px 20px;margin-top:24px}body[data-page-slug=home] .home-hero-photograph{width:100%}body[data-page-slug=home] .home-hero-image>img{aspect-ratio:auto;height:auto}body[data-page-slug=home] .home-hero-image:after{display:none}body[data-page-slug=home] .home-department .scope-grid,body[data-page-slug=home] .home-open-source .scope-grid{grid-template-columns:1fr}body[data-page-slug=home] .home-contact-cta>.container-shell{padding:28px 24px}}@media (width<=480px){body[data-page-slug=home] .brand-wordmark{width:143px}body[data-page-slug=home] .brand-badge-wrap{width:34px;height:42px}body[data-page-slug=home] .hero-home-title{font-size:clamp(1.65rem,7.4vw,2.1rem)}body[data-page-slug=home] .home-hero-support .home-hero-actions{align-items:stretch}body[data-page-slug=home] .case-study{padding:24px}}@media print{body[data-page-slug=home] .case-study-more::details-content{content-visibility:visible;display:block}}@media (prefers-reduced-motion:reduce){html:has(body[data-page-slug=home]){scroll-behavior:auto}body[data-page-slug=home] *,body[data-page-slug=home] :before,body[data-page-slug=home] :after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}body[data-page-slug=home] .home-services{background:var(--sumatoni-white)}body[data-page-slug=home] .home-services-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:36px 40px;margin-top:32px;display:grid}body[data-page-slug=home] .home-service-card{flex-direction:column;align-items:flex-start;scroll-margin-top:20px;display:flex}body[data-page-slug=home] .home-service-card h3{font-size:1.3rem;font-weight:600;line-height:1.35}body[data-page-slug=home] .home-service-card p{margin-top:14px;margin-bottom:22px;font-size:.9375rem;line-height:1.75}body[data-page-slug=home] .home-service-card a{color:var(--sumatoni-link);text-underline-offset:4px;margin-top:auto;padding-block:4px;font-size:.875rem;font-weight:600;line-height:1.6;text-decoration:underline}@media (width<=1000px){body[data-page-slug=home] .home-services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=600px){body[data-page-slug=home] .home-services-grid{grid-template-columns:1fr;gap:28px}body[data-page-slug=home] .home-entry-nav ul{gap:2px 18px}}body[data-page-slug=home] .home-service-visual{background:#eef7fa;border-radius:6px;width:100%;height:160px;margin-bottom:22px;position:relative;overflow:hidden}body[data-page-slug=home] .home-service-visual img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%;display:block}body[data-page-slug=home] .home-service-visual.is-diagram{background:#eef5f8}body[data-page-slug=home] .home-service-visual.is-diagram img{-o-object-fit:contain;object-fit:contain}body[data-page-slug=home] .home-service-visual.is-photo:after{content:"";pointer-events:none;background:linear-gradient(115deg,#146f8c0f,#0000 70%);position:absolute;inset:0}body[data-page-slug=home] .visual-support img{-o-object-position:center 40%;object-position:center 40%}body[data-page-slug=home] .visual-conseil img{-o-object-position:center 58%;object-position:center 58%}@media (width<=600px){body[data-page-slug=home] .home-service-visual{height:145px;margin-bottom:18px}}body[data-page-slug=home] .department-method-link{color:var(--sumatoni-link);text-underline-offset:5px;margin-top:20px;font-size:.9375rem;font-weight:600;text-decoration:underline;display:inline-block}