
/* More expressive navigation and photography; all text remains readable without JS. */
header{isolation:isolate}header nav{column-gap:clamp(10px,1.9vw,30px)}.expertise-opener{background:#ffffff10;color:#8bdcff;border:1px solid #72bbef44;width:27px;height:27px;border-radius:50%;font-size:19px;line-height:1;flex-shrink:0;margin-left:-22px;transition:transform .35s,background .25s}.expertise-opener[aria-expanded=true]{transform:rotate(180deg);background:#3089d75c}.expertise-menu[hidden]{display:none!important}.expertise-menu{position:absolute;top:calc(100% - 3px);right:3.5%;width:min(900px,93vw);padding:25px;border-radius:22px;border:1px solid #80bafa55;background:linear-gradient(125deg,#102a43fa,#172a49fa 70%,#242c52fa);box-shadow:0 28px 80px #020d2380;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);color:#ebf5ff;z-index:50}.expertise-menu-head{display:flex;align-items:start;justify-content:space-between;gap:20px;margin-bottom:18px}.expertise-menu-head span{font-size:10px;letter-spacing:2px;color:#70d8ff}.expertise-menu-head h2{font-size:23px;margin:8px 0 0;letter-spacing:-.3px}.expertise-menu-head button{border:1px solid #799ab955;color:#d5eafa;background:#1b3c5a;border-radius:50%;width:30px;height:30px;font-size:23px}.expertise-menu-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.expertise-menu-card{display:grid;grid-template-columns:62px 1fr 12px;gap:10px;align-items:center;background:#ffffff05;border:1px solid #91bbf21c;border-radius:13px;padding:10px;min-width:0;transition:background .25s,border-color .25s}.expertise-menu-card:hover,.expertise-menu-card:focus-visible{background:#3c77aa25;border-color:#63d7fd77}.expertise-menu-card img{width:62px;height:62px;object-fit:cover;border-radius:8px;filter:saturate(.8)}.expertise-menu-card span{min-width:0}.expertise-menu-card b{font-size:12px;display:block;line-height:1.35}.expertise-menu-card small{font-size:10px;color:#9ab6d0;display:block;line-height:1.45;margin-top:5px}.expertise-menu-card i{font-style:normal;color:#75d9ff;font-size:16px}.expertise-menu-bottom{display:flex;justify-content:space-between;gap:15px;font-size:12px;color:#c0d7eb;border-top:1px solid #87b4e42b;margin-top:18px;padding-top:16px}.expertise-menu-bottom span{color:#7edbff}.expertise-opener:focus-visible,.expertise-menu button:focus-visible{outline:3px solid #64d8ff;outline-offset:4px}
.photo-stage{position:relative;isolation:isolate;overflow:hidden;border-radius:20px;transform:translateZ(0)}.photo-stage>img{display:block;will-change:transform;transform:scale(1.035) translateY(var(--photo-drift,0px));transition:transform .15s linear;box-shadow:none!important;border-radius:0!important}.photo-stage:after{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;box-shadow:inset 0 0 0 1px #ffffff25;background:linear-gradient(135deg,#72d5ff0a,transparent 45%,#8460d110)}.page-intro figure:hover img,.home-photo figure:hover img{transform:scale(1.035) translateY(var(--photo-drift,0px));box-shadow:none}.photo-stage:before{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(120deg,#09223e,#184471);transform:translateX(-102%);pointer-events:none}.photo-stage.is-decoding:before{transform:translateX(0)}.photo-stage.is-decoding>img{opacity:.9}
.cinema{--chapter-shift:0px}.cinema .motion-film{transform:translateY(var(--chapter-shift));transition:transform .14s linear}.scene-reel article.is-in-view .reel-number{color:#8fe6ff}.page-transition-ribbon{position:fixed;inset:0;z-index:85;pointer-events:none;display:grid;grid-template-columns:repeat(4,1fr)}.page-transition-ribbon span{background:linear-gradient(180deg,#0d294769,#466fbc22);transform-origin:top;animation:ribbon-lift .7s cubic-bezier(.76,0,.24,1) both;animation-delay:calc(var(--lane)*.045s)}@keyframes ribbon-lift{from{transform:scaleY(1)}to{transform:scaleY(0)}}.page-arrival{display:none!important}
@media(min-width:981px){.subnav{position:relative}.subnav:after{content:'';position:absolute;bottom:5px;left:var(--rail-left,4%);width:var(--rail-width,0px);height:2px;border-radius:2px;background:linear-gradient(90deg,#38dcf2,#9f83fa);transform-origin:left;transition:left .35s cubic-bezier(.2,.8,.2,1),width .35s cubic-bezier(.2,.8,.2,1);pointer-events:none}}
@media(max-width:1250px) and (min-width:981px){.expertise-opener{margin-left:-11px}header nav{gap:12px}.expertise-menu{width:min(860px,93vw)}}@media(max-width:980px){.expertise-opener{margin-left:-10px}.expertise-menu{position:fixed;left:4%;right:4%;top:100px;width:auto;max-height:calc(100dvh - 125px);overflow-y:auto;padding:20px}.expertise-menu-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.expertise-menu-head h2{font-size:21px}.expertise-menu-card{grid-template-columns:55px 1fr 12px}.expertise-menu-card img{width:55px;height:55px}.cinema .motion-film{transform:none}}
@media(max-width:500px){.expertise-menu-grid{grid-template-columns:1fr}.expertise-menu{padding:17px;top:90px;max-height:calc(100dvh - 110px)}.expertise-menu-card{grid-template-columns:45px 1fr 12px;padding:8px}.expertise-menu-card img{width:45px;height:45px}.expertise-menu-card b{font-size:13px}.expertise-menu-card small{font-size:11px;margin-top:2px}.expertise-menu-bottom{display:block;line-height:1.8}.expertise-menu-bottom span{display:block}.expertise-menu-head h2{font-size:19px}}
@media(prefers-reduced-motion:reduce){.photo-stage>img,.page-intro figure:hover img,.home-photo figure:hover img,.cinema .motion-film{transform:none!important;will-change:auto}.page-transition-ribbon{display:none}.photo-stage:before{display:none}}html.motion-paused .photo-stage>img,html.motion-paused .page-intro figure:hover img,html.motion-paused .home-photo figure:hover img,html.motion-paused .cinema .motion-film{transform:none!important;will-change:auto}html.motion-paused .page-transition-ribbon{display:none}

/* Team portrait arrival: transient image planes, never a player or a permanent overlay. */
.team-reveal{position:absolute;right:0;top:0;width:67%;height:100%;z-index:0;pointer-events:none;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 23%);mask-image:linear-gradient(90deg,transparent,#000 23%);perspective:1400px}.team-plane{position:absolute;inset:0;transform-origin:60% 50%;will-change:transform,opacity}.team-plane img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 40%;max-width:none}.team-light{position:absolute;top:-20%;bottom:-20%;width:24%;background:linear-gradient(90deg,transparent,#63d9ff0b 38%,#bbdfff25 50%,#8f85ff09 65%,transparent);mix-blend-mode:screen;transform:skewX(-12deg);pointer-events:none}.photo-stage.effect-revealed:after{animation:portrait-polish 1.2s ease-out both}@keyframes portrait-polish{from{box-shadow:inset 0 0 0 1px #82dfff99;background-color:#59bfff12}to{box-shadow:inset 0 0 0 1px #ffffff25;background-color:transparent}}@media(max-width:980px){.team-reveal{width:80%;opacity:.7}}@media(max-width:600px){.team-reveal{width:100%;opacity:.45}.team-plane img{object-position:60%}}@media(prefers-reduced-motion:reduce){.team-reveal{display:none}.photo-stage.effect-revealed:after{animation:none}}html.motion-paused .team-reveal{display:none}html.motion-paused .photo-stage.effect-revealed:after{animation:none}

.infrastructure-gallery{max-width:1340px;margin:35px auto 50px;padding:0 4%}.gallery-heading{display:grid;grid-template-columns:1.3fr 1fr;gap:50px;align-items:center;margin:0 0 24px}.gallery-heading h2{font-size:32px;line-height:1.2;margin:0}.gallery-heading p{font-size:16px;color:#536d8d;line-height:1.7;margin:0}.infrastructure-grid{display:grid;grid-template-columns:1.15fr 1fr;grid-template-rows:235px 235px;gap:18px}.infrastructure-shot{position:relative;isolation:isolate;overflow:hidden;border-radius:19px;display:block;background:#0b2138;color:#fff;min-width:0}.infrastructure-shot.shot-large{grid-row:1/3}.infrastructure-shot>img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.8,.2,1)}.infrastructure-shot:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#07182d05 18%,#07182d15 40%,#07182de6 100%);pointer-events:none}.shot-title{position:absolute;left:25px;right:25px;bottom:23px;z-index:2}.shot-title small{font-size:10px;letter-spacing:1.8px;color:#8fe4ff;display:block;margin-bottom:8px}.shot-title b{font-size:23px;line-height:1.25;font-weight:600;display:block;max-width:400px}.shot-large .shot-title b{font-size:32px}.shot-title>span{display:block;font-size:12px;margin-top:10px;color:#d0e9fc}.infrastructure-shot:hover>img,.infrastructure-shot:focus-visible>img{transform:scale(1.035)}.gallery-caption{font-size:11px;color:#728399;margin:12px 0 0;line-height:1.5}body:has(.page-intro img[src$="supervision-bureau.jpg"]) .page-intro img[src$="supervision-bureau.jpg"]{object-position:50% 30%}body:has(.page-intro img[src$="supervision-femme.jpg"]) .page-intro img[src$="supervision-femme.jpg"]{object-position:50% 45%}@media(max-width:980px){.gallery-heading{gap:25px}.gallery-heading h2{font-size:28px}.infrastructure-grid{grid-template-rows:210px 210px}.shot-title{left:20px;right:20px;bottom:18px}.shot-title b{font-size:20px}.shot-large .shot-title b{font-size:27px}}@media(max-width:600px){.infrastructure-gallery{margin:25px auto 35px;padding:0 5%}.gallery-heading{grid-template-columns:1fr;gap:15px}.gallery-heading h2{font-size:28px}.infrastructure-grid{grid-template-columns:1fr;grid-template-rows:300px 260px 260px}.infrastructure-shot.shot-large{grid-row:auto}.shot-large .shot-title b{font-size:26px}.shot-title b{font-size:23px}}@media(prefers-reduced-motion:reduce){.infrastructure-shot>img{transition:none}.infrastructure-shot:hover>img,.infrastructure-shot:focus-visible>img{transform:none}}html.motion-paused .infrastructure-shot:hover>img{transform:none}

/* Selected identity: 03 / Nexus. Outlined lettering, preserved exact tagline. */
.brand-nexus{gap:0;line-height:1;max-width:calc(100vw - 115px)}.brand-nexus>.logo{display:block;width:310px;height:64px;max-width:100%;flex-shrink:0;overflow:visible;transform:none}.brand-nexus:hover>.logo{transform:none;filter:drop-shadow(0 0 5px #398eee24)}@media(max-width:1250px) and (min-width:981px){.brand-nexus>.logo{width:255px;height:53px}}@media(max-width:980px){.brand-nexus>.logo{width:280px;height:58px}}@media(max-width:600px){.brand-nexus>.logo{width:clamp(175px,57vw,240px);height:auto;aspect-ratio:550/112}}

/* The homepage orbital background is intentionally more legible, behind the copy. */
.hero-atmosphere .orbit{width:500px;height:500px;left:-160px;top:70px;border:1.8px solid #62d9ff70;box-shadow:0 0 16px #35bfff12,inset 0 0 13px #45bfff0e}.hero-atmosphere .orbit:after{inset:-2px;border-top:3px solid #66e5ff;border-left:2px solid #ad8dff;border-right:1px solid #6ca9ff66;filter:drop-shadow(0 0 4px #53ccff70);animation-duration:13s}.hero-atmosphere .orbit.second{right:-175px;left:auto;top:235px;width:440px;height:440px;opacity:.72}.hero-atmosphere .orbit.second:after{animation-duration:19s}.hero-atmosphere .orbit-runner{position:absolute;inset:-2px;border-radius:50%;animation:orbit-spin 13s linear infinite;pointer-events:none}.hero-atmosphere .orbit-runner:before{content:'';position:absolute;left:-4px;top:calc(50% - 5px);width:10px;height:10px;border-radius:50%;background:#b6f6ff;box-shadow:0 0 0 4px #45cfff18,0 0 16px #4edfffaa}.hero-atmosphere .orbit-runner.companion{animation-delay:-6.5s}.hero-atmosphere .orbit-runner.companion:before{background:#c4a6ff;box-shadow:0 0 0 4px #9f83ff18,0 0 17px #a887ffaa}.hero-atmosphere .orbit.second .orbit-runner{animation-duration:19s;animation-direction:reverse}.hero-atmosphere .orbit.second .orbit-runner.companion{animation-delay:-9.5s}.hero-atmosphere .signal{width:5px;height:5px;background:#b5f0ff;box-shadow:0 0 5px #65d8ff,0 0 17px #56caffaa}.hero-atmosphere .halo{background:radial-gradient(circle,#21b9f32d,transparent 68%)}@media(max-width:980px){.hero-atmosphere .orbit{left:-185px;top:95px;width:470px;height:470px}.hero-atmosphere .orbit.second{right:-205px;left:auto;top:240px;width:420px;height:420px}}@media(max-width:600px){.hero-atmosphere .orbit{left:-205px;top:175px;width:370px;height:370px;border-color:#62d9ff80}.hero-atmosphere .orbit:after{border-top-width:2px}.hero-atmosphere .orbit-runner:before{width:8px;height:8px;top:calc(50% - 4px);left:-3px}.hero-atmosphere .signal{width:4px;height:4px}}

/* Final user adjustment: stronger orbital presence with the same steady rhythm. */
.hero-atmosphere .orbit{border-color:#7ce9ff99;box-shadow:0 0 20px #39caff20,inset 0 0 16px #52cfff14}.hero-atmosphere .orbit:after{border-top-width:3.5px;border-top-color:#9aefff;border-left-color:#c2a3ff;filter:drop-shadow(0 0 6px #62d9ff99)}.hero-atmosphere .orbit.second{opacity:.88}.hero-atmosphere .orbit-runner:before{width:12px;height:12px;left:-5px;top:calc(50% - 6px);background:#d2fbff;box-shadow:0 0 0 5px #47d4ff24,0 0 23px #64e4ffcc}.hero-atmosphere .orbit-runner.companion:before{background:#dcc8ff;box-shadow:0 0 0 5px #ab8cff24,0 0 23px #b391ffcc}.hero-atmosphere .halo{background:radial-gradient(circle,#26bcf33c,transparent 69%)}@media(max-width:600px){.hero-atmosphere .orbit{border-color:#80eaff99}.hero-atmosphere .orbit:after{border-top-width:2.5px}.hero-atmosphere .orbit-runner:before{width:10px;height:10px;left:-4px;top:calc(50% - 5px);box-shadow:0 0 0 4px #47d4ff20,0 0 18px #64e4ffbb}.hero-atmosphere .orbit-runner.companion:before{box-shadow:0 0 0 4px #ab8cff20,0 0 18px #b391ffbb}}

/* Clearly visible orbital revision — fewer floating particles, real luminous trajectories. */
.hero-atmosphere .signal{display:none}.hero-atmosphere .orbit{left:-115px;top:30px;width:570px;height:570px;border:2.5px solid #8deaffc2;transform:rotate(-28deg) scaleY(.65);box-shadow:0 0 24px #45d2ff2b,inset 0 0 20px #63d7ff1c}.hero-atmosphere .orbit:after{border-top:5px solid #c1f7ff;border-left:3px solid #d4bbff;border-right:2px solid #79bfff99;filter:drop-shadow(0 0 9px #6fe2ffd0)}.hero-atmosphere .orbit.second{right:-125px;left:auto;top:220px;width:490px;height:490px;opacity:1}.hero-atmosphere .orbit-runner:before{width:16px;height:16px;left:-7px;top:calc(50% - 8px);background:#e4fdff;box-shadow:0 0 0 6px #4fdcff33,0 0 30px #76edffed}.hero-atmosphere .orbit-runner.companion:before{background:#eadcff;box-shadow:0 0 0 6px #b593ff33,0 0 30px #c7a4ffed}.hero-atmosphere .halo{background:radial-gradient(circle,#22bcf34d,transparent 71%)}@media(max-width:980px){.hero-atmosphere .orbit{left:-145px;top:75px;width:510px;height:510px}.hero-atmosphere .orbit.second{right:-155px;left:auto;top:225px;width:460px;height:460px}}@media(max-width:600px){.hero-atmosphere .orbit{left:-185px;top:170px;width:410px;height:410px;border-width:2px}.hero-atmosphere .orbit:after{border-top-width:3.5px;border-left-width:2px;filter:drop-shadow(0 0 6px #6fe2ffbb)}.hero-atmosphere .orbit-runner:before{width:12px;height:12px;left:-5px;top:calc(50% - 6px);box-shadow:0 0 0 4px #4fdcff2b,0 0 21px #76edffdd}.hero-atmosphere .orbit-runner.companion:before{box-shadow:0 0 0 4px #b593ff2b,0 0 21px #c7a4ffdd}}

/* User-selected refinement: thicker orbital strokes, same size and speed. */
.hero-atmosphere .orbit{border-width:4px}.hero-atmosphere .orbit:after{inset:-4px;border-top-width:9px;border-left-width:6px;border-right-width:3px}@media(max-width:600px){.hero-atmosphere .orbit{border-width:3px}.hero-atmosphere .orbit:after{inset:-3px;border-top-width:6px;border-left-width:4px;border-right-width:2px}}

/* User refinement: fine orbital lines and occasional shooting stars. */
.hero-atmosphere .orbit{left:-160px;top:70px;width:500px;height:500px;border:1px solid #7cdfff66;box-shadow:0 0 14px #45d2ff10,inset 0 0 12px #63d7ff0b}.hero-atmosphere .orbit:after{inset:-1px;border-top:2px solid #b1f0ff;border-left:1px solid #b8a0f4;border-right:1px solid #79bfff55;filter:drop-shadow(0 0 4px #6fe2ff66)}.hero-atmosphere .orbit.second{right:-175px;left:auto;top:235px;width:440px;height:440px;opacity:.72}.hero-atmosphere .orbit-runner:before{width:8px;height:8px;left:-3px;top:calc(50% - 4px);background:#d1f8ff;box-shadow:0 0 0 3px #4fdcff18,0 0 13px #76edff99}.hero-atmosphere .orbit-runner.companion:before{background:#d8c4ff;box-shadow:0 0 0 3px #b593ff18,0 0 13px #c7a4ff99}.hero-atmosphere .halo{background:radial-gradient(circle,#22bcf326,transparent 70%)}.hero-atmosphere .shooting-star{position:absolute;left:6%;top:12%;width:130px;height:1.5px;opacity:0;border-radius:50%;background:linear-gradient(90deg,transparent,#8cd8ff66 65%,#e2faff);box-shadow:0 0 6px #83dcff55;transform-origin:right center;animation:shooting-pass 12s linear infinite;pointer-events:none;--star-x:430px;--star-y:210px}.hero-atmosphere .shooting-star:after{content:'';position:absolute;right:-1px;top:-1px;width:3px;height:3px;background:#e9fbff;border-radius:50%;box-shadow:0 0 8px #a0e9ff99}.hero-atmosphere .shooting-star.distant{left:23%;top:3%;width:95px;height:1px;animation-duration:17s;animation-delay:-8s;--star-x:330px;--star-y:160px}@keyframes shooting-pass{0%{opacity:0;transform:translate3d(-70px,-34px,0) rotate(26deg)}3%{opacity:.65}14%{opacity:.65}19%,100%{opacity:0;transform:translate3d(var(--star-x),var(--star-y),0) rotate(26deg)}}@media(max-width:980px){.hero-atmosphere .orbit{left:-185px;top:95px;width:470px;height:470px}.hero-atmosphere .orbit.second{right:-205px;left:auto;top:240px;width:420px;height:420px}}@media(max-width:600px){.hero-atmosphere .orbit{left:-205px;top:175px;width:370px;height:370px;border-width:1px}.hero-atmosphere .orbit:after{inset:-1px;border-top-width:1.5px;border-left-width:1px;border-right-width:1px}.hero-atmosphere .orbit-runner:before{width:6px;height:6px;left:-2px;top:calc(50% - 3px);box-shadow:0 0 10px #76edff88}.hero-atmosphere .orbit-runner.companion:before{box-shadow:0 0 10px #c7a4ff88}.hero-atmosphere .shooting-star{left:2%;top:10%;width:90px;--star-x:240px;--star-y:117px}.hero-atmosphere .shooting-star.distant{left:20%;top:4%;width:70px;--star-x:190px;--star-y:92px}}

/* Six staggered shooting stars, with varied paths and no flashing. */
.hero-atmosphere .shooting-star.trail-3{left:4%;top:37%;width:105px;animation-duration:13s;animation-delay:-4.5s;--star-x:350px;--star-y:170px}.hero-atmosphere .shooting-star.trail-4{left:36%;top:2%;width:120px;animation-duration:16s;animation-delay:-12s;--star-x:380px;--star-y:185px}.hero-atmosphere .shooting-star.trail-5{left:12%;top:65%;width:80px;height:1px;animation-duration:15s;animation-delay:-10s;--star-x:280px;--star-y:136px}.hero-atmosphere .shooting-star.trail-6{left:44%;top:28%;width:90px;height:1px;animation-duration:18s;animation-delay:-14.5s;--star-x:340px;--star-y:166px}@media(max-width:600px){.hero-atmosphere .shooting-star.trail-3{left:0;top:35%;width:75px;--star-x:210px;--star-y:102px}.hero-atmosphere .shooting-star.trail-4{left:32%;top:1%;width:80px;--star-x:200px;--star-y:98px}.hero-atmosphere .shooting-star.trail-5{left:4%;top:66%;width:65px;--star-x:190px;--star-y:92px}.hero-atmosphere .shooting-star.trail-6{left:44%;top:23%;width:70px;--star-x:180px;--star-y:88px}}

.ovh-versions{font-size:12px;line-height:1.8;margin:0 0 16px;color:#bdd2e9}.ovh-versions a{display:inline-block;padding:6px 0;text-decoration:underline;text-underline-offset:3px}
