:root{color:#193e37;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#f4f5ef;font-family:Inter,system-ui,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}svg:focus-visible{outline-offset:4px;outline:3px solid #a45531}.portal{flex-direction:column;height:100dvh;display:flex}.world-map{background:#cfe8f3;flex:1;grid-template-rows:minmax(0,1fr);min-width:0;min-height:0;display:grid;position:relative;overflow:clip}.map-svg{touch-action:none;cursor:grab;width:100%;min-width:0;height:100%;min-height:0;display:block}.map-svg:active{cursor:grabbing}.map-search{z-index:2;width:min(300px,100% - 2rem);position:absolute;top:1rem;right:1rem}.map-search input{color:#193e37;width:100%;height:40px;font:inherit;background:#fff;border:0;border-radius:3px;padding:0 14px 0 42px;box-shadow:0 2px 9px #28353c35}.map-search input:focus-visible{outline-offset:2px;outline:none}.map-search-icon{fill:none;stroke:#716b7e;stroke-width:2px;pointer-events:none;width:18px;height:18px;position:absolute;top:11px;left:13px}.map-level-filters{gap:6px;margin-top:6px;display:flex}.map-level-filters button{color:#193e37;min-height:40px;font:inherit;cursor:pointer;background:#fff;border:0;border-radius:3px;flex:1}.map-level-filters .map-filter-button{color:#716b7e;flex:0 0 40px;place-items:center;display:grid}.map-level-filters button[aria-pressed=false],.map-level-filters button[aria-expanded=false]{background:#bdebf5}.map-level-filters button:focus-visible{outline-offset:2px;outline:3px solid #a45531}.map-level-filters button:disabled{opacity:.6;cursor:default}.map-year-filter{background:#fff;border-radius:3px;align-items:center;gap:10px;width:100%;height:40px;margin-top:6px;padding:0 12px;display:flex;box-shadow:0 2px 9px #28353c35}.map-year-filter output{font-variant-numeric:tabular-nums;font-size:13px}.map-year-slider{flex:1;height:28px;position:relative}.map-year-slider:before{content:"";background:linear-gradient(to right, #bdebf5 var(--year-start), #4587f4 var(--year-start), #4587f4 var(--year-end), #bdebf5 var(--year-end));border-radius:2px;position:absolute;inset:12px 8px}.map-year-slider input{width:100%;height:28px;box-shadow:none;appearance:none;pointer-events:none;background:0 0;border:0;margin:0;padding:0;position:absolute;inset:0}.map-year-slider input::-webkit-slider-thumb{appearance:none;pointer-events:auto;cursor:ew-resize;background:#fff;border:2px solid #716b7e;border-radius:50%;width:16px;height:16px}.map-year-slider input::-moz-range-thumb{pointer-events:auto;cursor:ew-resize;background:#fff;border:2px solid #716b7e;border-radius:50%;width:12px;height:12px}.map-year-slider input::-moz-range-track{background:0 0}.map-year-slider input:focus-visible::-webkit-slider-thumb{outline-offset:2px;outline:3px solid #a45531}.map-year-slider input:focus-visible::-moz-range-thumb{outline-offset:2px;outline:3px solid #a45531}.map-year-handles-equal .map-year-start{--thumb-shift:-7px}.map-year-handles-equal .map-year-end{--thumb-shift:7px}.map-year-handles-equal input::-webkit-slider-thumb{transform:translateX(var(--thumb-shift))}.map-year-handles-equal input::-moz-range-thumb{transform:translateX(var(--thumb-shift))}.map-search-results{background:#fff;border-radius:3px;width:100%;max-height:240px;position:absolute;top:calc(100% + 5px);overflow:auto;box-shadow:0 3px 12px #28353c35}.map-search-results button,.map-search-results p{color:#193e37;text-align:left;width:100%;font:inherit;background:#fff;border:0;margin:0;padding:10px 14px;display:block}.map-search-results button{cursor:pointer}.map-search-results button:hover,.map-search-results button:focus-visible{background:#f0f2ef}.map-search-results span{color:#716b7e}.map-place-sidebar{z-index:3;background:#fff;flex-direction:column;width:min(320px,100% - 30px);animation:.28s ease-out show-place-sidebar;display:flex;position:absolute;inset:0 auto 0 0;box-shadow:2px 0 12px #28353c35}@keyframes show-place-sidebar{0%{transform:translate(-100%)}to{transform:translate(0)}}@media (prefers-reduced-motion:reduce){.map-place-sidebar{animation:none}}.map-place-header{border-bottom:1px solid #e5e9e6;padding:20px}.map-place-header h2{overflow-wrap:anywhere;margin:0;font-size:20px;line-height:1.4}.map-place-close{color:#fff;cursor:pointer;background:#4587f4;border:0;border-radius:0 7px 7px 0;place-items:center;width:30px;height:50px;padding:0;display:grid;position:absolute;top:29px;left:100%}.map-place-close:focus-visible{outline-offset:2px;outline:3px solid #a45531}.map-place-students{flex:1;min-height:0;margin:0;padding:0 20px;list-style:none;overflow-y:auto}.map-place-students li{overflow-wrap:anywhere;border-bottom:1px solid #e5e9e6}.map-place-student{width:100%;color:inherit;text-align:left;font:inherit;cursor:pointer;background:0 0;border:0;padding:14px 0;display:block}.map-place-student:hover{color:#2865c7}.map-place-student:focus-visible{outline-offset:-3px;outline:3px solid #4587f4}.map-place-student-name{margin:0;font-weight:600;line-height:1.4;display:block}.map-place-student-formation{color:#716b7e;margin:4px 0 0;font-size:14px;display:block}.map-place-empty{margin:0;padding:20px}.student-dialog{color:#193e37;background:#fff;border:0;border-radius:12px;width:min(680px,100% - 32px);max-height:calc(100dvh - 32px);margin:auto;padding:0;overflow:hidden;box-shadow:0 12px 48px #173c3540}.student-dialog[open]{flex-direction:column;display:flex}.student-dialog::backdrop{background:#173c3540}.student-dialog-header{border-bottom:1px solid #e5e9e6;flex-shrink:0;align-items:flex-start;gap:12px;padding:24px;display:flex}.student-dialog-icon{color:#4587f4;flex-shrink:0;margin-top:3px}.student-dialog-header>div{flex:1;min-width:0}.student-dialog-header h2{overflow-wrap:anywhere;margin:0;font-size:22px;line-height:1.3}.student-dialog-header p{color:#716b7e;margin:6px 0 0;font-size:14px}.student-dialog-close{color:#193e37;cursor:pointer;background:#eef5ff;border:0;border-radius:6px;flex:0 0 36px;place-items:center;height:36px;padding:0;display:grid}.student-dialog-body{min-height:0;padding:24px;overflow-y:auto}.map-place-students,.student-dialog-body{overscroll-behavior:contain}.student-research+.student-research{border-top:1px solid #e5e9e6;margin-top:28px;padding-top:28px}.student-education{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:22px;display:grid}.student-research-cohort{background:#eef5ff;border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.student-research-cohort p{color:#52647c;margin:0 0 4px;font-size:12px}.student-research-cohort h3{overflow-wrap:anywhere;margin:0;font-size:16px}.student-research-cohort span{color:#2865c7;flex-shrink:0;font-size:14px;font-weight:600}.student-details-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 24px;margin:0;display:grid}.student-detail-wide{grid-column:1/-1}.student-details-grid dt{color:#52647c;margin-bottom:6px;font-size:13px;font-weight:600}.student-details-grid dd{overflow-wrap:anywhere;white-space:pre-line;margin:0;line-height:1.5}.student-postgrad-list{gap:8px;margin:20px 0 0;padding:0;list-style:none;display:grid}.student-postgrad-list li{color:#193e37;align-items:center;gap:8px;display:flex}.student-postgrad-list svg{color:#4587f4;flex:none}.student-location-list{margin:0;padding:0;list-style:none}.student-location-list li{padding:.25em 0}.student-location-list-scroll{scrollbar-width:thin;scrollbar-color:#4587f4 #eef5ff;max-height:8em;padding-right:8px;overflow-y:auto}.student-location-list:focus-visible{outline-offset:2px;outline:2px solid #4587f4}.student-dialog a{color:#2865c7}.student-details-links{flex-wrap:wrap;gap:10px;margin-top:24px;display:flex}.student-details-links a,.student-details-links button{color:#fff;text-align:center;min-width:150px;font:inherit;background:#4587f4;border:0;border-radius:6px;flex:1;justify-content:center;align-items:center;padding:12px 16px;font-weight:600;text-decoration:none;display:flex}.student-details-links button:disabled{color:#637187;background:#eef1f5}.student-dialog :is(a,button):focus-visible{outline-offset:3px;outline:3px solid #a45531}@keyframes show-bottom-sheet{0%{transform:translateY(calc(100% + 30px))}to{transform:translateY(0)}}@media (width<=768px){.map-search{width:auto;top:12px;left:12px;right:12px}.map-search-results{max-height:min(240px,40dvh)}.map-place-sidebar{border-radius:16px 16px 0 0;width:100%;height:50%;animation:.28s ease-out both show-bottom-sheet;inset:auto 0 0}.map-place-close{border-radius:8px 8px 0 0;width:50px;height:28px;top:-28px;left:50%;transform:translate(-50%)}.map-place-close svg{transform:rotate(-90deg)}.map-place-students{padding-bottom:env(safe-area-inset-bottom)}.student-dialog{border-radius:16px 16px 0 0;width:100%;max-width:none;height:80dvh;max-height:80dvh;margin:0;position:fixed;inset:auto 0 0}.student-dialog[open]{animation:.28s ease-out show-bottom-sheet}.student-dialog::backdrop{background:#0006}.student-dialog-body{padding-bottom:calc(24px + env(safe-area-inset-bottom))}}@media (width<=768px) and (prefers-reduced-motion:reduce){.map-place-sidebar,.student-dialog[open]{animation:none}}@media (width<=480px){.student-dialog-header{padding:18px}.student-dialog-body{padding:18px 18px calc(18px + env(safe-area-inset-bottom))}.student-dialog-header h2{font-size:19px}.student-education{grid-template-columns:minmax(0,1fr)}.student-details-grid>div:not(.student-detail-production){grid-column:1/-1}.student-research-cohort{flex-direction:column;align-items:flex-start}}.map-ocean{fill:#7ed6ea;stroke:#9ebbb0;stroke-width:.8px}.map-ocean-tile{fill:#7ed6ea}.map-graticule{fill:none;stroke:#92aea2;stroke-opacity:.35;stroke-width:.5px}.map-country{stroke:#f7faf6;stroke-width:.6px;stroke-linejoin:round}.map-country:hover{filter:brightness(.95)}.map-country-active.map-filter-muted,.map-country-active.map-filter-muted:hover{fill:#b1b1b1;filter:none}.map-state{fill:#0000}.map-state:hover{fill:#23574d30}.map-state-active{fill:#4588f480}.map-state-active:hover{fill:#457dd880}.map-state.map-filter-muted,.map-state.map-filter-muted:hover{fill:#b1b1b1}.map-municipality{fill:#22c55e;stroke:#f7faf6;stroke-width:.7px;stroke-linejoin:round;visibility:hidden;animation:forwards show-municipality}@keyframes show-municipality{to{visibility:visible}}.map-municipality:hover,.map-municipality.map-selected{fill:#27a354}.map-municipality.map-filter-muted,.map-municipality.map-filter-muted:hover{fill:#0000}.map-municipality-label{fill:#193e37;paint-order:stroke;stroke:#f7faf6;stroke-width:2px;pointer-events:none;visibility:hidden;font-family:inherit;font-weight:600;animation:forwards show-municipality}.map-municipality-label.map-filter-muted{opacity:0!important}.map-state-borders{fill:none;stroke:#f7faf6;stroke-width:1.2px;stroke-linejoin:round;pointer-events:none}.map-country,.map-ocean,.map-graticule,.map-state-borders,.map-municipality,.map-municipality-label{vector-effect:non-scaling-stroke}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.map-message{text-align:center;position:absolute;top:45%;left:10%;right:10%}.map-error{color:#8b3028}.student-graduation{display:block}.student-graduation-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.student-graduation-row+.student-graduation-row{margin-top:8px}
