
:root{color-scheme:dark}
html{scroll-behavior:smooth}
body{
 background:#061127!important;
 color:#eef5ff!important;
 font-family:Arial,Helvetica,sans-serif;
 isolation:isolate;
}
body:before{
 content:"";
 position:fixed;
 inset:-20%;
 z-index:-1;
 pointer-events:none;
 background:
 radial-gradient(ellipse at 20% 25%,rgba(0,111,255,.28),transparent 42%),
 radial-gradient(ellipse at 80% 60%,rgba(0,209,255,.14),transparent 40%),
 radial-gradient(ellipse at 55% 85%,rgba(239,55,80,.12),transparent 35%);
 animation:ambient 22s ease-in-out infinite alternate;
}
@keyframes ambient{
 from{transform:translate3d(-2%,-2%,0)}
 to{transform:translate3d(3%,3%,0)}
}
header{
 background:rgba(6,17,39,.94)!important;
 border-bottom:1px solid #264575!important;
}
header a,footer a,.brand{color:#fff!important}
header nav{flex-wrap:wrap}
.logo{background:#123a83!important;color:#fff!important}
.logo span{color:#ff566a!important}
.hero{position:relative}
.hero h1{color:#fff!important}
.hero h1 em{
 color:#66dfff!important;
 font-style:normal;
 text-shadow:0 0 32px rgba(50,184,255,.25);
}
.lead{color:#e7efff!important}
.hero-last{color:#bfcfea!important}
.eyebrow{color:#86dfff!important}
.button,.nav-contact,.interest,.mbv-global-button{
 background:#e83e55!important;
 color:#fff!important;
 border-color:#ff6074!important;
}
.button:hover,.interest:hover{background:#c82c43!important}
.hero-options{color:#bacbe8!important}
.founder{
 background:linear-gradient(145deg,#14396c,#091a38)!important;
 border:1px solid #36699d!important;
 border-top:4px solid #fff!important;
 box-shadow:0 18px 65px rgba(0,0,0,.3);
}
.founder p,.founder blockquote,.signature{color:#eef5ff!important}
.founder-top,.founder-foot{color:#a3dfff!important}
.years{color:#fff!important}
.years span{color:#ff5369!important}
.start-note{
 margin:24px 0;
 padding:18px 20px;
 border-radius:16px;
 background:#102c53;
 border:1px solid #315982;
 border-left:4px solid #ff4b63;
}
.start-note strong{
 display:block;
 color:#fff;
 font-size:19px;
}
.start-note small{
 display:block;
 margin-top:10px;
 color:#bdcde5;
 line-height:1.6;
 font-size:13px;
 max-width:610px;
}
.intro h2,.category-heading h2,.transmission h2{
 color:#7fddff!important;
}
.intro p,.category-heading p{color:#becde5!important}
.filters{
 display:flex;
 flex-wrap:wrap;
 gap:10px;
}
.filters a{
 background:#10284b!important;
 border:1px solid #315176;
 color:#e5f3ff!important;
}
.category{border-color:#284466!important}
.number{color:#ff586e!important}
.card{
 background:linear-gradient(145deg,#132b50,#0b1d38)!important;
 border:1px solid #294d7c!important;
 border-radius:20px!important;
 overflow:hidden;
 box-shadow:0 12px 35px rgba(0,0,0,.22);
 transition:transform .25s,border-color .25s;
}
.card:hover{
 transform:translateY(-5px);
 border-color:#6bdcff!important;
}
.card h3{color:#fff!important}
.card h4,.asset-title{color:#77dbff!important}
.card p,.card li{color:#c9d7eb!important}
.card a.visit{color:#86e1ff!important}
.featured{
 background:#183c68!important;
 color:#b3e8ff!important;
 border:1px solid #346496;
}
.project-fit{border-color:#315071!important}
.activities{background:#102644!important}
.activities span,.activities a{color:#d8edff!important}
.project-seo{
 margin:16px 0;
 padding:14px;
 border-radius:12px;
 background:rgba(3,13,31,.55);
 border:1px solid #315071;
}
.project-seo strong{color:#83e3ff;font-size:14px}
.project-seo p{
 font-size:13px;
 line-height:1.6;
 margin:8px 0 0;
}
.transmission{
 background:linear-gradient(115deg,#103571,#102747)!important;
 border:1px solid #346394;
 border-top:4px solid #fff;
 border-bottom:4px solid #e83e55;
 border-radius:24px;
}
.transmission p,.steps p{color:#cfdef1!important}
.steps h3{color:#fff!important}
.steps article{border-color:#41658b!important}
.steps article>span{color:#ff6a7d!important}
.final-cta{
 background:linear-gradient(120deg,#15469a,#122b57)!important;
 border:1px solid #416fb4;
 border-radius:24px;
}
.final-cta h2{color:#fff!important}
.final-cta p{color:#d7e5ff!important}
footer{
 background:#061127!important;
 color:#b8cbe4!important;
}
footer p,footer small{color:#b8cbe4!important}
a:focus-visible{
 outline:3px solid #80e6ff;
 outline-offset:5px;
}
@media(max-width:700px){
 body:before{animation:none}
 .hero h1{font-size:clamp(38px,10vw,58px)}
 header{position:relative!important}
 header nav{gap:12px}
 .card:hover{transform:none}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 *,*:before,*:after{
  animation:none!important;
  transition:none!important;
 }
}

/* Version lumineuse */
:root{color-scheme:light}
body{background:#edf5ff!important;color:#173452!important}
body:before{
 background:
 radial-gradient(ellipse at 20% 25%,rgba(20,131,255,.15),transparent 42%),
 radial-gradient(ellipse at 80% 60%,rgba(0,209,255,.13),transparent 40%),
 radial-gradient(ellipse at 55% 85%,rgba(239,55,80,.06),transparent 35%);
}
header{
 background:rgba(255,255,255,.96)!important;
 border-bottom:1px solid #c7daef!important;
}
header a,.brand{color:#153a65!important}
header .nav-contact{color:#fff!important}
.hero{
 background:linear-gradient(120deg,#1566c4,#128bab);
 padding:40px;
 border-radius:26px;
 margin-top:28px;
 box-shadow:0 16px 45px rgba(30,100,170,.16);
}
.hero h1,.hero .lead{color:#fff!important}
.hero h1 em{color:#d6f7ff!important}
.hero .hero-last,.hero .hero-options{color:#e3f1ff!important}
.hero .eyebrow{color:#e0f5ff!important}
.founder{
 background:rgba(255,255,255,.96)!important;
 border:1px solid #d1e3f5!important;
 border-top:4px solid #fff!important;
 border-bottom:4px solid #e83e55!important;
 box-shadow:0 12px 35px rgba(0,45,100,.15);
}
.founder p,.founder blockquote,.founder .signature{
 color:#234566!important;
}
.founder .founder-top,.founder .founder-foot{color:#1767a4!important}
.founder .years{color:#1767b7!important}
.start-note{
 background:rgba(255,255,255,.96)!important;
 border-color:#cfdeed!important;
 border-left-color:#e83e55!important;
}
.start-note strong{color:#174878!important}
.start-note small{color:#425c77!important}
.eyebrow{color:#1767a4!important}
.intro h2,.category-heading h2{color:#155898!important}
.intro p,.category-heading p{color:#425b75!important}
.number{color:#d8314b!important}
.filters a{
 background:#fff!important;
 border-color:#c5d9ed!important;
 color:#17578c!important;
}
.category{border-color:#c6d9ed!important}
.card{
 background:#fff!important;
 border-color:#ccdeef!important;
 box-shadow:0 10px 30px rgba(30,75,120,.08);
}
.card:hover{border-color:#219bd1!important}
.card h3{color:#174f83!important}
.card h4,.card .asset-title{color:#15759a!important}
.card p,.card li{color:#3e5570!important}
.card a.visit{color:#12679e!important}
.featured{
 background:#e9f5ff!important;
 color:#145c92!important;
 border-color:#c0dff3!important;
}
.project-fit{border-color:#d2e0ed!important}
.activities{background:#edf6ff!important}
.activities span,.activities a{color:#215d8a!important}
.project-seo{
 background:#f1f7fc!important;
 border-color:#d0e1ef!important;
}
.project-seo strong{color:#176797!important}
.transmission{
 background:linear-gradient(115deg,#e1efff,#f5fbff)!important;
 border-color:#bad4ef!important;
 border-top-color:#176ac2!important;
 border-bottom-color:#e83e55!important;
}
.transmission h2{color:#155898!important}
.transmission p,.transmission .steps p{color:#3d5874!important}
.steps h3{color:#174f83!important}
.steps article{border-color:#c2d8ee!important}
.steps article>span{color:#d8314b!important}
.final-cta{
 background:linear-gradient(120deg,#1767c3,#168eae)!important;
 border-color:#298fce!important;
}
.final-cta .eyebrow{color:#d6f4ff!important}
footer{background:#e3edf8!important;color:#375671!important}
footer a,footer .brand{color:#174f83!important}
footer p,footer small{color:#425f7a!important}
@media(max-width:700px){
 .hero{padding:26px 20px;border-radius:20px}
}

/* Lisibilité des encadrés de profil */
.card .project-fit{
    background:#eaf3ff!important;
    color:#183e65!important;
    border:1px solid #bfd4ed!important;
    border-left:4px solid #2379c5!important;
    border-radius:12px;
    padding:14px 16px;
    font-size:15px;
    line-height:1.65;
}
.card .project-fit *{color:#183e65!important}

/* Menu des sections */
header{
    flex-wrap:wrap!important;
    gap:16px!important;
}
header nav{
    display:flex!important;
    flex-wrap:wrap!important;
    justify-content:center;
    gap:10px 18px!important;
    width:100%;
}
header nav a{
    font-size:14px;
    line-height:1.5;
}
section[id]{scroll-margin-top:180px}
@media(max-width:700px){
    header nav{justify-content:flex-start}
    header nav a{font-size:13px}
    section[id]{scroll-margin-top:24px}
}
