:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0a0a0a;--ink:#f2f2ef;--muted:#8c8c88;--soft:#bdbdb8;--line:#ffffff24;--raise:#111;--sheet:#0e0e0e;--accent:#46dce6;--on-accent:#021012;--font-display:"Bodoni Moda", "Didot", "Bodoni 72", Georgia, serif;--font-sans:"Geist", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"Geist Mono", ui-monospace, "SF Mono", Menlo, monospace;--ease-out:cubic-bezier(.16, 1, .3, 1);--side-l:max(clamp(16px, 2.3vw, 32px), env(safe-area-inset-left,0px));--side-r:max(clamp(16px, 2.3vw, 32px), env(safe-area-inset-right,0px));--extra:clamp(0px, calc(2.3vw - 16px), 16px);--top:calc(clamp(18px, 2.2vw, 30px) + env(safe-area-inset-top,0px));--bottom:calc(clamp(16px, 2vw, 28px) + env(safe-area-inset-bottom,0px));--stone-y:44%;--stone-half:260px;--stone-hh:320px;--name-size:200px}html{scroll-behavior:smooth}html.lenis,html.lenis body{height:auto}html.lenis{scroll-behavior:auto!important}.lenis.lenis-stopped{overflow:clip}.lenis [data-lenis-prevent]{overscroll-behavior:contain}body{background:var(--bg);color:var(--ink);font-family:var(--font-sans);padding-left:max(16px, env(safe-area-inset-left,0px));padding-right:max(16px, env(safe-area-inset-right,0px));-webkit-font-smoothing:antialiased;font-size:15px;line-height:22px;overflow-x:hidden}a{color:inherit}button{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}::selection{background:var(--accent);color:var(--on-accent)}#stage,#sky2d{z-index:1;pointer-events:none;width:100%;height:100%;display:block;position:fixed;inset:0}main{z-index:2;position:relative}.wrap{max-width:1440px;padding-inline:var(--extra);margin:0 auto}.names{z-index:0;pointer-events:none;height:100svh;position:fixed;top:0;left:0;right:0;overflow:hidden}body.no-cine .names{position:absolute}.names span{top:var(--stone-y);font-family:var(--font-display);font-style:italic;font-weight:500;font-size:var(--name-size);letter-spacing:-.035em;font-variation-settings:"opsz" 96;white-space:nowrap;color:var(--ink);opacity:var(--names-o,1);transition:translate 1.6s var(--ease-out) 1s, filter 1.6s var(--ease-out) 1s;line-height:1;position:absolute}.names .names__l{right:calc(50% + var(--stone-half) * .62);transform:translate(calc(var(--split,0) * -26vw), -54%)}.names .names__r{left:calc(50% + var(--stone-half) * .62);transform:translate(calc(var(--split,0) * 26vw), -54%)}body.stacked .names .names__l{right:auto;left:var(--side-l);top:calc(var(--stone-y) - var(--stone-hh) * .72);transform:translate(calc(var(--split,0) * -60vw), -100%)}body.stacked .names .names__r{left:auto;right:var(--side-r);top:calc(var(--stone-y) + var(--stone-hh) * .62);transform:translate(calc(var(--split,0) * 60vw), 0)}body.is-intro .names .names__l{filter:blur(18px)opacity(0);translate:-10vw}body.is-intro .names .names__r{filter:blur(18px)opacity(0);translate:10vw}.veil{z-index:60;background:var(--bg);transition:opacity .7s var(--ease-out), visibility .7s;place-items:center;display:grid;position:fixed;inset:0}.veil.is-gone{opacity:0;visibility:hidden;pointer-events:none}.veil svg{width:56px;height:56px;transition:transform .7s var(--ease-out);overflow:visible}.veil.is-gone svg{transform:scale(.86)}.veil .m-body{fill:var(--ink);fill-opacity:0;stroke:var(--ink);stroke-opacity:0;stroke-width:1.5px;stroke-linejoin:round;stroke-dasharray:190;stroke-dashoffset:190px}.veil .m-facets{fill:none;stroke:var(--bg);stroke-width:2.5px;stroke-linecap:round;stroke-linejoin:round;opacity:0}.veil.is-drawing .m-body{animation:vdraw .9s var(--ease-out) forwards, vfill .35s .8s ease forwards}.veil.is-drawing .m-facets{animation:.3s 1s forwards vfade}.veil.is-still .m-body{stroke-dashoffset:0;stroke-opacity:1;fill-opacity:1}.veil.is-still .m-facets{opacity:1}@keyframes vdraw{0%{stroke-opacity:0}8%{stroke-opacity:1}to{stroke-dashoffset:0;stroke-opacity:1}}@keyframes vfill{to{fill-opacity:1}}@keyframes vfade{to{opacity:1}}.top{z-index:10;padding:var(--top) var(--side-r) 14px var(--side-l);transition:background-color .4s, filter 1s var(--ease-out) .6s, translate 1s var(--ease-out) .6s;justify-content:space-between;align-items:center;gap:16px;display:flex;position:fixed;top:0;left:0;right:0}.top:before{content:"";z-index:-1;background:linear-gradient(var(--bg) 30%, #0a0a0a00);opacity:0;pointer-events:none;transition:opacity .4s;position:absolute;inset:0}.top.is-solid:before{opacity:1}body.is-intro .top{filter:opacity(0);translate:0 -8px}.brand{border-radius:4px;align-items:center;gap:10px;text-decoration:none;display:inline-flex}.brand svg{width:26px;height:26px;color:var(--ink)}.brand span{font-family:var(--font-display);letter-spacing:-.01em;font-size:21px;font-style:italic;font-weight:500}.top__nav{align-items:center;gap:26px;font-size:14px;display:flex}.top__nav a{color:var(--muted);text-decoration:none;transition:color .16s}.top__nav a:hover,.top__nav a.is-current{color:var(--ink)}.top__nav a sup{font:400 10px/1 var(--font-mono);color:var(--muted);margin-left:3px}.kbd-btn{border:1px solid var(--line);cursor:pointer;height:32px;color:var(--muted);background:0 0;border-radius:8px;align-items:center;gap:8px;padding:0 6px 0 12px;font-size:13px;transition:color .16s,border-color .16s;display:inline-flex}.kbd-btn:hover{color:var(--ink);border-color:var(--muted)}kbd{font:500 11px/1 var(--font-mono);color:var(--ink);background:#ffffff14;border-radius:5px;padding:4px 6px}.top__menu{display:none}.hero-track{height:145svh;position:relative}body.no-cine .hero-track{height:auto}.hero{height:100svh;position:sticky;top:0}.hero>*{opacity:var(--hero-ui,1)}.hero-off .cue{pointer-events:none}.flare{z-index:1;pointer-events:none;opacity:0;background:radial-gradient(38% 34% at 50% 47%,#ffffff0f 0%,#ffffff05 45%,#0a0a0a00 80%);position:fixed;inset:0}body.cine #projets:not(.is-shown) .rv-t .c,body.cine #projets:not(.is-shown) .rv-t sup{opacity:0;filter:blur(10px);transition:opacity .35s var(--ease-out), transform .45s var(--ease-out), filter .35s var(--ease-out);transition-delay:0s;transform:translateY(.45em)}body.cine .pj-a{opacity:0;transition:opacity .35s var(--ease-out), translate .45s var(--ease-out);translate:0 40px}body.cine #projets.is-shown .pj-a{opacity:1;transition:opacity .9s var(--ease-out), translate 1.1s var(--ease-out);transition-delay:var(--d,0s);translate:0}body.cine #featMedia{opacity:0;filter:blur(14px);pointer-events:none;transition:opacity .35s var(--ease-out), scale .45s var(--ease-out), filter .35s var(--ease-out);scale:1.06}body.cine #projets.is-shown #featMedia{opacity:1;filter:none;pointer-events:auto;transition:opacity 1.1s var(--ease-out) .18s, scale 1.6s var(--ease-out) .18s, filter 1.1s var(--ease-out) .18s;scale:1}.hero>*{transition:filter 1s var(--ease-out) .6s, translate 1s var(--ease-out) .6s}body.is-intro .hero>*{filter:opacity(0);translate:0 10px}.status{left:calc(var(--side-l) - max(16px, env(safe-area-inset-left,0px)));bottom:var(--bottom);margin:0;font-size:14px;line-height:21px;position:absolute}.status p{margin:0}.status p+p{color:var(--muted)}.status time,.contact time{font-variant-numeric:tabular-nums}.dot{background:var(--accent);vertical-align:2px;border-radius:50%;width:6px;height:6px;margin-right:8px;display:inline-block;position:relative}.dot:after{content:"";border-radius:inherit;background:inherit;animation:ping 2.4s var(--ease-out) infinite;position:absolute;inset:0}@keyframes ping{0%{opacity:.6;transform:scale(1)}to{opacity:0;transform:scale(3.2)}}.lede{right:calc(var(--side-r) - max(16px, env(safe-area-inset-right,0px)));bottom:var(--bottom);text-align:right;max-width:27ch;margin:0;font-size:14px;line-height:21px;position:absolute}.cue{left:50%;bottom:var(--bottom);color:var(--muted);white-space:nowrap;font-variant-numeric:tabular-nums;align-items:center;gap:8px;padding:6px 2px;font-size:13px;line-height:18px;text-decoration:none;transition:color .16s;display:inline-flex;position:absolute;transform:translate(-50%)}.cue svg{width:15px;height:15px;transition:transform .35s var(--ease-out), opacity .4s}.cue:hover{color:var(--ink)}.cue:hover svg{transform:translateY(3px)}.cue.is-counting svg{opacity:0}body.stacked .lede{display:none}.sec{padding-block:clamp(96px,14vh,168px);scroll-margin-top:40px}.sec__head{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:24px 40px;margin-bottom:clamp(36px,5vw,64px);display:grid}.label{font:400 12px/16px var(--font-mono);color:var(--soft);letter-spacing:.02em;align-items:center;gap:10px;margin:0 0 18px;display:flex}.label:before{content:"";background:var(--accent);width:18px;height:1px}.h2{font-family:var(--font-display);letter-spacing:-.03em;font-variation-settings:"opsz" 28;text-wrap:balance;margin:0;font-size:clamp(48px,7.2vw,124px);font-style:italic;font-weight:600;line-height:.95}.h2 sup{font:400 clamp(12px, 1.1vw, 15px)/1 var(--font-mono);letter-spacing:0;vertical-align:top;color:var(--muted);margin-left:.3em;font-style:normal}.intro{max-width:46ch;color:var(--soft);margin:0;font-size:17px;line-height:27px}.note{font:400 11px/16px var(--font-mono);color:var(--muted);margin:20px 0 0}.car__ctrl{align-items:center;gap:16px;display:flex}.car__count{font:400 13px/1 var(--font-mono);color:var(--soft);font-variant-numeric:tabular-nums;text-align:right;min-width:64px}.car__count b{color:var(--ink);font-weight:400}.rbtn{border:1px solid var(--line);cursor:pointer;width:52px;height:52px;color:var(--ink);background:#0a0a0a99;border-radius:50%;place-items:center;transition:background-color .2s,color .2s,border-color .2s;display:grid}.rbtn svg{width:18px;height:18px}.rbtn:hover{background:var(--ink);color:var(--bg);border-color:var(--ink)}.feat{grid-template-columns:minmax(0,5fr) minmax(0,7fr);align-items:center;gap:32px clamp(32px,4.5vw,80px);display:grid}.feat__info{min-width:0}.feat__num{font:400 13px/18px var(--font-mono);color:var(--soft);font-variant-numeric:tabular-nums;margin:0}.feat__num b{color:var(--accent);font-weight:400}.feat__name{font-family:var(--font-display);letter-spacing:-.03em;font-variation-settings:"opsz" 28;margin:14px 0 0;font-size:clamp(56px,6.6vw,116px);font-style:italic;font-weight:600;line-height:.95}.feat__kind{color:var(--soft);margin:14px 0 0;font-size:15px}.feat__desc{max-width:40ch;margin:26px 0 0;font-size:19px;line-height:29px}.feat__stack{color:var(--soft);margin:14px 0 0;font-size:14px}.feat__actions{flex-wrap:wrap;align-items:center;gap:16px 26px;margin-top:34px;display:flex}.feat__info .ln{padding-bottom:.08em;display:block;overflow:hidden}.feat__info .ln>*{display:block}.feat__actions .ln{display:inline-block}.feat__info.is-swap .ln>*{animation:rise .7s var(--ease-out) both;animation-delay:calc(var(--sd,0s) + var(--i,0) * 45ms)}.feat__name .ln{overflow:visible}.feat__name .w{white-space:nowrap;display:inline-block}.feat__name .c{display:inline-block}.feat__info.is-swap .feat__name .ln>*{animation:none}.feat__info.is-swap .feat__name .c{animation:chIn .9s var(--ease-out) both;animation-delay:calc(var(--sd,0s) + 50ms + var(--j,0) * 26ms)}@keyframes chIn{0%{opacity:0;filter:blur(10px);transform:translateY(.45em)}}@keyframes rise{0%{opacity:0;transform:translateY(105%)}to{opacity:1;transform:none}}.feat__media{aspect-ratio:16/10;cursor:pointer;background:var(--raise);clip-path:polygon(0 0,calc(100% - 44px) 0,100% 44px,100% 100%,0 100%);touch-action:pan-y;border:0;width:100%;padding:0;display:block;position:relative;overflow:hidden}.fm-layer{position:absolute;inset:0;overflow:hidden}.fm-zoom{transition:transform 1.2s var(--ease-out);position:absolute;inset:0}.feat__media:hover .fm-zoom{transform:scale(1.03)}.fm-zoom img{object-fit:cover;width:100%;height:100%;display:block;position:absolute;inset:0}.strip{scrollbar-width:none;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;gap:14px;margin-top:clamp(32px,4vw,52px);display:grid}.strip::-webkit-scrollbar{display:none}.thumb{border:0;border-top:1px solid var(--line);cursor:pointer;text-align:left;min-width:0;color:var(--muted);background:0 0;flex-direction:column;gap:10px;padding:14px 0 0;transition:color .2s;display:flex;position:relative}.thumb:before{content:"";background:var(--accent);transform-origin:0;width:100%;height:2px;transition:transform .5s var(--ease-out);position:absolute;top:-1px;left:0;transform:scaleX(0)}.thumb[aria-selected=true]{color:var(--ink)}.thumb[aria-selected=true]:before{transform:scaleX(1)}.thumb canvas{aspect-ratio:16/10;background:var(--raise);opacity:.42;clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,0 100%);width:100%;transition:opacity .3s;display:block}.thumb:hover canvas{opacity:.8}.thumb[aria-selected=true] canvas{opacity:1}.thumb span{white-space:nowrap;text-overflow:ellipsis;align-items:baseline;gap:8px;min-width:0;font-size:13px;line-height:18px;display:flex;overflow:hidden}.thumb b{font:400 11px/1 var(--font-mono)}.tlink{border:0;border-bottom:1px solid var(--ink);cursor:pointer;white-space:nowrap;background:0 0;flex:none;align-items:center;gap:8px;padding:0 0 4px;font-size:15px;font-weight:500;text-decoration:none;display:inline-flex}.tlink svg{width:16px;height:16px;transition:transform .3s var(--ease-out)}.tlink:hover svg{transform:translate(3px,-3px)}.mos{pointer-events:none;position:relative}.mos__cv{pointer-events:none;display:block;position:absolute}.contact{overflow-x:clip}.mos--mark{aspect-ratio:1;width:min(300px,64%);margin-top:clamp(40px,6vw,80px)}.mos--icon{aspect-ratio:1.25;width:min(190px,70%);margin-bottom:22px}.mos--num{aspect-ratio:.8;width:clamp(72px,7vw,104px)}.mos--stairs{aspect-ratio:1.4;width:min(230px,100%);margin-bottom:22px}.mos--stone{aspect-ratio:.8;place-self:center;width:min(360px,86%)}body:not(.mos-on) .mos{display:none}body.mos-on .step__n{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.head-aside{flex-direction:column;align-items:flex-start;display:flex}.about{grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:start;gap:48px clamp(40px,6vw,120px);display:grid}.about__big{font-family:var(--font-display);letter-spacing:-.02em;font-variation-settings:"opsz" 24;text-wrap:balance;margin:0;font-size:clamp(32px,3.6vw,58px);font-weight:500;line-height:1.1}.about__big em{color:var(--accent);font-style:italic}.about__text p{color:#cfcfcb;max-width:52ch;margin:0 0 18px;font-size:17px;line-height:27px}.facts{grid-template-columns:1fr 1fr;gap:0 32px;margin:36px 0 0;display:grid}.facts div{border-top:1px solid var(--line);padding:16px 0}.facts .facts__wide{grid-column:1/-1}.facts dt{color:var(--muted);font-size:13px}.facts dd{font-family:var(--font-display);font-variation-settings:"opsz" 24;letter-spacing:-.02em;font-variant-numeric:lining-nums;margin:6px 0 0;font-size:clamp(34px,3vw,48px);font-style:italic;font-weight:600;line-height:1}.layers{border-top:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.layer{border-left:1px solid var(--line);padding:28px clamp(16px,2vw,32px) 36px;transition:background-color .4s;position:relative}.layer:first-child{border-left:0;padding-left:0}.layer:before{content:"";background:var(--accent);transform-origin:0;height:2px;transition:transform .6s var(--ease-out);position:absolute;top:-1px;left:0;right:0;transform:scaleX(0)}.layer:hover:before{transform:scaleX(1)}.layer__stack{font:400 12px/20px var(--font-mono);color:var(--muted);margin:18px 0 0}.layer__name{justify-items:start;display:grid}.layer__name .nm{transition:opacity .4s var(--ease-out);grid-area:1/1}.layer__name .nm-b,.layer.is-tech .nm-a{opacity:0}.layer.is-tech .nm-b{opacity:1}@media (hover:hover){.layer:hover .nm-a{opacity:0}.layer:hover .nm-b{opacity:1}}.js-rv .layer .layer__name .nm{opacity:1;transition:none}.js-rv .layer__name.rv-t .nm-b .c{opacity:0;filter:blur(10px);transition:opacity .3s var(--ease-out), transform .4s var(--ease-out), filter .3s var(--ease-out);transition-delay:0s;transform:translateY(.45em)}.js-rv .layer.hov .layer__name.in .nm-a .c{transition-delay:calc(.1s + var(--j,0) * 24ms)}.js-rv .layer.is-tech .layer__name.in .nm-a .c{opacity:0;filter:blur(10px);transition:opacity .3s var(--ease-out), transform .4s var(--ease-out), filter .3s var(--ease-out);transition-delay:calc(var(--j,0) * 18ms);transform:translateY(-.35em)}.js-rv .layer.is-tech .layer__name.in .nm-b .c{opacity:1;filter:none;transition:opacity .7s var(--ease-out), transform .9s var(--ease-out), filter .7s var(--ease-out);transition-delay:calc(.1s + var(--j,0) * 26ms);transform:none}@media (hover:hover){.js-rv .layer:hover .layer__name.in .nm-a .c{opacity:0;filter:blur(10px);transition:opacity .3s var(--ease-out), transform .4s var(--ease-out), filter .3s var(--ease-out);transition-delay:calc(var(--j,0) * 18ms);transform:translateY(-.35em)}.js-rv .layer:hover .layer__name.in .nm-b .c{opacity:1;filter:none;transition:opacity .7s var(--ease-out), transform .9s var(--ease-out), filter .7s var(--ease-out);transition-delay:calc(.1s + var(--j,0) * 26ms);transform:none}}.layer__name{font-family:var(--font-display);font-variation-settings:"opsz" 28;letter-spacing:-.03em;margin:0 0 12px;font-size:clamp(48px,5.4vw,92px);font-style:italic;font-weight:600;line-height:.9}.layer__lede{color:#cfcfcb;max-width:34ch;margin:0 0 26px;font-size:15px;line-height:23px}.layer ul{margin:0;padding:0;list-style:none}.layer li{transition:color .2s, padding .3s var(--ease-out);border-bottom:1px solid #ffffff12;justify-content:space-between;gap:12px;padding:9px 0;font-size:15px;display:flex}.layer li span{font:400 12px/22px var(--font-mono);color:var(--muted)}.layer:hover li{color:var(--ink)}.layer li:hover{padding-left:6px}.steps{grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(16px,2vw,32px);margin:0;padding:0;list-style:none;display:grid}.step{border-top:1px solid var(--line);padding-top:20px}.step__n{font-family:var(--font-display);letter-spacing:-.03em;color:var(--muted);font-variant-numeric:lining-nums;font-size:clamp(56px,5vw,84px);font-style:italic;font-weight:400;line-height:.9;transition:color .3s;display:block}.step:hover .step__n{color:var(--accent)}.step h3{margin:22px 0 10px;font-size:19px;font-weight:500;line-height:26px}.step p{color:#cfcfcb;margin:0;font-size:15px;line-height:23px}.step small{font:400 12px/16px var(--font-mono);color:var(--muted);margin-top:14px;display:block}.career{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.job{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,3fr) minmax(0,4fr) minmax(0,5fr);align-items:baseline;gap:12px 40px;padding:28px 0;transition:background-color .3s;display:grid}.job__when{font-family:var(--font-display);font-variation-settings:"opsz" 24;letter-spacing:-.02em;font-variant-numeric:lining-nums;font-size:clamp(26px,2.4vw,38px);font-style:italic;font-weight:600;line-height:1}.job__when small{font:400 12px/16px var(--font-mono);letter-spacing:0;color:var(--muted);margin-top:8px;font-style:normal;display:block}.job__role{margin:0;font-size:19px;font-weight:500;line-height:26px}.job__role>span:not([class]){color:var(--muted);margin-top:4px;font-size:14px;font-weight:400;display:block}.job__desc{color:#cfcfcb;margin:0;font-size:15px;line-height:23px}.job__tags{color:var(--muted);margin-top:10px;font-size:13px;display:block}.job:hover .job__when{color:var(--accent)}.contact{min-height:100svh;padding-block:calc(var(--top) + 72px) 0;flex-direction:column;display:flex}.contact>.contact__in{flex:1;align-content:center}.contact__in{box-sizing:border-box;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:40px;width:100%;display:grid}.contact__title{font-family:var(--font-display);letter-spacing:-.03em;font-variation-settings:"opsz" 28;text-wrap:balance;margin:0;font-size:clamp(50px,6.6vw,116px);font-style:italic;font-weight:600;line-height:.95}.contact__text{color:#cfcfcb;max-width:46ch;margin:28px 0 0;font-size:17px;line-height:27px}.mail{flex-wrap:wrap;align-items:center;gap:14px 20px;margin-top:40px;display:flex}.mail a{font-family:var(--font-display);font-variation-settings:"opsz" 24;letter-spacing:-.02em;text-underline-offset:8px;text-decoration:underline;text-decoration-thickness:1px;-webkit-text-decoration-color:var(--muted);text-decoration-color:var(--muted);-webkit-user-select:all;user-select:all;word-break:break-all;font-size:clamp(30px,3.4vw,56px);font-style:italic;font-weight:600;line-height:1}.mail a:hover{-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}.pill{background:var(--ink);height:44px;color:var(--bg);cursor:pointer;white-space:nowrap;border:0;border-radius:999px;align-items:center;gap:8px;padding:0 20px;font-size:15px;font-weight:500;transition:background-color .2s;display:inline-flex}.pill:hover{background:var(--accent);color:var(--on-accent)}.pill svg{width:16px;height:16px}.contact__meta{color:var(--muted);flex-wrap:wrap;gap:14px 36px;margin-top:44px;font-size:14px;display:flex}.contact__meta a{color:var(--ink);border-bottom:1px solid var(--line);padding-bottom:2px;text-decoration:none}.contact__meta a:hover{border-color:var(--ink)}.contact footer{box-sizing:border-box;width:100%;margin-top:48px}.foot{padding-block:24px var(--bottom);border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 24px;font-size:13px;display:flex}.foot a{color:var(--ink);text-decoration:none}.cursor{z-index:15;pointer-events:none;background:var(--ink);width:88px;height:88px;color:var(--bg);transition:transform .35s var(--ease-out);border-radius:50%;place-items:center;margin:-44px 0 0 -44px;font-size:13px;font-weight:500;display:grid;position:fixed;top:0;left:0;transform:scale(0)}.cursor.is-on{transform:scale(1)}.js-rv{--kd:.11s}.rv-t .w{white-space:nowrap;display:inline-block}.rv-t .c{display:inline-block}.js-rv .rv-t .c,.js-rv .rv-t sup{opacity:0;filter:blur(10px);transition:opacity .35s var(--ease-out), transform .45s var(--ease-out), filter .35s var(--ease-out);transform:translateY(.45em)}.js-rv .rv-t sup{transform:none}.js-rv .rv-t.in .c{opacity:1;filter:none;transition:opacity .8s var(--ease-out), transform 1s var(--ease-out), filter .8s var(--ease-out);transition-delay:calc(var(--k,0) * var(--kd) + var(--i,0) * var(--st,26ms));transform:none}.js-rv .rv-t.in sup{opacity:1;filter:none;transition:opacity .8s var(--ease-out) .42s, filter .8s var(--ease-out) .42s}.js-rv .rv{opacity:0;transition:opacity .4s var(--ease-out), translate .5s var(--ease-out);translate:0 24px}.js-rv .rv.in{opacity:1;transition:opacity 1s var(--ease-out) .25s, translate 1.1s var(--ease-out) .25s;translate:0}.seam{position:relative}.seam-wrap{pointer-events:none;position:absolute;top:0;left:0;right:0}.mos--seam{height:2px;translate:0 -1px}body.no-gl .seam-wrap:before{content:"";background:radial-gradient(circle,#ffffff4d 1px,#fff0 1.6px) 0/7px 3px repeat-x;height:3px;display:block;translate:0 -1px}.js-rv .layers,.js-rv .career,.js-rv .step,.js-rv .facts div{border-top-color:#0000;position:relative}.js-rv .job{border-bottom-color:#0000;position:relative}.js-rv .layer{border-left-color:#0000}.js-rv .layers:before,.js-rv .career:before,.js-rv .step:before,.js-rv .facts div:before,.js-rv .job:after{content:"";background:var(--line);transform-origin:0;height:1px;transition:transform .5s var(--ease-out);position:absolute;top:-1px;left:0;right:0;transform:scaleX(0)}.js-rv .job:after{top:auto;bottom:-1px}.js-rv .layer:not(:first-child):after{content:"";background:var(--line);transform-origin:top;width:1px;transition:transform .5s var(--ease-out);position:absolute;top:0;bottom:0;left:-1px;transform:scaleY(0)}.js-rv .layers.in:before,.js-rv .career.in:before,.js-rv .steps .step.in:before,.js-rv .career .job.in:after,.js-rv .about__text.in .facts div:before,.js-rv .layers .layer.in:after{transition:transform 1.3s var(--ease-out);transform:none}.js-rv .steps .step.in:before{transition-delay:calc(var(--k,0) * var(--kd))}.js-rv .career .job.in:after{transition-delay:.15s}.js-rv .about__text.in .facts div:before{transition-delay:calc(.45s + var(--f,0) * .11s)}.js-rv .layers .layer.in:after{transition-delay:calc(.25s + var(--k,0) * var(--kd))}.js-rv .rv-s>*>:not(.rv-t){opacity:0;transition:opacity .4s var(--ease-out), translate .5s var(--ease-out);translate:0 22px}.js-rv .rv-s>.in>:not(.rv-t){opacity:1;transition:opacity .9s var(--ease-out), translate 1s var(--ease-out);transition-delay:calc(.3s + var(--k,0) * var(--kd));translate:0}.js-rv .rv-s>*>.step__n{transition:opacity .4s var(--ease-out), translate .5s var(--ease-out), color .3s}.js-rv .rv-s>.in>.step__n{transition:opacity .9s var(--ease-out) calc(.3s + var(--k,0) * var(--kd)), translate 1s var(--ease-out) calc(.3s + var(--k,0) * var(--kd)), color .3s}.sheet{z-index:20;overscroll-behavior:contain;background:var(--sheet);color:var(--ink);position:fixed;inset:0;overflow-y:auto}.sheet.is-in{animation:carve .75s var(--ease-out) both}.sheet.is-out{animation:.45s cubic-bezier(.5,0,.75,0) both uncarve}@keyframes carve{0%{clip-path:inset(100% 0 0)}to{clip-path:inset(0)}}@keyframes uncarve{0%{clip-path:inset(0)}to{clip-path:inset(100% 0 0)}}.sheet__in{max-width:1240px;padding:calc(var(--top) + 4px) var(--side-r) 64px var(--side-l);margin:0 auto}.sheet.is-in .sheet__in>*{animation:rise .8s var(--ease-out) both;animation-delay:calc(.18s + var(--i,0) * 60ms)}.sheet__bar{font:400 12px/16px var(--font-mono);color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 16px;display:flex}.sheet__bar div{gap:8px;display:flex}.tbtn{white-space:nowrap;border:1px solid var(--line);cursor:pointer;height:32px;font:400 13px/1 var(--font-sans);color:var(--ink);background:0 0;border-radius:8px;align-items:center;gap:8px;padding:0 10px;display:inline-flex}.tbtn:hover{border-color:var(--muted)}.sheet__head{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:24px;margin-top:clamp(40px,8vh,96px);display:grid}.sheet__title{font-family:var(--font-display);letter-spacing:-.03em;font-variation-settings:"opsz" 32;margin:0;font-size:clamp(56px,9vw,150px);font-style:italic;font-weight:600;line-height:.92}.sheet__kind{color:var(--muted);text-align:right;margin:0 0 10px;font-size:14px}.sheet__img{aspect-ratio:16/10;background:var(--raise);max-width:100%;margin:36px 0 0;overflow:hidden}.sheet__img img{object-fit:cover;width:100%;height:100%;display:block}.sheet__grid{grid-template-columns:minmax(0,7fr) minmax(0,4fr);gap:32px 64px;margin-top:56px;display:grid}.sheet__story section+section{margin-top:36px}.sheet h3{color:var(--muted);margin:0 0 10px;font-size:13px;font-weight:400}.sheet__story p{max-width:58ch;margin:0;font-size:18px;line-height:29px}.coupe{margin:0 0 40px}.coupe div{grid-template-columns:112px 1fr;gap:12px;padding:14px;display:grid}.coupe div:first-child{background:#ffffff06}.coupe div:nth-child(2){background:#ffffff0b}.coupe div:nth-child(3){background:#ffffff12}.coupe dt{color:var(--muted);align-items:center;gap:8px;font-size:13px;display:flex}.coupe dd{margin:0;font-size:14px}.figs{margin:0}.figs div{border-bottom:1px solid var(--line);justify-content:space-between;gap:16px;padding:10px 0;display:flex}.figs dt{color:var(--muted);font-size:14px}.figs dd{font-family:var(--font-display);font-variant-numeric:lining-nums tabular-nums;margin:0;font-size:24px;font-style:italic;font-weight:600;line-height:1}.sheet__note{color:var(--muted);margin:16px 0 0;font-size:12px}.sheet__stackv{margin:0 0 32px;font-size:16px;line-height:25px}.sheet__muted{color:var(--soft);margin:0 0 24px;font-size:15px}.links{flex-direction:column;gap:8px;margin:0 0 24px;padding:0;list-style:none;display:flex}.links a{color:var(--ink);text-underline-offset:4px;text-decoration:underline;-webkit-text-decoration-color:var(--muted);text-decoration-color:var(--muted);font-size:16px}.links a:hover{-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}.did{margin:0;padding:0;list-style:none}.did li{border-bottom:1px solid var(--line);padding:10px 0 10px 24px;font-size:17px;line-height:26px;position:relative}.did li:before{content:"";background:var(--accent);width:12px;height:1px;position:absolute;top:22px;left:0}.sheet__shots{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));align-items:start;gap:20px;margin-top:56px;display:grid}.sheet__shot{margin:0}.sheet__shot img{border:1px solid var(--line);background:var(--raise);width:100%;height:auto;display:block}.labo{max-width:70ch;color:var(--soft);margin:26px 0 0;font-size:15px;line-height:23px}.sheet__next{border:0;border-top:1px solid var(--line);cursor:pointer;text-align:left;background:0 0;justify-content:space-between;align-items:baseline;gap:24px;width:100%;margin-top:88px;padding:28px 0 0;display:flex}.sheet__next span{color:var(--muted);font-size:13px}.sheet__next em{font-family:var(--font-display);font-variation-settings:"opsz" 28;letter-spacing:-.03em;transition:transform .5s var(--ease-out);font-size:clamp(40px,6vw,88px);font-style:italic;font-weight:600;line-height:1}.sheet__next:hover em{transform:translate(-12px)}.cmd{z-index:30;padding:14vh var(--side-r) 0 var(--side-l);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0a0a0acc;place-items:start center;display:grid;position:fixed;inset:0}.cmd__box{border:1px solid var(--line);background:var(--raise);width:min(560px,100%);animation:pop .22s var(--ease-out) both;border-radius:14px;overflow:hidden;box-shadow:0 30px 80px -20px #000}@keyframes pop{0%{opacity:0;transform:translateY(-8px)scale(.98)}to{opacity:1;transform:none}}.cmd__field{border-bottom:1px solid var(--line);font:400 15px/1 var(--font-mono);color:var(--accent);align-items:center;gap:10px;padding:0 16px;display:flex}.cmd__field input{height:52px;color:var(--ink);font:400 15px/1 var(--font-sans);background:0 0;border:0;outline:0;flex:1}.cmd__field input::placeholder{color:var(--muted)}.cmd ul{max-height:46vh;margin:0;padding:6px;list-style:none;overflow-y:auto}.cmd li{cursor:pointer;border-radius:8px;justify-content:space-between;gap:16px;padding:10px 12px;font-size:14px;display:flex}.cmd li small{color:var(--muted);white-space:nowrap;font-size:12px}.cmd li[aria-selected=true]{background:#ffffff10}.cmd li[aria-disabled=true]{color:var(--muted);cursor:default}.cmd__foot{border-top:1px solid var(--line);font:400 11px/16px var(--font-mono);color:var(--muted);padding:10px 16px}body.no-gl .cue span:before{content:"WebGL indisponible · "}@media (width<=900px){.about,.contact__in,.layers{grid-template-columns:1fr}.layer,.layer:first-child{border-left:0;border-bottom:1px solid var(--line);padding-left:0;padding-right:0}.js-rv .layer{border-bottom-color:#0000}.js-rv .layer:after,.js-rv .layer:not(:first-child):after{content:"";background:var(--line);transform-origin:0;width:auto;height:1px;transition:transform .5s var(--ease-out);position:absolute;inset:auto 0 -1px;transform:scaleX(0)}.js-rv{--kd:0s}.job{grid-template-columns:1fr;gap:10px}.steps{scroll-snap-type:x mandatory;scrollbar-width:none;margin-right:calc(-1 * (max(16px, env(safe-area-inset-right,0px)) + var(--extra)));padding-right:calc(max(16px, env(safe-area-inset-right,0px)) + var(--extra));display:flex;overflow-x:auto}.steps::-webkit-scrollbar{display:none}.step{scroll-snap-align:start;flex:0 0 min(78vw,340px)}.contact>.contact__in{align-content:end}.feat{grid-template-columns:1fr}.feat__media{order:-1}.mos--stone{justify-self:end;width:min(190px,46vw);margin-top:-24px}}@media (width<=760px){.top__nav{display:none}.top__menu{display:inline-flex}.status,.lede{display:none}.sec__head{grid-template-columns:1fr}.car__ctrl{justify-content:space-between}.feat__name{font-size:50px}.feat__desc{font-size:16px;line-height:25px}.strip{margin-right:calc(-1 * (max(16px, env(safe-area-inset-right,0px)) + var(--extra)));padding-right:calc(max(16px, env(safe-area-inset-right,0px)) + var(--extra));display:flex;overflow-x:auto}.thumb{flex:0 0 120px}.feat__media{clip-path:polygon(0 0,calc(100% - 26px) 0,100% 26px,100% 100%,0 100%)}.facts{grid-template-columns:1fr 1fr}.cursor{display:none}.sheet__head{grid-template-columns:1fr}.sheet__kind{text-align:left}.sheet__grid{grid-template-columns:1fr}.sheet__story p{font-size:16px;line-height:25px}}@media (hover:none){.cursor{display:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.sheet.is-in,.sheet.is-out,.sheet.is-in .sheet__in>*,.dot:after,.cmd__box{animation:none}}
