
:root{--night:#070f1d;--deep:#050b15;--white:#f4f6fa;--paper:#f1f3f6;--ink:#111d31;--muted:#a4aebb;--blue:#3d76ff;--cyan:#80d5ef;--line:#253040;--body:'Inter',Arial,sans-serif;--display:'Manrope',Arial,sans-serif;color-scheme:dark}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{margin:0;background:var(--night);color:var(--white);font:1rem/1.7 var(--body);overflow-x:clip}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a,summary{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--cyan);outline-offset:7px}::selection{background:#2c61d9;color:#fff}svg{display:block;max-width:100%}h1,h2,h3,p{margin-top:0}.skip-link{position:fixed;top:-100px;left:20px;padding:12px;background:var(--blue);z-index:100}.skip-link:focus{top:20px}.progress{position:fixed;left:0;top:0;height:2px;background:var(--blue);z-index:100;width:0}
.header{position:relative;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:2rem;height:96px;padding-inline:5vw;border-bottom:1px solid var(--line);background:var(--night)}
.brand{display:flex;align-items:center;gap:.6rem;font:700 2rem/1 var(--display);letter-spacing:-.05em;flex-shrink:0}.brand svg{width:43px;height:25px;color:#6392ff}.header nav{display:flex;gap:2.4rem;font-size:.875rem}.header nav a{color:#b6bfcb;transition:color .2s}.header nav a:hover{color:#fff}.header-controls{display:flex;align-items:center;gap:2.4rem;font-size:.875rem}.language-switch{display:flex;align-items:center;gap:7px}.language-switch button{padding:5px 2px;background:none;border:0;font-size:.875rem;color:#8995a8}.language-switch button[aria-pressed=true]{color:#fff}.language-switch>span{color:#566171}.header-contact{padding:.6rem 1rem;border:1px solid #556176;transition:background .25s,border-color .25s}.header-contact:hover{background:#152543;border-color:#8fa5c7}.menu-toggle{display:none}
.hero{position:relative;min-height:calc(100svh - 96px);max-height:1100px;padding:2rem 5vw 0;display:flex;flex-direction:column;overflow:hidden;background:var(--night)}
.hero-top{display:flex;align-items:center;justify-content:space-between;gap:2rem}.small-label{font-size:.75rem;letter-spacing:.12em;color:#b1bdcf}.motion-toggle{display:flex;align-items:center;gap:.6rem;border:0;background:none;padding:0;font-size:.75rem;color:#9eabbf;white-space:nowrap}.motion-icon{color:#95b4f9}
.hero-main{position:relative;flex:1;display:flex;align-items:center;min-height:580px;padding:5rem 0 6rem}.hero-copy{position:relative;z-index:2;width:65%}.hero h1{font-family:var(--display);font-size:clamp(3.5rem,7.4vw,8.6rem);font-weight:500;letter-spacing:-.05em;line-height:1.12;margin:0 0 2.4rem}.title-mask{display:block;overflow:hidden;padding-bottom:.05em}.title-line{display:block;animation:typeEnter 1s cubic-bezier(.16,1,.3,1) both}.title-mask:nth-child(2) .title-line{animation-delay:.12s}.accent{color:#b2c8f4}.hero-description{max-width:26rem;color:#b2bfce;font-size:1rem;line-height:1.8;margin-bottom:2rem}.primary-link{display:inline-flex;align-items:center;gap:2rem;padding:.9rem 1.15rem;background:#e9effa;color:#0c1830;font-size:.875rem;transition:background .25s}.primary-link:hover{background:#a6c2ff}.link-mark{display:inline-flex;align-items:center;justify-content:center;font-size:1.5rem;line-height:1;transition:transform .3s}.primary-link:hover .link-mark{transform:rotate(90deg)}
.hero-art{position:absolute;width:49%;right:-5vw;top:50%;transform:translateY(-52%) rotate(-19deg);pointer-events:none}.infinity-symbol{width:100%;height:auto;overflow:visible}.infinity-track{stroke:#122647;stroke-width:36}.infinity-draw{stroke:#3974fa;stroke-width:36;stroke-dasharray:1;stroke-dashoffset:0;animation:drawInfinity 1.7s .1s cubic-bezier(.65,0,.35,1) both}.infinity-cross{stroke:var(--night);stroke-width:57;animation:crossEnter .4s 1.05s both}.infinity-edge{stroke:#81c8ef;stroke-width:36;animation:crossEnter .4s 1.05s both}.hero-bottom{display:grid;grid-template-columns:1fr 1fr auto;align-items:center;border-top:1px solid #2b3545;padding:1.7rem 0;gap:2rem}.hero-disciplines{display:flex;align-items:center;gap:1rem;font-size:.75rem;letter-spacing:.07em;color:#d6deea}.hero-disciplines i{width:3px;height:3px;background:#73839c}.hero-note{font-size:.75rem;color:#98a7bd;letter-spacing:.03em;justify-self:center}.scroll-label{display:flex;align-items:center;gap:1.25rem;font-size:.75rem;color:#bbc5d4}.scroll-label>span:last-child{height:22px;width:1px;background:#80a7ff;position:relative;overflow:hidden}.scroll-label>span:last-child::after{content:'';position:absolute;top:0;left:0;width:1px;height:8px;background:#fff;animation:scrollCue 2.6s infinite}
.section-pad{padding-inline:5vw}.section-number{font-size:.75rem;letter-spacing:.1em;color:#8595ab;line-height:1.7}.section-kicker{font-size:.875rem;font-weight:400;letter-spacing:.08em;line-height:1.5;margin:0}.focus{padding-block:7rem 8rem;background:var(--deep)}.section-heading{display:grid;grid-template-columns:1fr 5fr 3fr;gap:2rem;align-items:start;margin-bottom:4.5rem}.section-heading .section-number{padding-top:.9rem}.section-heading h2{font:500 clamp(2.2rem,3.3vw,3.8rem)/1.2 var(--display);letter-spacing:-.055em;margin:0}.section-heading>p{font-size:1rem;color:#aebacc;margin:0;justify-self:end}.focus-row{border-top:1px solid #2a3442;position:relative}.focus-row:last-child{border-bottom:1px solid #2a3442}.focus-row summary{display:grid;grid-template-columns:1fr 8fr 30px;gap:2rem;align-items:center;padding:1.7rem 0;cursor:pointer;list-style:none}.focus-row summary::-webkit-details-marker{display:none}.row-number{font-size:.75rem;color:#8391a5}.focus-row h3{font:400 clamp(1.75rem,2.8vw,3.1rem)/1.3 var(--display);letter-spacing:-.045em;margin:0;transition:transform .35s,color .35s}.row-plus{font-size:1.6rem;color:#9caac0;font-weight:400;text-align:right;line-height:1;transition:transform .35s}.focus-row:hover h3{transform:translateX(8px);color:#a7c4ff}.focus-row[open] h3{color:#8eb2ff}.focus-row[open] .row-plus{transform:rotate(45deg)}.focus-row[open]::before{content:'';position:absolute;top:-1px;left:0;width:9%;height:2px;background:var(--blue)}.row-content{display:grid;grid-template-columns:1fr 8fr 30px;gap:2rem;padding:0 0 2.3rem}.row-content p{grid-column:2;margin:0;color:#afbace;font-size:1rem;max-width:35rem;line-height:1.8}
.company{padding-block:7rem 8rem;background:var(--paper);color:var(--ink);color-scheme:light}.company-grid{display:grid;grid-template-columns:1fr 8fr;gap:2rem}.company .section-number{color:#52617a}.company .section-kicker{color:#3e5270}.company-statement{font:500 clamp(2.6rem,4.8vw,5.6rem)/1.17 var(--display);letter-spacing:-.045em;margin:2.8rem 0 3.5rem;max-width:1100px}.company-statement em{color:#3364c8;font-style:normal}.company-bottom{display:grid;grid-template-columns:1fr 1fr;gap:7rem;align-items:start}.company-bottom>p{font-size:1rem;line-height:1.9;color:#52617a;max-width:28rem;margin:0}.principles{display:flex;flex-direction:column;font:500 1.3rem/1.7 var(--display);counter-reset:principle}.principles>span{display:flex;align-items:center;justify-content:space-between;padding:.7rem 0;border-top:1px solid #c5cedb}.principles>span::after{counter-increment:principle;content:'0' counter(principle);color:#7085a5;font:400 .75rem var(--body)}
.journal{background:var(--night);padding-block:5rem 6rem}.journal-heading{display:grid;grid-template-columns:1fr 8fr;gap:2rem;padding-bottom:3rem}.journal-layout{display:grid;grid-template-columns:1fr 2fr;gap:4rem;border-top:1px solid var(--line);padding-top:3rem}.journal-meta{display:flex;flex-direction:column;gap:.75rem;color:#8f9db3;font-size:.75rem;letter-spacing:.06em}.journal-copy h3{font:500 clamp(2rem,3.4vw,4rem)/1.2 var(--display);letter-spacing:-.055em;margin-bottom:1.5rem}.journal-copy p{color:#aebbd0;max-width:38rem;font-size:1rem;margin-bottom:1.7rem}.journal-link{display:flex;justify-content:space-between;gap:2rem;border-bottom:1px solid #607395;padding-bottom:.8rem;max-width:24rem;font-size:.875rem;transition:color .25s,border-color .25s}.journal-link:hover{color:var(--cyan);border-color:var(--cyan)}.journal-link>span:last-child{font-size:1.5rem;line-height:1}
.contact{background:#2457d6;padding-block:3rem 2rem;color:#fff}.contact-top{display:flex;gap:5rem}.contact .section-number{color:#b7caff}.contact-main{display:grid;grid-template-columns:1.2fr 1fr;gap:5rem;align-items:center;padding-block:4.7rem 5.3rem}.contact-main h2{font:500 clamp(4rem,8vw,9rem)/1.05 var(--display);letter-spacing:-.05em;margin:0}.contact-main p{font-size:1rem;color:#d1deff;margin-bottom:1.5rem}.email-link{display:inline-block;font:400 clamp(1.3rem,2.2vw,2.6rem)/1.5 var(--display);letter-spacing:-.04em;border-bottom:1px solid #8baafe;transition:border-color .25s}.email-link:hover{border-color:#fff}.contact-links{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #5a7fe0;padding-top:1.5rem;font-size:.875rem}.contact-links a:hover{text-decoration:underline;text-underline-offset:5px}
.footer{padding:2.5rem 5vw 1.8rem;background:var(--deep)}.footer-wordmark{font:600 23vw/.95 var(--display);letter-spacing:-.09em;margin-left:-.014em;color:#e7edf6;overflow:hidden;padding-bottom:1.6rem}.footer-wordmark>span{color:var(--blue)}.footer-meta{display:flex;justify-content:space-between;gap:1.5rem;border-top:1px solid var(--line);padding-top:1.5rem;color:#8492a9;font-size:.75rem}
.js-motion .reveal{opacity:0;transform:translateY(22px);transition:opacity .8s,transform .8s cubic-bezier(.16,1,.3,1)}.js-motion .reveal.visible{opacity:1;transform:none}.motion-paused{scroll-behavior:auto}.motion-paused *,.motion-paused *::before,.motion-paused *::after{animation-play-state:paused!important}.motion-paused .title-line,.motion-paused .infinity-draw,.motion-paused .infinity-cross,.motion-paused .infinity-edge{animation:none}.motion-paused .reveal{opacity:1;transform:none;transition:none}
@keyframes typeEnter{from{transform:translateY(112%)}to{transform:translateY(0)}}@keyframes drawInfinity{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}@keyframes crossEnter{from{opacity:0}to{opacity:1}}@keyframes scrollCue{0%,20%{transform:translateY(-10px)}80%,100%{transform:translateY(30px)}}
@supports (interpolate-size:allow-keywords){:root{interpolate-size:allow-keywords}.focus-row::details-content{height:0;overflow:hidden;transition:height .35s,content-visibility .35s allow-discrete}.focus-row[open]::details-content{height:auto}}
@media(min-width:701px){.hero:lang(fr) h1{font-size:clamp(3rem,5.75vw,7rem)}}
@media(max-width:1050px){.header{gap:1.5rem}.header nav{gap:1.25rem}.header-controls{gap:1.5rem}.brand{font-size:1.75rem}.brand svg{width:36px}.hero-main{min-height:550px}.hero-art{width:47%;right:-6vw}.hero-bottom{grid-template-columns:1fr auto}.hero-note{display:none}.company-bottom{gap:3rem}.section-heading{grid-template-columns:1fr 5fr 3fr}.contact-main{gap:2rem}}
@media(max-width:700px){html{scroll-padding-top:1rem}.header{height:80px;padding-inline:1.35rem;gap:1rem}.brand{font-size:1.7rem}.brand svg{width:34px}.header-controls{gap:1.2rem}.header-contact{display:none}.menu-toggle{display:flex;align-items:center;gap:.7rem;font-size:.875rem;border:0;background:none;padding:7px 0}.menu-toggle>span:last-child{color:#9bb9ff}.header nav{display:none;position:absolute;top:79px;left:0;right:0;flex-direction:column;align-items:flex-start;padding:2rem 1.35rem;background:#0e1b2e;border-bottom:1px solid #324059;gap:1.4rem}.header nav.open{display:flex}.hero{min-height:calc(100svh - 80px);max-height:none;padding:1.6rem 1.35rem 0}.hero-top{align-items:flex-start;gap:1rem}.small-label{font-size:.75rem;letter-spacing:.05em;max-width:13rem}.motion-label{max-width:65px;text-align:left;line-height:1.4;white-space:normal}.motion-toggle{align-items:flex-start;gap:.4rem}.hero-main{display:flex;flex-direction:column;min-height:0;padding:3.6rem 0 0;align-items:stretch}.hero-copy{width:100%}.hero h1{font-size:clamp(2.9rem,11.65vw,5rem);letter-spacing:-.045em;line-height:1.12;margin-bottom:1.5rem}.hero:lang(fr) h1{font-size:clamp(2.6rem,10.2vw,4.6rem)}.hero-description{font-size:1rem;line-height:1.7;max-width:26rem;margin-bottom:1.5rem}.primary-link{padding:.85rem 1rem;gap:2rem}.hero-art{position:relative;top:auto;right:auto;width:91%;align-self:flex-end;margin:2rem -1.5rem 1.5rem 0;transform:rotate(-16deg)}.hero-bottom{display:flex;justify-content:space-between;align-items:center;padding-block:1.4rem;gap:1rem}.hero-disciplines{font-size:.75rem;gap:.6rem;letter-spacing:0}.scroll-label>span:first-child{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.scroll-label{gap:0}.section-pad{padding-inline:1.35rem}.focus{padding-block:4rem}.section-heading{grid-template-columns:28px 1fr;gap:1rem;margin-bottom:2.3rem}.section-heading h2{font-size:2.25rem}.section-heading .section-number{padding-top:.5rem}.section-heading>p{grid-column:2;justify-self:start;margin-top:.5rem}.focus-row summary{grid-template-columns:24px 1fr 22px;gap:1rem;padding-block:1.45rem}.focus-row h3{font-size:clamp(1.4rem,5.4vw,2rem);line-height:1.4;letter-spacing:-.035em}.focus-row:hover h3{transform:none}.row-content{grid-template-columns:24px 1fr 22px;gap:1rem;padding-bottom:1.7rem}.row-content p{font-size:1rem;line-height:1.75}.company{padding-block:3.5rem 4rem}.company-grid{grid-template-columns:28px 1fr;gap:1rem}.company-statement{font-size:clamp(2rem,8.3vw,3.5rem);line-height:1.2;margin:2rem 0}.company-bottom{grid-template-columns:1fr;gap:2.5rem}.company-bottom>p{font-size:1rem}.principles{font-size:1.15rem}.journal{padding-block:3rem}.journal-heading{grid-template-columns:28px 1fr;gap:1rem;padding-bottom:2rem}.journal-layout{grid-template-columns:1fr;gap:2rem;padding-top:2rem}.journal-meta{gap:.4rem}.journal-copy h3{font-size:2.3rem}.journal-copy p{font-size:1rem}.journal-link{max-width:none}.contact{padding-block:2.5rem 1.5rem}.contact-top{gap:1.5rem}.contact-main{grid-template-columns:1fr;gap:2rem;padding-block:3rem}.contact-main h2{font-size:clamp(3.3rem,14vw,5.5rem)}.contact-main:lang(fr) h2{font-size:12vw}.email-link{font-size:clamp(1.5rem,6vw,2.3rem)}.contact-main p{font-size:1rem;max-width:18rem}.footer{padding:2rem 1.35rem 1.5rem}.footer-wordmark{font-size:23vw;padding-bottom:1.2rem}.footer-meta{flex-direction:column;gap:.5rem}.section-kicker{font-size:.875rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.js-motion .reveal{opacity:1!important;transform:none!important}}

