:root{--navy:#1a3350;--ink:#1a3350;--muted:#596a7b;--line:#dce3ea;--paper:#f3f6f8}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:white;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}img{max-width:100%}h1,h2,h3,h4,p{margin-top:0}h1,h2,h3{line-height:1.12;font-weight:500;letter-spacing:-.045em}h1{font-size:clamp(42px,5.5vw,78px)}h2{font-size:clamp(32px,3.8vw,54px)}h3{font-size:30px}p{color:var(--muted)}.container{width:min(1280px,calc(100% - 80px));margin:auto}.header{position:sticky;top:0;z-index:20;background:#fff;border-bottom:1px solid var(--line)}.header-inner{height:104px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:flex;align-items:center;gap:18px}.brand img{width:76px;height:76px;object-fit:contain}.brand-copy{font-size:12px;letter-spacing:1.4px;border-left:1px solid var(--line);padding-left:18px}.main-nav{display:flex;gap:32px;align-items:center}.main-nav a{font-size:14px;padding:14px 0;position:relative}.main-nav a.current:after{content:'';position:absolute;height:2px;bottom:5px;left:0;right:0;background:var(--navy)}.main-nav a:last-child{background:var(--navy);color:white;padding:12px 22px}.menu-toggle{display:none}.overline{font-size:12px;letter-spacing:2px;font-weight:700;margin-bottom:25px;color:inherit}.button{display:inline-flex;justify-content:center;align-items:center;min-height:52px;padding:14px 26px;background:var(--navy);color:#fff;font-size:14px;font-weight:700;border:1px solid var(--navy);cursor:pointer}.button.light{background:#fff;color:var(--navy);border-color:white}.button:hover{opacity:.85}.text-link{display:inline-block;font-size:14px;font-weight:700;border-bottom:1px solid currentColor;padding-bottom:5px}.quiet-link{font-size:14px;border-bottom:1px solid #ffffff66;padding:5px 0;color:white}.hero-actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap}.flagship{background:var(--navy);color:white;overflow:hidden}.flagship-grid{display:grid;grid-template-columns:1.1fr .9fr;min-height:620px;align-items:center;gap:35px}.flagship-copy{padding:70px 0;position:relative;z-index:1}.flagship h1{font-size:clamp(46px,4.8vw,72px);line-height:1.07;max-width:740px;margin-bottom:30px}.flagship em{font-family:Georgia,serif;font-weight:400}.hero-description{color:#d9e3ed;max-width:550px;font-size:18px;line-height:1.75;margin-bottom:36px}.flagship-art{position:relative;align-self:stretch;display:flex;align-items:center}.flagship-art img{width:100%;height:440px;object-fit:cover;object-position:right;mix-blend-mode:lighten}.art-caption{position:absolute;bottom:54px;left:0;font-size:11px;letter-spacing:2px;color:#c1ceda}.hero-bottom{display:flex;justify-content:space-between;gap:24px;padding:26px 0;border-top:1px solid #ffffff30;font-size:11px;letter-spacing:1.5px}.business-section{padding:95px 0}.section-top{display:grid;grid-template-columns:1fr 1.4fr;column-gap:70px;align-items:end;margin-bottom:42px}.section-top .overline{grid-column:1/-1;margin-bottom:20px}.section-top h2{margin-bottom:0}.section-top>p:last-child{max-width:480px;margin-bottom:0}.business-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.business-card{padding:35px 28px 38px;border-right:1px solid var(--line);transition:background .25s}.business-card:first-child{border-left:1px solid var(--line)}.business-card:hover{background:var(--paper)}.business-card .overline{font-size:11px;color:var(--muted);display:block;margin-bottom:42px}.business-card h3{font-size:25px;line-height:1.2;min-height:60px;margin-bottom:20px}.business-card p{font-size:16px;line-height:1.7;min-height:110px;margin-bottom:30px}.manifesto{background:var(--paper);padding:90px 0}.manifesto-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;align-items:center}.big-number{font-size:clamp(100px,15vw,230px);letter-spacing:-12px;font-weight:400;line-height:1}.manifesto p:not(.overline){max-width:630px}.closing{padding:100px 0}.closing h2{margin-bottom:35px}.page-intro{padding:75px 0 65px}.page-intro h1{max-width:1000px}.page-intro>p:last-child{max-width:660px;font-size:18px}.solutions-page main>.business-grid{width:min(1280px,calc(100% - 80px));margin:0 auto 80px}.service-section{width:min(1280px,calc(100% - 80px));margin:0 auto;display:grid;grid-template-columns:.8fr 1.2fr;border-top:1px solid var(--line);scroll-margin-top:125px}.service-editorial{background:var(--navy);color:#fff;padding:50px 40px}.service-index{display:block;font-size:75px;line-height:1;margin-bottom:50px;color:#a9bacb;font-family:Georgia,serif}.service-editorial h3{font-size:36px;max-width:320px}.service-editorial p:last-child{color:#cad7e2;max-width:330px}.solution-copy{padding:50px 60px}.solution-copy h2{font-size:38px}.solution-copy h2 span{display:block;font-size:13px;letter-spacing:1.6px;text-transform:uppercase;margin-bottom:15px;color:var(--muted)}.solution-copy p{font-size:17px}.eyeline{width:55px;height:2px;background:currentColor;margin:22px 0}.eyeline.small{width:35px}.intervention-heading{font-size:18px;margin-top:28px}.intervention-list{padding-left:20px;color:var(--muted)}.intervention-list li{margin-bottom:10px}.service-contact{display:inline-block;border-bottom:1px solid var(--navy);font-weight:700;font-size:14px;margin-top:22px;padding-bottom:6px}.approach{padding:42px 0 90px}.approach h2{font-size:26px;letter-spacing:-.025em}.approach .sub{max-width:850px}.approach-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin-top:30px}.approach-step{border-top:1px solid var(--line);padding-top:22px}.approach-step b{font-size:13px;letter-spacing:.6px}.approach-step p{font-size:16px;margin-top:14px}.breadcrumb{display:flex;gap:12px;font-size:13px;margin-bottom:35px;color:var(--muted)}.about-intro{background:var(--navy);color:white;padding:55px 0 80px}.about-intro .breadcrumb,.about-intro p{color:#d4dee8}.about-intro-content{max-width:940px}.about-intro h2{font-size:14px;text-transform:uppercase;letter-spacing:2px}.about-intro h1{font-size:clamp(40px,5vw,68px)}.about-intro em{font-family:Georgia,serif}.about-intro .button{background:white;color:var(--navy);margin-top:20px}.mission{padding:90px 0}.mission-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:35px}.mission h2{font-size:14px;letter-spacing:2px;text-transform:uppercase}.mission h3{font-size:42px}.mission-item{padding-top:30px;border-top:1px solid var(--line)}.mission-item b{font-size:38px;font-weight:400;color:#7a8da3}.mission-item h4{font-size:24px;margin:25px 0 15px}.expertise{background:var(--paper);padding:85px 0}.expertise-intro{display:grid;grid-template-columns:1fr 1.5fr;gap:70px}.expertise-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:25px;margin-top:35px}.expertise-card{padding:30px 0;border-top:1px solid #bccbd8}.expertise-card b{font-size:14px;color:var(--muted)}.expertise-card h3{font-size:25px;margin-top:25px}.contact-main{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;padding:85px 0}.section-label{font-size:13px;letter-spacing:2px;text-transform:uppercase}.contact-story h1{font-size:clamp(40px,4.4vw,64px)}.contact-form{background:var(--paper);padding:38px}.contact-form h2{font-size:27px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:20px}label{font-size:14px}input,select,textarea{width:100%;padding:13px 12px;border:1px solid #cbd6df;border-radius:0;background:white;color:var(--navy)}textarea{min-height:140px;resize:vertical}.form-note{font-size:13px;margin:18px 0 0}.career-main{padding:75px 0 100px;background:var(--paper);min-height:65vh}.career-main p{max-width:650px;font-size:19px;margin-bottom:35px}.footer{background:var(--navy);color:white;padding:55px 0 0}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr .8fr 1.1fr;gap:35px}.footer-brand{display:flex;align-items:flex-start;gap:22px}.footer-brand img{width:85px}.footer-brand strong{font-size:14px;margin-top:20px;line-height:1.5}.footer h4{font-size:12px;text-transform:uppercase;letter-spacing:1.5px;margin:0 0 20px}.footer .eyeline{display:none}.footer a{display:block;font-size:14px;color:#d4dfeb;margin:7px 0;overflow-wrap:anywhere}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid #ffffff25;margin-top:45px;padding:22px 0;color:#aebfce;font-size:12px}.reveal-ready{opacity:0;transform:translateY(15px);transition:opacity .55s,transform .55s}.reveal-ready.is-visible{opacity:1;transform:none}:focus-visible{outline:3px solid #6486a9;outline-offset:5px}
@media(max-width:1000px){.container,.service-section,.solutions-page main>.business-grid{width:calc(100% - 48px)}.main-nav{gap:18px}.brand-copy{display:none}.flagship-grid{grid-template-columns:1.2fr .8fr;min-height:560px}.business-grid,.expertise-cards{grid-template-columns:repeat(2,1fr)}.business-card{border-bottom:1px solid var(--line)}.business-card p{min-height:70px}.mission-grid{grid-template-columns:1fr 1fr}.solution-copy{padding:40px 30px}.contact-main{gap:40px}.footer-grid{grid-template-columns:1fr 1fr}.approach-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){.container,.service-section,.solutions-page main>.business-grid{width:calc(100% - 40px)}.header-inner{height:82px}.brand img{width:62px;height:62px}.menu-toggle{display:block;border:1px solid var(--line);background:white;color:var(--navy);padding:10px 14px;font-size:12px}.main-nav{display:none;position:absolute;top:82px;left:0;right:0;background:white;padding:20px;box-shadow:0 10px 20px #1a335010}.main-nav.open{display:flex;flex-direction:column;align-items:stretch;gap:10px}.flagship-grid{grid-template-columns:1fr;gap:0}.flagship-copy{padding:55px 0 35px}.flagship h1{font-size:44px}.flagship-art img{height:220px;object-fit:cover}.art-caption{bottom:18px;font-size:10px}.hero-bottom{flex-direction:column;gap:10px;font-size:10px;padding:23px 0}.hero-actions{gap:20px}.business-section,.manifesto,.closing{padding:60px 0}.section-top,.manifesto-grid,.expertise-intro,.contact-main{grid-template-columns:1fr;gap:24px}.section-top h2{margin-bottom:20px}.business-grid{grid-template-columns:1fr}.business-card{padding:28px 24px}.business-card .overline{margin-bottom:23px}.business-card h3,.business-card p{min-height:0}.big-number{font-size:125px;letter-spacing:-7px}.page-intro{padding:50px 0 35px}.service-section{grid-template-columns:1fr;scroll-margin-top:98px}.service-editorial{padding:32px}.service-index{font-size:48px;margin-bottom:25px}.service-editorial h3{font-size:32px}.solution-copy{padding:35px 0}.solution-copy h2{font-size:32px}.approach{padding:25px 0 55px}.approach-grid{grid-template-columns:1fr;gap:15px}.mission{padding:55px 0}.mission-grid{grid-template-columns:1fr}.mission h3{font-size:36px}.expertise{padding:55px 0}.expertise-cards{grid-template-columns:1fr}.contact-main{padding:50px 0}.contact-form{padding:25px 20px}.form-grid{grid-template-columns:1fr;gap:0}.footer-grid{grid-template-columns:1fr;gap:30px}.footer-bottom{flex-direction:column;gap:10px}.about-intro{padding:35px 0 55px}.about-intro h1{font-size:40px}.career-main{padding:45px 0 70px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal-ready{opacity:1;transform:none;transition:none}.business-card{transition:none}}
/* Industrial drawings behind the corporate layout. */
.flagship{position:relative;background:#1a3350 url('assets/hero-industrie.png') right center/auto 100% no-repeat}
.flagship:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#1a3350 8%,#1a3350f2 34%,#1a33506b 64%,#1a335020 100%);pointer-events:none}
.flagship-grid{position:relative;grid-template-columns:1.15fr .85fr;min-height:670px}
.flagship-art img{visibility:hidden}.flagship-art .art-caption{background:#1a3350bb;padding:12px 16px;bottom:40px;left:auto;right:0}
.hero-bottom{position:relative}
.business-section{position:relative}.business-section:before{content:'';position:absolute;inset:0;opacity:.085;background:url('assets/ligne-industrie.png') center bottom/100% auto no-repeat;pointer-events:none}.business-section>*{position:relative}
.business-card{background:#ffffffd9}.business-card:hover{background:#f3f6f8f5}
.manifesto{position:relative;background:#f3f6f8 url('assets/ligne-industrie.png') center bottom/cover no-repeat}
.manifesto:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#f3f6f8d9,#f3f6f8f2)}.manifesto-grid{position:relative}
.closing{background:linear-gradient(90deg,#fff 12%,#fffffff0 50%,#ffffffaf),url('assets/ligne-industrie.png') right bottom/85% auto no-repeat}
.about-intro{background:linear-gradient(90deg,#1a3350fa 5%,#1a3350ef 45%,#1a33507a),url('assets/apropos-hero.png') right center/cover no-repeat}
.page-intro{position:relative}.page-intro:before{content:'';position:absolute;inset:0;opacity:.14;background:url('assets/ligne-industrie.png') right bottom/85% auto no-repeat;pointer-events:none}.page-intro>*{position:relative}
.service-editorial{position:relative;isolation:isolate;overflow:hidden}.service-editorial:before{content:'';position:absolute;inset:0;z-index:-1;background:url('assets/hero-industrie.png') 65% bottom/auto 100% no-repeat;opacity:.23}.service-iso .service-editorial:before{background-position:85% bottom}.service-ingenierie .service-editorial:before{background-position:50% bottom}.service-formation .service-editorial:before{background-position:right bottom}
.expertise{background:linear-gradient(#f3f6f8e8,#f3f6f8ee),url('assets/ligne-industrie.png') center bottom/100% auto no-repeat}
.contact-story{background:linear-gradient(#ffffffeb,#ffffffd6),url('assets/ligne-industrie.png') center bottom/auto 55% no-repeat;padding-bottom:80px}
.career-main{background:linear-gradient(90deg,#f3f6f8fa,#f3f6f8ed 50%,#f3f6f8a6),url('assets/apropos-hero.png') right center/cover no-repeat}
@media(max-width:680px){.flagship{background-position:70% bottom;background-size:auto 60%}.flagship:before{background:linear-gradient(180deg,#1a3350 0%,#1a3350f5 40%,#1a335060 80%,#1a3350 100%)}.flagship-grid{grid-template-columns:1fr;min-height:690px}.flagship-art{min-height:200px}.flagship-art img{height:200px}.flagship-art .art-caption{bottom:18px;font-size:10px}.manifesto{background-size:auto 100%}.page-intro:before{background-size:auto 65%;opacity:.1}.service-editorial:before{background-size:cover;opacity:.2}.closing{background-size:auto 60%}}
/* Distinct drawings for each solution. */
.solutions-page .service-editorial{background:#eef4fa;color:#1a3350;padding-bottom:280px}
.solutions-page .service-editorial p:last-child{color:#455d76}
.solutions-page .service-editorial:before{background-repeat:no-repeat;background-size:210px auto;background-position:center bottom 35px;opacity:.82}
.solutions-page .service-assistance .service-editorial:before{background-image:url('assets/icons/149.png')}
.solutions-page .service-iso .service-editorial:before{background-image:url('assets/icons/115.png')}
.solutions-page .service-ingenierie .service-editorial:before{background-image:url('assets/icons/105.png')}
.solutions-page .service-formation .service-editorial:before{background-image:url('assets/icons/121.png')}
.solutions-page .service-index{color:#7189a2}
.solutions-page .page-intro:before{background-image:url('assets/solutions-panorama.png');background-size:auto 100%;background-position:right center;opacity:.12}
@media(max-width:680px){.solutions-page .service-editorial{padding-bottom:200px}.solutions-page .service-editorial:before{background-size:145px auto;background-position:center bottom 25px;opacity:.85}}
/* Remove service icons and the space reserved for them. */
.solutions-page .service-editorial:before{display:none;background-image:none}
.solutions-page .service-editorial{padding-bottom:50px}
@media(max-width:680px){.solutions-page .service-editorial{padding-bottom:32px}}
/* Consistent industrial backgrounds with stronger, readable contrast. */
.flagship:before{background:linear-gradient(90deg,#1a3350 4%,#1a3350ed 32%,#1a335045 62%,#1a335008 100%)}
.business-section:before{opacity:.22;background-size:100% auto;background-position:right bottom}
.business-card{background:#ffffffef}
.manifesto{background-size:100% auto;background-position:right bottom;background-repeat:no-repeat}
.manifesto:before{background:linear-gradient(90deg,#f3f6f8c9,#f3f6f8db)}
.closing{background:linear-gradient(90deg,#fffffffa 5%,#ffffffe5 45%,#ffffff91),url('assets/ligne-industrie.png') right bottom/100% auto no-repeat}
.about-intro{background:linear-gradient(90deg,#1a3350f5 5%,#1a3350df 43%,#1a335040),url('assets/apropos-hero.png') right center/cover no-repeat}
.solutions-page .page-intro:before{background-image:url('assets/ligne-industrie.png');background-size:100% auto;background-position:right bottom;opacity:.24}
.expertise{background:linear-gradient(#f3f6f8d9,#f3f6f8d4),url('assets/ligne-industrie.png') right bottom/100% auto no-repeat}
.contact-story{background:linear-gradient(#fffffffa 15%,#ffffffd1 55%,#ffffffa3),url('assets/ligne-industrie.png') right bottom/auto 52% no-repeat}
.career-main{background:linear-gradient(90deg,#f3f6f8f5 5%,#f3f6f8df 45%,#f3f6f885),url('assets/apropos-hero.png') right center/cover no-repeat}
@media(max-width:680px){.flagship:before{background:linear-gradient(180deg,#1a3350 0%,#1a3350f2 40%,#1a335030 78%,#1a3350e6 100%)}.business-section:before{opacity:.19;background-size:auto 45%}.manifesto{background-size:auto 65%}.manifesto:before{background:#f3f6f8dc}.solutions-page .page-intro:before{background-size:auto 60%;opacity:.18}.closing{background:linear-gradient(90deg,#fffffff2,#ffffffb8),url('assets/ligne-industrie.png') right bottom/auto 65% no-repeat}.about-intro{background:linear-gradient(90deg,#1a3350f2,#1a3350be),url('assets/apropos-hero.png') right center/cover no-repeat}.expertise{background:linear-gradient(#f3f6f8e3,#f3f6f8cf),url('assets/ligne-industrie.png') right bottom/auto 40% no-repeat}.career-main{background:linear-gradient(90deg,#f3f6f8f2,#f3f6f8c9),url('assets/apropos-hero.png') right center/cover no-repeat}}
/* Keep source drawings within their native size and reveal fine detail. */
.flagship{background-size:auto min(100%,659px);background-position:right center}
.flagship:before{background:linear-gradient(90deg,#1a3350 0%,#1a3350f0 33%,#1a33502b 63%,transparent 100%)}
.business-section:before{background-size:min(100%,1197px) auto;opacity:.34}
.manifesto{background-size:min(100%,1197px) auto}
.manifesto:before{background:linear-gradient(90deg,#f3f6f8b8,#f3f6f8cc)}
.closing{background:linear-gradient(90deg,#fffffff7 0%,#ffffffd4 45%,#ffffff6b),url('assets/ligne-industrie.png') right bottom/min(100%,1197px) auto no-repeat}
.about-intro{background-size:auto,min(100%,1785px) auto;background-repeat:no-repeat;background-color:#1a3350}
.solutions-page .page-intro:before{background-size:min(100%,1197px) auto;opacity:.34}
.expertise{background:linear-gradient(#f3f6f8c9,#f3f6f8bd),url('assets/ligne-industrie.png') right bottom/min(100%,1197px) auto no-repeat}
.contact-story{background:linear-gradient(#fffffffa 10%,#ffffffc2 52%,#ffffff7a),url('assets/ligne-industrie.png') right bottom/min(100%,1197px) auto no-repeat}
.career-main{background-size:auto,min(100%,1785px) auto;background-repeat:no-repeat;background-color:#f3f6f8}
@media(max-width:680px){.flagship{background-size:auto 360px;background-position:70% bottom}.flagship:before{background:linear-gradient(180deg,#1a3350 0%,#1a3350f2 42%,#1a335018 79%,#1a3350bd 100%)}.business-section:before,.solutions-page .page-intro:before{background-size:100% auto;opacity:.28}.manifesto,.expertise{background-size:auto,100% auto}.manifesto{background-size:100% auto}.manifesto:before{background:#f3f6f8c9}.closing,.contact-story{background-size:auto,100% auto}.about-intro,.career-main{background-size:auto,auto 100%}}
/* Plain backgrounds in the two homepage areas selected by the owner. */
.business-section:before{display:none;background-image:none}
.closing{background:#fff}
/* Sharper industrial drawing in the section selected by the owner. */
.manifesto{background-image:url('assets/ligne-industrie-hd.png');background-size:min(100%,1800px) auto;background-position:right bottom;background-repeat:no-repeat}
.manifesto:before{background:linear-gradient(90deg,#f3f6f8d4,#f3f6f8bf)}
@media(max-width:680px){.manifesto{background-size:auto 65%}.manifesto:before{background:#f3f6f8cc}}

.mission-statement{display:grid;grid-template-columns:1fr 1.3fr;gap:90px;align-items:start}.mission-statement h3{font-size:clamp(34px,3.5vw,48px)}.mission-description{padding-top:12px}.mission-description p:first-child{font-size:24px;line-height:1.55;color:#1a3350}.mission-description p{font-size:18px;line-height:1.8}.mission-description .text-link{margin-top:12px}@media(max-width:680px){.mission-statement{grid-template-columns:1fr;gap:20px}.mission-description{padding-top:0}.mission-description p:first-child{font-size:22px}}

/* Blend the About illustration into the brand blue on every edge. */
.about-intro{position:relative;isolation:isolate;overflow:hidden;background:var(--navy)}
.about-intro:before{content:'';position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,#1a3350f5 5%,#1a3350df 43%,#1a335040),url('assets/apropos-hero.png') right center/cover no-repeat;mask-image:linear-gradient(180deg,transparent 0%,#000 20%,#000 78%,transparent 100%);-webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 20%,#000 78%,transparent 100%)}
@media(max-width:680px){.about-intro:before{background:linear-gradient(90deg,#1a3350f2,#1a3350be),url('assets/apropos-hero.png') right center/auto 100% no-repeat}}

/* High definition homepage artwork without oversized scaling. */
.flagship{background-image:url('assets/hero-industrie-hd.png');background-size:auto 100%;background-position:right center}
.flagship:before{background:linear-gradient(90deg,#1a3350 0%,#1a3350 18%,#1a3350ed 36%,#1a335060 55%,#1a335000 76%)}
@media(max-width:680px){.flagship{background-size:auto 380px;background-position:75% bottom}.flagship:before{background:linear-gradient(180deg,#1a3350 0%,#1a3350 40%,#1a3350d9 55%,#1a335000 78%,#1a335080 100%)}}

/* Neutral grey rhythm and generous corporate surfaces. */
:root{--paper:#f2f2f2;--line:#dedede}
.business-grid{gap:18px;border:0;align-items:stretch}
.business-card,.business-card:first-child{background:#f2f2f2;border:0;border-top:3px solid #1a3350;padding:36px 28px 40px;transition:transform .25s,background .25s,box-shadow .25s}
.business-card:hover{background:#e9e9e9;transform:translateY(-5px);box-shadow:0 14px 28px #1a335012}
.business-card .overline{color:#1a3350;font-size:16px;letter-spacing:1px;margin-bottom:35px}
.manifesto{background-color:#f2f2f2}
.manifesto:before{background:linear-gradient(90deg,#f2f2f2e8,#f2f2f2c7)}
.manifesto-grid{gap:100px;padding:15px 0}
.closing{background:#f2f2f2;width:100%;padding:80px max(40px,calc((100vw - 1280px)/2));margin:35px 0 0}
.mission{background:#f2f2f2;padding:105px 0}
.mission-description{border-left:2px solid #1a3350;padding-left:38px}
.expertise{background:linear-gradient(#f2f2f2dd,#f2f2f2d8),url('assets/ligne-industrie.png') right bottom/min(100%,1197px) auto no-repeat}
.expertise-card{background:#ffffffd9;padding:30px 24px;border-top:3px solid #1a3350}
.solutions-page .service-section{border:0;margin-top:32px;margin-bottom:32px;background:#fff}
.solutions-page .service-editorial{background:#f2f2f2;padding:50px 40px}
.solutions-page .service-editorial p:last-child{color:var(--muted)}
.approach{background:#f2f2f2;padding:45px 38px;margin-bottom:45px}
.approach-step{border-top:2px solid #1a3350}
.contact-form{background:#f2f2f2;padding:44px;border-top:3px solid #1a3350}
.career-main{background:linear-gradient(90deg,#f2f2f2 10%,#f2f2f2eb 55%,#f2f2f299),url('assets/apropos-hero.png') right center/cover no-repeat}
@media(max-width:680px){.business-grid{gap:16px}.business-card{padding:30px 24px}.manifesto-grid{gap:28px;padding:0}.closing{padding:60px 20px}.mission{padding:65px 0}.mission-description{padding-left:22px}.solutions-page .service-editorial{padding:32px}.approach{padding:32px 22px;margin-bottom:28px}.contact-form{padding:28px 20px}.career-main{background-size:auto,auto 100%}}
@media(prefers-reduced-motion:reduce){.business-card{transition:none}.business-card:hover{transform:none}}

/* Keep section titles and their text together in a readable editorial column. */
.mission-statement{display:block;max-width:960px;margin-left:auto;margin-right:auto}
.mission-statement h2{margin-bottom:20px}
.mission-statement .eyeline{margin:0 0 25px}
.mission-statement h3{font-size:clamp(30px,3vw,44px);line-height:1.2;max-width:800px;letter-spacing:-.025em;margin-bottom:28px;text-wrap:balance}
.mission-description{padding:0;border:0;max-width:820px}
.mission-description p:first-child{font-size:20px;line-height:1.7;font-weight:400;margin-bottom:20px}
.mission-description p{font-size:18px;line-height:1.8;margin-bottom:24px}
.mission-description .text-link{margin-top:8px}
.expertise-intro{display:block;max-width:820px}
.expertise-intro h2{font-size:clamp(30px,3vw,44px);line-height:1.2;letter-spacing:-.025em;margin-bottom:24px}
.expertise-intro p{font-size:18px;line-height:1.8;margin:0}
.expertise-cards{margin-top:42px}
@media(max-width:680px){.mission-statement{width:calc(100% - 40px)}.mission-statement h3{font-size:32px}.mission-description p:first-child{font-size:19px}.mission-description p,.expertise-intro p{font-size:17px}.expertise-intro h2{font-size:32px}}

/* Black reading text on light surfaces; white text on navy surfaces. */
:root{--ink:#000;--muted:#000}
body{color:#000}
.business-card .overline,.mission-description p:first-child,.solutions-page .service-editorial,.solutions-page .service-editorial p:last-child,.solutions-page .service-index{color:#000}
.intervention-list,.breadcrumb,input,select,textarea,label,.form-note{color:#000}
.flagship,.about-intro,.footer{color:#fff}
.flagship .hero-description,.flagship .overline,.about-intro p,.about-intro .breadcrumb,.footer a,.footer-bottom{color:#fff}

/* Brand-blue headings and slogans; black explanatory copy. */
:root{--ink:#1a3350;--muted:#000}
body{color:var(--navy)}
h1,h2,h3,h4,.overline,.section-label,.big-number,.business-card .overline,.solutions-page .service-index,.solutions-page .service-editorial,.text-link,.service-contact,.breadcrumb,.approach-step b{color:var(--navy)}
p,.intervention-list,.solutions-page .service-editorial p:last-child,.mission-description p:first-child{color:#000}
.flagship h1,.flagship .overline,.about-intro h1,.about-intro h2,.about-intro .breadcrumb,.footer h4,.footer-bottom{color:#fff}
.flagship .hero-description,.about-intro p{color:#fff}

/* Compact, aligned introduction above the expertise cards. */
.business-section .section-top{display:block;margin-bottom:40px;max-width:920px}
.business-section .section-top .overline{font-size:13px;letter-spacing:2px;margin-bottom:22px}
.business-section .section-top h2{font-size:clamp(32px,3.1vw,46px);line-height:1.2;letter-spacing:-.025em;margin-bottom:24px;text-wrap:balance;max-width:850px}
.business-section .section-top>p:last-child{max-width:780px;font-size:18px;line-height:1.8;margin-bottom:0;color:#000}
@media(max-width:680px){.business-section .section-top{margin-bottom:30px}.business-section .section-top h2{font-size:32px;margin-bottom:20px}.business-section .section-top>p:last-child{font-size:17px}}

/* Industrial line drawings enrich open space without obstructing copy. */
.business-section{isolation:isolate}
.business-section:before{display:block;inset:10px 0 auto auto;width:48%;height:320px;background:url('assets/ligne-industrie-hd.png') right bottom/auto 280px no-repeat;opacity:.14;z-index:-1;mask-image:linear-gradient(90deg,transparent,#000 55%);pointer-events:none}
.mission{position:relative;isolation:isolate;overflow:hidden}
.mission:before{content:'';position:absolute;right:0;bottom:0;width:45%;height:85%;background:url('assets/ligne-industrie-hd.png') right bottom/auto 330px no-repeat;opacity:.13;z-index:-1;mask-image:linear-gradient(90deg,transparent,#000 65%);pointer-events:none}
.expertise{background:linear-gradient(#f2f2f2d9,#f2f2f2d9),url('assets/ligne-industrie-hd.png') right bottom/min(100%,1600px) auto no-repeat}
.closing{position:relative;isolation:isolate;overflow:hidden}
.closing:before{content:'';position:absolute;inset:0 0 0 auto;width:48%;background:url('assets/ligne-industrie-hd.png') right bottom/auto 250px no-repeat;opacity:.16;mask-image:linear-gradient(90deg,transparent,#000 65%);z-index:-1;pointer-events:none}
.solutions-page .page-intro:before{background-image:url('assets/ligne-industrie-hd.png');opacity:.2;mask-image:linear-gradient(90deg,transparent 30%,#000 80%)}
.contact-story{background:linear-gradient(#fffffffa 20%,#ffffffcf),url('assets/ligne-industrie-hd.png') right bottom/100% auto no-repeat}
@media(max-width:1000px){.business-section:before{width:42%;opacity:.09}.mission:before{width:40%;opacity:.09}}
@media(max-width:680px){.business-section:before{inset:auto 0 0;width:100%;height:180px;background-size:auto 180px;opacity:.07;mask-image:none}.mission:before{width:100%;height:200px;background-size:auto 190px;opacity:.07;mask-image:linear-gradient(180deg,transparent,#000)}.closing:before{width:100%;background-size:auto 180px;opacity:.07;mask-image:none}.expertise{background-size:auto,auto 240px}.solutions-page .page-intro:before{opacity:.1}}

/* Three supplied drawings, each used once, with plain breathing spaces. */
.business-section:before,.closing:before{display:none}
.closing,.expertise{background:#f2f2f2}
.contact-story{background:none}
.page-intro:before{display:none}
.manifesto{background:#f2f2f2 url('assets/dessin-industrie-1.png') right bottom/min(68%,1000px) auto no-repeat;background-blend-mode:multiply}
.manifesto:before{background:linear-gradient(90deg,#f2f2f2 22%,#f2f2f2dd 50%,#f2f2f2ad 100%)}
.mission:before{background:url('assets/dessin-industrie-2.png') right bottom/contain no-repeat;width:42%;height:85%;opacity:.18;mix-blend-mode:multiply;mask-image:linear-gradient(90deg,transparent,#000 60%)}
.solutions-page .page-intro:before{display:block;background:url('assets/dessin-industrie-3.png') right bottom/auto 100% no-repeat;opacity:.18;mask-image:linear-gradient(90deg,transparent 30%,#000 80%)}
@media(max-width:680px){.manifesto{background-size:auto 240px}.manifesto:before{background:#f2f2f2d9}.mission:before{width:100%;height:190px;opacity:.09;mask-image:linear-gradient(180deg,transparent,#000)}.solutions-page .page-intro:before{background-size:auto 190px;opacity:.09}}

/* Large centred mission artwork with a legible text surface. */
.mission:before{inset:0;width:100%;height:100%;background:url('assets/dessin-industrie-2.png') center center/min(92%,1500px) auto no-repeat;opacity:.3;mask-image:none;mix-blend-mode:multiply}
.mission-statement{position:relative;background:#f2f2f2e8;padding:42px 48px;border-left:3px solid #1a3350}
.mission-statement h3{font-weight:600}
.mission-description p{color:#000;font-weight:500}
@media(max-width:680px){.mission:before{background-size:auto 90%;opacity:.23}.mission-statement{padding:28px 24px;background:#f2f2f2eb}}

/* Consistent navigation trail on every page. */
.site-breadcrumb{background:#1a3350;color:#fff;padding:18px 0;font-size:14px}
.site-breadcrumb .container{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.site-breadcrumb a{color:#fff;text-decoration:none}
.site-breadcrumb a:hover{text-decoration:underline;text-underline-offset:4px}
.site-breadcrumb [aria-current]{color:#fff}
@media(max-width:680px){.site-breadcrumb{padding:14px 0}}

/* Reveal the centred drawing through the mission text surface. */
.mission:before{opacity:.46}
.mission-statement{background:#f2f2f2b3}
.mission-description p{font-weight:500;text-shadow:0 1px 2px #f2f2f2}
@media(max-width:680px){.mission:before{opacity:.35}.mission-statement{background:#f2f2f2c2}}
