:root{--wine:#610017;--red:#a41022;--paper:#f6f3ed;--ink:#242826;--muted:#6b6b64}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,'Microsoft Yahei',sans-serif;line-height:1.7}a{color:inherit;text-decoration:none}header{padding:24px 6%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #dcd8cf;background:var(--paper)}.logo{font-family:Georgia,serif;font-size:28px;letter-spacing:3px;color:var(--wine)}.logo small{display:block;font:9px Arial;letter-spacing:3.6px}nav{display:flex;gap:30px;align-items:center}nav a{font-size:13px}nav a[aria-current]{color:var(--red);border-bottom:1px solid}nav .button{color:white}.button,button{display:inline-block;background:var(--wine);color:white;border:1px solid var(--wine);padding:14px 24px;font:13px Arial;cursor:pointer}.outline{background:transparent;color:var(--wine);margin-left:10px}.eyebrow{font-size:10px;letter-spacing:2.5px;text-transform:uppercase;color:var(--red);font-weight:bold}h1,h2,h3{font-family:Georgia,'Songti SC',serif;font-weight:normal;line-height:1.12}h1{font-size:clamp(48px,6.2vw,90px);margin:25px 0}h2{font-size:clamp(34px,4vw,54px);margin:16px 0 25px}h3{font-size:29px}p{color:var(--muted)}.hero{display:grid;grid-template-columns:1.05fr 1fr;min-height:690px}.hero-copy{padding:85px 8% 60px 12%}.hero-copy p{max-width:430px;margin:25px 0 35px}.hero-photo{position:relative;background:linear-gradient(180deg,transparent 45%,#172b26b5),url('https://images.unsplash.com/photo-1507699622108-4be3abd695ad?auto=format&fit=crop&w=1600&q=85') center/cover;min-height:480px}.photo-label{position:absolute;bottom:35px;left:35px;color:white;font-size:11px;letter-spacing:2px}.ribbon{background:var(--wine);color:#eee4db;display:flex;justify-content:space-between;gap:20px;padding:23px 6%;font-size:11px;letter-spacing:2px}.section{padding:95px 8%}.section-head{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:35px}.section-head p{max-width:410px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.card{padding:32px 0;border-top:1px solid #bdb8aa}.card .num{color:var(--red);font-size:12px}.card p{font-size:14px;min-height:76px}.card a{font-size:12px;color:var(--wine)}.split{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.split img{width:100%;height:480px;object-fit:cover}.dark{background:#222f2b;color:#fff}.dark p{color:#c6ccc6}.dark .eyebrow{color:#d9b888}.quote{font:36px/1.35 Georgia,serif}.cta{text-align:center;background:#eae5db}.cta p{margin-bottom:30px}footer{padding:45px 6%;border-top:1px solid #d1ccc1;display:flex;justify-content:space-between;gap:30px;font-size:11px}footer p{margin:5px 0}.page-title{padding:65px 8% 40px;max-width:1000px}.page-title h1{font-size:64px}.service{padding:50px 0;border-top:1px solid #c9c2b6;display:grid;grid-template-columns:80px 1fr 1fr;gap:30px}.service h3{margin-top:0}.service ul{padding-left:18px;color:var(--muted);font-size:14px}.contact{align-items:start}form{background:white;padding:36px}label{display:block;font-size:12px;margin:15px 0 6px}input,textarea,select{width:100%;padding:13px;border:1px solid #c7c3bb;background:#faf9f6;font:16px Arial;border-radius:0}textarea{min-height:120px}form button{margin-top:20px}#status{font-size:13px}details{border-bottom:1px solid #bbb4a8;padding:20px 0}summary{cursor:pointer;font-size:14px}:focus-visible{outline:3px solid #be955c;outline-offset:4px}@media(max-width:760px){header{padding:20px 6%;align-items:start;gap:15px}.logo{font-size:23px}nav{gap:12px;flex-wrap:wrap;justify-content:end}nav .button{display:none}nav a{font-size:11px}.hero,.split{grid-template-columns:1fr}.hero-copy{padding:55px 8%}.hero-photo{min-height:410px}.ribbon{font-size:8px;letter-spacing:1px;flex-wrap:wrap}.section{padding:60px 8%}.section-head{display:block}.grid{grid-template-columns:1fr}.card p{min-height:0}.split{gap:30px}.split img{height:350px}.service{grid-template-columns:30px 1fr;gap:12px}.service>div:last-child{grid-column:2}.page-title h1{font-size:48px}.page-title{padding:45px 8% 20px}footer{flex-direction:column}form{padding:22px}.outline{margin:12px 0 0}.quote{font-size:29px}}
/* THESCEND supplied brand system */
:root{--wine:#610017;--red:#A41022;--paper:#F7F4F0;--ink:#252326;--gold:#B79A68;--stone:#E9E4DF}
header .logo{display:block;width:245px;flex-shrink:0}
.brand-logo{display:block;position:relative;overflow:hidden;width:100%;aspect-ratio:3.55;background:#fff}
.brand-logo img{position:absolute;left:-5.8%;top:-47%;width:111.5%;max-width:none;height:auto}
footer .logo{width:230px;flex-shrink:0}
.ribbon{background:var(--paper);color:var(--wine);border-block:1px solid var(--gold)}
.card,.service{border-top-color:var(--gold)}.card .num,.service>.eyebrow{color:#80683f}
.dark{background:var(--ink)}.dark .eyebrow{color:var(--gold)}
.cta{background:var(--stone)}.about{padding-bottom:45px}.about .section-head{align-items:start}.about .section-head>div{max-width:460px}
.programme{background:#eee9e2}.programme-layout{display:grid;grid-template-columns:1fr 1fr;gap:75px}.programme-meta{color:var(--wine);font-size:11px;letter-spacing:1.5px}.programme-layout h3{font-size:35px}.outcomes{padding:30px;background:var(--paper);border-top:2px solid var(--gold)}.outcomes article{display:flex;gap:24px;border-bottom:1px solid #ded5c7;padding:20px 0}.outcomes article>span{color:#80683f;font-size:12px}.outcomes h3{font-size:24px;margin:0}.outcomes p{font-size:13px;margin:10px 0 0}.programme-note{font-size:11px;margin-top:30px}
@media(max-width:760px){header{flex-wrap:wrap}header .logo{width:210px}nav{width:100%;justify-content:space-between}.programme-layout{grid-template-columns:1fr;gap:25px}.programme-layout h3{font-size:30px}}

/* Red logo: crop only the supplied outer white margin, preserve all artwork. */
.brand-logo{aspect-ratio:1692 / 482;background:#A41022}
.brand-logo img{width:104.846%;left:-2.364%;top:-38.797%;height:auto}
header .logo{width:260px}
.language-switch{display:flex;align-items:center;gap:8px;white-space:nowrap;font:12px Arial}
.language-switch a{padding:7px 5px}
.language-switch a[aria-current]{color:var(--wine);font-weight:700;border-bottom:2px solid var(--red)}
html[lang="zh-CN"] h1{font-size:clamp(42px,5.2vw,72px);line-height:1.3}
html[lang="zh-CN"] h2{line-height:1.35}
html[lang="zh-CN"] .hero-copy p{line-height:1.9}
@media(max-width:1050px){header{gap:20px;flex-wrap:wrap}nav{gap:18px}nav .button{display:none}}
@media(max-width:760px){header .logo{width:220px}.language-switch{margin-left:auto}nav{justify-content:flex-start;gap:20px}html[lang="zh-CN"] h1{font-size:44px}}

.programme-figure{margin:0}.programme-figure img{display:block;width:100%;height:100%;object-fit:cover}.programme-figure a{display:block;overflow:hidden}.programme-figure figcaption{font-size:11px;color:var(--muted);line-height:1.6;padding:12px 0}.programme-main-image{margin:0 0 38px}.programme-main-image a{height:440px}.programme-main-image img{object-position:center 48%}.programme-gallery{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:38px}.programme-gallery a{height:300px}.programme-gallery .programme-figure:last-child img{object-fit:contain;background:#e3e6e7}.programme-detail-link{margin-top:24px}.learning-stages{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;list-style:none;margin:35px 0 0;padding:0}.learning-stages li{border-top:2px solid var(--gold);padding:22px 0}.learning-stages li>span{font-size:12px;color:#80683f}.learning-stages h3{font-size:29px}.learning-stages p{font-size:14px}.programme-detail .programme-main-image a{height:520px}
@media(max-width:760px){.programme-main-image a,.programme-detail .programme-main-image a{height:auto;aspect-ratio:3/2}.programme-gallery{grid-template-columns:1fr;gap:20px}.programme-gallery a{height:auto;aspect-ratio:3/2}.learning-stages{grid-template-columns:1fr 1fr;gap:20px}}
/* Readable bilingual typography: desktop and mobile */
body{font-size:17px;line-height:1.65}
h1{font-size:clamp(48px,5.4vw,72px);line-height:1.12;letter-spacing:-.025em}
.page-title h1{font-size:clamp(44px,4.6vw,56px)}
h2{font-size:clamp(32px,3.3vw,42px);line-height:1.2;letter-spacing:-.015em}
h3,.programme-layout h3{font-size:28px;line-height:1.3}
p{line-height:1.7}
nav a,.language-switch,.language-switch a{font-size:15px}
.button,button{font-size:15px;line-height:1.4;padding:14px 24px;min-height:48px}
.eyebrow,.card .num,.service>.eyebrow,.programme-meta{font-size:12px;line-height:1.6;letter-spacing:1.7px}
.card p,.service ul,.learning-stages p{font-size:17px;line-height:1.7}
.card a{font-size:15px}
.programme-figure figcaption,.programme-note{font-size:14px;line-height:1.65}
.outcomes p{font-size:16px;line-height:1.7}
.outcomes h3{font-size:25px}
.learning-stages h3{font-size:27px}
.learning-stages li>span,.outcomes article>span{font-size:14px}
label,summary{font-size:16px;line-height:1.6}
input,textarea,select{font-size:17px;line-height:1.5}
#status{font-size:16px;line-height:1.65}
form p[style]{font-size:14px!important}
.service~p[style]{font-size:14px!important;line-height:1.7}
footer{font-size:14px;line-height:1.7}
.ribbon{font-size:12px;line-height:1.6;letter-spacing:1.5px}
.hero-copy p{max-width:460px}
.section-head p{max-width:460px}
.page-title>p{max-width:740px}
html[lang="zh-CN"] body{line-height:1.85}
html[lang="zh-CN"] p,html[lang="zh-CN"] .hero-copy p,html[lang="zh-CN"] li{line-height:1.85}
html[lang="zh-CN"] h1{font-size:clamp(46px,5vw,64px);line-height:1.32;letter-spacing:.015em}
html[lang="zh-CN"] .page-title h1{font-size:clamp(42px,4.3vw,54px)}
html[lang="zh-CN"] h2{line-height:1.4;letter-spacing:.01em}
html[lang="zh-CN"] h3{line-height:1.5}
html[lang="zh-CN"] h1 i,html[lang="zh-CN"] h2 i,html[lang="zh-CN"] h3 i{font-style:normal}
@media(max-width:1150px){header{flex-wrap:wrap;gap:22px}nav{gap:20px}nav .button{display:none}}
@media(max-width:760px){
 body{font-size:16px;line-height:1.65}
 h1{font-size:42px;line-height:1.16}
 .page-title h1{font-size:38px}
 h2{font-size:32px;line-height:1.25}
 h3,.programme-layout h3,.learning-stages h3{font-size:25px}
 html[lang="zh-CN"] h1{font-size:40px;line-height:1.38}
 html[lang="zh-CN"] .page-title h1{font-size:36px}
 html[lang="zh-CN"] h2{font-size:30px;line-height:1.45}
 nav a,.language-switch,.language-switch a{font-size:14px}
 nav{gap:18px}
 .button,button{font-size:15px}
 .eyebrow,.card .num,.service>.eyebrow,.programme-meta{font-size:12px;letter-spacing:1px}
 .card p,.service ul,.learning-stages p{font-size:16px}
 .programme-figure figcaption,.programme-note{font-size:13px}
 .ribbon{font-size:11px;letter-spacing:1px}
 footer{font-size:13px}
 .section-head p{max-width:none}
 .hero-copy{padding-top:45px;padding-bottom:45px}
 .outcomes{padding:24px}
}
@media(max-width:380px){
 nav{gap:12px}
 nav a,.language-switch a{font-size:13px}
 html[lang="zh-CN"] h1{font-size:36px}
 html[lang="zh-CN"] .page-title h1{font-size:32px}
 h1{font-size:38px}
 .page-title h1{font-size:34px}
}

/* International school exchange records */
.school-exchanges{background:var(--paper);border-top:1px solid var(--stone)}
.exchange-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.exchange-card{min-width:0;border-top:2px solid var(--gold)}
.exchange-card figure{margin:0}
.exchange-card img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;background:var(--stone)}
.exchange-card figcaption{font-size:13px;line-height:1.6;padding:10px 0;color:var(--muted)}
.exchange-copy{padding:15px 0 0}
.exchange-copy .eyebrow{font-size:11px;letter-spacing:1px}
.exchange-copy h3{font-size:26px;line-height:1.4;margin:14px 0}
.exchange-copy p{font-size:17px}
.exchange-end{display:flex;justify-content:space-between;gap:25px;align-items:center;margin-top:28px;padding-top:22px;border-top:1px solid var(--stone)}
@media(max-width:900px){.exchange-grid{grid-template-columns:1fr}.exchange-card{display:grid;grid-template-columns:1fr 1fr;gap:25px}.exchange-copy{padding:15px 0}.exchange-copy h3{font-size:25px}}
@media(max-width:600px){.exchange-card{display:block}.exchange-copy p{font-size:16px}.exchange-end{display:block}.exchange-end .button{margin:0}}

/* Homepage: editorial project gateways; photography lives on detail pages. */
.selected-pathways{background:var(--stone)}
.pathway-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.pathway-card{display:flex;flex-direction:column;justify-content:space-between;gap:35px;padding:38px;background:var(--paper);border-top:2px solid var(--gold);min-width:0}
.pathway-top{display:flex;justify-content:space-between;gap:20px;font-size:11px;line-height:1.7;letter-spacing:1px;color:var(--wine)}
.pathway-card h3{font-size:36px;line-height:1.25;margin:0 0 22px}
.pathway-card p{font-size:17px;max-width:430px;margin:0}
.pathway-card>a{display:flex;justify-content:space-between;gap:20px;padding-top:22px;border-top:1px solid #d5cfc5;font-size:15px;color:var(--wine)}
.pathway-card.academic{background:#ede5dc}
html[lang="zh-CN"] .pathway-card h3{line-height:1.5}
.pathway-card>a:hover{color:var(--red)}
@media(max-width:760px){.pathway-cards{grid-template-columns:1fr}.pathway-card{padding:28px;gap:28px}.pathway-card h3{font-size:29px}.pathway-card p{font-size:16px}.pathway-top{flex-wrap:wrap;gap:8px}.pathway-card>a{min-height:48px}}
/* Restrained, progressively enhanced homepage motion */
html{scroll-padding-top:145px}
body.homepage header{position:sticky;top:0;z-index:40;transition:box-shadow .25s ease,background-color .25s ease}
.page-scrolled body.homepage header{background:rgba(247,244,240,.97);box-shadow:0 5px 20px #2523260d}
body.homepage .hero-photo{overflow:hidden;background:none;isolation:isolate}
body.homepage .hero-photo::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,transparent 45%,#172b26b5),url('https://images.unsplash.com/photo-1507699622108-4be3abd695ad?auto=format&fit=crop&w=1600&q=85') center/cover}
.motion-enabled body.homepage .hero-photo::before{animation:hero-pan 18s ease-out both}
.motion-enabled .hero-copy>.eyebrow{display:inline-block;animation:hero-enter .65s ease-out both}
.motion-enabled .hero-copy>h1{animation:hero-enter .75s .1s ease-out both}
.motion-enabled .hero-copy>p{animation:hero-enter .75s .2s ease-out both}
.motion-enabled .hero-copy>.button{animation:hero-enter .65s .3s ease-out both}
.motion-enabled .section-head,.motion-enabled .card,.motion-enabled .about,.motion-enabled .dark>img,.motion-enabled .dark>div,.motion-enabled .pathway-card,.motion-enabled .cta{transition:opacity .65s ease,transform .65s ease;transition-delay:var(--reveal-delay,0ms)}
.motion-enabled .motion-pending{opacity:0;transform:translateY(18px)}
.pathway-card{transition:transform .25s ease,box-shadow .25s ease!important}
.pathway-card>a>span{transition:transform .25s ease}
.button,button,nav a{transition:background-color .2s ease,color .2s ease,border-color .2s ease}
.button:hover,button:hover{background:#7c1027;border-color:#7c1027}
.button.outline:hover{background:#610017;color:#fff}
@media(hover:hover) and (pointer:fine){
 .pathway-card:hover,.pathway-card:focus-within{transform:translateY(-5px);box-shadow:0 14px 30px #2523260b}
 .pathway-card:hover>a>span,.pathway-card:focus-within>a>span{transform:translate(4px,-2px)}
}
@keyframes hero-enter{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@keyframes hero-pan{from{transform:scale(1)}to{transform:scale(1.045)}}
@media(max-width:760px){
 html{scroll-padding-top:165px}
 .motion-enabled body.homepage .hero-photo::before{animation:none}
 .motion-enabled .motion-pending{transform:translateY(8px)}
 .motion-enabled .section-head,.motion-enabled .card,.motion-enabled .about,.motion-enabled .dark>img,.motion-enabled .dark>div,.motion-enabled .pathway-card,.motion-enabled .cta{transition-duration:.4s;transition-delay:0ms}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-behavior:auto}
 body.homepage *,body.homepage *::before{animation:none!important;transition:none!important}
 .motion-pending{opacity:1!important;transform:none!important}
}
.about-story .section-head{align-items:start}.about-story .section-head>div{flex:1}.about-story .section-head>div:last-child{max-width:570px}.about-values{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px;margin-top:45px}.about-values article{border-top:1px solid var(--gold);padding-top:20px}.about-values h3{font-size:24px}.about-values p{font-size:16px}.about-lead{font-size:24px}.about-reading{max-width:780px}.about-approach{background:var(--stone)}.about-home-link{margin-top:25px;margin-bottom:35px}
@media(max-width:1100px){nav{gap:18px}nav .button{display:none}}
@media(max-width:760px){.about-values{grid-template-columns:1fr 1fr;gap:22px}.about-story .section-head{display:block}.about-home-link{margin-bottom:10px}nav{gap:15px}.about-values h3{font-size:22px}}
.about-visual{margin:0 auto;padding:0 8%;max-width:1800px}
.about-visual img{display:block;width:100%;height:auto;object-fit:cover}
.about-campus img{aspect-ratio:2.15;object-position:center 52%}
.about-learning{padding-top:60px}
.about-learning img{aspect-ratio:2.2;object-position:center 55%}
.about-visual figcaption{color:var(--muted);font-size:13px;line-height:1.65;padding:12px 0 0;max-width:850px}
@media(max-width:760px){.about-campus img,.about-learning img{aspect-ratio:1.5}.about-learning{padding-top:40px}.about-visual figcaption{font-size:12px}}

.about-campus img{aspect-ratio:1.85;object-position:center 60%}@media(max-width:760px){.about-campus img{aspect-ratio:1.5}}

.service-feature{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:60px;align-items:center;padding:55px 0;border-top:1px solid var(--gold)}
.service-feature figure{margin:0;min-width:0}
.service-feature img{width:100%;display:block;aspect-ratio:4/3;height:auto;object-fit:cover}
.service-feature figcaption{font-size:13px;line-height:1.6;color:var(--muted);padding-top:12px}
.service-feature h3{font-size:34px;margin:18px 0}
.service-feature-copy>p{font-size:17px}
.service-feature-copy ul{padding-left:20px;font-size:16px;color:var(--muted);line-height:1.85}
.service-feature.reverse figure{order:2}
.service-feature.reverse .service-feature-copy{order:1}
.service-feature-copy .outline{margin-left:0;margin-top:12px}
@media(max-width:900px){.service-feature{gap:32px}.service-feature h3{font-size:29px}}
@media(max-width:760px){.service-feature{grid-template-columns:1fr;gap:24px;padding:40px 0}.service-feature.reverse figure,.service-feature.reverse .service-feature-copy{order:initial}.service-feature-copy>p{font-size:16px}.service-feature figcaption{font-size:12px}}

/* Compact, image-led homepage */
body.homepage .hero{min-height:570px}
body.homepage .hero-copy{padding-top:48px;padding-bottom:42px}
body.homepage h1{font-size:clamp(44px,4.65vw,64px);margin:18px 0;line-height:1.15}
html[lang="zh-CN"] body.homepage h1{font-size:clamp(42px,4.4vw,58px);line-height:1.3}
body.homepage .hero-copy p{margin:20px 0 25px}
body.homepage .hero-photo{min-height:540px}
body.homepage .section{padding-top:64px;padding-bottom:64px}
body.homepage .section-head{margin-bottom:25px}
body.homepage .card{padding-top:24px;padding-bottom:12px}
body.homepage .card h3{margin:18px 0}
body.homepage .ribbon{padding-top:18px;padding-bottom:18px}
body.homepage .pathway-card{display:flex;gap:22px;padding:0 0 28px;overflow:hidden}
.home-project-image{margin:0;position:relative}
.home-project-image img{display:block;width:100%;height:235px;object-fit:cover}
.home-project-image figcaption{position:absolute;left:0;right:0;bottom:0;padding:8px 20px;font-size:11px;line-height:1.5;background:rgba(247,244,240,.92);color:#55514b}
body.homepage .pathway-card>.pathway-top,body.homepage .pathway-card>div:not(.home-project-image),body.homepage .pathway-card>a{margin-left:28px;margin-right:28px}
body.homepage .pathway-card h3{font-size:31px;margin-bottom:16px}
body.homepage .pathway-card>a{margin-top:auto}
.home-intro{display:grid;grid-template-columns:1fr 1fr;gap:65px;border-bottom:1px solid var(--stone)}
.home-intro p:first-child{margin-top:0}
.home-intro .button{margin-left:0;margin-top:10px}
body.homepage .cta{padding-top:50px;padding-bottom:55px}
@media(max-width:760px){
 body.homepage .hero{min-height:0}
 body.homepage .hero-copy{padding-top:36px;padding-bottom:36px}
 body.homepage h1{font-size:40px}
 html[lang="zh-CN"] body.homepage h1{font-size:38px}
 body.homepage .hero-photo{min-height:330px}
 body.homepage .section{padding-top:44px;padding-bottom:44px}
 body.homepage .pathway-card h3{font-size:27px}
 .home-project-image img{height:210px}
 .home-intro{grid-template-columns:1fr;gap:18px}
 .home-intro h2{margin-bottom:10px}
}

/* Panoramic immersive homepage hero */
body.homepage .hero.hero-immersive{display:flex;align-items:center;position:relative;isolation:isolate;min-height:570px;height:calc(84svh - 90px);max-height:850px;color:#fff;background:#182621;overflow:hidden}
body.homepage .hero-immersive .hero-photo{position:absolute;inset:0;min-height:0;z-index:-2}
body.homepage .hero-immersive .hero-photo::before{display:none}
.hero-background{display:block;width:100%;height:100%;object-fit:cover;object-position:center 52%}
body.homepage .hero-immersive::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(10,24,21,.81),rgba(10,24,21,.54) 45%,rgba(10,24,21,.07) 80%),linear-gradient(0deg,rgba(9,20,18,.5),transparent 25%)}
body.homepage .hero-immersive .hero-copy{width:100%;max-width:1600px;margin:auto;padding:55px 8% 90px}
body.homepage .hero-immersive .eyebrow{color:#e3d1ae;font-size:12px;letter-spacing:2.5px}
body.homepage .hero-immersive h1{font-size:clamp(44px,4.6vw,70px);line-height:1.13;max-width:950px;margin:25px 0;color:white;letter-spacing:-.025em}
html[lang="zh-CN"] body.homepage .hero-immersive h1{font-size:clamp(44px,4.7vw,68px);line-height:1.35;letter-spacing:.03em}
body.homepage .hero-immersive p{font-size:18px;color:#f1eee8;line-height:1.8;max-width:580px;margin:20px 0 30px}
.hero-actions{display:flex;flex-wrap:wrap;gap:14px}
.hero-actions .button{background:#A41022;border-color:#A41022;min-height:50px}
.hero-actions .outline{margin:0;background:rgba(255,255,255,.04);color:#fff;border-color:rgba(255,255,255,.7)}
.hero-actions .button:hover{background:#7e0b1b;border-color:#7e0b1b}
.hero-actions .outline:hover{background:#fff;color:#252326;border-color:#fff}
.hero-bottom{position:absolute;left:8%;right:8%;bottom:25px;display:flex;justify-content:space-between;align-items:end;gap:25px}
.hero-scroll{font-size:12px;letter-spacing:1px;color:white;padding:10px 0}
.hero-scroll span{display:inline-block;margin-left:20px}
.hero-image-note{font-size:11px;line-height:1.5;color:#e1e0d9;text-align:right}
.motion-enabled .hero-background{animation:hero-pan 18s ease-out both}
.motion-enabled .hero-actions{animation:hero-enter .7s .3s ease-out both}
@media(max-width:760px){
 body.homepage .hero.hero-immersive{height:auto;min-height:570px;max-height:none}
 body.homepage .hero-immersive .hero-copy{padding:70px 8% 115px}
 body.homepage .hero-immersive h1{font-size:39px}
 html[lang="zh-CN"] body.homepage .hero-immersive h1{font-size:42px}
 body.homepage .hero-immersive p{font-size:16px;line-height:1.8}
 .hero-background{object-position:65% center}
 body.homepage .hero-immersive::after{background:linear-gradient(90deg,rgba(10,24,21,.83),rgba(10,24,21,.5)),linear-gradient(0deg,rgba(9,20,18,.6),transparent 35%)}
 .hero-actions{gap:12px}
 .hero-actions .button{font-size:14px;padding:13px 18px}
 .hero-bottom{bottom:20px}
 .hero-image-note{max-width:160px;font-size:10px}
 .motion-enabled .hero-background{animation:none}
}
@media(max-width:380px){
 html[lang="zh-CN"] body.homepage .hero-immersive h1{font-size:36px}
 body.homepage .hero-immersive h1{font-size:35px}
 .hero-actions{flex-direction:column;align-items:flex-start}
}
@media(prefers-reduced-motion:reduce){.hero-background,.hero-actions{animation:none!important}}

/* Fine tuning: balanced Chinese headings and readable image captions */
html[lang="zh-CN"] .section h2{font-size:clamp(32px,2.8vw,38px);line-height:1.4;font-weight:500}
html[lang="zh-CN"] h3{font-weight:500}
html[lang="zh-CN"] body.homepage .hero-immersive h1{font-weight:500}
.home-project-image figcaption{font-size:13px;line-height:1.65}
.hero-image-note{font-size:12px;line-height:1.65}
@media(max-width:760px){
 html[lang="zh-CN"] .section h2{font-size:30px;line-height:1.45}
 .home-project-image figcaption{font-size:12px;line-height:1.65}
 .hero-image-note{font-size:12px;max-width:180px}
}

/* Compact About page: four connected editorial sections */
.about-compact{max-width:1600px;margin:auto}
.compact-section{padding:60px 8%}
.about-intro,.about-method{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.about-intro h1{font-size:clamp(38px,3.3vw,48px);margin:18px 0 24px;line-height:1.22}
html[lang="zh-CN"] .about-intro h1{font-size:clamp(36px,3.1vw,46px);line-height:1.45}
.about-compact p{margin:14px 0;font-size:17px}
.about-compact figure{margin:0;min-width:0}
.about-compact figure img{display:block;width:100%;height:auto;aspect-ratio:1.15;object-fit:cover}
.about-compact figcaption{font-size:12px;line-height:1.6;margin-top:9px;color:var(--muted)}
.about-intro figure img{object-position:60% center}
.text-link{font-size:15px;color:var(--wine);display:inline-block;margin-top:8px;border-bottom:1px solid var(--gold)}
.about-principles{background:var(--stone)}
.compact-heading h2{font-size:34px;margin:14px 0 10px}
.compact-heading>p{color:var(--wine)}
.compact-principles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;margin-top:28px}
.compact-principles article{padding-top:18px;border-top:1px solid var(--gold)}
.compact-principles .num{font-size:12px;color:#80683f}
.compact-principles h3{font-size:25px;margin:12px 0}
.about-method h2{font-size:36px;margin:15px 0 20px}
.about-method figure img{aspect-ratio:1;object-position:center}
.about-method ol{list-style:none;padding:0;margin:0}
.about-method li{display:flex;gap:20px;border-top:1px solid var(--stone);padding:14px 0}
.about-method li>span{font-size:12px;color:#80683f;padding-top:5px}
.about-method li h3{font-size:21px;margin:0}
.about-method li p{font-size:16px;margin:5px 0 0}
.about-connect{display:grid;grid-template-columns:1.5fr 1fr;gap:40px;align-items:center;background:var(--stone)}
.about-connect h2{font-size:34px;margin:15px 0}
.compact-actions{display:flex;flex-direction:column;align-items:stretch;gap:14px;max-width:300px;justify-self:end;width:100%}
.compact-actions .button{margin:0;text-align:center}
@media(max-width:900px){.about-intro,.about-method{gap:30px}.compact-section{padding:48px 6%}.compact-principles{gap:22px}.about-method h2{font-size:32px}}
@media(max-width:760px){
 .compact-section{padding:38px 8%}
 .about-intro,.about-method,.about-connect{grid-template-columns:1fr;gap:25px}
 .about-intro h1,html[lang="zh-CN"] .about-intro h1{font-size:34px}
 .about-compact p{font-size:16px}
 .about-intro figure img{aspect-ratio:1.65}
 .compact-principles{grid-template-columns:1fr;gap:15px;margin-top:22px}
 .compact-principles h3{font-size:23px;margin:8px 0}
 .compact-principles p{margin:8px 0}
 .compact-heading h2,.about-method h2,.about-connect h2{font-size:29px}
 .about-method figure img{aspect-ratio:1.65}
 .compact-actions{justify-self:start;max-width:none}
 .about-compact figcaption{font-size:12px}
}
.about-compact figure img{aspect-ratio:1;object-position:center}.about-intro figure img{object-position:center}.about-method figure img{object-position:center}@media(max-width:760px){.about-compact figure img{aspect-ratio:1.2;object-position:center}}

.services-intro{max-width:none}.services-intro>p{max-width:730px}.service-jumps{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:12px;margin-top:32px}.service-jumps a{padding:10px 16px;border:1px solid #d3c9bb;font-size:14px;color:var(--wine);background:#fff8}.service-jumps a:hover{border-color:var(--wine)}.service-focus{display:grid;grid-template-columns:1fr 1.15fr;gap:75px;border-top:1px solid var(--gold)}.focus-heading>p{max-width:450px}.focus-tag{font-size:21px;color:var(--wine)}.focus-content>div{padding:0 0 25px;margin-bottom:25px;border-bottom:1px solid var(--stone)}.focus-content>div:last-child{margin-bottom:0;border-bottom:0;padding-bottom:0}.focus-content p{margin-top:10px}.focus-content ul{padding-left:20px;line-height:1.85}.focus-start .button{margin-top:5px}.service-project{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:60px;background:var(--stone)}.service-project figure{margin:0;min-width:0}.service-project img{width:100%;height:auto;display:block;aspect-ratio:1.2;object-fit:cover}.service-project figcaption{font-size:13px;color:var(--muted);line-height:1.6;margin-top:12px}.service-project-copy>p{max-width:520px}.institutional-actions{margin-top:25px}.service-scope{padding-top:25px;padding-bottom:25px;border-top:1px solid var(--stone)}.service-scope p{font-size:14px;max-width:1000px;margin:0}.service-focus:nth-of-type(2){background:#f0ebe4}
@media(max-width:760px){.service-focus,.service-project{grid-template-columns:1fr;gap:25px}.focus-tag{font-size:19px}.service-jumps{gap:8px}.service-jumps a{font-size:13px;padding:10px 12px}.focus-content>div{padding-bottom:20px;margin-bottom:20px}.service-project img{aspect-ratio:1.5}.institutional-actions{display:flex;flex-direction:column;gap:12px;align-items:start}.institutional-actions .outline{margin:0}.service-scope p{font-size:13px}}
.service-visual{margin:30px 0 0}
.service-visual img{display:block;width:100%;height:auto;aspect-ratio:1.5;object-fit:cover}
.service-visual figcaption{font-size:12px;line-height:1.7;color:var(--muted);margin-top:10px}
.service-focus{align-items:start;gap:65px}
.service-focus#new-zealand .focus-heading{grid-column:2;grid-row:1}
.service-focus#new-zealand .focus-content{grid-column:1;grid-row:1}
.service-focus .focus-heading>p{max-width:none}
@media(max-width:760px){
 .service-focus{gap:28px}
 .service-focus#new-zealand .focus-heading,.service-focus#new-zealand .focus-content{grid-column:auto;grid-row:auto}
 .service-visual{margin-top:24px}
 .service-visual figcaption{font-size:12px}
}

.service-project img{aspect-ratio:1.5;object-position:center}

.about-campus img{aspect-ratio:1.85;object-position:center}.about-learning{max-width:1150px}.about-learning img{aspect-ratio:1.8;object-position:center}@media(max-width:760px){.about-campus img,.about-learning img{aspect-ratio:1.5}}

.selected-about-figure img{width:100%;height:auto!important;aspect-ratio:3/2;object-fit:contain!important}

.brand-diptych{display:grid;grid-template-columns:1.05fr 1fr;gap:20px;width:100%;min-width:0}
.brand-diptych figure{margin:0;min-width:0}.brand-diptych img{display:block;width:100%;height:290px;object-fit:cover}.brand-diptych figcaption{padding:16px 0;border-bottom:1px solid var(--gold);display:flex;flex-direction:column;gap:8px}.brand-diptych span{font-size:11px;letter-spacing:1.5px;color:var(--wine)}.brand-diptych strong{font-size:19px;font-weight:normal}.brand-photo-credit{grid-column:1/-1;font-size:12px!important;line-height:1.65!important;color:var(--muted);margin:0}.brand-photo-credit a{text-decoration:underline}.mentoring-visual img{object-position:center 55%}
@media(max-width:760px){.brand-diptych{grid-template-columns:1fr}.brand-diptych img{height:auto;aspect-ratio:1.5}.brand-diptych strong{font-size:18px}}

/* About page layout: clear introduction, equal image pair, aligned editorial sections */
.about-compact .about-intro{display:block;padding-top:64px;padding-bottom:64px}
.about-compact .about-intro>div:first-child{max-width:850px;margin-bottom:38px}
.about-compact .about-intro h1{max-width:950px;font-size:clamp(36px,3.4vw,50px);line-height:1.25;margin:18px 0 24px}
html[lang="zh-CN"] .about-compact .about-intro h1{font-size:clamp(36px,3.5vw,48px);line-height:1.45}
.about-compact .about-intro>div:first-child p{max-width:800px;line-height:1.85}
.about-compact .brand-diptych{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px;width:100%;align-items:start}
.about-compact .brand-diptych figure{display:flex;flex-direction:column;width:100%;margin:0;min-width:0}
.about-compact .brand-diptych figure img{display:block;width:100%;height:auto!important;aspect-ratio:3/2!important;object-fit:cover!important;object-position:center!important}
.about-compact .brand-diptych figure:first-child img{object-position:center 55%!important}
.about-compact .brand-diptych figcaption{margin:0;padding:18px 0 20px;min-height:94px;box-sizing:border-box;border-bottom:1px solid var(--gold);display:flex;flex-direction:column;gap:8px}
.about-compact .brand-diptych figcaption span{font-size:12px;line-height:1.5}
.about-compact .brand-diptych figcaption strong{font-size:19px;line-height:1.5;font-weight:normal}
.about-compact .brand-photo-credit{grid-column:1/-1;margin:15px 0 0!important;font-size:12px!important;line-height:1.7!important;max-width:100%}
.about-compact .compact-section{padding-top:64px;padding-bottom:64px}
.about-compact .compact-heading{max-width:800px}
.about-compact .compact-principles{gap:32px;margin-top:32px}
.about-compact .about-method{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:52px;align-items:center}
.about-compact .about-method .selected-about-figure{width:100%}
.about-compact .about-method .selected-about-figure img{width:100%;height:auto!important;aspect-ratio:3/2!important;object-fit:contain!important}
.about-compact .about-method figcaption{margin-top:12px;font-size:13px;line-height:1.7}
.about-compact .about-method h2{font-size:34px;line-height:1.4}
.about-compact .about-connect{gap:52px;align-items:center}
@media(max-width:900px){
 .about-compact .about-method{gap:30px}
 .about-compact .about-method h2{font-size:30px}
}
@media(max-width:760px){
 .about-compact .compact-section{padding-top:40px;padding-bottom:40px}
 .about-compact .about-intro>div:first-child{margin-bottom:28px}
 .about-compact .about-intro h1,html[lang="zh-CN"] .about-compact .about-intro h1{font-size:32px;line-height:1.5}
 .about-compact .brand-diptych{grid-template-columns:1fr;gap:24px}
 .about-compact .brand-diptych figure img{aspect-ratio:3/2!important}
 .about-compact .brand-diptych figcaption{min-height:0;padding:14px 0 16px}
 .about-compact .brand-diptych figcaption strong{font-size:18px}
 .about-compact .brand-photo-credit{margin:0!important}
 .about-compact .compact-principles{gap:22px}
 .about-compact .about-method,.about-compact .about-connect{grid-template-columns:1fr;gap:28px}
 .about-compact .about-method h2{font-size:29px}
}
.nz-breadcrumb{padding:28px 8% 0;font-size:14px;color:var(--wine)}
.nz-photo{margin:0 0 30px}.nz-photo img{display:block;width:100%;height:auto;max-height:620px;object-fit:contain;background:var(--stone)}.nz-photo figcaption{font-size:13px;line-height:1.7;color:var(--muted);padding-top:12px}.nz-photo figcaption a{text-decoration:underline}.nz-universities{display:grid;grid-template-columns:1fr 1fr;gap:40px}.nz-universities img{height:370px;object-fit:contain}.nz-universities h2{font-size:32px}
@media(max-width:760px){.nz-universities{grid-template-columns:1fr}.nz-universities img{height:auto;max-height:450px}.nz-photo figcaption{font-size:12px}}
.photo-carousel{padding-top:45px;padding-bottom:45px}.carousel-heading{display:flex;justify-content:space-between;gap:25px;align-items:end;margin-bottom:28px}.carousel-heading p{max-width:680px}.carousel-controls{display:flex;gap:10px;flex-shrink:0}.carousel-controls button{padding:10px;width:48px;height:48px;font-size:21px}.carousel-controls button:disabled{opacity:.35;cursor:default}.carousel-controls button[hidden]{display:none}.carousel-track{overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:var(--gold) var(--stone);padding-bottom:15px;overscroll-behavior-x:contain}.carousel-rail{display:flex;gap:25px}.photo-slide{flex:0 0 calc((100% - 50px)/3);min-width:0;scroll-snap-align:start;background:#fff;border-bottom:2px solid var(--gold)}.photo-slide figure{margin:0}.photo-slide img{width:100%;height:240px;object-fit:contain;display:block;background:var(--stone)}.photo-slide figcaption{font-size:12px;line-height:1.6;padding:10px 22px;color:var(--muted)}.slide-copy{padding:12px 24px 25px}.slide-copy h3{font-size:26px;margin:12px 0}.slide-copy p{font-size:16px}.slide-copy a{color:var(--wine);text-decoration:underline;text-underline-offset:3px}.slide-copy .photo-credit{font-size:11px;line-height:1.65;overflow-wrap:anywhere;margin-top:22px}.carousel-hint{font-size:13px;color:var(--muted);margin:12px 0 0}.campus-reference-note{font-size:13px;padding-top:0;padding-bottom:25px}.photo-carousel:nth-of-type(even){background:#f1ece5}
@media(min-width:761px){.photo-carousel .photo-slide{flex-basis:calc((100% - 50px)/3.15)}}
@media(max-width:1000px) and (min-width:761px){.photo-slide{flex-basis:46%!important}}
@media(max-width:760px){.carousel-heading{align-items:start}.carousel-heading h2{font-size:28px}.carousel-controls{gap:6px}.carousel-controls button{width:42px;height:44px;min-height:44px}.photo-slide{flex-basis:88%}.carousel-rail{gap:16px}.photo-slide img{height:230px}.slide-copy{padding:8px 20px 24px}.slide-copy h3{font-size:25px}.carousel-hint{font-size:12px}}
@media(prefers-reduced-motion:reduce){.carousel-track{scroll-behavior:auto}}

@media(min-width:1001px){.photo-carousel .photo-slide{flex-basis:calc((100% - 25px)/2.2)}}
