/* Shared editorial scale. Keep artwork and decorative canvas typography independent. */
:root{--type-display:clamp(44px,6.2vw,84px);--type-section:clamp(34px,4.25vw,60px);--type-body:16px;--type-meta:11px}
body{font-size:var(--type-body);line-height:1.65;-webkit-text-size-adjust:100%}
:where(h1,h2,h3){text-wrap:balance}
:where(p){text-wrap:pretty}
.nav>a{font-size:14px;line-height:1.4;padding-block:12px}
.button,.text-link{font-size:14px;line-height:1.4;min-height:44px}
.eyebrow,.section-label,.work-curated-heading .eyebrow,.studio-heading .eyebrow,.reference-gallery-heading .eyebrow,.home-parallax-content .eyebrow{font-size:11px;line-height:1.5;letter-spacing:.12em}
.hero h1{font-size:var(--type-display);line-height:1.06;letter-spacing:-.045em}
.hero h1 em{letter-spacing:inherit}
.hero-content .eyebrow{font-size:12px;line-height:1.5}
.hero-description{font-size:16px;line-height:1.7;max-width:410px;margin-block:24px}
.hero-topline,.hero-bottom,.portrait-caption{font-size:11px;line-height:1.5}
.intro-signature-statement h2{font-size:clamp(32px,3.5vw,48px);line-height:1.18;letter-spacing:-.035em}
.section-heading h2,.work-curated-heading h2,.studio-heading h2,.career-heading h2,.reference-gallery-heading h2,.toolkit-copy h2,.bio-story-grid h2,.bio-offscreen-grid h2,.services-working-grid h2,.home-parallax-content h2{font-size:var(--type-section);line-height:1.13;letter-spacing:-.035em}
.section-heading>p,.work-curated-heading p:not(.eyebrow),.intro-signature-story p,.bio-story-copy p,.bio-hero-copy>p:not(.eyebrow),.services-intro>p,.services-working-grid>p{font-size:16px;line-height:1.75;max-width:62ch}
.work-curated-heading{gap:40px;margin-bottom:44px}
.work-curated-heading .text-link{font-size:14px}
.portfolio-kicker{font-size:11px;line-height:1.5;letter-spacing:.06em;min-height:30px}
.portfolio-meta{gap:16px;padding-top:20px}
.portfolio-meta h3{font-size:clamp(24px,2.2vw,30px);line-height:1.2;letter-spacing:-.025em}
.portfolio-meta p{font-size:14px;line-height:1.65;max-width:36ch}
.portfolio-meta>span{font-size:11px;line-height:1.5;max-width:165px}
.portfolio-open>span:first-child{font-size:12px}
.portfolio-open{min-height:44px}
.work-curated-footer>span,.archive-work .work-count{font-size:11px;line-height:1.5;letter-spacing:.06em}
.work-curated-footer>a,.archive-work .filters button{font-size:14px;min-height:44px}
.archive-work .filters sup{font-size:10px}
.studio-tabs button{font-size:13px;min-height:44px}
.studio-panel-info .eyebrow{font-size:11px;line-height:1.5}
.studio-panel-info>p:not(.eyebrow){font-size:15px;line-height:1.7}
.studio-panel-info h3{font-size:30px;line-height:1.2;letter-spacing:-.025em}
.studio-tool-list,.studio-output,.studio-practice-strip,.studio-build-practice{font-size:12px;line-height:1.6}
.career-summary,.career-role-note{font-size:15px;line-height:1.7}
.career-date,.career-current-label,.career-card-bottom,.career-focus,.career-thread,.career-footer{font-size:12px;line-height:1.6}
.capability p,.process-flow p,.process-description,.bio-role-main p,.bio-role-main li,.bio-principles p,.practice-lines p,.bio-interests p,.service-lede,.service-questions p{font-size:16px;line-height:1.7}
.capability h3,.process-flow h3,.bio-principles h3{font-size:24px;line-height:1.25;letter-spacing:-.025em}
.bio-hero-copy h1,.archive-intro h1,.services-hero h1,.talk-intro h1{font-size:var(--type-display);line-height:1.08;letter-spacing:-.04em}
.archive-intro>p:not(.eyebrow),.talk-intro-heading>p{font-size:17px;line-height:1.7;max-width:52ch}
.service-copy h2{font-size:var(--type-section);line-height:1.12;letter-spacing:-.035em}
.service-scope,.service-deliverable,.bio-role-tags,.bio-role-date,.bio-facts,.services-index,.service-example-caption,.service-small-note{font-size:13px;line-height:1.65}
.service-questions summary{font-size:17px;line-height:1.5;padding-block:22px}
.contact-invitation h2{font-size:clamp(48px,6.3vw,86px);line-height:1.07;letter-spacing:-.04em}
.contact-invitation>p,.contact-note>p{font-size:16px;line-height:1.7}
.contact-link-label,.talk-footnote,.talk-location,.talk-elsewhere{font-size:12px;line-height:1.6}
.talk-field label,.talk-interests>p{font-size:14px;line-height:1.5}
.talk-field input,.talk-field textarea{font-size:16px;line-height:1.6;min-height:48px}
.talk-options button,.talk-options label{font-size:14px;min-height:44px}
footer{font-size:12px;line-height:1.6}
.project-detail .dialog-overview h2{font-size:clamp(36px,4.4vw,60px);line-height:1.1;letter-spacing:-.035em}
.project-detail .dialog-summary{font-size:16px;line-height:1.7}
.project-detail .dialog-overview .eyebrow,.project-detail .gallery-heading .eyebrow,.project-detail-outro .eyebrow,.project-detail .dialog-toolbar,.project-hero-figure>figcaption,.project-detail .gallery-heading>span,.project-pagination small{font-size:11px;line-height:1.5;letter-spacing:.06em}
.project-gallery-item figcaption{font-size:14px;line-height:1.6}
.project-gallery-item figcaption>span:first-child{font-size:11px}
.project-detail .close-dialog{min-height:44px}.project-detail .close-dialog>span:first-child,.project-image-open{font-size:12px}
.project-detail .gallery-heading h3{font-size:clamp(28px,3vw,40px);letter-spacing:-.03em}
.project-pagination strong{font-size:18px;line-height:1.35}
@media(max-width:1024px){
 .portfolio-meta{display:block}.portfolio-meta>span{display:inline-block;max-width:none;margin-top:12px}
 .hero h1{font-size:clamp(42px,6.1vw,64px)}
 .hero-description{font-size:15px;line-height:1.65}
}
@media(max-width:760px){
 :root{--type-display:clamp(38px,10vw,54px);--type-section:clamp(32px,8.5vw,42px)}
 .section-wrap{padding-inline:24px}
 .section-label{font-size:10px;line-height:1.5}
 .hero h1{font-size:clamp(34px,9.3vw,44px);line-height:1.08;letter-spacing:-.035em}
 .hero-content .eyebrow{font-size:10px;line-height:1.5;margin-bottom:14px}
 .hero-description{font-size:14px;line-height:1.65;margin-block:16px 20px;max-width:34ch}
 .hero-description br{display:none}
 .hero .button{font-size:13px;min-height:44px}
 .hero-bottom{font-size:10px;line-height:1.5;gap:12px 16px}
 .intro-signature-statement h2{font-size:32px;line-height:1.2;letter-spacing:-.025em}
 .work-curated-heading{margin-bottom:32px}
 .work-curated-heading p:not(.eyebrow),.section-heading>p{font-size:15px;line-height:1.7}
 .portfolio-kicker{font-size:10px;min-height:28px;margin-bottom:12px}
 .portfolio-meta h3{font-size:26px}.portfolio-meta p{font-size:14px}.portfolio-meta>span{font-size:11px}
 .portfolio-grid,.project-gallery-grid{gap:38px}
 .work-curated-footer{margin-top:32px}.work-curated-footer>span{font-size:10px}
 .archive-work .filters button{font-size:13px;padding:10px 15px}.archive-work .work-count{font-size:11px}
 .studio-tabs button{font-size:12px}.studio-panel-info h3{font-size:28px}
 .career-summary,.career-role-note{font-size:14px}
 .contact-invitation h2{font-size:clamp(42px,11vw,60px);letter-spacing:-.035em}
 .project-detail .dialog-toolbar{font-size:10px;gap:12px}.project-detail .dialog-toolbar>span>span{display:none}
 .project-detail .dialog-summary{font-size:15px}.project-detail .gallery-heading{align-items:start;flex-wrap:wrap}
 .project-hero-figure>figcaption{font-size:10px;letter-spacing:0}
 .project-pagination small{font-size:10px;letter-spacing:0}.project-pagination strong{font-size:16px}
 .project-detail-outro h3{font-size:30px;line-height:1.2}
}
@media(max-width:760px) and (orientation:landscape){.hero h1{font-size:clamp(28px,4.8vw,36px)}.hero-description{font-size:13px;margin-block:12px 16px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
