/* Native Apple system typography on macOS/iOS, with system fallbacks elsewhere.
   No proprietary font files are downloaded or redistributed. */
:root{
 --sans:-apple-system,BlinkMacSystemFont,"Helvetica Neue",Helvetica,Arial,sans-serif;
 --display:var(--sans);
 --paper:#f5f5f7;--ink:#1d1d1f;--muted:#6e6e73;--line:#d2d2d7;
 --type-page:80px;--type-section:48px;--type-card:28px;
 --type-body:17px;--type-small:14px;--type-caption:12px;
}
body{font-family:var(--sans);font-size:var(--type-body);line-height:1.47059;font-weight:400;letter-spacing:-.022em;font-optical-sizing:auto}
button,input,select,textarea{font-family:var(--sans);font-size:var(--type-body);font-weight:400;letter-spacing:inherit}
strong,b{font-weight:600}
h1,h2,h3,h4,h5,h6{font-family:var(--display);font-weight:600;overflow-wrap:anywhere}
h1,.board h1,.symbols h1,.symbol-page h1,.watch-page h1,.note h1,.news-heading h1{font-size:var(--type-page);line-height:1.05;letter-spacing:-.015em;font-weight:600}
h2,.news-heading h2,.company-news h2{font-size:var(--type-section);line-height:1.0835;letter-spacing:-.003em;font-weight:600}
h3{font-size:var(--type-card);line-height:1.14286;letter-spacing:.007em;font-weight:600}
/* Embedded content and cards use the smaller heading role, not the page title. */
.chart-heading h2,.event-card h2,.legal h2,.watch-heading h2,.account-page h2,.note-body h2,.board-subhead,.newsletter h2,.canvas-dialog h2{font-size:var(--type-card);line-height:1.14286;letter-spacing:.007em;font-weight:600}
.news-row h3,.watch-list>li a,.note-list-title{font-size:var(--type-card);line-height:1.14286;letter-spacing:.007em;font-weight:600}
.board-lede,.watch-lede,.note-summary,.event-card p,.legal p:not(.board-lede):not(.note-price-source),.account-page p,.note-body p,.note-body li,.side-card p{font-size:var(--type-body);line-height:1.47059;letter-spacing:-.022em}
.watch-page label,.watch-note,.symbol-name,.symbol-links,.event-card time,.event-card a,.event-links,.event-links a,.canvas-dialog-heading p,.canvas-field,.catalogue-card span,.container-menu-panel button{font-size:var(--type-small);line-height:1.42859;letter-spacing:-.016em}
.watch-page input,.watch-page button,.newsletter input,.newsletter button,.canvas-field input,.canvas-field select{font-size:var(--type-body);line-height:1.23536}
.news-meta,.news-row-bottom,.news-credit,.news-companies a,.news-topic,.section-number,.eyebrow,.symbol-group h2,.side-card h2,.content-body .side-card h2,.crumbs,.note-price-source,.note-disclaimer,.quote-source,.chart-caption,.tradingview-widget-copyright,.canvas-eyebrow,.layout-choice>span:last-child,.dashboard-bottom p{font-size:var(--type-caption);line-height:1.33337;letter-spacing:-.01em}
.news-filters button,.range-controls button,.view-controls button,.benchmark,.ticker-chips a,.symbol-code,.release-list a,.release-list time,.content-body .release-list a,.content-body .release-list time{font-size:var(--type-small);line-height:1.42859;letter-spacing:-.016em}
.site-menu{background:#fff;--logo-cutout:#fff}
.site-menu .menu-heading{background:#fff}
.site-menu .menu-heading h2,.site-menu .menu-group h3{font-size:var(--type-caption);line-height:1.33337;font-weight:400;letter-spacing:-.01em}
.site-menu .menu-group>a{font-size:28px;line-height:1.14286;font-weight:600;letter-spacing:.007em}
.site-menu nav a span,.menu-context{font-size:var(--type-small);line-height:1.42859;font-weight:400;letter-spacing:-.016em}
.site-menu nav .menu-support{font-size:var(--type-small);font-weight:400;letter-spacing:-.016em}
.site-menu .menu-legal .menu-support,.menu-signoff{font-size:var(--type-caption);line-height:1.33337}
.site-footer.directory-footer{--footer-paper:#f5f5f7;--logo-cutout:#f5f5f7;color:#6e6e73;font-size:12px;line-height:1.33337;letter-spacing:-.01em}
.directory-footer .footer-notice,.directory-footer .footer-signoff,.directory-footer .footer-bottom,.directory-footer .footer-group a,.directory-footer .footer-group summary,.directory-footer .footer-breadcrumb>span:last-child{font-size:12px;line-height:1.33337;letter-spacing:-.01em}
.directory-footer .footer-group summary{font-weight:600}
.directory-footer .footer-home{width:18px;min-height:32px;gap:0}
.directory-footer .footer-home .brand-icon{width:15px;height:19px}
/* A dashboard's narrow columns keep the same type roles at a compact size. */
@container(max-width:500px){
 .content-body .news-heading h2{font-size:32px;line-height:1.125;letter-spacing:.004em}
 .content-body .news-row h3{font-size:24px;line-height:1.16667;letter-spacing:.009em}
 .content-body .range-controls button,.content-body .news-filters button,.content-body .benchmark{font-size:14px}
 .content-body .unit-label,.content-body .news-meta{font-size:12px}
}
@container(max-width:260px){.content-body .news-row h3{font-size:21px;line-height:1.19048;letter-spacing:.011em}}
@media(max-width:1068px){:root{--type-page:64px;--type-section:40px;--type-card:24px}}
@media(max-width:734px){
 :root{--type-page:48px;--type-section:32px;--type-card:24px}
 .global-nav-bar .primary-nav a{font-size:12px;font-weight:400}
 .watch-page .news-row h3{font-size:24px;line-height:1.16667;letter-spacing:.009em}
}

/* Feed headlines share the regular body role across all news surfaces. */
.news-row h3,.content-body .news-row h3,.watch-page .news-row h3{font:400 var(--type-body)/1.47059 var(--sans);letter-spacing:-.022em;color:var(--ink);margin:4px 0}
.news-time{display:block;font:400 var(--type-caption)/1.4 var(--sans);letter-spacing:-.01em;color:var(--muted)}
