:root{--ink:#172c42;--muted:#586575;--accent:#a44920;--paper:#fff;--wash:#f3f6f9;--line:#d8e0e7;--font:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);font-size:1rem;line-height:1.65;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:5px}a:hover{color:var(--accent)}a:focus-visible,summary:focus-visible{outline:3px solid #b34c22;outline-offset:6px}p,h1,h2,h3{margin:0}p+p{margin-top:1rem}h1,h2,h3{line-height:1.13;letter-spacing:-.045em}h2{font-size:clamp(2rem,3.5vw,3.1rem);font-weight:600}h3{font-size:1.2rem;letter-spacing:-.02em}button,a,summary{-webkit-tap-highlight-color:transparent}.wrap{width:min(1160px,calc(100% - 80px));margin-inline:auto}.skip-link{position:absolute;left:1rem;top:-5rem;padding:1rem;background:white;z-index:5}.skip-link:focus{top:1rem}.header{display:flex;justify-content:space-between;align-items:center;gap:2rem;padding-block:29px;border-bottom:1px solid var(--line)}.signature{font-size:1.22rem;letter-spacing:-.05em;font-weight:700;text-decoration:none;white-space:nowrap}.signature-dot{color:var(--accent)}nav{display:flex;align-items:center;gap:1.8rem;font-size:.88rem}nav a{text-decoration:none}.nav-contact{border:1px solid var(--ink);border-radius:30px;padding:.42rem 1rem}.hero{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:60px;padding-block:88px 92px}.eyebrow{font-size:.77rem;text-transform:uppercase;letter-spacing:.13em;font-weight:700;color:var(--accent);margin-bottom:1.4rem}h1{font-size:clamp(2.6rem,4.65vw,4.35rem);font-weight:600;line-height:1.08;letter-spacing:-.057em}h1 span{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-style:italic;letter-spacing:-.05em}.hero-intro{font-size:1.13rem;max-width:630px;margin-top:1.7rem;line-height:1.65}.hero-detail{font-size:1rem;color:var(--muted);max-width:560px;margin-top:.8rem}.button{display:inline-flex;align-items:center;gap:28px;background:var(--ink);color:white;border-radius:3px;padding:13px 21px;margin-top:1.6rem;font-size:.94rem;text-decoration:none}.button:hover{background:#294964;color:white}.hero-note{border-top:3px solid var(--ink);border-bottom:1px solid var(--line);padding:20px 0;align-self:stretch;display:flex;flex-direction:column}.note-index{font-size:.74rem;letter-spacing:.1em;color:var(--muted)}.hero-note h2{font-family:Georgia,'Times New Roman',serif;font-size:2.05rem;font-weight:400;line-height:1.12;letter-spacing:-.045em;margin:26px 0 14px}.hero-note>p{font-size:.97rem;color:var(--muted)}.note-bottom{display:flex;flex-direction:column;gap:2px;font-size:.88rem;margin-top:auto;padding-top:28px}.note-bottom a{margin-top:12px}.section{padding-block:64px}.section-heading{max-width:710px;margin-bottom:40px}.section-heading .eyebrow{margin-bottom:14px}.section-heading>p:last-child:not(.eyebrow){margin-top:1.2rem;color:var(--muted);max-width:650px}.project{display:grid;grid-template-columns:115px minmax(0,1fr) 135px;gap:30px;border-top:1px solid var(--line);padding:32px 0}.project:last-child{border-bottom:1px solid var(--line)}.project-id>span{font-family:Georgia,'Times New Roman',serif;font-size:2.2rem;line-height:1;color:#7a8793}.project-id>p{font-size:.8rem;color:var(--muted);line-height:1.65;margin-top:14px}.project-category{font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-bottom:10px}.project h3{font-size:1.9rem;line-height:1.1;margin-bottom:14px}.project-content>p:not(.project-category){max-width:680px}.contribution{color:var(--muted);font-size:.97rem}.contribution strong{color:var(--ink);font-weight:600}.tags{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:19px 0 0;padding:0}.tags li{font-size:.77rem;padding:3px 10px;border:1px solid var(--line);border-radius:3px;line-height:1.5}.project-link{font-size:.875rem;align-self:start;justify-self:end;margin-top:6px;white-space:nowrap}.a2o-section{background:var(--wash);margin-top:28px;padding-block:78px}.split{display:grid;grid-template-columns:.95fr 1.05fr;gap:90px}.split .section-heading{margin:0}.mission-list article{display:flex;gap:20px;margin-bottom:28px}.mission-list article:last-child{margin:0}.mission-number{color:var(--accent);font-size:.8rem;font-weight:600;padding-top:3px}.mission-list h3{margin-bottom:10px}.mission-list p{color:var(--muted);font-size:.97rem}.parcours{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px;padding-block:90px}.timeline article{display:grid;grid-template-columns:120px 1fr;gap:22px;border-top:1px solid var(--line);padding-block:22px}.timeline-date{font-size:.83rem;color:var(--muted)}.timeline h3{font-size:1.04rem;line-height:1.35;margin-bottom:8px}.timeline div>p{font-size:.94rem;color:var(--muted)}.method-section{background:var(--ink);color:#fff;padding:76px 0 68px}.method-section .eyebrow{color:#edb595}.method-section .section-heading>p:last-child{color:#cfdae4}.method-section h2{font-weight:500}.method-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:38px;margin-top:40px}.method-grid article{border-top:1px solid #587082;padding-top:18px}.method-grid article>span{font-size:.8rem;color:#b8c9d8}.method-grid h3{margin:19px 0 12px;font-size:1.25rem}.method-grid p{font-size:.97rem;color:#cfdae4}.disclosure{margin-top:46px;border-top:1px solid #587082;border-bottom:1px solid #587082;padding-block:20px}.disclosure summary{cursor:pointer;font-size:.95rem;list-style:none;display:flex;justify-content:space-between;gap:1rem}.disclosure summary::-webkit-details-marker{display:none}.disclosure summary span{font-size:1.3rem;line-height:1}.disclosure[open] summary span{transform:rotate(45deg)}.disclosure-content{max-width:870px;padding-top:25px;color:#cfdae4;font-size:.95rem}.disclosure-content strong{color:white;font-weight:600}.contact-section{padding-block:80px 86px}.contact-section h2{font-size:clamp(2.2rem,4.5vw,3.5rem)}.contact-section>p:not(.eyebrow){max-width:590px;color:var(--muted);margin-top:20px}.contact-email{display:inline-block;font-size:clamp(1.1rem,2vw,1.5rem);margin-top:26px;text-decoration:none}.contact-email:hover{text-decoration:underline}.contact-links{display:flex;gap:25px;font-size:.9rem;margin-top:24px}.footer{border-top:1px solid var(--line);padding-block:25px;display:flex;flex-wrap:wrap;gap:18px;justify-content:space-between;font-size:.78rem;color:var(--muted)}
@media(min-width:1450px){.hero{padding-block:105px}.hero-note{min-height:375px}}
@media(max-width:1050px){.wrap{width:calc(100% - 48px)}.hero{gap:35px;grid-template-columns:minmax(0,1fr) 230px}.split{gap:42px}.parcours{gap:40px}.project{grid-template-columns:90px minmax(0,1fr);gap:22px}.project-link{grid-column:2;justify-self:start;margin-top:0}.timeline article{grid-template-columns:1fr;gap:6px}nav{gap:1.1rem}}
@media(max-width:720px){html{scroll-padding-top:1rem}.wrap{width:calc(100% - 40px)}.header{padding-block:20px;flex-wrap:wrap;gap:20px}.signature{font-size:1.2rem}nav{gap:20px;width:100%;font-size:.83rem;flex-wrap:wrap}.nav-contact{padding:0;border:0;margin-left:auto}.hero{grid-template-columns:1fr;gap:38px;padding-block:48px 24px}h1{font-size:clamp(2.35rem,8vw,3.8rem);line-height:1.13}.hero-intro{font-size:1.06rem}.hero-note{display:none}.eyebrow{font-size:.72rem;letter-spacing:.1em}.section{padding-block:48px}.section-heading{margin-bottom:30px}.project{grid-template-columns:1fr;gap:14px;padding-block:27px}.project-id{display:flex;gap:15px;align-items:center}.project-id>span{font-size:1.3rem}.project-id>p{margin:0;font-size:.77rem}.project-id br{display:none}.project-id br::after{content:' · '}.project h3{font-size:1.7rem}.project-link{grid-column:1}.project-content>p{font-size:1rem}.project-category{font-size:.75rem!important}.tags li{font-size:.8rem}.split,.parcours{grid-template-columns:1fr;gap:32px}.a2o-section{margin-top:0;padding-block:50px}.mission-list article{gap:16px}.timeline article{grid-template-columns:1fr;gap:8px}.timeline-date{font-size:.85rem}.timeline div>p{font-size:1rem}.method-section{padding-block:50px}.method-grid{grid-template-columns:1fr;gap:26px;margin-top:30px}.method-grid h3{margin:10px 0}.disclosure{margin-top:32px}.contact-section{padding-block:52px}.footer{font-size:.8rem;flex-direction:column;gap:7px}.contact-links{gap:24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.project-id p span{display:block}.tags li{font-size:.875rem}
@media(max-width:720px){.project-id p span{display:inline}.project-id p span::before{content:' · '}}
