:root{color-scheme:light;--ink:#14263c;--muted:#5f6d7b;--line:#dfe4e9;--paper:#fff;--wash:#f4f6f8;--teal:#147f85;--navy:#101f33;--aqua:#72d2d5;--amber:#f4bb70;--purple:#b8a2e8;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-synthesis:none}
*{box-sizing:border-box}body{margin:0;background:var(--wash);color:var(--ink);font-size:16px;line-height:1.5}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #168b94;outline-offset:3px}a{color:var(--teal)}button{color:inherit}button:disabled{cursor:default;opacity:.45}.skip-link{position:absolute;left:16px;top:-100px;background:white;padding:12px;z-index:20}.skip-link:focus{top:12px}.masthead{height:78px;padding:0 3%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:var(--paper);gap:20px}.brand{display:flex;align-items:center;gap:12px;font-size:24px;letter-spacing:-.8px;text-decoration:none;color:var(--ink);white-space:nowrap}.brand strong{font-weight:700}.brand-mark{display:flex;align-items:flex-end;gap:4px;width:32px;height:29px}.brand-mark i{display:block;width:7px;height:18px;border-radius:2px;background:var(--teal)}.brand-mark i:nth-child(2){height:29px}.brand-mark i:nth-child(3){height:23px}.masthead-caption{font-size:12px;letter-spacing:2px;color:var(--muted)}.text-button{border:0;padding:5px 0;background:transparent;font-size:14px;color:var(--teal);font-weight:600}.text-button:hover{text-decoration:underline}.text-button span{margin-left:8px}main{max-width:1800px;margin:auto;padding:0 2.5%}.intro{display:flex;align-items:center;justify-content:space-between;padding:27px 0 25px;gap:24px}.eyebrow,.section-kicker{font-size:12px;letter-spacing:1.7px;font-weight:700;color:var(--teal);margin:0 0 7px}.intro h1{font-size:clamp(25px,2.2vw,36px);letter-spacing:-1.2px;line-height:1.2;margin:0 0 9px;font-weight:650}.intro p:not(.eyebrow){margin:0;font-size:15px;color:var(--muted)}.snapshot{display:grid;min-width:210px;text-align:right}.snapshot strong{font-size:29px;line-height:1.2;font-weight:650;letter-spacing:-1px}.snapshot span{font-size:13px}.snapshot small{font-size:12px;color:var(--muted);margin-top:5px}.workspace{display:grid;grid-template-columns:245px minmax(350px,1fr) 320px;min-height:720px;height:calc(100vh - 285px);max-height:1100px;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--paper);box-shadow:0 12px 40px #14263c08}.explore-panel{padding:20px 17px;display:flex;min-height:0;flex-direction:column;border-right:1px solid var(--line)}.panel-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:10px}h2,h3{margin:0}.panel-heading h2{font-size:17px;letter-spacing:-.3px}.field-label,.filters label{display:block;font-size:14px;font-weight:600;margin-bottom:7px}.search-wrap{position:relative;margin-bottom:18px}.search-wrap span{position:absolute;left:11px;top:5px;font-size:22px;color:var(--muted)}input,select{width:100%;height:42px;border:1px solid #cad2dc;border-radius:6px;background:white;color:var(--ink);font-size:14px;min-width:0}input{padding:0 10px 0 32px}input::placeholder{color:#78818b;font-size:13px}select{padding:0 8px}.filters{display:grid;gap:10px}.filters select{display:block;margin-top:5px}.results-heading{display:flex;justify-content:space-between;align-items:center;margin-top:19px;border-bottom:1px solid var(--line);padding-bottom:10px;font-size:12px;color:var(--muted);gap:6px}.results-heading p{margin:0;font-size:13px;color:var(--ink);font-weight:600}.college-list{overflow-y:auto;min-height:100px;flex:1;scrollbar-width:thin;padding-right:3px}.college-row{background:transparent;border:0;border-bottom:1px solid #edf0f3;display:block;width:100%;text-align:left;padding:12px 8px 12px 10px;border-left:3px solid transparent;line-height:1.35}.college-row:hover{background:#f1f6f6}.college-row[aria-pressed=true]{background:#e8f4f3;border-left-color:var(--teal)}.college-row strong{font-size:14px;font-weight:600;display:block}.college-row small{font-size:12px;color:var(--muted);display:block;margin-top:5px}.load-more{background:white;border:1px solid var(--line);border-radius:5px;padding:9px;font-size:13px;margin-top:12px}.empty-message{font-size:14px;color:var(--muted);padding:18px 8px}.map-panel{position:relative;overflow:hidden;color:#f1f6fa;background:radial-gradient(ellipse at 50% 43%,#20394f 0%,#101f33 68%);min-width:0;min-height:500px}.map-top{position:absolute;z-index:2;top:24px;left:25px;right:25px;display:flex;gap:10px;align-items:flex-start;justify-content:space-between;pointer-events:none}.map-kicker{font-size:12px;letter-spacing:2px;color:#9ab2c6}.map-top h2{font-size:17px;letter-spacing:-.3px;font-weight:500;margin-top:7px;max-width:290px}.map-counter{font-size:12px;color:#c4d3df;background:#22394c;border:1px solid #40546a;border-radius:20px;padding:5px 10px;white-space:nowrap}.view-controls{position:absolute;z-index:3;top:106px;left:25px;display:flex;gap:10px}.segmented{display:flex;border:1px solid #465a70;border-radius:6px;padding:3px;background:#14263c}.segmented button,.map-button{border:0;background:transparent;color:#bdcddb;padding:6px 10px;border-radius:3px;font-size:12px;min-height:32px}.segmented button[aria-pressed=true]{background:#edf5f8;color:#172d42}.map-button{border:1px solid #465a70;border-radius:6px;background:#14263c}.scene{position:absolute;inset:158px 0 126px;touch-action:none;cursor:grab}.scene:active{cursor:grabbing}.scene canvas{display:block;width:100%;height:100%}.map-navigation{position:absolute;right:18px;bottom:138px;display:flex;flex-direction:column;gap:5px}.map-navigation button{width:34px;height:34px;border-radius:6px;background:#1b3147;color:#dce8ef;border:1px solid #43596d;font-size:21px}.map-legend{position:absolute;bottom:50px;left:25px;right:20px;font-size:12px;color:#bbccdb}.legend-controls{display:flex;flex-wrap:wrap;gap:8px 12px}.legend-controls span{display:flex;align-items:center;gap:6px}.swatch{display:inline-block;width:7px;height:7px;border-radius:50%}.public{background:var(--aqua)}.nonprofit{background:var(--amber)}.profit{background:var(--purple)}.height-key{display:flex;align-items:center;gap:9px;margin-top:14px}.mini-bars{height:19px;display:flex;gap:3px;align-items:flex-end}.mini-bars i{background:#9aaebe;width:3px;height:5px}.mini-bars i:nth-child(2){height:8px}.mini-bars i:nth-child(3){height:11px}.mini-bars i:nth-child(4){height:15px}.mini-bars i:nth-child(5){height:19px}.map-bottom{position:absolute;bottom:16px;left:25px;right:20px;display:flex;gap:10px;justify-content:space-between;font-size:12px;color:#9db1c3;flex-wrap:wrap}.map-tooltip{position:absolute;z-index:8;max-width:250px;pointer-events:none;padding:10px 12px;background:#f7fbff;color:#14263c;border-radius:6px;box-shadow:0 7px 20px #0003;font-size:13px;line-height:1.4}.map-tooltip small{display:block;color:#5f6d7b;margin-top:4px}.map-fallback{position:absolute;inset:190px 40px auto;padding:25px;border:1px solid #506b80;background:#172d42;border-radius:8px}.map-fallback p{color:#c4d3df;font-size:14px}.detail-panel{padding:24px 21px;overflow-y:auto;scrollbar-width:thin;border-left:1px solid var(--line)}.selected-label{display:flex;align-items:center;gap:7px;color:var(--teal);font-size:12px;letter-spacing:1.5px;font-weight:700;margin-bottom:14px}.selected-label:before{content:"";width:6px;height:6px;background:var(--teal);border-radius:50%}.college-name{font-size:23px;line-height:1.2;letter-spacing:-.65px;margin-bottom:10px;font-weight:650;overflow-wrap:anywhere}.location{font-size:14px;color:var(--muted);margin:0 0 14px}.control-tag{font-size:12px;font-weight:600;background:#eef1f4;border-radius:4px;padding:4px 7px;display:inline-block}.fact-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px 10px;margin:20px 0}.fact-grid dt{font-size:12px;color:var(--muted);margin-bottom:3px}.fact-grid dd{margin:0;font-size:14px;font-weight:600;line-height:1.4}.area-heading{font-size:12px;font-weight:650;margin:19px 0 9px}.area-tags{display:flex;flex-wrap:wrap;gap:6px}.area-tag{font-size:12px;padding:4px 7px;border-radius:4px;border:1px solid #dfe7e8;line-height:1.35;color:#49616a;background:#f5f8f8}.muted-note{font-size:12px;line-height:1.5;color:var(--muted);margin:8px 0 12px}.official-link{display:inline-block;margin-top:2px;font-size:13px;text-underline-offset:3px}.connections{border-top:1px solid var(--line);margin-top:24px;padding-top:21px}.connections h3{font-size:17px;letter-spacing:-.3px;margin-bottom:13px}.section-kicker{font-size:12px;color:var(--muted);letter-spacing:1.2px}.relation-tabs{display:flex;border-bottom:1px solid var(--line);gap:16px}.relation-tabs button{font-size:14px;padding:7px 0;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--muted)}.relation-tabs button[aria-pressed=true]{color:var(--teal);border-color:var(--teal);font-weight:600}.relation-description{font-size:12px;color:var(--muted);line-height:1.5;margin:12px 0}.connection{display:block;width:100%;text-align:left;padding:11px 0;border:0;border-bottom:1px solid #edf0f3;background:transparent}.connection:hover strong{text-decoration:underline;color:var(--teal)}.connection strong{font-weight:600;font-size:14px;line-height:1.35;display:block}.connection small{color:var(--muted);font-size:12px;display:block;margin-top:4px}.connection .shared{color:#39737b;font-size:12px;line-height:1.4;margin-top:5px;display:block}dialog{border:0;border-radius:14px;padding:30px;max-width:680px;width:calc(100% - 32px);max-height:85vh;color:var(--ink);box-shadow:0 30px 80px #0004}dialog::backdrop{background:#0b172b99;backdrop-filter:blur(4px)}.dialog-head{display:flex;justify-content:space-between;align-items:center}.dialog-head button{border:0;background:#eef2f5;border-radius:50%;width:36px;height:36px;font-size:24px}.dialog-head .eyebrow{margin:0}dialog h2{font-size:27px;letter-spacing:-.7px;line-height:1.2;margin:14px 0 20px}dialog h3{font-size:17px;margin-top:24px}dialog p,dialog li{font-size:14px;line-height:1.65}dialog li{margin:7px 0}.source-note{font-size:12px!important;color:var(--muted)}.noscript{position:fixed;inset:0;background:white;padding:50px;z-index:30}[hidden]{display:none!important}
@media(min-width:1600px){.workspace{grid-template-columns:270px minmax(400px,1fr) 345px}.scene{inset:150px 10px 120px}}
@media(max-width:1200px){main{padding:0 18px}.workspace{grid-template-columns:215px minmax(320px,1fr) 270px}.explore-panel{padding:18px 12px}.detail-panel{padding:22px 17px}.map-top{left:20px;right:20px;display:block}.map-counter{display:none}.map-top h2{font-size:16px}.view-controls{left:20px}.college-name{font-size:21px}.intro h1{font-size:28px}.map-bottom{font-size:12px}.map-legend{left:20px;font-size:12px}}
@media(max-width:1000px){.workspace{grid-template-columns:230px minmax(0,1fr);height:auto;max-height:none}.explore-panel{grid-column:1;grid-row:1;height:700px}.map-panel{grid-column:2;grid-row:1;min-height:700px}.detail-panel{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:28px;border-left:0;border-top:1px solid var(--line);overflow:visible}.connections{margin:0;padding:0 0 0 28px;border-top:0;border-left:1px solid var(--line)}.masthead-caption{display:none}.scene{inset:160px 0 125px}.snapshot{min-width:185px}.intro h1{font-size:27px}.map-counter{display:inline-block;position:absolute;right:0;top:0}.map-top h2{max-width:240px}}
@media(max-width:650px){.masthead{height:65px;padding:0 18px}.brand{font-size:22px}.masthead .text-button{font-size:12px}.intro{padding:23px 0 20px}.intro h1{font-size:28px;max-width:350px}.intro p:not(.eyebrow){font-size:14px;max-width:290px}.snapshot{display:none}main{padding:0 12px}.workspace{display:flex;flex-direction:column;border-radius:10px}.map-panel{order:0;min-height:520px}.explore-panel{order:1;height:auto;max-height:none;border-right:0;padding:20px}.detail-panel{order:2;display:block;padding:24px 20px}.explore-panel .college-list{max-height:280px}.filters{grid-template-columns:1fr 1fr;gap:10px}.filters label:last-child{grid-column:1/-1}.panel-heading{margin-bottom:15px}.college-list{min-height:100px}.scene{inset:155px 0 152px}.map-top{left:20px;top:20px}.map-top h2{max-width:260px;font-size:16px}.map-counter{display:none}.map-legend{bottom:76px;left:20px;font-size:12px}.map-bottom{left:20px;bottom:12px;font-size:12px;gap:4px;flex-direction:column}.map-navigation{right:12px;bottom:164px}.map-navigation button{width:38px;height:38px}.view-controls{top:100px}.view-controls button{font-size:12px}.connections{border-left:0;border-top:1px solid var(--line);margin-top:24px;padding:22px 0 0}.college-name{font-size:25px}.fact-grid{grid-template-columns:1fr 1fr}.area-tag{font-size:12px}.connection strong{font-size:14px}.connection small,.connection .shared,.relation-description{font-size:12px}.relation-tabs button{font-size:14px;padding:10px 0}dialog{padding:24px}input,select{font-size:16px}button{min-height:38px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

.header-actions{display:flex;align-items:center;gap:24px}.empty-selection h2{font-size:25px;line-height:1.25;letter-spacing:-.6px}.empty-selection>p:not(.eyebrow){font-size:14px;color:var(--muted);line-height:1.65}.empty-selection .text-button{margin-top:6px}.primary-button{background:var(--teal);color:white;border:1px solid var(--teal);border-radius:7px;padding:10px 16px;font-weight:600;font-size:14px}.primary-button:hover{background:#10676c}#welcome-dialog{max-width:440px}#welcome-dialog .eyebrow{font-size:10px;letter-spacing:1.2px}#welcome-dialog h2{font-size:25px;margin:12px 0}.welcome-actions{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:24px}.welcome-actions button{min-height:44px}
.feature-tour{position:fixed;z-index:15;width:288px;max-width:calc(100vw - 24px);padding:14px 16px 12px;background:white;border:1px solid #bad9d9;border-radius:10px;box-shadow:0 6px 24px #14263c26;color:var(--ink);overflow:auto}.tour-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:-5px -6px 2px 0}.tour-heading>span{font-size:10px;letter-spacing:1.4px;color:var(--teal);font-weight:700}.tour-heading button{border:0;background:transparent;color:var(--muted);font-size:22px;width:32px;height:32px;min-height:32px;border-radius:5px}.tour-heading button:hover{background:var(--wash)}.feature-tour h2{font-size:16px;line-height:1.3;letter-spacing:-.25px;margin:0 0 8px}.feature-tour p{font-size:13px;line-height:1.5;margin:0 0 12px;color:#4c5b6b}.tour-actions,.tour-actions>div{display:flex;align-items:center;gap:12px}.tour-actions{justify-content:space-between}.tour-actions button{font-size:12px;min-height:36px;white-space:nowrap}.tour-actions .primary-button{padding:6px 12px}.tour-target{outline:3px solid #21a3aa!important;outline-offset:4px}
@media(max-width:650px){.masthead{height:auto;min-height:72px;gap:12px;padding:10px 14px}.header-actions{flex-direction:column;align-items:flex-end;gap:0}.header-actions .text-button{min-height:30px;padding:3px 0;white-space:nowrap}.header-actions .text-button span{display:none}.brand{gap:8px;font-size:21px}.primary-button{padding:10px 12px}}

/* Flat map controls and acceptance-rate values. */
.acceptance-rate{color:#336c72!important}.acceptance-fact{grid-column:1/-1}.pan-controls{display:grid;grid-template-columns:34px 34px 34px;gap:3px}.pan-controls #pan-up{grid-column:2}.pan-controls #pan-left{grid-column:1;grid-row:2}.pan-controls #pan-right{grid-column:3;grid-row:2}.pan-controls #pan-down{grid-column:2;grid-row:3}.map-navigation{align-items:center;bottom:90px;right:12px}.scene{inset:154px 0 90px}.scene canvas:focus-visible{outline-offset:-4px}.map-legend{bottom:52px}.scene:active canvas{cursor:grabbing!important}
@media(max-width:650px){.scene{inset:154px 0 130px}.map-navigation{bottom:140px;right:10px}.pan-controls{grid-template-columns:30px 30px 30px}.map-navigation .pan-controls button{width:30px;height:32px;min-height:32px;font-size:18px}.filters label:nth-child(3),.filters label:nth-child(4){grid-column:1/-1}.map-legend{bottom:76px}}
@media(max-width:650px){.map-navigation .pan-controls{display:none}.map-navigation>button{width:44px;height:44px;min-height:44px}.map-navigation{bottom:138px}}

/* Crawlable product context and a JavaScript-independent methodology page. */
.methodology-page a{text-underline-offset:3px}.methodology-page{max-width:860px;padding:48px 24px 24px}.methodology-page h1{font-size:clamp(30px,4vw,44px);line-height:1.15;letter-spacing:-1px;margin:0 0 20px}.methodology-intro{font-size:19px;line-height:1.7}.methodology-nav{display:flex;flex-wrap:wrap;gap:12px 22px;padding:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.methodology-page section{padding-top:30px;scroll-margin-top:20px}.methodology-page h2{font-size:25px;line-height:1.3;margin-bottom:16px}.methodology-page h3{font-size:19px;margin-top:24px}.methodology-page p,.methodology-page li{line-height:1.75}.methodology-page li{margin-bottom:10px}.methodology-page a{overflow-wrap:anywhere}.methodology-return{margin-top:36px}.noscript{position:static;inset:auto;background:#fff;padding:20px;margin:20px;border:1px solid var(--line);border-radius:8px;z-index:auto}
@media(max-width:650px){.methodology-page{padding:32px 20px 20px}.methodology-page h2{font-size:23px}.methodology-intro{font-size:17px}}

/* Shared QuaereU footer. Keep brand tokens scoped to this surface. */
.site-footer{width:95%;max-width:1710px;margin:28px auto 0;padding:32px 32px 0;background:var(--qu-surface-muted);color:var(--qu-text-primary);border-top:2px solid var(--qu-teal);border-radius:12px 12px 0 0;font-family:var(--qu-font-ui)}
.footer-content{display:grid;grid-template-columns:240px minmax(0,1fr) 240px;gap:40px;padding-bottom:28px;align-items:start}
.footer-content>div,.footer-nav{min-width:0}
.footer-brand{padding-top:2px}
.footer-eyebrow{margin:0 0 8px;font-size:12px;font-weight:600;letter-spacing:1.2px;text-transform:uppercase;color:var(--qu-text-secondary)}
.quaereu-logo{display:block;width:216px;max-width:100%;height:auto;margin:12px 0}
.footer-tagline{margin:12px 0 0;font-size:14px;color:var(--qu-text-secondary)}
.footer-about h2{font-family:var(--qu-font-display);font-size:26px;line-height:1.25;font-weight:400;margin:0 0 12px;letter-spacing:-.4px}
.footer-about p{font-size:16px;line-height:1.65;margin:0;max-width:66ch}
.footer-about .footer-data-note{font-size:14px;color:var(--qu-text-secondary);margin-top:12px}
.footer-nav h2{font-size:14px;font-weight:600;margin:3px 0 8px;line-height:1.5}
.footer-nav a,.footer-nav button{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:44px;padding:10px 0;border:0;background:transparent;color:var(--qu-link);font:inherit;font-size:14px;line-height:1.5;text-align:left;text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}
.footer-nav button{cursor:pointer}
body:not([data-ready="true"]) .footer-nav button{display:none}
.footer-nav a:hover,.footer-nav button:hover{color:var(--qu-text-primary);text-decoration-thickness:2px}
.footer-nav a:focus-visible,.footer-nav button:focus-visible{outline:3px solid var(--qu-focus);outline-offset:4px;border-radius:2px}
.footer-nav a span,.footer-nav button span{flex:none;font-size:18px;text-decoration:none}
.footer-nav .methodology-return{margin:0}
.footer-meta{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px 24px;border-top:1px solid var(--qu-border-subtle);padding:16px 0;font-size:12px;color:var(--qu-text-secondary)}
.footer-meta .version{margin-left:5px}
@media(max-width:1100px){.footer-content{grid-template-columns:220px minmax(0,1fr);gap:28px}.footer-nav{grid-column:2}.footer-brand{grid-row:1 / span 2}.footer-about p{max-width:none}}
@media(max-width:650px){.site-footer{width:calc(100% - 24px);margin-top:20px;padding:24px 20px 0}.footer-content{grid-template-columns:minmax(0,1fr);gap:24px;padding-bottom:20px}.footer-brand{grid-row:auto}.footer-nav{grid-column:auto;border-top:1px solid var(--qu-border-subtle);padding-top:18px}.footer-about h2{font-size:24px}.footer-nav a,.footer-nav button{font-size:16px;min-height:48px}.footer-meta{flex-direction:column;gap:6px;padding:16px 0}}
