@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#14234e;--muted:#5c6782;--primary:#5555e9;--line:#e3e7f4;--pale:#f5f7fe;--blue:#e6f4ff;--lilac:#eeebff;--radius:20px;--shadow:0 12px 35px #27366c0a}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;color:var(--ink);background:#fff;font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.65}h1,h2,h3,h4,.brand{font-family:Manrope,Arial,sans-serif;line-height:1.2;letter-spacing:-.035em}h1{font-size:clamp(2.5rem,5.3vw,4.4rem);font-weight:800;margin:18px 0 24px}h2{font-size:clamp(1.8rem,3vw,2.45rem);margin:0 0 18px}h3{font-size:1.22rem;margin:12px 0}p{margin:0 0 18px}a{color:var(--primary);text-underline-offset:4px}button,input,select,textarea{font:inherit}a,button{touch-action:manipulation}button{cursor:pointer}img{display:block;max-width:100%;height:auto}svg{vertical-align:middle}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #7755ff;outline-offset:4px}.wrap{width:min(1180px,calc(100% - 64px));margin:auto}.skip{position:absolute;top:-80px;left:10px;z-index:100;background:white;padding:12px}.skip:focus{top:10px}.site-header{background:#ffffffed;backdrop-filter:blur(16px);border-bottom:1px solid #e9edf6;position:sticky;top:0;z-index:20}.navrow{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{text-decoration:none;color:var(--ink);display:inline-flex;align-items:center;gap:10px;font-size:1.47rem;font-weight:800;white-space:nowrap}.brand img{width:37px;height:37px}.brand small{display:block;font-family:'DM Sans',Arial,sans-serif;font-size:.69rem;font-weight:500;letter-spacing:0;margin-top:4px;color:var(--muted)}.navlinks{display:flex;align-items:center;gap:26px}.navlinks a{color:#35415e;text-decoration:none;font-size:.9rem;font-weight:600;white-space:nowrap}.navlinks a:hover,.navlinks a[aria-current=page]{color:var(--primary)}.navlinks a[aria-current=page]{text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:8px}.navlinks .navcta{background:#f0efff;border:1px solid #e0ddff;color:#4b48c8;padding:10px 16px;border-radius:10px}.menu{display:none;background:#f4f5fd;border:1px solid var(--line);border-radius:9px;padding:9px 13px;color:var(--ink)}.eyebrow{text-transform:uppercase;font-size:.75rem;letter-spacing:.13em;font-weight:700;color:#5659a6}.pill{display:inline-flex;gap:8px;align-items:center;border-radius:100px;padding:7px 13px;background:#ffffffb5;border:1px solid #ffffffdc;font-size:.8rem;font-weight:600;color:#4c5285}.hero{background:radial-gradient(ellipse at 7% 5%,#d8f2ff 0,transparent 58%),linear-gradient(115deg,#edf7ff,#eae6ff);overflow:hidden;position:relative}.hero-grid{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;gap:36px;padding:62px 0 72px}.hero h1 span{color:#5756d9}.hero p{max-width:490px;font-size:1.1rem;color:#53617d}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 22px;border-radius:11px;font-weight:700;font-size:.91rem;text-decoration:none;border:1px solid transparent;background:var(--primary);color:white;box-shadow:0 6px 16px #5250e51a;transition:transform .15s,background .15s}.btn:hover{background:#4343cc;transform:translateY(-2px)}.btn.secondary{color:#4849c8;border-color:#adacec;background:#ffffff6e;box-shadow:none}.btn.secondary:hover{background:white}.hero-note{display:flex;gap:18px;flex-wrap:wrap;color:#596984;font-size:.8rem;margin-top:25px}.hero-note span:before{content:'✓';color:#5354d3;margin-right:6px}.hero-visual{position:relative;padding:14px 0 10px}.hero-frame{overflow:hidden;border:7px solid #ffffffb3;border-radius:95px 22px 75px 22px;box-shadow:0 25px 55px #4a4a8b24;transform:rotate(1deg)}.hero-frame img{width:100%;height:390px;object-fit:cover}.visual-caption{position:absolute;bottom:-5px;left:-12px;background:white;border-radius:14px;padding:15px 19px;box-shadow:0 12px 38px #26377120;display:flex;align-items:center;gap:12px;font-size:.88rem}.visual-caption strong{display:block;font-size:.96rem}.visual-caption small{color:var(--muted)}.caption-icon{background:#efedff;color:#5d53d5;border-radius:11px;padding:11px;font-size:1.3rem}.section{padding:66px 0}.section.soft{background:#f7f9fe}.section-head{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:25px}.section-head h2{margin-bottom:7px}.section-head p{margin:0;color:var(--muted)}.text-link{font-size:.9rem;font-weight:700;white-space:nowrap}.country-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:17px}.country-card{border:1px solid var(--line);border-radius:15px;overflow:hidden;text-decoration:none;color:var(--ink);background:white;box-shadow:var(--shadow);transition:transform .2s,border-color .2s}.country-card:hover{transform:translateY(-5px);border-color:#aaa8f2}.country-img{background:linear-gradient(120deg,#d5effb,#e4ddff);height:155px;overflow:hidden}.country-img img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.country-card:hover img{transform:scale(1.05)}.country-info{padding:17px}.country-info h3{margin:0 0 5px;font-size:1rem}.country-info p{font-size:.77rem;color:var(--muted);margin:0}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card{border:1px solid var(--line);border-radius:var(--radius);padding:25px;background:white;box-shadow:var(--shadow);display:flex;flex-direction:column}.card h3 a{color:var(--ink);text-decoration:none}.card h3 a:hover{color:var(--primary)}.card p{color:var(--muted);font-size:.94rem}.card .bottom{margin-top:auto;padding-top:19px;border-top:1px solid #edf0f8;display:flex;align-items:center;justify-content:space-between;gap:12px}.card .bottom a{font-weight:700;font-size:.88rem}.card .bottom small{color:var(--muted);font-size:.78rem}.badge{display:inline-block;align-self:flex-start;border-radius:6px;padding:4px 8px;font-size:.72rem;background:#eeedff;color:#5551b7;font-weight:700;letter-spacing:.01em}.badge.open{background:#e7f6ee;color:#246348}.badge.closed{background:#f1f2f6;color:#5c6378}.badge.upcoming{background:#e9f3ff;color:#2f638c}.meta{font-size:.79rem;color:var(--muted);margin:13px 0 6px}.tags{display:flex;flex-wrap:wrap;gap:8px;margin:6px 0 18px}.tag{font-size:.75rem;background:#f6f7fb;border:1px solid #eceef6;padding:3px 8px;border-radius:6px;color:#606987}.stepno{font-family:Manrope,Arial,sans-serif;font-size:2rem;font-weight:800;color:#aaa9ed;margin-bottom:20px}.callout{background:linear-gradient(110deg,#e6f4ff,#eeebff);border:1px solid #e0e4fa;border-radius:24px;padding:37px 42px;display:flex;justify-content:space-between;align-items:center;gap:30px}.callout h2{font-size:1.85rem;margin-bottom:10px}.callout p{max-width:650px;color:var(--muted);margin:0}.footer{border-top:1px solid var(--line);padding:46px 0 22px;background:#fafbff}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:35px}.footer p{font-size:.87rem;color:var(--muted);max-width:330px;margin-top:15px}.footer h3{font-size:.9rem;margin-top:0;margin-bottom:16px}.footer a:not(.brand){display:block;font-size:.84rem;text-decoration:none;color:var(--muted);margin-bottom:9px}.footer a:hover{color:var(--primary)}.footer-bottom{border-top:1px solid var(--line);padding-top:20px;margin-top:28px;display:flex;gap:20px;justify-content:space-between;font-size:.75rem;color:var(--muted)}.page-top{background:linear-gradient(110deg,#edf8ff,#eeebff);padding:35px 0 43px}.crumb{font-size:.8rem;color:var(--muted);margin-bottom:24px}.crumb a{color:#606b85;text-decoration:none}.page-top h1{font-size:clamp(2.2rem,4.3vw,3.5rem);margin:12px 0 15px;max-width:930px}.page-top p{max-width:750px;color:var(--muted);margin:0}.page-top .meta{margin-top:20px}.country-hero{display:grid;grid-template-columns:1.3fr .8fr;gap:50px;align-items:center}.country-hero img{width:100%;height:255px;object-fit:cover;border:5px solid white;border-radius:22px}.filters{display:grid;grid-template-columns:1.5fr repeat(4,1fr);gap:14px;padding:23px;border:1px solid var(--line);background:white;border-radius:16px;margin-bottom:24px}.filters label,form label{display:block;font-size:.81rem;font-weight:700;color:#4b5775;margin-bottom:6px}input,select,textarea{width:100%;background:#fff;border:1px solid #d9deec;border-radius:8px;min-height:45px;padding:9px 11px;color:var(--ink)}select{padding-right:25px}textarea{min-height:140px;resize:vertical}.filter-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;font-size:.85rem;color:var(--muted)}.link-button{padding:4px 0;border:0;background:none;color:var(--primary);text-decoration:underline;text-underline-offset:4px;font-size:.86rem}.notice{border-left:3px solid #a7a3f1;background:#f5f5fe;padding:17px 21px;font-size:.88rem;color:#535e7a;border-radius:0 10px 10px 0;margin:22px 0}.empty{grid-column:1/-1;padding:50px 25px;background:#f7f8fc;border:1px dashed #cad0e7;border-radius:16px;text-align:center}.empty p{color:var(--muted)}[hidden]{display:none!important}.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:62px;align-items:start}.article{max-width:770px}.article section{margin-bottom:39px}.article h2{font-size:1.65rem;margin-top:7px}.article h3{font-size:1.12rem;margin-top:24px}.article p,.article li{color:#536079}.article ul,.article ol{padding-left:23px}.article li{margin-bottom:10px}.article a{overflow-wrap:anywhere}.sidebar{position:sticky;top:115px;border:1px solid var(--line);border-radius:17px;padding:24px;background:#fafbff}.sidebar h2{font-size:1.03rem;margin-bottom:16px}.sidebar a{display:block;font-size:.88rem;text-decoration:none;padding:8px 0;color:#526180}.sidebar .btn{color:white;padding:12px;margin-top:14px}.fact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:0 0 35px}.fact{border:1px solid var(--line);padding:18px;border-radius:12px}.fact small{font-size:.76rem;color:var(--muted);display:block}.fact strong{font-size:.95rem;display:block;margin-top:5px}.source-list{list-style:none;padding:0!important}.source-list li{margin:0!important;border-bottom:1px solid var(--line);padding:12px 0}.source-list a{font-size:.9rem}.checklist{list-style:none;padding:0!important}.checklist li{padding:14px 16px;background:#f7f8fe;border-radius:9px;margin-bottom:9px}.checklist label{display:flex;gap:13px;align-items:start;cursor:pointer}.checklist input{width:19px;min-height:19px;margin-top:4px;flex-shrink:0;accent-color:var(--primary)}details{border:1px solid var(--line);border-radius:12px;padding:18px 21px;margin-bottom:12px}summary{cursor:pointer;font-weight:600}details p{margin:14px 0 0;font-size:.94rem;color:var(--muted)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-grid .full{grid-column:1/-1}.form-card{border:1px solid var(--line);border-radius:20px;padding:30px;background:white}.form-card .btn{margin-top:18px}.form-message{margin-top:15px;font-size:.9rem}.consultant-mark{width:68px;height:68px;flex:none;align-self:flex-start;border:1px solid var(--line);border-radius:10px;display:grid;place-items:center;background:#fff;padding:8px;overflow:hidden;box-shadow:0 4px 14px #14234e0c;margin-bottom:16px}.consultant-mark img{width:100%;height:100%;object-fit:contain}.nav-secondary{display:flex;gap:12px;flex-wrap:wrap;margin-top:22px}.nav-secondary a{border:1px solid #d9dcf4;border-radius:9px;background:#ffffffaa;padding:8px 13px;text-decoration:none;font-size:.82rem;color:#4b5580}.reading{max-width:830px}.credit{font-size:.75rem;color:var(--muted)}.legal{text-wrap:pretty}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;font-size:.89rem}th,td{text-align:left;border-bottom:1px solid var(--line);padding:14px 12px;vertical-align:top}th{background:#f5f6fd;color:var(--ink)}td{color:var(--muted)}.inline-form{display:flex;gap:10px;max-width:680px;margin-top:25px}.inline-form input{flex:1}.inline-form .btn{white-space:nowrap}.icon-tile{background:#eeeaff;color:#5b52ce;width:46px;height:46px;border-radius:12px;display:grid;place-items:center;font-size:1.25rem;margin-bottom:17px}.wide-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.guide-category{font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:#6563ae;font-weight:700;margin-bottom:10px}.list-space{margin-top:24px}.mobile-only{display:none}
@media(min-width:1400px){.hero-grid{padding:72px 0 86px}.hero-frame img{height:410px}}
@media(max-width:1050px){.navlinks{gap:15px}.navlinks a{font-size:.82rem}.brand{font-size:1.3rem}.navrow{gap:15px}.country-grid{gap:12px}.country-info{padding:13px}.country-info h3{font-size:.91rem}.country-img{height:130px}.hero-grid{gap:25px}.hero-frame img{height:355px}.filters{grid-template-columns:repeat(4,1fr)}.filters>div:first-child{grid-column:1/-1}.article-layout{gap:35px;grid-template-columns:minmax(0,1fr) 245px}}
@media(max-width:800px){.wrap{width:calc(100% - 36px)}.navrow{min-height:74px;flex-wrap:wrap;padding:13px 0}.brand small{font-size:.65rem}.menu{display:block}.navlinks{width:100%;flex-wrap:wrap;padding:10px 0;gap:18px}.js .navlinks{display:none}.js .navlinks.expanded{display:flex}.navlinks a{font-size:.94rem}.hero-grid{grid-template-columns:1fr;padding:35px 0 45px;gap:28px}.hero h1{font-size:3.15rem;max-width:600px}.hero p{max-width:590px}.hero-frame img{height:320px}.hero-visual{max-width:620px;width:100%;margin:auto}.hero-frame{border-radius:55px 20px 50px 20px}.visual-caption{left:10px;bottom:-2px;padding:10px 14px}.country-grid{grid-template-columns:repeat(3,1fr)}.country-img{height:145px}.grid3{grid-template-columns:repeat(2,1fr)}.section{padding:43px 0}.section-head{align-items:start}.article-layout{grid-template-columns:1fr;gap:24px}.sidebar{position:static;order:-1}.sidebar a{display:inline-block;margin-right:15px;padding:4px 0}.sidebar .btn{padding:10px;display:flex}.sidebar h2{margin-bottom:8px}.country-hero{grid-template-columns:1fr;gap:25px}.country-hero img{height:230px}.footer-grid{grid-template-columns:2fr 1fr}.callout{padding:28px;display:block}.callout .btn{margin-top:22px}.fact-grid{gap:10px}.fact{padding:13px}.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}}
@media(max-width:520px){.hero h1{font-size:2.75rem}.hero .actions .btn{flex:1;padding:11px 12px;font-size:.83rem}.hero-note{gap:11px;font-size:.73rem}.hero-frame img{height:265px}.country-grid{grid-template-columns:repeat(2,1fr)}.country-img{height:125px}.grid3,.wide-grid{grid-template-columns:1fr}.section-head{display:block}.section-head .text-link{display:inline-block;margin-top:13px}.filters{grid-template-columns:1fr 1fr;padding:16px;gap:12px}.filter-top{align-items:start;gap:12px}.footer-grid{gap:25px}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{display:block}.footer-bottom span{display:block;margin-bottom:8px}.fact-grid{grid-template-columns:1fr}.fact{display:flex;align-items:center;justify-content:space-between;gap:12px}.fact strong{margin:0}.inline-form{display:block}.inline-form .btn{margin-top:12px;width:100%}.page-top h1{font-size:2.2rem}.form-card{padding:21px}.card{padding:22px}.page-top{padding-bottom:32px}.hero-note span:last-child{display:none}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

.section.section-no-top-padding{padding-top:0}
.nav-dropdown{position:relative}
.nav-dropdown-toggle{display:flex;align-items:center;gap:7px;padding:10px 0;border:0;background:none;color:#35415e;font-size:.9rem;font-weight:600;white-space:nowrap}
.nav-dropdown-toggle:hover,.nav-dropdown.is-open .nav-dropdown-toggle{color:var(--primary)}
.nav-dropdown-panel{display:none;position:absolute;top:100%;left:-16px;min-width:220px;padding:9px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 14px 35px #14234e20;z-index:30}
.nav-dropdown.is-open .nav-dropdown-panel,html:not(.js) .nav-dropdown:hover .nav-dropdown-panel,html:not(.js) .nav-dropdown:focus-within .nav-dropdown-panel{display:block}
.navlinks .nav-dropdown-panel a{display:block;padding:10px 12px;border-radius:7px}
.navlinks .nav-dropdown-panel a:hover,.navlinks .nav-dropdown-panel a:focus-visible{background:var(--pale);color:var(--primary)}
.navlinks .nav-dropdown-panel .nav-dropdown-all{margin-top:5px;border-top:1px solid var(--line);border-radius:0;font-weight:700}
@media(max-width:1050px){.nav-dropdown-toggle{font-size:.82rem}}
@media(max-width:800px){.nav-dropdown-toggle{font-size:.94rem}.nav-dropdown-panel{left:0;min-width:210px;max-width:calc(100vw - 36px)}}
.navlinks{gap:20px}
@media(min-width:801px) and (max-width:1200px){.navrow{min-height:74px;flex-wrap:wrap;padding:13px 0}.menu{display:block}.navlinks{width:100%;flex-wrap:wrap;padding:10px 0;gap:18px}.js .navlinks{display:none}.js .navlinks.expanded{display:flex}.navlinks a,.nav-dropdown-toggle{font-size:.94rem}}
@media(max-width:1200px){.nav-dropdown.is-open .nav-dropdown-panel,html:not(.js) .nav-dropdown:hover .nav-dropdown-panel,html:not(.js) .nav-dropdown:focus-within .nav-dropdown-panel{position:static;margin-top:5px}.nav-dropdown{max-width:100%}}
@media(max-width:1200px){.navlinks.expanded .nav-dropdown-panel{display:block;position:static;margin-top:5px}}

/* Shared university styles: generated from universities.css. */
/* University directory and profiles: shared colours and fonts come from style.css. */
.university-identity{display:flex;align-items:center;justify-content:center;width:68px;height:68px;flex:none;align-self:flex-start;border:1px solid var(--line);border-radius:10px;background:linear-gradient(135deg,var(--blue),var(--lilac));box-shadow:0 4px 14px #14234e0c;color:#5551b7;font-family:Manrope,Arial,sans-serif;font-size:1.15rem;font-weight:800;letter-spacing:.03em}
.university-fact-icon{flex:none;color:var(--ink)}
.university-identity-photo{overflow:hidden;background:white;padding:0}
.university-identity-photo img{width:100%;height:100%;object-fit:cover}
.university-identity-icon{background:white;padding:8px;overflow:hidden}
.university-identity-icon img{width:100%;height:100%;object-fit:contain}
.university-profile-lettermark img{width:45%;height:160px;object-fit:contain}
.university-reviewed{font-size:.82rem;margin-top:20px!important}
.university-filters{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) auto;gap:18px;align-items:end;border:1px solid var(--line);border-radius:16px;padding:24px;background:#fff}
.university-filters label{display:block;font-size:.84rem;font-weight:700;margin-bottom:6px}
.university-filters .btn{min-height:45px}
.js .university-country-links{display:none}
.university-country{margin-bottom:45px;scroll-margin-top:120px}
.university-country h2{font-size:1.7rem;margin-bottom:24px}
.university-card{padding:0;overflow:hidden}
.university-card-photo{position:relative;background:linear-gradient(120deg,var(--blue),var(--lilac));aspect-ratio:16/10}
.university-card-photo img{width:100%;height:100%;object-fit:cover}
.university-card-content{padding:24px;display:flex;flex-direction:column;flex:1}
.university-card-content h3{font-size:1.25rem;margin:15px 0 10px}
.university-card-content h2{font-size:1.25rem;margin:15px 0 10px;overflow-wrap:anywhere}
.university-card-content h2 a{color:var(--ink);text-decoration:none}
.university-card-content h2 a:hover{color:var(--primary)}
.university-directory-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:24px 0}
.university-directory-grid>[hidden]{display:none}
.university-directory-grid>.card{min-width:0;scroll-margin-top:120px}
.university-card-lettermark{height:100%;display:flex;align-items:center;justify-content:center;font-family:Manrope,Arial,sans-serif;font-weight:800;font-size:3rem;letter-spacing:.05em;color:#5551b7}
@media(max-width:1000px){.university-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}}
@media(max-width:600px){.university-directory-grid{grid-template-columns:1fr}}
.university-card-content .university-location{font-size:.8rem;margin-bottom:15px}
.university-card-bottom{margin-top:auto;padding-top:8px}
.university-card-bottom .btn{width:100%}
.university-card-bottom .credit{font-size:.7rem;margin:14px 0 0;line-height:1.6}
.university-campus-header{margin-top:32px}
.university-profile-hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:center;gap:36px;margin-top:24px}
.university-profile-heading{min-width:0}
.university-profile-heading h1{font-size:clamp(2rem,4vw,3.6rem);overflow-wrap:anywhere}
.university-profile-heading p{margin-bottom:0}
.university-profile-hero .campus-photo img{width:100%;height:280px;object-fit:cover;border-radius:20px}
.university-profile-hero .campus-photo figcaption{font-size:.72rem;overflow-wrap:anywhere}
.university-profile-lettermark{display:flex;align-items:center;justify-content:center;min-height:230px;border:1px solid #ffffffc9;border-radius:20px;background:#ffffff70;font-family:Manrope,Arial,sans-serif;font-weight:800;font-size:4rem;color:#5551b7;letter-spacing:.04em}
@media(max-width:600px){.university-profile-hero{grid-template-columns:minmax(0,1fr) 110px;gap:16px;align-items:start}.university-profile-heading h1{font-size:1.7rem;margin:12px 0}.university-profile-heading .eyebrow{font-size:.65rem}.university-profile-heading p{font-size:.85rem}.university-profile-hero .campus-photo{display:contents}.university-profile-hero .campus-photo img{grid-column:2;grid-row:1;height:130px;border-radius:12px}.university-profile-hero .campus-photo figcaption{grid-column:1/-1;margin-top:0}.university-profile-lettermark{min-height:130px;font-size:1.9rem;border-radius:12px}}
.campus-photo{margin:0;min-width:0}
.university-campus-header img{width:100%;height:440px;object-fit:cover;border-radius:22px;background:var(--pale)}
.campus-photo figcaption{font-size:.8rem;color:var(--muted);margin-top:12px;line-height:1.6}
.campus-photo .credit{display:block;margin-top:5px}
.university-layout{gap:45px}
.university-article{max-width:none;min-width:0}
.university-article section{scroll-margin-top:115px}
.university-facts{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:0 0 20px}
.university-facts>div{border:1px solid var(--line);border-radius:12px;padding:18px;background:#fafbff}
.university-facts dt{font-size:.78rem;color:var(--muted);margin-bottom:6px}
.university-facts dd{font-size:.95rem;font-weight:600;margin:0;line-height:1.6}
.university-fact-wide{grid-column:1/-1}
.university-subjects{columns:2;column-gap:30px}
.university-subjects li{break-inside:avoid}
.campus-gallery{display:grid;grid-template-columns:1fr 1fr;gap:25px 20px}
.campus-gallery img{width:100%;height:auto;aspect-ratio:auto;border-radius:12px;background:var(--pale)}
.campus-gallery .campus-photo:first-child{grid-column:1/-1}
.campus-image-failed img{visibility:hidden}
.campus-image-status{padding:16px;border:1px dashed var(--line);border-radius:10px;color:var(--muted);background:var(--pale);font-size:.84rem}
.university-card-photo .campus-image-status{position:absolute;inset:16px;margin:0;display:flex;align-items:center;justify-content:center;text-align:center}
@media(max-width:800px){.university-campus-header img{height:320px}.university-filters{grid-template-columns:1fr 1fr}.university-filters>div:first-child{grid-column:1/-1}.university-filters .btn{height:45px}.university-layout{gap:24px}}
@media(max-width:520px){.university-filters,.university-facts,.campus-gallery{grid-template-columns:1fr}.university-facts .university-fact-wide{grid-column:auto}.university-campus-header img{height:240px}.university-subjects{columns:1}.university-card-content{padding:22px}.university-country h2{font-size:1.45rem}.university-filters{padding:18px}.university-country{margin-bottom:35px}}

/* Compact directory cards and a split profile masthead. */
.university-card{border-color:#ccd2e2;border-radius:16px;box-shadow:none;transition:border-color .15s,box-shadow .15s}
.university-card:hover,.university-card:focus-within{border-color:var(--primary);box-shadow:0 8px 28px #5555e910}
.university-card-content{padding:24px;gap:0}
.university-card-content .badge{margin-bottom:14px}
.university-card-content h2{min-height:2.5em;font-size:1.25rem;line-height:1.25;margin:14px 0 10px}
.university-course-link{margin:0 0 16px!important;font-size:.94rem!important}
.university-course-link a{text-decoration:none}
.university-course-link a:hover{text-decoration:underline}
.university-card-facts{list-style:none;padding:16px 0 0;margin:0 0 18px;border-top:1px solid var(--line)}
.university-card-facts li{display:flex;align-items:flex-start;gap:12px;margin-bottom:12px;font-size:.88rem;line-height:1.5}
.university-card-facts li:last-child{margin-bottom:0}
.university-card-facts a{color:var(--ink);text-decoration:none}
.university-card-facts a:hover{color:var(--primary);text-decoration:underline}
.university-card-bottom .btn{border-radius:100px;border-color:#8d95ae;background:white;color:var(--ink);box-shadow:none;min-height:44px}
.university-card-bottom .btn:hover{border-color:var(--primary);background:var(--lilac);color:var(--primary)}
.university-profile-top{padding-bottom:42px}
.university-profile-hero{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:end;gap:40px;margin-top:26px}
.university-title-row{display:flex;align-items:center;gap:18px;margin:20px 0}
.university-title-row h1{font-size:clamp(2rem,3.3vw,3.1rem);margin:0;line-height:1.15}
.university-profile-heading .actions{gap:12px}
.university-profile-heading .btn{border-radius:100px;padding:12px 20px}
.university-profile-hero .campus-photo img{height:360px;border-radius:120px 0 120px 0}
.university-profile-lettermark{width:100%;min-height:360px;border-radius:120px 0 120px 0;font-size:4rem;background:linear-gradient(135deg,#d7edff,#e3ddff)}
@media(max-width:800px){.university-profile-hero{gap:24px}.university-title-row{gap:12px}.university-title-row .university-identity{width:52px;height:52px;font-size:.85rem}.university-profile-heading .btn{padding:10px 15px;font-size:.8rem}.university-profile-hero .campus-photo img,.university-profile-lettermark{height:280px;min-height:280px;border-radius:80px 0 80px 0}}
@media(max-width:600px){.university-profile-hero{grid-template-columns:minmax(0,1fr) 110px;align-items:start;gap:16px}.university-title-row{display:block;margin:12px 0}.university-title-row .university-identity{width:40px;height:40px;font-size:.75rem;margin-bottom:12px}.university-title-row h1{font-size:1.55rem}.university-profile-hero .campus-photo img,.university-profile-lettermark{height:150px;min-height:150px;border-radius:38px 0 38px 0}.university-profile-lettermark{font-size:1.8rem}.university-profile-heading .actions{flex-direction:column;align-items:stretch;margin-top:18px}.university-profile-heading .btn{white-space:normal;text-align:center;padding:10px 12px}.university-card-content h2,.university-card-content .university-location{min-height:0}}
