.nav-dropdown{position:relative}
.nav-wrap{display:grid;grid-template-columns:minmax(230px,1fr) auto minmax(230px,1fr);gap:22px}
.nav-wrap .brand{min-width:0;justify-self:start}
.nav-wrap .brand img{width:52px;height:52px}
.nav-wrap .brand strong{font-size:15px;line-height:1.16;max-width:205px}
.nav-wrap .nav{margin-left:0;justify-self:center}
.nav-wrap::after{content:"";display:block}
.hero h1{font-size:clamp(40px,4.2vw,58px)}
.zh .hero h1{font-size:clamp(32px,3vw,40px);letter-spacing:-.04em;white-space:nowrap}
.zh .home-programs-title{font-size:clamp(30px,3vw,42px);letter-spacing:-.035em;white-space:nowrap}
.nav-dropdown summary{list-style:none;cursor:pointer;padding:10px 12px;font-size:14px;font-weight:700;border-radius:10px;white-space:nowrap}
.nav-dropdown summary::-webkit-details-marker{display:none}
.nav-dropdown summary::after{content:"▾";margin-left:7px;font-size:11px}
.nav-dropdown:hover summary,.nav-dropdown[open] summary,.nav-dropdown.active summary{color:var(--red);background:#fff1f1}
.nav-menu{position:absolute;top:calc(100% + 10px);left:0;min-width:245px;padding:10px;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:0 18px 45px rgba(19,33,63,.14);display:grid;z-index:80}
.nav-menu a{padding:11px 13px!important;border-radius:10px}
.nav-menu a.active{color:var(--red);background:#fff1f1}
.nav-menu .nav-menu-separator{height:1px;margin:7px 8px;background:var(--line)}
.nav-menu .nav-menu-label{padding:5px 13px 2px;color:var(--muted);font-size:10px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}
.compact-banner{height:235px;overflow:hidden}
.compact-banner img{width:100%;height:100%;object-fit:cover;object-position:center}
.compact-banner figcaption{padding:26px 20px 14px}
@media(min-width:961px){.nav-dropdown:not([open]):hover .nav-menu{display:grid}.nav-dropdown:not([open]) .nav-menu{display:none}.nav-dropdown:not([open]):hover .nav-menu{display:grid}}
@media(max-width:960px){.nav-wrap{display:flex;gap:16px}.nav-wrap::after{display:none}.nav-wrap .brand img{width:48px;height:48px}.nav-wrap .brand strong{font-size:14px;max-width:210px}.nav-wrap .nav{margin-left:auto}.nav-dropdown summary{padding:10px 12px}.nav-dropdown .nav-menu{position:static;min-width:0;margin:4px 0 4px 14px;padding:5px;border:0;border-left:2px solid #f1dada;border-radius:0;box-shadow:none}.nav-dropdown:not([open]) .nav-menu{display:none}.nav-menu .nav-menu-label{padding-top:9px}}
@media(max-width:640px){.hero h1,.zh .hero h1{font-size:38px;white-space:normal}.compact-banner{height:175px}.compact-banner figcaption{padding:22px 16px 12px}.compact-banner figcaption strong{font-size:18px}}
@media(max-width:640px){.zh .home-programs-title{font-size:32px;white-space:normal}}
