/* Reading and interface copy; display headings and Lab handwritten notes retain their own type. */
@font-face{font-family:Inter;src:url('/assets/inter.ttf') format('truetype');font-weight:100 900;font-display:swap}
body{font-family:Inter,sans-serif;font-size:16px}
body :is(p,li,nav a,label,input,textarea,select,summary,small,figcaption,dt,dd,.story>span:last-child,.yt-label,.yt-action,.vp-link,.offer-audience,.vv-meta,.language-switch):where(:not(.insight-flow *)):where(:not(.hn-note)):where(:not(.hn-note *)):where(:not(h1 *)):where(:not(h2 *)):where(:not(h3 *)):where(:not(h4 *)){font-family:Inter,sans-serif!important;font-size:16px!important;line-height:1.55;letter-spacing:normal}
body>header.header,body>header.header nav,body>header.header nav>a{font-family:Inter,sans-serif!important}
.insight-flow :is(p,.flow-toolbar,.log-mark,.flow-bank>span,.flow-caption){font-family:'Space Mono',monospace!important}
.prose .hn-note,.prose .hn-note *{font-family:'fudji sans',cursive!important;font-weight:300!important}
/* Prevent older component-level monospace declarations from leaking outside the diagram. */
body :is(span,a,button,blockquote,.step,.carousel-count,.research-close):where(:not(.insight-flow *)):where(:not(.hn-note)):where(:not(.hn-note *)):where(:not(h1 *)):where(:not(h2 *)):where(:not(h3 *)):where(:not(h4 *)):where(:not(.hic-contour *)):where(:not(.hic-sample)):where(:not(.hic-sample *)){font-family:Inter,sans-serif!important}
body :is(.step,.carousel-count,.research-close,.photo-label span,.research-steps>li>span,.transition-card>div>span){font-size:16px!important}

/* Compact secondary labels; reading copy uses 16px. */
body .visao-stories .story>span:last-child{font-size:13px!important;line-height:1.4}
body :is(footer p,footer a,.footer p,.footer a,.language-switch){font-size:14px!important}
/* Compact story captions across both home container variants. */
body :is(#visao-visual,.visao-stories) .story>span:last-child{font-family:Inter,sans-serif!important;font-size:12px!important;font-weight:400;line-height:1.4;letter-spacing:normal}
/* Lab index hierarchy; article typography is intentionally excluded. */
body[data-page="lab"] .feature-copy h2{font-size:clamp(40px,4vw,58px);line-height:1.08;letter-spacing:-.035em}
body[data-page="lab"] .feature-copy>p{font-size:14px!important;line-height:1.6;max-width:46ch}
body[data-page="lab"] .byline>div{font:13px/1.5 Inter,sans-serif}
body[data-page="lab"] .byline small,body[data-page="lab"] .byline small span{font-size:12px!important;line-height:1.5}
body[data-page="lab"] .format-filter,body[data-page="lab"] .format-filter :is(label,select,span){font-size:13px!important;line-height:1.4}
body[data-page="lab"] .format-filter select{min-height:38px;padding:8px 28px 8px 12px;width:auto;max-width:100%}
@media(max-width:650px){body[data-page="lab"] .feature-copy h2{font-size:40px}body[data-page="lab"] .feature-copy>p{font-size:14px!important}}
