@font-face{font-family:"Pixelify Sans";src:url(/fonts/PixelifySans-400-700.woff2) format("woff2");font-weight:400 700;font-display:swap}
.view--projects { background:#05070b; --pixel:"Pixelify Sans","Segoe UI",sans-serif; }
.view--projects>.view__back{z-index:40;color:#fff}
.projects-gateway,.projects-desk,.projects-panel,.ds{position:absolute;inset:0;overflow:hidden}
.projects-gateway [hidden]:not(.win){display:none!important}

/* The desk: the painted point of view, two hotspots laid over the drawn devices */
.projects-desk{background:#05070b;color:#fff}
.projects-desk__pov,.projects-desk__shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform-origin:var(--sx,50%) var(--sy,50%);transition:transform 560ms cubic-bezier(.2,.7,.2,1),opacity 420ms cubic-bezier(.2,.7,.2,1)}
.projects-desk__shade{background:linear-gradient(180deg,rgba(2,5,10,.12),rgba(2,5,10,.1) 55%,rgba(2,5,10,.72)),radial-gradient(circle at 50% 47%,transparent 0 22%,rgba(2,5,10,.26) 70%)}
.projects-desk.is-lifted .projects-desk__pov,.projects-desk.is-lifted .projects-desk__shade{transform:translate(calc(var(--dx) * -1),calc(var(--dy) * -1)) scale(var(--lift,2.4));opacity:0}
/* The heading lives in the top left corner, the one place the laptop never reaches at any crop */
.projects-desk__eyebrow,.projects-desk>h1{position:absolute;z-index:5;left:clamp(18px,3vw,44px);margin:0;text-align:left;text-shadow:0 3px 18px #000;transition:opacity 200ms;pointer-events:none}
.projects-desk__eyebrow{top:clamp(64px,9vh,90px);font:600 .72rem/1 var(--mono);letter-spacing:.2em;text-transform:uppercase;color:#b9e9ff}
.projects-desk>h1{top:clamp(84px,12vh,116px);font:400 clamp(1.6rem,2.6vw,2.4rem)/1.05 var(--display);max-width:9em}
.projects-desk.is-lifted .projects-desk__eyebrow,.projects-desk.is-lifted>h1,.projects-desk.is-lifted .projects-device{opacity:0;pointer-events:none}
.projects-device{position:absolute;z-index:3;box-sizing:border-box;margin:0;padding:0;border:0;background:none;color:#fff;font:inherit;text-align:center;cursor:pointer;transition:opacity 200ms}
.projects-device:focus-visible{outline:0}
.projects-device small{display:block;margin-top:8px;font:500 .66rem/1.3 var(--mono);letter-spacing:.08em;color:#c4d7df}
.projects-device--pc{left:27%;top:15%;width:49%;height:41%;z-index:7}
/* The PC panel docks on the painted laptop by a homography and dollies to the eye on login */
.projects-panel--pc{transform-origin:0 0;overflow:hidden;will-change:transform;z-index:6}
.projects-panel--pc.is-docked{pointer-events:none}
.projects-panel--pc.is-docked .os__lock{filter:brightness(.74)}
.projects-gateway.is-pc-hover .projects-panel--pc.is-docked .os__lock{filter:brightness(1.05);box-shadow:inset 0 0 0 1px rgba(137,231,255,.35),inset 0 0 3vw rgba(137,231,255,.2)}
.projects-desk.is-lifted~.projects-panel--pc.is-docked{opacity:0;transition:opacity 200ms}
.projects-desk.is-dolly .projects-desk__pov,.projects-desk.is-dolly .projects-desk__shade{transform:var(--dolly,none);opacity:var(--fade,1);transition:none}
.projects-desk.is-dolly .projects-desk__eyebrow,.projects-desk.is-dolly>h1,.projects-desk.is-dolly .projects-device{opacity:0;pointer-events:none}
.projects-desk.is-away{visibility:hidden}
.projects-device--ds{right:3%;bottom:8%;width:26%;height:40%;border-radius:6% / 5%}
/* The 3DS lights up along its own silhouette, traced from the painting */
.projects-outline{position:absolute;z-index:4;pointer-events:none;opacity:0;transition:opacity 260ms;mix-blend-mode:screen}
.projects-gateway.is-ds-hover .projects-outline{opacity:1}
.projects-desk.is-lifted .projects-outline,.projects-desk.is-dolly .projects-outline{opacity:0}
.projects-device__tag{position:absolute;left:50%;bottom:3%;transform:translateX(-50%);white-space:nowrap;padding:10px 16px;border:1px solid rgba(255,255,255,.35);border-radius:999px;background:rgba(7,13,22,.72);backdrop-filter:blur(8px);transition:border-color 260ms,background 260ms}
.projects-device--ds:hover .projects-device__tag,.projects-device--ds:focus-visible .projects-device__tag{border-color:#89e7ff;background:rgba(8,30,42,.82)}
.projects-device--ds strong{display:block;font:400 clamp(1rem,1.5vw,1.35rem)/1 var(--display)}
.projects-device--ds small{margin-top:4px}
.projects-device--ds.is-off{width:min(44vw,180px);height:auto;right:3%;bottom:2%;display:grid;justify-items:center;gap:8px}
.projects-device--ds.is-off::before{display:none}
.projects-device--ds.is-off::after{content:"";display:block;width:100%;aspect-ratio:429/442;background:url(/media/scenes/projects-3ds-cutout.webp) center/contain no-repeat;filter:drop-shadow(0 12px 16px rgba(0,0,0,.55))}
.projects-device--ds.is-off .projects-device__tag{position:static;transform:none;display:block;max-width:100%;white-space:normal;text-align:center}

/* The console: a New Nintendo 3DS XL in black, every measure a share of its width */
.projects-panel--pc{z-index:10}
.projects-back{position:absolute;z-index:80;left:18px;top:16px;min-height:44px;padding:10px 14px;border:1px solid rgba(255,255,255,.4);border-radius:8px;background:rgba(6,10,17,.76);color:#fff;font:600 .72rem/1 var(--mono);letter-spacing:.1em;text-transform:uppercase;cursor:pointer}
.projects-panel--pc .projects-back{left:auto;right:18px}
.ds{z-index:10;display:grid;grid-template-rows:1fr auto;justify-items:center;align-items:center;row-gap:12px;padding:56px 12px 14px;box-sizing:border-box;background:radial-gradient(ellipse at 50% 38%,rgba(46,58,76,.62),rgba(5,7,11,.94) 66%);color:#202428;transition:background 400ms}
.ds__console{--w:min(94vw,70vh);width:var(--w);container-type:inline-size;perspective:1800px;transform-style:preserve-3d;transform:translate(0,0) scale(1) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform 560ms cubic-bezier(.2,.7,.2,1)}
.ds:not(.is-asleep) .ds__top{box-shadow:0 0 3cqw rgba(255,120,50,.28)}
.ds:not(.is-asleep) .ds__bottom{box-shadow:0 0 2cqw rgba(255,140,60,.2)}
.ds.is-arriving .ds__console{transform:translate(var(--dx,0px),var(--dy,0px)) scale(var(--k,.36))}
.ds__lid,.ds__base{position:relative;box-sizing:border-box;height:58cqw;background:linear-gradient(165deg,#2c2e34,#141519 42%,#1a1c20 76%,#25272c);box-shadow:inset 0 0 0 .45cqw #08090b,inset 0 .5cqw .3cqw .45cqw rgba(255,255,255,.07),0 2.5cqw 5cqw rgba(0,0,0,.6)}
.ds__lid{border-radius:9cqw 9cqw 3cqw 3cqw;transform-origin:50% 100%;transform:rotateX(5deg)}
.ds__base{border-radius:3cqw 3cqw 9cqw 9cqw;transform-origin:50% 0;transform:rotateX(14deg)}
.ds__hinge{position:relative;z-index:2;height:4cqw;margin:0 3.5cqw;border-radius:2cqw;background:linear-gradient(#3b3e44,#0f1013 58%,#2a2c31);box-shadow:0 .3cqw .9cqw rgba(0,0,0,.65)}
.ds__hinge i{position:absolute;top:0;bottom:0;width:20cqw;border-radius:inherit;background:linear-gradient(#484b52,#121316 60%,#2d2f34)}
.ds__hinge i:first-child{left:0}.ds__hinge i:last-child{right:0}
.ds__glass{position:absolute;inset:3cqw;border-radius:6.4cqw 6.4cqw 1.4cqw 1.4cqw;background:linear-gradient(170deg,#0e0f12,#040405 55%,#0b0c0f);box-shadow:inset 0 0 0 .3cqw rgba(255,255,255,.05),inset 0 .6cqw 1.6cqw rgba(255,255,255,.04)}
.ds__base .ds__glass{inset:3.4cqw 21cqw 8.6cqw;border-radius:1.4cqw}
.ds__cam{position:absolute;left:50%;top:1.6cqw;width:1.9cqw;height:1.9cqw;border-radius:50%;transform:translateX(-50%);background:radial-gradient(circle at 40% 35%,#2a4a63,#050a10 62%);box-shadow:0 0 0 .35cqw #17191d,0 0 0 .55cqw #2a2d33}
.ds__cam--led{left:54.5%;top:2.05cqw;width:1cqw;height:1cqw;background:#1a1d22;box-shadow:0 0 0 .25cqw #101215}
.ds__grille{position:absolute;top:21cqw;width:6cqw;height:16cqw;background:radial-gradient(circle,#2f3238 0 .34cqw,transparent .5cqw);background-size:1.35cqw 1.35cqw;opacity:.9}
.ds__grille--l{left:5.6cqw}.ds__grille--r{right:5.6cqw}
.ds__slider{position:absolute;right:.9cqw;top:14cqw;width:1.5cqw;height:15cqw;border-radius:1cqw;background:#0a0b0d;box-shadow:inset 0 0 0 .2cqw #303339}
.ds__slider b{position:absolute;left:-.4cqw;right:-.4cqw;top:64%;height:2.6cqw;border-radius:.6cqw;background:linear-gradient(#5a5e66,#2b2e34)}
.ds__slider::before{content:'3D';position:absolute;right:-.2cqw;top:-2.6cqw;font:700 1.15cqw/1 var(--sans);color:#6a6e76}
.ds__top,.ds__bottom{position:absolute;overflow:hidden;background:#000}
.ds__top{left:13.5cqw;top:6cqw;width:67cqw;height:40.2cqw;border-radius:.3cqw}
.ds__bottom{left:2.5cqw;top:2.6cqw;width:53cqw;height:40cqw;border-radius:.3cqw}
.ds__top::after,.ds__bottom::after{content:'';position:absolute;inset:0;z-index:9;background:#000;opacity:0;transition:opacity 280ms ease-out;pointer-events:none}
.ds.is-asleep .ds__top::after,.ds.is-asleep .ds__bottom::after{opacity:1}
.ds-top__art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ds-top__banner{position:absolute;inset:0;z-index:2;width:100%;height:100%;opacity:0;transition:opacity 220ms ease-out}
.ds-top__banner.is-on{opacity:1}
.ds-top__logo{position:absolute;z-index:3;left:50%;top:5cqw;width:auto;height:auto;max-width:46%;max-height:13cqw;transform:translateX(-50%);filter:drop-shadow(0 .4cqw .8cqw rgba(0,0,0,.6));animation:ds-logo-float 3.2s ease-in-out infinite}
.ds-top__logo[hidden]{display:none}
/* The launch: the tile grows and goes, both screens black, the wordmark on white, then the software */
.ds-boot{position:absolute;inset:0;z-index:7;display:grid;place-items:center;background:#fff;color:#111;opacity:0;transition:opacity 180ms ease-out;pointer-events:none}
.ds-boot[hidden]{display:grid}
.ds.is-booting .ds-boot{opacity:1}
.ds-boot__mark{margin:0;display:grid;justify-items:center;gap:.4cqw;font-family:var(--sans)}
.ds-boot__new{display:flex;align-items:center;gap:.5cqw;font:500 4.4cqw/1 var(--sans);letter-spacing:-.02em;color:#222}
.ds-boot__new i{width:.9cqw;height:.9cqw;border-radius:.2cqw}
.ds-boot__new i:nth-child(1){background:#e0264a}.ds-boot__new i:nth-child(2){background:#f5b400;margin-right:.6cqw}.ds-boot__new i:nth-child(3){background:#3bd16f;margin-left:.6cqw}.ds-boot__new i:nth-child(4){background:#2f7ff5}
.ds-boot__line{display:flex;align-items:baseline;gap:.6cqw;font:400 3.6cqw/1 var(--sans);letter-spacing:.12em;color:#222}
.ds-boot__line b{width:2.2cqw;height:2.2cqw;border:.32cqw solid #9a9a9a;box-shadow:.7cqw .7cqw 0 -.32cqw #fff,.7cqw .7cqw 0 0 #9a9a9a;margin-right:.9cqw;align-self:center}
.ds-boot__line{font-weight:400}
.ds-boot__line::after{content:'';display:none}
.ds-boot__line small{font:700 2.2cqw/1 var(--sans);letter-spacing:0;margin-left:.3cqw}
.ds.is-booting .ds__bottom::after,.ds.is-launching .ds__bottom::after{opacity:1;transition-delay:220ms}
.ds-home__row>button.is-launched .ds-tile{transform:scale(2.8);opacity:0;transition:transform 300ms cubic-bezier(.2,.7,.2,1),opacity 260ms ease-out 60ms}
.ds-home__row>button.is-launched::after{opacity:0}
@keyframes ds-logo-float{50%{transform:translate(-50%,.5cqw)}}
.ds-top__bar{position:absolute;z-index:4;left:0;right:0;top:0;margin:0;height:3.7cqw;padding:0 1.1cqw;display:flex;align-items:center;gap:1.2cqw;background:linear-gradient(#f26a3f,#d8361f);color:#fff;font:700 1.45cqw/1 var(--sans);letter-spacing:.02em;box-shadow:0 .2cqw .5cqw rgba(0,0,0,.35)}
.ds-top__bar svg{width:2cqw;height:2cqw;flex:none}
.ds-top__net{display:flex;align-items:center;gap:.6cqw;padding:.35cqw 1.4cqw .35cqw .8cqw;border-radius:.5cqw;background:#2f8be8;box-shadow:inset 0 0 0 .18cqw #7fc0ff}
.ds-top__coins{display:flex;align-items:center;gap:.5cqw;margin-right:auto}
.ds-top__bar>b{margin-left:auto;margin-right:.6cqw}
.ds-top__title{position:absolute;z-index:4;left:0;right:0;bottom:0;margin:0;height:5.4cqw;display:flex;align-items:center;justify-content:center;background:linear-gradient(rgba(30,10,6,0),rgba(30,10,6,.7) 40%,rgba(30,10,6,.8));color:#fff;font:600 2cqw/1 var(--sans);letter-spacing:.03em;text-shadow:0 .2cqw .6cqw rgba(0,0,0,.7)}
.ds-top__hint{position:absolute;z-index:5;bottom:0;display:flex;align-items:center;gap:.4cqw;height:3.4cqw;padding:0 .9cqw;background:#d8361f;color:#fff;font:700 1.3cqw/1 var(--sans)}
.ds-top__hint svg{width:2.4cqw;height:2.4cqw}
.ds-top__hint i{font-style:normal;color:#ffd23f}
.ds-top__hint--l{left:0;border-radius:0 1.4cqw 0 0}.ds-top__hint--r{right:0;border-radius:1.4cqw 0 0 0}
.ds__circle{position:absolute;left:5cqw;top:9.5cqw;width:11cqw;height:11cqw;border-radius:50%;background:radial-gradient(circle at 45% 40%,#9a9ea5,#5f636a 70%,#3d4046);box-shadow:0 0 0 .5cqw #0d0e10,0 0 0 .9cqw #2a2c31,inset 0 -.6cqw 1cqw rgba(0,0,0,.45),0 .5cqw 1cqw rgba(0,0,0,.5)}
.ds__dpad{position:absolute;left:4.4cqw;top:29.5cqw;width:12.4cqw;height:12.4cqw}
.ds__dpad button{position:absolute;margin:0;padding:0;border:0;cursor:pointer;background:linear-gradient(#3c3f46,#26282d);box-shadow:inset 0 .3cqw 0 rgba(255,255,255,.08)}
.ds__dpad button:nth-child(1){left:0;top:34%;width:36%;height:32%;border-radius:1cqw 0 0 1cqw}
.ds__dpad button:nth-child(2){right:0;top:34%;width:36%;height:32%;border-radius:0 1cqw 1cqw 0}
.ds__dpad button:nth-child(3){left:34%;top:0;width:32%;height:36%;border-radius:1cqw 1cqw 0 0}
.ds__dpad button:nth-child(4){left:34%;bottom:0;width:32%;height:36%;border-radius:0 0 1cqw 1cqw}
.ds__dpad::after{content:'';position:absolute;left:34%;top:34%;width:32%;height:32%;background:#2e3137}
.ds__dpad button:active{filter:brightness(.8)}
.ds__cstick{position:absolute;right:8.8cqw;top:7cqw;width:3.6cqw;height:3.6cqw;border-radius:50%;background:radial-gradient(circle at 40% 35%,#8a8e95,#4a4d54 70%);box-shadow:0 0 0 .4cqw #0d0e10,inset 0 -.3cqw .5cqw rgba(0,0,0,.5)}
.ds__abxy{position:absolute;right:3.2cqw;top:16.5cqw;width:15cqw;height:15cqw}
.ds__abxy button{position:absolute;width:5cqw;height:5cqw;margin:0;padding:0;border:0;border-radius:50%;display:grid;place-items:center;cursor:pointer;background:linear-gradient(160deg,#4a4d54,#26282d);box-shadow:0 .35cqw 0 #0a0b0d,inset 0 .3cqw .3cqw rgba(255,255,255,.1);font:700 2.2cqw/1 var(--sans)}
.ds__abxy button:active{transform:translateY(.3cqw);box-shadow:0 .05cqw 0 #0a0b0d}
.ds__abxy button[data-ds-key="a"]{right:0;top:33%;color:#ff5a45}
.ds__abxy button[data-ds-key="b"]{left:33%;bottom:0;color:#f6c944}
.ds__abxy button[data-ds-key="x"]{left:33%;top:0;color:#4ea3ff}
.ds__abxy button[data-ds-key="y"]{left:0;top:33%;color:#5ad06a}
.ds__home{position:absolute;left:50%;bottom:2.4cqw;width:9cqw;height:3.4cqw;margin:0;padding:0;border:0;border-radius:1.7cqw;transform:translateX(-50%);display:grid;place-items:center;cursor:pointer;background:linear-gradient(#3c3f46,#1f2126);box-shadow:0 0 0 .35cqw #0b0c0e,inset 0 .3cqw 0 rgba(255,255,255,.08);color:#b9bcc3;font:700 2cqw/1 var(--sans)}
.ds__home:active{transform:translate(-50%,.2cqw)}
.ds__pill{position:absolute;right:4.6cqw;width:9cqw;height:2.2cqw;border-radius:1.1cqw;background:linear-gradient(#3a3d44,#22242a);box-shadow:0 0 0 .3cqw #0b0c0e}
.ds__pill::after{position:absolute;left:0;right:0;top:100%;margin-top:.3cqw;text-align:center;font:700 1.05cqw/1 var(--sans);letter-spacing:.06em;color:#6a6e76}
.ds__pill--select{top:36cqw}.ds__pill--select::after{content:'SELECT'}
.ds__pill--start{top:41.6cqw}.ds__pill--start::after{content:'START'}
.ds__power{position:absolute;right:4.6cqw;bottom:2.4cqw;width:6cqw;height:2.8cqw;margin:0;padding:0;border:0;border-radius:1.4cqw;cursor:pointer;background:linear-gradient(#34373e,#1c1e23);box-shadow:0 0 0 .3cqw #0b0c0e,inset 0 .2cqw 0 rgba(255,255,255,.07)}
.ds__power::after{content:'';position:absolute;left:50%;top:50%;width:1.3cqw;height:1.3cqw;border:.25cqw solid #8a8e95;border-top-color:transparent;border-radius:50%;transform:translate(-50%,-50%)}
.ds__power::before{content:'';position:absolute;left:50%;top:.45cqw;width:.25cqw;height:.9cqw;background:#8a8e95;transform:translateX(-50%)}
.ds__led{position:absolute;bottom:1.2cqw;width:1.6cqw;height:.6cqw;border-radius:.3cqw;background:#2a2c31;transition:background 300ms,box-shadow 300ms}
.ds__led--power{right:12.5cqw;background:#3aa0ff;box-shadow:0 0 .9cqw #3aa0ff}
.ds.is-asleep .ds__led--power{background:#2a2c31;box-shadow:none}
.ds__led--wifi{left:5cqw;background:#e7b33b;box-shadow:0 0 .7cqw #e7b33b}
.ds__mic{position:absolute;left:50%;bottom:.9cqw;width:.8cqw;height:.8cqw;border-radius:50%;transform:translateX(-50%);background:#08090b}
.ds__bgm{margin:0;padding:8px 14px;border:1px solid rgba(255,255,255,.3);border-radius:999px;background:rgba(6,10,17,.7);color:#dfe8ee;font:600 .68rem/1 var(--mono);letter-spacing:.08em;cursor:pointer}
.ds__bgm[aria-pressed="true"]{border-color:#ffb347;color:#ffd9a0}
.ds__credit{margin:0;text-align:center;font:500 .6rem/1.5 var(--mono);letter-spacing:.04em;color:#8b98a3}
.ds__credit a{color:#b9e9ff}
.ds__foot{display:grid;justify-items:center;gap:8px}

/* The bottom screen: the HOME Menu of theme 2856, then the three pieces of software */
.ds-home,.ds-app{position:absolute;inset:0;font-family:var(--sans);color:#202428}
.ds-home__bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ds-home__bar{position:absolute;left:0;right:0;top:0;margin:0;height:5.4cqw;display:flex;align-items:stretch;background:linear-gradient(#f0532f,#d8361f);box-shadow:0 .2cqw .6cqw rgba(0,0,0,.35)}
.ds-home__bar svg{width:3cqw;height:3cqw}
.ds-home__tab{display:grid;place-items:center;width:7.4cqw;background:#ea2927;border-radius:0 0 1.2cqw 0;box-shadow:inset 0 -.3cqw 0 rgba(0,0,0,.2)}
.ds-home__tab svg{width:3.6cqw;height:3.6cqw}
.ds-home__apps{flex:1;display:flex;align-items:center;justify-content:space-evenly;padding:0 1cqw}
.ds-home__apps i{display:grid;place-items:center;width:4.2cqw;height:4.2cqw;border-radius:.8cqw;background:rgba(255,255,255,.92);box-shadow:0 .25cqw 0 rgba(0,0,0,.25)}
.ds-home__views{display:flex;align-items:center;gap:.6cqw;padding:0 1cqw;background:#ea2927;border-radius:0 0 0 1.2cqw}
.ds-home__views i{display:grid;place-items:center}
.ds-home__views svg{width:2.6cqw;height:2.6cqw}
.ds-home__row{position:absolute;left:0;right:0;top:5.4cqw;bottom:0;display:flex;align-items:center;justify-content:center;gap:2cqw;padding:0 5cqw}
.ds-home__row>button{margin:0;padding:0;border:0;background:none;cursor:pointer;border-radius:1.2cqw;outline:0}
.ds-tile{position:relative;display:grid;place-items:center;width:9.6cqw;height:9.6cqw;border-radius:1.2cqw;background:#fff;box-shadow:0 0 0 .55cqw #d8361f,0 .6cqw 0 .55cqw rgba(0,0,0,.35);font:700 5cqw/1 var(--sans);transition:transform 160ms ease-out,box-shadow 160ms ease-out;overflow:hidden}
.ds-home__row>button[aria-selected="true"] .ds-tile{transform:translateY(-.3cqw) scale(1.05);box-shadow:0 0 0 .55cqw #d8361f,0 0 0 1.35cqw #ffd23f,0 .8cqw 1.4cqw rgba(0,0,0,.45)}
.ds-home__row>button[aria-selected="true"]::after{content:'';position:absolute;inset:-2.2cqw;border:.6cqw dashed #ffd23f;border-radius:1.6cqw;pointer-events:none;animation:ds-cursor 1.1s steps(2) infinite}
.ds-home__row>button{position:relative}
@keyframes ds-cursor{50%{opacity:.35}}
.ds-tile--mc{background:linear-gradient(#8ecbff,#cfe9ff)}
.ds-tile--mc svg{width:82%;height:82%}
.ds-tile--pokemon img{width:100%;height:100%;object-fit:cover}
.ds-tile--mystery{background:#252933;color:#8de2ff}
.ds-tile--empty{background:rgba(0,0,0,.18);box-shadow:inset 0 0 0 .3cqw rgba(255,255,255,.35);border-radius:1.2cqw}
.ds-home__arrow{position:absolute;top:50%;width:4.8cqw;height:8.4cqw;transform:translateY(-50%);display:grid;place-items:center;background:#ea2927;box-shadow:0 .3cqw .6cqw rgba(0,0,0,.4)}
.ds-home__arrow svg{width:3.2cqw;height:3.2cqw}
.ds-home__arrow--l{left:0;border-radius:0 4cqw 4cqw 0;opacity:.35}
.ds-home__arrow--l svg{transform:scaleX(-1)}
.ds-home__arrow--r{right:0;border-radius:4cqw 0 0 4cqw}
.ds-app{background:linear-gradient(#f6f9fb,#dce8ee)}
.ds-app header{height:6cqw;display:flex;align-items:center;justify-content:space-between;padding:0 1.2cqw 0 .8cqw;background:#151b20;color:#fff;font:600 1.55cqw/1 var(--mono)}
.ds-app header button,.ds-app--mystery>button{margin:0;border:1px solid currentColor;border-radius:.6cqw;background:transparent;color:inherit;font:600 1.4cqw/1 var(--mono);padding:.9cqw 1.2cqw;cursor:pointer}
/* Minecraft: the advancements screen, dark stone, pixel type, a toast per skill */
.ds-app--mc{display:grid;grid-template-rows:auto 1fr auto;background:#1e1e22 url(/media/projects/adv/stone.png) center/6cqw;image-rendering:pixelated;font-family:var(--pixel);color:#fff}
.mc-head{display:flex;align-items:center;gap:1.2cqw;height:5.6cqw;padding:0 1cqw 0 .8cqw;background:#c6c6c6;color:#3f3f3f;box-shadow:inset 0 -.5cqw 0 #555,inset 0 .5cqw 0 #fff;font-family:var(--pixel)}
.mc-head button{margin:0;padding:.7cqw 1cqw;border:0;background:#8b8b8b;color:#fff;font:700 max(1.45cqw,9px)/1 var(--pixel);box-shadow:inset -.35cqw -.35cqw 0 #555,inset .35cqw .35cqw 0 #ddd;cursor:pointer}
.mc-head button:hover{background:#7a8fd6}
.mc-head__title{flex:1;font:700 max(2.2cqw,12px)/1 var(--pixel);text-shadow:.2cqw .2cqw 0 #fff}
.mc-head__tabs{display:flex;gap:.4cqw}
.mc-head__tabs i{width:3cqw;height:2.6cqw;background:#8b8b8b;box-shadow:inset -.3cqw -.3cqw 0 #555,inset .3cqw .3cqw 0 #ddd}
.mc-head__tabs i.is-on{background:#c6c6c6;height:3.2cqw;margin-top:-.6cqw}
.mc-list{margin:0;padding:1.3cqw 1.3cqw .6cqw;overflow:auto;list-style:none;scrollbar-width:thin;scrollbar-color:#8b8b8b #2b2b2b}
.mc-list li{margin-bottom:1cqw}
.mc-adv{position:relative;display:grid;grid-template-columns:5.6cqw 1fr;gap:1.1cqw;align-items:center;width:100%;margin:0;padding:.9cqw;border:0;background:#212121;color:#fff;text-align:left;cursor:pointer;box-shadow:inset 0 0 0 .3cqw #8b8b8b,inset 0 0 0 .6cqw #212121,0 .5cqw 0 rgba(0,0,0,.35);font-family:var(--pixel)}
.mc-adv:hover,.mc-adv:focus-visible{box-shadow:inset 0 0 0 .3cqw #ffd23f,inset 0 0 0 .6cqw #212121,0 .5cqw 0 rgba(0,0,0,.35);outline:0;background:#2a2a2a}
.mc-adv__icon{display:grid;place-items:center;width:5.6cqw;height:5.6cqw;background:#3b3b3b;box-shadow:inset -.35cqw -.35cqw 0 #1a1a1a,inset .35cqw .35cqw 0 #6b6b6b}
.mc-adv--challenge .mc-adv__icon{background:#5a3d7a;box-shadow:inset -.35cqw -.35cqw 0 #2c1b3d,inset .35cqw .35cqw 0 #9a6fd0}
.mc-adv--goal .mc-adv__icon{background:#3b4f6b;box-shadow:inset -.35cqw -.35cqw 0 #1a2433,inset .35cqw .35cqw 0 #6b8ab8;border-radius:50%}
.mc-adv__icon img{width:4cqw;height:4cqw;image-rendering:pixelated}
.mc-adv__text{display:grid;gap:.2cqw;min-width:0}
.mc-adv__text small{color:#ffd23f;font:400 max(1.3cqw,8px)/1.1 var(--pixel)}
.mc-adv--challenge .mc-adv__text small{color:#d09cff}
.mc-adv__text b{font:700 max(2cqw,11px)/1.1 var(--pixel);letter-spacing:.02em}
.mc-adv__text em{font:400 max(1.32cqw,9px)/1.25 var(--pixel);font-style:normal;color:#bdbdbd}
.mc-adv__lang{position:absolute;right:1.1cqw;top:.9cqw;font:400 max(1.15cqw,7px)/1 var(--pixel);font-style:normal;color:#8b8b8b}
.mc-hint{margin:0;padding:.7cqw 1.3cqw;background:rgba(0,0,0,.45);color:#9a9a9a;font:400 max(1.2cqw,8px)/1.2 var(--pixel);text-align:center}
.poke-pc{height:34cqw;display:grid;grid-template-columns:1fr 27%;background:linear-gradient(135deg,#5fc3cf,#176a8b)}
.poke-box{display:grid;grid-template-columns:repeat(6,1fr);grid-template-rows:repeat(5,1fr);gap:.4cqw;padding:1.4cqw;background:repeating-linear-gradient(45deg,rgba(255,255,255,.13) 0 5px,transparent 5px 10px)}
.poke-slot{position:relative;min-width:0;margin:0;padding:0;border:1px solid rgba(255,255,255,.4);border-radius:.5cqw;background:rgba(255,255,255,.23);overflow:hidden}
button.poke-slot{cursor:pointer;background:rgba(255,255,255,.4)}
button.poke-slot:hover,button.poke-slot:focus-visible{background:#ffe680;outline:0}
.poke-slot img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;image-rendering:auto}
.poke-slot span{position:absolute;left:0;right:0;bottom:0;font:700 .95cqw/1.2 var(--mono);color:#fff;background:rgba(0,0,0,.35)}
.poke-pc aside{padding:3cqw 1.8cqw;background:#eef9f6;font-size:1.5cqw;line-height:1.3}
.poke-pc aside button{width:100%;margin:0 0 1cqw;padding:1.3cqw .6cqw;background:#f6ce45;border:.35cqw solid #775b1f;font:700 1.35cqw/1 var(--mono);cursor:pointer}
.poke-summary,.item-box{position:absolute;inset:7%;z-index:5;border:.7cqw double #fff;border-radius:1.4cqw;background:linear-gradient(135deg,#f2f9ff,#b9dfec);box-shadow:0 1.4cqw 4cqw rgba(0,0,0,.42);padding:2.6cqw;display:flex;align-items:center;gap:2.4cqw;box-sizing:border-box}
.poke-summary[hidden],.item-box[hidden]{display:none}
.poke-summary>button,.item-box>button{position:absolute;right:.6cqw;top:.4cqw;margin:0;border:0;background:none;font-size:2.6cqw;cursor:pointer}
.poke-summary img{width:43%;height:80%;object-fit:contain}
.poke-summary h3,.item-box h3{margin:.4cqw 0;color:#8b6d08;font-size:max(2.4cqw,12px)}
.poke-summary p,.poke-summary small,.item-box li{font-size:max(1.5cqw,9px);line-height:1.35;margin:.3cqw 0}
.item-box{display:block;background:#fff4bd}
.item-box ul{padding-left:3cqw;margin:.6cqw 0}
.ds-app--mystery{display:grid;place-items:center;text-align:center;padding:3cqw;box-sizing:border-box;background:radial-gradient(circle,#263a51,#05070b);color:#c9f4ff}
.ds-app--mystery>button{position:absolute;left:1.4cqw;top:1.4cqw}
.ds-app--mystery p{margin:0 0 1cqw;font:700 1.9cqw/1 var(--mono);letter-spacing:.13em;color:#ffdd61}
.ds-app--mystery h3{margin:0 0 .8cqw;font:400 3.4cqw/1.1 var(--display)}
.ds-app--mystery small{font-size:1.5cqw}

@media(max-width:700px){.projects-desk__eyebrow{top:56px}.projects-desk>h1{top:74px;font-size:1.3rem}.ds{padding:52px 6px 10px}.ds__console{--w:min(96vw,66vh)}.ds__credit{font-size:.52rem}}
@media(prefers-reduced-motion:reduce){.projects-device,.projects-desk__pov,.projects-desk__shade,.ds__console,.ds-tile{transition:none}.projects-desk.is-lifted .projects-desk__pov,.projects-desk.is-lifted .projects-desk__shade{transform:none}.ds.is-arriving .ds__console{transform:none}.os__lock-prompt i{animation:none}}
