/* Reading hierarchy: compact layout, legible text. */
:root{--type-page:24px;--type-section:20px;--type-item:17px;--type-body:16px;--type-meta:14px;--type-caption:12px}
body{font-size:16px}
header{height:70px}
.brand-wordmark strong{font-size:20px}.brand-wordmark small{font-size:11px}
.header-nav button,.header-nav #aboutHeader{font-size:15px;padding:9px 0}.header-nav i{font-size:12px}
#portfolioMain,#courseMain{height:calc(100dvh - 118px);min-height:680px}
.view-head{min-height:56px;padding:10px 12px}.view-head .surface-title{font-size:21px}.view-head p{font-size:14px}
.medium-strip{padding:8px 10px;gap:10px;align-items:flex-start}
.medium-label{font-size:15px;line-height:36px}
#mediumNav{gap:3px 5px}#mediumNav button{font-size:15px;min-height:36px;padding:6px 9px;gap:6px}#mediumNav small{font-size:12px}
#stage{min-height:450px}.orb-corner{font-size:12px}.orbit-label{display:none}#stage .top-left{font-size:14px}
.bottom-bar p,footer,footer .text-button{font-size:13px}.controls button{font-size:15px}.controls output{font-size:14px}
.collection-content h2,#mediumTitle,.group-header h2,.art-info h2,.about-content h2{font-size:22px;line-height:1.4}
.collection-content>p,#mediumDescription,#mediumCount,.group-header>p,#groupSource{font-size:14px;line-height:1.65}
.group-header .eyebrow{font-size:12px}
.close{height:36px;min-width:78px;font-size:15px;line-height:24px}
.collection-content h2,#mediumTitle,.group-header h2{margin-right:94px}
.group-card .folder-name{font-size:17px}.group-card .folder-count{font-size:13px}.group-card .folder-subtitle,.group-card .folder-open{font-size:14px}
#mediumCards .folder-name{font-size:15px}#mediumCards .folder-count{font-size:12px}#mediumCards .folder-subtitle,#mediumCards .folder-open{font-size:13px}
.cards-more{font-size:15px;padding:10px 22px}
.course-cover strong{font-size:18px}.course-cover-copy p,.course-cover-copy small{font-size:14px}#courseBack{font-size:14px}#courseImageTitle{font-size:21px}
#viewer[open]{grid-template-columns:minmax(0,1fr) 280px}#artDescription,.about-content p,.about-content details{font-size:15px;line-height:1.8}
.art-info .title-note,.art-info dl,#artTags span{font-size:13px}#aboutDialog{max-width:620px;max-height:70dvh}
@media(max-width:720px){
 header{height:auto}.brand-wordmark strong{font-size:18px}.brand-wordmark small{font-size:10px}
 .header-nav{gap:17px}.header-nav button,.header-nav #aboutHeader{font-size:14px}
 #portfolioMain,#courseMain{height:auto;min-height:0}
 .view-head .surface-title{font-size:20px}.view-head p{font-size:13px}
 .medium-strip{gap:2px;padding:7px 8px}.medium-label{font-size:14px;line-height:24px}
 #mediumNav button{font-size:14px;min-height:35px;padding:6px 7px}#mediumNav small{font-size:11px}
 #stage{height:560px;min-height:560px}#stage .top-left{font-size:13px}
 .collection-content h2,#mediumTitle,.group-header h2{font-size:21px}
 #mediumCards .folder-name{font-size:14px}#mediumCards .folder-count,#mediumCards .folder-open{font-size:12px}
 #viewer[open]{grid-template-columns:1fr}.art-info{padding:20px}
}
