html, body { min-height: 100%; overflow-x: hidden; }
body.universities-page { color: #f2f2f2; background: radial-gradient(circle at 10% 0%, rgba(28, 222, 174, .12), transparent 31%), radial-gradient(circle at 90% 10%, rgba(232, 214, 141, .1), transparent 28%), linear-gradient(180deg, #07100d, #050605 48%, #000); }
.universities-page .sticky-footer { position: static; margin-top: 0; }
.universities-shell { width: min(1180px, calc(100% - 32px)); margin: 0 auto; padding: 36px 0 56px; }
.universities-hero { max-width: 880px; margin-bottom: 24px; }
.universities-eyebrow, .card-kicker { margin: 0 0 8px; color: rgba(30, 229, 183, .8); font-size: 12px; font-weight: 900; letter-spacing: .1em; text-transform: uppercase; }
.universities-hero h1, .universities-card h2 { margin: 0; font-family: "Bebas Neue", system-ui, sans-serif; font-weight: 400; letter-spacing: .03em; text-transform: uppercase; }
.universities-hero h1 { font-size: clamp(44px, 7vw, 84px); line-height: .92; }
.universities-hero > p:not(.universities-eyebrow):not(.universities-mock-notice), .universities-card-head p, .universities-card > p:not(.card-kicker) { color: rgba(255, 255, 255, .67); font-size: 15px; font-weight: 600; line-height: 1.55; }
.universities-mock-notice { margin: 14px 0 0; padding: 9px 11px; border: 1px solid rgba(245, 196, 0, .27); border-radius: 9px; color: rgba(255, 229, 151, .92); background: rgba(245, 196, 0, .07); font-size: 12px; font-weight: 700; }
.universities-unavailable { margin: 14px 0 0; padding: 12px 14px; border: 1px solid rgba(255, 97, 97, .3); border-radius: 9px; color: #ffd1d1; background: rgba(255, 97, 97, .08); font-size: 14px; font-weight: 800; }
.universities-kpis { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; margin-bottom: 12px; }
.universities-kpis article, .universities-card { min-width: 0; border: 1px solid rgba(255, 255, 255, .1); border-radius: 14px; background: linear-gradient(180deg, rgba(255,255,255,.045), rgba(255,255,255,.014)), rgba(10, 13, 12, .9); box-shadow: 0 18px 44px rgba(0,0,0,.28); }
.universities-kpis article { padding: 14px 16px; }
.universities-kpis span { display: block; margin-bottom: 7px; color: rgba(255,255,255,.55); font-size: 11px; font-weight: 900; letter-spacing: .07em; text-transform: uppercase; }
.universities-kpis strong { display: block; color: #fff; font-size: clamp(25px, 3vw, 38px); font-weight: 950; line-height: 1; font-variant-numeric: tabular-nums; }
.universities-kpis article:last-child strong { font-size: clamp(22px, 2.5vw, 32px); white-space: nowrap; }
.universities-kpis span[title]:focus-visible { outline: 2px solid #fadd3a; outline-offset: 3px; border-radius: 2px; }
.universities-kpis small { display: block; min-height: 15px; margin-top: 7px; color: rgba(255,255,255,.5); font-size: 11px; font-weight: 700; }
@media (max-width: 720px) { .universities-kpis article:last-child > span { font-size: 10px; letter-spacing: .02em; } }
.universities-grid { display: grid; gap: 12px; }
.universities-explore-grid { grid-template-columns: minmax(0, 1.65fr) minmax(270px, .85fr); align-items: stretch; margin-bottom: 12px; }
.universities-map-card, .universities-search-card { align-self: stretch; }
.universities-map-card { display: flex; flex-direction: column; }
.university-detail-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.universities-card { padding: 20px; }
.universities-card h2 { font-size: 31px; line-height: 1; }
.universities-card-head { display: flex; justify-content: space-between; align-items: flex-start; gap: 20px; margin-bottom: 16px; }
.universities-card-head h2 { margin-bottom: 6px; }
.universities-card-head p { margin: 0; }
.universities-map-toolbar { display: grid; gap: 8px; margin: -2px 0 8px; }
.universities-map-filter-group { display: grid; gap: 5px; }
.universities-map-filter-label { color: rgba(255,255,255,.42); font-size: 9px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.universities-map-controls, .universities-map-scope-controls { display: flex; flex-wrap: wrap; gap: 6px; }
.universities-map-controls button, .universities-map-scope-controls button { padding: 7px 9px; border: 1px solid rgba(255,255,255,.11); border-radius: 999px; color: rgba(255,255,255,.62); background: rgba(255,255,255,.025); font: inherit; font-size: 10px; font-weight: 850; cursor: pointer; }
.universities-map-controls button.is-active, .universities-map-scope-controls button.is-active { border-color: rgba(29,233,182,.55); color: #caffef; background: rgba(29,233,182,.11); }
.universities-map-meta { position: absolute; z-index: 5; top: 10px; left: 10px; max-width: calc(100% - 64px); min-height: 17px; box-sizing: border-box; margin: 0; padding: 5px 7px; border: 1px solid rgba(255,255,255,.07); border-radius: 6px; color: rgba(255,255,255,.58); background: rgba(4,10,8,.72); font-size: 10px; font-weight: 750; line-height: 1.35; pointer-events: none; backdrop-filter: blur(6px); }
.universities-map { position: relative; flex: 1 1 auto; min-height: 420px; overflow: hidden; border: 1px solid rgba(255,255,255,.09); border-radius: 12px; background: radial-gradient(ellipse at 50% 44%, rgba(30,229,183,.11), transparent 34%), #07100d; cursor: grab; touch-action: none; }
.universities-map.is-dragging { cursor: grabbing; }
.universities-map__mesh { position: absolute; inset: 0; opacity: .36; background-image: linear-gradient(rgba(255,255,255,.05) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.05) 1px, transparent 1px); background-size: 36px 36px; mask-image: radial-gradient(ellipse at center, #000, transparent 72%); }
.universities-map__country { position: absolute; inset: 0; width: 100%; height: 100%; user-select: none; }
.universities-map__country #universitiesMapGeometry { pointer-events: none; }
.universities-map__country #universitiesMapGeometry path[data-name] { stroke-width: .8px; }
.universities-map__country #universitiesMapGeometry path:not([data-name]) { stroke-width: 1.2px; }
.universities-map__country[data-active-map-scope="buenos-aires"] #universitiesMapGeometry path[data-name], .universities-map__country[data-active-map-scope="caba"] #universitiesMapGeometry path[data-name] { stroke: #a7ead8; stroke-opacity: .62; stroke-width: 1.35px; }
.universities-map__pins { pointer-events: none; }
.universities-map-navigation { position: absolute; z-index: 7; top: 10px; right: 10px; display: grid; gap: 5px; }
.universities-map-navigation button { display: grid; place-items: center; width: 32px; height: 32px; padding: 0; border: 1px solid rgba(142,244,216,.25); border-radius: 8px; color: rgba(255,255,255,.9); background: rgba(5,12,10,.84); box-shadow: 0 5px 16px rgba(0,0,0,.25); font: 800 18px/1 Inter, system-ui, sans-serif; cursor: pointer; backdrop-filter: blur(8px); }
.universities-map-navigation button:hover, .universities-map-navigation button:focus-visible { border-color: rgba(29,233,182,.6); color: #9ff7df; outline: 0; }
.universities-map-navigation button:disabled { opacity: .34; cursor: default; }
.universities-map-scope-controls { position: absolute; z-index: 7; right: 10px; bottom: 10px; flex-wrap: nowrap; gap: 3px; max-width: calc(100% - 20px); box-sizing: border-box; padding: 4px; border: 1px solid rgba(142,244,216,.16); border-radius: 10px; background: rgba(5,12,10,.86); box-shadow: 0 7px 20px rgba(0,0,0,.28); backdrop-filter: blur(8px); }
.universities-map-scope-controls button { padding: 6px 8px; border-radius: 6px; background: transparent; font-size: 9px; white-space: nowrap; }
.universities-map-scope-controls button:hover, .universities-map-scope-controls button:focus-visible { border-color: rgba(29,233,182,.42); color: rgba(255,255,255,.88); outline: 0; }
.universities-map-scope-controls .sr-only { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0,0,0,0); border: 0; white-space: nowrap; }
.universities-map-scope-select { display: none; }
.universities-map-hint { position: absolute; z-index: 4; left: 10px; bottom: 9px; padding: 5px 7px; border-radius: 6px; color: rgba(255,255,255,.45); background: rgba(4,10,8,.68); font-size: 9px; font-weight: 750; letter-spacing: .02em; pointer-events: none; }
.university-map-pin { pointer-events: all; cursor: pointer; outline: 0; }
.university-map-pin__hit { fill: transparent; }
.university-map-pin__halo { fill: rgba(29,233,182,.12); transition: fill .18s ease; }
.university-map-pin__dot { fill: #1de9b6; stroke: #07100d; stroke-width: 2px; vector-effect: non-scaling-stroke; transition: fill .18s ease, stroke .18s ease; }
.university-map-pin.is-no-data .university-map-pin__halo { fill: rgba(255,255,255,.08); }
.university-map-pin.is-no-data .university-map-pin__dot { fill: rgba(7,16,13,.9); stroke: rgba(255,255,255,.55); }
.university-map-pin:hover .university-map-pin__halo, .university-map-pin:focus-visible .university-map-pin__halo, .university-map-pin.is-hovered .university-map-pin__halo, .university-map-pin.is-selected .university-map-pin__halo { fill: rgba(29,233,182,.3); }
.university-map-pin:hover .university-map-pin__dot, .university-map-pin:focus-visible .university-map-pin__dot, .university-map-pin.is-hovered .university-map-pin__dot, .university-map-pin.is-selected .university-map-pin__dot { stroke: #baffed; }
.universities-map-tooltip { position: absolute; z-index: 8; right: 12px; bottom: 58px; display: grid; width: min(330px, calc(100% - 24px)); max-height: calc(100% - 72px); gap: 7px; overflow-y: auto; box-sizing: border-box; padding: 12px 13px; border: 1px solid rgba(29,233,182,.3); border-radius: 10px; color: rgba(255,255,255,.72); background: rgba(7,12,10,.94); box-shadow: 0 14px 30px rgba(0,0,0,.38); font-size: 11px; pointer-events: none; }
.universities-map-tooltip[hidden] { display: none; }
.universities-map-tooltip__pager { display: grid; grid-template-columns: 28px 1fr 28px; align-items: center; gap: 7px; }.universities-map-tooltip__pager b { color: rgba(255,255,255,.66); font-size: 9px; letter-spacing: .04em; text-align: center; text-transform: uppercase; }.universities-map-tooltip__pager button { width: 28px; height: 26px; padding: 0; border: 1px solid rgba(29,233,182,.28); border-radius: 6px; color: #8ef4d8; background: rgba(29,233,182,.07); font: inherit; font-weight: 900; cursor: pointer; pointer-events: auto; }.universities-map-tooltip__entry { display: grid; gap: 2px; padding-top: 6px; border-top: 1px solid rgba(255,255,255,.08); }.universities-map-tooltip__entry:first-child { padding-top: 0; border-top: 0; }.universities-map-tooltip strong { color: #fff; font-size: 13px; }.universities-map-tooltip span { line-height: 1.3; }.universities-map-tooltip small { color: rgba(255,255,255,.6); }.universities-map-tooltip a { color: #8ef4d8; font-weight: 850; text-decoration: none; pointer-events: auto; }
.universities-map-expand { display: inline-flex; flex: 0 0 auto; align-items: center; justify-content: center; gap: 6px; min-height: 34px; padding: 5px 10px; border: 1px solid rgba(142,244,216,.25); border-radius: 8px; color: #d9fff3; background: rgba(29,233,182,.06); font: 800 12px/1.2 Inter, system-ui, sans-serif; white-space: nowrap; cursor: pointer; }
.universities-map-expand > [aria-hidden="true"] { font-size: 19px; line-height: 1; }
.universities-map-expand__close-label, .universities-map-card.is-expanded .universities-map-expand__label { display: none; }
.universities-map-card.is-expanded .universities-map-expand__close-label { display: inline; }
.universities-map-expand:hover, .universities-map-expand:focus-visible { border-color: rgba(142,244,216,.7); outline: 2px solid rgba(142,244,216,.2); outline-offset: 2px; }
.universities-map-open { display: none; }
.universities-map-legend { position: absolute; z-index: 6; left: 10px; bottom: 40px; display: grid; gap: 4px; width: max-content; max-width: min(270px, calc(100% - 20px)); box-sizing: border-box; padding: 6px 8px; border: 1px solid rgba(255,255,255,.1); border-radius: 8px; color: rgba(255,255,255,.8); background: rgba(4,10,8,.85); font-size: 10px; line-height: 1.35; pointer-events: none; backdrop-filter: blur(6px); }
.universities-map-legend strong { color: #fff; font-size: 10px; }
.universities-map-legend small { color: rgba(255,255,255,.58); font-size: 9px; }
.universities-map-legend__details[open] { display: grid; gap: 3px; }
.universities-map-legend__details summary { display: none; }
.universities-map-legend__bands { display: grid; grid-template-columns: minmax(0, 1fr); gap: 2px; }
.universities-map-legend__bands span { display: inline-flex; align-items: center; gap: 4px; }
.universities-map-legend__bands i { display: inline-block; flex: 0 0 8px; width: 8px; height: 8px; border-radius: 50%; background: var(--band-color); }
.universities-map[data-active-map-mode="graduates"] { --map-very-below: #e35f57; --map-below: #ed8b7d; --map-near: #fadd3a; --map-above: #83d98b; --map-very-above: #32c87c; }
.universities-map[data-active-map-mode="foreign"] { --map-very-below: #69847e; --map-below: #4dbfa7; --map-near: #e5d781; --map-above: #f2b557; --map-very-above: #f28a2e; }
.universities-map[data-active-map-mode="spending"] { --map-very-below: #3e9f91; --map-below: #72d7bd; --map-near: #fadd3a; --map-above: #f2b557; --map-very-above: #e87934; }
.universities-map[data-active-map-mode="graduate-spending"] { --map-very-below: #3e9f91; --map-below: #72d7bd; --map-near: #fadd3a; --map-above: #f2b557; --map-very-above: #e87934; }
.universities-map-legend__bands .is-very-below, .university-map-pin.is-very-below-average { --band-color: var(--map-very-below); }
.universities-map-legend__bands .is-below, .university-map-pin.is-below-average { --band-color: var(--map-below); }
.universities-map-legend__bands .is-near, .university-map-pin.is-near-average { --band-color: var(--map-near); }
.universities-map-legend__bands .is-above, .university-map-pin.is-above-average { --band-color: var(--map-above); }
.universities-map-legend__bands .is-very-above, .university-map-pin.is-very-above-average { --band-color: var(--map-very-above); }
.university-map-pin[data-average-band] .university-map-pin__dot { fill: var(--band-color); }
.university-map-pin[data-average-band] .university-map-pin__halo { fill: var(--band-color); fill-opacity: .2; }
.universities-map-tooltip__primary { display: grid; gap: 2px; margin: 6px 0; }
.universities-map-tooltip__primary small { font-size: 10px; }
.universities-map-tooltip__primary b { color: #fff; font-size: 15px; line-height: 1.25; }
.universities-map-tooltip__primary em { color: #e5d781; font-size: 10px; font-style: normal; font-weight: 800; }
.universities-map-tooltip__close { position: absolute; top: 6px; right: 6px; width: 26px; height: 26px; border: 0; border-radius: 6px; color: rgba(255,255,255,.75); background: rgba(255,255,255,.06); font: 19px/1 Inter, system-ui, sans-serif; cursor: pointer; pointer-events: auto; }
.universities-map-tooltip__close:focus-visible { outline: 2px solid #8ef4d8; }
.universities-map-tooltip__pager { padding-right: 34px; }
.universities-map-tooltip dl { display: grid; gap: 4px; margin: 3px 0 0; }
.universities-map-tooltip dl div { display: flex; justify-content: space-between; gap: 10px; }
.universities-map-tooltip dt { color: rgba(255,255,255,.53); }
.universities-map-tooltip dd { margin: 0; color: rgba(255,255,255,.9); font-weight: 750; text-align: right; }
body.universities-map-expanded { overflow: hidden; }
.universities-map-card.is-expanded { position: fixed; z-index: 10000; inset: 12px; display: flex; flex-direction: column; width: auto; max-width: none; height: auto; min-height: 0; box-sizing: border-box; overflow: hidden; background: #0b100e; }
.universities-map-card.is-expanded .universities-map { flex: 1 1 auto; min-height: 0; }
.universities-map-card.is-expanded .universities-map-tooltip { width: min(360px, calc(100% - 24px)); }
.universities-map-card.is-expanded .universities-map-toolbar { gap: 12px; margin-bottom: 14px; }
.universities-map-card.is-expanded .universities-map-filter-group { gap: 8px; }
.universities-map-card.is-expanded .universities-map-filter-label { font-size: 11px; }
.universities-map-card.is-expanded .universities-map-controls { gap: 9px; }
.universities-map-card.is-expanded .universities-map-controls button { min-height: 44px; padding: 11px 15px; font-size: 13px; }
.universities-map-card.is-expanded .universities-map-meta { font-size: 12px; }
.universities-map-card.is-expanded .universities-map-navigation button { width: 40px; height: 40px; }
.universities-map-card.is-expanded .universities-map-scope-controls button { min-height: 34px; padding: 8px 11px; font-size: 11px; }
@media (min-width: 1024px) {
  .universities-map-scope-controls { gap: 7px; }
  .universities-map-scope-controls button { min-height: 32px; padding: 7px 14px; font-size: 11px; }
  .universities-map-card.is-expanded .universities-map-scope-controls button { min-height: 34px; padding: 8px 15px; font-size: 12px; }
}
.universities-map-card.is-expanded .universities-map-tooltip { width: min(420px, calc(100% - 24px)); padding: 18px; font-size: 13px; pointer-events: auto; }
.universities-map-card.is-expanded .universities-map-tooltip a { display: block; padding-right: 24px; font-size: 15px; }
.universities-map-card.is-expanded .universities-map-tooltip__primary { gap: 4px; margin: 10px 0; }
.universities-map-card.is-expanded .universities-map-tooltip__primary small { font-size: 11px; font-weight: 800; letter-spacing: .04em; text-transform: uppercase; }
.universities-map-card.is-expanded .universities-map-tooltip__primary b { font-size: 20px; }
.universities-map-card.is-expanded .universities-map-tooltip__primary em { font-size: 11px; }
.universities-map-card.is-expanded .universities-map-tooltip dl { gap: 7px; }
.universities-map-card.is-expanded .universities-map-tooltip__close { width: 32px; height: 32px; }
.universities-map-card.is-expanded .universities-map-legend { max-width: 340px; padding: 8px 10px; font-size: 12px; }
.universities-map-card.is-expanded .universities-map-legend strong { font-size: 12px; }
.universities-map-card.is-expanded .universities-map-legend small { font-size: 10px; }
@media (min-width: 1024px) {
  .universities-map-card.is-expanded .universities-map-legend { bottom: 62px; }
}
.universities-explore-grid { grid-template-columns: minmax(0, 1fr); }
.universities-map-card { min-width: 0; }
.universities-map-content { display: grid; grid-template-columns: minmax(0, 3fr) minmax(240px, 1fr); gap: 12px; min-height: 430px; flex: 1 1 auto; }
.universities-map-content > * { min-width: 0; }
.universities-map-content .universities-map { min-height: 430px; }
.universities-map-search { position: relative; z-index: 20; width: min(440px, 100%); }
.universities-map-search .sr-only { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.universities-map-search input { width: 100%; min-height: 40px; box-sizing: border-box; padding: 9px 12px; border: 1px solid rgba(255,255,255,.16); border-radius: 9px; color: #fff; background: rgba(0,0,0,.28); font: inherit; font-size: 12px; }
.universities-map-search input:focus { border-color: rgba(142,244,216,.65); outline: 2px solid rgba(142,244,216,.18); }
.universities-map-search .universities-search-results { position: absolute; z-index: 21; top: 100%; left: 0; right: 0; display: grid; max-height: 280px; gap: 4px; overflow-y: auto; margin-top: 4px; padding: 5px; border: 1px solid rgba(142,244,216,.28); border-radius: 9px; background: #0b1411; box-shadow: 0 18px 32px rgba(0,0,0,.45); }
.universities-map-search .universities-search-results[hidden] { display: none; }
.universities-map-search-result { display: flex; align-items: center; justify-content: space-between; gap: 10px; width: 100%; min-width: 0; padding: 8px 9px; border: 0; border-radius: 6px; color: #fff; background: transparent; font: inherit; font-size: 11px; text-align: left; cursor: pointer; }
.universities-map-search-result:hover, .universities-map-search-result:focus-visible { background: rgba(29,233,182,.13); outline: 0; }
.universities-map-search-result span { display: grid; min-width: 0; }
.universities-map-search-result small { overflow: hidden; color: rgba(255,255,255,.56); text-overflow: ellipsis; white-space: nowrap; }
.universities-map-highlights { min-width: 0; padding: 16px 13px; border: 1px solid rgba(255,255,255,.09); border-radius: 12px; background: rgba(255,255,255,.018); }
.universities-map-highlights details { height: 100%; }
.universities-map-highlights summary { display: none; }
.universities-map-highlights__content { display: grid; align-content: start; gap: 9px; }
.universities-map-highlights__content .card-kicker { margin: 0; font-size: 10px; }
.universities-map-highlights h3 { margin: 0 0 2px; color: #f3f4f2; font-size: 15px; line-height: 1.3; }
.universities-map-highlights__results { display: grid; gap: 10px; }
.universities-map-highlights__results section { display: grid; gap: 4px; }
.universities-map-highlights__results h4 { margin: 3px 0; color: rgba(255,255,255,.54); font-size: 10px; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; }
.universities-map-highlight { display: flex; align-items: center; justify-content: space-between; gap: 8px; width: 100%; padding: 8px 9px; border: 1px solid rgba(255,255,255,.08); border-radius: 7px; color: #fff; background: rgba(255,255,255,.025); font: inherit; font-size: 11px; text-align: left; cursor: pointer; }
.universities-map-highlight strong { flex: 0 0 auto; }
.universities-map-highlight span { min-width: 0; color: #c6efe4; font-variant-numeric: tabular-nums; text-align: right; }
.universities-map-highlight small { display: block; color: rgba(255,255,255,.52); font-size: 9px; line-height: 1.2; }
.universities-map-highlight:hover, .universities-map-highlight:focus-visible, .universities-map-highlight.is-selected { border-color: rgba(142,244,216,.47); background: rgba(29,233,182,.1); outline: 0; }
.universities-map-highlights__intro, .universities-map-coverage { margin: 0; color: rgba(255,255,255,.52); font-size: 11px; line-height: 1.5; }
.universities-map-coverage { align-self: end; margin-top: 8px; font-size: 10px; }
.universities-map-tooltip { pointer-events: none; }
.universities-map-tooltip__cta { display: inline-block; width: fit-content; margin-top: 8px; padding: 6px 0; }
.universities-map-card.is-expanded .universities-map-content { min-height: 0; }
.universities-map-card.is-expanded .universities-map-content .universities-map { min-height: 0; }
@media (max-width: 720px) {
  .universities-map-content { grid-template-columns: minmax(0, 1fr); min-height: 0; }
  .universities-map-content .universities-map { height: 300px; min-height: 0; }
  .universities-map-highlights { padding: 10px 12px; }
  .universities-map-highlights summary { display: block; color: #caffef; font-size: 12px; font-weight: 800; cursor: pointer; }
  .universities-map-highlights__content { padding-top: 10px; }
  .universities-map-card.is-expanded .universities-map-content { grid-template-rows: minmax(0, 1fr) auto; overflow: hidden; }
  .universities-map-card.is-expanded .universities-map-highlights { max-height: 150px; overflow-y: auto; }
}

/* Fullscreen map: denser controls and a connected editorial context panel. */
.universities-map-card.is-expanded .universities-card-head { align-items: center; margin-bottom: 8px; }
.universities-map-card.is-expanded .universities-map-toolbar { display: grid; grid-template-columns: minmax(190px, 245px) minmax(0, 1fr); align-items: end; gap: 12px; margin: 0 0 10px; }
.universities-map-card.is-expanded .universities-map-search { width: 100%; }
.universities-map-card.is-expanded .universities-map-search input { min-height: 34px; padding: 7px 10px; font-size: 11px; }
.universities-map-card.is-expanded .universities-map-filter-group { min-width: 0; gap: 4px; }
.universities-map-card.is-expanded .universities-map-filter-label { font-size: 9px; }
.universities-map-card.is-expanded .universities-map-controls { gap: 6px; }
.universities-map-card.is-expanded .universities-map-controls button { min-height: 34px; padding: 7px 10px; font-size: 11px; }
.universities-map-card.is-expanded .universities-map-content { grid-template-columns: minmax(0, 3.4fr) minmax(280px, 1fr); }
.universities-map-card.is-expanded .universities-map-highlights { overflow-y: auto; padding: 16px; background: linear-gradient(180deg, rgba(29,233,182,.055), transparent 40%), rgba(255,255,255,.018); }
.universities-map-card.is-expanded .universities-map-highlights details { height: auto; }
.universities-map-card.is-expanded .universities-map-highlights__content { gap: 12px; }
.universities-map-card.is-expanded .universities-map-highlights h3 { font-size: 17px; }
.universities-map-card.is-expanded .universities-map-highlights__results { gap: 11px; }
.universities-map-card.is-expanded .universities-map-highlights__results section { gap: 5px; }
.universities-map-card.is-expanded .universities-map-highlights__results h4 { margin-top: 0; }
.universities-map-card.is-expanded .universities-map-highlight { padding: 8px 10px; font-size: 11px; }
.universities-map-lead { gap: 3px; padding: 12px; border: 1px solid rgba(216,204,121,.24); border-radius: 9px; background: rgba(216,204,121,.055); }
.universities-map-lead small, .universities-map-selected small { color: rgba(255,255,255,.52); font-size: 9px; font-weight: 850; letter-spacing: .07em; text-transform: uppercase; }
.universities-map-lead strong { color: #e8db8d; font-family: "Bebas Neue", system-ui, sans-serif; font-size: 30px; font-weight: 400; line-height: 1; }
.universities-map-lead span { color: rgba(255,255,255,.76); font-size: 11px; line-height: 1.35; }
.universities-map-selected { gap: 4px; padding: 12px; border-top: 1px solid rgba(142,244,216,.24); border-bottom: 1px solid rgba(142,244,216,.24); background: rgba(29,233,182,.035); }
.universities-map-selected strong { color: #fff; font-size: 15px; }
.universities-map-selected > span { color: #d8cc79; font-size: 11px; line-height: 1.35; }
.universities-map-selected .universities-map-selected__location { color: rgba(255,255,255,.48); font-size: 10px; }
.universities-map-selected p { display: flex; justify-content: space-between; gap: 8px; margin: 4px 0 0; color: rgba(255,255,255,.6); font-size: 10px; }
.universities-map-selected p b { color: #fff; text-align: right; }
.universities-map-selected a { width: fit-content; margin-top: 5px; color: #8ef4d8; font-size: 11px; font-weight: 850; text-decoration: none; }
.universities-map-selected a:hover, .universities-map-selected a:focus-visible { text-decoration: underline; }
.universities-map-card.is-expanded .universities-map-coverage { margin-top: 1px; padding-top: 9px; border-top: 1px solid rgba(255,255,255,.09); }
.universities-map-card.is-expanded .universities-map-tooltip { border-color: rgba(142,244,216,.55); background: rgba(5,13,10,.97); }
.universities-map-card.is-expanded .universities-map-tooltip__entry > strong { display: inline-block; margin-right: 3px; font-size: 17px; }
.universities-map-card.is-expanded .universities-map-tooltip__primary { padding: 9px 0; border-top: 1px solid rgba(255,255,255,.09); border-bottom: 1px solid rgba(255,255,255,.09); }
.universities-map-card.is-expanded .universities-map-tooltip__primary b { color: #e8db8d; font-size: 22px; }
.universities-map-card.is-expanded .universities-map-tooltip__cta { padding: 9px 11px; border: 1px solid rgba(142,244,216,.32); border-radius: 7px; background: rgba(29,233,182,.1); }
@media (max-width: 720px) {
  .universities-map-card.is-expanded .universities-card-head { margin-bottom: 7px; }
  .universities-map-card.is-expanded .universities-card-head h2 { font-size: clamp(25px, 6vw, 30px); line-height: .96; }
  .universities-map-card.is-expanded .universities-map-toolbar { grid-template-columns: minmax(0, 1fr); gap: 6px; margin-bottom: 7px; }
  .universities-map-card.is-expanded .universities-map-filter-group { gap: 0; }
  .universities-map-card.is-expanded .universities-map-filter-label { display: none; }
  .universities-map-card.is-expanded .universities-map-content { grid-template-columns: minmax(0, 1fr); }
  .universities-map-card.is-expanded .universities-map-highlights { max-height: min(34vh, 270px); padding: 10px 12px; }
  .universities-map-card.is-expanded .universities-map-highlights__content { gap: 10px; }
  .universities-map-card.is-expanded .universities-map-tooltip__primary b { font-size: 18px; }
}
@media (max-width: 520px) {
  .universities-map-search { width: 100%; }
  .universities-map-card:not(.is-expanded) .universities-map-content .universities-map { height: 250px; }
  .universities-map-card.is-expanded .universities-map-content .universities-map { height: auto; }
  .universities-map-search-result > small { display: none; }
  .universities-map-card.is-expanded .universities-map-tooltip__cta { position: sticky; bottom: -13px; display: block; width: 100%; box-sizing: border-box; padding: 10px 0; background: #07100d; }
}
.universities-search-card input { width: 100%; box-sizing: border-box; padding: 12px; border: 1px solid rgba(255,255,255,.16); border-radius: 9px; color: #fff; background: rgba(0,0,0,.25); font: inherit; }
.universities-search-results { display: grid; gap: 7px; margin-top: 12px; }
.universities-choice { display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 10px; border: 1px solid rgba(255,255,255,.08); border-radius: 8px; color: #f5f5f5; background: rgba(255,255,255,.025); font-size: 13px; text-decoration: none; }
.universities-comparison-card { margin-bottom: 12px; }
.universities-compare-slots { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.universities-compare-slot { min-width: 0; padding: 13px; border: 1px solid rgba(255,255,255,.1); border-radius: 10px; background: rgba(255,255,255,.025); }
.universities-compare-slot > label { display: block; margin-bottom: 8px; color: #8ef4d8; font-size: 10px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.universities-compare-picker { position: relative; }
.universities-compare-picker[hidden], .universities-compare-results[hidden], .universities-compare-selected[hidden], .universities-comparison-result[hidden] { display: none; }
.universities-compare-picker > input { width: 100%; box-sizing: border-box; padding: 10px 12px; border: 1px solid rgba(255,255,255,.16); border-radius: 8px; color: #fff; background: rgba(0,0,0,.24); font: inherit; font-size: 12px; }
.universities-compare-picker > input:focus-visible { outline: 2px solid #8ef4d8; outline-offset: 2px; }
.universities-compare-results { position: absolute; z-index: 8; top: calc(100% + 5px); left: 0; right: 0; display: grid; gap: 3px; max-height: 270px; overflow-y: auto; padding: 5px; border: 1px solid rgba(142,244,216,.26); border-radius: 8px; background: #101815; box-shadow: 0 12px 22px rgba(0,0,0,.4); }
.universities-compare-results button { display: grid; grid-template-columns: auto minmax(0,1fr); gap: 8px; padding: 8px 10px; border: 0; border-radius: 6px; color: rgba(255,255,255,.73); background: transparent; font: inherit; font-size: 11px; text-align: left; cursor: pointer; }
.universities-compare-results button:hover, .universities-compare-results button:focus-visible { color: #fff; background: rgba(29,233,182,.1); outline: none; }
.universities-compare-results button strong { color: #fff; }
.universities-compare-results button span { min-width: 0; overflow-wrap: anywhere; }
.universities-compare-selected { display: grid; grid-template-columns: auto minmax(0,1fr) auto; align-items: center; gap: 10px; min-height: 40px; }
.universities-compare-monogram { display: grid; place-items: center; min-width: 38px; min-height: 38px; padding: 0 4px; border: 1px solid rgba(142,244,216,.3); border-radius: 8px; color: #8ef4d8; background: rgba(29,233,182,.07); font: 800 13px/1 Inter,sans-serif; }
.universities-compare-selected__identity { display: grid; min-width: 0; gap: 3px; }
.universities-compare-selected__identity strong { color: #fff; font-size: 12px; line-height: 1.3; }
.universities-compare-selected__identity small { color: rgba(255,255,255,.52); font-size: 10px; }
.universities-compare-selected button { padding: 6px; border: 0; color: #8ef4d8; background: none; font: inherit; font-size: 11px; font-weight: 800; cursor: pointer; }
.universities-compare-selected button:focus-visible { outline: 2px solid #8ef4d8; outline-offset: 2px; }
.universities-compare-actions { display: flex; align-items: center; gap: 12px; margin: 12px 0 0; }
.universities-selection-status { margin: 0; color: rgba(255,255,255,.5); font-size: 11px; font-weight: 700; }
.universities-comparison-result { margin-top: 18px; }
.universities-compare-head { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; margin-bottom: 12px; }
.universities-compare-identity { display: grid; align-content: start; gap: 2px; min-width: 0; padding: 12px 14px; border: 1px solid rgba(29,233,182,.2); border-radius: 9px; background: rgba(29,233,182,.045); }
.universities-compare-identity strong { color: #8ef4d8; font: 24px/1 Bebas Neue,sans-serif; }
.universities-compare-identity span { color: #fff; font-size: 12px; font-weight: 750; line-height: 1.35; }
.universities-compare-identity small { color: rgba(255,255,255,.54); font-size: 10px; }
.universities-compare-group { margin-top: 12px; padding: 13px 15px 4px; border: 1px solid rgba(255,255,255,.09); border-radius: 9px; background: rgba(255,255,255,.018); }
.universities-compare-group h3 { margin: 0 0 4px; color: #8ef4d8; font-size: 11px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.universities-compare-row { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 4px 10px; padding: 9px 0; border-bottom: 1px solid rgba(255,255,255,.07); }
.universities-compare-row:last-child { border-bottom: 0; }
.universities-compare-row__label { grid-column: 1 / -1; color: rgba(255,255,255,.58); font-size: 10px; font-weight: 800; letter-spacing: .03em; text-transform: uppercase; }
.universities-compare-value { display: grid; align-content: start; min-width: 0; gap: 2px; overflow-wrap: anywhere; font-variant-numeric: tabular-nums; }
.universities-compare-value strong { color: #fff; font-size: 17px; line-height: 1.2; }
.universities-compare-value small { color: rgba(255,255,255,.5); font-size: 10px; }
.universities-compare-methodology { margin-top: 13px; padding-top: 10px; border-top: 1px solid rgba(255,255,255,.08); color: rgba(255,255,255,.58); font-size: 11px; line-height: 1.5; }
.universities-compare-methodology summary { width: fit-content; color: #caffef; font-weight: 800; cursor: pointer; }
.universities-compare-methodology p { max-width: 75ch; margin: 7px 0 0; }
.universities-button { flex: 0 0 auto; padding: 10px 14px; border: 1px solid rgba(29,233,182,.52); border-radius: 8px; color: #caffef; background: rgba(29,233,182,.1); font: inherit; font-size: 12px; font-weight: 900; cursor: pointer; }
.universities-button:disabled { opacity: .45; cursor: not-allowed; }
.universities-metric-label { display: inline-flex; align-items: center; gap: 5px; max-width: 100%; }
.universities-metric-info { display: inline-grid; flex: 0 0 auto; place-items: center; width: 16px; height: 16px; padding: 0; border: 1px solid rgba(29,233,182,.42); border-radius: 50%; color: #8ef4d8; background: rgba(29,233,182,.06); font: 800 10px/1 Inter, sans-serif; letter-spacing: normal; text-transform: none; cursor: help; }
.universities-metric-info:hover, .universities-metric-info:focus-visible, .universities-metric-info[aria-expanded="true"] { border-color: rgba(29,233,182,.8); color: #fff; background: rgba(29,233,182,.14); outline: none; }
.universities-metric-tooltip { position: fixed; z-index: 1000; box-sizing: border-box; padding: 9px 11px; border: 1px solid rgba(29,233,182,.28); border-radius: 8px; color: rgba(255,255,255,.88); background: rgba(7,12,10,.97); box-shadow: 0 12px 28px rgba(0,0,0,.38); font-size: 11px; line-height: 1.4; pointer-events: none; }
.universities-metric-tooltip[hidden] { display: none; }
.universities-back-link { display: inline-block; margin-bottom: 20px; color: rgba(202,255,239,.86); font-size: 13px; font-weight: 800; text-decoration: none; }
.university-fact-list { margin: 14px 0 0; }.university-fact-list div { display: flex; justify-content: space-between; gap: 18px; padding: 10px 0; border-bottom: 1px solid rgba(255,255,255,.08); }.university-fact-list dt { color: rgba(255,255,255,.57); }.university-fact-list dd { margin: 0; color: #fff; font-weight: 900; text-align: right; font-variant-numeric: tabular-nums; }
.university-current-finance { margin-top: 20px; padding-top: 17px; border-top: 1px solid rgba(29,233,182,.24); }
.university-current-finance h3 { margin: 0; color: #8ef4d8; font-size: 11px; font-weight: 900; letter-spacing: .09em; text-transform: uppercase; }
.university-current-finance > p { margin: 13px 0 0; color: rgba(255,255,255,.52); font-size: 11px; line-height: 1.45; }
.university-current-finance .university-fact-list { margin-top: 9px; }
.university-current-finance .university-fact-list dd { display: grid; justify-items: end; gap: 3px; }
.university-current-finance .university-fact-list dd small { color: rgba(255,255,255,.48); font-size: 9px; font-weight: 700; line-height: 1.3; }
.universities-list-card { margin-bottom: 12px; }
.universities-comparison-card > .universities-card-head { align-items: center; margin-bottom: 0; }
.universities-comparison-card.is-expanded > .universities-card-head { margin-bottom: 16px; }
.universities-disclosure-toggle { display: inline-flex; flex: 0 0 auto; align-items: center; justify-content: center; gap: 10px; min-height: 44px; padding: 9px 13px; border: 1px solid rgba(29,233,182,.32); border-radius: 8px; color: #caffef; background: rgba(29,233,182,.055); font: inherit; font-size: 12px; font-weight: 850; cursor: pointer; }
.universities-disclosure-toggle:hover { background: rgba(29,233,182,.1); }
.universities-disclosure-toggle:focus-visible { outline: 2px solid #8ef4d8; outline-offset: 2px; }
.universities-disclosure-chevron { width: 7px; height: 7px; border-right: 2px solid currentColor; border-bottom: 2px solid currentColor; transform: translateY(-2px) rotate(45deg); transition: transform .18s ease; }
.universities-disclosure-toggle[aria-expanded="true"] .universities-disclosure-chevron { transform: translateY(2px) rotate(225deg); }
.universities-disclosure-panel[hidden] { display: none; }
.universities-disclosure-panel:not([hidden]) { animation: universities-reveal .18s ease-out; }
@keyframes universities-reveal { from { opacity: .45; transform: translateY(-4px); } to { opacity: 1; transform: translateY(0); } }
@media (prefers-reduced-motion: reduce) { .universities-disclosure-panel:not([hidden]) { animation: none; } .universities-disclosure-chevron { transition: none; } }
.universities-ranking-count { display: block; margin: 0 0 10px; color: rgba(255,255,255,.52); font-size: 11px; font-weight: 750; }
.universities-ranking-filter { display: grid; flex: 0 0 auto; gap: 6px; min-width: 180px; }
.universities-ranking-filter label { color: rgba(255,255,255,.5); font-size: 10px; font-weight: 850; letter-spacing: .06em; text-transform: uppercase; }
.universities-ranking-filter select { min-height: 36px; max-width: 100%; padding: 7px 10px; border: 1px solid rgba(255,255,255,.16); border-radius: 7px; color: #f2f2f2; background: #101815; font: inherit; font-size: 12px; font-weight: 750; }
.universities-ranked-list { --universities-rank-width: 44px; display: grid; gap: 5px; margin: 0; padding: 0; list-style: none; }
.universities-ranked-list li { display: grid; grid-template-columns: var(--universities-rank-width) minmax(0,1fr) auto; align-items: center; gap: 8px; min-width: 0; padding: 9px 14px; border: 1px solid rgba(255,255,255,.07); border-radius: 9px; background: rgba(255,255,255,.025); }
.universities-ranked-list li:hover { background: rgba(255,255,255,.045); }
.universities-ranked-identity-group { display: grid; grid-column: 1 / 3; grid-template-columns: var(--universities-rank-width) minmax(0,1fr); grid-template-rows: auto auto; gap: 2px 8px; align-self: center; min-width: 0; }
.universities-ranked-position { display: flex; grid-column: 1; grid-row: 1 / 3; align-self: stretch; align-items: center; justify-content: flex-end; color: rgba(142,244,216,.72); font-family: "Bebas Neue", system-ui, sans-serif; font-size: 42px; font-weight: 400; font-variant-numeric: tabular-nums; line-height: 1; white-space: nowrap; }
.universities-ranked-glyph { display: flex; align-items: flex-start; }
/* Align the visible capital/digit edges, not the font's empty ascender/descender space. */
.universities-ranked-number { display: block; text-box: trim-both cap alphabetic; }
.universities-ranked-glyph sup { display: block; font-family: Inter, system-ui, sans-serif; font-size: 12px; font-weight: 700; line-height: 1; text-box: trim-both cap alphabetic; }
.universities-ranked-identity { display: grid; grid-column: 2; grid-row: 1 / 3; grid-template-rows: subgrid; align-self: stretch; min-width: 0; color: #fff; text-decoration: none; }
.universities-ranked-identity strong { color: #f5f5f5; font-size: 16px; font-weight: 900; line-height: 1.25; }
.universities-ranked-identity small { color: #B8B0D0; font-size: 11px; font-weight: 550; line-height: 1.35; overflow-wrap: anywhere; }
.universities-ranked-value { color: #fff; font-size: 17px; font-weight: 900; font-variant-numeric: tabular-nums; text-align: right; white-space: nowrap; }
.universities-ranked-value small { color: rgba(255,255,255,.55); font-size: 10px; font-weight: 700; }
#universitySpendingRanking li:not(.universities-ranked-empty) { grid-template-columns: var(--universities-rank-width) minmax(0,1fr) minmax(160px,180px) minmax(190px,220px); }
.universities-spending-metric { display: grid; min-width: 0; gap: 2px; justify-items: end; text-align: right; font-variant-numeric: tabular-nums; }
.universities-spending-metric small { display: flex; align-items: center; justify-content: flex-end; min-height: 20px; color: rgba(255,255,255,.55); font-size: 10px; font-weight: 750; }
.universities-spending-metric .universities-metric-info { width: 20px; height: 20px; }
.universities-spending-metric .universities-metric-info::before { inset: 3px; }
.universities-spending-metric b { color: #fff; font-size: 17px; font-weight: 900; white-space: nowrap; }
.universities-list-more { display: block; margin: 12px auto 0; padding: 8px 14px; border: 1px solid rgba(29,233,182,.32); border-radius: 7px; color: #caffef; background: rgba(29,233,182,.06); font: inherit; font-size: 12px; font-weight: 800; cursor: pointer; }
.universities-list-more[hidden] { display: none; }
.universities-ranked-list .universities-ranked-empty { display: block; color: rgba(255,255,255,.6); font-size: 13px; }
.universities-simple-ranking .universities-ranked-list li:not(.universities-ranked-empty) { grid-template-columns: var(--universities-rank-width) minmax(0,1fr) minmax(220px,auto); }
#universityForeignRanking li:not(.universities-ranked-empty) { grid-template-columns: var(--universities-rank-width) minmax(150px,1.4fr) minmax(90px,.7fr) minmax(90px,.7fr) minmax(0,1.25fr) minmax(0,1.25fr); grid-template-rows: minmax(28px,auto) auto; align-items: stretch; gap: 2px 8px; }
#universityForeignRanking .universities-ranked-identity-group { grid-row: 1 / 3; align-self: start; }
.universities-foreign-values, .universities-foreign-values > span { display: contents; }
.universities-foreign-values > span:nth-child(1) > :is(small,b) { grid-column: 3; }
.universities-foreign-values > span:nth-child(2) > :is(small,b) { grid-column: 4; }
.universities-foreign-values > span:nth-child(3) > :is(small,b) { grid-column: 5; }
.universities-foreign-values > span:nth-child(4) > :is(small,b) { grid-column: 6; }
.universities-foreign-values small { display: flex; grid-row: 1; align-self: stretch; align-items: center; justify-content: flex-end; min-width: 0; color: rgba(255,255,255,.55); font-size: 10px; font-weight: 750; line-height: 1.2; text-align: right; }
.universities-foreign-values small .universities-metric-label { align-items: center; justify-content: flex-end; min-width: 0; text-align: right; }
.universities-foreign-values small .universities-metric-label > span { min-width: 0; }
.universities-foreign-values b { grid-row: 2; align-self: start; min-width: 0; color: #fff; font-size: 14px; font-weight: 850; font-variant-numeric: tabular-nums; line-height: 1.25; text-align: right; overflow-wrap: anywhere; }
.universities-ranking-note { margin: 13px 0 0; color: rgba(255,255,255,.58); font-size: 11px; line-height: 1.55; }
.universities-metric-label { gap: 2px; vertical-align: middle; }
.universities-metric-info { position: relative; width: 28px; height: 28px; margin-inline-start: -4px; border: 0; color: rgba(220,250,241,.65); background: transparent; font-size: 10px; font-weight: 700; cursor: help; }
.universities-metric-info::before { position: absolute; inset: 7px; border: 1px solid rgba(220,250,241,.45); border-radius: 50%; content: ""; }
.universities-metric-info:hover, .universities-metric-info[aria-expanded="true"] { color: #fff; background: transparent; }
.universities-metric-info:hover::before, .universities-metric-info[aria-expanded="true"]::before { border-color: rgba(220,250,241,.82); }
.universities-metric-info:focus-visible { outline: 2px solid rgba(29,233,182,.72); outline-offset: 0; border-radius: 5px; }
.university-foreign-period { margin: 8px 0 0; color: rgba(255,255,255,.56); font-size: 11px; }
.university-foreign-metrics { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; margin: 18px 0 0; }
.university-foreign-metrics > div { display: flex; flex-direction: column-reverse; justify-content: center; min-width: 0; gap: 5px; padding: 15px; border: 1px solid rgba(255,255,255,.075); border-radius: 9px; background: rgba(255,255,255,.025); }
.university-foreign-metrics dt { color: rgba(255,255,255,.55); font-size: 11px; font-weight: 750; line-height: 1.35; }
.university-foreign-metrics dd { margin: 0; color: #fff; font-size: clamp(21px,2.4vw,29px); font-weight: 900; font-variant-numeric: tabular-nums; overflow-wrap: anywhere; }
.university-foreign-status { margin: 12px 0 0; color: rgba(255,255,255,.67); font-size: 11px; }
.university-foreign-status[hidden] { display: none; }
@media (max-width: 720px) { .universities-shell { width: min(calc(100% - 24px), 1180px); padding-top: 24px; }.universities-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }.universities-kpis article { padding: 12px; }.universities-kpis strong { font-size: 26px; }.universities-explore-grid, .university-detail-grid { grid-template-columns: 1fr; }.universities-map-card, .universities-search-card { align-self: auto; }.universities-map-card { display: block; }.universities-card { padding: 16px; }.universities-map { min-height: 250px; }.universities-choice-list { grid-template-columns: 1fr; max-height: 310px; overflow-y: auto; }.universities-card-head { flex-direction: column; gap: 12px; }.universities-button { width: 100%; }.university-detail-hero { margin-bottom: 14px; } }

@media (max-width: 720px) {
  .universities-map { height: 300px; min-height: 0; }
  .universities-map-hint { display: none; }
  .universities-map-controls { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .universities-map-controls button { min-height: 34px; padding-inline: 6px; white-space: normal; }
  .universities-map-tooltip { right: 8px; bottom: 58px; width: calc(100% - 16px); max-height: calc(100% - 175px); }
  .universities-compare-slots { grid-template-columns: 1fr; }
  .universities-compare-actions { flex-direction: column; align-items: stretch; }
  .universities-compare-group { padding-inline: 11px; }
  .universities-compare-value strong { font-size: 15px; }
  .universities-compare-identity { padding: 10px; }
  .universities-compare-identity strong { font-size: 21px; }
  .universities-ranked-list li { gap: 6px; padding: 9px 11px; }
  .universities-ranked-list { --universities-rank-width: 40px; }
  .universities-ranked-identity-group { grid-column: 1 / -1; grid-row: 1; column-gap: 6px; align-self: start; }
  .universities-ranked-glyph sup { font-size: 10px; }
  .universities-ranked-value { grid-column: 2; text-align: left; font-size: 16px; }
  .universities-simple-ranking .universities-ranked-list li:not(.universities-ranked-empty) { grid-template-columns: var(--universities-rank-width) minmax(0,1fr); grid-template-rows: auto auto; }
  .universities-simple-ranking .universities-spending-metric { grid-column: 2; grid-row: 2; justify-items: start; text-align: left; }
  .universities-simple-ranking .universities-spending-metric small { justify-content: flex-start; }
  .universities-simple-ranking .universities-spending-metric b { white-space: normal; overflow-wrap: anywhere; }
  #universitySpendingRanking li:not(.universities-ranked-empty) { grid-template-columns: var(--universities-rank-width) repeat(2,minmax(0,1fr)); grid-template-rows: auto auto auto; align-items: start; gap: 3px 6px; }
  #universitySpendingRanking .universities-spending-metric { display: contents; text-align: left; }
  #universitySpendingRanking .universities-spending-metric > small { display: flex; grid-row: 2; align-self: stretch; align-items: center; justify-content: flex-start; min-width: 0; min-height: 28px; font-size: 9px; line-height: 1.2; }
  #universitySpendingRanking .universities-spending-metric > b { grid-row: 3; align-self: start; min-width: 0; }
  #universitySpendingRanking .universities-spending-metric:not(.universities-spending-formation) > :is(small,b) { grid-column: 2; }
  #universitySpendingRanking .universities-spending-formation > :is(small,b) { grid-column: 3; }
  #universitySpendingRanking .universities-spending-metric small .universities-metric-label { min-width: 0; gap: 1px; }
  #universitySpendingRanking .universities-spending-metric small .universities-metric-label > span { min-width: 0; }
  #universitySpendingRanking .universities-metric-info { width: 28px; height: 28px; }
  #universitySpendingRanking .universities-metric-info::before { inset: 7px; }
  #universitySpendingRanking .universities-spending-metric b { font-size: 15px; white-space: normal; overflow-wrap: anywhere; }
  #universityForeignRanking li:not(.universities-ranked-empty) { grid-template-columns: var(--universities-rank-width) minmax(0,1fr); grid-template-rows: auto auto; gap: 4px 6px; }
  #universityForeignRanking .universities-ranked-identity-group { grid-row: 1; }
  .universities-foreign-values { display: grid; grid-column: 2; grid-row: 2; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px 10px; text-align: left; }
  .universities-foreign-values > span { display: grid; grid-template-rows: auto auto; gap: 2px; min-width: 0; }
  #universityForeignRanking .universities-foreign-values > span > :is(small,b) { grid-column: 1; grid-row: auto; }
  .universities-foreign-values small, .universities-foreign-values small .universities-metric-label { justify-content: flex-start; text-align: left; }
  .universities-foreign-values b { text-align: left; }
  .universities-ranking-filter { width: 100%; }
  .universities-ranking-filter select { width: 100%; }
  .university-foreign-metrics dd { font-size: 23px; }
  .university-foreign-metrics > div:nth-child(n+3) { grid-column: 1 / -1; }
  .university-current-finance .university-fact-list div { align-items: start; gap: 12px; }
  .university-current-finance .university-fact-list dt { max-width: 52%; }
  .university-current-finance .university-fact-list dd { min-width: 0; overflow-wrap: anywhere; }
  .universities-disclosure-toggle { width: 100%; }
}

@media (min-width: 420px) and (max-width: 720px) {
  .university-foreign-metrics > div:nth-child(n+3) { grid-column: auto; }
  .university-foreign-metrics > div:nth-child(n+3) dd { font-size: 19px; white-space: nowrap; }
}

@media (max-width: 520px) {
  .universities-map-scope-controls { right: 8px; bottom: 8px; display: block; max-width: calc(100% - 16px); padding: 3px; border-radius: 8px; }
  .universities-map-scope-controls button { display: none; }
  .universities-map-scope-controls::after { position: absolute; top: 50%; right: 10px; color: rgba(202,255,239,.72); content: "⌄"; font-size: 12px; line-height: 1; pointer-events: none; transform: translateY(-56%); }
  .universities-map-scope-select { display: block; width: 118px; min-height: 32px; box-sizing: border-box; padding: 5px 24px 5px 8px; appearance: none; border: 1px solid rgba(29,233,182,.42); border-radius: 6px; color: #caffef; background: rgba(7,16,13,.96); font: inherit; font-size: 9px; font-weight: 850; cursor: pointer; }
  .universities-map-scope-select:focus-visible { border-color: rgba(29,233,182,.72); outline: 2px solid rgba(29,233,182,.18); outline-offset: 1px; }
}

.university-formation-fact { margin-top: 6px; border-top: 1px solid rgba(29,233,182,.24); }
.university-formation-fact dt { font-size: 11px; font-weight: 850; letter-spacing: .06em; text-transform: uppercase; }
.university-current-finance .university-fact-list div.university-formation-note { display: block; padding-top: 0; }
.university-current-finance .university-formation-note dt { display: none; }
.university-current-finance .university-formation-note dd { max-width: 64ch; color: rgba(255,255,255,.6); font-size: 11px; font-weight: 600; line-height: 1.45; text-align: left; }
.universities-methodology-card { margin-top: 12px; }
.universities-methodology-card > .universities-card-head { align-items: center; margin-bottom: 0; }
.universities-methodology-card.is-expanded > .universities-card-head { margin-bottom: 16px; }
.universities-methodology-content { color: rgba(255,255,255,.73); font-size: 13px; line-height: 1.55; }
.universities-methodology-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.universities-methodology-module { min-width: 0; padding: 19px; border: 1px solid rgba(255,255,255,.09); border-radius: 11px; background: rgba(255,255,255,.025); }
.universities-methodology-wide { grid-column: 1 / -1; }
.universities-methodology-eyebrow { margin: 0 0 3px !important; color: rgba(142,244,216,.73); font-size: 10px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.universities-methodology-content h3 { margin: 0 0 15px; color: #fff; font-size: 18px; line-height: 1.2; }
.universities-methodology-content p { margin: 0 0 10px; }
.universities-methodology-content p:last-child { margin-bottom: 0; }
.universities-methodology-label { margin: 16px 0 5px !important; color: rgba(255,255,255,.49); font-size: 10px; font-weight: 900; letter-spacing: .07em; text-transform: uppercase; }
.universities-methodology-formula { display: flex; flex-wrap: wrap; align-items: baseline; gap: 5px 9px; min-width: 0; margin: 6px 0 12px; padding: 11px 12px; border: 1px solid rgba(142,244,216,.15); border-radius: 8px; color: rgba(255,255,255,.85); background: rgba(29,233,182,.04); overflow-wrap: anywhere; }
.universities-methodology-formula strong { color: #fff; }
.universities-methodology-formula > span:nth-child(2) { color: #8ef4d8; font-weight: 900; }
.universities-methodology-caution { margin-top: 15px !important; padding: 9px 11px; border-left: 2px solid rgba(142,244,216,.54); color: rgba(255,255,255,.82); background: rgba(29,233,182,.035); }
.universities-methodology-info, .universities-methodology-example { color: #caffef; font-weight: 750; }
.universities-methodology-steps { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 6px; margin: 12px 0; }
.universities-methodology-steps span { min-width: 0; padding: 8px; border: 1px solid rgba(255,255,255,.1); border-radius: 6px; color: rgba(255,255,255,.76); font-size: 11px; font-weight: 750; text-align: center; }
.universities-methodology-source-note { padding-top: 9px; border-top: 1px solid rgba(255,255,255,.09); overflow-wrap: anywhere; }
.universities-methodology-coverage { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 8px; margin: 15px 0; }
.universities-methodology-coverage div { display: grid; align-content: start; gap: 4px; min-width: 0; padding: 11px; border: 1px solid rgba(255,255,255,.09); border-radius: 8px; background: rgba(255,255,255,.025); }
.universities-methodology-coverage strong { color: #fff; font-size: 19px; font-variant-numeric: tabular-nums; }
.universities-methodology-coverage span { color: rgba(255,255,255,.62); font-size: 11px; line-height: 1.3; }
.universities-methodology-footnote { color: rgba(255,255,255,.57); font-size: 11px; }
.universities-methodology-sources { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 7px; }
.universities-methodology-sources div { display: grid; grid-template-columns: minmax(120px,.55fr) minmax(0,1fr); gap: 10px; padding: 10px 11px; border-bottom: 1px solid rgba(255,255,255,.08); }
.universities-methodology-sources strong { color: #fff; }
.universities-methodology-status { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 10px; }
.universities-methodology-status > div { min-width: 0; padding: 11px; border: 1px solid rgba(255,255,255,.09); border-radius: 8px; }
.universities-methodology-status p { margin: 8px 0 0; }
.universities-methodology-badge { display: inline-block; padding: 4px 7px; border: 1px solid rgba(142,244,216,.25); border-radius: 5px; color: #caffef; font-size: 9px; font-weight: 900; letter-spacing: .06em; text-transform: uppercase; }
.universities-methodology-badge--scenario { border-color: rgba(255,255,255,.2); color: rgba(255,255,255,.8); }
@media (max-width: 1100px) { .universities-methodology-coverage { grid-template-columns: repeat(3,minmax(0,1fr)); } .universities-methodology-sources div { grid-template-columns: 1fr; gap: 2px; } }
@media (max-width: 720px) {
  .universities-methodology-grid, .universities-methodology-steps, .universities-methodology-coverage, .universities-methodology-sources, .universities-methodology-status { grid-template-columns: 1fr; }
  .universities-methodology-module { padding: 15px; }
  .universities-methodology-content h3 { font-size: 17px; }
  .universities-methodology-sources div { padding-inline: 0; }
}

@media (max-width: 720px) {
  .universities-methodology-card > .universities-card-head { align-items: stretch; }
  .universities-comparison-card > .universities-card-head { align-items: stretch; }
}
@media (max-width: 720px) {
  .universities-map-card .universities-card-head { flex-direction: row; align-items: flex-start; }
  .universities-map-controls { display: flex; flex-wrap: nowrap; gap: 5px; overflow-x: auto; padding-bottom: 3px; }
  .universities-map-controls button { flex: 0 0 auto; min-height: 32px; white-space: nowrap; }
  .universities-map-card.is-expanded { inset: 6px; padding: 12px; }
  .universities-map-card.is-expanded .universities-map { height: auto; min-height: 0; }
  .universities-map-card.is-expanded .universities-map-controls { max-width: 100%; }
  .universities-map-legend { bottom: 49px; max-width: min(250px, calc(100% - 20px)); font-size: 9px; }
  .universities-map-tooltip dl div { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.2fr); }
}
@media (max-width: 520px) {
  .universities-map-card:not(.is-expanded) .universities-map-expand { display: none; }
  .universities-map-card .universities-map-filter-group { min-width: 0; }
  .universities-map-card .universities-map-controls,
  .universities-map-card.is-expanded .universities-map-controls { display: flex; flex-wrap: nowrap; min-width: 0; max-width: 100%; gap: 6px; overflow-x: auto; overflow-y: hidden; padding: 0 12px 2px 0; touch-action: pan-x; overscroll-behavior-x: contain; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
  .universities-map-card .universities-map-controls.has-more-metrics { -webkit-mask-image: linear-gradient(to right, #000 calc(100% - 24px), transparent); mask-image: linear-gradient(to right, #000 calc(100% - 24px), transparent); }
  .universities-map-card .universities-map-controls::-webkit-scrollbar { display: none; }
  .universities-map-card .universities-map-controls button,
  .universities-map-card.is-expanded .universities-map-controls button { flex: 0 0 auto; min-height: 34px; height: 34px; padding: 6px 10px; font-size: 10px; line-height: 1; white-space: nowrap; }
  .universities-map-card:not(.is-expanded) .universities-map { height: 250px; cursor: pointer; }
  .universities-map-card:not(.is-expanded) .universities-map { touch-action: pan-y; }
  .universities-map-card:not(.is-expanded) .universities-map-tooltip { display: none; }
  .universities-map-card:not(.is-expanded) .universities-map-legend { bottom: 49px; max-width: min(245px, calc(100% - 20px)); }
  .universities-map-card:not(.is-expanded) .universities-map-legend__details { display: none; }
  .universities-map-card:not(.is-expanded) .universities-map[data-active-map-mode="graduates"] .universities-map-legend > span,
  .universities-map-card:not(.is-expanded) .universities-map[data-active-map-mode="graduates"] .universities-map-legend > small,
  .universities-map-card:not(.is-expanded) .universities-map[data-active-map-mode="graduates"] .universities-map-legend__bands,
  .universities-map-card:not(.is-expanded) .universities-map[data-active-map-mode="foreign"] .universities-map-legend > span,
  .universities-map-card:not(.is-expanded) .universities-map[data-active-map-mode="foreign"] .universities-map-legend > small,
  .universities-map-card:not(.is-expanded) .universities-map[data-active-map-mode="foreign"] .universities-map-legend__bands,
  .universities-map-card:not(.is-expanded) .universities-map[data-active-map-mode="spending"] .universities-map-legend > span,
  .universities-map-card:not(.is-expanded) .universities-map[data-active-map-mode="spending"] .universities-map-legend > small,
  .universities-map-card:not(.is-expanded) .universities-map[data-active-map-mode="graduate-spending"] .universities-map-legend > span,
  .universities-map-card:not(.is-expanded) .universities-map[data-active-map-mode="graduate-spending"] .universities-map-legend > small,
  .universities-map-card:not(.is-expanded) .universities-map[data-active-map-mode="graduate-spending"] .universities-map-legend__bands,
  .universities-map-card:not(.is-expanded) .universities-map[data-active-map-mode="spending"] .universities-map-legend__bands { display: none; }
  .universities-map-card:not(.is-expanded) .universities-map[data-active-map-mode="graduates"] .universities-map-legend::after,
  .universities-map-card:not(.is-expanded) .universities-map[data-active-map-mode="foreign"] .universities-map-legend::after,
  .universities-map-card:not(.is-expanded) .universities-map[data-active-map-mode="spending"] .universities-map-legend::after,
  .universities-map-card:not(.is-expanded) .universities-map[data-active-map-mode="graduate-spending"] .universities-map-legend::after { content: "Abrí el mapa completo para ver la escala"; color: rgba(255,255,255,.55); font-size: 9px; }
  .universities-map-open { display: flex; align-items: center; justify-content: center; gap: 8px; width: 100%; min-height: 44px; border: 1px solid rgba(142,244,216,.5); border-radius: 9px; color: #d8fff2; background: rgba(29,233,182,.12); font: 850 12px/1.2 Inter, system-ui, sans-serif; cursor: pointer; }
  .universities-map-open:focus-visible { outline: 2px solid #8ef4d8; outline-offset: 2px; }
  .universities-map-card.is-expanded .universities-map-open { display: none; }
  .universities-map-card.is-expanded { inset: 4px; padding: 10px; }
  .universities-map-card.is-expanded .universities-map-hint { display: block; bottom: 50px; max-width: calc(100% - 20px); }
  .universities-map-card.is-expanded .universities-map-expand { min-height: 42px; padding-inline: 9px; font-size: 11px; }
  .universities-map-card.is-expanded .universities-map-legend { top: 64px; bottom: auto; max-width: min(255px, calc(100% - 20px)); padding: 6px 8px; font-size: 10px; pointer-events: auto; }
  .universities-map-card.is-expanded .universities-map-legend strong { font-size: 10px; }
  .universities-map-card.is-expanded .universities-map-legend__details summary { display: flex; align-items: center; min-height: 26px; color: #d8fff2; font-size: 10px; font-weight: 850; cursor: pointer; }
  .universities-map-card.is-expanded .universities-map-legend__details summary:focus-visible { outline: 2px solid #8ef4d8; outline-offset: 2px; }
  .universities-map-card.is-expanded .universities-map-tooltip { right: 8px; bottom: 55px; width: calc(100% - 16px); max-height: min(55%, calc(100% - 215px)); padding: 13px; background: rgba(7,12,10,.98); font-size: 12px; }
  .universities-map-card.is-expanded .universities-map-navigation { z-index: 9; }
  .universities-map-card.is-expanded .universities-map-tooltip__primary b { font-size: 17px; }
  .universities-map-card.is-expanded .universities-map-navigation button { width: 40px; height: 40px; }
  .universities-map-card.is-expanded .universities-map-scope-select { width: 140px; min-height: 40px; font-size: 11px; }
}
@media (max-width: 520px) {
  .universities-map-card.is-expanded #universitiesMapTooltip { z-index: 8; top: clamp(145px, 24%, 165px); bottom: 55px; max-height: none; }
}

/* Shared map experience: compact discovery controls and an institutional dossier. */
.universities-map-toolbar { grid-template-columns: minmax(180px, 270px) minmax(0, 1fr); align-items: end; gap: 12px; }
.universities-map-search { width: 100%; }
.universities-map-search input { min-height: 35px; padding: 7px 11px; border-color: rgba(142,244,216,.16); background: rgba(4,10,8,.72); font-size: 11px; }
.universities-map-filter-group { min-width: 0; }
.universities-map-content { min-height: 670px; }
.universities-map-content .universities-map { min-height: 670px; }
.universities-map-highlights { max-height: 670px; overflow-y: auto; border-color: rgba(142,244,216,.15); background: linear-gradient(160deg, rgba(29,233,182,.065), transparent 42%), #0c1210; }
.universities-map-card.is-expanded .universities-map-highlights { height: 100%; max-height: none; box-sizing: border-box; }
.universities-map-highlights__content { gap: 12px; }
.universities-map-highlights__content .card-kicker { color: #8ef4d8; }
.universities-map-highlights h3 { font-size: 17px; }
.universities-map-selected { display: grid; gap: 11px; padding: 13px; border: 1px solid rgba(216,204,121,.23); border-radius: 10px; background: linear-gradient(140deg, rgba(216,204,121,.08), rgba(255,255,255,.02) 48%); }
.universities-map-selected__identity, .universities-map-tooltip__identity { display: grid; grid-template-columns: 46px minmax(0, 1fr); align-items: start; gap: 10px; min-width: 0; }
.universities-map-selected__identity > div, .universities-map-tooltip__identity > div { display: grid; gap: 2px; min-width: 0; }
.universities-university-mark { display: grid; place-items: center; width: 46px; height: 46px; box-sizing: border-box; overflow: hidden; border: 1px solid rgba(216,204,121,.5); border-radius: 9px; color: #e8db8d; background: radial-gradient(circle at 28% 22%, rgba(216,204,121,.14), rgba(216,204,121,.025)); font: 400 18px/1 "Bebas Neue", system-ui, sans-serif; letter-spacing: .02em; }
.universities-map-selected__identity small { color: rgba(255,255,255,.5); font-size: 9px; font-weight: 850; letter-spacing: .06em; text-transform: uppercase; }
.universities-map-selected__identity strong { color: #fff; font-size: 16px; line-height: 1.1; }
.universities-map-selected__identity span:not(.universities-map-selected__location) { color: #d8cc79; font-size: 11px; line-height: 1.3; }
.universities-map-selected__identity .universities-map-selected__location { color: rgba(255,255,255,.58); font-size: 10px; line-height: 1.3; }
.universities-map-selected__active { display: flex; justify-content: space-between; gap: 8px; margin: 0; padding: 8px 0; border-top: 1px solid rgba(255,255,255,.1); border-bottom: 1px solid rgba(255,255,255,.1); color: rgba(255,255,255,.65); font-size: 10px; }
.universities-map-selected__active b { color: #e8db8d; font-size: 13px; text-align: right; }
.universities-map-selected dl { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px 7px; margin: 0; }
.universities-map-selected dl div { display: grid; align-content: start; gap: 3px; min-width: 0; }
.universities-map-selected dl dt { color: rgba(255,255,255,.54); font-size: 9px; line-height: 1.2; }
.universities-map-selected dl dd { margin: 0; overflow-wrap: anywhere; color: #fff; font-size: 12px; font-weight: 850; font-variant-numeric: tabular-nums; }
.universities-map-selected dl div:last-child { grid-column: 1 / -1; }
.universities-map-selected > a { display: block; width: 100%; box-sizing: border-box; margin: 0; padding: 9px 10px; border: 1px solid rgba(142,244,216,.38); border-radius: 7px; color: #b6ffe9; background: rgba(29,233,182,.1); font-size: 11px; font-weight: 850; text-align: center; text-decoration: none; }
.universities-map-selected > a:hover, .universities-map-selected > a:focus-visible { border-color: #8ef4d8; background: rgba(29,233,182,.17); outline: none; text-decoration: none; }
.universities-map-lead { display: grid; grid-template-columns: minmax(0, 1fr); align-items: start; gap: 3px; padding: 9px 11px; }
.universities-map-lead small { grid-column: 1 / -1; }
.universities-map-lead strong { font-size: 26px; white-space: nowrap; }
.universities-map-lead span { min-width: 0; font-size: 10px; }
.universities-map-highlight { min-height: 32px; }
.universities-map-coverage[hidden] { display: none; }
.universities-map-tooltip__identity { padding-right: 32px; }
.universities-map-tooltip__identity .universities-university-mark { width: 42px; height: 42px; font-size: 16px; }
.universities-map-tooltip__identity { grid-template-columns: 42px minmax(0, 1fr); }
.universities-map-tooltip__identity strong { line-height: 1.1; }
.universities-map-tooltip__identity span:not(.universities-university-mark) { color: #d8cc79; }
@media (max-width: 720px) {
  .universities-map-toolbar, .universities-map-card.is-expanded .universities-map-toolbar { grid-template-columns: minmax(0, 1fr); gap: 7px; }
  .universities-map-content { min-height: 0; }
  .universities-map-content .universities-map { min-height: 0; }
  .universities-map-highlights { max-height: none; }
  .universities-map-card.is-expanded .universities-map-highlights { height: auto; max-height: min(38vh, 300px); }
}

/* One compact header rhythm for title, discovery and map controls. */
.universities-map-card > .universities-card-head,
.universities-map-card.is-expanded > .universities-card-head { align-items: center; margin-bottom: 6px; }
.universities-map-card > .universities-card-head h2 { margin-bottom: 0; }
.universities-map-card > .universities-map-toolbar,
.universities-map-card.is-expanded > .universities-map-toolbar { grid-template-columns: minmax(280px, 340px) minmax(0, 1fr); align-items: center; gap: 10px; margin: 0 0 10px; padding: 0 0 9px; border-bottom: 1px solid rgba(142,244,216,.13); }
.universities-map-card .universities-map-search { width: 100%; }
.universities-map-card .universities-map-search input { min-height: 36px; padding: 7px 11px; font-size: 12px; }
.universities-map-card .universities-map-filter-group { gap: 3px; }
.universities-map-card .universities-map-filter-label { font-size: 8px; }
@media (min-width: 721px) {
  .universities-map-card .universities-map-controls { flex-wrap: nowrap; min-width: 0; overflow-x: auto; overflow-y: hidden; scrollbar-width: thin; scrollbar-color: rgba(142,244,216,.3) transparent; }
  .universities-map-card .universities-map-controls button { flex: 0 0 auto; white-space: nowrap; }
}
.universities-map-card .universities-map-controls button,
.universities-map-card.is-expanded .universities-map-controls button { min-height: 30px; padding: 5px 8px; font-size: 10px; }
.universities-map-card.is-expanded .universities-map-controls button { min-height: 34px; font-size: 11px; }
.universities-map-card .universities-map-expand { min-height: 32px; }
.universities-map-tooltip__handle { display: none; }
.universities-map-tooltip__toggle { display: none; }

@media (max-width: 720px) {
  .universities-map-card > .universities-card-head,
  .universities-map-card.is-expanded > .universities-card-head { flex-direction: row; gap: 8px; }
  .universities-map-card > .universities-map-toolbar,
  .universities-map-card.is-expanded > .universities-map-toolbar { grid-template-columns: minmax(0, 1fr); gap: 6px; }
  .universities-map-card .universities-map-search { max-width: 290px; }
}

@media (max-width: 520px) {
  .universities-map-card:not(.is-expanded) > .universities-map-toolbar { grid-template-columns: minmax(0, 1fr); gap: 5px; }
  .universities-map-card:not(.is-expanded) .universities-map-search { grid-column: 1; grid-row: 1; max-width: none; }
  .universities-map-card:not(.is-expanded) .universities-map-filter-group { grid-column: 1; grid-row: 2; }
  .universities-map-card:not(.is-expanded) .universities-map-open { grid-column: 1; grid-row: 3; width: 100%; min-height: 44px; }
  .universities-map-card .universities-map-filter-label,
  .universities-map-card.is-expanded .universities-map-filter-label { display: block; }
  .universities-map-card .universities-map-controls button,
  .universities-map-card.is-expanded .universities-map-controls button { font-size: 11px; }
  .universities-map-card.is-expanded #universitiesMapTooltip { position: fixed; z-index: 30; top: auto; right: 8px; bottom: var(--sheet-bottom, 58px); left: 8px; display: flex; flex-direction: column; width: calc(100% - 16px); height: var(--sheet-height, 29dvh); min-height: 0; max-height: none; gap: 5px; overflow-y: auto; overscroll-behavior: contain; padding: 8px 12px 9px; border-radius: 14px; background: #07100d; box-shadow: 0 -12px 30px rgba(0,0,0,.52); transition: height .18s ease; }
  .universities-map-card.is-expanded #universitiesMapTooltip[hidden] { display: none; }
  .universities-map-card.is-expanded #universitiesMapTooltip.is-sheet-dragging { transition: none; }
  .universities-map-card.is-expanded .universities-map-tooltip__entry { display: flex; flex: 1 0 auto; flex-direction: column; min-height: 0; gap: 5px; }
  .universities-map-card.is-expanded .universities-map-tooltip__handle { display: grid; place-items: center; width: calc(100% - 48px); height: 18px; margin: -3px auto 0; cursor: ns-resize; touch-action: none; }
  .universities-map-card.is-expanded .universities-map-tooltip__handle span { width: 40px; height: 4px; border-radius: 999px; background: rgba(216,204,121,.8); }
  .universities-map-card.is-expanded .universities-map-tooltip__handle:focus-visible { outline: 2px solid #8ef4d8; outline-offset: 2px; }
  .universities-map-card.is-expanded .universities-map-tooltip[data-sheet-snap="collapsed"] .universities-map-tooltip__pager { display: none; }
  .universities-map-card.is-expanded .universities-map-tooltip__entry { gap: 5px; }
  .universities-map-card.is-expanded .universities-map-tooltip__identity .universities-university-mark { width: 36px; height: 36px; }
  .universities-map-card.is-expanded .universities-map-tooltip__identity { grid-template-columns: 36px minmax(0, 1fr); }
  .universities-map-card.is-expanded .universities-map-tooltip__identity strong { font-size: 13px; }
  .universities-map-card.is-expanded .universities-map-tooltip__identity span { font-size: 10px; }
  .universities-map-card.is-expanded .universities-map-tooltip__primary { gap: 2px; margin: 2px 0; padding: 5px 0; }
  .universities-map-card.is-expanded .universities-map-tooltip__primary b { font-size: 16px; }
  .universities-map-card.is-expanded .universities-map-tooltip dl { gap: 3px; }
  .universities-map-card.is-expanded .universities-map-tooltip[data-sheet-snap="collapsed"] dl div:nth-child(n+3) { display: none; }
  .universities-map-card.is-expanded .universities-map-tooltip__toggle { display: block; width: fit-content; padding: 3px 0; border: 0; color: #8ef4d8; background: transparent; font: 800 10px/1.3 Inter, system-ui, sans-serif; cursor: pointer; }
  .universities-map-card.is-expanded .universities-map-tooltip__toggle:focus-visible { outline: 2px solid #8ef4d8; outline-offset: 2px; }
  .universities-map-tooltip__less,
  .universities-map-tooltip.is-sheet-expanded .universities-map-tooltip__more { display: none; }
  .universities-map-tooltip.is-sheet-expanded .universities-map-tooltip__less { display: inline; }
  .universities-map-card.is-expanded .universities-map-tooltip__cta { position: sticky; bottom: -9px; margin-top: auto; padding: 7px 9px; font-size: 11px; text-align: center; }
  .universities-map-card.is-expanded .universities-map-tooltip[data-sheet-snap="collapsed"] .universities-map-tooltip__cta { display: none; }
  .universities-map-card.is-expanded .universities-map-search { max-width: 100%; }
}

/* Ficha individual: datos primero, procedencia al final. */
.university-detail-shell .university-detail-wide { grid-column: 1 / -1; }
.university-detail-shell .university-detail-note { margin: 13px 0 0; color: rgba(255,255,255,.61); font-size: 11px; line-height: 1.5; }
.university-detail-shell .universities-kpis strong { overflow-wrap: anywhere; }
.university-detail-shell .universities-kpis article:last-child strong { white-space: normal; }
.university-detail-shell .university-finance-card .university-current-finance { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; margin-top: 16px; padding-top: 0; border-top: 0; }
.university-detail-shell .university-finance-card .university-fact-list > div { display: grid; align-content: space-between; min-width: 0; min-height: 76px; gap: 8px; padding: 13px 15px; border: 1px solid rgba(255,255,255,.075); border-radius: 9px; background: rgba(255,255,255,.025); }
.university-detail-shell .university-finance-card .university-fact-list dt { color: rgba(255,255,255,.6); font-size: 11px; font-weight: 750; }
.university-detail-shell .university-finance-card .university-fact-list dd { display: grid; justify-items: start; min-width: 0; gap: 3px; font-size: clamp(17px,2vw,24px); line-height: 1.2; text-align: left; overflow-wrap: anywhere; }
.university-detail-shell .university-finance-card .university-fact-list dd small { color: rgba(255,255,255,.6); font-size: 11px; font-weight: 700; }
.university-detail-shell .university-finance-card .university-fact-list div.university-formation-note { grid-column: 1 / -1; min-height: 0; padding: 0 2px; border: 0; background: none; }
.university-detail-shell .university-period-finance { background: rgba(255,255,255,.018); }
.university-detail-shell .university-period-finance .university-fact-list,
.university-detail-shell .university-sources-card .university-fact-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); column-gap: 22px; }
.university-detail-shell .university-period-finance .university-fact-list div,
.university-detail-shell .university-sources-card .university-fact-list div { min-width: 0; }
.university-detail-shell .university-sources-card .university-fact-list div { display: grid; gap: 5px; }
.university-detail-shell .university-sources-card .university-fact-list dd { text-align: left; font-size: 12px; font-weight: 650; overflow-wrap: anywhere; }
@media (max-width: 720px) {
  .university-detail-shell .university-finance-card .university-current-finance,
  .university-detail-shell .university-period-finance .university-fact-list,
  .university-detail-shell .university-sources-card .university-fact-list { grid-template-columns: 1fr; }
  .university-detail-shell .university-finance-card .university-fact-list > div { min-height: 0; }
  .university-detail-shell .university-finance-card .university-fact-list dd { font-size: 20px; }
  .university-detail-shell .universities-kpis article:last-child strong { font-size: 21px; }
}
