.kw-uni { color: #172b4d; }
.kw-uni *, .kw-uni *::before, .kw-uni *::after { box-sizing: border-box; }
.kw-uni__heading { display:flex; justify-content:space-between; align-items:center; gap:20px; margin-bottom:22px; }
.kw-uni__eyebrow { display:block; color:#2563eb; font-size:11px; letter-spacing:.13em; font-weight:800; margin-bottom:9px; }
.kw-uni__heading h2 { margin:0 0 9px; color:#101d33; font-size:24px; font-weight:800; letter-spacing:-.04em; }
.kw-uni__heading h2 span { font-size:14px; font-weight:500; color:#64748b; padding-left:12px; letter-spacing:-.02em; }
.kw-uni__heading p { margin:0; color:#63738b; font-size:14px; line-height:1.65; }
.kw-uni__total { display:inline-flex; gap:8px; flex-shrink:0; padding:10px 14px; background:#edf4ff; border:1px solid #dbe8ff; border-radius:12px; color:#245cd2; font-size:13px; font-weight:750; }
.kw-uni__filters { padding:22px; background:#f4f7fc; border:1px solid #dfe7f1; border-radius:16px; }
.kw-uni__search-label { display:block; margin-bottom:8px; font-size:13px; font-weight:750; }
.kw-uni__search { display:flex; align-items:center; gap:12px; background:white; border:1px solid #cdd9ea; padding:6px 6px 6px 16px; border-radius:10px; }
.kw-uni__search > i { color:#8495ae; }
.kw-uni__search input { min-width:0; width:100%; border:0; outline:0; background:transparent; font:inherit; font-size:14px; padding:8px 0; color:#172b4d; }
.kw-uni__search:focus-within { border-color:#2563eb; box-shadow:0 0 0 3px #2563eb18; }
.kw-uni__search button { flex-shrink:0; padding:11px 23px; border:0; border-radius:7px; background:#2563eb; color:#fff; font:inherit; font-size:13px; font-weight:750; cursor:pointer; }
.kw-uni__search button:hover { background:#1d4ed8; }
.kw-uni__selects { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:12px; margin-top:18px; }
.kw-uni__selects label { min-width:0; margin:0; }
.kw-uni__selects label > span { display:block; color:#536580; font-size:12px; font-weight:700; margin-bottom:7px; }
.kw-uni__selects select { width:100%; min-height:43px; padding:9px 28px 9px 11px; border:1px solid #d6e0ed; border-radius:8px; background-color:#fff; color:#243956; font:inherit; font-size:13px; text-overflow:ellipsis; }
.kw-uni__filter-footer { display:flex; justify-content:space-between; align-items:center; gap:12px; margin-top:17px; font-size:11px; color:#6b7d94; line-height:1.6; }
.kw-uni__filter-footer > span i { color:#5481c3; margin-right:4px; }
.kw-uni__filter-footer a { flex-shrink:0; font-size:12px; font-weight:650; color:#4a617f; text-decoration:none; }
.kw-uni__filter-footer a i { margin-right:4px; }
.kw-uni__results-head { display:flex; justify-content:space-between; align-items:center; gap:12px; padding:24px 0 14px; }
.kw-uni__results-head p { margin:0; font-size:14px; }
#school-results-status { scroll-margin-top:90px; }
.kw-uni__results-head strong { color:#2563eb; font-size:17px; margin:0 3px 0 6px; }
.kw-uni__results-head span { color:#7b8ba0; font-size:12px; }
.kw-uni__grid { display:grid; grid-template-columns:minmax(0,1fr); gap:10px; align-items:start; }
.kw-uni-card { display:grid; grid-template-columns:112px minmax(0,1fr); align-items:center; column-gap:20px; min-width:0; padding:16px 20px; border:1px solid #dfe7f1; border-radius:14px; background:white; overflow:hidden; }
.kw-uni-card:hover { border-color:#9db9e6; }
.kw-uni-card__body { min-width:0; }
.kw-uni-card__mark { display:flex; align-items:center; justify-content:center; width:112px; height:56px; align-self:start; margin-top:6px; border-radius:10px; background:#f1f5fc; color:#7090be; font-size:22px; }
.kw-uni-card__mark:has(img:not([hidden])) { width:112px; background:#fff; }
.kw-uni-card__mark [hidden] { display:none!important; }
.kw-uni-card__mark img { max-width:108px; max-height:46px; object-fit:contain; }
.kw-uni-card__type { display:flex; align-items:center; flex-wrap:wrap; gap:6px; margin-bottom:3px; color:#3f587d; font-size:12px; font-weight:750; text-align:right; }
.kw-uni-card__type span { color:#8998aa; font-size:11px; font-weight:500; }
.kw-uni-card h3 { margin:0 0 3px; color:#15243c; font-size:17px; line-height:1.5; font-weight:800; overflow-wrap:anywhere; letter-spacing:-.025em; }
.kw-uni-card__subtitle { margin:0 0 4px; color:#687e9c; font-size:12px; }
.kw-uni-card__location { margin:0; color:#5e7593; font-size:12px; line-height:1.6; }
.kw-uni-card__location i { color:#8a9eba; margin-right:4px; }
.kw-uni-card__location span { color:#8a98aa; }
.kw-uni-card__badges { display:flex; flex-wrap:wrap; align-content:start; gap:5px; margin-top:6px; }
.kw-uni-card__badges:empty { display:none; }
.kw-uni-badge { display:inline-flex; align-items:center; gap:4px; padding:4px 7px; border-radius:5px; background:#f1f4f8; color:#6b7b8f; font-size:10px; font-weight:650; }
.kw-uni-badge--excellent { background:#fff5dd; color:#966415; }
.kw-uni-badge--degree { background:#eaf3ff; color:#3065b4; }
.kw-uni-badge--language { background:#eaf7f2; color:#327965; }
.kw-uni-card__intro { margin:5px 0 0; font-size:12px; line-height:1.7; color:#76869b; overflow-wrap:anywhere; }
.kw-uni-card__merger { margin:5px 0 0; color:#7b6d52; font-size:11px; }
.kw-uni-card__actions { display:flex; align-items:center; flex-wrap:wrap; gap:5px; margin:7px 0 0; padding:0; }
.kw-uni-card__actions a { display:inline-flex; align-items:center; justify-content:center; gap:7px; min-height:36px; padding:8px 11px; border-radius:7px; font-size:11px; font-weight:750; text-decoration:none; }
.kw-uni-card__website { background:#edf4ff; color:#2b63c4 !important; }
.kw-uni-card__consult { color:#667c99 !important; }
.kw-uni-card__campuses { padding:0; margin:5px 0 0; list-style:none; color:#687e9c; font-size:12px; line-height:1.6; overflow-wrap:anywhere; }
.kw-uni-card__campuses li + li { margin-top:4px; }
.kw-uni-card__campuses strong { font-weight:650; color:#526984; }
.kw-uni-card__campuses a { color:#2563eb; white-space:nowrap; }

.kw-uni-card__editorial { white-space:pre-line; margin:5px 0 0; font-size:12px; line-height:1.6; color:#687e9c; overflow-wrap:anywhere; }
.kw-uni-card__gallery { display:flex; flex-wrap:wrap; gap:8px; margin-top:8px; }
.kw-uni-card__gallery img { width:100px; height:64px; object-fit:cover; border-radius:7px; }
.kw-uni__pagination { display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:6px; padding:28px 0; }
.kw-uni__pagination a { display:flex; align-items:center; justify-content:center; width:36px; height:36px; border:1px solid #dfe7f1; border-radius:8px; background:white; color:#60728c; font-size:13px; text-decoration:none; }
.kw-uni__pagination a[aria-current] { background:#2563eb; color:#fff; border-color:#2563eb; font-weight:750; }
.kw-uni__pagination > span { color:#8a98aa; font-size:12px; padding-left:7px; }
.kw-uni__sources { margin-top:8px; padding:16px 18px; border-radius:10px; background:#f4f7fb; color:#73839a; font-size:11px; line-height:1.8; }
.kw-uni__sources summary { cursor:pointer; font-size:12px; font-weight:650; }
.kw-uni__sources summary span { float:right; color:#8998aa; font-weight:400; }
.kw-uni__sources > div { padding-top:10px; }
.kw-uni__sources a { color:#4771ae; }
.kw-uni__sources ul { margin-bottom:0; padding-left:20px; }
.kw-uni__empty { text-align:center; padding:54px 18px; background:#fff; border:1px dashed #d3dfef; border-radius:14px; }
.kw-uni__empty > i { color:#9eb3cf; font-size:28px; }
.kw-uni__empty h3 { margin:16px 0 9px; font-size:18px; }
.kw-uni__empty p { color:#76869b; font-size:13px; }
.kw-uni__empty a { display:inline-block; padding:10px 18px; background:#2563eb; border-radius:8px; color:white; text-decoration:none; font-size:13px; }
.kw-uni [hidden] { display:none !important; }
.kw-uni__request-error { padding:12px; background:#fff4e3; color:#855923; border-radius:8px; font-size:13px; }
.kw-uni[aria-busy="true"] .kw-uni__grid { opacity:.5; }
.kw-uni a:focus-visible, .kw-uni button:focus-visible, .kw-uni select:focus-visible, .kw-uni summary:focus-visible { outline:3px solid #93b8fa; outline-offset:3px; }
@media(max-width:1050px) { .kw-uni__selects { grid-template-columns:repeat(3,minmax(0,1fr)); } .kw-uni-card { grid-template-columns:90px minmax(0,1fr); column-gap:14px; } .kw-uni-card__mark, .kw-uni-card__mark:has(img:not([hidden])) { width:90px; } .kw-uni-card__mark img { max-width:86px; } }
@media(max-width:600px) {
  .kw-uni__heading { display:block; } .kw-uni__heading h2 { font-size:22px; } .kw-uni__heading h2 span { font-size:12px; } .kw-uni__heading p { font-size:13px; }
  .kw-uni__total { margin-top:12px; padding:7px 11px; font-size:12px; } .kw-uni__filters { padding:16px; } .kw-uni__search { gap:8px; padding-left:10px; }
  .kw-uni__search input { font-size:16px; } .kw-uni__search button { padding:11px 12px; font-size:12px; } .kw-uni__selects { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px 9px; }
  .kw-uni__selects select { font-size:16px; } .kw-uni__selects label:last-child { grid-column:1/-1; } .kw-uni__filter-footer { align-items:flex-start; } .kw-uni__filter-footer > span { max-width:70%; }
  .kw-uni__grid { grid-template-columns:minmax(0,1fr); } .kw-uni__sources summary span { display:block; float:none; padding-left:14px; }
}

@media(max-width:600px) {
  .kw-uni__results-head { flex-wrap:wrap; gap:4px; padding-top:18px; }
  .kw-uni__grid { gap:8px; }
  .kw-uni-card { grid-template-columns:64px minmax(0,1fr); column-gap:12px; padding:12px; border-radius:10px; }
  .kw-uni-card__mark, .kw-uni-card__mark:has(img:not([hidden])) { width:64px; height:48px; margin-top:4px; }
  .kw-uni-card__mark img { max-width:62px; max-height:44px; }
  .kw-uni-card h3 { font-size:15px; }
  .kw-uni-card__type { font-size:10px; margin-bottom:2px; }
  .kw-uni-card__type span { font-size:10px; }
  .kw-uni-card__location, .kw-uni-card__campuses { font-size:11px; }
  .kw-uni-card__badges { gap:4px; margin-top:5px; }
  .kw-uni-badge { padding:3px 5px; font-size:9px; }
  .kw-uni-card__actions { gap:3px; }
  .kw-uni-card__actions a { min-height:32px; padding:6px; font-size:10px; gap:4px; }
}
