@font-face{font-family:'Inter CV';font-style:normal;font-weight:400;font-display:swap;src:url('assets/inter-0.ttf') format('truetype');}
@font-face{font-family:'Inter CV';font-style:normal;font-weight:500;font-display:swap;src:url('assets/inter-1.ttf') format('truetype');}
@font-face{font-family:'Inter CV';font-style:normal;font-weight:600;font-display:swap;src:url('assets/inter-2.ttf') format('truetype');}
@font-face{font-family:'Inter CV';font-style:normal;font-weight:700;font-display:swap;src:url('assets/inter-3.ttf') format('truetype');}
/* Direction éditoriale : une seule famille, une hiérarchie lisible. */
:root{--navy:#183958;--navy-d:#112c48;--navy-l:#eef3f8;--ink:#1b2b3d;--muted:#5e6c7b;--accent:#376caa;--sky:#a3bddb;--soft:#f6f8fa;--line:#dfe6ee;--grad:linear-gradient(90deg,#dbe8f7,#a3bfdc);--cv-font:'Inter CV',Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif}
body,button,input,h1,h2,h3,h4,.display,.heavy,.logo,.role,.yr,.band,.stat .n,.pc .lbl b,.web-window b,.orbiting>b,.method li>span,.interest b,.contact h2{font-family:var(--cv-font)!important;font-feature-settings:'cv11','ss01';font-synthesis:none}
body{line-height:1.75}h1,h2,h3,h4{font-weight:600;letter-spacing:-.025em}.logo{font-weight:600;font-size:18px;letter-spacing:-.4px;padding-left:0}.logo:before{display:none}.nav-in{height:76px}.links{gap:24px}.links a{font-size:12px;font-weight:500}.nav-cv{font-size:11px;font-weight:600;border-radius:7px}.hero{background:linear-gradient(110deg,#112b47,#173a5e);padding:150px 0 140px}.hero-network{opacity:.23}.hero-grid{grid-template-columns:1.1fr .9fr;gap:90px}.hero h1{font-size:clamp(52px,5.4vw,74px);font-weight:600;line-height:1.13;letter-spacing:-2.9px}.hero h1 .grad{color:white!important;-webkit-text-stroke:0;background:none;animation:none!important;font-weight:600;letter-spacing:-2.9px}.tag{font-size:11px;background:#ffffff08;border-color:#ffffff25;font-weight:400;padding:7px 12px;margin-bottom:31px}.dot{width:6px;height:6px}.role{font-size:18px;font-weight:500;letter-spacing:-.3px;margin:25px 0 22px;color:#c6d5e6}.role-prefix{color:#c6d5e6;font-weight:400}.role .typed{color:#fff;border-color:#adc6e3;font-weight:500}.hero p.lead{font-size:14px;line-height:1.95;color:#c9d5e3;max-width:490px}.hero p.lead b{font-weight:500}.hero-mini{font-size:11px;color:#acbed1}.hero-mini a{text-decoration-color:#7d99b9}.hero-text>*{animation:professionalEnter .85s both}.hero-text h1{animation-delay:.1s}.hero-text .role{animation-delay:.2s}.hero-text .lead{animation-delay:.3s}.hero-text .ctas{animation-delay:.4s}.hero-text .hero-mini{animation-delay:.5s}.btn{font-size:12px;font-weight:600;border-radius:7px;padding:14px 20px;letter-spacing:0}.btn-w{color:#1e3d60;background:#fff;box-shadow:0 4px 14px #00000008}.btn-o{background:none;border-color:#a3b7d14d}.btn:hover{transform:translateY(-2px)}.photo>img{width:320px;aspect-ratio:.85;object-position:center 32%;border:1px solid #b6cbe133;border-radius:22px;transform:none;box-shadow:0 20px 50px #081d3229;animation:professionalEnter 1s .15s both}.portrait-orbits{inset:-15px;border:1px solid #afc4dd1f;border-radius:33px;animation:quietFrame 7s ease-in-out infinite}.portrait-orbits i{display:none}.badge{border-radius:9px;padding:15px 18px;box-shadow:0 10px 30px #06152729}.badge small{font-size:9px;line-height:1.7;font-weight:400}.b1{left:-52px;top:35px;animation-duration:8s}.b2{right:-30px;bottom:22px;animation-duration:9s}.badge-label{font-size:7px;letter-spacing:1px;color:#6d7b8c}.b2>div{font-size:11px;font-weight:500}.scroll-hint{font-size:8px;letter-spacing:1.5px;color:#a6bad1}.profile-strip{box-shadow:0 10px 35px #0d2e4810;border-radius:12px;border-color:#e1e7ee}.profile-signal{padding:30px 23px;gap:14px}.profile-signal h2{font-size:15px;font-weight:500;line-height:1.7;letter-spacing:-.25px}.profile-signal small{font-size:7px;font-weight:500;letter-spacing:.9px;color:#6b7b8e}.signal-icon{color:#6082a7}.signal-track{height:1px}.signal-track i{background:linear-gradient(90deg,transparent,#80a0c4,transparent)}.companies>p{font-size:8px;font-weight:500;letter-spacing:1.5px}.company-row a{box-shadow:none;border-color:#e4e9ef;border-radius:8px}.company-row a:hover{box-shadow:0 10px 24px #18344d0a;transform:translateY(-4px)}.company-row a small{font-size:9px}.company-path{color:#a6b7c9!important}.band{font-size:29px;font-weight:600;letter-spacing:-.8px;line-height:1.4;gap:16px;margin-bottom:21px}.section-index{border:0;width:22px;height:auto;color:#708eaf;font-size:10px;letter-spacing:0;font-weight:400;border-radius:0}.section-index:after{display:none}.sub{font-size:13px;line-height:1.9;color:#667686}.about p{font-size:14px;line-height:1.9}.about p strong{color:#264c72;font-weight:600}.text-link{font-size:12px;font-weight:500}.facts{border-radius:9px;box-shadow:none}.fact{font-size:12px}.fact span:last-child{font-weight:500}.fact span:first-child:before{height:5px;width:5px}.job-card{border-radius:9px}.job-head{padding:25px}.yr{font-size:16px;font-weight:400;letter-spacing:-.5px;color:#6d87a3}.job-head h3{font-size:17px;font-weight:600;letter-spacing:-.4px}.job-head .meta{font-size:12px;font-weight:400}.job-head .meta b{font-weight:500}.job-sub{font-size:10px;line-height:1.9;color:#718092}.job-body li{font-size:13px;line-height:1.9}.job-body li:before{width:4px;height:4px;background:#829cba}.chip{font-size:9px!important;font-weight:400;background:#f2f5f8!important;color:#506985!important;border-radius:4px}.chev{width:29px;height:29px;background:#fafbfd}.job.open .chev{background:#31597e;border-color:#31597e}.job.open .job-card{box-shadow:0 8px 25px #18344c08}.job-more a{font-size:11px;font-weight:500}.filters{gap:8px}.filters button{font-size:11px;font-weight:400;border-radius:6px;padding:8px 14px;background:white}.filters button.on,.filters button:hover{background:#284f75;border-color:#284f75}.project{border-radius:9px;box-shadow:none}.project summary{min-height:145px;gap:10px;padding:24px}.project-over{font-size:8px;font-weight:500;letter-spacing:.7px;color:#6c7f92}.project-name{font-family:var(--cv-font)!important;font-weight:500;font-size:17px;letter-spacing:-.4px;line-height:1.55}.project-plus{font-weight:300;color:#6987a7;font-size:21px}.participation{font-size:9px;border-radius:4px;background:#f0f4f8;color:#5b738e;font-weight:400}.project-content h4{font-size:9px;font-weight:600;letter-spacing:.7px;color:#526e8b}.project-content p,.project-content li{font-size:12px;line-height:1.95}.project-content .project-note{font-size:10px;line-height:1.9}.project-tools{font-size:10px;font-weight:500;color:#557ba1}.project:hover{transform:translateY(-3px);box-shadow:0 12px 26px #18344d08}.sk{padding:25px}.skills .sk{border-radius:9px}.skills .sk:after{display:none}.sk .ico{width:40px;height:40px;border-radius:8px;background:#f0f4f9!important;color:#4f759b;border:0;font-size:22px}.sk h3{font-weight:500;font-size:17px;letter-spacing:-.35px}.sk p{font-size:12px;color:#657589;line-height:1.9}.skill-proof{font-size:9px;font-weight:500;color:#5b7896}.skill-explore{font-size:10px;font-weight:500;color:#426a94}.tool-strip{border-radius:9px}.tool-strip>span{font-size:9px;font-weight:500}.tool-strip>div{font-size:10px;color:#58718c}.ed{border-radius:9px}.ed .k{font-size:8px;font-weight:500;color:#657f9b!important}.ed h3{font-size:18px;font-weight:500;letter-spacing:-.4px}.ed .t{font-size:12px;font-weight:500;line-height:1.9}.ed p{font-size:11px;line-height:1.9}.personal-card{border-radius:10px}.personal-title small{font-size:8px;font-weight:500;color:#6684a4}.personal-title h3{font-size:20px;font-weight:500;letter-spacing:-.5px}.personal-title p{font-size:11px;line-height:1.9}.personal-cta{font-size:10px;font-weight:500}.personal-body p{font-size:12px;line-height:1.95}.mini-kanban{animation-duration:9s}.web-window{animation-duration:8s}.web-window b{font-size:18px;font-weight:500;letter-spacing:-.5px}.orbiting>b{font-size:45px;font-weight:500}.extra-initiative{border-radius:9px}.extra-initiative summary{font-weight:500;font-size:12px}.box{background:#244668;border-radius:10px}.box h3{font-size:14px;font-weight:500;letter-spacing:.3px}.method li>span{font-size:17px;font-weight:400;color:#a5bfd9;line-height:1.8}.method b{font-size:12px;font-weight:500}.method small{font-size:10px;line-height:1.9}.interest{border-radius:9px;border-color:#b0c9df29}.interest span{font-size:28px}.interest b{font-size:11px;font-weight:500;letter-spacing:0}.interest-caption{font-size:10px;line-height:1.9}.contact{background:#142f4c}.contact:before{opacity:.3}.contact h2{font-size:48px;font-weight:500;letter-spacing:-1.9px;line-height:1.2}.contact h2 .grad{background:none;color:#a9c0d9}.contact .lead{font-size:13px;line-height:1.95;color:#c0cedd;max-width:550px}.cc{border-radius:10px!important;background:#ffffff04;min-height:190px}.cc .k{font-size:9px!important;font-weight:400!important;color:#b2c3d7!important;letter-spacing:1.5px}.cc .v{font-size:19px!important;font-weight:500!important;letter-spacing:-.5px!important}.cc .h{font-size:10px!important;color:#cbd9e8!important}.contact-arrow{width:16px;height:16px}.contact-bottom{font-size:10px;color:#b6c7da}.footer-inner{font-size:10px;font-weight:400}.footer-inner button,.footer-inner a{font-size:10px}.photo img.badge-logo{border-radius:0;animation:none!important;transform:none;box-shadow:none}
@keyframes professionalEnter{from{opacity:0;transform:translateY(17px)}to{opacity:1;transform:none}}@keyframes quietFrame{50%{transform:scale(1.015);opacity:.5}}
@media(max-width:1100px){.hero-grid{gap:65px}.hero h1{font-size:66px}.photo>img{width:285px}.profile-signal{padding:25px 18px;gap:10px}.profile-signal h2{font-size:14px}.signal-icon{width:27px}.cc .v{font-size:17px!important}}
@media(max-width:760px){.logo{font-size:16px;letter-spacing:-.4px}.nav-in{height:66px}.links a{font-size:10px}.links{background:#122d4df5}.nav-cv{font-size:10px;border-radius:6px;padding:7px 11px}.hero{padding:135px 0 105px;background:linear-gradient(145deg,#122c48,#1b3d60)}.hero-grid{gap:34px}.photo>img{width:221px;border-radius:16px;aspect-ratio:.87;border-width:1px;transform:none}.portrait-orbits{inset:-11px;border-radius:24px}.badge{padding:12px 13px;border-radius:7px}.b1{left:-39px;top:25px}.b2{right:-34px;bottom:15px}.badge small{font-size:8px}.badge-label{font-size:6px}.b2>div{font-size:9px}.hero h1{font-size:51px;line-height:1.15;letter-spacing:-2px}.hero h1 .grad{letter-spacing:-2px}.tag{font-size:9px;margin-bottom:23px;padding:7px 10px}.hero .role{font-size:15px;line-height:1.8;margin:23px 0 18px;min-height:54px;letter-spacing:-.25px}.hero p.lead{font-size:13px;line-height:1.95}.ctas .btn{font-size:10px;padding:13px 11px;gap:6px;line-height:1.7;border-radius:6px}.hero-mini{font-size:9px;line-height:1.9}.scroll-hint{font-size:7px;bottom:55px}.profile-strip{border-radius:10px;margin-left:20px;margin-right:20px}.profile-signal{padding:20px 0;gap:17px}.profile-signal h2{font-size:13px;font-weight:500;line-height:1.8;letter-spacing:-.25px}.profile-signal small{font-size:6px;font-weight:500;letter-spacing:.8px;margin-bottom:5px}.signal-icon svg{width:25px;height:25px}.companies>p{font-size:7px;line-height:1.9;letter-spacing:1.4px}.company-row a{border-radius:7px}.company-row a small{font-size:8px}.band{font-size:23px;font-weight:600;line-height:1.5;letter-spacing:-.7px;gap:12px;margin-bottom:20px}.section-index{width:19px;font-size:9px}.sub{font-size:12px;line-height:1.95}.about p{font-size:13px}.fact{font-size:11px}.fact span:last-child{font-weight:500}.job-head{padding:22px 18px}.yr{font-size:14px;font-weight:400;letter-spacing:-.3px}.job-head h3{font-size:16px;letter-spacing:-.35px}.job-head .meta{font-size:11px;line-height:1.85}.job-sub{font-size:9px;line-height:1.9}.job-logo{height:28px;width:105px}.job-company-copy{padding-top:44px}.job-body li{font-size:12px;line-height:1.95}.chips .chip{font-size:8px!important}.job-more a{font-size:10px}.project summary{min-height:138px;padding:23px 19px;gap:10px}.project-name{font-size:16px;font-weight:500;line-height:1.6;letter-spacing:-.35px}.project-over{font-size:8px}.participation{font-size:8px;line-height:1.8}.project-content h4{font-size:9px}.project-content p,.project-content li{font-size:12px}.project-content .project-note{font-size:10px}.filters button{font-size:10px;padding:8px 11px;border-radius:5px}.skills .sk{padding:18px 14px;border-radius:8px}.sk h3{font-size:14px;font-weight:500;letter-spacing:-.3px;line-height:1.55;min-height:42px}.sk p{font-size:11px;line-height:1.9}.sk .ico{width:34px;height:34px;font-size:20px}.skill-proof{font-size:8px;line-height:1.9}.skill-explore{font-size:9px;line-height:1.9}.ed{padding:23px}.ed h3{font-size:17px;font-weight:500}.ed .k{font-size:8px}.ed .t{font-size:12px;font-weight:500}.ed p{font-size:11px}.personal-title h3{font-size:19px;font-weight:500}.personal-title small{font-size:8px}.personal-title p{font-size:11px}.box h3{font-size:13px;line-height:1.7;letter-spacing:.3px}.method b{font-size:11px}.method li>span{font-size:16px}.method small{font-size:10px}.interest b{font-size:10px}.interest span{font-size:26px}.contact h2{font-size:34px;font-weight:500;line-height:1.25;letter-spacing:-1.1px}.contact .lead{font-size:12px;line-height:1.95}.cc{padding:25px!important;min-height:176px}.cc .k{font-size:9px!important;letter-spacing:1.5px}.cc .v{font-size:19px!important;line-height:1.7!important;font-weight:500!important;letter-spacing:-.4px!important}.cc .h{font-size:10px!important}.contact-bottom{font-size:10px}.footer-inner{font-size:9px;line-height:1.9}.footer-inner button,.footer-inner a{font-size:9px}}
@media(prefers-reduced-motion:reduce){.photo>img{transform:none}.hero h1 .grad{color:white}}
.badge,.badge *{font-family:var(--cv-font)!important}
