/* Homepage-only featured course: native text over the portrait. */
.hero-wufu .hero-visual{width:66%;background:#f6f4ee}
.hero-wufu .hero-visual>a{position:relative;display:block;height:100%;width:100%;overflow:hidden}
.hero-wufu .hero-visual>a>img{width:100%;height:100%;object-fit:cover;object-position:100% 45%;display:block}
.hero-wufu .hero-visual:after{background:linear-gradient(90deg,#f6f4ee 0%,rgba(246,244,238,.95) 8%,rgba(246,244,238,.30) 27%,transparent 48%),linear-gradient(0deg,#f6f4ee,transparent 14%)}
.hero-wufu .wufu-caption{position:absolute;z-index:3;left:27%;top:31%;display:flex;flex-direction:column;align-items:flex-start;color:#254e58;text-shadow:0 1px 8px rgba(255,255,255,.75)}
.wufu-caption small{font-size:15px;color:#776038;letter-spacing:1.5px;margin-bottom:13px}
.wufu-caption strong{font-size:36px;line-height:1.42;letter-spacing:2px;font-weight:700;font-family:"Noto Serif SC","Source Han Serif SC","Songti SC","SimSun",serif}
.wufu-caption strong span{display:block;font-size:27px;letter-spacing:1px;margin-top:5px}
.wufu-caption em{font-size:14px;letter-spacing:1px;margin-top:19px;font-style:normal}
.wufu-caption .wufu-link{display:flex;align-items:center;gap:10px;margin-top:25px;padding-bottom:5px;border-bottom:1px solid #779197;font-size:14px;font-weight:600}
.hero-wufu .hero-visual>a:hover .wufu-link{color:#144858;border-color:#144858}
@media(min-width:801px) and (max-width:1180px){.hero-wufu .wufu-caption{left:25%;top:34%}.wufu-caption strong{font-size:29px}.wufu-caption strong span{font-size:24px}.wufu-caption small{font-size:13px}.wufu-caption em{font-size:12px}.wufu-caption .wufu-link{font-size:12px;margin-top:18px}}
@media(max-width:800px){.hero-wufu .hero-visual{width:100%;height:330px;margin-top:-2px}.hero-wufu .hero-visual>a>img{object-fit:cover;object-position:100% 48%}.hero-wufu .hero-visual:after{background:linear-gradient(180deg,#f6f4ee,rgba(246,244,238,.25) 10%,transparent 25%),linear-gradient(0deg,#f6f4ee,transparent 14%)}.hero-wufu .wufu-caption{left:20px;top:75px}.wufu-caption strong{font-size:27px;letter-spacing:1px}.wufu-caption strong span{font-size:21px;margin-top:4px}.wufu-caption small{font-size:11px;margin-bottom:10px;letter-spacing:1px}.wufu-caption em{font-size:12px;letter-spacing:0;margin-top:13px}.wufu-caption .wufu-link{font-size:12px;margin-top:17px;gap:7px}.wufu-caption .arrow{width:17px;height:17px}}
@media(max-width:370px){.hero-wufu .hero-visual{height:310px}.hero-wufu .wufu-caption{left:18px;top:74px}.wufu-caption strong{font-size:25px}.wufu-caption strong span{font-size:20px}}

.hero-wufu .hero-visual{max-width:1000px;right:max(0px,calc((100vw - 1600px)/2))}.hero-wufu .hero-visual>a>img{object-position:100% 25%}
@media(min-width:801px){.hero-wufu .hero-visual:after{background:linear-gradient(90deg,#f6f4ee,rgba(246,244,238,.95) 8%,rgba(246,244,238,.3) 27%,transparent 48%,transparent 94%,#f6f4ee),linear-gradient(0deg,#f6f4ee,transparent 14%)}}
@media(max-width:800px){.hero-wufu .hero-visual{right:auto;max-width:none}.hero-wufu .hero-visual>a>img{object-position:100% 25%}}
@media(min-width:501px) and (max-width:800px){.hero-wufu .hero-visual{height:58vw}.hero-wufu .hero-visual>a>img{object-position:100% 15%}.hero-wufu .wufu-caption{left:8%;top:30%}.wufu-caption strong{font-size:33px}.wufu-caption strong span{font-size:26px}}


/* Compact, unified hero: brand stays in the header, promise leads the copy. */
.hero-wufu h1{font-size:58px;line-height:1.25;letter-spacing:2px;margin-bottom:20px}
.hero-wufu h1>span{display:block}
.hero-wufu .hero-heading{font-size:25px;margin-bottom:14px}
@media(min-width:801px) and (max-width:1180px){.hero-wufu h1{font-size:46px}.hero-wufu .hero-heading{font-size:22px}}
@media(max-width:800px){
 .hero-wufu .hero-inner{padding-top:24px;padding-bottom:0;min-height:0}
 .hero-wufu .hero-copy{width:100%;text-align:left}
 .hero-wufu .eyebrow{font-size:11px;letter-spacing:1.5px;margin-bottom:12px}
 .hero-wufu h1{font-size:32px;line-height:1.3;letter-spacing:1px;margin-bottom:9px;white-space:nowrap}
 .hero-wufu h1>span{display:inline}
 .hero-wufu .hero-heading{font-size:18px;line-height:1.55;margin-bottom:9px}
 .hero-wufu .hero-desc{font-size:12px;line-height:1.6;margin:0;max-width:none}
 .hero-wufu .actions{justify-content:flex-start;gap:10px;margin-top:17px;margin-bottom:0}
 .hero-wufu .button{font-size:13px;padding:11px 17px;min-height:44px}
 .hero-wufu .hero-visual{height:310px;margin-top:5px}
 .hero-wufu .wufu-caption{top:73px}
}
@media(max-width:370px){.hero-wufu h1{font-size:29px}.hero-wufu .hero-inner{padding-top:21px}.hero-wufu .hero-visual{height:290px}.hero-wufu .wufu-caption{top:69px}.hero-wufu .button{padding-inline:14px}}
@media(min-width:501px) and (max-width:800px){.hero-wufu .hero-visual{height:420px;max-height:55vw}.hero-wufu .wufu-caption{top:29%}.hero-wufu h1{font-size:38px}}

/* Desktop: expand the full institution name on one line. */
@media(min-width:801px){.hero-wufu h1{white-space:nowrap}.hero-wufu h1>span{display:inline}}
