:root{color-scheme:dark;--red:#ed2835;--ink:#111;--white:#f5f2ed}*{box-sizing:border-box}body{margin:0;background:var(--ink);color:var(--white);font-family:Arial,Helvetica,sans-serif;min-height:100svh;display:flex;flex-direction:column}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit}button{font:inherit;cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid var(--red);outline-offset:6px}header{padding:26px 5vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff17}.wordmark{font-size:17px;font-weight:900;text-decoration:none;letter-spacing:-.5px}.wordmark span{font-weight:400;letter-spacing:3px;font-size:12px;margin-left:4px}.header-note{font-size:9px;letter-spacing:2.1px;color:#aaa}main{width:100%;max-width:1000px;margin:auto;flex:1}.intro{min-height:68svh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px 24px}#enter{background:none;border:0;color:var(--white);padding:20px;width:min(500px,90vw);transition:opacity .5s,transform .9s cubic-bezier(.2,.7,.2,1)}.logo-crop{display:block;position:relative;width:100%;aspect-ratio:350/130;overflow:hidden}.logo-crop img{width:100%;height:auto;position:absolute;left:0;top:-42.5%}.enter-label{display:flex;justify-content:center;gap:16px;align-items:center;font-size:11px;letter-spacing:3px;margin-top:30px}.enter-label span{font-size:23px;color:var(--red)}#enter:hover{transform:scale(1.025)}.intro-copy{font-size:clamp(21px,4vw,29px);font-weight:400;line-height:1.35;color:#c6c3bd;margin:22px 0 30px}.text-button{background:none;border:0;color:#aaa;font-size:12px;padding:14px}.text-button:hover{color:white}.text-button span{margin-left:8px}.entering #enter{transform:scale(1.65);opacity:0;pointer-events:none}.entering .intro-copy,.entering #skip{opacity:0;transition:opacity .2s}.tools{padding:44px 32px 14px;text-align:center}.tools[hidden]{display:none}.eyebrow{font-size:10px;letter-spacing:2.6px;color:#b1aca7}h1{font-size:clamp(30px,5vw,51px);letter-spacing:-2px;line-height:1.1;margin:16px 0}h1 span{color:var(--red)}h1:focus{outline:none}.welcome p{color:#a9a5a0;font-size:14px;margin:0}.art-stage{margin:20px auto 12px;max-width:800px;height:clamp(85px,18vw,160px);display:flex;align-items:center;overflow:hidden}.art-stage img{width:100%;height:auto;filter:invert(1);opacity:.8;clip-path:inset(0 0 0 0)}.arriving .art-stage img{animation:flow 1.35s .1s both}.arriving .choices{animation:rise .6s .65s both}@keyframes flow{from{clip-path:inset(0 100% 0 0);opacity:0}to{clip-path:inset(0);opacity:.8}}@keyframes rise{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.choices{display:grid;grid-template-columns:1fr 1fr;gap:18px;text-align:left}.choice{display:block;border:1px solid #45403c;background:#1b1a19;padding:24px 28px;text-decoration:none;border-radius:5px;transition:background .2s,transform .2s,border-color .2s}.choice:hover{background:#252120;transform:translateY(-3px);border-color:var(--red)}.card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.number{font-size:10px;letter-spacing:2px;color:#bfb7af}.arrow{color:var(--red);font-size:25px}.app-icon{border-radius:18px;float:right;width:70px;height:70px;margin:2px 0 10px 10px}h2{font-size:clamp(25px,3.8vw,38px);line-height:1.07;letter-spacing:-1.2px;margin:0 0 16px}.choice p{font-size:13px;color:#b8b1aa;line-height:1.65;margin-bottom:23px}.open{display:flex;justify-content:space-between;border-top:1px solid #ffffff20;padding-top:17px;font-size:13px;font-weight:bold}.open span{color:var(--red)}#replay{margin-top:16px}footer{margin-top:24px;padding:22px 20px;text-align:center;border-top:1px solid #ffffff17;color:#a49f99}footer p{font-size:12px;margin:0 0 12px}footer>span{font-size:9px;letter-spacing:3px;color:#6e6965}@media(max-width:600px){header{padding:19px 20px}.header-note{display:none}.intro{min-height:65svh}.tools{padding:32px 18px 8px}.choices{gap:10px}.choice{padding:17px 14px}.card-top{margin-bottom:15px}.number{font-size:8px;letter-spacing:1px}.arrow{font-size:20px}.app-icon{float:none;width:54px;height:54px;border-radius:12px;margin:0 0 18px}h1{letter-spacing:-1px}h2{font-size:27px;letter-spacing:-.8px}.choice p{font-size:12px}.open{font-size:12px}.eyebrow{font-size:8px;letter-spacing:2px}footer{margin-top:12px}.art-stage{margin-top:16px;margin-bottom:12px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}.choice:hover,#enter:hover{transform:none}}
/* Softer, distinct destinations beneath the continuous workshop artwork. */
.art-stage{margin-bottom:34px}
.choices{gap:52px;padding:0 20px}
.choice{position:relative;isolation:isolate;border:0;border-radius:0;background:transparent;padding:12px 20px 22px;text-align:center}
.choice::before{content:'';position:absolute;z-index:-1;inset:45px -12px 25px;border-radius:50%;background:radial-gradient(ellipse,rgba(186,30,44,.12),transparent 67%);pointer-events:none}
.choice:hover{background:transparent;border-color:transparent;transform:translateY(-4px)}
.choice:hover::before{background:radial-gradient(ellipse,rgba(216,35,48,.2),transparent 67%)}
.card-top{justify-content:center;margin:0 0 20px}.number{font-size:11px;letter-spacing:3px;color:#d0c6bd}.card-top .arrow{display:none}
.app-icon{float:none;width:116px;height:116px;margin:0 auto 24px;display:block;border-radius:26px;box-shadow:0 20px 40px #0008;transition:transform .25s}
.choice:hover .app-icon{transform:scale(1.045)}
h2{font-size:36px;margin-bottom:12px;letter-spacing:-1.2px}.choice p{margin:0 0 25px;color:#aaa09a;line-height:1.7}
.open{justify-content:center;gap:22px;border:1px solid #ffffff24;border-radius:999px;padding:15px 18px;margin:auto;max-width:215px;background:#ffffff05;transition:background .2s,border-color .2s}
.choice:hover .open{border-color:#c73843;background:#a9192622}.open span{font-size:18px;line-height:15px}.electronics::before{background:radial-gradient(ellipse,rgba(160,55,62,.13),transparent 67%)}
@media(max-width:600px){.art-stage{margin-bottom:25px}.choices{gap:22px;padding:0}.choice{padding:6px 0 15px}.card-top{margin-bottom:18px}.number{font-size:9px;letter-spacing:1.7px}.app-icon{width:88px;height:88px;border-radius:20px;margin-bottom:22px}h2{font-size:27px;letter-spacing:-.9px}.choice p{font-size:11px;margin-bottom:20px}.open{font-size:11px;padding:13px 10px;gap:12px}.choice::before{inset:25px -5px 30px}}
@media(prefers-reduced-motion:reduce){.choice:hover .app-icon{transform:none}}
/* Full-height original artwork, followed by two image-only launch controls. */
.art-stage{height:auto;min-height:0;overflow:visible;display:block;padding:18px 0;margin:18px auto 28px}
.art-stage img{display:block;width:100%;height:auto;aspect-ratio:1870.87/442.359;object-fit:contain}
.choices{align-items:start}
.destination{text-align:center;padding:0 12px}
.destination h2{font-size:25px;letter-spacing:-.5px;margin:0 0 22px;font-weight:600}
.image-link{position:relative;display:block;width:min(170px,100%);margin:auto;border-radius:30px;transition:transform .2s;box-shadow:0 14px 48px #0008}
.image-link::before{content:'';position:absolute;z-index:-1;inset:-25px;background:radial-gradient(ellipse,#bc20202b,transparent 70%);border-radius:50%;pointer-events:none}
.image-link img{display:block;width:100%;height:auto;border-radius:inherit}
.image-link:hover{transform:translateY(-4px) scale(1.025)}
.destination p{font-size:15px;color:#b8b0a9;margin:22px 0 12px;line-height:1.5}
@media(max-width:600px){.art-stage{padding:16px 0;margin:12px auto 24px}.destination{padding:0 4px}.destination h2{font-size:20px;margin-bottom:20px;letter-spacing:-.4px}.image-link{width:125px;border-radius:25px}.destination p{font-size:12px;margin:18px 0 12px}.choices{gap:22px}#replay{margin-top:24px}}
@media(prefers-reduced-motion:reduce){.image-link:hover{transform:none}}
.launch[hidden]{display:none}.launch{position:fixed;inset:0;z-index:20;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#111f;animation:launch-in .18s ease-out both}.launch-art{width:min(280px,70vw);height:160px;animation:launch-out .78s ease-in both}.launch svg{width:100%;height:100%;fill:none;stroke:var(--red);stroke-width:2.5;stroke-linecap:round;filter:drop-shadow(0 0 10px #ed283545)}.launch .meter-arc,.launch .meter-ticks{stroke:#b8b0a9;stroke-width:1.5}.launch circle{fill:var(--red)}.launch .needle{transform-origin:150px 133px;animation:settle .7s ease-out both}.launch-wave path{stroke-dasharray:650;stroke-dashoffset:650;animation:wave-draw .55s ease-out forwards}.launch[data-kind="tuner"] .launch-wave,.launch[data-kind="toolkit"] .launch-tuner{display:none}.launch p{font-size:13px;color:#b8b0a9;letter-spacing:1px}.launch a{font-size:12px;padding:14px;color:#aaa;text-underline-offset:4px}@keyframes launch-in{from{opacity:0}to{opacity:1}}@keyframes launch-out{0%{opacity:0;transform:scale(.9)}25%,65%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(1.04)}}@keyframes settle{0%{transform:rotate(-40deg)}55%{transform:rotate(9deg)}100%{transform:rotate(0)}}@keyframes wave-draw{to{stroke-dashoffset:0}}
@media(prefers-reduced-motion:reduce){.launch,.launch-art,.launch svg *{animation:none!important}.launch-wave path{stroke-dashoffset:0}}

/* Only the animated instrument is visible during navigation. */
.launch:focus{outline:none}.launch .launch-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0;outline:none}

.share-help{max-width:480px;margin:0 auto 24px;text-align:center;font-size:13px;line-height:1.6}.share-help summary{cursor:pointer;padding:12px;color:#ddd}.share-help div{padding:6px 18px}.share-help p{margin:10px 0}.share-help strong{color:#eee}#share-status:empty{display:none}
