/* Directory photography, reading layouts and responsive spacing. */
.collection-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(250px,30%);gap:35px;align-items:center;margin-bottom:28px}.collection-heading .page-heading{padding:0}.collection-heading .official-photo img{height:180px}.collection-heading .official-photo figcaption{font-size:9px}.overview-columns{align-items:start}
@media(max-width:650px){.collection-heading{display:block}.collection-heading .official-photo{margin-top:22px}.collection-heading .official-photo img{height:150px}}
:root{--sidebar:246px;--ink:#162b3b;--muted:#687887;--line:#e2e7ea;--blue:#176aa0;--pale:#eef4f8}
body{background:#f5f6f7;color:var(--ink);font-family:Arial,"Microsoft YaHei","PingFang SC",sans-serif;line-height:1.75}h1,h2,h3{letter-spacing:-.025em;line-height:1.35}h1,.page-heading h1{font-size:clamp(29px,2.35vw,42px)}h2{font-size:25px}a{transition:color .15s,background .15s}.button{border-radius:6px;white-space:normal}.eyebrow{font-size:11px;letter-spacing:.14em;color:var(--blue)}main{max-width:none;padding:34px 42px 56px}.topbar{padding:0 42px;background:#fff;height:66px;border-bottom:1px solid var(--line)}.topbar>span{color:#6d7a86;font-size:12px}.page-heading{border:0;padding:0 0 26px;margin:0}.page-heading h1{margin:4px 0 14px}.lede{font-size:16px;line-height:1.9;max-width:920px}.sidebar{padding:24px 18px;background:#fff;scrollbar-width:thin;scrollbar-color:transparent transparent;overscroll-behavior:contain}.sidebar:hover,.sidebar:focus-within{scrollbar-color:#becbd4 transparent}.sidebar::-webkit-scrollbar{width:5px}.sidebar::-webkit-scrollbar-track{background:transparent}.sidebar::-webkit-scrollbar-thumb{background:transparent;border-radius:8px}.sidebar:hover::-webkit-scrollbar-thumb,.sidebar:focus-within::-webkit-scrollbar-thumb{background:#becbd4}.brand{padding:6px 0 23px;margin-bottom:20px;background:#fff}.brand img{width:208px;max-width:100%;height:auto;display:block}.brand span{font-size:10px;letter-spacing:.14em;margin-top:17px}.sidebar nav>a{padding:11px 13px;font-size:14px;margin-bottom:4px;border-radius:6px}.nav-label{font-size:10px;letter-spacing:.12em;margin:26px 13px 10px;color:#81909b}.subnav{display:grid;grid-template-columns:1fr 1fr;gap:4px}.subnav a{padding:7px 9px;font-size:12px;line-height:1.5;border-radius:4px;display:flex;align-items:center;justify-content:space-between}.subnav a:hover{background:#f2f6f9}.subnav a span{font-size:10px;color:#92a1ad}.subnav a[aria-current]{color:var(--blue);background:var(--pale)}.sidebar-foot{margin-top:25px;padding-top:20px}.sidebar-foot a{font-size:11px}.sidebar-foot .small{font-size:9px}.sidebar .nav-count{font-size:10px;background:#fff}.workspace{min-width:0}.official-photo{margin:0;min-width:0;background:#fff;border-radius:9px;overflow:hidden}.official-photo>img{width:100%;height:100%;max-height:360px;object-fit:cover;display:block}.official-photo figcaption{font-size:10px;line-height:1.7;color:#74828c;padding:9px 13px;background:#fff}.official-photo figcaption a{color:inherit}.directory-intro{grid-template-columns:1.08fr 1fr;gap:40px;padding:10px 0 25px;align-items:center}.directory-intro h1{font-size:clamp(35px,3vw,52px);line-height:1.28;margin:15px 0}.directory-intro>.official-photo img{height:360px}.stats{background:white;border:1px solid var(--line);border-radius:8px;margin:18px 0 38px;padding:23px 0}.stats b{font-size:30px}.stats span{font-size:12px}.subject-card{background:#fff;border-radius:7px;overflow:hidden}.section-heading{margin-bottom:19px}.section-heading>span{font-size:12px}.program-grid{gap:22px}.program-card{padding:0;background:#fff;border:1px solid #e6e9ec;border-radius:9px;overflow:hidden;display:flex;flex-direction:column;box-shadow:none;min-width:0}.program-card:hover{border-color:#b7c7d3;box-shadow:0 6px 20px #173b5b08}.card-photo{display:block;overflow:hidden;position:relative;background:#e6edf1;flex-shrink:0}.card-photo img{display:block;width:100%;height:205px;object-fit:cover;transition:transform .35s}.card-photo:hover img{transform:scale(1.025)}.card-content{padding:24px;display:flex;flex-direction:column;flex:1;min-width:0}.card-top{gap:12px;margin:0 0 11px}.card-top .tag{font-size:10px;line-height:1.5;padding:5px 9px}.card-top>.small{font-size:10px;white-space:nowrap}.program-card h3{font-size:22px;margin:0 0 7px;line-height:1.4}.school{font-size:12px;color:#6d7a86;margin:0 0 12px}.card-description{font-size:13px;line-height:1.85;margin:0 0 17px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;flex:none}.card-facts{display:flex;gap:8px 17px;flex-wrap:wrap;color:#435d70;font-size:12px;margin-top:auto}.card-facts>span{display:inline-flex;align-items:center;gap:5px}.card-facts .icon{width:15px;height:15px}.card-bottom{margin-top:17px;padding-top:14px;border-top:1px solid #edf0f2;display:flex;align-items:center;gap:15px;flex-wrap:wrap}.card-subject{font-size:11px;color:#74828d}.card-actions{display:flex;align-items:center;gap:16px;margin-left:auto}.card-actions .button{font-size:12px;padding:7px 12px;min-height:35px}.card-actions .button .icon{width:15px;height:15px}.card-actions .compare-toggle{font-size:12px;min-height:36px}.program-list{display:grid;gap:22px}.program-list .program-card{display:grid;grid-template-columns:minmax(250px,35%) minmax(0,1fr)}.program-list .card-photo img{height:100%;min-height:275px;max-height:365px}.program-list .card-content{padding:25px 30px}.program-list h3{font-size:25px}.program-list .card-description{font-size:14px;-webkit-line-clamp:2}.program-list .card-facts{font-size:13px}.program-list .school{font-size:14px}.filters{background:#fff;border:1px solid var(--line);border-radius:8px;padding:22px;gap:14px;box-shadow:none}.filters input,.filters select{background:#fcfdfe;border-radius:5px}.filters label{font-size:11px}.results-line{font-size:12px;margin:20px 0}.results-line p{color:#687b89}.results-line p strong{color:#203847}.detail-hero{display:grid;grid-template-columns:1.1fr 1fr;gap:35px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:9px;padding:32px}.detail-hero h1{font-size:clamp(27px,2.3vw,38px);margin:12px 0}.detail-hero .english-name{font-size:15px;color:#697f8f;margin:0 0 16px}.detail-hero .lede{font-size:14px;line-height:1.95;margin:18px 0}.detail-hero .official-photo img{height:305px}.tags{gap:6px;flex-wrap:wrap}.tags .tag{font-size:10px}.detail-actions{gap:10px;flex-wrap:wrap}.detail-actions .button{font-size:13px;padding:10px 15px}.breadcrumb{font-size:11px;margin:0 0 18px;overflow-wrap:anywhere}.reading-layout{grid-template-columns:minmax(0,1fr) 232px;gap:28px;margin-top:28px;align-items:start}.reading-body{background:#fff;border:1px solid var(--line);padding:8px 34px;border-radius:9px;min-width:0}.reading-body section{padding:28px 0;border-bottom:1px solid var(--line);scroll-margin-top:24px}.reading-body section:last-child{border:0}.reading-body h2{font-size:24px;margin-bottom:22px}.reading-body h3{font-size:18px;margin:27px 0 12px}.reading-body p{font-size:14px;line-height:2.05}.fact-grid{grid-template-columns:repeat(2,minmax(0,1fr));border-radius:6px;overflow:hidden;background:#f7f9fa}.fact-grid>div{padding:16px}.fact-grid dt{font-size:11px}.fact-grid dd{font-size:13px}.check-list li{font-size:14px}.schedule-grid{display:grid;grid-template-columns:1fr 1fr;gap:23px}.schedule-grid h3{display:flex;align-items:center;gap:6px;margin-top:0}.schedule-grid .icon{width:19px}.toc{position:sticky;top:24px;background:#fff;border:1px solid var(--line);border-radius:8px;padding:22px}.toc>strong{font-size:17px;margin:10px 0 15px;display:block}.toc>a{padding:9px 0;font-size:13px}.toc-help{border-top:1px solid var(--line);margin-top:18px;padding-top:14px;font-size:12px}.toc-help p{margin:0 0 6px}.programme-faq details{border:1px solid var(--line);padding:17px 20px;border-radius:6px;margin:12px 0}.programme-faq summary{font-weight:600;font-size:14px;cursor:pointer}.programme-faq p{margin-bottom:0}.consult-layout,.article-layout,.match-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(270px,31%);gap:28px;align-items:start}.form-panel{background:#fff;border:1px solid var(--line);border-radius:9px;padding:30px;margin:0;max-width:none}.form-title{border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:24px}.form-title h2{font-size:24px;margin:6px 0}.form-title p{font-size:12px;color:var(--muted);margin-bottom:0}.form-grid{gap:22px}.form-grid label,.form-panel>label{font-size:12px;color:#4c6170}.form-panel input,.form-panel select,.form-panel textarea{background:#fbfcfd;border:1px solid #d7e0e6;border-radius:5px;font-size:14px}.form-panel input:focus,.form-panel select:focus,.form-panel textarea:focus{outline:2px solid #b7d7ee;outline-offset:1px;border-color:var(--blue);background:white}.form-panel .checkbox{font-size:11px;line-height:1.9;align-items:start}.form-panel .checkbox input{margin-top:5px;flex-shrink:0}.form-panel>button[type=submit]{display:flex;margin-top:20px;min-width:150px;justify-content:center}.form-panel>a{font-size:12px}.support-aside{background:#fff;border:1px solid var(--line);border-radius:9px;overflow:hidden}.support-aside .official-photo{border-radius:0}.support-aside .official-photo img{height:210px}.aside-content{padding:24px}.aside-content h2{font-size:22px;margin:8px 0 24px}.support-steps{list-style:none;padding:0;margin:0}.support-steps li{display:flex;gap:15px;margin:20px 0}.support-steps li>b{font-size:12px;border:1px solid #dbe8f0;color:var(--blue);background:#f1f6fa;border-radius:50%;width:29px;height:29px;display:grid;place-items:center;flex-shrink:0}.support-steps strong{font-size:14px}.support-steps p{font-size:12px;line-height:1.85;color:#74828c;margin:6px 0 0}.aside-links{border-top:1px solid var(--line);padding-top:15px;display:flex;flex-direction:column;gap:9px;font-size:12px}.article-layout .prose{max-width:none;background:#fff;padding:30px 34px;border:1px solid var(--line);border-radius:9px;margin:0}.prose p,.prose li{font-size:14px;line-height:2}.prose h2{font-size:23px}.prose section:first-child{padding-top:0}.match-explainer{display:block;margin:0;padding:0;background:white;border:1px solid var(--line);border-radius:9px;overflow:hidden}.match-explainer .official-photo img{height:210px}.match-explainer h2,.match-explainer ol{margin:24px;font-size:18px}.match-explainer ol{padding-left:20px;font-size:13px}.match-result{background:#fff}.calendar,.empty{background:#fff;border:1px solid var(--line);border-radius:8px}.empty{padding:45px}.calendar-row{padding:25px}.guide-card,.service-card{background:#fff;border-radius:8px}.consult-strip{background:#eaf2f7;border:1px solid #dce8f0}.footer{padding:32px 42px 55px;background:white;margin-top:15px}.footer p{font-size:11px}.byline{margin-top:-12px;margin-bottom:24px}.source-list li{overflow-wrap:anywhere}.source-list span{font-size:10px}.table-scroll{background:#fff;border-radius:8px}.comparison img{width:100%;height:140px;object-fit:cover;border-radius:5px}.comparison td{font-size:13px}.comparison th{font-size:13px}.note{font-size:12px}.wide-intro{font-size:14px;max-width:none;margin-top:0}
@media(min-width:1800px){main{padding-left:55px;padding-right:55px}.program-list .card-photo img{min-height:285px}.program-list .card-content{padding:30px 38px}.card-description{font-size:14px}.program-list .card-description{font-size:16px}.program-list h3{font-size:29px}.program-list .card-facts{font-size:14px}.detail-hero .official-photo img{height:355px}.reading-body{padding:12px 45px}.reading-body p,.prose p{font-size:16px}.form-panel{padding:35px}.support-aside .official-photo img{height:250px}}
@media(max-width:1250px){:root{--sidebar:224px}main{padding:30px 28px}.topbar{padding:0 28px}.program-list .card-content{padding:22px}.program-list h3{font-size:22px}.program-list .card-bottom{display:block}.card-actions{margin-top:10px}.consult-layout,.article-layout,.match-layout{grid-template-columns:minmax(0,1fr) 270px;gap:20px}.form-panel{padding:23px}.consult-layout .form-grid,.match-layout .form-grid{grid-template-columns:1fr}.reading-layout{grid-template-columns:minmax(0,1fr) 190px;gap:20px}.reading-body{padding:0 24px}.detail-hero{gap:23px;padding:25px}.directory-intro{gap:25px}.directory-intro>.official-photo img{height:300px}.aside-content{padding:21px}.aside-content h2{font-size:20px}.schedule-grid{grid-template-columns:1fr;gap:4px}}
@media(max-width:1050px){.consult-layout,.article-layout,.match-layout{grid-template-columns:1fr}.consult-layout .form-grid,.match-layout .form-grid{grid-template-columns:1fr 1fr}.support-aside{display:grid;grid-template-columns:35% 1fr}.support-aside>.official-photo img{height:100%;min-height:280px;max-height:400px}.support-aside>.official-photo{position:relative}.support-aside>.official-photo figcaption{position:absolute;bottom:0;left:0;right:0;background:#ffffffea}.support-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.support-steps li{display:block;margin:0}.support-steps li>b{margin-bottom:9px}.aside-links{margin-top:18px;flex-direction:row;gap:20px}.match-explainer{display:grid;grid-template-columns:35% 1fr}.match-explainer .official-photo{grid-row:1/3}.match-explainer h2{margin:22px 22px 0}.match-explainer ol{margin-top:10px}.detail-hero{grid-template-columns:1fr}.detail-hero>.official-photo img{height:260px}.program-list .program-card{grid-template-columns:32% minmax(0,1fr)}.program-list .card-photo img{min-height:300px}.directory-intro>.official-photo img{height:290px}}
@media(max-width:850px){:root{--sidebar:246px}.sidebar{padding-top:20px}.mobile-header{position:relative;background:#fff}.mobile-header img{height:auto}.program-list .card-photo img{min-height:275px}.reading-layout{grid-template-columns:minmax(0,1fr) 180px}.directory-intro h1{font-size:35px}.directory-intro .lede{font-size:14px}}
@media(max-width:650px){main{padding:25px 17px 35px}.page-heading h1{font-size:28px}.page-heading{padding-bottom:20px}.lede{font-size:14px}.directory-intro{display:flex;flex-direction:column;align-items:stretch;gap:25px}.directory-intro h1{font-size:36px}.directory-intro>.official-photo img{height:215px}.stats{margin:20px 0 28px;padding:18px 0}.stats b{font-size:24px}.stats span{font-size:9px}.stats>div{padding:0 10px}.program-list,.program-grid{gap:19px}.program-list .program-card{display:flex;flex-direction:column}.program-list .card-photo img,.card-photo img{height:210px;min-height:0;max-height:none}.program-list .card-content,.card-content{padding:21px}.program-list h3,.program-card h3{font-size:22px}.program-list .school{font-size:12px}.program-list .card-description{font-size:13px;-webkit-line-clamp:3}.program-list .card-facts{font-size:12px}.card-bottom{display:block}.card-actions{margin-top:10px;justify-content:space-between}.filters{padding:17px;gap:12px}.filters input,.filters select,.form-panel input,.form-panel select,.form-panel textarea{font-size:16px}.detail-hero{padding:21px;gap:23px}.detail-hero h1{font-size:28px}.detail-hero>.official-photo img{height:220px}.detail-actions .button{font-size:12px}.reading-layout{display:flex;flex-direction:column;margin-top:20px;gap:18px}.reading-body{padding:0 22px}.reading-body section{padding:27px 0}.reading-body h2{font-size:22px}.reading-body p{font-size:14px}.toc{order:-1;width:100%;position:static;padding:17px;display:flex;flex-wrap:wrap;gap:8px 16px;margin:0}.toc .eyebrow,.toc-help{display:none}.toc>strong{width:100%;font-size:15px;margin:0 0 5px}.toc>a{font-size:12px;padding:4px 0}.fact-grid dd{font-size:12px}.fact-grid>div{padding:13px}.consult-layout,.article-layout,.match-layout{gap:20px}.form-panel{padding:23px}.form-title h2{font-size:23px}.consult-layout .form-grid,.match-layout .form-grid{grid-template-columns:1fr}.support-aside,.match-explainer{display:block}.support-aside>.official-photo img,.match-explainer .official-photo img{height:200px;min-height:0}.support-aside>.official-photo figcaption{position:static}.support-steps{display:block}.support-steps li{display:flex;margin:20px 0}.support-steps li>b{margin-bottom:0}.aside-links{flex-direction:column;gap:8px}.article-layout .prose{padding:25px}.programme-faq details{padding:16px}.footer{padding:25px 20px 95px}.empty{padding:30px 20px}.calendar-row{padding:22px}.source-list a{font-size:12px}.match-explainer h2{margin:22px}.match-explainer ol{margin:22px}.support-aside .official-photo figcaption{font-size:9px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
