/* Canonical typography. Role tokens apply to all six languages and all sections. */
:root{--type-display:clamp(3.5rem,7.1vw,6.125rem);--type-section:clamp(2.25rem,4.2vw,3.5rem);--type-card:clamp(1.25rem,1.7vw,1.5rem);--type-body:1rem;--type-ui:.9375rem;--type-label:.75rem;--type-brand:clamp(1.25rem,2.5vw,2.25rem);--type-credential:clamp(.6875rem,1.15vw,1.0625rem)}
body{font-family:'DM Sans',Arial,sans-serif;font-size:var(--type-body);line-height:1.65}
.hero h1{font-size:var(--type-display)!important;line-height:1.02!important;letter-spacing:-.055em!important;font-weight:450}
main h2,#organizations h2,.process-heading,.section-heading h2,#about h2,#contact h2{font-size:var(--type-section)!important;line-height:1.15!important;letter-spacing:-.035em!important;font-weight:500!important}
main h3,.folder-card h3,.process-layer h3,#about .credentials h3,.research h3{font-size:var(--type-card)!important;line-height:1.35!important;letter-spacing:-.02em!important;font-weight:500!important}
main p,.hero .lead,#about .about-text,.folder-card p,.process-layer p,#about .credentials p{font-size:var(--type-body)!important;line-height:1.7!important;letter-spacing:0!important}
header nav a,.languages summary,.languages a,.button,.hero .button,.header-actions .button,.field label,#contact input,#contact select,#contact textarea,.float-label strong,footer>span,footer>a:last-child{font-size:var(--type-ui)!important;line-height:1.45!important;letter-spacing:0!important}
.eyebrow,.hero .eyebrow,.hero-location,.hero-bottom a,.quantum-caption,.folder-tab,.process-number,.research article>span,#organizations .brand-attribution,#about .credentials .credentials-label,#contact .form-note{font-size:var(--type-label)!important;line-height:1.6!important;letter-spacing:.08em!important}
.hero-introduction .professional-title{font-size:var(--type-card)!important;line-height:1.4!important;letter-spacing:-.015em!important}
header .brand,footer .brand{font-family:'DM Sans',Arial,sans-serif!important;font-size:var(--type-brand)!important;font-weight:700!important;line-height:1.15!important;letter-spacing:-.035em!important;white-space:nowrap!important;display:inline-flex!important;align-items:baseline!important;gap:8px!important}
header .brand span,footer .brand span{font-size:var(--type-credential)!important;font-weight:500!important;line-height:1.15!important;letter-spacing:0!important;margin:0!important;vertical-align:baseline!important}
#about>.credentials>div{grid-template-columns:100px minmax(0,1fr) 28%}.skills-grid .folder-card{min-height:265px!important}.folder-card h3{overflow-wrap:anywhere}.process-object .process-layer{min-height:395px}.research h3{max-width:1000px}.section{padding-top:96px;padding-bottom:96px}.section-heading{margin-bottom:40px}
@media(max-width:1000px){.process-object .process-layer{min-height:340px}.section{padding-top:72px;padding-bottom:72px}}
@media(max-width:800px){#about>.credentials>div{grid-template-columns:80px minmax(0,1fr)}#about .credentials>div>p{grid-column:2}}
@media(max-width:600px){:root{--type-brand:clamp(1.25rem,5.6vw,1.6875rem);--type-credential:.6875rem}.skills-grid{grid-template-columns:1fr!important;gap:38px!important}.skills-grid .folder-card{min-height:0!important;padding:28px!important}.process-object .process-layer{min-height:0}.hero-introduction .professional-title{max-width:95%}.hero .sculpture{top:530px}.hero{min-height:1060px}.section{padding-top:60px;padding-bottom:60px}.section-heading{margin-bottom:30px}}
.quantum-caption{bottom:8%!important}
