:root{font-family:Arial,Helvetica,sans-serif;color:#e6eef0;background:#071a25;font-size:16px;color-scheme:dark;--mint:#83dfce;--muted:#98aeb7;--border:#25404c}*{box-sizing:border-box}body{margin:0}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer;touch-action:manipulation}button:focus-visible,a:focus-visible,#globe:focus-visible{outline:3px solid #f6d08a;outline-offset:3px}button{border:1px solid var(--border);background:transparent;border-radius:8px;min-height:48px}button:hover{background:#173440}header{height:100px;display:flex;align-items:center;justify-content:space-between;padding:0 36px;border-bottom:1px solid var(--border)}.brand{display:flex;align-items:center;gap:24px}.king{font-family:Georgia,serif;font-size:32px;letter-spacing:2px}.king span{display:block;font:10px Arial;letter-spacing:5px;text-align:center}.brand i{height:38px;border-left:1px solid #49616d}.aspire{font-size:26px;letter-spacing:5px}.aspire small{display:block;font-size:10px;letter-spacing:2px;margin-top:5px;color:var(--muted)}.header-right{display:flex;gap:12px;align-items:center}.header-right button{padding:0 16px}.demo{font-size:12px;letter-spacing:1.5px;color:#efd19d;margin-right:10px}main{display:grid;grid-template-columns:310px minmax(360px,1fr) 340px;height:calc(100dvh - 145px);min-height:650px}.projects{padding:32px 22px 18px 30px;border-right:1px solid var(--border);overflow:auto}.eyebrow{font-size:11px;letter-spacing:2px;color:var(--mint);font-weight:600}h1{font-family:Georgia,serif;font-weight:400;font-size:43px;line-height:1.06;margin:16px 0}h1 em{color:var(--mint);font-weight:400}.intro{font-size:14px;line-height:1.6;color:var(--muted);margin-bottom:28px}.section-label{font-size:11px;letter-spacing:1.8px;color:var(--muted);display:flex;justify-content:space-between;margin-bottom:12px}.project{display:block;width:100%;text-align:left;padding:16px 15px;margin:8px 0;border:1px solid transparent;border-radius:9px;background:#0c222e;position:relative}.project.active{background:#163a41;border-color:#548c86}.project.active:before{content:'';position:absolute;left:-1px;top:20%;height:60%;width:3px;background:var(--mint)}.project .meta{font-size:11px;color:var(--muted);display:flex;justify-content:space-between;margin-bottom:9px;letter-spacing:.5px}.project strong{display:block;font-size:16px;line-height:1.3;font-weight:500}.project .by{font-size:12px;color:var(--muted);display:block;margin-top:8px}.status{color:var(--mint)}.school-note{font-size:10px;letter-spacing:1.5px;margin-top:24px;color:var(--muted)}.school-note span{display:block;margin-top:8px;letter-spacing:1px}.world{position:relative;overflow:hidden;background:radial-gradient(ellipse at 50% 48%,#143645 0%,#091f2c 49%,#071a25 75%)}.map-heading{position:absolute;top:34px;left:30px;right:20px;z-index:2;pointer-events:none}#network-count{font-size:13px;color:var(--muted);margin-top:10px}#globe{position:absolute;inset:0;touch-action:none;cursor:grab}#globe:active{cursor:grabbing}canvas{display:block;width:100%;height:100%}#pins{position:absolute;inset:0;pointer-events:none}.pin{position:absolute;width:48px;height:48px;border:0;border-radius:50%;transform:translate(-50%,-50%);pointer-events:auto;background:transparent;display:grid;place-items:center}.pin:after{content:'';width:12px;height:12px;border-radius:50%;background:#f0c984;box-shadow:0 0 0 6px #eccb8c20,0 0 18px #edc97d65;border:2px solid #fff0c8}.pin.selected:after{background:white;box-shadow:0 0 0 9px #edc97d40,0 0 25px #edc97d}.pin:hover{background:#efd19d25}.globe-note{position:absolute;bottom:130px;left:0;right:0;display:flex;align-items:center;justify-content:center;gap:9px;font-size:9px;letter-spacing:1.5px;color:#a9bdc4;pointer-events:none}.key-dot{height:7px;width:7px;border-radius:50%;background:var(--mint)}.line-key{width:25px;border-top:1px solid #dcbf89;margin-left:10px}.globe-controls{display:flex;position:absolute;bottom:58px;left:50%;transform:translateX(-50%);gap:8px;white-space:nowrap}.globe-controls button{background:#0d2531e8;min-width:48px}.globe-controls button:first-child{padding:0 18px;font-size:13px}.gesture{position:absolute;bottom:28px;text-align:center;width:100%;font-size:12px;color:var(--muted)}.details{border-left:1px solid var(--border);overflow:auto;padding:30px 24px;background:#0a202b}.details h2{font-family:Georgia,serif;font-size:27px;line-height:1.15;font-weight:400;margin:14px 0}.details p{font-size:14px;line-height:1.6;color:#b3c3ca}.student{font-size:13px;color:var(--mint)}.data-tag{font-size:10px;color:#e8c98f;letter-spacing:1px;line-height:1.6}.stats{display:flex;gap:26px;padding:18px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);margin:20px 0}.stats strong{font-size:26px;font-weight:400;display:block}.stats small{font-size:10px;letter-spacing:1.3px;color:var(--muted)}.lab{display:flex;width:100%;text-align:left;align-items:center;gap:12px;border:0;border-bottom:1px solid var(--border);border-radius:0;padding:14px 0;min-height:92px}.lab.active{background:#173640;padding-left:8px;border-radius:7px}.portrait{width:50px;height:58px;border-radius:6px;background-color:#335461;background-image:url('scientists.png');background-size:300% 200%;flex-shrink:0;filter:saturate(.65)}.lab strong{font-size:14px;line-height:1.3;font-weight:500;display:block}.lab small{font-size:11px;color:var(--muted);display:block;margin-top:5px}.lab .name{color:#c2d2d7}.lab-detail{margin-top:18px;padding:18px;background:#15313c;border:1px solid #456064;border-radius:8px}.lab-detail h3{font-size:19px;font-weight:400;margin:10px 0}.lab-detail p{font-size:13px}.lab-detail .close-lab{float:right;min-height:32px;min-width:32px}.reference{padding-top:12px;border-top:1px solid #34505b}.sample-note{font-size:11px!important;color:#b4a88f!important}footer{height:45px;border-top:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;padding:0 30px;color:var(--muted);font-size:9px;letter-spacing:1.3px}footer b{margin:0 12px;color:var(--mint)}footer span:last-child{font-family:Georgia,serif;font-style:italic;font-size:13px;letter-spacing:0}dialog{background:#0e2835;color:#e9eff1;border:1px solid #52737b;border-radius:16px;max-width:620px;padding:38px;max-height:85dvh}dialog::backdrop{background:#010d16c9}dialog h2{font:36px Georgia}dialog p{line-height:1.6;color:#bacbd2}dialog a{color:var(--mint)}dialog small{line-height:1.5;color:var(--muted)}.close{float:right;width:48px;font-size:28px}#map-error{position:absolute;top:40%;padding:30px;background:#18333f;color:#f0cf93}@media(min-width:1700px){:root{font-size:20px}header{height:120px}main{grid-template-columns:380px minmax(550px,1fr) 420px;height:calc(100dvh - 170px)}.projects{padding:40px 30px}.project{padding:20px}.project strong{font-size:21px}.project .meta,.project .by{font-size:14px}h1{font-size:56px}.intro{font-size:18px}.details{padding:40px 30px}.details h2{font-size:36px}.details p{font-size:18px}.lab strong{font-size:18px}.lab small{font-size:14px}.lab{min-height:106px}.portrait{width:64px;height:70px}.eyebrow,.section-label{font-size:14px}.student{font-size:17px}.data-tag,.sample-note{font-size:13px!important}footer{height:50px}}@media(max-width:1100px){main{grid-template-columns:250px minmax(300px,1fr) 290px}.projects{padding:26px 16px}h1{font-size:36px}.details{padding:26px 16px}header{padding:0 20px}.demo{display:none}}@media(max-width:850px){header{height:85px;padding:0 16px}.brand{gap:12px}.king{font-size:24px}.aspire{font-size:20px}.aspire small{font-size:8px}.header-right button{padding:0 9px;font-size:12px}#fullscreen span{display:none}main{height:auto;min-height:0;grid-template-columns:1fr}.projects{border:0;padding:24px 20px}.projects h1{font-size:35px}.projects h1 br{display:none}.intro,.school-note{display:none}#project-list{display:flex;overflow-x:auto;gap:10px;padding-bottom:8px}.project{min-width:230px;margin:0}.section-label{margin-top:22px}.world{height:560px;grid-row:2}.details{border-left:0;border-top:1px solid var(--border)}footer{height:auto;min-height:50px;padding:16px 20px}footer span:last-child{display:none}.map-heading{top:20px}.lab{padding:16px 8px}.lab strong{font-size:17px}.lab small{font-size:14px}.details p{font-size:16px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
.lab-detail{margin:0 0 22px}.pin:after{animation:pin-drop .65s ease-out both}@keyframes pin-drop{from{transform:translateY(-24px) scale(.4);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.pin:nth-child(2):after{animation-delay:.1s}.pin:nth-child(3):after{animation-delay:.2s}.pin:nth-child(4):after{animation-delay:.3s}@media(prefers-reduced-motion:reduce){.pin:after{animation:none}}
/* Keep the complete lab roster visible; selected profiles float over the globe. */
.details{display:flex;flex-direction:column;gap:18px;overflow:visible;padding:26px 22px}.project-overview h2{font-size:28px;margin:12px 0}.project-overview p{font-size:16px;line-height:1.45;margin:14px 0}.lab-list-heading{display:flex;justify-content:space-between;gap:8px;font-size:11px;letter-spacing:1px;color:var(--muted);border-top:1px solid var(--border);padding-top:18px}.lab-list{display:grid;grid-template-rows:repeat(4,minmax(76px,1fr));gap:4px;flex:1;max-height:440px;min-height:0}.lab-list .lab{min-height:0;padding:10px 4px;gap:12px}.lab-list .lab.active{padding-left:10px}.lab-list .lab strong{font-size:16px}.lab-list .lab small{font-size:13px;line-height:1.2;margin-top:5px}.details>.sample-note{font-size:12px!important;line-height:1.4;margin:0}.globe-lab-card{position:absolute;z-index:5;left:24px;bottom:150px;width:min(360px,calc(100% - 48px));background:#102a36f5;box-shadow:0 12px 50px #0007;padding:20px;border-color:#708a8f;max-height:calc(100% - 250px);overflow:auto;backdrop-filter:blur(14px)}.globe-lab-card[hidden]{display:none}.lab-card-person{display:flex;align-items:center;gap:12px;margin-top:14px}.lab-card-person h3{margin:0 0 7px;font-size:21px}.lab-card-person small{font-size:12px;color:var(--muted);display:block;margin-top:6px}.globe-lab-card .close-lab{min-height:44px;min-width:44px;margin-left:8px;font-size:24px}.globe-lab-card p{font-size:15px;line-height:1.5}.globe-lab-card .sample-note{font-size:12px!important}.line-key{border-top-width:3px}
@media(min-width:1700px){.details{padding:28px;gap:20px}.project-overview h2{font-size:34px}.project-overview p{font-size:18px}.lab-list .lab strong{font-size:19px}.lab-list .lab small{font-size:15px}.lab-list-heading{font-size:13px}.lab-list .portrait{width:60px;height:64px}.details>.sample-note{font-size:14px!important}.globe-lab-card{width:390px;left:30px}.globe-lab-card p{font-size:17px}}
@media(min-width:851px) and (max-height:900px){.details{padding:18px;gap:12px}.project-overview h2{font-size:25px;margin:8px 0}.project-overview p{font-size:14px;line-height:1.4;margin:10px 0}.project-overview .student{font-size:13px}.lab-list-heading{padding-top:12px}.lab-list{max-height:360px;grid-template-rows:repeat(4,minmax(68px,1fr))}.lab-list .lab{padding:6px 2px;gap:9px}.lab-list .lab strong{font-size:15px}.lab-list .lab small{font-size:12px}.lab-list .portrait{width:44px;height:50px}.details .data-tag{font-size:10px}.details>.sample-note{font-size:11px!important}}
@media(max-width:850px){.details{padding:24px;gap:18px}.lab-list{flex:none;max-height:none;grid-template-rows:none}.lab-list .lab{min-height:90px}.lab-list .lab strong{font-size:18px}.lab-list .lab small{font-size:14px}.globe-lab-card{bottom:145px;max-height:340px}.project-overview p{font-size:16px}}
.king-logo{display:block;width:167px;height:auto;object-fit:contain;flex-shrink:0}@media(min-width:1700px){.king-logo{width:194px}}@media(max-width:850px){.king-logo{width:112px}.brand{gap:12px}.aspire{font-size:18px;letter-spacing:3px}.aspire small{font-size:7px;letter-spacing:1px}}@media(max-width:480px){.brand i{display:none}.king-logo{width:100px}.header-right{gap:5px}.header-right button{padding:0 7px}header{padding:0 10px}.aspire small{max-width:110px;line-height:1.4}}
@media(min-width:851px) and (min-height:650px){main{min-height:0}}
/* Sourced 2026–27 research network. */
:root{--potential:#c0a0ff}.details{overflow-y:auto;overflow-x:hidden}.details h2{font-size:24px;line-height:1.25;overflow-wrap:anywhere}.details .project-overview p{font-size:16px;line-height:1.55}.details .student{font-size:14px;line-height:1.5}.lab-list{display:flex;flex-direction:column;flex:none;max-height:none;gap:4px}.lab-list .lab{min-height:90px;padding:12px 4px}.lab-symbol{display:grid;place-items:center;width:32px;min-width:32px;height:40px;color:#f0c984;font-size:24px}.lab-symbol.potential,.potential-heading{color:var(--potential)!important}.lab-list .lab small{font-size:13px;line-height:1.4}.lab-list .lab .connection-label{font-size:12px;color:#edc98a}.lab-list .lab.potential .connection-label{color:var(--potential)}.lab-list-heading{font-size:12px;letter-spacing:.7px;line-height:1.5}.potential-note{margin:0!important;font-size:14px!important}.profile-sources{display:flex;flex-direction:column;gap:10px;font-size:14px;border-top:1px solid var(--border);padding-top:15px}.profile-sources a,.source-link{color:var(--mint);overflow-wrap:anywhere}.source-link{font-size:14px}.sample-note{font-size:13px!important;line-height:1.5!important}.globe-lab-card{max-height:calc(100% - 190px);bottom:140px}.lab-card-person{align-items:flex-start}.lab-card-person small{font-size:13px;line-height:1.4}.pin.potential:after{background:#b28cff;border-color:#e3d5ff;border-radius:2px;transform:rotate(45deg);box-shadow:0 0 0 5px #b28cff20,0 0 18px #a78aff65;animation:none}.pin.selected{z-index:3}.pin.potential.selected:after{background:#fff;box-shadow:0 0 0 7px #b28cff55}.line-key.potential-key{border-top:3px dashed var(--potential)}.globe-note{font-size:11px;letter-spacing:.3px;gap:7px;flex-wrap:wrap;padding:0 14px}.map-heading{pointer-events:none}.layer-toggle{pointer-events:auto;display:inline-flex;gap:9px;align-items:center;margin-top:14px;font-size:14px;background:#092431e8;padding:9px 12px;border:1px solid #38515e;border-radius:8px}.layer-toggle input{accent-color:#b28cff;width:18px;height:18px}.archive-label{margin:24px 0 12px}.project .by{font-size:14px;line-height:1.4}.eyebrow{font-size:12px}.project .meta{font-size:12px;gap:8px;line-height:1.4}.section-label{font-size:12px}.project strong{font-size:16px}.intro{font-size:16px}.portrait{background-image:none}.details .data-tag{font-size:12px} .globe-lab-card .sample-note{font-size:13px!important}
@media(max-width:850px){.archive-label{min-width:130px;align-self:center}.world{height:620px}.globe-lab-card{max-height:380px}.details h2{font-size:26px}.map-heading{left:20px}.globe-note{bottom:120px}.project{min-width:240px}.lab-list .lab{min-height:90px}}@media(max-width:400px){.globe-note{font-size:10px;gap:5px}.line-key{width:18px;margin-left:3px}.header-right button{font-size:11px}.aspire small{display:none}}

/* Quiet, cinematic space layers; the interactive Earth remains the focal point. */
.world{background:radial-gradient(ellipse at 50% 48%,#0b2334 0%,#06121f 58%,#040d17 100%);isolation:isolate}
.starfield{position:absolute;inset:0;pointer-events:none;overflow:hidden;z-index:-1}
.constellation{position:absolute;inset:0;opacity:0;background-position:center;background-size:100% 100%;transition:opacity 1.6s ease;mix-blend-mode:screen}
.constellation.visible{opacity:.48}
.constellation[data-theme="genetics"]{background-image:url('assets/stars-genetics.webp')}
.constellation[data-theme="chemistry"]{background-image:url('assets/stars-chemistry.webp')}
.constellation[data-theme="engineering"]{background-image:url('assets/stars-engineering.webp')}
.star-points{position:absolute;inset:0;opacity:.5;background-image:radial-gradient(1px 1px at 14% 24%,#daedff 70%,transparent),radial-gradient(1px 1px at 73% 38%,#abcce7 70%,transparent),radial-gradient(1.5px 1.5px at 42% 74%,#dbd7c6 60%,transparent);background-size:113px 157px,197px 231px,307px 283px}
.map-heading{filter:drop-shadow(0 2px 6px #020810)}
.pin:after{width:7px;height:7px;border-width:1px;box-shadow:0 0 5px #ffe4a9,0 0 13px #edc97d70}
.pin.potential:after{width:7px;height:7px;box-shadow:0 0 5px #dccbff,0 0 13px #b28cff70}
.pin.selected:after{width:10px;height:10px;box-shadow:0 0 0 5px #edc97d25,0 0 18px #edc97d}
.pin.potential.selected:after{box-shadow:0 0 0 5px #b28cff30,0 0 18px #b28cff}
.line-key,.line-key.potential-key{border-top-width:1px;filter:drop-shadow(0 0 3px currentColor)}
@media(prefers-reduced-motion:reduce){.constellation{transition:none}}

/* A single midnight palette carries the sky through the complete page. */
:root{background:#05131d;--border:#1d303e;--muted:#a2b3c0}
body,header,footer,.projects{background:#05131d}
.world{background:radial-gradient(ellipse at 50% 48%,#0a1d2b 0%,#05131d 64%,#05131d 100%)}
.details{background:#061620}
.project{background:#091b27}.project.active{background:#122d37;border-color:#47747b}
button:hover,.lab.active{background:#132a36}
.layer-toggle,.globe-controls button{background:#071923e8;border-color:#2c424f}
.globe-lab-card,dialog{background:#091c28f5;border-color:#39515f}
.lab-detail{background:#091c28}.reference,.profile-sources{border-color:#253b49}
.solar-clock{font-size:12px;letter-spacing:1px;color:#a2b3c0;margin-top:10px}

.constellation[data-theme="nanomedicine"]{background-image:url('assets/stars-nanomedicine.webp')}
.constellation[data-theme="neurobiology"]{background-image:url('assets/stars-neurobiology.webp')}
.constellation[data-theme="astrophysics"]{background-image:url('assets/stars-astrophysics.webp')}
.constellation[data-theme="neuroscience"]{background-image:url('assets/stars-neuroscience.webp')}
.constellation[data-theme="neuroimmunology"]{background-image:url('assets/stars-neuroimmunology.webp')}
.constellation[data-theme="virology"]{background-image:url('assets/stars-virology.webp')}
.constellation[data-theme="battery-engineering"]{background-image:url('assets/stars-battery-engineering.webp')}
.constellation[data-theme="voice-science"]{background-image:url('assets/stars-voice-science.webp')}
.constellation[data-theme="computational-biology"]{background-image:url('assets/stars-computational-biology.webp')}
.constellation[data-theme="equine-health"]{background-image:url('assets/stars-equine-health.webp')}
.constellation[data-theme="exoplanets"]{background-image:url('assets/stars-exoplanets.webp')}
.constellation[data-theme="movement-disorders"]{background-image:url('assets/stars-movement-disorders.webp')}
.constellation[data-theme="autonomous-robotics"]{background-image:url('assets/stars-autonomous-robotics.webp')}
.constellation[data-theme="cancer-immunology"]{background-image:url('assets/stars-cancer-immunology.webp')}
.constellation[data-theme="marine-biology"]{background-image:url('assets/stars-marine-biology.webp')}
.constellation[data-theme="nanotechnology"]{background-image:url('assets/stars-nanotechnology.webp')}
.constellation[data-theme="surgical-robotics"]{background-image:url('assets/stars-surgical-robotics.webp')}

/* One continuous photographic sky, visible through smoked-glass panels. */
body{isolation:isolate;background:#030b12}
.starfield{position:fixed;inset:0;z-index:-1;background:#030b12;overflow:hidden;pointer-events:none}
.star-points{display:none}
.constellation{background-size:cover;background-position:center;mix-blend-mode:normal;transition:opacity 1.6s ease}
.constellation.visible{opacity:1}
body,.world{background-color:transparent}
.world{background:none;isolation:auto}
header,footer,.projects,.details{background:rgba(5,15,24,.5);backdrop-filter:blur(4px) saturate(.8);-webkit-backdrop-filter:blur(4px) saturate(.8);border-color:rgba(176,203,224,.15)}
header,footer{background:rgba(5,15,24,.48)}
.projects,.details{box-shadow:inset 0 1px 0 #deefff08}
.project{background:rgba(16,34,46,.45);border-color:#c3dfff0b}
.project.active,.lab.active{background:rgba(32,66,77,.58);border-color:rgba(133,192,192,.45)}
.project:hover,button:hover{background:rgba(35,60,76,.55)}
.layer-toggle,.globe-controls button{background:rgba(7,22,33,.62);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-color:#9dbcd02b}
.globe-lab-card,dialog{background:rgba(7,23,35,.8);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-color:#abc8dc40}
.details p,.intro{color:#c0ced7}.map-heading,.globe-note,.gesture{text-shadow:0 1px 5px #000}
@media(prefers-reduced-motion:reduce){.constellation{transition:none}}
@supports not ((backdrop-filter:blur(8px)) or (-webkit-backdrop-filter:blur(8px))){header,footer,.projects,.details{background:rgba(5,15,24,.8)}}

@media(max-width:850px){.constellation{background-position:20% center}.projects,.details{background:rgba(5,15,24,.62)}}
.directory-link{color:#9ce9de;font-size:13px;text-decoration:none}.directory-link:hover{text-decoration:underline}.student-highlights{border-top:1px solid #36505d;margin-top:20px;padding-top:12px}.student-highlights h3{font-size:14px;color:#9ce9de}.student-highlights ul{padding-left:18px;font-size:13px;line-height:1.6}.student-highlights li{margin:9px 0}
