/* Shared editorial type system. Loaded last so page-specific legacy rules
   cannot give the same text role a different size or paragraph rhythm. */
:root{--type-sans:Arial,Helvetica,sans-serif;--type-body:16px;--type-leading:1.65;--type-caption:13px;--type-title:clamp(32px,4vw,56px);--type-feature:clamp(28px,3vw,40px);--type-section:24px;--type-card:18px}
body:not(.cover-page){font-family:var(--type-sans);font-size:var(--type-body);line-height:var(--type-leading)}
body:not(.cover-page) main p,body:not(.cover-page) .archive-intro p{font-family:var(--type-sans)!important;font-size:var(--type-body)!important;font-weight:400!important;font-style:normal!important;line-height:var(--type-leading)!important;letter-spacing:normal!important;margin-block:0 1em;text-wrap:pretty}
body:not(.cover-page) main p:last-child{margin-bottom:0}
body:not(.cover-page) main h1,body:not(.cover-page) .archive-intro h1{font:400 var(--type-title)/1.1 var(--type-sans)!important;letter-spacing:-.035em!important;text-wrap:balance}
body:not(.cover-page) .section-feature h2{font:400 var(--type-feature)/1.15 var(--type-sans);letter-spacing:-.025em;text-wrap:balance}
body:not(.cover-page) :is(.story-overview,.story-section,.store-directory,.about-bio,.next-project) :is(h2,h3){font:400 var(--type-section)/1.3 var(--type-sans);letter-spacing:-.02em;text-wrap:balance}
body:not(.cover-page) #projects.unified-work .project h3,body:not(.cover-page) .store-caption strong{font:400 var(--type-card)/1.35 var(--type-sans);letter-spacing:-.015em}
body:not(.cover-page) main :is(.feature-meta,.selection-count,.project-caption p),body:not(.cover-page) :is(figcaption,.archive-item span,.store-caption>span,.store-meta,footer small){font:400 var(--type-caption)/1.5 var(--type-sans)!important;letter-spacing:normal!important}
body:not(.cover-page) main :is(.feature-label,.eyebrow){font:400 11px/1.5 var(--type-sans)!important;letter-spacing:.1em!important;text-transform:uppercase}
body:not(.cover-page) .story-premise{max-width:62ch}
body:not(.cover-page) .index-note{margin-bottom:32px}
body:not(.cover-page) :is(.feature-link,.back-link,.story-section a,.store-directory-links a,.about-bio-action a){font-family:var(--type-sans);font-size:14px;line-height:1.5;font-weight:400;letter-spacing:normal}
.editorial-header nav{font:400 12px/1.5 var(--type-sans)}
.header-contact{font:400 13px/1.5 var(--type-sans)}
@media(max-width:650px){.editorial-header nav{font-size:11px}.header-contact{font-size:11px}}
body:not(.cover-page) .index-row em{font:400 var(--type-caption)/1.5 var(--type-sans);letter-spacing:normal}

/* Custom arrow artwork avoids platform-dependent emoji rendering. */
svg.gothic-arrow{display:inline-block;width:2em;height:1em;vertical-align:-.12em;margin-left:.22em;overflow:visible;flex-shrink:0;fill:currentColor}
svg.gothic-arrow--down{transform:rotate(90deg);margin:0;width:1.25em;height:.625em}
.archive-intro>a{display:inline-flex;align-items:center;justify-content:center;min-width:64px;min-height:80px}
