:root{--font:-apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--ink:#111;--muted:#636366;--wall:#efefee;--radius-icon:22.37%;--gutter:24px;--detail-size:min(42vh, 360px);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,:before,:after{box-sizing:border-box}html{background:var(--wall)}html.is-locked{overflow:hidden}body{min-height:100svh;margin:0}body:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(70% 55% at 50% 42%,#fff 0%,#ffffffd9 35%,#fff0 75%),linear-gradient(#f3f3f2 0%,#e9e9e8 100%);position:fixed;inset:0}#root{flex-direction:column;min-height:100svh;display:flex}img{display:block}:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.site-header{z-index:20;padding:18px var(--gutter) 14px;background:0 0;justify-content:space-between;align-items:center;gap:16px;display:flex;position:sticky;top:0}.site-name{letter-spacing:-.01em;margin:0;font-size:15px;font-weight:600}.site-intro{color:var(--muted);margin:0;font-size:14px;line-height:1.35}.site-intro span{display:block}.scene{padding:clamp(16px, 4vh, 48px) var(--gutter);flex:1;align-content:center;place-items:center;display:grid;overflow-x:clip}.shelves{flex-direction:column;align-items:center;gap:clamp(24px,6vh,88px);display:flex}.shelf{--icon:clamp(100px, min(13.5vw, 20vh), 196px);--gap:calc(var(--icon) * .3);--overhang:calc(var(--icon) * .42);position:relative}.shelf:before{content:"";pointer-events:none;z-index:-1;background:radial-gradient(50% 55% at 50% 100%,#fffffff2,#fff0 70%);width:120%;height:160%;position:absolute;bottom:0;left:50%;translate:-50%}.shelf-items{z-index:1;justify-content:center;gap:var(--gap);padding:0 var(--overhang);margin-bottom:7px;display:flex;position:relative}.shelf-board{background:linear-gradient(#fff 0%,#efefee 100%);border-radius:1px 1px 3px 3px;height:12px;position:relative;box-shadow:0 1px #0000000f,0 14px 18px -10px #00000047,0 40px 60px -28px #00000040}.shelf-board:before{content:"";clip-path:polygon(1.5% 0,98.5% 0,100% 100%,0 100%);background:linear-gradient(#e3e3e2 0%,#f7f7f6 100%);height:10px;position:absolute;bottom:100%;left:0;right:0}.app-slot{width:var(--icon);padding-top:24px;position:relative}.app-button{all:unset;cursor:pointer;transform-origin:50% 100%;border-radius:var(--radius-icon);-webkit-tap-highlight-color:transparent;display:block;position:relative}.app-button:focus-visible{outline:none}.app-button:focus-visible .tile{outline:2px solid var(--ink);outline-offset:5px}.app-slot[data-hidden] .app-button:before{visibility:hidden}.app-button:before{content:"";border-radius:var(--radius-icon);background:linear-gradient(#d9d9d8,#c4c4c3);position:absolute;inset:4px .5px -4px}.tile{width:var(--icon);aspect-ratio:1;border-radius:var(--radius-icon);background:#fff;display:block;position:relative;overflow:hidden;box-shadow:0 0 0 .5px #00000014,0 1px 2px #00000014,0 10px 24px -12px #00000038}.tile .tile-dot{position:absolute;inset:0}.tile img{object-fit:cover;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;width:100%;height:100%}.tile:after{content:"";border-radius:inherit;pointer-events:none;background:linear-gradient(165deg,#ffffff4d 0%,#fff0 40%);position:absolute;inset:0;box-shadow:inset 0 1px #ffffff80,inset 0 0 0 .5px #0000000f}.app-contact-shadow{background:radial-gradient(closest-side,#0000004d,#0000);border-radius:50%;height:16px;transition:transform .45s cubic-bezier(.22,1,.36,1),opacity .45s;position:absolute;bottom:-6px;left:6%;right:6%}.app-slot[data-pose=lift] .app-contact-shadow{opacity:.45;transform:scale(1.15,1.4)}.app-pills{z-index:2;justify-content:center;gap:6px;display:flex;position:absolute;bottom:30px;left:0;right:0}.pill{white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:500;line-height:1;text-decoration:none;display:inline-flex}.pill--glass{color:var(--ink);-webkit-backdrop-filter:blur(14px)saturate(1.8);backdrop-filter:blur(14px)saturate(1.8);cursor:pointer;background:#ffffff9e;box-shadow:0 0 0 .5px #00000014,0 4px 12px #00000024}.pill--solid{color:#fff;background:var(--ink);padding:11px 18px}.pill--muted{color:var(--muted);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffb8;padding:11px 18px;box-shadow:0 0 0 .5px #00000014}.index-bar{z-index:20;padding:0 var(--gutter) 18px;position:relative}.index-bar ul{border-top:1px solid #0000001a;grid-template-columns:repeat(6,minmax(0,1fr));gap:16px;margin:0;padding:14px 0 0;list-style:none;display:grid}.index-item{all:unset;box-sizing:border-box;cursor:pointer;flex-direction:column;gap:2px;width:100%;font-size:12px;line-height:1.3;display:flex}.index-year,.index-platform{color:var(--muted);transition:color .2s}.index-name{text-underline-offset:3px;margin-top:2px;font-size:13px;font-weight:500;-webkit-text-decoration:underline #0000;text-decoration:underline #0000;transition:text-decoration-color .2s}.index-item.is-active .index-year,.index-item.is-active .index-platform{color:var(--ink)}.index-item.is-active .index-name{text-decoration-color:currentColor}.index-item:focus-visible{outline:2px solid var(--ink);outline-offset:4px;border-radius:4px}.detail{z-index:10;position:fixed;inset:0}.detail.is-leaving,.detail.is-leaving *{pointer-events:none!important}.detail-backdrop{opacity:0;-webkit-backdrop-filter:blur(20px)saturate(1.1);backdrop-filter:blur(20px)saturate(1.1);background:#f5f5f49e;position:absolute;inset:0}.detail-stage{pointer-events:none;grid-template-columns:1fr auto 1fr;align-items:center;gap:48px;padding:96px 32px 120px;display:grid;position:absolute;inset:0}.detail-stage>*{pointer-events:auto}.detail-text{opacity:0;justify-self:start;max-width:340px}.detail-title{letter-spacing:-.02em;margin:0 0 10px;font-size:clamp(28px,3vw,40px);font-weight:500;line-height:1.05}.detail-tagline{margin:0 0 18px;font-size:17px;line-height:1.4}.detail-meta{color:var(--muted);margin:0;font-size:13px}.detail-icon{flex-direction:column;align-items:center;gap:22px;display:flex;position:relative}.detail-glow{left:50%;top:calc(var(--detail-size) / 2);width:calc(var(--detail-size) * 1.6);aspect-ratio:1;background:radial-gradient(closest-side, color-mix(in srgb, var(--accent) 38%, transparent), transparent);filter:blur(24px);opacity:0;z-index:-1;pointer-events:none;border-radius:50%;position:absolute;translate:-50% -50%}.detail-anchor{width:var(--detail-size);aspect-ratio:1}.tile--detail{--icon:var(--detail-size);box-shadow:0 0 0 .5px #00000014,0 30px 60px -22px #00000059,0 12px 24px -12px #0003}.detail-cta{opacity:0}.detail-close{top:76px;right:var(--gutter);width:40px;height:40px;color:var(--ink);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);cursor:pointer;opacity:0;background:#ffffffb3;border:0;border-radius:50%;place-items:center;display:grid;position:absolute;box-shadow:0 0 0 .5px #00000014,0 4px 14px #0000001a}@view-transition{navigation:auto}.detail .tile--detail,.stage-tile{view-transition-name:reminder-icon}body:not(:has(.detail)) .app-slot[data-app=reminder] .tile{view-transition-name:reminder-icon}.stage-name{view-transition-name:reminder-title}.stage-tagline{view-transition-name:reminder-lead}::view-transition-group(reminder-icon){animation-duration:.62s;animation-timing-function:linear(0, .0361, .1237, .2383, .3623, .484, .5961, .6945, .7776, .8454, .8989, .9398, .9698, .9909, 1.005, 1.0136, 1.0181, 1.0198, 1.0196, 1.0181, 1.0159, 1.0135, 1.011, 1.0087, 1.0067, 1.0049, 1.0035, 1.0023, 1)}::view-transition-group(reminder-title){animation-duration:.62s;animation-timing-function:linear(0, .0361, .1237, .2383, .3623, .484, .5961, .6945, .7776, .8454, .8989, .9398, .9698, .9909, 1.005, 1.0136, 1.0181, 1.0198, 1.0196, 1.0181, 1.0159, 1.0135, 1.011, 1.0087, 1.0067, 1.0049, 1.0035, 1.0023, 1)}::view-transition-group(reminder-lead){animation-duration:.62s;animation-timing-function:linear(0, .0361, .1237, .2383, .3623, .484, .5961, .6945, .7776, .8454, .8989, .9398, .9698, .9909, 1.005, 1.0136, 1.0181, 1.0198, 1.0196, 1.0181, 1.0159, 1.0135, 1.011, 1.0087, 1.0067, 1.0049, 1.0035, 1.0023, 1)}::view-transition-group(reminder-title){animation-delay:30ms}::view-transition-group(reminder-lead){animation-delay:60ms}::view-transition-old(reminder-title){object-fit:contain;height:100%}::view-transition-new(reminder-title){object-fit:contain;height:100%}::view-transition-old(reminder-lead){object-fit:contain;height:100%}::view-transition-new(reminder-lead){object-fit:contain;height:100%}::view-transition-old(root){animation:.28s ease-out both vt-fade-out}::view-transition-new(root){animation:.4s ease-out 80ms both vt-fade-in}@keyframes vt-fade-out{to{opacity:0}}@keyframes vt-fade-in{0%{opacity:0}}.tap-hint{color:var(--muted);text-align:center;margin:18px 0 0;font-size:13px;display:none}@media (hover:none){.tap-hint{display:block}}@media (width<=767px){:root{--gutter:16px;--detail-size:min(62vw, 300px, 40vh)}.shelf{--icon:min(33vw, 150px);--overhang:calc(var(--icon) * .18)}.scene{padding:24px var(--gutter)}.shelves{gap:32px}.detail-backdrop{background:#f5f5f4c2}.index-bar ul{scrollbar-width:none;grid-template-columns:none;grid-auto-columns:max-content;grid-auto-flow:column;gap:28px;padding-bottom:4px;overflow-x:auto}.index-bar ul::-webkit-scrollbar{display:none}.detail-stage{text-align:center;padding:72px var(--gutter) 96px;grid-template-columns:1fr;align-content:center;justify-items:center;gap:28px}.detail-icon{order:-1}.detail-text{justify-self:center}.site-header{grid-template-columns:1fr auto;align-items:center;row-gap:8px;padding-top:16px;display:grid}.site-header>div{display:contents}.site-name{margin:0;font-size:17px}.site-header>.pill{grid-area:1/2;padding:9px 15px}.site-intro{grid-column:1/-1;font-size:15px}.index-item{flex-flow:wrap;align-items:baseline;gap:8px}.index-name{order:-1;margin-top:0;font-size:15px}.index-year,.index-platform{font-size:13px}}@media (prefers-reduced-motion:reduce){::view-transition-group(*){animation-duration:10ms;animation-delay:0s}}.scene--stage{padding-bottom:clamp(48px,10vh,120px)}.stage{--size:clamp(150px, min(30vw, 30vh), 240px);text-align:center;flex-direction:column;align-items:center;gap:clamp(28px,5vh,44px);display:flex}.stage-float{width:var(--size);height:var(--size);position:relative}.stage-float:before{content:"";z-index:-2;filter:blur(10px);pointer-events:none;background:radial-gradient(closest-side,#ff6a3d33,#ff6a3d00);border-radius:50%;position:absolute;inset:-45%}.stage-shadow{z-index:-1;filter:blur(4px);background:radial-gradient(closest-side,#00000038,#0000);border-radius:50%;height:18%;position:absolute;bottom:-18%;left:12%;right:12%}.stage-button{all:unset;cursor:pointer;border-radius:var(--radius-icon);touch-action:none;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;will-change:transform;width:100%;height:100%;display:block}.stage-button:focus-visible .tile{outline:2px solid var(--ink);outline-offset:6px}.stage-tile{--icon:var(--size);box-shadow:0 0 0 .5px #0000000f,0 2px 4px #0000000f,0 24px 48px -18px #f0380f73}.stage-gloss{border-radius:inherit;pointer-events:none;mix-blend-mode:soft-light;position:absolute;inset:0}.stage-name{letter-spacing:-.03em;width:fit-content;margin:0 auto;font-size:clamp(28px,4.2vw,40px);font-weight:600;line-height:1.05}.stage-tagline{width:fit-content;color:var(--muted);margin:10px auto 0;font-size:clamp(16px,1.6vw,19px)}.stage-meta{color:var(--muted);background:#ffffffb3;border-radius:999px;margin:18px 0 0;padding:7px 13px;font-size:12px;font-weight:500;display:inline-block;box-shadow:0 0 0 .5px #00000014}@media (width<=767px){.stage{--size:min(46vw, 200px)}}.logo{color:var(--ink);letter-spacing:-.045em;align-items:baseline;font-size:20px;font-weight:600;line-height:1;text-decoration:none;display:inline-flex}.logo-dot{background:#f0480f;border-radius:50%;width:.24em;height:.24em;margin-left:.07em}
