.hb-roster{--page:var(--medapt-page);--surface:var(--medapt-surface);--ink:var(--medapt-text);--body:var(--medapt-text-2);--muted:var(--medapt-muted);--line:var(--medapt-line);--blue:var(--medapt-primary);--soft:var(--medapt-surface-blue);--portrait:64px;--columns:minmax(210px, 1fr) minmax(230px, 1.15fr) 70px minmax(150px, .8fr)}.hb-roster *{box-sizing:border-box}.hb-roster{color:var(--ink);font:15px/1.5 Inter,-apple-system,BlinkMacSystemFont,segoe ui,sans-serif}.hb-roster a{color:inherit;text-decoration:none}.hb-roster a:hover{color:var(--blue);text-decoration:underline;text-underline-offset:3px}.hb-roster a:focus-visible{outline:3px solid #93b5ff;outline-offset:4px;border-radius:3px}.hb-roster h1,.hb-roster h2,.hb-roster h3,.hb-roster p,.hb-roster ul,.hb-roster dl,.hb-roster dd{margin:0}.hb-roster ul{padding:0;list-style:none}.hb-roster{width:100%;margin:0 auto}.hb-roster .page-heading{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:22px}.hb-roster h1{font-size:36px;font-weight:700;letter-spacing:-1.1px;line-height:1.15}.hb-roster .subtitle{margin-top:7px;color:var(--muted);font-size:14px}.hb-roster .jump-links{display:flex;gap:20px;color:var(--body);font-size:13px;padding-bottom:3px}.hb-roster .jump-links a{border-bottom:1px solid var(--line);padding-bottom:4px}.hb-roster .portrait{display:block;width:var(--portrait);height:var(--portrait);object-fit:cover;border-radius:8px;border:1px solid var(--line);background:#fff;flex-shrink:0}.hb-roster .portrait-link{display:block;flex-shrink:0}.hb-roster .pi{display:grid;grid-template-columns:var(--portrait)1fr auto;gap:14px;align-items:center;padding:17px 14px;background:var(--surface);border:1px solid var(--line);border-radius:9px;margin-bottom:26px}.hb-roster .eyebrow{display:block;font-size:12px;font-weight:650;letter-spacing:1px;text-transform:uppercase;color:var(--muted);margin-bottom:2px}.hb-roster .pi h2{font-size:20px;font-weight:650;line-height:1.3;letter-spacing:-.35px}.hb-roster .pi p{font-size:14px;color:var(--body);margin-top:3px}.hb-roster .dot{padding:0 7px;color:var(--muted)}.hb-roster .profiles{display:flex;gap:4px;flex-wrap:wrap;align-items:center;line-height:1}.hb-roster .profiles li{display:block}.hb-roster .profiles a{width:24px;height:25px;display:flex;align-items:center;justify-content:center;color:var(--muted);border-radius:4px}.hb-roster .profiles a:hover{color:var(--blue);background:var(--soft)}.hb-roster .profiles svg{width:16px!important;height:16px!important;display:block}.hb-roster .section-title{display:flex;gap:12px;align-items:baseline;margin-bottom:12px}.hb-roster .section-title h2{font-size:22px;font-weight:700;letter-spacing:-.6px;line-height:1.2}.hb-roster .section-title span{font-size:13px;color:var(--muted)}.hb-roster .students{margin-bottom:28px;border-top:1px solid var(--line)}.hb-roster .former-table{border-top:1px solid var(--line)}.hb-roster .table-head,.hb-roster .student,.hb-roster .alumnus{display:grid;grid-template-columns:var(--columns);column-gap:24px}.hb-roster .table-head{padding:10px 14px;background:var(--medapt-surface-soft);color:var(--muted);font-size:12px;font-weight:650;letter-spacing:.65px;text-transform:uppercase}.hb-roster .student,.hb-roster .alumnus{padding:12px 14px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:0 0;box-shadow:none;align-items:center}.hb-roster .student:hover,.hb-roster .alumnus:hover{background:var(--surface)}.hb-roster .identity{display:flex;gap:14px;align-items:center;min-width:0}.hb-roster .identity h3{font-size:15px;line-height:1.3;font-weight:650;letter-spacing:-.2px}.hb-roster .identity .profiles{margin-top:5px}.hb-roster .degree{font-size:14px;color:var(--blue);font-weight:550}.hb-roster .school{font-size:14px;color:var(--body);margin-top:3px;min-height:21px}.hb-roster .current-supervisor{font-size:14px;color:var(--body);overflow-wrap:anywhere}.hb-roster .facts{font-size:14px;color:var(--body)}.hb-roster .facts dt{color:var(--muted);font-weight:400;font-size:12px;line-height:1.25}.hb-roster .facts dd{min-width:0;overflow-wrap:anywhere;min-height:18px}.hb-roster .past .facts{display:grid;grid-template-columns:1fr 1.2fr;column-gap:12px}.hb-roster .supervisor{font-size:14px;line-height:1.45;color:var(--body);margin-top:3px;overflow-wrap:anywhere}.hb-roster .supervisor span{display:block;color:var(--muted);font-size:12px;line-height:1.4;margin-bottom:1px}.hb-roster .now{font-size:14px;line-height:1.5}.hb-roster .now p+p{margin-top:3px;color:var(--muted)}.hb-roster .years{font-size:14px;color:var(--body);min-height:22px}.hb-roster .mobile-label{display:none}@media(max-width:960px){.hb-roster{--columns:minmax(180px, 1fr) minmax(195px, 1.05fr) 48px minmax(130px, .8fr)}.hb-roster .table-head,.hb-roster .student,.hb-roster .alumnus{column-gap:16px}.hb-roster .identity{gap:10px}}@media(max-width:760px){.hb-roster{width:100%;margin:0 auto}.hb-roster .page-heading{display:block;margin-bottom:20px}.hb-roster h1{font-size:30px}.hb-roster .jump-links{margin-top:17px;gap:22px}.hb-roster .pi{grid-template-columns:var(--portrait)1fr;gap:12px;padding:14px 0;border:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);border-radius:0;background:0 0;margin-bottom:26px}.hb-roster .pi h2{font-size:18px}.hb-roster .pi .profiles{grid-column:2;margin-top:-3px}.hb-roster .dot{padding:0 3px}.hb-roster .students{margin-bottom:26px}.hb-roster .section-title h2{font-size:20px}.hb-roster .table-head{display:none}.hb-roster .student,.hb-roster .alumnus{grid-template-columns:minmax(0,1fr)minmax(100px,.85fr);gap:10px 18px;padding:15px 0;align-items:start}.hb-roster .identity{grid-column:1/-1;gap:12px}.hb-roster .identity h3{font-size:16px}.hb-roster .past,.hb-roster .education{grid-row:2;grid-column:1}.hb-roster .now,.hb-roster .current-supervisor{grid-row:2;grid-column:2;font-size:14px}.hb-roster .years{grid-column:1/-1;min-height:16px}.hb-roster .mobile-label{display:block;font-size:12px;font-weight:550;color:var(--muted);margin-bottom:5px}.hb-roster .years .mobile-label{margin-bottom:0}.hb-roster .past .facts{column-gap:10px}}.hb-roster .years{white-space:nowrap}.hb-roster .past .facts{display:block}.hb-roster .past .facts>div{display:flex;gap:8px;align-items:baseline}.hb-roster .past .facts dt{width:64px;flex-shrink:0}.hb-roster .past .facts dd{min-height:21px}.hb-roster{--columns:minmax(200px, 1fr) minmax(270px, 1.3fr) 90px minmax(160px, .9fr)}@media(max-width:960px){.hb-roster{--columns:minmax(180px, 1fr) minmax(235px, 1.1fr) 85px minmax(130px, .8fr)}}@media(max-width:760px){.hb-roster .past .facts>div{display:block}.hb-roster .years{display:flex;gap:8px}}