:root{--field:#05060a;--field-2:#14161d;--ink:#ffffff;--ink2:rgba(255,255,255,.78);--dim:rgba(255,255,255,.5);--line:rgba(255,255,255,.14);--mono:"JetBrains Mono",ui-monospace,"Cascadia Code",Consolas,monospace;--disp:"Syne","Helvetica Neue",Arial,sans-serif;--pad:clamp(20px,3.4vw,48px);--ease:cubic-bezier(.16,1,.3,1)}*{box-sizing:border-box;margin:0;padding:0}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-stopped{overflow:hidden}body{background:var(--field);color:var(--ink);font-family:var(--disp);overflow-x:hidden;-webkit-font-smoothing:antialiased}@media(pointer:fine){body{cursor:none}}::selection{background:#fff;color:var(--field)}img{display:block;max-width:100%}.mono{font-family:var(--mono);font-size:12px;line-height:1.55;letter-spacing:.02em}.grid{position:fixed;top:0;right:0;bottom:0;left:0;z-index:3;pointer-events:none;display:grid;grid-template-columns:repeat(12,1fr);padding:0 var(--pad);opacity:.7}.grid i{border-left:1px solid var(--line)}.grid i:last-child{border-right:1px solid var(--line)}@media(max-width:760px){.grid{grid-template-columns:repeat(4,1fr)}.grid i:nth-child(n+5){display:none}}#gl{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:0;display:block;pointer-events:none}.carrier{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:5;pointer-events:none}.portal-hits{position:fixed;top:0;right:0;bottom:0;left:0;z-index:12;pointer-events:none}.portal-hit{position:absolute;left:0;top:0;pointer-events:auto;display:flex;align-items:flex-end;padding:14px;text-decoration:none;color:#fff}.portal-name{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;opacity:0;transition:opacity .3s}.portal-hit:hover .portal-name{opacity:1}.portal-flash{position:fixed;top:0;right:0;bottom:0;left:0;z-index:190;background:#fff;opacity:0;pointer-events:none}.portal-stage{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#000;display:none}.portal-stage.on{display:block}.portal-stage iframe{width:100%;height:100%;border:0;display:block}.portal-exit{position:fixed;z-index:210;right:var(--pad);top:22px;opacity:0;pointer-events:none;background:#fff;color:#000;border:0;border-radius:999px;padding:12px 18px;font-family:var(--mono);font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;cursor:none}body.in-portal .portal-exit{pointer-events:auto}body.in-portal .wrap,body.in-portal .grid,body.in-portal .top{visibility:hidden}.loader{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:var(--field);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;clip-path:inset(0 0 0 0)}.loader-track{width:140px;height:2px;background:#ffffff2e;overflow:hidden}.loader-track i{display:block;height:100%;background:#fff;transform:scaleX(0);transform-origin:left}.loader-n{font-family:var(--mono);font-size:11px;letter-spacing:.2em;color:var(--dim);font-variant-numeric:tabular-nums}.cur{position:fixed;top:0;left:0;z-index:90;width:14px;height:14px;margin:-7px 0 0 -7px;border-radius:50%;background:#fff;pointer-events:none;opacity:0;transition:opacity .3s,width .35s var(--ease),height .35s var(--ease),margin .35s var(--ease);display:flex;align-items:center;justify-content:center;mix-blend-mode:difference}.cur.on{opacity:1}.cur.big{width:84px;height:84px;margin:-42px 0 0 -42px}.cur-lbl{font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#000;opacity:0;transition:opacity .2s}.cur.big .cur-lbl{opacity:1}@media(pointer:coarse){.cur{display:none}}.top{position:fixed;top:0;left:0;right:0;z-index:40;display:flex;justify-content:space-between;align-items:center;padding:22px var(--pad);pointer-events:none}.brand{display:inline-flex;align-items:center;gap:10px;color:#fff;text-decoration:none;pointer-events:auto;font-weight:800;font-size:14px;letter-spacing:.12em;text-transform:uppercase}.brand .mark{width:20px;height:20px}.nav{display:flex;gap:26px;align-items:center;font-family:var(--mono);font-size:12px;letter-spacing:.06em;text-transform:uppercase;font-weight:500}.nav a{color:#fff;text-decoration:none;pointer-events:auto;opacity:.85;transition:opacity .25s}.nav a:hover{opacity:1}.sound{pointer-events:auto;background:none;border:0;cursor:none;color:#fff;font:inherit;letter-spacing:inherit;text-transform:inherit;display:inline-flex;gap:6px;opacity:.85}.sound b{font-weight:500}@media(max-width:640px){.nav{gap:14px;font-size:11px}}.spectre{position:absolute;left:50%;top:30px;transform:translate(-50%);display:flex;gap:4px;pointer-events:none}.spectre i{position:relative;width:34px;height:2px;background:#ffffff29;overflow:hidden}.spectre i:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--c);transform:scaleX(var(--f,0));transform-origin:left;box-shadow:0 0 8px var(--c)}@media(max-width:640px){.spectre{display:none}}.ignite{position:fixed;left:0;top:0;z-index:15;pointer-events:auto;display:flex;align-items:center;gap:12px;background:none;border:0;padding:0;margin:0;color:#fff;cursor:none;touch-action:none;user-select:none;-webkit-user-select:none;transition:opacity .6s var(--ease);font-size:11px;letter-spacing:.14em;text-transform:uppercase}.ignite.off{opacity:0;pointer-events:none}.ignite-ring{position:relative;width:132px;height:132px;border-radius:50%;margin-left:-66px;flex:none;background:conic-gradient(#fff calc(var(--charge,0) * 1turn),#fff3 0);-webkit-mask:repeating-conic-gradient(#000 0 3deg,transparent 3deg 5deg),radial-gradient(circle,transparent 56px,#000 57px,#000 65px,transparent 66px);-webkit-mask-composite:source-in;mask:repeating-conic-gradient(#000 0 3deg,transparent 3deg 5deg),radial-gradient(circle,transparent 56px,#000 57px,#000 65px,transparent 66px);mask-composite:intersect;transform:scale(calc(1 - var(--charge,0) * .14)) rotate(calc(var(--charge,0) * 90deg));filter:drop-shadow(0 0 calc(var(--charge,0) * 14px) #fff);transition:transform .9s var(--ease),opacity .9s var(--ease)}.ignite.off .ignite-ring{transform:scale(2.6);opacity:0}.ignite-txt{display:flex;flex-direction:column;gap:6px;text-align:left}.ignite-n{font-variant-numeric:tabular-nums;letter-spacing:.2em;opacity:0;transition:opacity .3s}.ignite.charging .ignite-n{opacity:1}.ignite:focus-visible .ignite-ring{outline:2px solid #fff;outline-offset:4px}.wrap{position:relative;z-index:10;pointer-events:none}.wrap a,.wrap button{pointer-events:auto}.hero{height:100vh;height:100svh;position:relative;padding:0 var(--pad);display:flex;flex-direction:column}.hero-row{display:grid;grid-template-columns:1.2fr 1.3fr;gap:32px;padding-top:96px;align-items:start;max-width:1500px}.h-title{font-weight:700;font-size:clamp(22px,2.2vw,30px);line-height:1.1;letter-spacing:-.01em}.h-title .ln{display:block}.h-col{max-width:34ch;color:var(--ink2)}.h-col:last-child{max-width:44ch}@media(max-width:900px){.hero-row{grid-template-columns:1fr 1fr}.h-col:last-child{display:none}}@media(max-width:560px){.hero-row{grid-template-columns:1fr;gap:18px}}.statement{margin-top:auto;font-weight:800;font-size:min(84px,calc((100vw - 2 * var(--pad)) / 14));line-height:.92;letter-spacing:-.035em;text-transform:uppercase;padding-bottom:0}.statement .ln{display:block;overflow:hidden}.st-sub{margin-top:20px;padding-bottom:62px;max-width:46ch;font-size:clamp(12px,1.1vw,15px);line-height:1.5;color:#ffffffc7;opacity:0;animation:fade 1s var(--ease) 1.6s forwards}@keyframes fade{to{opacity:1}}.statement .ln i{display:block;font-style:normal;transform:translateY(105%);animation:up 1.2s var(--ease) forwards;animation-delay:calc(1.1s + var(--i)*.09s)}@keyframes up{to{transform:none}}.meta{position:absolute;left:var(--pad);right:var(--pad);bottom:22px;display:flex;justify-content:space-between;gap:20px;color:#fff;font-weight:500;font-variant-numeric:tabular-nums;text-transform:uppercase;letter-spacing:.06em}@media(max-width:640px){.meta #m-note{display:none}}section{padding:clamp(90px,15vh,170px) var(--pad);position:relative;min-height:100vh;display:flex;flex-direction:column;justify-content:center}.lbl{display:flex;gap:18px;align-items:baseline;color:#fff;margin-bottom:44px;text-transform:uppercase;letter-spacing:.08em;font-weight:500;flex-wrap:wrap}.lbl .note{color:var(--dim);text-transform:none;letter-spacing:.02em;font-weight:400;margin-left:auto}.note{color:var(--dim)}.ln{will-change:transform}.rows{border-top:1px solid var(--line)}.row{display:grid;grid-template-columns:64px 1.1fr 1.4fr auto;gap:28px;align-items:start;padding:34px 0;border-bottom:1px solid var(--line);text-decoration:none;color:inherit;transition:padding .5s var(--ease)}.row:hover{padding-left:12px}@media(max-width:820px){.row{grid-template-columns:1fr;gap:12px}.row .n,.row .price{padding-top:0;text-align:left}}.row .n{font-family:var(--mono);font-size:12px;color:var(--dim);padding-top:10px}.row h3{font-weight:800;font-size:clamp(28px,4vw,58px);letter-spacing:-.03em;line-height:.95;text-transform:uppercase}.row p{color:var(--ink2);font-size:clamp(15px,1.25vw,17px);line-height:1.6;max-width:46ch;font-family:Helvetica Neue,Arial,sans-serif}.row .price{font-family:var(--mono);font-size:13px;white-space:nowrap;padding-top:10px;text-align:right}.row .tags{display:block;margin-top:14px;color:var(--dim);font-family:var(--mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase}.steps{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);max-width:1500px}@media(max-width:900px){.steps{grid-template-columns:repeat(2,1fr)}}@media(max-width:520px){.steps{grid-template-columns:1fr}}.steps li{background:#0a0c126b;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:28px 26px 30px;min-height:230px;display:flex;flex-direction:column}.steps .n{font-family:var(--mono);font-size:12px;color:var(--dim);margin-bottom:auto}.steps h3{font-weight:700;font-size:clamp(18px,1.6vw,22px);letter-spacing:-.01em;margin:26px 0 10px}.steps p{color:var(--ink2);font-size:14.5px;line-height:1.55;font-family:Helvetica Neue,Arial,sans-serif}.works{justify-content:flex-end}.works .lbl{max-width:520px}.tiles{border-top:1px solid var(--line);max-width:420px}.tile{display:grid;grid-template-columns:64px 1fr;gap:14px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line);text-decoration:none;color:inherit;transition:padding .5s var(--ease)}.tile:hover{padding-left:8px}.tile-img{aspect-ratio:16/10;overflow:hidden;background:#00000040}.tile-img img{width:100%;height:100%;object-fit:cover;transition:filter .9s ease,transform 1s var(--ease)}.tile-img img.dev{filter:grayscale(1) invert(1) contrast(1.2)}.tile:hover .tile-img img{transform:scale(1.08)}.tile-txt{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.tile-txt h3{font-weight:800;font-size:clamp(16px,1.4vw,20px);letter-spacing:-.01em;text-transform:uppercase;line-height:1}.tile-txt p{color:var(--dim);font-family:var(--mono);font-size:11px;text-align:right}.games-link{display:block;max-width:420px;margin-top:18px;padding:14px 0;border-bottom:1px solid var(--line);color:var(--ink);text-decoration:none;letter-spacing:.04em;transition:padding .5s var(--ease)}.games-link:hover,.games-link:focus-visible{padding-left:8px}.contact{min-height:120vh}.c-title{font-weight:800;font-size:clamp(46px,min(8vw,15vh),150px);line-height:.92;letter-spacing:-.035em;text-transform:uppercase;margin-bottom:34px}.c-title .ln{display:block;overflow:hidden}.c-title .ln i{display:block;font-style:normal}.mail{display:inline-block;align-self:flex-start;color:#fff;text-decoration:none;font-size:clamp(14px,1.6vw,20px);position:relative;padding-bottom:8px;will-change:transform}.mail:after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:#fff;transform:scaleX(0);transform-origin:left;transition:transform .6s var(--ease)}.mail:hover:after{transform:scaleX(1)}.contact .note{margin-top:22px}.faq .steps li{min-height:0}.foot{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:40px var(--pad) 46px;color:var(--dim);border-top:1px solid var(--line);text-transform:uppercase;letter-spacing:.06em}@media(prefers-reduced-motion:reduce){*{animation-duration:1ms!important;transition-duration:1ms!important}}.smoke-out{--x:50%;--y:50%;--r:-30vmax;position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;pointer-events:none;opacity:0;overflow:hidden;background:#b89cf2;-webkit-mask-image:radial-gradient(circle at var(--x) var(--y),#000 var(--r),transparent calc(var(--r) + 30vmax));mask-image:radial-gradient(circle at var(--x) var(--y),#000 var(--r),transparent calc(var(--r) + 30vmax))}.smoke-out i{position:absolute;width:90vmax;height:90vmax;border-radius:50%;filter:blur(60px)}.smoke-out i:nth-child(1){left:-20vmax;top:-30vmax;background:radial-gradient(circle,#ece0ff 0%,transparent 65%)}.smoke-out i:nth-child(2){right:-25vmax;top:10vmax;background:radial-gradient(circle,#3c14c2 0%,transparent 60%)}.smoke-out i:nth-child(3){left:10vmax;bottom:-40vmax;background:radial-gradient(circle,#d8c8ff 0%,transparent 62%)}body.leaving .wrap,body.leaving .top{transition:filter .9s ease;filter:blur(6px)}@media(max-width:640px){.nav a[href="/projets/"]{display:none}}
