/* Mobile composition: preserve the approved PC art direction above 1000px. */
.menu-toggle{display:none}
.navigation-panel{display:contents}
@media(max-width:1000px){
 :root{--section-line:#bfccd3;--gutter:max(clamp(20px,5vw,40px),env(safe-area-inset-left),env(safe-area-inset-right))}
 .site-header,.detail-page .site-header{position:relative;inset:auto;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:0 16px;padding:14px var(--gutter);min-height:76px;background:#f8fafc;border-bottom:1px solid #e5eaed}
 .site-header .brand-pair{gap:10px;min-width:0}
 .site-header .wordmark,.site-header .wordmark span{font-size:27px;line-height:1;letter-spacing:-1.2px}
 .site-header .university-symbol{width:44px;height:25px;-webkit-mask-size:142px 24px;mask-size:142px 24px}
 .site-header .university-mark{min-width:44px}
 .site-header .menu-toggle{grid-column:2;grid-row:1;align-items:center;justify-content:center;gap:10px;min-height:44px;min-width:66px;padding:8px 0 8px 12px;border:0;background:none;font-size:15px;color:var(--ink)}
 .site-header[data-navigation] .menu-toggle{display:inline-flex}
 .menu-icon{width:18px;height:12px;border-block:1px solid currentColor;display:block}
 .menu-toggle[aria-expanded=true] .menu-icon{height:0;border-bottom:0}
 .site-header nav,.detail-page .site-header nav,body:not(.detail-page)>.site-header nav{grid-column:1/-1;order:3;width:100%;display:flex;flex-direction:column;align-items:stretch;gap:0;margin:14px 0 0;justify-content:start;border-top:1px solid var(--line)}
 .site-header nav a{font-size:21px;line-height:1.5;min-height:54px;padding:12px 0;border-bottom:1px solid #e5eaed;white-space:normal}
 .site-header .language{grid-column:1/-1;order:4;justify-self:start;gap:14px;margin:14px 0 0;font-size:16px}
 .site-header .language button{font-size:16px;min-width:44px;min-height:44px}
 .hero{height:auto;min-height:0;display:flex;flex-direction:column;background:#f8fafc}
 .hero-copy{order:1;width:auto;max-width:640px;margin:0 var(--gutter);padding:38px 0 0}
 .hero-copy>.eyebrow{font-size:12px;letter-spacing:.06em;white-space:normal}
 #hero-title,html[lang=en] #hero-title{font-size:clamp(34px,6vw,52px);line-height:1.22;margin:20px 0;letter-spacing:-.04em}
 .hero-description{font-size:18px;line-height:1.75;max-width:520px}
 .hero-links{margin-top:24px}
 .primary-link{min-height:48px;padding:12px 18px;font-size:16px}
 .hero .hero-art,.editorial .detail-hero .hero-art{position:relative;order:2;inset:auto;z-index:0;width:100%;height:clamp(280px,94vw,460px);opacity:1;transform:none;overflow:hidden}
 .hero .hero-art::after{height:10px}
 .hero .static-art{width:auto;height:123.76%;aspect-ratio:1672/941;left:50%;top:64%;transform:translate(-51%,-52%)}
 .hero-bottom{order:3;position:relative;inset:auto;gap:12px;margin:0;padding:10px var(--gutter) 22px;background:#fff}
 .scroll-link{font-size:14px}
 .section{padding:40px var(--gutter);border-top:1px solid var(--section-line)}
 .section-intro{margin-bottom:22px}
 .section-intro h2,.section-heading h2,.footer-main h2{font-size:32px;line-height:1.3}
 .section-heading{align-items:center;flex-direction:row;gap:20px;margin-bottom:26px}
 .section-heading h2{margin:0}
 .research-list{gap:0 28px}
 .research-item h3{font-size:23px;line-height:1.4;margin-bottom:10px}
 .research-item h3 a{display:inline-block;padding-block:5px}
 .research-detail p,.person p{font-size:17px;line-height:1.65}
 .topic-note{font-size:14px;line-height:1.6;margin-top:10px}
 .paper-journal{line-height:1.6}
 .paper h3{font-size:21px;line-height:1.5}
 .paper-authors,.catalog-authors{font-size:15px;line-height:1.8}
 .paper-authors a,.catalog-authors a{display:inline-block;padding-block:4px}
 .paper-authors span{display:inline-block}
 .people-list{gap:30px}.person h3{font-size:28px}
 .site-footer{padding:44px var(--gutter) 26px}
 .footer-main{grid-template-columns:1fr;gap:4px}
 .footer-bottom{flex-direction:column;align-items:start;gap:22px;margin-top:32px}
 .footer-bottom>a{min-height:44px;display:inline-flex;align-items:center;font-size:15px}
 .footer-lockup{gap:14px}.footer-lockup .wordmark{font-size:30px}.footer-lockup .wordmark span{font-size:27px}
 .footer-identity>p,.connected-footer .footer-identity>p{margin-left:67px;font-size:12px;max-width:none}
 .connected-footer{padding:30px var(--gutter);gap:20px}
 .connected-footer nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 24px;width:100%}
 .connected-footer nav a{min-height:44px;font-size:16px}
 /* Narrow screens reflow phrases at word boundaries, without desktop-only breaks. */
 p[data-ko]{white-space:normal}
 .editorial .detail-hero,.editorial .about-hero,.editorial .directory-hero{height:auto;min-height:0;display:flex;flex-direction:column}
 .editorial .detail-hero-copy,.editorial .about-hero .detail-hero-copy{order:1;width:auto;max-width:720px;margin:0 var(--gutter);padding:16px 0 0}
 .editorial .detail-hero-copy h1,.editorial .about-hero h1,.editorial .list-head h1{font-size:clamp(34px,6vw,48px);line-height:1.25;margin:18px 0;max-width:none;white-space:normal}
 .editorial .detail-hero .detail-deck,.editorial .about-hero .detail-deck{font-size:18px;line-height:1.75;max-width:600px}
 .editorial .detail-hero .tags{margin-top:16px;font-size:14px;line-height:1.7;max-width:none}
 .editorial .detail-hero .hero-art{height:clamp(200px,58vw,300px);margin-top:10px}
 
 .editorial .about-hero .eyebrow{margin-top:14px;font-size:12px}
 .editorial .list-head{padding-top:16px;padding-bottom:30px}
 .list-description{font-size:18px;line-height:1.75}
 .editorial .area-directory{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px;padding-bottom:44px}
 .editorial .area-card{min-height:0;padding:24px 0}
 .editorial .area-card h2{font-size:24px;line-height:1.4;margin-bottom:12px}
 .area-directory p{font-size:17px;line-height:1.65}
 .editorial .area-card-bottom{margin-top:8px;padding-top:12px;gap:14px;flex-wrap:wrap}
 .editorial .research-context,.editorial .research-questions,.editorial .about-direction,.editorial .about-approach{grid-template-columns:1fr;gap:16px;padding-block:32px}
 .editorial .research-context h2,.editorial .research-questions h2,.editorial .research-approach>h2,.editorial .about-direction h2,.editorial .about-approach h2{font-size:23px}
 .editorial .research-context p,.editorial .research-approach p,.editorial .about-approach>div,.reading-section p{font-size:17px;line-height:1.65}
 .editorial .research-questions p,.editorial .about-direction>p{font-size:21px;line-height:1.5}
 .editorial .research-approach{padding-block:32px}
 .editorial .research-approach>div{grid-template-columns:1fr;gap:24px;margin-top:16px}
 .editorial .about-approach>div{grid-template-columns:1fr;gap:20px;margin-top:0}
 .editorial .research-approach h3{font-size:21px;margin-bottom:10px}
 .editorial .related-papers{padding-block:32px}
 .editorial .related-papers>h2{font-size:26px}
 .editorial .article-next{grid-template-columns:1fr;gap:22px;padding-block:30px}
 .editorial .article-next>div>a{font-size:25px;line-height:1.45}
 .editorial .article-next .back-list{justify-self:start;min-height:44px;display:inline-flex;align-items:center}
 .editorial .about-areas{padding-block:32px}
 .editorial .about-areas h2{margin-bottom:16px}
 .editorial .about-areas .area-links{grid-template-columns:1fr;gap:4px}
 .editorial .about-areas .area-links a{font-size:17px}
 .area-links a{min-height:44px;font-size:15px;line-height:1.5}
 .about-links{padding-block:16px 36px;gap:12px 32px}.about-links a{font-size:20px}
 /* Single section rules separate topics; inner spacing keeps each heading with its text. */
 .editorial .detail-hero{border-bottom:0}
 .editorial :is(.about-direction,.about-approach,.about-areas,.participating,.research-context,.research-questions,.research-approach,.related-papers,.contact-layout,.catalog-section,.people-group-nav){border-top:1px solid var(--section-line)}
 .editorial .people-group,.editorial .article-next{border-top-color:var(--section-line)}
 .editorial .participating{padding-block:32px}
 .editorial .participating>h2{font-size:23px;margin-bottom:20px}
 .editorial .research-context p+p{margin-top:20px}
 .editorial .research-questions p+p{margin-top:16px}
 .editorial.profile-page .reading-section+.reading-section{border-top:1px solid var(--section-line);padding-top:28px}
 .editorial .people-group-nav{gap:8px 22px;flex-wrap:wrap;padding-block:16px}
 .editorial .people-group-nav a{font-size:17px}
 .editorial .people-group{grid-template-columns:1fr;gap:22px;padding-block:28px}
 .editorial .people-group>h2{font-size:24px;padding:0}
 .editorial .group-members .person-portrait{grid-template-columns:128px minmax(0,1fr);gap:24px}
 .editorial .group-members .photo-empty{width:100%}
 .editorial .group-members .person-portrait h3{font-size:28px}
 .editorial .person-portrait .role,.editorial .portrait-keywords{font-size:16px;line-height:1.7}
 .editorial .portrait-link{font-size:15px;min-height:44px;display:inline-flex;align-items:center;margin-top:8px}
 .editorial .profile-head{padding-top:16px;padding-bottom:32px}
 .editorial .profile-intro{grid-template-columns:minmax(0,1fr) 180px;gap:28px;margin-top:18px;align-items:start}
 .editorial .profile-intro h1{font-size:40px;line-height:1.2;margin-block:10px}
 .editorial .profile-intro>.photo-empty{width:100%;max-width:240px}
 .editorial .profile-affiliation{font-size:17px;line-height:1.65;margin-top:18px}
 .editorial .profile-description{font-size:18px;line-height:1.65;margin-top:20px}
 .editorial .identity-contact{gap:8px 20px;margin-top:16px}
 .editorial.profile-page .reading-layout{display:block;padding-block:30px 36px}
 .toc{position:static;margin-bottom:32px;padding:0}
 .toc nav{flex-direction:row;flex-wrap:wrap;border:0;gap:4px 8px}
 .toc a{border-left:0;border-bottom:2px solid transparent;padding:10px 8px;margin:0}
 .toc a[aria-current=location]{border-color:var(--ink)}
 .editorial .credential-columns{grid-template-columns:1fr;gap:32px}
 .editorial.profile-page .reading-section{padding-bottom:36px}
 .editorial .reading-section h2{font-size:26px;margin-bottom:16px}
 .editorial .credential-columns dd,.editorial.profile-page .timeline>div{font-size:17px}
 .editorial.contact-page .contact-layout{grid-template-columns:1fr;gap:32px;padding-block:32px}
 .contact-layout h2{font-size:25px;margin-bottom:14px}.contact-layout p{font-size:18px;line-height:1.65}
 .contact-details>div{grid-template-columns:65px minmax(0,1fr);gap:16px;padding-block:16px}
 .contact-details dd{font-size:18px;line-height:1.65}.contact-details dd a{display:inline-block;min-height:44px}
 .editorial.contact-page .contact-source{font-size:14px;line-height:1.8;padding-bottom:36px}
 .editorial.catalog-page .catalog-section{padding-top:28px;padding-bottom:44px}
 .editorial .publication-filters{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px 12px}
 .publication-filters label:first-child{grid-column:1/-1;min-width:0}
 .publication-filters label{min-width:0;gap:8px}
 .publication-filters input,.publication-filters select{font-size:16px;width:100%;min-width:0;min-height:48px}
 .publication-filters button{justify-self:start;min-height:44px}
 .editorial .catalog-paper,.paper{grid-template-columns:1fr;gap:8px;padding-block:24px}
 .catalog-year,.paper-year{font-size:14px;padding:0}
 .editorial .catalog-paper :is(h2,h3),.editorial.profile-page #publications .catalog-paper:nth-child(-n+2) h3{font-size:21px;line-height:1.5}
 .catalog-paper .paper-journal{font-size:14px;margin-bottom:8px}
 .catalog-paper .catalog-authors{margin-top:10px}
 .catalog-end{font-size:15px;line-height:1.7}
}
@media(max-width:600px){
 .research-list,.editorial .area-directory,.people-list{grid-template-columns:1fr}
 .hero-description{font-size:17px;line-height:1.75}
 .hero-copy{padding-top:28px}
 .hero-copy>.eyebrow{font-size:11px;letter-spacing:.04em}
 #hero-title,html[lang=en] #hero-title{font-size:clamp(32px,8.7vw,42px);white-space:normal}
 .hero-links{margin-top:20px}
 .editorial .profile-intro{grid-template-columns:1fr;gap:24px}
 .editorial .profile-intro>.photo-empty{width:180px;grid-row:1;aspect-ratio:4/5}
 .editorial .group-members .person-portrait{grid-template-columns:104px minmax(0,1fr);gap:20px}
 .editorial .group-members .person-portrait h3{font-size:26px}
 .editorial .portrait-keywords{font-size:15px;margin-top:8px}
 .section-heading{flex-wrap:wrap}.filter{gap:10px}.filter select{font-size:16px}
 .timeline>div{grid-template-columns:1fr;gap:6px}
 .footer-identity>p,.connected-footer .footer-identity>p{margin-left:0;font-size:12px}
}
@media(max-width:359px){
 .site-header .wordmark,.site-header .wordmark span{font-size:24px}
 .site-header .brand-pair{gap:6px}.site-header{column-gap:8px}
 .editorial .group-members .person-portrait{grid-template-columns:1fr;gap:18px}
 .editorial .group-members .photo-empty{width:128px}
 .editorial .publication-filters{grid-template-columns:1fr}
}

@media(max-width:1000px){.site-footer,.connected-footer{padding-bottom:max(26px,env(safe-area-inset-bottom))}}

/* Mobile menu overlays the page, so opening it never jumps the reading position. */
@media(max-width:1000px){
 .site-header .navigation-panel{display:block;position:absolute;left:0;right:0;top:100%;padding:0 var(--gutter) 18px;background:#f8fafc;border-bottom:1px solid #d7e0e5;box-shadow:0 18px 28px -24px #182e3540;max-height:calc(100dvh - 76px);overflow-y:auto;overscroll-behavior:contain;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-10px);transform-origin:top right}
 .site-header[data-menu-open=true] .navigation-panel{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}
 .site-header[data-menu-motion=on] .navigation-panel{transition:opacity 160ms cubic-bezier(.23,1,.32,1),transform 160ms cubic-bezier(.23,1,.32,1),visibility 0s 160ms}
 .site-header[data-menu-open=true][data-menu-motion=on] .navigation-panel{transition-duration:240ms,240ms,0s;transition-delay:0s}
 .site-header .navigation-panel nav{margin-top:0}
 .site-header .menu-icon,.site-header .menu-toggle[aria-expanded=true] .menu-icon{position:relative;height:14px;border:0}
 .menu-icon::before,.menu-icon::after{content:'';position:absolute;left:0;top:3px;width:18px;height:1px;background:currentColor}
 .menu-icon::after{top:11px}
 .menu-toggle[aria-expanded=true] .menu-icon::before{transform:translateY(4px) rotate(45deg)}
 .menu-toggle[aria-expanded=true] .menu-icon::after{transform:translateY(-4px) rotate(-45deg)}
 .site-header[data-menu-motion=on] .menu-icon::before,.site-header[data-menu-motion=on] .menu-icon::after{transition:transform 180ms cubic-bezier(.23,1,.32,1)}
}
@media(prefers-reduced-motion:reduce){
 .site-header .navigation-panel{transform:none!important;transition:none!important}
 .menu-icon::before,.menu-icon::after{transition:none!important}
}

/* Keep the introduction together to the left of the artwork on compact screens. */
.detail-intro-text{display:contents}
@media(max-width:1000px){
 .editorial .detail-hero{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);grid-template-rows:auto auto auto auto auto;column-gap:8px;padding:12px var(--gutter) 28px;align-items:center}
 .editorial .detail-hero .detail-hero-copy{display:contents}
 .editorial .detail-hero .detail-intro-text{display:block;grid-column:1;grid-row:3;min-width:0;align-self:center;padding:16px 0;z-index:1}
 .editorial .detail-hero .breadcrumbs{grid-column:1/-1;grid-row:1;margin-bottom:8px}
 .editorial .detail-hero .eyebrow{grid-column:1;grid-row:2;margin:12px 0 0;font-size:12px;z-index:1}
 .editorial .detail-hero .detail-hero-copy h1{grid-column:1;grid-row:3;align-self:center;font-size:clamp(28px,7.5vw,44px);line-height:1.3;margin:0 0 14px;max-width:none;z-index:1;text-wrap:balance}
 .editorial .detail-hero .hero-art{grid-column:2;grid-row:3;align-self:stretch;min-height:clamp(170px,42vw,280px);height:auto;width:calc(100% + var(--gutter));margin:0;transform:none;opacity:1}
 .editorial .detail-hero .hero-art{overflow:visible}
 .editorial .detail-hero #sculpture{position:absolute;top:-96px;height:calc(100% + 96px)}
 .editorial .detail-hero .static-art{left:86%;top:calc(64% - 34.56px);width:312%;height:auto}
 .editorial .detail-hero .hero-art::after{height:10px;background:linear-gradient(transparent,#f8fafc)}
 .editorial .detail-hero .detail-deck{font-size:17px;line-height:1.65;max-width:none;margin:0;z-index:1}
 .editorial .detail-hero .tags{grid-column:1/-1;grid-row:5;margin-top:14px;max-width:none;z-index:1}
}
