:root { --ink:#090909; --surface:#101010; --surface-2:#171717; --surface-3:#202020; --line:#303030; --muted:#a6a6a6; --soft:#d4d4d4; --paper:#f5f3ed; --paper-2:#e8e5dc; --yellow:#ffe500; --yellow-2:#e2cf00; --lime:#b7ed43; --red:#ff6f61; --sans:Arial,Helvetica,sans-serif; --mono:Arial,Helvetica,sans-serif; --serif:Arial,Helvetica,sans-serif; }
* { box-sizing:border-box; }
html { background:var(--ink); scroll-behavior:smooth; }
body { margin:0; color:var(--paper); background:var(--ink); font-family:var(--sans); font-size:14px; line-height:1.5; overflow-x:hidden; }
a { color:inherit; text-decoration:none; }
button,input { font:inherit; }
button { cursor:pointer; }
img { display:block; max-width:100%; }
.shell { width:min(1240px,calc(100% - 56px)); margin:0 auto; }
.shell-narrow { width:min(760px,calc(100% - 48px)); margin:0 auto; }
.kicker,.eyebrow { font:500 10px/1.2 var(--mono); letter-spacing:.11em; text-transform:uppercase; color:var(--yellow); }
.kicker i { width:7px; height:7px; display:inline-block; border-radius:99px; background:var(--yellow); margin:0 7px 1px 6px; }
.eyebrow { display:flex; gap:10px; color:var(--yellow-2); margin-bottom:11px; }
.eyebrow span { padding-left:10px; border-left:1px solid #656565; color:#9b9b9b; }
.up { color:var(--lime)!important; }
.down { color:var(--red)!important; }
.rule { height:1px; background:var(--line); }
.button { display:inline-flex; align-items:center; justify-content:center; gap:15px; padding:13px 17px; font-size:14px; font-weight:700; border:1px solid transparent; transition:.2s ease; }
.button-primary { color:#090909; background:var(--yellow); }
.button-primary:hover { background:#fff27e; transform:translateY(-1px); }
.button-ghost { color:var(--paper); border-color:#686868; }
.button-ghost:hover { border-color:var(--yellow); color:var(--yellow); }
.text-link { display:inline-flex; gap:8px; font-weight:700; font-size:13px; align-items:center; }
.text-link span { color:var(--yellow); font-size:18px; line-height:0; transition:.2s ease; }
.text-link:hover span { transform:translateX(4px); }

/* Navigation */
.tape { background:#1a1a1a; border-bottom:1px solid #333; overflow:hidden; white-space:nowrap; }
.tape-inner { display:flex; width:max-content; min-width:100%; justify-content:center; align-items:center; gap:22px; min-height:33px; padding:0 20px; font:10px var(--mono); color:#d4d4d4; }
.tape-label { color:#fff; font-weight:700; letter-spacing:.12em; }
.tape-item strong { color:#fff; font-weight:500; margin-right:5px; }.tape-item em { font-style:normal; margin-left:5px; }.tape-note { color:#777; font-size:9px; }
.site-header { position:relative; z-index:20; background:#090909; border-bottom:1px solid var(--line); }
.nav-row { height:77px; display:flex; align-items:center; gap:44px; }
.brand { display:flex; align-items:center; gap:9px; flex-shrink:0; font-size:24px; letter-spacing:-1.5px; font-weight:700; line-height:1; }
.brand>span:last-child>span { color:var(--yellow); font-weight:500; }
.brand-mark { height:28px; width:28px; display:inline-block; flex:0 0 28px; overflow:hidden; border-radius:6px; }
.brand-mark img { height:100%; width:100%; object-fit:cover; }
.main-nav { display:flex; gap:24px; align-items:center; flex:1; }.main-nav a { color:#aeaeae; font-size:13px; font-weight:600; padding:29px 0 25px; border-bottom:3px solid transparent; transition:.2s; }.main-nav a:hover,.main-nav a.is-active { color:#fff; border-color:var(--yellow); }
.nav-actions { display:flex; align-items:center; gap:13px; margin-left:auto; }.icon-button { padding:0; border:0; background:transparent; color:#fff; font-size:27px; line-height:1; height:32px; width:30px; }.watch-button { border:1px solid #5a5a5a; padding:8px 10px; font-size:12px; font-weight:700; }.watch-button span { color:var(--yellow); font-size:17px; vertical-align:-1px; }.menu-toggle { display:none; font-size:19px; }
.search-panel { border-top:1px solid var(--line); padding:17px 0; background:#121212; }.search-form { display:flex; align-items:center; gap:12px; }.search-form label { font-weight:700; font-size:13px; }.search-form input { flex:1; background:#0a0a0a; border:1px solid #555; color:#fff; padding:11px 12px; border-radius:0; }.search-form button,.large-search button,.symbol-form button { padding:11px 17px; border:0; font-weight:700; background:var(--yellow); color:#111; }.mobile-nav { display:none; }

/* Home */
.hero { min-height:300px; display:grid; grid-template-columns:minmax(0,1fr) 352px; gap:70px; padding:66px 0 58px; align-items:center; }.hero-copy h1 { max-width:700px; font:700 clamp(40px,4.5vw,54px)/1.04 var(--serif); letter-spacing:-.035em; margin:15px 0 18px; }.hero-copy>p { color:#c6c6c6; max-width:520px; font-size:16px; line-height:1.5; margin:0; }.hero-actions { display:flex; gap:12px; margin-top:25px; }.hero-side { position:relative; background:#171717; padding:24px 25px 20px; border:1px solid #3b3b3b; overflow:hidden; }.hero-side:after { content:''; width:150px; height:150px; border:1px solid #414141; border-radius:99px; position:absolute; right:-48px; bottom:-65px; }.hero-side-top { display:flex; justify-content:space-between; color:#d7d7d7; font:10px var(--mono); letter-spacing:.1em; }.hero-side-top b { color:#111; background:var(--yellow); padding:3px 5px; font-size:9px; }.pulse-number { margin:26px 0 7px; font:700 50px/.9 var(--serif); letter-spacing:-.05em; color:var(--yellow); }.pulse-number span { font-size:24px; }.hero-side p { margin:0 0 23px; max-width:250px; font-size:13px; color:#cdcdcd; }.pulse-scale { display:flex; gap:5px; }.pulse-scale i { height:6px; flex:1; background:#535353; }.pulse-scale .active { background:var(--yellow); }.pulse-labels { display:flex; justify-content:space-between; font:9px var(--mono); color:#898989; margin-top:7px; }
.feature-grid { padding:58px 0; display:grid; grid-template-columns:minmax(0,1.45fr) minmax(260px,.86fr) minmax(220px,.70fr); gap:29px; }.lead-image { aspect-ratio:1.52; overflow:hidden; display:block; background:#242424; }.lead-image img,.article-image img { width:100%; height:100%; object-fit:cover; transition:transform .55s ease; }.lead-story:hover img,.article-card:hover img { transform:scale(1.04); }.lead-story .eyebrow { margin-top:20px; }.lead-story h2 { font:700 clamp(27px,3vw,34px)/1.08 var(--serif); letter-spacing:-.025em; margin:0 0 12px; }.lead-story>p { color:#bbb; font-size:14px; max-width:620px; margin:0 0 15px; }.byline { color:#909090; font-size:11px; }.byline span { padding:0 4px; color:#6c6c6c; }.secondary-stories { display:flex; flex-direction:column; gap:28px; }.article-card { min-width:0; }.article-image { display:block; overflow:hidden; background:#282828; aspect-ratio:1.5; }.article-copy { padding-top:15px; }.article-card h3 { font:700 20px/1.16 var(--serif); letter-spacing:-.015em; margin:0 0 9px; }.article-card h3 a:hover,.lead-story h2 a:hover { color:var(--yellow); }.article-card p { color:#ababab; font-size:13px; line-height:1.45; margin:0 0 12px; }.article-card.compact { display:grid; grid-template-columns:104px 1fr; gap:14px; border-bottom:1px solid var(--line); padding-bottom:23px; }.article-card.compact .article-image { aspect-ratio:1; align-self:start; }.article-card.compact .article-copy { padding:0; }.article-card.compact h3 { font-size:18px; }.article-card.compact p { display:none; }.article-card.compact .eyebrow { margin-bottom:6px; font-size:9px; }.side-brief { background:var(--yellow); color:#101010; padding:23px 22px; }.side-brief .kicker { color:#494000; }.side-brief h2 { font:700 24px/1.05 var(--serif); letter-spacing:-.025em; margin:12px 0 22px; }.side-brief ol { list-style:none; margin:0 0 18px; padding:0; }.side-brief li { display:grid; grid-template-columns:24px 1fr; gap:8px; border-top:1px solid #afa200; padding:13px 0; font-size:13px; line-height:1.2; font-weight:700; }.side-brief li span { font:10px var(--mono); color:#766a00; padding-top:2px; }.side-brief .text-link span { color:#101010; }
.market-widget { padding:51px 0 62px; }.market-widget-head { display:flex; justify-content:space-between; align-items:flex-end; margin-bottom:23px; }.market-widget h2,.section-heading h2 { font:700 32px/1 var(--serif); letter-spacing:-.04em; margin:9px 0 0; }.market-cards { display:grid; grid-template-columns:repeat(4,1fr); border:1px solid #3d3d3d; }.market-card { min-height:123px; padding:18px; display:flex; gap:12px; align-items:center; justify-content:space-between; border-right:1px solid #3d3d3d; }.market-card:last-child { border:0; }.market-card span { display:block; color:#bdbdbd; font-size:11px; font-weight:600; }.market-card strong { display:block; margin:5px 0; font:600 23px/1.1 var(--mono); letter-spacing:-.08em; }.market-card em { display:block; font:10px var(--mono); font-style:normal; }.mini-chart { width:86px; height:54px; color:var(--lime); }.mini-chart.negative { color:var(--red); }.mini-chart polyline { fill:none; stroke:currentColor; stroke-width:3; vector-effect:non-scaling-stroke; }
.split-section { display:grid; grid-template-columns:minmax(0,1fr) 291px; gap:60px; padding:64px 0 83px; }.section-heading { display:flex; justify-content:space-between; align-items:flex-end; margin-bottom:29px; }.news-list { border-top:1px solid #3b3b3b; }.article-card.horizontal { display:grid; grid-template-columns:204px 1fr; gap:21px; padding:20px 0; border-bottom:1px solid #3b3b3b; }.article-card.horizontal .article-image { aspect-ratio:1.43; }.article-card.horizontal .article-copy { padding:0; }.article-card.horizontal h3 { font-size:25px; }.article-card.horizontal .eyebrow { margin-bottom:7px; }.sector-list { padding-top:9px; }.sector-list h2 { font:700 28px/1 var(--serif); letter-spacing:-.04em; margin:9px 0 22px; }.sector-row { display:flex; justify-content:space-between; padding:14px 0; border-top:1px solid #3b3b3b; color:#d5d5d5; font-size:13px; }.sector-row em { font:11px var(--mono); font-style:normal; }.sector-list>p { margin:11px 0; font:10px var(--mono); color:#777; }
.dark-band { background:#1a1a1a; padding:61px 0 66px; border-top:1px solid #333; border-bottom:1px solid #333; }.three-up { display:grid; grid-template-columns:repeat(3,1fr); gap:23px; }.article-card.dark .article-copy { padding-top:15px; }.article-card.dark h3 { font-size:25px; }.report-promo { padding:80px 0; display:grid; grid-template-columns:1fr 300px; align-items:center; gap:80px; }.report-promo h2 { font:700 clamp(35px,4vw,53px)/1 var(--serif); letter-spacing:-.05em; margin:12px 0 15px; max-width:650px; }.report-promo p { color:#bbb; margin:0 0 24px; max-width:470px; }.report-cover { width:225px; aspect-ratio:.77; justify-self:end; background:var(--yellow); color:#111; display:flex; flex-direction:column; padding:22px; box-shadow:13px 13px 0 #3d3d3d; }.report-cover span,.report-cover i { font:10px var(--mono); font-style:normal; font-weight:bold; }.report-cover b { font:700 31px/.92 var(--serif); letter-spacing:-.05em; margin:auto 0; }.report-cover i { border-top:1px solid #938700; padding-top:9px; }

/* Hubs and listings */
.page-shell { min-height:70vh; padding:66px 0 85px; }.page-intro { max-width:730px; margin-bottom:41px; }.page-intro.tight { margin-bottom:30px; }.page-intro h1 { margin:12px 0; font:700 clamp(44px,6vw,70px)/.97 var(--serif); letter-spacing:-.055em; }.page-intro p { font-size:17px; color:#bdbdbd; max-width:630px; margin:0; }.category-filter { display:flex; gap:9px; flex-wrap:wrap; padding-bottom:30px; border-bottom:1px solid #393939; }.category-filter a,.market-tabs button { border:1px solid #4a4a4a; background:transparent; color:#cfcfcf; padding:7px 10px; font-size:12px; font-weight:600; }.category-filter a:hover,.category-filter a.selected,.market-tabs button.selected { border-color:var(--yellow); background:var(--yellow); color:#111; }.all-stories { display:grid; grid-template-columns:minmax(0,1fr) 260px; gap:45px; padding-top:34px; }.story-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:39px 26px; }.story-grid .story-featured { grid-column:span 2; display:grid; grid-template-columns:1.2fr 1fr; gap:25px; border-bottom:1px solid #3a3a3a; padding-bottom:36px; }.story-grid .story-featured .article-image { aspect-ratio:1.38; }.story-grid .story-featured .article-copy { align-self:center; }.story-grid .story-featured h3 { font-size:36px; }.newsletter-block { align-self:start; background:#262626; padding:23px; position:sticky; top:20px; }.newsletter-block h2 { font:700 31px/1 var(--serif); letter-spacing:-.04em; margin:11px 0; }.newsletter-block p { color:#bcbcbc; font-size:13px; }.stacked-email { display:flex; flex-direction:column; gap:8px; margin:19px 0 12px; }.stacked-email input { width:100%; border:1px solid #656565; padding:11px; background:#121212; color:#fff; }.newsletter-block small { color:#929292; font-size:10px; line-height:1.3; display:block; }

/* Markets */
.market-tabs { display:flex; gap:7px; overflow:auto; padding-bottom:32px; }.market-tabs button { white-space:nowrap; }.index-grid { display:grid; grid-template-columns:repeat(3,1fr); border:1px solid #3c3c3c; margin-bottom:62px; }.index-card { min-height:160px; padding:21px; display:flex; justify-content:space-between; align-items:center; border-right:1px solid #3c3c3c; border-bottom:1px solid #3c3c3c; }.index-card:nth-child(3n) { border-right:0; }.index-card:nth-last-child(-n+3) { border-bottom:0; }.index-card span { color:#cacaca; display:block; font-size:12px; }.index-card b { display:block; font:600 28px/1.2 var(--mono); letter-spacing:-.08em; margin:9px 0 5px; }.index-card em { display:block; font:10px var(--mono); font-style:normal; }.index-card .mini-chart { width:110px; height:65px; }.markets-layout { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:54px; }.quote-table { border-top:1px solid #3c3c3c; }.quote-head,.quote-line { display:grid; grid-template-columns:1.35fr 1fr .8fr 1fr; align-items:center; gap:10px; }.quote-head { padding:10px 0; color:#888; text-transform:uppercase; font:9px var(--mono); letter-spacing:.09em; }.quote-line { border-top:1px solid #313131; padding:14px 0; transition:.2s; }.quote-line:hover { background:#171717; padding-left:10px; padding-right:10px; }.quote-line b,.quote-line small { display:block; }.quote-line b { font:500 14px var(--mono); }.quote-line small { color:#929292; margin-top:3px; font-size:11px; }.quote-line>span:nth-child(2) { font:13px var(--mono); }.quote-line em { font:11px var(--mono); font-style:normal; }.range-line { width:100%; height:5px; background:#555; position:relative; }.range-line i { display:block; height:5px; width:54%; margin-left:20%; background:var(--yellow); }.market-calendar { background:#202020; padding:22px; align-self:start; }.market-calendar h2 { font:700 29px/1 var(--serif); letter-spacing:-.04em; margin:9px 0 17px; }.market-calendar>div { display:grid; grid-template-columns:38px 1fr; gap:11px; border-top:1px solid #444; padding:14px 0; font-size:12px; }.market-calendar b { color:var(--yellow); font:10px var(--mono); }.market-calendar small { color:#999; font:10px var(--mono); }.market-calendar .text-link { margin-top:8px; }

/* Quote */
.quote-page { padding:30px 0 83px; }.breadcrumbs { display:flex; gap:8px; color:#969696; font-size:12px; margin-bottom:29px; }.breadcrumbs a { color:var(--yellow); }.quote-hero { display:flex; align-items:flex-end; justify-content:space-between; border-bottom:1px solid #414141; padding-bottom:28px; }.quote-hero h1 { font:700 48px/.95 var(--serif); letter-spacing:-.05em; margin:9px 0 16px; }.quote-hero h1 small { color:#919191; font:500 17px var(--mono); letter-spacing:-.06em; }.quote-price { font:500 31px/1.1 var(--mono); letter-spacing:-.09em; }.quote-price em { font:11px var(--mono); margin-left:10px; letter-spacing:-.03em; font-style:normal; }.quote-hero p { color:#888; font:10px var(--mono); margin:8px 0 0; }.watch-toggle { border:1px solid #686868; color:#fff; background:transparent; padding:11px 13px; font-size:12px; font-weight:700; }.watch-toggle:hover,.watch-toggle.is-saved { border-color:var(--yellow); color:var(--yellow); }.quote-layout { display:grid; grid-template-columns:minmax(0,1.8fr) 280px; gap:47px; padding:49px 0 65px; }.quote-chart-box h2,.quote-stats h2 { font:700 27px/1 var(--serif); letter-spacing:-.04em; margin:0; }.chart-top { display:flex; justify-content:space-between; align-items:center; }.chart-top>div:first-child span { display:block; color:#888; font:10px var(--mono); margin-top:6px; }.periods { display:flex; gap:4px; }.periods button { color:#b1b1b1; background:transparent; border:0; padding:4px 5px; font:10px var(--mono); }.periods button.selected { color:#111; background:var(--yellow); }.big-chart { height:320px; color:var(--lime); position:relative; margin-top:20px; border-bottom:1px solid #4a4a4a; background:repeating-linear-gradient(to bottom,transparent 0,transparent 79px,#272727 80px); }.big-chart.negative { color:var(--red); }.big-chart>span { position:absolute; top:6px; right:0; color:#898989; font:10px var(--mono); }.big-chart svg { height:276px; width:100%; overflow:visible; }.big-chart .line { fill:none; stroke:currentColor; stroke-width:3; vector-effect:non-scaling-stroke; }.big-chart .area { fill:url(#chartFill); }.chart-axis { display:flex; justify-content:space-between; color:#888; font:10px var(--mono); }.quote-stats { border-top:2px solid var(--yellow); padding-top:16px; }.quote-stats h2 { margin-bottom:14px; }.quote-stats>div { border-top:1px solid #343434; padding:12px 0; display:flex; justify-content:space-between; gap:8px; font-size:11px; color:#9f9f9f; }.quote-stats b { color:#ececec; text-align:right; font-weight:600; }.quote-news { border-top:1px solid #3d3d3d; padding-top:53px; }

/* Article and utility */
.article-page { padding-top:64px; }.article-heading { text-align:center; }.article-heading .kicker { display:inline-block; }.article-heading h1 { font:700 clamp(44px,6vw,76px)/.99 var(--serif); letter-spacing:-.055em; margin:14px auto 19px; max-width:920px; }.article-dek { color:#bdbdbd; font-size:20px; line-height:1.35; max-width:690px; margin:0 auto 25px; }.article-meta { display:flex; justify-content:center; align-items:center; gap:12px; flex-wrap:wrap; color:#999; font-size:12px; padding-bottom:38px; }.article-meta b { color:#eee; }.share { color:#eee; font-size:11px; border:1px solid #555; background:transparent; padding:6px 9px; }.article-hero { margin:0; }.article-hero img { height:min(66vh,670px); width:100%; object-fit:cover; }.article-hero figcaption { width:min(1240px,calc(100% - 56px)); margin:7px auto 0; color:#777; font-size:10px; }.article-content-wrap { display:grid; grid-template-columns:42px minmax(0,1fr); gap:24px; padding-top:48px; padding-bottom:71px; }.article-tools { display:flex; flex-direction:column; gap:9px; }.article-tools a { display:grid; place-items:center; height:30px; width:30px; border:1px solid #555; color:#ccc; font:10px var(--mono); }.article-content { font-size:18px; color:#d5d5d5; line-height:1.67; }.article-content p { margin:0 0 26px; }.article-content .dropcap:first-letter { float:left; color:var(--yellow); font:700 72px/.7 var(--serif); padding:12px 7px 0 0; }.article-content h2 { color:#fff; font:700 34px/1.02 var(--serif); letter-spacing:-.04em; margin:43px 0 15px; }.article-callout { border-left:4px solid var(--yellow); background:#1c1c1c; padding:20px 23px; margin:35px 0; }.article-callout span { color:var(--yellow); font:10px var(--mono); letter-spacing:.1em; }.article-callout p { font:700 21px/1.27 var(--serif); color:#fff; letter-spacing:-.02em; margin:8px 0 0; }.article-content .disclosure { color:#969696; font-size:12px; border-top:1px solid #494949; padding-top:19px; }.related { border-top:1px solid #3c3c3c; padding-top:58px; padding-bottom:80px; }.policy-page { min-height:65vh; padding:80px 0; }.policy-page h1,.empty-page h1 { font:700 58px/1 var(--serif); letter-spacing:-.05em; margin:12px 0 17px; }.policy-page .lead-copy { color:#c4c4c4; font-size:20px; line-height:1.45; }.policy-page h2 { font:700 28px/1 var(--serif); margin-top:43px; }.policy-page p { color:#c7c7c7; font-size:17px; line-height:1.65; }.policy-page p a { color:var(--yellow); }.watchlist-layout { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:50px; }.watch-list { border-top:1px solid #4b4b4b; }.watch-row { display:grid; grid-template-columns:1.5fr 1fr 1fr 35px; align-items:center; gap:10px; padding:17px 8px; border-bottom:1px solid #353535; }.watch-row:hover { background:#181818; }.watch-row b,.watch-row small { display:block; }.watch-row b { font:600 15px var(--mono); }.watch-row small { color:#929292; font-size:11px; margin-top:3px; }.watch-row>span:nth-child(2),.watch-row em { font:12px var(--mono); font-style:normal; }.watch-row button { border:0; background:transparent; color:#aaa; font-size:22px; }.watch-add { align-self:start; background:var(--yellow); color:#111; padding:23px; }.watch-add .kicker { color:#706500; }.watch-add h2 { font:700 30px/1 var(--serif); letter-spacing:-.04em; margin:11px 0; }.watch-add p { font-size:12px; color:#4a4300; line-height:1.45; }.symbol-form label { display:block; font-size:11px; font-weight:700; margin-bottom:6px; }.symbol-form div { display:flex; }.symbol-form input { width:100%; min-width:0; padding:10px; border:1px solid #837800; background:#fff9a7; color:#111; }.symbol-form button { padding:10px 12px; background:#111; color:#fff; }.large-search { display:flex; max-width:740px; }.large-search input { min-width:0; flex:1; background:#1e1e1e; border:1px solid #595959; color:#fff; padding:15px; font-size:16px; }.large-search button { padding:14px 23px; }.search-summary { padding:27px 0 17px; color:#aaa; font-size:13px; }.search-quotes { max-width:740px; margin-bottom:38px; }.search-quotes h2 { font:700 29px/1 var(--serif); margin:0 0 12px; }.search-quotes a { display:flex; justify-content:space-between; padding:14px 0; border-top:1px solid #404040; font-size:13px; }.search-quotes b { margin-right:6px; font-family:var(--mono); }.search-quotes em { font:11px var(--mono); font-style:normal; margin-left:6px; }.search-results { max-width:900px; }.empty-state,.empty-page { padding:80px 0; }.empty-state h2 { font:700 37px/1 var(--serif); margin:0 0 7px; }.empty-state p,.empty-page p { color:#aaa; }.empty-page { min-height:60vh; }.empty-page .button { margin-top:13px; }

/* Footer */
.site-footer { border-top:1px solid #363636; padding:49px 0 24px; background:#101010; }.footer-grid { display:grid; grid-template-columns:1.4fr .55fr .55fr 1fr; gap:38px; }.footer-grid p { color:#a8a8a8; max-width:245px; font-size:13px; line-height:1.45; }.footer-grid h3 { font:700 12px var(--mono); color:var(--yellow); margin:3px 0 16px; letter-spacing:.08em; }.footer-grid>div:not(:first-child) a { color:#d0d0d0; font-size:13px; display:block; margin:0 0 8px; }.footer-grid>div:not(:first-child) a:hover { color:var(--yellow); }.email-form { display:flex; margin-top:14px; }.email-form input { width:100%; min-width:0; padding:9px; background:#161616; border:1px solid #555; color:#fff; font-size:12px; }.email-form button { padding:8px 11px; color:#111; border:0; font-weight:700; background:var(--yellow); font-size:12px; }.legal { border-top:1px solid #373737; margin-top:42px; padding-top:18px; display:flex; justify-content:space-between; gap:20px; color:#7d7d7d; font-size:10px; }

@media (max-width:1040px) { .shell { width:min(100% - 40px,1240px); }.nav-row { gap:27px; }.main-nav { gap:16px; }.main-nav a { font-size:12px; }.hero { gap:35px; }.feature-grid { grid-template-columns:1.3fr .85fr; }.side-brief { grid-column:1/-1; display:grid; grid-template-columns:180px 1fr 160px; gap:20px; align-items:start; }.side-brief h2 { margin:9px 0 0; }.side-brief ol { display:grid; grid-template-columns:repeat(2,1fr); column-gap:22px; margin:0; }.side-brief .text-link { align-self:center; justify-self:end; }.markets-layout,.quote-layout { gap:31px; }.report-promo { gap:40px; }.footer-grid { grid-template-columns:1.3fr 1fr 1fr; }.footer-grid>div:last-child { grid-column:2/-1; } }
@media (max-width:760px) { .shell { width:calc(100% - 32px); }.shell-narrow { width:calc(100% - 32px); }.tape-inner { justify-content:flex-start; gap:17px; min-height:30px; }.tape-item:nth-of-type(n+5),.tape-note { display:none; }.nav-row { height:65px; gap:10px; }.brand { font-size:22px; }.brand-mark { width:24px; height:23px; }.main-nav,.watch-button { display:none; }.nav-actions { gap:5px; }.menu-toggle { display:block; }.mobile-nav { position:absolute; top:65px; left:0; right:0; background:#151515; border-bottom:1px solid #3b3b3b; padding:7px 16px 13px; }.mobile-nav a { display:block; padding:11px 0; font-weight:700; border-bottom:1px solid #303030; }.mobile-nav a:last-child { border:0; }.search-form { display:grid; grid-template-columns:1fr auto; }.search-form label { grid-column:1/-1; }.search-panel { padding:13px 0; }.hero { display:block; padding:50px 0 42px; }.hero-copy h1 { font-size:55px; max-width:500px; }.hero-copy>p { font-size:16px; }.hero-side { margin-top:35px; max-width:500px; }.feature-grid { display:block; padding:37px 0; }.secondary-stories { margin-top:29px; }.side-brief { display:block; margin-top:29px; }.side-brief h2 { margin:10px 0 16px; }.side-brief ol { display:block; }.side-brief .text-link { margin-top:5px; }.market-widget { padding:40px 0 43px; }.market-widget h2,.section-heading h2 { font-size:28px; }.market-cards { display:flex; overflow:auto; border-right:1px solid #3d3d3d; margin-right:-16px; }.market-card { min-width:219px; min-height:116px; }.split-section { display:block; padding:44px 0 56px; }.article-card.horizontal { grid-template-columns:118px 1fr; gap:14px; }.article-card.horizontal h3 { font-size:20px; }.article-card.horizontal p { display:none; }.sector-list { margin-top:42px; }.dark-band { padding:43px 0; }.three-up { grid-template-columns:1fr; gap:29px; }.report-promo { grid-template-columns:1fr 145px; gap:21px; padding:55px 0; }.report-promo h2 { font-size:35px; }.report-cover { width:130px; padding:13px; box-shadow:7px 7px 0 #3d3d3d; }.report-cover b { font-size:20px; }.report-cover i { font-size:8px; }.page-shell { padding:47px 0 60px; }.page-intro { margin-bottom:29px; }.page-intro h1 { font-size:49px; }.page-intro p { font-size:16px; }.category-filter { padding-bottom:22px; }.all-stories { display:block; padding-top:27px; }.story-grid { grid-template-columns:1fr; gap:31px; }.story-grid .story-featured { grid-column:auto; display:block; padding-bottom:0; border:0; }.story-grid .story-featured .article-copy { padding-top:15px; }.story-grid .story-featured h3 { font-size:29px; }.newsletter-block { position:static; margin-top:37px; }.index-grid { grid-template-columns:1fr 1fr; margin-bottom:43px; }.index-card { min-height:137px; padding:15px; }.index-card:nth-child(3n) { border-right:1px solid #3c3c3c; }.index-card:nth-child(2n) { border-right:0; }.index-card:nth-last-child(-n+3) { border-bottom:1px solid #3c3c3c; }.index-card:nth-last-child(-n+2) { border-bottom:0; }.index-card b { font-size:21px; }.index-card .mini-chart { width:67px; height:48px; }.markets-layout { display:block; }.market-calendar { margin-top:40px; }.quote-page { padding-top:25px; }.quote-hero { display:block; }.quote-hero h1 { font-size:42px; }.watch-toggle { margin-top:21px; }.quote-layout { display:block; padding:39px 0; }.quote-stats { margin-top:42px; }.periods button:nth-child(5),.periods button:nth-child(6) { display:none; }.big-chart { height:268px; }.big-chart svg { height:228px; }.quote-news { padding-top:39px; }.article-page { padding-top:43px; }.article-heading h1 { font-size:47px; }.article-dek { font-size:17px; }.article-meta { gap:8px; padding-bottom:27px; }.article-hero img { height:290px; }.article-hero figcaption { width:calc(100% - 32px); }.article-content-wrap { display:block; padding-top:35px; }.article-tools { display:none; }.article-content { font-size:17px; }.article-content h2 { font-size:29px; }.related { padding-top:39px; padding-bottom:57px; }.policy-page { padding:57px 0; }.policy-page h1,.empty-page h1 { font-size:47px; }.watchlist-layout { display:block; }.watch-add { margin-top:35px; }.watch-row { grid-template-columns:1.3fr 1fr .85fr 28px; padding:15px 4px; }.watch-row small { max-width:100px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }.large-search input { font-size:14px; }.large-search button { padding:13px; }.footer-grid { grid-template-columns:1fr 1fr; gap:35px 20px; }.footer-grid>div:first-child { grid-column:1/-1; }.footer-grid>div:last-child { grid-column:1/-1; }.legal { display:block; line-height:1.45; }.legal span { display:block; margin-bottom:7px; } }
@media (max-width:380px) { .hero-copy h1 { font-size:48px; }.report-promo { grid-template-columns:1fr; }.report-cover { display:none; }.index-grid { grid-template-columns:1fr; }.index-card,.index-card:nth-child(3n) { border-right:0; }.index-card:nth-last-child(-n+2) { border-bottom:1px solid #3c3c3c; }.index-card:last-child { border-bottom:0; } }

/* Compact, consistent sans-serif scale inspired by modern finance desks. */
h1,h2,h3,h4,p,button,input { font-family:var(--sans); }
.market-widget h2,.section-heading h2 { font-size:24px; font-weight:700; letter-spacing:-.02em; }
.article-card.horizontal h3,.article-card.dark h3 { font-size:20px; }
.report-promo h2 { font-size:clamp(30px,3vw,40px); letter-spacing:-.03em; }
.page-intro h1 { font-size:clamp(36px,4vw,48px); letter-spacing:-.035em; }
.story-grid .story-featured h3 { font-size:28px; }
.newsletter-block h2,.market-calendar h2,.sector-list h2 { font-size:22px; letter-spacing:-.02em; }
.quote-hero h1 { font-size:38px; letter-spacing:-.03em; }
.quote-chart-box h2,.quote-stats h2 { font-size:22px; }
.quote-change { display:block; margin-top:7px; font-size:12px; font-style:normal; font-weight:700; }
.article-heading h1 { font-size:clamp(36px,4.6vw,54px); letter-spacing:-.04em; }
.article-dek { font-size:18px; }.article-content h2 { font-size:26px; }.article-callout p { font-size:18px; }.policy-page h1,.empty-page h1 { font-size:42px; }.policy-page h2 { font-size:24px; }
.article-label { color:var(--yellow); font:700 10px/1 var(--mono); letter-spacing:.12em; margin:0 0 18px!important; }
.article-source { border:1px solid #3d4851; background:#171d22; padding:16px 18px; margin:30px 0 35px; }
.article-source span { display:block; color:#8f99a2; font:700 9px/1 var(--mono); letter-spacing:.12em; margin-bottom:8px; }
.article-source a { color:var(--yellow); font-size:14px; font-weight:700; line-height:1.35; }
.article-source a:hover { color:#fff3a0; }.article-source b { margin-left:4px; }
.market-card span small,.index-card span small { color:#797979; font-size:10px; margin-left:3px; }
.tape-note { color:#8f8f8f; font-size:9px; letter-spacing:.04em; }
@media (max-width:760px) { .hero-copy h1 { font-size:40px; }.page-intro h1 { font-size:36px; }.article-heading h1 { font-size:38px; }.quote-hero h1 { font-size:33px; }.market-widget h2,.section-heading h2 { font-size:22px; }.story-grid .story-featured h3 { font-size:24px; } }

/* Denser market-desk header and card rhythm. Keo keeps its own black-and-yellow skin. */
.site-header { background:#101418; border-bottom:1px solid #303840; }
.nav-row { height:64px; gap:20px; }
.brand { font-size:23px; letter-spacing:-1.3px; }
.brand-mark { width:27px; height:27px; border-radius:5px; }
.desktop-search { display:flex; align-items:center; flex:1 1 350px; max-width:430px; height:38px; overflow:hidden; border-radius:22px; background:#2a3037; }
.desktop-search input:not([type="hidden"]) { min-width:0; flex:1; border:0; outline:0; background:transparent; color:#fff; padding:0 15px; font-size:13px; }
.desktop-search input::placeholder { color:#b5bbc3; }
.desktop-search button { align-self:stretch; width:50px; border:0; background:var(--yellow); color:#101418; font-size:20px; font-weight:700; }
.main-nav { flex:0 0 auto; gap:21px; }
.main-nav a { display:flex; height:64px; align-items:center; padding:0; color:#e5e7ea; font-size:13px; font-weight:700; border-bottom:3px solid transparent; }
.main-nav a:hover,.main-nav a.is-active { color:var(--yellow); border-color:var(--yellow); }
.nav-actions { gap:9px; }
.watch-button { border:0; padding:8px 0 8px 8px; color:#fff; font-size:12px; }
.secondary-nav { display:block; background:#171d22; border-top:1px solid #303840; border-bottom:1px solid #303840; }
.secondary-nav .shell { display:flex; align-items:center; gap:29px; min-height:43px; overflow-x:auto; white-space:nowrap; }
.secondary-nav a { color:#c9cfd5; font-size:12px; font-weight:600; }
.secondary-nav a:first-child { color:var(--yellow); }
.secondary-nav a:hover { color:#fff; }
.tape { background:#20272d; border-bottom:1px solid #343d45; }
.tape-inner { justify-content:flex-start; gap:25px; min-height:47px; padding:0; color:#cbd0d5; }
.tape-label { color:#f3f5f6; font-size:9px; }
.tape-item { display:grid; grid-template-columns:auto auto; column-gap:6px; align-items:baseline; font-size:11px; }
.tape-item strong { grid-row:1 / span 2; margin:0; color:#fff; font-size:11px; }
.tape-item em { margin:0; font-size:10px; }
.ad-slot { min-height:154px; display:grid; place-items:start center; padding-top:18px; color:#717980; font-size:9px; letter-spacing:.08em; }
.hero { min-height:0; padding:34px 0 36px; grid-template-columns:minmax(0,1fr) 300px; gap:44px; border-top:1px solid #272f36; }
.hero-copy h1 { font-size:clamp(34px,3.4vw,46px); max-width:650px; }
.hero-side { background:#1a2026; border-color:#3b4650; }
.feature-grid { padding:42px 0 54px; gap:26px; grid-template-columns:minmax(0,1.48fr) minmax(230px,.78fr) minmax(220px,.62fr); }
.lead-image { aspect-ratio:1.55; }
.lead-story h2 { font-size:30px; line-height:1.08; }
.article-card h3 { font-size:19px; line-height:1.18; }
.side-brief { background:#1b2127; color:#f3f4f5; border:1px solid #39434c; border-top:3px solid var(--yellow); padding:20px; }
.side-brief .kicker { color:var(--yellow); }
.side-brief h2 { color:#fff; font-size:23px; }
.side-brief li { border-color:#3c4650; color:#f5f6f7; }
.side-brief li span { color:var(--yellow); }
.side-brief .text-link span { color:var(--yellow); }
.market-widget { padding:44px 0 54px; }
.market-cards { border-color:#35404a; background:#161c21; }
.market-card { min-height:116px; border-color:#35404a; }
.dark-band { background:#141a1f; border-color:#303b44; }
.newsletter-block,.market-calendar { background:#1a2026; border:1px solid #39434c; }
.page-shell { padding-top:48px; }
.category-filter { gap:0; border-top:1px solid #3a444d; border-bottom:1px solid #3a444d; padding:0; overflow:auto; flex-wrap:nowrap; }
.category-filter a { border:0; border-radius:0; padding:12px 14px; background:transparent; white-space:nowrap; color:#d3d7db; }
.category-filter a:hover,.category-filter a.selected { background:transparent; color:var(--yellow); border-bottom:2px solid var(--yellow); }
.story-grid .story-featured h3 { font-size:31px; }
.quote-table { border-color:#39434c; }
.quote-line { border-color:#303a43; }
.site-footer { background:#101418; border-color:#303840; }

@media (max-width:1040px) {
  .desktop-search { max-width:310px; }
  .main-nav { gap:14px; }
  .secondary-nav .shell { gap:21px; }
}
@media (max-width:760px) {
  .nav-row { height:59px; }
  .desktop-search,.secondary-nav { display:none; }
  .mobile-nav { top:59px; background:#171d22; border-color:#39434c; }
  .mobile-nav:not([hidden]) { display:block; }
  .tape-inner { min-height:42px; gap:18px; overflow:hidden; }
  .tape-item:nth-of-type(n+5),.tape-note { display:none; }
  .ad-slot { min-height:82px; padding-top:15px; }
  .hero { padding:29px 0 31px; }
  .hero-copy h1 { font-size:35px; }
  .hero-side { margin-top:27px; }
  .feature-grid { padding-top:31px; }
  .category-filter a { padding:11px 12px; font-size:11px; }
}
