/* R30: reference motion translated into CYBARRIER's existing visual system. */
@property --entry-scan{syntax:'<percentage>';inherits:true;initial-value:140%}
body.interactions-r30 #hero .hero-entry{width:370px;height:76px;bottom:15.8%}
body.interactions-r30 #hero #hero-explore{height:76px;min-height:76px;display:grid;grid-template-columns:44px 1fr 32px;gap:16px;padding:0 19px;border-radius:20px;border:1px solid #fff;color:#254d63;background:linear-gradient(155deg,#ffffffed,#f3fcfd9c 63%,#cce8f1a6);box-shadow:inset 0 1px 0 #fff,0 2px 1px #9abcc550,0 12px 30px -22px #2b5869;transform:perspective(650px) rotateX(calc((.5 - var(--my,.5))*6deg)) rotateY(calc((var(--mx,.5) - .5)*6deg));transition:transform .45s cubic-bezier(.2,1.6,.4,1),box-shadow .45s,background .45s;isolation:isolate;overflow:hidden}
body.interactions-r30 #hero #hero-explore::after{display:none}
body.interactions-r30 #hero-explore .explore-copy{gap:5px;z-index:3;mask-image:linear-gradient(-75deg,#fff calc(var(--entry-scan) - 32%),#ffffff60 calc(var(--entry-scan) - 14%),#fff var(--entry-scan))}
body.interactions-r30 #hero-explore .explore-label{font-size:18px;font-weight:500;letter-spacing:-.025em;line-height:1.25}
body.interactions-r30 #hero-explore .explore-caption{font-size:10px;line-height:1.4;letter-spacing:-.01em;color:#617e8f}
body.interactions-r30 #hero-explore .entry-glyph{position:relative;display:block;height:36px;width:40px;perspective:140px;transform:rotate(-15deg);z-index:3}
.entry-glyph i{position:absolute;inset:7px 4px;border:1px solid #6397ad;border-radius:3px;transform:rotateY(-33deg) rotateX(18deg) translateZ(calc((var(--plane,0) - 1)*8px));background:linear-gradient(130deg,#fff9,#a8d2e644);box-shadow:inset 0 0 8px #f5fcffcc;transition:transform .55s cubic-bezier(.2,1.3,.3,1)}
.entry-glyph i:nth-child(1){--plane:0}.entry-glyph i:nth-child(2){--plane:1}.entry-glyph i:nth-child(3){--plane:2}
.entry-arrow{position:relative;display:grid;place-items:center;width:32px;height:35px;border-left:1px solid #84a7b449;z-index:3;transition:transform .5s}.entry-arrow svg{width:21px;height:21px;stroke:currentColor;stroke-width:1.2;transform:translateX(3px)}
.entry-shine{position:absolute;inset:0;z-index:1;background:linear-gradient(115deg,transparent 15%,#ffffffc0 44%,transparent 70%);transform:translateX(-120%);pointer-events:none}
.entry-border{position:absolute;inset:0;border-radius:inherit;padding:1px;pointer-events:none;z-index:4;background:linear-gradient(110deg,transparent 30%,#5d9fbcbf 46%,#fff 51%,transparent 68%);background-size:240% 100%;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;opacity:0}
body.interactions-r30 #hero #hero-explore:is(:hover,:focus-visible,.is-entering){transform:perspective(650px) rotateX(calc((.5 - var(--my,.5))*6deg)) rotateY(calc((var(--mx,.5) - .5)*6deg)) translateY(-3px) scale(1.015);background:linear-gradient(150deg,#fff,#d9f0f6);box-shadow:inset 0 1px 0 #fff,0 3px 1px #9abcc550,0 18px 38px -20px #456f8360}
#hero-explore:is(:hover,:focus-visible) .entry-glyph i{transform:rotateY(-20deg) rotateX(4deg) translateZ(calc((var(--plane,0) - 1)*13px))}
#hero-explore:is(:hover,:focus-visible) .entry-arrow{transform:translateX(3px)}
body.interactions-r30 #hero #hero-explore:active{transform:translateY(1px) scale(.97);transition:transform .16s}
.r30-controls-live #hero-explore .explore-copy,.r30-controls-live .scroll-word{animation:entry-type-shine 5.5s linear infinite}
.r30-controls-live .entry-border{animation:entry-edge-shine 5.5s linear infinite}
.r30-controls-live #hero-explore .entry-shine{animation:entry-surface-shine 5.5s cubic-bezier(.4,0,.2,1) infinite}
@keyframes entry-type-shine{0%,65%{--entry-scan:140%}94%,100%{--entry-scan:-120%}}
@keyframes entry-edge-shine{0%,60%{background-position:150% 0;opacity:0}67%{opacity:.9}93%,100%{background-position:-70% 0;opacity:0}}
@keyframes entry-surface-shine{0%,66%{transform:translateX(-120%);opacity:0}70%{opacity:.8}94%,100%{transform:translateX(120%);opacity:0}}
body.interactions-r30 #hero .scroll-cue{display:flex;align-items:center;gap:15px;right:4.2%;bottom:6.5%;padding:8px 10px 8px 14px;font-size:11px;letter-spacing:.13em;border:1px solid #739eaf26;border-radius:28px;isolation:isolate;transition:background .3s,transform .35s;overflow:hidden}
body.interactions-r30 #hero .scroll-cue .scroll-word{display:block;font-size:inherit;font-weight:500;letter-spacing:inherit;mask-image:linear-gradient(-75deg,#fff calc(var(--entry-scan) - 35%),#ffffff50 calc(var(--entry-scan) - 15%),#fff var(--entry-scan));animation-play-state:inherit;transform:none}
body.interactions-r30 #hero .scroll-cue .scroll-arrow{display:grid;place-items:center;width:32px;height:32px;border:1px solid #8aadb64a;border-radius:50%;font-size:inherit;animation:none;transition:transform .45s;background:#ffffff44}
.scroll-arrow svg{width:20px;height:20px;stroke:currentColor;stroke-width:1.4;transform:rotate(90deg)}
body.interactions-r30 #hero .scroll-cue:is(:hover,:focus-visible){background:#ffffff8a;transform:translateY(-2px)}
body.interactions-r30 #hero .scroll-cue:is(:hover,:focus-visible) .scroll-arrow{transform:translateY(2px)}
html[lang=en] body.interactions-r30 #hero-explore .explore-label{font-size:15px}
html[lang=en] body.interactions-r30 #hero-explore .explore-caption{font-size:8px;letter-spacing:.035em}

/* Project index: a partial instrument dial becomes a browsable, real archive. */
.project-index-r30{position:absolute;right:0;top:14%;width:34%;height:72%;z-index:8;color:#234967;isolation:isolate;transition:width .65s cubic-bezier(.2,.75,.2,1),opacity .5s;visibility:hidden}
.project-index-trigger{position:absolute;inset:0;width:100%;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:30px 22px 30px 38%;background:none;border:0;text-align:left;color:inherit;overflow:hidden;cursor:pointer;transition:opacity .45s}
.project-index-kicker{font:10px/1.5 var(--font-mono,monospace);letter-spacing:.14em;opacity:.55;position:relative;z-index:2}
.project-index-dial{position:absolute;width:630px;height:630px;left:19%;top:50%;transform:translateY(-50%);pointer-events:none;opacity:.52}
.project-index-dial svg{width:100%;height:100%;fill:none;stroke:#557e924b;stroke-width:.7;transform:rotate(-25deg);transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}
.project-index-dial svg path{stroke:#527b92a6;stroke-width:1}.dial-years{position:absolute;left:48px;top:190px;font-size:17px;line-height:2.9;font-weight:300;letter-spacing:.02em;transform:rotate(-10deg)}.dial-years b{font-weight:400;font-size:24px;display:inline-block;transform:translateX(-10px)}
.project-index-dial i{position:absolute;width:90%;left:5%;top:50%;height:1px;background:linear-gradient(90deg,transparent,#72aec5aa,transparent);transform:rotate(-22deg)}
.project-index-hint{font-size:clamp(17px,1.75vw,26px);letter-spacing:-.045em;line-height:1.5;position:relative;z-index:2;max-width:210px;word-break:keep-all;margin:38px 0 18px}
.project-index-trigger small{font:9px/1.5 monospace;letter-spacing:.06em;position:relative;z-index:2}.project-index-trigger small b{display:inline-block;margin-left:14px;font-size:20px;font-weight:300;transition:translate .4s}
.project-index-trigger:is(:hover,:focus-visible) small b{translate:4px -4px}
.project-index-trigger:focus-visible{outline:2px solid #77a9bf;outline-offset:-12px}
.project-index-r30.is-expanded{width:48%;right:3%}.project-index-r30.is-expanded .project-index-trigger{opacity:0;pointer-events:none}.project-index-r30.is-expanded .project-index-dial svg{transform:rotate(22deg)}
#project-index-panel{position:absolute;inset:0;display:flex;flex-direction:column;border:1px solid #87a9b742;border-radius:4px;background:linear-gradient(135deg,#f9fdfffa,#e1f1f7fc);box-shadow:0 35px 80px -55px #1f455b90;opacity:0;transform:translateX(70px) scale(.96);clip-path:inset(0 0 0 80%);transition:transform .6s cubic-bezier(.2,.75,.2,1),opacity .4s,clip-path .65s cubic-bezier(.2,.75,.2,1);overflow:hidden;pointer-events:none}
.is-expanded #project-index-panel{opacity:1;transform:none;clip-path:inset(0);pointer-events:auto}
#project-index-panel>header{display:flex;justify-content:space-between;align-items:center;padding:22px 26px 18px;font-size:20px;letter-spacing:-.03em}#project-index-panel .index-close{width:34px;height:34px;font-size:25px;border:0;background:none;color:inherit}
.index-years{display:flex;gap:7px;overflow-x:auto;padding:0 26px 17px;flex:none;scrollbar-width:thin}.index-years button{border:1px solid #557b8d30;background:transparent;border-radius:3px;min-width:42px;padding:6px 8px;color:inherit;font:10px/1.3 monospace}.index-years button[aria-pressed=true]{background:#2d576c;color:#f1fcff;border-color:#2d576c}
.index-results{overflow:auto;min-height:0;flex:1;padding:0 26px;overscroll-behavior:contain;scrollbar-width:thin}.index-results button{display:grid;grid-template-columns:44px 1fr 20px;gap:12px;width:100%;padding:15px 0;background:none;border:0;border-top:1px solid #7094a32c;text-align:left;color:inherit;transition:padding .25s,color .25s}.index-results button:hover{padding-left:8px;color:#187994}.index-results b{font-size:14px;font-weight:450;line-height:1.4;display:block}.index-results small{display:block;font:9px/1.5 monospace;opacity:.55;margin-top:5px}.index-year{font:10px/1.5 monospace;opacity:.6}.index-results i{font-style:normal;font-size:16px}.index-results button:focus-visible{outline:1px solid #52798e;outline-offset:-1px}
#project-index-panel>footer{padding:16px 26px;display:flex;justify-content:space-between;gap:15px;font-size:10px;border-top:1px solid #7094a32c}.index-all{border:0;background:none;color:inherit;font-size:11px}
body.interactions-r30 .record-focus{width:57%;max-width:760px;left:7%;text-align:left;transform:translateY(-50%) scale(var(--record-focus-scale,.8))}
body.interactions-r30 .record-focus h2{font-size:clamp(46px,5.9vw,88px);text-align:left;max-width:700px;margin-left:0}
body.interactions-r30 .record-target{margin:28px 0 20px}body.interactions-r30 .record-focus .record-meta,body.interactions-r30 .record-selection{justify-content:flex-start}
body.interactions-r30 .record-selection{max-width:680px}body.interactions-r30 .record-ledger{max-width:680px}

/* Facility images first rise in staggered columns, then become orbital nodes. */
body.interactions-r30 #facilities{height:210svh;min-height:1560px;padding:0;overflow:visible;background:linear-gradient(#edf7fa,#f8fcfd 28%,#e9f3f7 86%,#e9f2f6)}
body.interactions-r30 .mapped-stage{position:sticky;top:min(0px,calc(100svh - 850px));height:max(100svh,850px);min-height:0;padding:85px 4% 42px;overflow:hidden}
body.interactions-r30 #facilities .mapped-divider{display:none}
body.interactions-r30 #facilities .section-heading{position:relative;z-index:3;max-width:1280px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:5px 50px;text-align:left;align-items:end}
body.interactions-r30 #facilities .section-heading .eyebrow{grid-column:1/-1;margin:0 0 12px;font-size:10px}
body.interactions-r30 #facilities .section-heading h2{font-size:clamp(36px,4vw,62px);line-height:1.08;margin:0;max-width:650px}
body.interactions-r30 #facilities .section-heading>p:last-child{max-width:350px;width:auto;justify-self:end;font-size:14px;line-height:1.8;margin:0 0 3px;text-align:left}
body.interactions-r30 .facility-depth{width:100%;max-width:1200px;height:485px;margin:0 auto;perspective:none;transform:none;scale:1;opacity:1}
body.interactions-r30 #facility-tabs{perspective:none;transform:none!important;transition:none;z-index:3}
body.interactions-r30 #facility-tabs button{display:block;position:absolute;left:50%;top:50%;width:136px;min-height:0;height:128px;padding:0;border:0;border-radius:0;background:none;box-shadow:none;white-space:normal;text-align:center;transition:none;overflow:visible;color:#31576b;will-change:transform}
body.interactions-r30 #facility-tabs button:before{display:none}
body.interactions-r30 #facility-tabs .facility-signal,body.interactions-r30 #facility-tabs .capsule-count,body.interactions-r30 #facility-tabs .capsule-label>span{display:none}
.facility-node-image{position:relative;display:block;margin:0 auto 12px;width:108px;height:76px;padding:4px;border:1px solid #ffffffeb;border-radius:12px;background:linear-gradient(120deg,#ffffffaa,#bddae699);box-shadow:0 13px 20px -17px #294c69ad,inset 0 0 1px #3f718066;transform:perspective(500px) rotateY(-8deg) rotateX(6deg);transition:transform .6s cubic-bezier(.2,1,.3,1),box-shadow .5s}
.facility-node-image img{width:100%;height:100%;object-fit:cover;border-radius:8px;filter:saturate(.24) contrast(.88);opacity:.8;transition:filter .55s,opacity .55s}.facility-node-image i{position:absolute;top:8px;left:8px;font:8px/1 monospace;color:#fff;background:#234e6370;padding:3px 4px;border-radius:2px;font-style:normal}
body.interactions-r30 #facility-tabs .capsule-label b{display:block;font-size:12px;line-height:1.4;font-weight:450;opacity:1;letter-spacing:-.015em}
body.interactions-r30 #facility-tabs button[aria-pressed=true]{border:0;background:none;box-shadow:none}
body.interactions-r30 #facility-tabs button[aria-pressed=true] .facility-node-image{transform:perspective(500px) rotateY(0deg) rotateX(0deg) translateY(-6px) scale(1.08);box-shadow:0 15px 22px -15px #43687bb0,0 0 0 1px #78acbf80}
body.interactions-r30 #facility-tabs button[aria-pressed=true] img{filter:saturate(.6) contrast(.95);opacity:1}
body.interactions-r30 #facility-tabs button:focus-visible{outline:1px solid #39778d;outline-offset:4px;border-radius:12px}
.facility-orbits-r30{position:absolute;width:100%;height:100%;inset:0;opacity:var(--atlas-arrival,0);transform:rotate(-9deg);pointer-events:none}
.facility-core-r30{position:absolute;left:50%;top:50%;width:260px;height:170px;transform:translate(-50%,-50%) scale(calc(.72 + var(--atlas-arrival,0)*.28));opacity:var(--atlas-arrival,0);z-index:2;text-align:center;pointer-events:none}
.facility-core-r30>span{position:absolute;bottom:calc(100% + 13px);left:0;width:100%;font:8px/1.5 monospace;letter-spacing:.11em;opacity:.55}.facility-core-r30>small{position:absolute;top:calc(100% + 15px);left:0;width:100%;font-size:10px;opacity:.65}
.core-picture{position:relative;width:100%;height:100%;mask-image:radial-gradient(ellipse,#000 30%,#000a 52%,transparent 73%)}.core-picture img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.2);opacity:0;transform:scale(1.12);transition:opacity .8s,transform 1.6s}.core-picture img.is-selected{opacity:.7;transform:scale(1)}
.facility-stage-note{position:absolute;bottom:4px;left:0;right:0;display:flex;justify-content:space-between;font-size:9px;letter-spacing:.06em;color:#6a8999;opacity:var(--atlas-arrival,0);pointer-events:none}
body.interactions-r30 #facilities .facility-viewport{width:540px;max-width:85%;height:var(--facility-copy-height,135px);min-height:100px;margin:16px auto 0;opacity:var(--atlas-entry,0)}
body.interactions-r30 #facilities .facility-copy p{font-size:14px;line-height:1.7}
body.interactions-r30 .facility-pagination{width:100%;max-width:1200px;margin:-80px auto 0;pointer-events:none}
body.interactions-r30 .facility-pagination>div{pointer-events:auto}body.interactions-r30 .facility-pagination button{width:42px;height:42px;font-size:15px}
body.interactions-r30 .facility-index{display:none}

/* R&D detail uses bound volumes rather than an unrelated documents jump. */
body.interactions-r30 #research .research-book-link{position:relative;display:inline-flex;align-items:center;gap:13px;padding:13px 19px 13px 46px;border:1px solid #c0dcea44;border-radius:5px;font-size:12px;color:#def4ff;background:linear-gradient(135deg,#f1faff0a,#81b5cd16);transition:background .4s,translate .4s}
.research-book-link:before,.research-book-link:after{content:'';position:absolute;width:15px;height:22px;left:18px;top:50%;border:1px solid #b4d6e3;border-radius:1px;transform:translateY(-50%) rotateY(-25deg) rotate(-7deg);background:#304864;transition:transform .4s}.research-book-link:after{left:15px;transform:translateY(-50%) rotateY(-25deg) rotate(-7deg);transform-origin:0 50%;background:#57798b}
.research-book-link:hover:after{transform:translateY(-50%) perspective(80px) rotateY(-62deg) rotate(-7deg)}
body.interactions-r30 #research .research-book-link:hover{background:#b5dbe421;translate:0 -2px}
.research-book-link .mini-book{display:none}

/* Detail drawer and its lazy Three.js book stage. */
#research-books-r30{width:min(1320px,96vw);height:min(870px,94svh);max-width:none;max-height:none;padding:0;border:1px solid #d4e8ef70;border-radius:12px;background:radial-gradient(ellipse at 37% 44%,#e8f5fa,#d8eaf3 54%,#f6fbfc);color:#234b62;overflow:hidden;box-shadow:0 40px 140px #07192e4d}
#research-books-r30::backdrop{background:#081c32a8;backdrop-filter:blur(6px)}
.book-dialog-top{position:absolute;top:0;left:0;right:0;padding:25px 30px;display:flex;justify-content:space-between;align-items:center;z-index:5}.book-dialog-top p{margin:0;font:10px/1.5 monospace;letter-spacing:.1em}.book-dialog-top button{display:flex;gap:14px;align-items:center;border:0;background:none;color:inherit;font-size:11px;padding:8px}.book-dialog-top button b{font-size:24px;font-weight:300}
.book-stage-r30{position:absolute;inset:0 37% 0 0;touch-action:pan-y}.book-stage-r30 canvas{display:block;width:100%;height:100%;outline:0}.book-stage-r30 canvas:focus-visible{outline:2px solid #76a7bd;outline-offset:-6px}
.book-watermark{position:absolute;top:15%;left:6%;font-size:clamp(75px,10vw,160px);line-height:1;font-weight:250;letter-spacing:-.065em;color:#6293ae1f;pointer-events:none}
.book-detail-r30{position:absolute;right:5%;top:20%;width:31%;bottom:16%;overflow:auto;overscroll-behavior:contain;padding-right:8px;scrollbar-width:thin}
.book-detail-r30 .book-number{font:11px/1.5 monospace;color:#60889e}.book-detail-r30 h2{font-size:clamp(27px,3vw,46px);font-weight:400;line-height:1.2;letter-spacing:-.05em;word-break:keep-all;margin:20px 0}.book-detail-r30>p{font-size:14px;line-height:1.8;color:#577487}.book-detail-r30 ul{padding:18px 0 0;list-style:none;border-top:1px solid #779aac33}.book-detail-r30 li{display:grid;grid-template-columns:48px 1fr;gap:12px;font-size:12px;line-height:1.65;margin:16px 0}.book-detail-r30 time{font:10px/1.6 monospace;color:#6f8c9d}.book-detail-r30 a{display:inline-block;font-size:12px;border-bottom:1px solid #769cb3;padding:5px 0;margin-top:16px}
.book-topic-nav{position:absolute;left:30px;right:30px;bottom:28px;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #7397aa44;z-index:5;gap:18px}.book-topic-nav button{display:flex;align-items:center;gap:13px;padding:17px 0;background:none;border:0;color:#5f8194;font-size:11px;text-align:left;border-top:2px solid transparent;margin-top:-1px}.book-topic-nav button[aria-pressed=true]{border-color:#376581;color:#244d64}.book-topic-nav button span{font:9px/1.5 monospace}.book-topic-nav button:focus-visible{outline:1px solid #376581;outline-offset:5px}.book-gesture{position:absolute;bottom:115px;left:4%;width:55%;font-size:9px;color:#6b8b9d;text-align:center;pointer-events:none}.book-loading{position:absolute;inset:40% 0 auto;text-align:center;font-size:12px;color:#4b7489}

/* Cube wave sits in the footer's atmosphere, away from important text. */
body.interactions-r30 #contact{isolation:isolate}
.footer-wave-r30{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden;opacity:.36;mask-image:linear-gradient(transparent,#000 28%,#000 87%,transparent),linear-gradient(90deg,#0002,#000 75%);mask-composite:intersect}
.footer-wave-r30 canvas{display:block;width:100%;height:100%}.wave-fallback{background:repeating-linear-gradient(35deg,#8ab1c711 0 1px,transparent 1px 32px),repeating-linear-gradient(125deg,#8ab1c711 0 1px,transparent 1px 32px)}
body.interactions-r30 #contact .footer-circuit{opacity:.12}

@media(max-width:1100px){body.interactions-r30 #hero .quick-nav{width:65%;left:38%}body.interactions-r30 #hero .scroll-cue{right:2%;font-size:9px;gap:6px}.project-index-r30{width:38%}.project-index-r30.is-expanded{width:50%}body.interactions-r30 .record-focus{width:60%;left:5%}.project-index-trigger{padding-left:42%}body.interactions-r30 .record-focus h2{font-size:55px}}
@media(max-width:760px){
 body.interactions-r30 #hero .hero-entry{width:326px;max-width:88vw;height:68px;bottom:16%}body.interactions-r30 #hero #hero-explore{height:68px;min-height:68px;padding:0 14px;grid-template-columns:31px 1fr 25px;gap:10px;border-radius:17px}
 body.interactions-r30 #hero-explore .entry-glyph{width:30px;height:30px}.entry-glyph i{inset:6px 3px}.entry-arrow{width:25px}.entry-arrow svg{width:18px}
 body.interactions-r30 #hero-explore .explore-label{font-size:17px}body.interactions-r30 #hero-explore .explore-caption{font-size:8px}html[lang=en] body.interactions-r30 #hero-explore .explore-label{font-size:13px}html[lang=en] body.interactions-r30 #hero-explore .explore-caption{font-size:7px}
 body.interactions-r30 #hero .quick-nav{width:calc(100% - 24px);left:50%;bottom:6%}
 body.interactions-r30 #hero .scroll-cue{right:20px;bottom:1.7%;font-size:9px;padding:2px 5px 2px 10px;gap:10px;border-color:transparent}body.interactions-r30 #hero .scroll-cue .scroll-arrow{width:24px;height:24px}.scroll-arrow svg{width:16px;height:16px}
 body.interactions-r30 .record-focus{left:7%;width:86%;top:41%;transform:translateY(-50%)}body.interactions-r30 .record-focus h2{font-size:43px}body.interactions-r30 .record-focus .record-target{margin:20px 0 12px}body.interactions-r30 .record-focus .record-ledger{display:none}
 .project-index-r30{top:auto;bottom:11%;height:118px;width:100%;right:0}.project-index-trigger{padding:15px 7%;justify-content:center}.project-index-dial{width:410px;height:410px;left:56%;opacity:.6}.dial-years{left:60px;top:130px;font-size:13px}.dial-years b{font-size:18px}.project-index-hint{max-width:none;font-size:17px;margin:8px 0}.project-index-kicker{font-size:8px}.project-index-trigger small{font-size:8px}.project-index-r30.is-expanded{width:92%;height:76%;right:4%;bottom:10%}.project-index-trigger{transition:opacity .2s}#project-index-panel>header{font-size:18px;padding:16px 18px}#project-index-panel .index-years{padding:0 18px 12px}.index-results{padding:0 18px}.index-results button{padding:12px 0;grid-template-columns:36px 1fr 16px;gap:9px}.index-results b{font-size:12px}#project-index-panel>footer{padding:14px 18px;font-size:9px}.index-all{font-size:10px}
 body.interactions-r30 #facilities{height:220svh;min-height:1540px}body.interactions-r30 .mapped-stage{padding:75px 20px 35px;height:max(100svh,830px);top:min(0px,calc(100svh - 830px));min-height:0}
 body.interactions-r30 #facilities .section-heading{display:block}body.interactions-r30 #facilities .section-heading h2{font-size:37px;line-height:1.08}body.interactions-r30 #facilities .section-heading>p:last-child{font-size:12px;line-height:1.7;margin-top:16px;max-width:290px}
 body.interactions-r30 .facility-depth{height:460px;width:calc(100% + 32px);margin:0 -16px}
 body.interactions-r30 #facility-tabs button{width:93px;height:99px}.facility-node-image{width:79px;height:57px;margin-bottom:8px;border-radius:9px;padding:3px}.facility-node-image img{border-radius:6px}.facility-node-image i{top:5px;left:5px;font-size:7px}
 body.interactions-r30 #facility-tabs .capsule-label b{font-size:11px;line-height:1.3}.facility-orbits-r30{transform:rotate(-9deg) scaleY(2.8)}.facility-core-r30{width:126px;height:100px}.facility-core-r30>span{font-size:6px;bottom:calc(100% + 8px)}.facility-core-r30>small{font-size:8px;top:calc(100% + 10px)}.facility-stage-note{font-size:7px;left:10px;right:10px;bottom:0}
 body.interactions-r30 #facilities .facility-viewport{max-width:100%;width:100%;margin-top:14px;height:140px}body.interactions-r30 #facilities .facility-copy p{font-size:12px;line-height:1.7}body.interactions-r30 #facilities .facility-copy .text-link{margin-top:14px}
 body.interactions-r30 .facility-pagination{margin:0 auto;width:100%;position:absolute;bottom:28px;left:20px;right:20px;width:calc(100% - 40px)}body.interactions-r30 .facility-pagination button{height:32px;width:32px;font-size:13px}
 #research-books-r30{width:100vw;height:100svh;border-radius:0;border:0}.book-dialog-top{padding:18px 20px}.book-dialog-top p{font-size:8px}.book-stage-r30{inset:55px 0 auto;height:38%;min-height:230px}.book-watermark{font-size:75px;top:18%;left:7%}.book-detail-r30{top:46%;left:7%;right:7%;width:auto;bottom:115px;padding-right:6px}.book-detail-r30 h2{font-size:28px;margin:12px 0}.book-detail-r30>p{font-size:12px;line-height:1.7}.book-detail-r30 li{font-size:11px;margin:12px 0}.book-detail-r30 ul{padding-top:8px}.book-topic-nav{left:20px;right:20px;bottom:15px;gap:10px;grid-template-columns:1fr 1fr}.book-topic-nav button{padding:10px 0;font-size:10px;gap:8px}.book-gesture{top:42%;left:5%;width:90%;bottom:auto;font-size:8px}.book-topic-nav button span{font-size:8px}
 .footer-wave-r30{opacity:.3;mask-image:linear-gradient(transparent,#000 25%,#000 90%)}
}
@media(prefers-reduced-motion:reduce){body.interactions-r30 #hero #hero-explore,body.interactions-r30 #hero .scroll-cue{transform:none!important}body.interactions-r30 :is(.entry-border,.entry-shine,.explore-copy,.scroll-word){animation:none!important}.project-index-r30,#project-index-panel,.project-index-trigger,.facility-node-image,.core-picture img{transition:none!important}.entry-glyph i{transition:none!important}.facility-orbits-r30{opacity:.65}}

.facility-core-r30>span,.facility-core-r30>small{display:none}

body.interactions-r30 #facility-tabs .capsule-label{display:block;transform:scale(calc(1 / var(--node-scale,1)))!important;transform-origin:top center}
@media(max-width:760px){body.interactions-r30 #facility-tabs .capsule-label b{font-size:10px}}

html[lang=en] body.interactions-r30 #contact .footer-navigation a:nth-child(-n+2){white-space:normal;overflow-wrap:normal;word-break:normal;max-width:100%;font-size:clamp(23px,2.2vw,34px);line-height:1.2}
body.interactions-r30 .footer-right{min-width:0}
