@font-face{font-family:Michroma;src:url('assets/michroma.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
:root{color-scheme:dark;--violet:#7775d7;--ink:#dad9ed;--scale:1}
*{box-sizing:border-box}html,body{margin:0;width:100%;min-height:100%;background:#000}body{font-family:Michroma,'Trebuchet MS',sans-serif;color:var(--ink);overflow-x:hidden}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;border:0;background:none;cursor:pointer}button:focus-visible,a:focus-visible{outline:2px solid #dfdefe;outline-offset:5px}button:disabled{cursor:default;opacity:.3}a{color:inherit}button[hidden],[hidden]{display:none!important}.skip-link{position:fixed;top:-100px;left:12px;z-index:100;background:#4e4b9a;padding:12px}.skip-link:focus{top:12px}
#viewport{width:100%;height:calc(100svh - 42px);min-height:180px;position:relative;overflow:hidden}
#stage{position:absolute;left:50%;top:50%;width:1280px;height:720px;transform:translate(-50%,-50%) scale(var(--scale));transform-origin:center;isolation:isolate;user-select:none}
.bridge{position:absolute;left:140px;top:-23px;width:1000px;height:750px;pointer-events:none}
.bridge-logo{position:absolute;left:608px;top:276px;width:72px;height:44px;pointer-events:none}
.navigation-art{position:absolute;left:170px;top:10px;width:948px;height:166px;pointer-events:none}
.nav-button{position:absolute;left:var(--x);top:10px;width:177px;height:166px;border-radius:36px 36px 0 0;clip-path:polygon(0 0,100% 0,100% var(--right),0 var(--left));transition:background .18s,box-shadow .18s}
.nav-button span{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip-path:inset(50%)}
.nav-button:hover,.nav-button[aria-current=page]{background:#d9d7ff13;box-shadow:inset 0 5px 1px #bcb9ff2a}.nav-button:focus-visible{outline:none;box-shadow:inset 0 0 0 4px #dddcff}
.home-control{position:absolute;left:600px;top:271px;width:84px;height:52px;z-index:1}.home-control:hover,.home-control:active{background:transparent}
#home-title{position:absolute;left:0;top:411px;width:100%;margin:0;text-align:center;font-size:39px;font-weight:400;line-height:62px;letter-spacing:-2px;color:#bdbbd7;transform:scaleX(1.025);animation:title-in .65s ease both;pointer-events:none}
#section-title{position:absolute;top:137px;left:0;width:100%;margin:0;font-size:23px;line-height:38px;font-weight:400;text-align:center;color:#706dc1;letter-spacing:-.8px}
#robot-picker{position:absolute;left:170px;top:603px;width:948px;height:102px;padding:0;transition:filter .2s}
#robot-picker img{display:block;width:948px;height:102px;clip-path:polygon(0 0,15% 31%,35% 49%,50% 54%,65% 49%,85% 31%,100% 0,100% 100%,0 100%)}#robot-picker:hover{filter:brightness(1.18)}#robot-picker:focus-visible{filter:brightness(1.3);outline:none}
#panel{position:absolute;left:265px;top:185px;width:758px;height:410px;z-index:3}
#monitor-flight{position:absolute;inset:0;width:1280px;height:720px;z-index:4;overflow:visible;pointer-events:none}
.flight-outline{fill:none;stroke:#a39bdf;stroke-width:.7;vector-effect:non-scaling-stroke}
.flight-face{fill:rgba(105,100,205,.79);stroke:#a39bdf;stroke-width:.7;vector-effect:non-scaling-stroke}
.panel-surface{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}.panel-surface path{fill:rgba(105,100,205,.79)}
#page-content{position:absolute;inset:0;z-index:1;outline:none;font-size:17px;font-weight:400;line-height:1.7;letter-spacing:-.65px;user-select:text}
.panel-enter #page-content{animation:content-in .25s .06s both}.panel-enter .close-control{animation:content-in .2s both}
.close-control{position:absolute;right:7px;top:34px;width:36px;height:40px;padding:0;font-family:Arial,sans-serif;font-size:43px;font-weight:200;line-height:38px;color:#8582e9;z-index:5}.close-control:hover{color:#fff}
.copy{position:absolute;left:31px;right:47px;top:36px;max-height:337px;overflow:auto;scrollbar-width:thin;scrollbar-color:#bbb7fb transparent}.copy p{margin:0 0 14px}.copy p:last-child{margin-bottom:0}.copy h3{font-size:17px;font-weight:400;text-decoration:underline;text-underline-offset:3px;margin:0 0 13px}.copy .small{font-size:15px}.copy.about{top:38px}
#pager{position:absolute;left:265px;top:579px;width:758px;height:67px;z-index:6;pointer-events:none}.triangle{width:36px;height:43px;position:absolute;top:0;padding:10px;pointer-events:auto}.triangle:after{content:'';display:block;width:0;height:0;border-top:10px solid transparent;border-bottom:10px solid transparent}.previous{left:-3px}.previous:after{border-right:19px solid #8987d3}.next{right:-3px}.next:after{border-left:19px solid #8987d3}.triangle:hover:after{filter:brightness(1.65)}#page-count{position:absolute;top:32px;left:0;width:100%;text-align:center;color:#7772c5;font-size:18px;line-height:30px}
.page-heading{position:absolute;left:18px;right:18px;top:36px;margin:0;text-align:center;font-size:17px;line-height:1.5;font-weight:400}.page-subheading{position:absolute;left:18px;right:18px;top:70px;margin:0;text-align:center;font-size:16px;font-weight:400}.group-heading{position:absolute;left:15px;right:15px;margin:0;text-align:center;font-size:17px;line-height:1.5;font-weight:400}
.photo-button{position:absolute;display:block;padding:0;transition:filter .2s,transform .2s}.photo-button:hover{filter:brightness(1.16);transform:translateY(-2px)}.photo-button img{display:block;width:100%;height:100%;object-fit:contain}.press-heading{top:8px}.diploma-caption{position:absolute;left:534px;top:130px;width:195px;font-size:16px;line-height:1.6;text-align:center}
.gallery-extra{position:absolute;right:70px;font-size:10px;line-height:24px;text-decoration:underline;text-underline-offset:4px;color:#d0c9f5}.gallery-extra:hover{color:#fff}
.gallery-video-page{position:absolute;inset:30px 42px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;text-align:center}.gallery-video-title{font-size:17px;line-height:1.6;font-weight:400;margin:0}.video-preview{position:relative;display:block;width:180px;height:134px;flex:none;padding:0}.video-preview img{display:block;width:100%;height:100%;object-fit:cover}.video-preview:after{content:"▶";position:absolute;inset:0;display:grid;place-items:center;font-family:Arial,sans-serif;font-size:26px;color:white;opacity:.8;transition:opacity .2s;background:#0003}.video-preview:hover:after{opacity:1;background:#0005}.gallery-video-link{font-size:16px;line-height:1.6;text-underline-offset:5px}.gallery-video-link:hover{color:#fff}.gallery-footnote{font-size:15px;line-height:1.7;margin:4px 0 0}
.contact-portrait{position:absolute;top:118px;width:222px;height:166px;z-index:-1}.contact-portrait.rm{left:32px}.contact-portrait.mp{left:504px}.contact-logo{position:absolute;left:281px;top:269px;width:199px;height:108px}.contact-email{position:absolute;left:24px;top:295px;width:238px;text-align:center;text-decoration:none;font-size:14px;line-height:1.7;white-space:nowrap;z-index:2}.contact-email:hover{text-decoration:underline}
.robot-group-title{position:absolute;left:20px;right:20px;text-align:center;font-size:18px;line-height:35px;padding:0;margin:0;transform:translateX(0)}button.robot-group-title:hover{color:#fff}.robot-group-title.rm{top:56px}.robot-group-title.mp{top:214px}.variants{position:absolute;left:142px;width:474px;display:flex;justify-content:space-between;border-top:1px solid #c0bcea;padding-top:18px;animation:content-in .2s both}.variants:before{content:'';position:absolute;left:50%;top:-16px;height:15px;width:1px;background:#c0bcea}.variants.rm{top:117px}.variants.mp{top:275px}.variant-button{font-size:17px;line-height:30px;white-space:nowrap;position:relative;padding:7px 2px;transform:translateX(0)}.variant-button:before{content:'';position:absolute;left:50%;top:-18px;height:17px;width:1px;background:#c0bcea}.variant-button:hover{color:#fff;text-shadow:0 0 10px #d7d5ff66}
.robot-name{position:absolute;left:25px;top:63px;width:220px;text-align:center;font-size:18px;margin:0;font-weight:400}.robot-variant-name{position:absolute;left:25px;top:127px;width:220px;text-align:center;font-size:18px;margin:0}.robot-media{position:absolute;left:296px;top:25px;width:166px;height:332px;margin:0;touch-action:none;cursor:grab}.robot-media:active{cursor:grabbing}.robot-media img,.robot-media video{width:100%;height:100%;object-fit:cover;display:block}.robot-data{position:absolute;left:522px;top:64px;width:214px;font-size:18px;line-height:1.6;margin:0}.robot-data dt{margin:0}.robot-data dd{margin:0 0 23px}.rotation-controls{position:absolute;top:377px;left:282px;width:194px;display:flex;align-items:center;justify-content:space-between;height:43px;pointer-events:auto}.rotation-controls button{padding:7px;font-family:Arial,sans-serif;font-size:27px;color:#9b98e7}.rotation-controls button:hover{color:#fff}.rotation-label{font-size:17px;color:#7773d4}.one-view{position:absolute;left:276px;top:422px;width:210px;margin:0;text-align:center;font-family:Arial,sans-serif;font-size:13px;color:#7f7baf}.video-toggle{position:absolute;left:282px;top:379px;width:194px;font-size:15px;padding:9px}
#intro{position:absolute;left:170px;top:10px;width:948px;height:695px;border-radius:37px;background:#7069cbce;border:4px solid #a39fe959;display:grid;place-items:center;z-index:20;pointer-events:none;animation:intro-out 1.35s .15s both}#intro svg{width:330px;height:218px;opacity:.6}#intro .logo-outline{fill:none;stroke:#b0acf1;stroke-width:5}#intro text{font-family:Michroma,sans-serif;font-size:96px;fill:#b0acf1;letter-spacing:-20px;transform:translateX(-8px)}
.archive-tools{height:42px;max-width:1000px;padding:0 24px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px;font-family:Arial,sans-serif;color:#6f6b89;font-size:12px;letter-spacing:.04em}.archive-tools>div{display:flex;align-items:center;gap:17px}.archive-tools button{font-family:Arial,sans-serif;font-size:12px;padding:6px 0;color:#8e89ab}.archive-tools button:hover{color:#d5d1ef}.separator{margin:0 7px;color:#39354e}#info-button{width:20px;height:20px;border:1px solid #49445f;border-radius:50%;padding:0;font-family:Georgia,serif}
.music-controls{display:flex;align-items:center;gap:10px}.archive-tools #music-toggle{display:flex;align-items:center;gap:6px;padding:5px 0;white-space:nowrap;min-width:24px;min-height:28px}.music-controls svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.sound-waves{opacity:.25}#music-toggle.is-playing{color:#c1b7ef}#music-toggle.is-playing .sound-waves{opacity:1}#music-volume{width:64px;height:20px;margin:0;accent-color:#9184c9;cursor:pointer}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
dialog{color:var(--ink);background:#151225;border:1px solid #7167a7;border-radius:14px;box-shadow:0 25px 100px #0009;padding:38px;max-width:min(90vw,900px);max-height:90svh;overflow:auto}dialog::backdrop{background:#000b;backdrop-filter:blur(8px)}.dialog-close{position:absolute;right:12px;top:8px;width:35px;height:35px;font-family:Arial,sans-serif;font-size:30px;z-index:10;color:#b0a7d7}.dialog-close:hover{color:#fff}#image-dialog{text-align:center;min-width:340px}#enlarged-image{display:block;margin:auto;max-width:min(72vw,720px);max-height:65svh;min-height:150px;object-fit:contain}#image-caption{font-size:14px;font-weight:400;line-height:1.8;margin:20px auto 0;max-width:650px}.media-note{font-family:Arial,sans-serif;font-size:12px;color:#a49bbd;line-height:1.7;max-width:600px}.lightbox-controls{display:flex;align-items:center;justify-content:center;gap:25px;font-family:Arial,sans-serif;font-size:13px;color:#aaa0c4}.lightbox-controls button{font-size:25px;min-width:44px;min-height:44px}.text-dialog{font-family:Arial,sans-serif;max-width:640px;line-height:1.75;padding:42px}.text-dialog h2{font-family:Michroma,sans-serif;font-size:22px;line-height:1.6;font-weight:400;margin:8px 0 22px}.text-dialog h3{font-size:18px;margin-top:30px}.text-dialog p{color:#bfb6d1}.eyebrow{font-size:10px;letter-spacing:.2em;color:#8e81b5!important}.text-action{border:1px solid #75659d;border-radius:6px;padding:10px 16px;margin-top:12px}.reading-nav{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:28px}.reading-nav button{border:1px solid #574b75;border-radius:5px;font-family:Arial,sans-serif;font-size:14px;padding:7px 11px}.reading-nav button.active{background:#51477f}.reading-dialog{max-width:800px}.reading-media{display:flex;flex-wrap:wrap;gap:15px;align-items:center}.reading-media img{max-width:180px;max-height:220px;object-fit:contain}.reading-dialog table{border-collapse:collapse;font-size:14px;width:100%}.reading-dialog th,.reading-dialog td{text-align:left;border-bottom:1px solid #51445f;padding:10px 8px}.noscript{text-align:center;padding:30px}
@keyframes content-in{from{opacity:0}to{opacity:1}}@keyframes title-in{from{opacity:0}to{opacity:1}}@keyframes intro-out{0%,35%{opacity:1;transform:scaleY(1)}90%,100%{opacity:0;transform:scaleY(.96)}}
@media(max-width:700px){#viewport{height:calc(100svh - 66px)}.archive-tools{padding:0 16px;height:66px;font-size:10px;gap:8px;line-height:1.8;align-items:center}.archive-tools>div{gap:10px}.archive-tools button{font-size:11px}.separator{margin:0 3px}.text-dialog{padding:38px 24px;max-width:94vw;max-height:94svh}.text-dialog h2{font-size:18px}.reading-nav{gap:5px}.reading-nav button{font-size:13px}.media-note{font-size:11px}#image-dialog{min-width:0;width:94vw;padding:45px 20px 20px}#enlarged-image{max-width:78vw}.reading-dialog table{font-size:12px}.reading-dialog th,.reading-dialog td{padding:8px 4px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}#intro{display:none}}
@media(max-width:700px){.music-toggle-text{display:none}.music-controls{gap:4px}#music-volume{width:44px}.archive-tools>.footer-controls{gap:10px}.archive-tools>span{min-width:0}}

.language-switch{display:flex;align-items:center;gap:6px;font-family:Arial,sans-serif;font-size:11px;white-space:nowrap}.language-switch a{padding:6px 0;color:#77718d;text-decoration:none}.language-switch a:hover,.language-switch a[aria-current=page]{color:#d5d1ef}.language-switch span{color:#39354e}
html[lang=en] .nav-button span{inset:39px 0 auto;width:177px;height:auto;margin:0;overflow:visible;clip-path:none;text-align:center;font-size:24px;line-height:40px;letter-spacing:-1px;color:#c0bedc;font-weight:400}html[lang=en] .english-navigation{overflow:visible}.english-picker{width:948px;height:102px;display:block}.english-picker text{font-family:Michroma,sans-serif;font-size:30px;letter-spacing:-1.4px;fill:#c0bedc}
@media(max-width:700px){.archive-tools>.footer-controls{gap:7px}.language-switch{gap:4px;font-size:10px}}
