.text-label-xs{font-size:.75rem;line-height:1.5;letter-spacing:.1em}.text-label-sm{font-size:.8125rem;line-height:1.5;letter-spacing:.1em}.text-label-md{font-size:.875rem;line-height:1.5;letter-spacing:.08em}.text-body-xs{font-size:.875rem;line-height:1.7}.text-body-sm{font-size:.9375rem;line-height:1.7}.text-body-md{font-size:1rem;line-height:1.7}.text-body-lg{font-size:1.125rem;line-height:1.7}.text-display{font-size:clamp(3rem,8vw,8rem);line-height:.95;letter-spacing:-.02em}.text-heading-xl{font-size:clamp(2.5rem,6vw,5rem);line-height:1.1;letter-spacing:-.01em}.text-heading-lg{font-size:clamp(2rem,4vw,3.5rem);line-height:1.2}.text-heading-md{font-size:clamp(1.5rem,3vw,2.5rem);line-height:1.3}.text-heading-sm{font-size:clamp(1.25rem,2vw,1.875rem);line-height:1.4}@media(max-width:768px){.text-label-xs{font-size:.8125rem}.text-label-sm{font-size:.875rem}.text-body-xs{font-size:.9375rem}.text-body-sm{font-size:1rem}}.tracking-loose{letter-spacing:.1em}.tracking-wide{letter-spacing:.2em}.tracking-wider{letter-spacing:.3em}.tracking-widest{letter-spacing:.5em}@keyframes slideIn{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}

/* Liu Bowen: supplied photograph, natural proportions and responsive spacing. */
.liu-profile .liu-layout{gap:36px}
.liu-profile .liu-body{padding-top:40px;padding-bottom:56px}
.liu-profile .liu-aside{width:100%;max-width:360px;margin-inline:auto}
.liu-profile .liu-aside>div+div{margin-top:24px}
.liu-profile .liu-photo{aspect-ratio:4/5;background:#e4e0da}
.liu-profile .liu-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 50%}
img[src$="/liu-bowen-photo-v14.jpg"]{object-position:50% 50%}
@media(min-width:1024px){
 .liu-profile .liu-body{padding-top:64px;padding-bottom:80px}
 .liu-profile .liu-layout{gap:56px}
 .liu-profile .liu-aside{max-width:none;margin:0}
}
