/* Mobile and tablet composition only. Desktop styles remain untouched. */
@media screen and (max-width:959px) {
  #han-home, #han-people { width:100%; max-width:100%; min-width:0; }
  #han-home .home-hero, #han-home .home-section, #han-home .home-programs,
  #han-home .home-invitation { padding-left:28px; padding-right:28px; }
  #han-home .home-hero::before { left:28px; }
  #han-home .home-hero-top { gap:16px; }
  #han-home .home-hero-grid { grid-template-columns:minmax(0,1.15fr) minmax(0,1fr); gap:22px; }
  #han-home .home-title { font-size:clamp(36px,5vw,46px); letter-spacing:-1.7px; }
  #han-home .home-hero-actions { flex-wrap:wrap; gap:12px 20px; }
  #han-home .home-button { min-height:44px; font-size:13px; }
  #han-home .home-text-link { display:inline-flex; align-items:center; min-height:44px; font-size:13px; }
  #han-home .home-figure { width:100%; margin-left:auto; margin-right:auto; }
  #han-home .home-figure figcaption { font-size:11px; }
  #han-home .home-evidence { grid-template-columns:repeat(3,minmax(0,1fr)); }
  #han-home .home-evidence>a, #han-home .home-evidence>a:first-child { flex-wrap:wrap; gap:12px; padding:23px 24px; }
  #han-home .home-evidence b { font-size:12px; }
  #han-home .home-evidence small { font-size:11px; line-height:1.6; }
  #han-home .home-section-head { align-items:flex-start; }
  #han-home .home-section-head h2, #han-home .home-programs h2 { font-size:28px; }
  #han-home .home-section-head>p { font-size:14px; line-height:1.8; }
  #han-home .home-frontiers { gap:22px; }
  #han-home .home-frontier-top { flex-wrap:wrap; gap:7px; }
  #han-home .home-frontier-top span:last-child { font-size:10px; letter-spacing:.7px; }
  #han-home .home-frontier>p { font-size:14px; line-height:1.8; }
  #han-home .home-projects { gap:0 15px; }
  #han-home .home-projects a { display:inline-flex; align-items:center; min-height:44px; font-size:12px; }
  #han-home .home-frontier-link { display:flex; align-items:center; min-height:44px; margin-top:8px; font-size:12px; }
  #han-home .home-program-grid { gap:28px; }
  #han-home .home-center { padding-right:27px; }
  #han-home .home-center>p, #han-home .home-program p { font-size:14px; line-height:1.8; }
  #han-home .home-center-label { flex-wrap:wrap; }
  #han-home .home-center-label>span { font-size:12px; max-width:200px; }
  #han-home .home-program-head { flex-wrap:wrap; gap:6px; }
  #han-home .home-program-head span { font-size:10px; }
  #han-home .home-program .home-text-link { font-size:13px; }
  #han-home .home-invitation p { font-size:14px; line-height:1.8; }
  #han-home .home-social { margin-left:28px; margin-right:28px; flex-wrap:wrap; gap:12px; }
  #han-home .home-social-links { flex-wrap:wrap; gap:10px 20px; }
  #han-home .home-social-links a { min-height:44px; font-size:12px; }

  #han-people .pp-profile { padding:28px 28px 0; }
  #han-people .pp-masthead { gap:18px; align-items:flex-start; }
  #han-people .pp-eyebrow, #han-people .pp-institution { font-size:10px; letter-spacing:1.2px; }
  #han-people .pp-institution { text-align:right; }
  #han-people .pp-profile-grid { grid-template-columns:150px minmax(0,1fr); gap:28px; }
  #han-people .pp-portrait img { width:140px; height:auto; aspect-ratio:150/227; }
  #han-people .pp-portrait figcaption { font-size:12px; }
  #han-people .pp-location { font-size:11px; }
  #han-people #pp-name { font-size:56px; letter-spacing:-2px; }
  #han-people .pp-professorship { font-size:19px; }
  #han-people .pp-departments, #han-people .pp-directorship { font-size:14px; line-height:1.6; }
  #han-people .pp-thesis { font-size:29px; line-height:1.22; }
  #han-people .pp-thesis br, #han-people .pp-research h3 br { display:initial; }
  #han-people .pp-intro { font-size:14px; line-height:1.85; }
  #han-people .pp-links { gap:9px 18px; }
  #han-people .pp-links a { min-height:44px; font-size:13px; }
  #han-people .pp-research { gap:22px; }
  #han-people .pp-research-item+.pp-research-item { padding-left:20px; }
  #han-people .pp-direction-number { font-size:10px; letter-spacing:1px; }
  #han-people .pp-research p { font-size:14px; line-height:1.8; }
  #han-people .pp-leadership-item { padding:30px 28px; }
  #han-people .pp-leadership p { font-size:14px; line-height:1.8; }
  #han-people .pp-leadership a { min-height:44px; font-size:13px; }
  #han-people .pp-recognition { padding:28px; }
  #han-people .pp-recognition-heading { align-items:flex-start; }
  #han-people .pp-recognition-heading p { font-size:12px; }
  #han-people .pp-honors { grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 22px; }
  #han-people .pp-honors li { font-size:13px; line-height:1.6; }
  #han-people .pp-background { font-size:12px; }
  #han-people .pp-section-label { padding:28px 12px 16px; }
  #han-people .pp-roster-panel>.index-box { padding:24px; }
  #han-people .pp-roster-panel>.index-box>div:not(.index-cols) { padding:0 !important; }
  /* Let individual members share grid rows instead of retaining desktop groups. */
  #han-people .pp-current-grid, #han-people .pp-alumni-grid { display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 28px; }
  #han-people .pp-current-grid>div, #han-people .pp-alumni-grid>.index-cols { display:contents; }
  #han-people .pp-current-grid>div>div, #han-people .pp-alumni-grid .index-col { min-width:0; margin:0; padding:12px 0 16px !important; border-bottom:1px solid #dce2dc; text-align:left; }
  #han-people .pp-current-grid>div>div>div { white-space:normal !important; }
  #han-people .pp-current-grid>div>div>div:first-child { display:flex; align-items:center; justify-content:flex-start; min-height:44px; margin-bottom:2px !important; font-size:17px !important; line-height:1.4 !important; }
  #han-people .pp-current-grid>div>div>div:nth-child(2) { font-size:12px !important; line-height:1.6 !important; letter-spacing:.35px !important; }
  #han-people .pp-current-grid>div>div>div:nth-child(3) { display:none; }
  #han-people .pp-current-grid a { display:inline-flex; align-items:center; justify-content:flex-start; min-height:44px; margin:0; padding:0; text-align:left; }
  #han-people .pp-alumni-grid .index-col { display:flex; flex-direction:column; align-items:flex-start; }
  #han-people .pp-roster-panel .index-col h2 { min-height:0; font-size:17px; overflow-wrap:anywhere; }
  #han-people .pp-roster-panel .underh2 { min-height:0; font-size:14px; line-height:1.75; }
  #han-people .pp-alumni-grid .readmore { margin-top:auto; }
  #han-people .pp-roster-panel .readmore a { display:inline-flex; align-items:center; justify-content:flex-start; min-height:44px; margin:0; padding:0; font-size:13px; line-height:1.5; text-align:left; }
}

@media screen and (max-width:799px) {
  #han-home .home-frontiers { grid-template-columns:1fr; gap:26px; }
  #han-home .home-frontier { padding-top:21px; }
  #han-home .home-frontier h3 { font-size:27px; }
  #han-home .home-frontier>p { margin-bottom:16px; }
  #han-home .home-projects { padding-top:7px; }
  #han-home .home-section-head { display:block; }
  #han-home .home-section-head>p { max-width:100%; margin-top:16px; }
  #han-home .home-program-grid { grid-template-columns:1fr; }
  #han-home .home-center { padding:0 0 27px; border-right:0; border-bottom:1px solid #4a5b5f; }
  #han-home .home-center h3 { max-width:none; }
  #han-home .home-program-head { justify-content:flex-start; gap:9px 20px; }
  #han-home .home-invitation { grid-template-columns:1fr; gap:20px; }
  #han-home .home-invitation>.home-button { justify-self:start; }
  #han-people .pp-research { grid-template-columns:1fr; gap:20px; }
  #han-people .pp-research-item+.pp-research-item { padding:20px 0 0; border-left:0; border-top:1px solid #d7ded9; }
  #han-people .pp-research h3 { font-size:23px; }
  #han-people .pp-leadership { grid-template-columns:1fr; }
  #han-people .pp-recognition-heading { display:block; }
  #han-people .pp-recognition-heading p { margin-top:8px; }
}

@media screen and (max-width:699px) {
  #han-home .home-hero, #han-home .home-section, #han-home .home-programs,
  #han-home .home-invitation { padding:28px 22px; }
  #han-home .home-hero::before { left:22px; }
  #han-home .home-hero-top { display:block; margin-bottom:23px; }
  #han-home .home-edition { display:block; margin-top:7px; font-size:9px; }
  #han-home .home-hero-grid { grid-template-columns:minmax(0,1fr); gap:26px; }
  #han-home .home-title { font-size:clamp(32px,9vw,46px); line-height:1.075; letter-spacing:-1.4px; }
  #han-home .home-lead { max-width:100%; margin-top:20px; font-size:14px; line-height:1.85; }
  #han-home .home-hero-actions { gap:10px 19px; margin-top:22px; }
  #han-home .home-figure { max-width:340px; }
  #han-home .home-evidence { grid-template-columns:1fr; }
  #han-home .home-evidence>a, #han-home .home-evidence>a:first-child { flex-wrap:nowrap; padding:23px 22px; gap:20px; border-right:0; border-bottom:1px solid var(--home-line); }
  #han-home .home-evidence strong, #han-home .home-evidence strong.home-funding { flex:0 0 98px; font-size:38px; letter-spacing:-1.5px; }
  #han-home .home-evidence small { margin-top:4px; }
  #han-home .home-section-head { margin-bottom:25px; }
  #han-home .home-section-head h2, #han-home .home-programs h2 { font-size:28px; line-height:1.2; letter-spacing:-.6px; }
  #han-home .home-frontier-top { margin-bottom:13px; }
  #han-home .home-center-label { gap:10px 15px; }
  #han-home .home-center h3 { font-size:24px; line-height:1.25; }
  #han-home .home-invitation h2 { font-size:27px; line-height:1.2; }
  #han-home .home-social { margin:0 22px; padding-top:21px; gap:12px; }
  #han-home .home-social>span { width:100%; font-size:10px; }
  #han-home .home-social-links { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); width:100%; gap:10px 13px; }
  #han-home .home-social-links a { font-size:12px; gap:8px; }
}

@media screen and (max-width:599px) {
  #han-people .pp-profile { padding:25px 22px 0; }
  #han-people .pp-masthead { flex-wrap:wrap; gap:8px; margin-bottom:24px; }
  #han-people .pp-institution { text-align:left; }
  #han-people .pp-profile-grid { grid-template-columns:minmax(0,1fr); gap:30px; }
  #han-people .pp-portrait { display:grid; grid-template-columns:100px minmax(0,1fr); gap:10px 23px; width:100%; margin:0; }
  #han-people .pp-portrait img { grid-row:1 / 3; width:100px; height:152px; box-shadow:6px 6px 0 #e5e9e3; }
  #han-people .pp-portrait figcaption { align-self:end; margin:0; font-size:12px; line-height:1.7; }
  #han-people .pp-location { align-self:start; padding-top:9px; font-size:11px; line-height:1.65; }
  #han-people #pp-name { font-size:52px; margin-bottom:14px; }
  #han-people .pp-thesis { font-size:clamp(24px,5.9vw,29px); margin-top:25px; letter-spacing:-.5px; }
  #han-people .pp-links { gap:8px 16px; }
  #han-people .pp-research { margin-top:27px; }
  #han-people .pp-leadership-item, #han-people .pp-recognition { padding:28px 22px; }
  #han-people .pp-leadership h2 { font-size:28px; }
  #han-people .pp-honors { grid-template-columns:1fr; }
  #han-people .pp-roster-panel>.index-box { padding:22px; }
  #han-people .pp-current-grid, #han-people .pp-alumni-grid { grid-template-columns:minmax(0,1fr); gap:0; }
  #han-people .pp-roster-panel .index-col h2 { font-size:19px; }
  #han-people .pp-roster-panel .underh2 { margin-bottom:2px; }
}

@media screen and (max-width:399px) {
  #han-home .home-hero, #han-home .home-section, #han-home .home-programs,
  #han-home .home-invitation { padding-left:20px; padding-right:20px; }
  #han-home .home-hero::before { left:20px; }
  #han-home .home-evidence>a, #han-home .home-evidence>a:first-child { padding-left:20px; padding-right:20px; gap:15px; }
  #han-home .home-evidence strong, #han-home .home-evidence strong.home-funding { flex-basis:88px; font-size:35px; }
  #han-home .home-social { margin-left:20px; margin-right:20px; }
  #han-home .home-social-links a { font-size:11px; gap:6px; }
  #han-people .pp-profile { padding-left:20px; padding-right:20px; }
  #han-people .pp-portrait { gap:10px 17px; }
  #han-people .pp-portrait figcaption { font-size:11px; }
  #han-people .pp-location { font-size:10px; }
}
