:root {
  --bg: #03060a;
  --bg2: #07101a;
  --panel: #09131f;
  --panel2: #0d1a29;
  --line: #16283a;
  --text: #edf4fb;
  --muted: #8da0b3;
  --blue: #0798ff;
  --blue2: #42b8ff;
  --navy: #001b31;
  --danger: #ff5a67;
  --success: #39d98a;
  --warning: #ffbd4a;
  --serif: 'EB Garamond', Georgia, 'Times New Roman', serif;
  --sans: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--bg); color: var(--text); font-family: var(--sans); }
a { color: inherit; text-decoration: none; }
button, input, textarea, select { font: inherit; }
button { cursor: pointer; }
.boot { min-height: 100vh; display:grid; place-items:center; color:var(--muted); letter-spacing:.08em; text-transform:uppercase; }
.shell { min-height: 100vh; background:
  radial-gradient(circle at 70% -10%, rgba(0,130,255,.13), transparent 35%),
  linear-gradient(180deg, #020508, #050a10 42%, #03060a); }
.topline { height: 3px; background: linear-gradient(90deg, transparent, #078eff, #37bdff, transparent); }
.masthead { max-width: 1320px; margin: auto; padding: 18px 28px 12px; display:flex; align-items:center; gap:24px; }
.brand { display:flex; align-items:center; gap:12px; min-width:max-content; }
.brand img { width:54px; height:54px; object-fit:cover; border-radius:8px; }
.brand-copy strong { font-family:var(--serif); font-size:27px; letter-spacing:-.03em; display:block; }
.brand-copy span { color:var(--muted); font-family:var(--serif); font-size:9px; font-style:italic; font-weight:500; text-transform:none; letter-spacing:.01em; }
.nav { flex:1; display:flex; justify-content:center; gap:24px; font-size:13px; font-weight:700; }
.nav a { color:#bdcbd8; }
.nav a:hover, .nav a.active { color:white; }
.nav-actions { display:flex; gap:8px; }
.icon-btn, .outline-btn, .blue-btn, .danger-btn { border:1px solid var(--line); border-radius:8px; background:#07101a; color:var(--text); padding:9px 12px; }
.blue-btn { background:var(--blue); border-color:var(--blue); color:#00101c; font-weight:800; }
.danger-btn { color:#ff8790; border-color:#52202a; }
.icon-btn:hover,.outline-btn:hover { border-color:#2d506c; }
.breaking { border-top:1px solid var(--line); border-bottom:1px solid var(--line); background:#050b11; }
.breaking-inner { max-width:1320px; margin:auto; padding:9px 28px; display:flex; gap:14px; align-items:center; overflow:hidden; font-size:12px; }
.breaking-label { color:#86d2ff; font-weight:900; text-transform:uppercase; letter-spacing:.12em; }
.breaking-text { color:#a9b9c7; white-space:nowrap; text-overflow:ellipsis; overflow:hidden; }
.demo-banner { max-width:1320px; margin:16px auto 0; padding:10px 28px; color:#b8c8d6; font-size:12px; }
.demo-banner b { color:var(--warning); }
.market-strip { max-width:1320px; margin:0 auto; padding:12px 28px; display:grid; grid-template-columns:repeat(6,1fr); gap:8px; }
.market-chip { background:#06101a; border:1px solid #112235; padding:10px 12px; border-radius:8px; display:flex; justify-content:space-between; gap:8px; }
.market-chip b { font-size:11px; }
.market-chip span { color:#6d879c; font-size:10px; }
.main { max-width:1320px; margin:auto; padding:20px 28px 60px; }
.kicker { color:#49bfff; text-transform:uppercase; font-size:10px; letter-spacing:.15em; font-weight:900; }
.hero { display:grid; grid-template-columns:minmax(0,1.7fr) minmax(300px,.75fr); gap:28px; padding:24px 0 34px; border-bottom:1px solid var(--line); }
.hero-story { padding-right:20px; }
.hero h1 { font-family:var(--serif); font-size:clamp(38px,5vw,72px); line-height:.98; letter-spacing:-.055em; margin:12px 0 18px; max-width:950px; }
.hero h1:hover { color:#d7efff; }
.hero-dek { color:#a9bbc9; font-family:var(--serif); font-size:19px; line-height:1.55; max-width:820px; }
.meta { color:#698095; font-size:11px; margin-top:18px; display:flex; flex-wrap:wrap; gap:12px; align-items:center; }
.badge { border:1px solid #16466b; color:#79caff; border-radius:999px; padding:3px 8px; font-size:9px; font-weight:900; letter-spacing:.08em; }
.latest-panel { border-left:1px solid var(--line); padding-left:24px; }
.section-title { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:15px; }
.section-title h2 { font-family:var(--serif); font-size:24px; margin:0; }
.section-title small { color:var(--muted); }
.latest-item { padding:14px 0; border-top:1px solid #102033; }
.latest-item:first-of-type { border-top:2px solid var(--blue); }
.latest-item h3 { font-family:var(--serif); margin:5px 0 7px; font-size:18px; line-height:1.15; }
.latest-item p { margin:0; color:#71899f; font-size:11px; }
.sections { padding-top:34px; display:grid; gap:42px; }
.section-block { border-top:1px solid var(--line); padding-top:18px; }
.story-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.story-card { padding-right:20px; border-right:1px solid var(--line); min-height:170px; }
.story-card:last-child { border-right:0; }
.story-card h3 { font-family:var(--serif); font-size:23px; line-height:1.08; letter-spacing:-.02em; margin:8px 0 10px; }
.story-card p { color:#8499aa; font-size:13px; line-height:1.5; }
.story-card:hover h3 { color:#bce7ff; }
.newsletter { margin:52px 0 10px; padding:28px; border:1px solid #14334e; background:linear-gradient(135deg,#071521,#04101a); display:flex; align-items:center; justify-content:space-between; gap:22px; }
.newsletter h2 { font-family:var(--serif); margin:0 0 6px; font-size:28px; }
.newsletter p { color:#8198aa; margin:0; }
.newsletter form { display:flex; min-width:min(100%,420px); }
.newsletter input { flex:1; min-width:0; background:#02070b; color:white; border:1px solid #1d3b53; border-right:0; padding:12px; }
.newsletter button { border-radius:0; }
.footer { border-top:1px solid var(--line); padding:28px; color:#71869a; }
.footer-inner { max-width:1320px; margin:auto; display:flex; align-items:center; justify-content:space-between; gap:20px; flex-wrap:wrap; }
.footer-links { display:flex; flex-wrap:wrap; gap:16px; font-size:11px; }

/* Article */
.article-wrap { max-width:900px; margin:auto; padding:54px 28px 80px; }
.article-head { border-bottom:1px solid var(--line); padding-bottom:26px; }
.article-head h1 { font-family:var(--serif); font-size:clamp(42px,6vw,72px); line-height:1; letter-spacing:-.05em; margin:12px 0 18px; }
.article-head .dek { font-family:var(--serif); color:#a8bac8; font-size:21px; line-height:1.5; }
.article-body { max-width:720px; font-family:var(--serif); font-size:19px; line-height:1.75; padding-top:28px; }
.article-body h2 { color:white; font-size:28px; line-height:1.2; margin:38px 0 12px; }
.article-body h3 { font-size:22px; }
.article-body p { color:#d1dae2; }
.article-body strong { color:white; }
.article-body a { color:#62c6ff; text-decoration:underline; }
.live-update { border-left:2px solid var(--blue); padding:6px 0 18px 20px; margin:18px 0; }
.live-update time { color:#65bff6; font-size:11px; }

/* Utility pages */
.page { max-width:900px; margin:auto; padding:58px 28px 90px; }
.page h1 { font-family:var(--serif); font-size:52px; margin-bottom:22px; }
.page h2 { font-family:var(--serif); margin-top:32px; }
.page p,.page li { color:#a7b6c3; line-height:1.75; }


/* Public light editorial theme */
.shell {
  --bg: #f7f4ee;
  --bg2: #fffdf9;
  --panel: #ffffff;
  --panel2: #f1f6fa;
  --line: #d9e0e6;
  --text: #15212b;
  --muted: #667785;
  --blue: #0b86d9;
  --blue2: #51baf3;
  --navy: #0d2a42;
  color: var(--text);
  background:
    radial-gradient(circle at 82% 0%, rgba(11,134,217,.08), transparent 28%),
    linear-gradient(180deg, #fffdf9 0%, #f8f5ef 48%, #f5f2ec 100%);
}
.shell .topline { background:linear-gradient(90deg,#0d2a42,#0b86d9,#65c7f7,#0b86d9,#0d2a42); }
.shell .masthead {
  background:rgba(255,253,249,.92);
  border-bottom:1px solid rgba(217,224,230,.8);
}
.shell .brand-copy strong { color:#12202b; }
.shell .brand-copy span { color:#6d7d89; }
.shell .nav a { color:#536674; }
.shell .nav a:hover,
.shell .nav a.active { color:#0b75ba; }
.shell .breaking {
  background:#eef7fc;
  border-top:0;
  border-bottom:1px solid #d4e8f4;
}
.shell .breaking-label { color:#0878bd; }
.shell .breaking-text { color:#536a79; }
.shell .demo-banner { color:#657582; }
.shell .market-chip {
  background:#fff;
  border-color:#dde5eb;
  box-shadow:0 3px 14px rgba(22,42,58,.035);
}
.shell .market-chip span { color:#738493; }
.shell .kicker { color:#087fca; }
.shell .hero {
  border-bottom-color:#d7dfe5;
}
.shell .hero h1 { color:#14212b; }
.shell .hero h1:hover { color:#0879be; }
.shell .hero-dek { color:#536675; }
.shell .meta { color:#7b8a96; }
.shell .badge { border-color:#a8d6ef; color:#0876b9; background:#edf8fe; }
.shell .latest-panel { border-left-color:#d7dfe5; }
.shell .latest-item { border-top-color:#dde4e9; }
.shell .latest-item h3,
.shell .story-card h3,
.shell .section-title h2 { color:#17242e; }
.shell .latest-item p { color:#7a8995; }
.shell .section-block { border-top-color:#d8e0e6; }
.shell .story-card { border-right-color:#d9e0e6; }
.shell .story-card p { color:#657684; }
.shell .story-card:hover h3 { color:#0879be; }
.shell .newsletter {
  border:1px solid #cbdde9;
  background:linear-gradient(135deg,#f0f8fd,#ffffff);
  box-shadow:0 10px 30px rgba(31,73,101,.05);
}
.shell .newsletter h2 { color:#13232f; }
.shell .newsletter p { color:#657786; }
.shell .newsletter input {
  background:#fff;
  color:#15212b;
  border-color:#bfd3df;
}
.shell .blue-btn {
  background:#0b86d9;
  border-color:#0b86d9;
  color:white;
}
.shell .footer {
  border-top-color:#d8e0e6;
  color:#72818d;
  background:#f1eee8;
}
.shell .footer-links a:hover { color:#0879be; }

/* Public article pages */
.shell .article-head { border-bottom-color:#d8e0e6; }
.shell .article-head h1 { color:#14212b; }
.shell .article-head .dek { color:#566b79; }
.shell .article-body { color:#25343f; }
.shell .article-body h2,
.shell .article-body h3,
.shell .article-body strong { color:#14212b; }
.shell .article-body p { color:#2f404c; }
.shell .article-body a { color:#087ac1; }
.shell .live-update time { color:#087ac1; }

/* Public utility pages */
.shell .page h1,
.shell .page h2 { color:#14212b; }
.shell .page p,
.shell .page li { color:#4f626f; }

@media (max-width: 940px) {
  .shell .latest-panel { border-top-color:#d7dfe5; }
}
@media (max-width: 620px) {
  .shell .story-card { border-bottom-color:#d9e0e6; }
}


/* Editorial imagery */
.hero-media { display:block; margin:18px 0 20px; overflow:hidden; border-radius:12px; }
.hero-media img { display:block; width:100%; max-height:430px; object-fit:cover; }
.story-image { width:100%; aspect-ratio:16/9; object-fit:cover; display:block; margin-bottom:12px; border-radius:9px; }
.article-featured { margin:28px 0 8px; }
.article-featured img { width:100%; max-height:560px; object-fit:cover; display:block; border-radius:12px; }
.article-tags { display:flex; flex-wrap:wrap; gap:8px; margin-top:30px; }
.article-tags span { border:1px solid #cfd9e0; background:#f7fafc; color:#536775; border-radius:999px; padding:6px 10px; font-size:11px; }
.page-copy p { color:#4f626f; line-height:1.75; margin:0 0 18px; }
.page-copy strong { color:#14212b; }


/* Clickable assets */
.article-body .asset-link {
  color:#087ac1;
  text-decoration:none;
  border-bottom:1px dotted #5eacd7;
  font-weight:600;
  white-space:nowrap;
}
.article-body .asset-link:hover {
  color:#045f99;
  border-bottom-style:solid;
  background:#eef8fd;
}
.asset-focus { margin:0 0 26px; }
.asset-focus-head { display:flex; align-items:flex-end; justify-content:space-between; gap:18px; margin-bottom:12px; }
.asset-focus-head h2 { margin:4px 0 6px; font-family:var(--serif); font-size:34px; color:#14212b; }
.asset-focus-head p { margin:0; color:#61727f; }
.asset-chart-shell { height:570px; }
.asset-chart-shell .tradingview-widget-container,
.asset-chart-shell .tradingview-widget-container__widget { height:100%; min-height:0; }

@media (max-width:620px) {
  .asset-focus-head { align-items:flex-start; flex-direction:column; }
  .asset-chart-shell { height:480px; }
}

/* Data pages */
.data-page { max-width:1180px; }
.data-head { max-width:820px; margin-bottom:24px; }
.data-head h1 { margin:6px 0 12px; }
.data-head p { color:#596d7a; line-height:1.65; font-size:16px; }
.tv-shell { background:#fff; border:1px solid #d9e2e8; border-radius:12px; padding:14px; box-shadow:0 12px 35px rgba(24,54,74,.05); overflow:hidden; }
.calendar-shell { min-height:790px; }
.tradingview-widget-container { width:100%; }
.tradingview-widget-container__widget { width:100%; min-height:680px; }
.tradingview-widget-copyright { padding:8px 2px 0; font-size:10px; color:#758693; }
.tradingview-widget-copyright a { color:#0879be; }

/* Newsroom article editor */

/* Admin */
.admin-shell { min-height:100vh; background:#020508; display:grid; grid-template-columns:240px 1fr; }
.admin-side { border-right:1px solid var(--line); padding:24px 16px; background:#040a0f; position:sticky; top:0; height:100vh; }
.admin-brand { display:flex; align-items:center; gap:8px; padding:0 8px 24px; }
.admin-brand img { width:36px; height:36px; object-fit:cover; }
.admin-brand b { font-family:var(--serif); font-size:18px; }
.admin-menu { display:grid; gap:5px; }
.admin-menu button { text-align:left; border:0; background:transparent; color:#8398a9; padding:10px 12px; border-radius:7px; }
.admin-menu button.active,.admin-menu button:hover { background:#0a1622; color:white; }
.admin-main { padding:30px; min-width:0; }
.admin-top { display:flex; justify-content:space-between; gap:20px; align-items:center; margin-bottom:26px; }
.admin-top h1 { margin:0; font-family:var(--serif); font-size:34px; }
.stats { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-bottom:24px; }
.stat { border:1px solid var(--line); background:#06101a; padding:18px; }
.stat small { color:#71879a; text-transform:uppercase; letter-spacing:.12em; font-size:9px; }
.stat strong { display:block; font-size:31px; margin-top:8px; }
.admin-panel { border:1px solid var(--line); background:#050c13; padding:20px; margin-bottom:20px; }
.admin-panel h2 { margin:0 0 15px; font-family:var(--serif); }
.table-wrap { overflow:auto; }
table { width:100%; border-collapse:collapse; font-size:12px; }
th { color:#668198; text-transform:uppercase; letter-spacing:.09em; font-size:9px; text-align:left; }
th,td { padding:11px 9px; border-bottom:1px solid #102033; vertical-align:top; }
td { color:#b5c4d0; }
.status { font-size:9px; border:1px solid #28455e; border-radius:999px; padding:3px 7px; text-transform:uppercase; }
.status.published { color:#5de6a2; border-color:#185f42; }
.status.draft { color:#ffc96a; border-color:#60491a; }
.form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.field { display:grid; gap:6px; }
.field.full { grid-column:1/-1; }
.field label { color:#748a9d; font-size:10px; text-transform:uppercase; letter-spacing:.08em; }
.field input,.field textarea,.field select { background:#02070c; border:1px solid #173047; color:#e8f0f6; padding:10px; border-radius:5px; width:100%; }
.field textarea { min-height:120px; resize:vertical; }
.actions { display:flex; gap:8px; flex-wrap:wrap; margin-top:14px; }
.toggle { display:flex; align-items:center; gap:8px; color:#9db0bf; }
.admin-login { min-height:100vh; display:grid; place-items:center; padding:24px; background:radial-gradient(circle at 50% 20%,rgba(0,126,255,.13),transparent 38%),#020508; }
.login-card { width:min(430px,100%); border:1px solid var(--line); background:#06101a; padding:30px; }
.login-card img { width:80px; height:80px; object-fit:cover; display:block; margin:0 auto 8px; }
.login-card h1 { text-align:center; font-family:var(--serif); margin:0 0 6px; }
.login-card p { text-align:center; color:#758b9d; font-size:12px; }
.login-card input { width:100%; margin:15px 0 9px; background:#02070c; color:white; border:1px solid #1d3c56; padding:12px; }
.login-card button { width:100%; }
.notice { padding:10px 12px; border:1px solid #21425e; background:#071522; color:#8dc9ee; font-size:12px; margin:10px 0; }
.notice.warn { border-color:#5a431a; color:#f0c875; background:#161105; }
.notice.good { border-color:#205f47; color:#69dfa8; background:#05150f; }
.toast { position:fixed; right:18px; bottom:18px; z-index:99; background:#0b1925; border:1px solid #21445e; padding:12px 16px; box-shadow:0 8px 30px #0008; border-radius:7px; font-size:12px; }
.empty { color:#71879a; padding:30px 0; text-align:center; }

@media (max-width: 940px) {
  .nav { display:none; }
  .masthead { justify-content:space-between; }
  .hero { grid-template-columns:1fr; }
  .latest-panel { border-left:0; padding-left:0; border-top:1px solid var(--line); padding-top:18px; }
  .story-grid { grid-template-columns:1fr 1fr; }
  .market-strip { grid-template-columns:repeat(3,1fr); }
  .admin-shell { grid-template-columns:1fr; }
  .admin-side { height:auto; position:relative; border-right:0; border-bottom:1px solid var(--line); }
  .admin-menu { display:flex; overflow:auto; }
  .stats { grid-template-columns:repeat(2,1fr); }
}
@media (max-width: 620px) {
  .masthead,.main,.market-strip,.breaking-inner { padding-left:16px; padding-right:16px; }
  .brand-copy strong { font-size:21px; }
  .brand-copy span { display:block; font-size:8px; line-height:1.15; }
  .brand img { width:43px; height:43px; }
  .story-grid { grid-template-columns:1fr; }
  .story-card { border-right:0; border-bottom:1px solid var(--line); padding:0 0 18px; }
  .market-strip { grid-template-columns:repeat(2,1fr); }
  .newsletter { display:block; padding:20px; }
  .newsletter form { margin-top:18px; min-width:0; }
  .article-wrap,.page { padding-left:18px; padding-right:18px; }
  .article-body { font-size:18px; }
  .form-grid { grid-template-columns:1fr; }
  .field.full { grid-column:auto; }
  .admin-main { padding:18px; }
  .stats { grid-template-columns:1fr 1fr; }
}


/* Cream + light blue newsroom theme */
.admin-shell {
  --admin-cream:#f6f0e6;
  --admin-cream-2:#fffaf2;
  --admin-blue:#dff1fb;
  --admin-blue-2:#edf8fe;
  --admin-line:#c9dce7;
  --admin-ink:#183244;
  --admin-muted:#6a7f8d;
  --admin-accent:#168bd2;
  background:
    radial-gradient(circle at 85% 0%, rgba(137,207,240,.28), transparent 28%),
    linear-gradient(180deg,#f9f3e9 0%,#f5efe5 100%);
  color:var(--admin-ink);
}
.admin-side {
  background:linear-gradient(180deg,#edf8fe 0%,#e7f3fa 100%);
  border-right:1px solid var(--admin-line);
  box-shadow:8px 0 30px rgba(47,91,117,.05);
}
.admin-brand b,
.admin-top h1,
.admin-panel h2,
.writer-header h2 { color:#173246; }
.admin-menu button {
  color:#607989;
  font-weight:650;
}
.admin-menu button.active,
.admin-menu button:hover {
  background:#fffaf2;
  color:#147fbe;
  box-shadow:0 4px 14px rgba(68,116,145,.08);
}
.admin-menu .outline-btn {
  background:#fffaf2;
  border-color:#bdd7e5;
  color:#376176;
}
.admin-main { background:transparent; }
.stat {
  border:1px solid var(--admin-line);
  background:rgba(255,250,242,.92);
  border-radius:12px;
  box-shadow:0 8px 24px rgba(55,89,109,.05);
}
.stat small { color:#718795; }
.stat strong { color:#173246; }
.admin-panel {
  border:1px solid var(--admin-line);
  background:rgba(255,250,242,.94);
  border-radius:14px;
  box-shadow:0 12px 32px rgba(54,88,108,.055);
}
th { color:#728794; }
th,td { border-bottom-color:#dce8ee; }
td { color:#365264; }
.status { border-color:#b9d2df; color:#4c697a; background:#f7fbfd; }
.status.published { color:#17724f; border-color:#acd7c3; background:#effaf4; }
.status.draft { color:#9a6c17; border-color:#ead39a; background:#fff9e9; }
.field label { color:#657d8b; }
.field input,
.field textarea,
.field select {
  background:#fffdf8;
  border:1px solid #bfd6e2;
  color:#1c3545;
  border-radius:8px;
}
.field input::placeholder,
.field textarea::placeholder { color:#9aabb5; }
.field input:focus,
.field textarea:focus,
.field select:focus,
.editor-panel .field input:focus,
.editor-panel .field textarea:focus,
.editor-panel .field select:focus {
  border-color:#74b8df;
  box-shadow:0 0 0 4px rgba(71,164,218,.11);
}
.toggle { color:#526f80; }
.outline-btn,
.icon-btn {
  background:#fffaf2;
  border-color:#bfd6e2;
  color:#315f76;
}
.outline-btn:hover,
.icon-btn:hover {
  border-color:#78b7da;
  background:#f3fbff;
}
.blue-btn {
  background:#168bd2;
  border-color:#168bd2;
  color:white;
  box-shadow:0 6px 16px rgba(22,139,210,.18);
}
.danger-btn {
  background:#fff8f7;
  color:#b94e59;
  border-color:#e8bec3;
}
.notice {
  border-color:#b8d9ea;
  background:#edf8fe;
  color:#39718f;
  border-radius:9px;
}
.notice.warn {
  border-color:#e7d4a8;
  color:#8a681d;
  background:#fff8e8;
}
.notice.good {
  border-color:#b9ddcb;
  color:#287657;
  background:#eef9f3;
}
.empty { color:#7b8f9b; }

/* Login matches the newsroom */
.admin-login {
  background:
    radial-gradient(circle at 50% 15%, rgba(130,202,238,.35), transparent 34%),
    linear-gradient(180deg,#f8f1e7,#eef8fd);
  color:#173246;
}
.login-card {
  border:1px solid #c7dce7;
  background:#fffaf2;
  border-radius:16px;
  box-shadow:0 24px 60px rgba(49,84,104,.12);
}
.login-card h1 { color:#173246; }
.login-card p { color:#718492; }
.login-card input {
  background:#fffdf9;
  color:#1d3748;
  border-color:#bfd7e3;
  border-radius:8px;
}
.toast {
  background:#fffaf2;
  color:#28485a;
  border-color:#bed7e3;
  box-shadow:0 10px 35px rgba(42,72,91,.16);
}


/* Garamond editorial typography */
.hero h1,
.hero-dek,
.story-card h3,
.latest-item h3,
.section-title h2,
.newsletter h2,
.article-head h1,
.article-head .dek,
.article-body,
.article-body h2,
.article-body h3,
.page h1,
.page h2,
.page-copy,
.brand-copy strong {
  font-family: var(--serif);
}

.page-copy {
  font-size: 19px;
  line-height: 1.75;
}

.page-copy p,
.page-copy li {
  font-family: var(--serif);
  font-size: 19px;
  line-height: 1.75;
}

.article-body {
  font-size: 20px;
  line-height: 1.78;
}

.hero-dek {
  font-size: 20px;
}

.story-card h3,
.latest-item h3 {
  letter-spacing: -0.015em;
}

/* Keep functional UI crisp and modern */
.nav,
.kicker,
.meta,
.badge,
.market-strip,
.market-chip,
.footer,
.footer-links,
button,
input,
textarea,
select,
.admin-shell,
.admin-menu,
.field label,
.status,
.notice,
.writer-state,
.word-count,
.format-toolbar,
.tradingview-widget-container {
  font-family: var(--sans);
}


/* Publishing actions */
.writer-actions { align-items:center; }
.publish-btn,
.save-update-btn {
  border-radius:9px;
  padding:11px 18px;
  font-weight:800;
  border:1px solid transparent;
}
.publish-btn {
  background:#168bd2;
  border-color:#168bd2;
  color:white;
  box-shadow:0 7px 18px rgba(22,139,210,.2);
}
.publish-btn:hover { background:#0f7fc4; }
.publish-btn:disabled { opacity:.65; cursor:wait; }
.save-update-btn {
  background:#fffaf2;
  border-color:#a9cddd;
  color:#2f657f;
}
.save-update-btn:hover {
  background:#eef9fe;
  border-color:#72b6d8;
}


/* X/Twitter embeds */
.tweet-embed {
  display:flex;
  justify-content:center;
  margin:30px 0;
  width:100%;
}
.tweet-embed .twitter-tweet {
  margin-left:auto!important;
  margin-right:auto!important;
  max-width:550px!important;
  width:100%!important;
}


/* Boot state */
.boot {
  min-height:100vh;
  background:#fffdf9;
  position:relative;
}
.boot::after {
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  width:46px;
  height:3px;
  border-radius:999px;
  background:linear-gradient(90deg,transparent,#51baf3,transparent);
  transform:translate(-50%,-50%);
  animation:apexBoot 1s ease-in-out infinite;
}
@keyframes apexBoot {
  0%,100% { opacity:.25; transform:translate(-50%,-50%) scaleX(.65); }
  50% { opacity:1; transform:translate(-50%,-50%) scaleX(1); }
}


/* Homepage live market tape */
.home-market-tape {
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:center;
  gap:12px;
  padding:5px 18px;
  background:#fffaf2;
  border-top:1px solid #d9e6ec;
  border-bottom:1px solid #d9e6ec;
  min-height:56px;
  overflow:hidden;
}
.market-tape-label {
  display:flex;
  align-items:center;
  gap:7px;
  color:#2d5267;
  font-family:var(--sans);
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.08em;
  white-space:nowrap;
}
.market-live-dot {
  width:7px;
  height:7px;
  border-radius:999px;
  background:#27a66f;
  box-shadow:0 0 0 4px rgba(39,166,111,.12);
}
.market-tape-widget {
  min-width:0;
  width:100%;
  overflow:hidden;
}
.home-market-tape .tradingview-widget-container,
.home-market-tape .tradingview-widget-container__widget {
  width:100%!important;
  min-height:46px!important;
  height:46px!important;
}
.home-market-tape iframe {
  display:block!important;
  width:100%!important;
  min-height:46px!important;
  height:46px!important;
  border:0!important;
}
@media (max-width:850px) {
  .home-market-tape {
    display:block;
    width:100%;
    min-height:88px;
    padding:7px 0 8px;
    overflow:hidden;
    border-bottom:1px solid #d4e2e9;
  }
  .market-tape-label { display:none; }
  .market-tape-widget {
    box-sizing:border-box;
    width:100%;
    min-height:72px;
    padding:0 8px;
    overflow:hidden;
  }
  .home-market-tape .tradingview-widget-container,
  .home-market-tape .tradingview-widget-container__widget,
  .home-market-tape iframe {
    display:block!important;
    width:100%!important;
    min-height:72px!important;
    height:72px!important;
    overflow:visible!important;
  }
}
@media (max-width:480px) {
  .home-market-tape {
    min-height:92px;
    padding:8px 0 10px;
  }
  .market-tape-widget {
    min-height:74px;
    padding:0 10px;
  }
  .home-market-tape .tradingview-widget-container,
  .home-market-tape .tradingview-widget-container__widget,
  .home-market-tape iframe {
    min-height:74px!important;
    height:74px!important;
  }
}


/* Inline article images */
.article-inline-image {
  margin:32px 0;
}
.article-inline-image img {
  display:block;
  width:100%;
  max-height:680px;
  object-fit:cover;
  border-radius:12px;
  background:#eef5f8;
}
.article-inline-image figcaption {
  margin-top:9px;
  color:#687d8a;
  font-family:var(--sans);
  font-size:12px;
  line-height:1.5;
  border-left:2px solid #a7d2e7;
  padding-left:10px;
}

/* In-app newsroom toast */
.apex-toast {
  position:fixed;
  top:22px;
  right:22px;
  z-index:99999;
  display:flex;
  align-items:center;
  gap:11px;
  min-width:280px;
  max-width:min(420px,calc(100vw - 32px));
  padding:13px 15px;
  border:1px solid #b8d9ea;
  border-radius:12px;
  background:rgba(255,250,242,.98);
  color:#24485b;
  box-shadow:0 18px 45px rgba(42,72,91,.18);
  backdrop-filter:blur(12px);
  opacity:0;
  transform:translateY(-10px) scale(.98);
  transition:opacity .2s ease, transform .2s ease;
  pointer-events:none;
  font-family:var(--sans);
}
.apex-toast.show {
  opacity:1;
  transform:translateY(0) scale(1);
}
.apex-toast-icon {
  width:30px;
  height:30px;
  flex:0 0 30px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:#e6f7ef;
  color:#17724f;
  font-weight:800;
}
.apex-toast > div {
  display:grid;
  gap:2px;
}
.apex-toast b {
  color:#173246;
  font-size:12px;
}
.apex-toast span:last-child {
  color:#637b89;
  font-size:11px;
}
@media (max-width:600px) {
  .apex-toast {
    top:14px;
    left:16px;
    right:16px;
    min-width:0;
    max-width:none;
  }
}


/* Contact page */
.contact-page {
  max-width:1180px;
  margin:auto;
  padding:58px 28px 90px;
}
.contact-head {
  max-width:760px;
  padding-bottom:34px;
  border-bottom:1px solid var(--line);
}
.contact-head h1 {
  margin:10px 0 12px;
  font-family:var(--serif);
  font-size:clamp(48px,6vw,76px);
  line-height:.96;
  letter-spacing:-.05em;
  color:#14212b;
}
.contact-head p {
  margin:0;
  max-width:680px;
  font-family:var(--serif);
  font-size:21px;
  line-height:1.55;
  color:#596c79;
}
.contact-grid {
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(380px,1.1fr);
  gap:56px;
  align-items:start;
  padding-top:42px;
}
.contact-details {
  display:grid;
  gap:16px;
}
.contact-card {
  display:block;
  padding:24px;
  border:1px solid #d5dfe6;
  background:rgba(255,255,255,.72);
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.contact-card:hover {
  transform:translateY(-2px);
  border-color:#9ecce6;
  box-shadow:0 12px 32px rgba(33,70,94,.07);
}
.contact-card h2 {
  margin:8px 0 10px;
  font-family:var(--serif);
  font-size:26px;
  line-height:1.08;
  color:#14212b;
  overflow-wrap:anywhere;
}
.contact-card p {
  margin:0 0 18px;
  color:#627582;
  line-height:1.55;
  font-size:13px;
}
.contact-arrow {
  color:#087fca;
  font-size:12px;
  font-weight:800;
}
.contact-note {
  margin:6px 0 0;
  color:#7a8994;
  font-size:12px;
  line-height:1.55;
}
.contact-form {
  padding:30px;
  border:1px solid #cbdde8;
  background:linear-gradient(145deg,#ffffff,#f3f9fc);
  box-shadow:0 18px 50px rgba(30,67,92,.07);
}
.contact-form-head {
  padding-bottom:22px;
  margin-bottom:24px;
  border-bottom:1px solid #dae5eb;
}
.contact-form-head h2 {
  margin:7px 0 8px;
  font-family:var(--serif);
  font-size:34px;
  line-height:1.05;
  color:#14212b;
}
.contact-form-head p {
  margin:0;
  color:#6d7e89;
  font-size:13px;
  line-height:1.55;
}
.contact-form-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:16px;
}
.contact-form-grid label {
  display:grid;
  gap:7px;
  color:#50636f;
  font-size:11px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.07em;
}
.contact-form-grid .full { grid-column:1/-1; }
.contact-form input,
.contact-form select,
.contact-form textarea {
  width:100%;
  border:1px solid #c7d5de;
  background:#fff;
  color:#1a2a35;
  padding:12px 13px;
  border-radius:6px;
  outline:none;
  text-transform:none;
  letter-spacing:normal;
  font-weight:500;
}
.contact-form textarea {
  min-height:150px;
  resize:vertical;
  line-height:1.5;
}
.contact-form input:focus,
.contact-form select:focus,
.contact-form textarea:focus {
  border-color:#62b7e7;
  box-shadow:0 0 0 3px rgba(11,134,217,.09);
}
.contact-submit {
  margin-top:18px;
  min-width:150px;
}
.contact-submit:disabled {
  opacity:.65;
  cursor:wait;
}
.contact-form-status {
  min-height:18px;
  margin-top:10px;
  color:#4f6573;
  font-size:12px;
}
.contact-hp {
  position:absolute !important;
  left:-10000px !important;
  width:1px !important;
  height:1px !important;
  overflow:hidden !important;
}

/* Contact messages in newsroom */
.contact-inbox {
  display:grid;
  gap:14px;
}
.inbox-message {
  padding:18px 0;
  border-bottom:1px solid var(--line);
}
.inbox-message:last-child { border-bottom:0; }
.inbox-message-head {
  display:flex;
  justify-content:space-between;
  gap:18px;
  align-items:flex-start;
}
.inbox-message-head > div {
  display:grid;
  gap:3px;
}
.inbox-message-head a {
  color:#5faeda;
  font-size:12px;
}
.inbox-message-head span {
  color:var(--muted);
  font-size:11px;
  white-space:nowrap;
}
.inbox-message h3 {
  margin:13px 0 7px;
  font-size:15px;
}
.inbox-message p {
  margin:0;
  color:#aebdca;
  white-space:pre-wrap;
  line-height:1.6;
  font-size:13px;
}
.empty-state {
  padding:30px 0;
  color:var(--muted);
  text-align:center;
}

@media (max-width: 860px) {
  .contact-grid {
    grid-template-columns:1fr;
    gap:30px;
  }
}
@media (max-width: 640px) {
  .contact-page { padding:34px 20px 64px; }
  .contact-form { padding:22px; }
  .contact-form-grid { grid-template-columns:1fr; }
  .contact-form-grid .full { grid-column:auto; }
  .inbox-message-head { display:grid; gap:7px; }
}


/* Social distribution */
.follow-apex {
  margin:22px 0 10px;
  padding:30px;
  border:1px solid #d3e0e8;
  background:linear-gradient(135deg,#ffffff,#f2f8fc);
  display:grid;
  grid-template-columns:minmax(0,.8fr) minmax(420px,1.2fr);
  gap:34px;
  align-items:center;
}
.follow-apex h2 {
  margin:7px 0 8px;
  font-family:var(--serif);
  font-size:30px;
  color:#14212b;
}
.follow-apex p {
  margin:0;
  color:#687a87;
  font-size:13px;
  line-height:1.55;
}
.follow-links {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:10px;
}
.follow-links a {
  min-height:96px;
  padding:16px;
  border:1px solid #d4e0e7;
  background:#fff;
  display:grid;
  grid-template-columns:auto 1fr;
  grid-template-rows:auto auto;
  column-gap:10px;
  align-items:center;
  transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.follow-links a:hover {
  transform:translateY(-2px);
  border-color:#8fc6e5;
  box-shadow:0 10px 24px rgba(31,72,99,.07);
}
.follow-icon {
  grid-row:1/3;
  width:36px;
  height:36px;
  border-radius:50%;
  display:grid;
  place-items:center;
  background:#eaf6fd;
  color:#087fca;
  font-weight:900;
  font-size:14px;
}
.follow-links b {
  color:#1b2c37;
  font-size:13px;
}
.follow-links small {
  color:#7a8b96;
  font-size:10px;
}
.settings-divider {
  margin-top:8px;
  padding-top:20px;
  border-top:1px solid var(--line);
}
.settings-divider h2 {
  margin:6px 0 5px;
  font-size:20px;
}
.settings-divider p {
  margin:0;
  color:var(--muted);
  font-size:12px;
  line-height:1.5;
}
.social-admin-list {
  display:grid;
  gap:18px;
}
.social-admin-story {
  border:1px solid var(--line);
  background:var(--panel);
  border-radius:12px;
  padding:22px;
}
.social-admin-story-head {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  margin-bottom:18px;
}
.social-admin-story-head h2 {
  margin:5px 0 0;
  font-family:var(--serif);
  font-size:24px;
  line-height:1.1;
}
.social-draft-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
}
.social-draft-card {
  border:1px solid var(--line);
  border-radius:10px;
  padding:14px;
  background:rgba(255,255,255,.02);
}
.social-draft-head {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  margin-bottom:10px;
}
.social-draft-head b {
  font-size:12px;
}
.social-draft-head span {
  color:var(--muted);
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.social-draft-body {
  width:100%;
  min-height:220px;
  resize:vertical;
  border:1px solid var(--line);
  border-radius:8px;
  padding:12px;
  background:#050b11;
  color:var(--text);
  line-height:1.5;
}
.social-draft-actions {
  display:flex;
  justify-content:flex-end;
  gap:8px;
  margin-top:10px;
}
@media (max-width: 980px) {
  .follow-apex { grid-template-columns:1fr; }
  .social-draft-grid { grid-template-columns:1fr; }
}
@media (max-width: 700px) {
  .follow-apex { padding:22px; }
  .follow-links { grid-template-columns:1fr; }
  .social-admin-story-head { display:grid; }
}


/* Publication maturity */
.search-trigger {
  display:inline-flex;
  align-items:center;
  gap:6px;
  min-height:36px;
  padding:0 12px;
  border:1px solid #d1dce4;
  border-radius:999px;
  background:rgba(255,255,255,.72);
  color:#405b6d;
  font-size:12px;
  font-weight:800;
}
.search-trigger:hover { border-color:#91c9e8; color:#0879be; background:#f4fbff; }

.share-bar {
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px;
  margin-top:22px;
}
.share-bar > span {
  margin-right:4px;
  color:#748591;
  font-size:10px;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.share-bar a,
.share-bar button {
  appearance:none;
  border:1px solid #cfdbe3;
  background:#fff;
  color:#37576b;
  border-radius:999px;
  padding:7px 11px;
  font:700 11px var(--sans);
}
.share-bar a:hover,
.share-bar button:hover { color:#0879be; border-color:#91c9e8; }

.related-stories {
  margin-top:52px;
  padding-top:24px;
  border-top:1px solid var(--line);
}
.related-grid {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}
.related-grid article {
  padding-right:18px;
  border-right:1px solid var(--line);
}
.related-grid article:last-child { border-right:0; }
.related-grid h3 {
  margin:7px 0 8px;
  font-family:var(--serif);
  font-size:21px;
  line-height:1.12;
  color:#182630;
}
.related-grid h3:hover { color:#0879be; }
.related-grid p {
  margin:0;
  color:#6b7c88;
  font-size:12px;
  line-height:1.5;
}

.search-page {
  max-width:980px;
  margin:auto;
  padding:58px 28px 90px;
}
.search-page header h1 {
  margin:8px 0 24px;
  font-family:var(--serif);
  font-size:clamp(46px,6vw,70px);
  line-height:.96;
  color:#14212b;
}
.search-page form {
  display:flex;
  max-width:760px;
}
.search-page form input {
  flex:1;
  min-width:0;
  border:1px solid #c7d7e1;
  border-right:0;
  background:#fff;
  color:#1a2a35;
  padding:14px 15px;
  outline:none;
}
.search-page form input:focus {
  border-color:#6bb9e5;
  box-shadow:0 0 0 3px rgba(11,134,217,.08);
}
.search-page form button { border-radius:0; }
.search-results { margin-top:42px; }
.search-result-list { display:grid; }
.search-result-list article {
  display:grid;
  grid-template-columns:180px minmax(0,1fr);
  gap:22px;
  padding:22px 0;
  border-top:1px solid var(--line);
}
.search-result-list img {
  width:100%;
  aspect-ratio:16/10;
  object-fit:cover;
}
.search-result-list h3 {
  margin:6px 0 8px;
  font-family:var(--serif);
  font-size:28px;
  line-height:1.08;
  color:#17252f;
}
.search-result-list h3:hover { color:#0879be; }
.search-result-list p {
  margin:0 0 9px;
  color:#617582;
  line-height:1.5;
}
.search-result-list small { color:#8997a1; }
.search-empty {
  margin-top:26px;
  color:#73838f;
  font-family:var(--serif);
  font-size:19px;
}

.not-found,
.newsletter-status-page {
  max-width:760px;
  margin:auto;
  padding:100px 28px 130px;
  text-align:center;
}
.not-found h1,
.newsletter-status-page h1 {
  margin:10px 0 14px;
  font-family:var(--serif);
  font-size:clamp(48px,7vw,78px);
  line-height:.95;
  color:#14212b;
}
.not-found p,
.newsletter-status-page p {
  margin:0 auto 28px;
  max-width:580px;
  color:#637582;
  font-family:var(--serif);
  font-size:20px;
  line-height:1.55;
}
.not-found > div {
  display:flex;
  justify-content:center;
  gap:10px;
  flex-wrap:wrap;
}

.analytics-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.analytics-card {
  border:1px solid var(--line);
  border-radius:10px;
  background:var(--panel);
  padding:18px;
}
.analytics-card h3 { margin:0 0 12px; }
.analytics-card table { width:100%; border-collapse:collapse; }
.analytics-card td {
  padding:8px 0;
  border-top:1px solid var(--line);
  font-size:12px;
}
.analytics-card td:last-child { text-align:right; }

.admin-panel button:disabled,
.admin-panel .blue-btn:disabled {
  opacity:.5;
  cursor:not-allowed;
}

@media (max-width: 800px) {
  .related-grid { grid-template-columns:1fr; }
  .related-grid article { border-right:0; border-bottom:1px solid var(--line); padding:0 0 16px; }
  .related-grid article:last-child { border-bottom:0; }
  .analytics-grid { grid-template-columns:1fr; }
}
@media (max-width: 640px) {
  .search-trigger span { display:none; }
  .search-trigger { width:36px; padding:0; justify-content:center; }
  .search-page { padding:36px 20px 64px; }
  .search-result-list article { grid-template-columns:1fr; }
  .search-result-list article > a:has(img) { max-width:100%; }
  .not-found,.newsletter-status-page { padding:72px 20px 90px; }
}


/* Footer stack + calendar nav */
.nav .calendar-nav-link {
  margin-left:4px;
  padding:8px 11px;
  border:1px solid #b8d9ea;
  border-radius:999px;
  background:#eef8fd;
  color:#0a78b9;
  white-space:nowrap;
  font-size:11px;
  font-weight:800;
}
.nav .calendar-nav-link:hover {
  border-color:#73bce2;
  background:#e2f4fd;
  color:#066ba8;
}

.footer-inner {
  align-items:flex-start;
}
.footer-links {
  display:grid;
  grid-template-columns:1fr;
  gap:9px;
  text-align:left;
}
.footer-links a {
  width:max-content;
}

@media (max-width: 1120px) and (min-width: 941px) {
  .nav {
    gap:14px;
    font-size:12px;
  }
  .nav .calendar-nav-link {
    padding:7px 9px;
    font-size:10px;
  }
}
@media (max-width: 620px) {
  .footer-inner {
    display:grid;
    justify-content:start;
  }
}


/* Curated editorial homepage */
.front-page {
  padding-top:30px;
  padding-bottom:78px;
}
.front-live-alert {
  max-width:1320px;
  margin:14px auto 0;
  padding:11px 28px;
  display:grid;
  grid-template-columns:auto auto minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  color:#1d3f53;
  background:#fff8ef;
  border-top:1px solid #f0dbc4;
  border-bottom:1px solid #f0dbc4;
  font-size:12px;
}
.front-live-dot {
  width:7px;
  height:7px;
  border-radius:50%;
  background:#e35a4f;
  box-shadow:0 0 0 4px rgba(227,90,79,.12);
}
.front-live-alert b {
  color:#c9473e;
  font-size:9px;
  letter-spacing:.14em;
}
.front-live-alert span:nth-child(3) {
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  font-family:var(--serif);
  font-size:14px;
  font-weight:700;
}
.front-live-alert em {
  color:#9d6f4b;
  font-size:10px;
  font-style:normal;
  font-weight:800;
  white-space:nowrap;
}

.front-hero {
  display:grid;
  grid-template-columns:minmax(0,1.72fr) minmax(290px,.72fr);
  gap:42px;
  padding:24px 0 52px;
  border-bottom:1px solid #d6dfe5;
}
.front-lead {
  min-width:0;
  padding-right:4px;
}
.front-lead h1 {
  max-width:950px;
  margin:10px 0 24px;
  color:#13222d;
  font-family:var(--serif);
  font-size:clamp(46px,5.8vw,82px);
  line-height:.94;
  letter-spacing:-.058em;
}
.front-lead h1:hover { color:#087bc0; }
.front-lead-copy {
  display:grid;
  grid-template-columns:minmax(0,1.55fr) minmax(220px,.58fr);
  gap:25px;
  align-items:end;
}
.front-lead-image {
  display:block;
  overflow:hidden;
  border-radius:4px;
  background:#edf3f6;
}
.front-lead-image img {
  display:block;
  width:100%;
  aspect-ratio:16/9;
  object-fit:cover;
  transition:transform .35s ease;
}
.front-lead-image:hover img { transform:scale(1.015); }
.front-lead-text {
  padding:5px 0 2px;
}
.front-lead-text > p {
  margin:0;
  color:#4f6471;
  font-family:var(--serif);
  font-size:19px;
  line-height:1.48;
}
.front-lead-text .meta { margin-top:17px; }

.front-latest {
  padding-left:26px;
  border-left:1px solid #d5dee4;
}
.front-latest-head {
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:12px;
  padding-bottom:10px;
}
.front-latest-head h2 {
  margin:0;
  color:#172b39;
  font-family:var(--serif);
  font-size:29px;
}
.front-eyebrow {
  color:#0a82c8;
  font-size:8px;
  font-weight:900;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.front-latest-item {
  display:grid;
  grid-template-columns:31px minmax(0,1fr);
  gap:10px;
  padding:17px 0 16px;
  border-top:1px solid #dfe6ea;
}
.front-latest-item:first-of-type {
  border-top:2px solid #2e9dd9;
}
.front-latest-number {
  padding-top:2px;
  color:#a2b1ba;
  font-family:var(--serif);
  font-size:14px;
  font-style:italic;
}
.front-latest-item h3 {
  margin:5px 0 7px;
  color:#243945;
  font-family:var(--serif);
  font-size:19px;
  line-height:1.12;
  letter-spacing:-.015em;
}
.front-latest-item h3:hover { color:#087cc0; }
.front-latest-item small {
  color:#8a99a2;
  font-size:10px;
}

.front-section {
  padding-top:64px;
}
.front-desk-title {
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:20px;
  margin-bottom:22px;
  padding-top:13px;
  border-top:2px solid #16384f;
}
.front-desk-title h2 {
  margin:4px 0 0;
  color:#142b3b;
  font-family:var(--serif);
  font-size:34px;
  line-height:1;
  letter-spacing:-.035em;
}
.front-desk-title > a {
  color:#647985;
  font-size:10px;
  font-weight:800;
}
.front-desk-title > a span {
  margin-left:4px;
  color:#0b86d9;
}
.front-desk-title > a:hover { color:#0879b9; }

.front-feature-story {
  min-width:0;
}
.front-feature-image {
  display:block;
  margin-bottom:13px;
  overflow:hidden;
  border-radius:3px;
  background:#eaf1f4;
}
.front-feature-image img {
  display:block;
  width:100%;
  aspect-ratio:16/10;
  object-fit:cover;
  transition:transform .3s ease;
}
.front-feature-image:hover img { transform:scale(1.018); }
.front-feature-story h3 {
  margin:6px 0 9px;
  color:#172b39;
  font-family:var(--serif);
  font-size:28px;
  line-height:1.04;
  letter-spacing:-.03em;
}
.front-feature-story h3:hover { color:#087bc0; }
.front-feature-story > p {
  margin:0;
  color:#5c707c;
  font-size:12.5px;
  line-height:1.55;
}
.front-feature-story .meta {
  margin-top:12px;
  font-size:10px;
}

.front-markets-grid {
  display:grid;
  grid-template-columns:minmax(0,1.52fr) minmax(280px,.72fr);
  gap:32px;
}
.front-market-lead {
  padding-right:30px;
  border-right:1px solid #d9e2e7;
}
.front-market-lead .front-feature-image img {
  aspect-ratio:16/8.7;
}
.front-market-lead h3 {
  max-width:850px;
  font-size:clamp(33px,3.8vw,50px);
  line-height:.99;
}
.front-market-stack {
  display:grid;
  align-content:start;
}
.front-stack-story {
  display:grid;
  grid-template-columns:112px minmax(0,1fr);
  gap:14px;
  padding:0 0 20px;
  margin-bottom:20px;
  border-bottom:1px solid #dce4e8;
}
.front-stack-story:last-child {
  margin-bottom:0;
  border-bottom:0;
}
.front-stack-image {
  display:block;
  overflow:hidden;
  border-radius:3px;
  background:#ebf1f4;
}
.front-stack-image img {
  display:block;
  width:100%;
  height:86px;
  object-fit:cover;
}
.front-stack-story h3 {
  margin:5px 0 0;
  color:#213744;
  font-family:var(--serif);
  font-size:20px;
  line-height:1.08;
}
.front-stack-story h3:hover { color:#087bc0; }
.front-stack-story .meta {
  margin-top:8px;
  font-size:9px;
}

.front-business {
  padding-top:72px;
}
.front-business-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:25px;
}
.front-business-grid .front-feature-story {
  padding-right:24px;
  border-right:1px solid #d9e1e6;
}
.front-business-grid .front-feature-story:last-child {
  padding-right:0;
  border-right:0;
}
.front-business-grid .front-feature-story h3 {
  font-size:25px;
}
.front-business-grid .front-feature-image img {
  aspect-ratio:16/9.5;
}

.front-tech-ai {
  margin-top:74px;
  padding:32px;
  border:1px solid #cfdee7;
  background:
    linear-gradient(145deg,rgba(241,249,253,.92),rgba(255,253,248,.9));
}
.front-split-desk {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:38px;
}
.front-split-column + .front-split-column {
  padding-left:38px;
  border-left:1px solid #cfdee7;
}
.front-tech-ai .front-desk-title {
  padding-top:0;
  border-top:0;
  border-bottom:1px solid #cfdee7;
  padding-bottom:14px;
}
.front-split-lead {
  display:grid;
  grid-template-columns:minmax(150px,.8fr) minmax(0,1.2fr);
  column-gap:18px;
  align-items:start;
}
.front-split-lead .front-feature-image {
  grid-row:1/5;
  margin-bottom:0;
}
.front-split-lead .front-feature-image img {
  aspect-ratio:1/1;
}
.front-split-lead h3 {
  margin-top:3px;
  font-size:25px;
}
.front-split-lead > p {
  font-size:11.5px;
}
.front-headline-list {
  margin-top:22px;
  border-top:1px solid #d6e1e7;
}
.front-headline-story {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:14px;
  align-items:start;
  padding:14px 0;
  border-bottom:1px solid #dce5e9;
}
.front-headline-story:last-child { border-bottom:0; }
.front-headline-story h3 {
  margin:0;
  color:#253c49;
  font-family:var(--serif);
  font-size:19px;
  line-height:1.12;
}
.front-headline-story h3:hover { color:#087bc0; }
.front-headline-story > span {
  padding-top:3px;
  color:#93a0a8;
  font-size:9px;
  white-space:nowrap;
}

.front-macro {
  padding-top:76px;
}
.front-macro-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:48px;
}
.front-macro-column + .front-macro-column {
  padding-left:48px;
  border-left:1px solid #d9e1e6;
}
.front-macro-lead .front-feature-image { display:none; }
.front-macro-lead .front-feature-story {
  padding-bottom:20px;
  border-bottom:1px solid #d8e1e6;
}
.front-macro-lead .front-feature-story h3 {
  max-width:570px;
  font-size:31px;
}
.front-macro-lead .front-feature-story > p {
  max-width:610px;
  font-size:13px;
}
.front-headline-list-dense {
  margin-top:0;
  border-top:0;
}
.front-headline-list-dense .front-headline-story {
  padding:16px 0;
}
.front-headline-list-dense .front-headline-story h3 {
  font-size:20px;
}

.front-connect {
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(310px,.75fr);
  margin-top:84px;
  border:1px solid #c8dce7;
  background:#fffdf8;
  box-shadow:0 16px 38px rgba(35,72,95,.055);
}
.front-brief {
  padding:36px;
  background:
    radial-gradient(circle at 0% 0%,rgba(88,185,233,.12),transparent 36%),
    linear-gradient(135deg,#f0f8fc,#fffdf8);
}
.front-brief h2 {
  max-width:650px;
  margin:8px 0 9px;
  color:#142938;
  font-family:var(--serif);
  font-size:36px;
  line-height:1.02;
  letter-spacing:-.035em;
}
.front-brief > p {
  margin:0;
  color:#647985;
  font-size:13px;
}
.front-brief form {
  display:flex;
  max-width:520px;
  margin-top:22px;
}
.front-brief input {
  flex:1;
  min-width:0;
  padding:12px 13px;
  border:1px solid #bcd3df;
  border-right:0;
  background:#fff;
  color:#1c303d;
  outline:none;
}
.front-brief input:focus {
  border-color:#6fb9df;
  box-shadow:0 0 0 3px rgba(63,162,214,.08);
}
.front-brief .blue-btn {
  border-radius:0;
}
.front-follow {
  padding:36px 30px;
  border-left:1px solid #d5e2e8;
  background:#fbfaf6;
}
.front-follow h3 {
  margin:7px 0 18px;
  color:#1a3445;
  font-family:var(--serif);
  font-size:25px;
}
.front-social-links {
  display:grid;
  gap:8px;
}
.front-social-links a {
  display:grid;
  grid-template-columns:32px minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
  min-height:48px;
  padding:9px 10px;
  border:1px solid #d5e2e8;
  background:#fff;
}
.front-social-links a:hover {
  border-color:#92c9e3;
  background:#f6fbfe;
}
.front-social-links a > span {
  width:30px;
  height:30px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#eaf6fc;
  color:#087fc4;
  font-size:11px;
  font-weight:900;
}
.front-social-links b {
  color:#2d4a5a;
  font-size:11px;
}
.front-social-links small {
  color:#8797a1;
  font-size:9px;
}
.front-social-empty {
  margin:0;
  color:#7c8e99;
  font-size:11px;
  line-height:1.5;
}

/* Keep the market tape as the single permanent information band under navigation. */
.home-market-tape {
  border-top:0;
  background:rgba(255,250,242,.96);
}

/* Older generic homepage CTA blocks are no longer used on the front page. */
.front-page .newsletter,
.front-page .follow-apex { display:none; }

@media (max-width: 1080px) {
  .front-hero { grid-template-columns:minmax(0,1.5fr) minmax(270px,.7fr); gap:30px; }
  .front-lead-copy { grid-template-columns:1fr; }
  .front-lead-text > p { max-width:720px; }
  .front-markets-grid { grid-template-columns:1.3fr .8fr; }
  .front-split-lead { grid-template-columns:1fr; }
  .front-split-lead .front-feature-image { grid-row:auto; margin-bottom:13px; }
  .front-split-lead .front-feature-image img { aspect-ratio:16/9; }
}
@media (max-width: 860px) {
  .front-page { padding-top:18px; }
  .front-hero { grid-template-columns:1fr; gap:32px; }
  .front-latest {
    padding:22px 0 0;
    border-left:0;
    border-top:1px solid #d5dee4;
  }
  .front-latest-item {
    grid-template-columns:28px minmax(0,1fr);
  }
  .front-markets-grid,
  .front-split-desk,
  .front-macro-grid,
  .front-connect {
    grid-template-columns:1fr;
  }
  .front-market-lead {
    padding:0 0 28px;
    border-right:0;
    border-bottom:1px solid #d9e2e7;
  }
  .front-market-stack {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:22px;
    padding-top:26px;
  }
  .front-stack-story {
    grid-template-columns:1fr;
  }
  .front-stack-image img { height:auto; aspect-ratio:16/9; }
  .front-split-column + .front-split-column,
  .front-macro-column + .front-macro-column {
    padding:34px 0 0;
    margin-top:34px;
    border-left:0;
    border-top:1px solid #cfdee7;
  }
  .front-follow {
    border-left:0;
    border-top:1px solid #d5e2e8;
  }
}
@media (max-width: 700px) {
  .front-live-alert {
    padding:10px 16px;
    grid-template-columns:auto auto minmax(0,1fr);
  }
  .front-live-alert em { display:none; }
  .front-page { padding-left:18px; padding-right:18px; }
  .front-lead h1 { font-size:clamp(42px,13vw,62px); }
  .front-lead-copy { gap:18px; }
  .front-section { padding-top:52px; }
  .front-business-grid { grid-template-columns:1fr; gap:26px; }
  .front-business-grid .front-feature-story {
    padding:0 0 25px;
    border-right:0;
    border-bottom:1px solid #d9e1e6;
  }
  .front-business-grid .front-feature-story:last-child {
    padding-bottom:0;
    border-bottom:0;
  }
  .front-tech-ai {
    margin-top:58px;
    padding:22px 18px;
  }
  .front-market-stack { grid-template-columns:1fr; }
  .front-macro { padding-top:58px; }
  .front-connect { margin-top:62px; }
  .front-brief,
  .front-follow { padding:26px 20px; }
  .front-brief h2 { font-size:31px; }
  .front-brief form { display:grid; grid-template-columns:1fr; gap:8px; }
  .front-brief input { border-right:1px solid #bcd3df; }
  .front-brief .blue-btn { border-radius:9px; }
  .front-desk-title h2 { font-size:30px; }
}


/* Apex masthead 2026 redesign */
.shell > .topline {
  display:none;
}

.shell .masthead {
  position:sticky;
  top:12px;
  z-index:90;
  width:min(1360px,calc(100% - 30px));
  max-width:none;
  min-height:84px;
  margin:12px auto 10px;
  padding:10px 12px;
  display:grid;
  grid-template-columns:minmax(255px,.92fr) minmax(510px,1.8fr) minmax(190px,.72fr);
  align-items:center;
  gap:14px;
  border:1px solid rgba(176,205,220,.86);
  border-radius:22px;
  background:
    linear-gradient(135deg,rgba(255,253,248,.98),rgba(245,251,254,.96));
  box-shadow:
    0 18px 42px rgba(37,72,92,.10),
    0 2px 8px rgba(37,72,92,.05),
    inset 0 1px 0 rgba(255,255,255,.95);
  backdrop-filter:blur(20px) saturate(145%);
  -webkit-backdrop-filter:blur(20px) saturate(145%);
}

.shell .brand {
  min-width:0;
  display:flex;
  align-items:center;
  gap:11px;
  padding:4px 8px 4px 4px;
}
.shell .brand-mark {
  width:54px;
  height:54px;
  flex:0 0 54px;
  display:grid;
  place-items:center;
  border:1px solid #d3e3eb;
  border-radius:16px;
  background:linear-gradient(145deg,#ffffff,#eef7fb);
  box-shadow:0 8px 22px rgba(37,78,101,.10);
  overflow:hidden;
}
.shell .brand-mark img {
  width:46px;
  height:46px;
  object-fit:cover;
  border-radius:12px;
}
.shell .brand-copy {
  min-width:0;
  display:grid;
  gap:3px;
}
.shell .brand-copy strong {
  display:block;
  color:#132735;
  font-family:var(--serif);
  font-size:27px;
  line-height:.95;
  letter-spacing:-.045em;
  white-space:nowrap;
}
.shell .brand-copy span {
  display:block;
  color:#71818c;
  font-family:var(--sans);
  font-size:8.5px;
  font-style:normal;
  font-weight:700;
  letter-spacing:.055em;
  text-transform:uppercase;
  white-space:nowrap;
}

.shell .nav {
  min-width:0;
  display:block;
  font-family:var(--sans);
}
.shell .nav-track {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:3px;
  padding:5px;
  border:1px solid #d5e7f0;
  border-radius:16px;
  background:linear-gradient(180deg,#edf8fd,#e7f4fa);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.95);
}
.shell .nav a {
  position:relative;
  flex:1 1 0;
  min-width:0;
  padding:10px 9px;
  border:0;
  border-radius:11px;
  color:#4e6675;
  font-size:11.5px;
  font-weight:820;
  text-align:center;
  white-space:nowrap;
  transition:
    color .16s ease,
    background .16s ease,
    box-shadow .16s ease,
    transform .16s ease;
}
.shell .nav a:hover {
  color:#0b76b5;
  background:rgba(255,255,255,.68);
}
.shell .nav a.active {
  color:#fff;
  background:linear-gradient(180deg,#168fd5,#0b7fc6);
  box-shadow:0 6px 14px rgba(11,127,198,.22), inset 0 1px 0 rgba(255,255,255,.25);
  transform:translateY(-1px);
}
.shell .nav a.active::after {
  display:none;
}

.shell .nav-actions {
  min-width:0;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:7px;
}
.shell .nav-actions a {
  min-height:42px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  border:1px solid #c9dce6;
  border-radius:13px;
  background:rgba(255,255,255,.82);
  color:#36596c;
  box-shadow:0 5px 14px rgba(42,78,99,.05);
  font-family:var(--sans);
  font-size:10.5px;
  font-weight:820;
  transition:
    color .16s ease,
    border-color .16s ease,
    background .16s ease,
    transform .16s ease,
    box-shadow .16s ease;
}
.shell .nav-actions a svg {
  width:16px;
  height:16px;
  flex:0 0 16px;
}
.shell .calendar-nav-link {
  padding:0 11px;
}
.shell .search-trigger {
  padding:0 11px;
}
.shell .nav-actions a:hover {
  color:#0876b7;
  border-color:#8ec7e5;
  background:#f3fbff;
  transform:translateY(-1px);
  box-shadow:0 8px 18px rgba(42,100,132,.09);
}

@media (max-width:1180px) and (min-width:941px) {
  .shell .masthead {
    width:calc(100% - 20px);
    grid-template-columns:minmax(235px,.9fr) minmax(470px,1.7fr) auto;
    gap:9px;
    padding:9px;
  }
  .shell .brand-copy strong { font-size:24px; }
  .shell .brand-mark { width:50px; height:50px; flex-basis:50px; }
  .shell .brand-mark img { width:42px; height:42px; }
  .shell .nav a { font-size:10.5px; padding:9px 7px; }
  .shell .nav-actions a {
    width:42px;
    padding:0;
  }
  .shell .nav-actions a span { display:none; }
}

@media (max-width:940px) {
  .shell .masthead {
    top:8px;
    width:calc(100% - 18px);
    margin:8px auto 9px;
    padding:9px;
    display:flex;
    flex-wrap:wrap;
    gap:8px;
    border-radius:18px;
  }
  .shell .brand {
    flex:1 1 auto;
  }
  .shell .nav-actions {
    flex:0 0 auto;
  }
  .shell .nav-actions a {
    width:40px;
    height:40px;
    min-height:40px;
    padding:0;
  }
  .shell .nav-actions a span {
    display:none;
  }
  .shell .nav {
    order:3;
    flex:1 0 100%;
    display:block!important;
    overflow:hidden;
  }
  .shell .nav-track {
    justify-content:flex-start;
    gap:4px;
    overflow-x:auto;
    padding:4px;
    border-radius:14px;
    scrollbar-width:none;
    scroll-snap-type:x proximity;
  }
  .shell .nav-track::-webkit-scrollbar { display:none; }
  .shell .nav a {
    flex:0 0 auto;
    min-width:auto;
    padding:9px 13px;
    font-size:10.5px;
    scroll-snap-align:start;
  }
}

@media (max-width:620px) {
  .shell .masthead {
    width:calc(100% - 12px);
    top:6px;
    margin-top:6px;
    padding:8px;
    border-radius:16px;
  }
  .shell .brand {
    gap:8px;
    padding:2px;
  }
  .shell .brand-mark {
    width:43px;
    height:43px;
    flex-basis:43px;
    border-radius:12px;
  }
  .shell .brand-mark img {
    width:37px;
    height:37px;
    border-radius:9px;
  }
  .shell .brand-copy strong {
    font-size:20px;
  }
  .shell .brand-copy span {
    max-width:150px;
    overflow:hidden;
    text-overflow:ellipsis;
    font-size:7px;
    letter-spacing:.04em;
  }
  .shell .nav-actions {
    gap:5px;
  }
  .shell .nav-actions a {
    width:36px;
    height:36px;
    min-height:36px;
    border-radius:11px;
  }
  .shell .nav-actions a svg {
    width:15px;
    height:15px;
  }
  .shell .nav-track {
    border-radius:12px;
  }
  .shell .nav a {
    padding:8px 11px;
    font-size:10px;
  }
}

@media (prefers-reduced-motion:reduce) {
  .shell .nav a,
  .shell .nav-actions a {
    transition:none;
  }
}


/* Public editorial system 2026 */

/* Shared loading state */
.public-loading {
  min-height:48vh;
  display:grid;
  place-items:center;
  align-content:center;
  gap:12px;
  color:#6d7e89;
  font:800 10px var(--sans);
  letter-spacing:.12em;
  text-transform:uppercase;
}
.public-loading span {
  width:48px;
  height:3px;
  border-radius:999px;
  background:linear-gradient(90deg,transparent,#168bd2,transparent);
  animation:publicLoad 1s ease-in-out infinite;
}
@keyframes publicLoad {
  0%,100% { opacity:.3; transform:scaleX(.65); }
  50% { opacity:1; transform:scaleX(1); }
}

/* Homepage hierarchy refresh */
.front-page {
  max-width:1380px;
  padding-top:26px;
}
.front-hero {
  grid-template-columns:minmax(0,1.78fr) minmax(300px,.62fr);
  gap:34px;
  padding:28px 0 58px;
}
.front-lead h1 {
  max-width:1100px;
  font-size:clamp(52px,6vw,88px);
  line-height:.91;
  letter-spacing:-.065em;
}
.front-lead-copy {
  grid-template-columns:1fr;
  gap:18px;
}
.front-lead-image {
  border-radius:16px;
  box-shadow:0 16px 42px rgba(30,65,86,.09);
}
.front-lead-image img {
  aspect-ratio:16/8.6;
  transition:transform .45s ease, filter .45s ease;
}
.front-lead-image:hover img {
  transform:scale(1.018);
  filter:saturate(1.03);
}
.front-lead-text {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:end;
  gap:24px;
  padding:0 2px;
}
.front-lead-text > p {
  max-width:780px;
  font-size:20px;
  line-height:1.5;
}
.front-lead-text .meta {
  margin:0;
  white-space:nowrap;
}
.front-latest {
  padding:22px;
  border:1px solid #d4e2e9;
  border-radius:18px;
  background:linear-gradient(180deg,rgba(245,251,254,.9),rgba(255,253,248,.86));
  box-shadow:0 12px 34px rgba(36,73,94,.055);
}
.front-latest-head {
  padding-bottom:14px;
}
.front-latest-item {
  border-top-color:#dbe6ec;
}
.front-latest-item:first-of-type {
  border-top:1px solid #dbe6ec;
}
.front-latest-number {
  color:#7ba9c2;
}
.front-live-alert {
  max-width:1350px;
  margin:12px auto 0;
  border:1px solid #efd3c7;
  border-radius:13px;
  background:linear-gradient(90deg,#fff6ee,#fffaf4);
  box-shadow:0 6px 20px rgba(124,68,45,.04);
}
.front-live-dot {
  animation:livePulse 1.8s ease-in-out infinite;
}
@keyframes livePulse {
  0%,100% { box-shadow:0 0 0 4px rgba(227,90,79,.12); }
  50% { box-shadow:0 0 0 7px rgba(227,90,79,.05); }
}
.front-feature-story,
.front-stack-story,
.front-headline-story {
  transition:transform .18s ease;
}
.front-feature-story:hover,
.front-stack-story:hover {
  transform:translateY(-2px);
}
.front-feature-image,
.front-stack-image {
  overflow:hidden;
  border-radius:12px;
}
.front-feature-image img,
.front-stack-image img,
.story-image {
  transition:transform .3s ease;
}
.front-feature-story:hover img,
.front-stack-story:hover img,
.story-card:hover .story-image {
  transform:scale(1.018);
}

/* Full section front pages */
.section-front {
  max-width:1320px;
  margin:auto;
  padding:42px 28px 90px;
}
.section-front-head {
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:30px;
  padding:6px 0 25px;
  border-bottom:2px solid #17384d;
}
.section-front-head h1 {
  margin:4px 0 0;
  color:#132531;
  font-family:var(--serif);
  font-size:clamp(58px,7vw,92px);
  line-height:.9;
  letter-spacing:-.06em;
}
.section-front-head p {
  max-width:420px;
  margin:0 0 4px;
  color:#647785;
  font-family:var(--serif);
  font-size:18px;
  line-height:1.5;
}
.section-front-hero {
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(260px,.6fr) minmax(250px,.52fr);
  gap:28px;
  padding:30px 0 46px;
  border-bottom:1px solid #d5dfe5;
}
.section-lead {
  padding-right:4px;
}
.section-lead-image {
  display:block;
  overflow:hidden;
  margin-bottom:18px;
  border-radius:14px;
  background:#edf3f6;
}
.section-lead-image img {
  display:block;
  width:100%;
  aspect-ratio:16/9;
  object-fit:cover;
  transition:transform .35s ease;
}
.section-lead:hover .section-lead-image img {
  transform:scale(1.018);
}
.section-lead h2 {
  margin:8px 0 12px;
  color:#162834;
  font-family:var(--serif);
  font-size:clamp(38px,4.4vw,62px);
  line-height:.96;
  letter-spacing:-.045em;
}
.section-lead h2:hover { color:#087abd; }
.section-lead p {
  max-width:760px;
  margin:0;
  color:#586b78;
  font-family:var(--serif);
  font-size:18px;
  line-height:1.5;
}
.section-secondary {
  display:grid;
  align-content:start;
  gap:24px;
  padding-left:24px;
  border-left:1px solid #d8e1e6;
}
.section-secondary article + article {
  padding-top:24px;
  border-top:1px solid #dde5ea;
}
.section-secondary img {
  width:100%;
  aspect-ratio:16/9;
  object-fit:cover;
  display:block;
  margin-bottom:12px;
  border-radius:10px;
}
.section-secondary h3 {
  margin:6px 0 8px;
  color:#203541;
  font-family:var(--serif);
  font-size:24px;
  line-height:1.04;
}
.section-secondary h3:hover { color:#087abd; }
.section-secondary p {
  margin:0 0 9px;
  color:#677985;
  font-size:12px;
  line-height:1.5;
}
.section-secondary small {
  color:#8a9aa4;
  font-size:10px;
}
.section-latest {
  padding:20px;
  border:1px solid #d5e3ea;
  border-radius:15px;
  background:#f3f9fc;
}
.section-latest-title {
  padding-bottom:11px;
  border-bottom:2px solid #168bd2;
}
.section-latest-title h2 {
  margin:4px 0 0;
  color:#183142;
  font-family:var(--serif);
  font-size:28px;
}
.section-latest article {
  display:grid;
  gap:5px;
  padding:14px 0;
  border-bottom:1px solid #dce7ed;
}
.section-latest article:last-child {
  border-bottom:0;
}
.section-latest article > span {
  color:#8a9aa5;
  font-size:9px;
}
.section-latest article > a {
  color:#274453;
  font-family:var(--serif);
  font-size:17px;
  font-weight:700;
  line-height:1.15;
}
.section-latest article > a:hover { color:#087abd; }
.section-more {
  padding-top:48px;
}
.section-more-head {
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:20px;
  margin-bottom:18px;
}
.section-more-head h2 {
  margin:4px 0 0;
  color:#183142;
  font-family:var(--serif);
  font-size:34px;
}
.section-more-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:28px 22px;
}
.section-more-grid .story-card {
  min-height:0;
  padding:0 18px 22px 0;
  border-right:1px solid #dae2e7;
  border-bottom:1px solid #e0e7eb;
}
.section-more-grid .story-card:nth-child(3n) {
  border-right:0;
}
.section-more-grid .story-card h3 {
  color:#203541;
}
.section-more-grid .story-card:hover h3 {
  color:#087abd;
}

/* Article presentation */
.article-wrap {
  max-width:1120px;
  padding:46px 28px 96px;
}
.article-head {
  max-width:980px;
  padding-bottom:30px;
}
.article-head h1 {
  max-width:1000px;
  font-size:clamp(50px,6.5vw,86px);
  line-height:.92;
  letter-spacing:-.06em;
}
.article-head .dek {
  max-width:850px;
  color:#516572;
  font-size:23px;
  line-height:1.48;
}
.article-byline {
  display:flex;
  align-items:center;
  width:max-content;
  max-width:100%;
  gap:11px;
  margin-top:24px;
  border-radius:10px;
  text-decoration:none;
}
.byline-mark {
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  flex:0 0 38px;
  overflow:hidden;
  border:1px solid #bfd7e4;
  border-radius:50%;
  background:#eef8fd;
}
.byline-mark img {
  width:30px;
  height:30px;
  display:block;
  object-fit:contain;
}
.article-byline > div:last-child {
  display:grid;
  gap:3px;
}
.article-byline b {
  color:#2a4656;
  font-size:11px;
}
.article-byline span {
  color:#81919b;
  font-size:10px;
}
.article-byline:hover b {
  color:#087bbe;
}
.article-byline:hover .byline-mark {
  border-color:#8fc8e5;
  background:#e5f5fc;
}
.article-byline:focus-visible {
  outline:3px solid rgba(22,139,210,.22);
  outline-offset:4px;
}
.article-featured {
  margin:32px 0 14px;
}
.article-featured img {
  max-height:none;
  aspect-ratio:16/9;
  border-radius:16px;
  box-shadow:0 16px 40px rgba(30,65,86,.08);
}
.article-content-grid {
  display:grid;
  grid-template-columns:minmax(0,740px) minmax(180px,230px);
  gap:56px;
  align-items:start;
  padding-top:8px;
}
.article-body {
  max-width:none;
  padding-top:22px;
  font-size:20px;
  line-height:1.8;
}
.article-body p {
  color:#2d3f4b;
}
.article-body h2 {
  position:relative;
  margin:46px 0 16px;
  padding-top:16px;
  color:#142834;
  font-size:32px;
  line-height:1.16;
}
.article-body h2::before {
  content:"";
  position:absolute;
  top:0;
  left:0;
  width:42px;
  height:3px;
  border-radius:999px;
  background:#168bd2;
}
.article-body h3 {
  color:#1b3545;
  font-size:24px;
}
.article-rail {
  position:sticky;
  top:122px;
  display:grid;
  gap:14px;
  padding-top:28px;
}
.article-rail > div {
  display:grid;
  gap:7px;
  padding:15px;
  border:1px solid #d7e3e9;
  border-radius:12px;
  background:rgba(248,252,254,.8);
}
.article-rail b {
  color:#28495a;
  font-family:var(--serif);
  font-size:18px;
}
.article-rail span:not(.front-eyebrow) {
  color:#81919b;
  font-size:10px;
}
.article-rail a {
  color:#477084;
  font-size:11px;
  font-weight:700;
}
.article-rail a:hover { color:#087abd; }
.article-tags {
  max-width:740px;
  gap:7px;
}
.article-tags a,
.article-tags span {
  border:1px solid #cfdee6;
  background:#f4f9fb;
  color:#506a79;
  border-radius:999px;
  padding:6px 10px;
  font-size:10px;
}
.article-tags a:hover {
  color:#087abd;
  border-color:#9ecce4;
}
.share-bar {
  gap:7px;
}
.share-bar > span {
  margin-right:5px;
}
.share-bar a,
.share-bar button {
  min-height:34px;
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:0 10px;
  border-radius:10px;
}
.share-bar b {
  min-width:14px;
  color:#087abd;
  text-align:center;
}
.share-bar em {
  font-style:normal;
}
.related-stories {
  margin-top:64px;
  padding-top:30px;
  border-top:2px solid #193b51;
}
.related-head {
  margin-bottom:20px;
}
.related-head h2 {
  margin:4px 0 0;
  color:#183142;
  font-family:var(--serif);
  font-size:34px;
}
.related-grid {
  gap:24px;
}
.related-grid article {
  padding-right:0;
  border-right:0;
}
.related-image {
  display:block;
  overflow:hidden;
  margin-bottom:12px;
  border-radius:11px;
}
.related-image img {
  display:block;
  width:100%;
  aspect-ratio:16/9;
  object-fit:cover;
  transition:transform .3s ease;
}
.related-grid article:hover .related-image img {
  transform:scale(1.02);
}
.related-grid h3 {
  font-size:23px;
}

/* Live coverage */
.article-live-banner {
  display:flex;
  align-items:center;
  gap:9px;
  margin-bottom:22px;
  padding:11px 14px;
  border:1px solid #efd2c8;
  border-radius:12px;
  background:linear-gradient(90deg,#fff4ee,#fffaf6);
  color:#81564a;
  font-size:10px;
}
.article-live-banner b {
  color:#c84d42;
  letter-spacing:.12em;
}
.article-live-banner span:last-child {
  margin-left:auto;
  color:#8c6f65;
}
.is-live .article-head {
  border-bottom-color:#ecd8d0;
}
.live-timeline {
  margin:6px 0 44px;
  padding:22px 0 4px;
  border-bottom:1px solid #dde5ea;
}
.live-timeline > header {
  margin-bottom:18px;
}
.live-timeline > header h2 {
  margin:4px 0 0;
  padding:0;
  font-size:29px;
}
.live-timeline > header h2::before { display:none; }
.live-update {
  position:relative;
  display:grid;
  grid-template-columns:145px minmax(0,1fr);
  gap:20px;
  margin:0;
  padding:0 0 26px;
  border-left:0;
}
.live-update-time {
  position:relative;
  padding-left:18px;
}
.live-update-time::before {
  content:"";
  position:absolute;
  left:4px;
  top:8px;
  bottom:-26px;
  width:1px;
  background:#c9dce6;
}
.live-update:last-child .live-update-time::before {
  display:none;
}
.live-update-time > span {
  position:absolute;
  left:0;
  top:4px;
  width:9px;
  height:9px;
  border:2px solid #168bd2;
  border-radius:50%;
  background:#fffdf9;
}
.latest-live-update .live-update-time > span {
  background:#168bd2;
  box-shadow:0 0 0 5px rgba(22,139,210,.10);
}
.live-update time {
  display:block;
  color:#6f8796;
  font:700 9px var(--sans);
  line-height:1.5;
}
.live-update-copy {
  padding:17px 19px;
  border:1px solid #d7e3e9;
  border-radius:12px;
  background:#fff;
  box-shadow:0 6px 20px rgba(35,70,91,.035);
}
.latest-live-update .live-update-copy {
  border-color:#a9d5eb;
  box-shadow:0 8px 24px rgba(22,139,210,.07);
}
.live-update-copy p:first-child { margin-top:0; }
.live-update-copy p:last-child { margin-bottom:0; }

/* Search experience */
.search-page {
  max-width:1040px;
  padding-top:48px;
}
.search-hero {
  padding:32px;
  border:1px solid #cfe0e8;
  border-radius:20px;
  background:
    radial-gradient(circle at 90% 0%,rgba(104,192,236,.16),transparent 34%),
    linear-gradient(145deg,#fffdf8,#f3f9fc);
  box-shadow:0 14px 38px rgba(38,75,96,.06);
}
.search-hero h1 {
  margin:7px 0 10px;
  max-width:760px;
  font-size:clamp(48px,6vw,76px);
}
.search-hero > p {
  max-width:650px;
  margin:0 0 24px;
  color:#60727e;
  font-family:var(--serif);
  font-size:18px;
  line-height:1.5;
}
.search-hero form {
  max-width:none;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  overflow:hidden;
  border:1px solid #bcd3df;
  border-radius:13px;
  background:#fff;
  box-shadow:0 8px 22px rgba(40,75,96,.05);
}
.search-hero form svg {
  width:20px;
  height:20px;
  margin-left:15px;
  color:#6c8594;
}
.search-hero form input {
  border:0;
  padding:15px 12px;
  background:transparent;
  font-size:15px;
  outline:none;
}
.search-hero form button {
  align-self:stretch;
  border:0;
  padding:0 20px;
  background:#168bd2;
  color:white;
  font-weight:800;
}
.search-suggestions {
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:13px;
}
.search-suggestions a {
  padding:6px 9px;
  border:1px solid #d2e0e7;
  border-radius:999px;
  background:rgba(255,255,255,.7);
  color:#607887;
  font-size:10px;
  font-weight:700;
}
.search-suggestions a:hover {
  color:#087abd;
  border-color:#9ecce4;
}
.search-results {
  padding-top:38px;
}
.search-results-head {
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:20px;
  margin-bottom:14px;
  padding-bottom:15px;
  border-bottom:2px solid #183a50;
}
.search-results-head h2 {
  margin:4px 0 0;
  color:#183142;
  font-family:var(--serif);
  font-size:34px;
}
.search-results-head p {
  margin:0;
  color:#7c8c97;
  font-family:var(--serif);
  font-size:16px;
}
.search-result-list {
  display:grid;
}
.search-result-list article {
  display:grid;
  grid-template-columns:210px minmax(0,1fr);
  gap:24px;
  padding:22px 0;
  border-bottom:1px solid #dbe3e8;
}
.search-result-image,
.search-result-placeholder {
  display:block;
  width:100%;
  aspect-ratio:16/10;
  overflow:hidden;
  border-radius:11px;
  background:linear-gradient(135deg,#e9f4f9,#f8f3ea);
}
.search-result-image img {
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform .3s ease;
}
.search-result-list article:hover .search-result-image img {
  transform:scale(1.02);
}
.search-result-meta {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
}
.search-result-meta > span:last-child {
  color:#8a99a3;
  font-size:9px;
}
.search-result-list h3 {
  margin:7px 0 8px;
  color:#1c3341;
  font-family:var(--serif);
  font-size:29px;
  line-height:1.05;
}
.search-result-list h3:hover { color:#087abd; }
.search-result-list p {
  margin:0;
  color:#60727e;
  font-size:13px;
  line-height:1.55;
}
.search-result-list mark {
  padding:0 .08em;
  background:#dff1fb;
  color:inherit;
}
.search-empty-state {
  margin-top:28px;
  padding:28px;
  border:1px dashed #c7dbe5;
  border-radius:14px;
  background:#f8fbfc;
  color:#6c7f8a;
}
.search-empty-state b {
  display:block;
  margin-bottom:5px;
  color:#284657;
  font-family:var(--serif);
  font-size:22px;
}
.search-empty-state p { margin:0; }
.search-empty-start {
  max-width:520px;
}

/* Publication footer */
.footer {
  margin-top:30px;
  padding:0;
  border-top:0;
  background:#102b3d;
  color:#c9d7df;
}
.footer-inner {
  max-width:1320px;
  display:grid;
  grid-template-columns:minmax(280px,1.15fr) minmax(420px,1.4fr);
  gap:70px;
  padding:50px 28px 38px;
}
.footer-brand {
  max-width:460px;
}
.footer-brand-lockup {
  display:flex;
  align-items:center;
  gap:12px;
}
.footer-brand-lockup img {
  width:54px;
  height:54px;
  border-radius:13px;
}
.footer-brand-lockup strong {
  display:block;
  color:white;
  font-family:var(--serif);
  font-size:28px;
  line-height:1;
}
.footer-brand-lockup span {
  color:#8fb2c7;
  font-size:8px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.footer-brand > p {
  max-width:410px;
  margin:18px 0 23px;
  color:#9fb4c1;
  font-family:var(--serif);
  font-size:16px;
  line-height:1.55;
}
.footer-newsletter {
  max-width:390px;
}
.footer-newsletter > label {
  display:block;
  margin-bottom:7px;
  color:#dce8ef;
  font-size:9px;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.footer-newsletter > div {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
}
.footer-newsletter input {
  min-width:0;
  border:1px solid #35556a;
  border-right:0;
  border-radius:9px 0 0 9px;
  background:#0b2231;
  color:white;
  padding:11px 12px;
  outline:none;
}
.footer-newsletter input:focus {
  border-color:#62b8e7;
}
.footer-newsletter button {
  border:1px solid #168bd2;
  border-radius:0 9px 9px 0;
  background:#168bd2;
  color:white;
  padding:0 16px;
  font-weight:800;
}
.footer-columns {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:22px;
}
.footer-columns > div {
  display:grid;
  align-content:start;
  gap:9px;
}
.footer-columns b {
  margin-bottom:4px;
  color:#7fbfe2;
  font-size:9px;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.footer-columns a {
  width:max-content;
  max-width:100%;
  color:#c3d3dc;
  font-size:11px;
}
.footer-columns a:hover { color:white; }
.footer-bottom {
  max-width:1320px;
  margin:auto;
  padding:15px 28px 20px;
  display:flex;
  justify-content:space-between;
  gap:20px;
  border-top:1px solid #294759;
  color:#7897aa;
  font-size:9px;
}

/* Small global polish */
.kicker {
  letter-spacing:.13em;
}
.story-card,
.front-feature-story,
.related-grid article,
.search-result-list article {
  will-change:transform;
}
.story-image {
  border-radius:11px;
}
a:focus-visible,
button:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible {
  outline:3px solid rgba(22,139,210,.22);
  outline-offset:2px;
}
::selection {
  background:#cdeaf8;
  color:#173246;
}

@media (max-width:1000px) {
  .section-front-hero {
    grid-template-columns:minmax(0,1.35fr) minmax(260px,.7fr);
  }
  .section-latest {
    grid-column:1 / -1;
    display:grid;
    grid-template-columns:180px repeat(4,minmax(0,1fr));
    align-items:start;
    gap:0 16px;
  }
  .section-latest-title {
    border-bottom:0;
    border-right:1px solid #d7e4ea;
    padding-right:15px;
  }
  .section-latest article {
    border-bottom:0;
    padding:0;
  }
  .article-content-grid {
    grid-template-columns:minmax(0,1fr) 190px;
    gap:34px;
  }
}

@media (max-width:820px) {
  .front-lead-text {
    grid-template-columns:1fr;
  }
  .front-lead-text .meta { white-space:normal; }
  .section-front-head {
    align-items:start;
    flex-direction:column;
    gap:12px;
  }
  .section-front-hero {
    grid-template-columns:1fr;
  }
  .section-secondary {
    grid-template-columns:1fr 1fr;
    padding:26px 0 0;
    border-left:0;
    border-top:1px solid #d8e1e6;
  }
  .section-secondary article + article {
    padding:0 0 0 22px;
    border-top:0;
    border-left:1px solid #dde5ea;
  }
  .section-latest {
    grid-column:auto;
    display:block;
  }
  .section-latest-title {
    border-right:0;
    border-bottom:2px solid #168bd2;
    padding-right:0;
  }
  .section-latest article { padding:14px 0; }
  .section-more-grid {
    grid-template-columns:1fr 1fr;
  }
  .section-more-grid .story-card:nth-child(3n) {
    border-right:1px solid #dae2e7;
  }
  .section-more-grid .story-card:nth-child(2n) {
    border-right:0;
  }
  .article-content-grid {
    grid-template-columns:1fr;
  }
  .article-rail {
    position:static;
    grid-template-columns:1fr 1fr;
    order:-1;
    padding-top:18px;
  }
  .live-update {
    grid-template-columns:1fr;
    gap:8px;
  }
  .live-update-time {
    padding-left:18px;
  }
  .live-update-time::before { display:none; }
  .footer-inner {
    grid-template-columns:1fr;
    gap:38px;
  }
}

@media (max-width:640px) {
  .front-live-alert {
    margin-left:8px;
    margin-right:8px;
    border-radius:10px;
  }
  .front-latest {
    padding:17px;
  }
  .section-front {
    padding:30px 18px 70px;
  }
  .section-front-head h1 {
    font-size:52px;
  }
  .section-front-hero {
    padding-top:22px;
  }
  .section-lead h2 {
    font-size:40px;
  }
  .section-secondary {
    grid-template-columns:1fr;
  }
  .section-secondary article + article {
    padding:22px 0 0;
    border-left:0;
    border-top:1px solid #dde5ea;
  }
  .section-more-grid {
    grid-template-columns:1fr;
  }
  .section-more-grid .story-card,
  .section-more-grid .story-card:nth-child(3n),
  .section-more-grid .story-card:nth-child(2n) {
    padding-right:0;
    border-right:0;
  }
  .article-wrap {
    padding:34px 18px 72px;
  }
  .article-head h1 {
    font-size:clamp(44px,13vw,62px);
  }
  .article-head .dek {
    font-size:20px;
  }
  .article-featured {
    margin-left:-8px;
    margin-right:-8px;
  }
  .article-featured img {
    border-radius:12px;
  }
  .article-rail {
    grid-template-columns:1fr;
  }
  .share-bar em {
    display:none;
  }
  .share-bar a,
  .share-bar button {
    width:35px;
    padding:0;
    justify-content:center;
  }
  .article-live-banner {
    align-items:flex-start;
    flex-wrap:wrap;
  }
  .article-live-banner span:last-child {
    width:100%;
    margin-left:18px;
  }
  .live-update-copy {
    padding:14px;
  }
  .search-page {
    padding:34px 18px 70px;
  }
  .search-hero {
    padding:22px 18px;
    border-radius:16px;
  }
  .search-hero h1 {
    font-size:48px;
  }
  .search-hero form {
    grid-template-columns:auto minmax(0,1fr);
  }
  .search-hero form button {
    grid-column:1 / -1;
    min-height:42px;
  }
  .search-result-list article {
    grid-template-columns:1fr;
    gap:13px;
  }
  .search-results-head {
    align-items:start;
    flex-direction:column;
    gap:5px;
  }
  .footer-inner {
    padding:38px 18px 30px;
  }
  .footer-columns {
    grid-template-columns:1fr 1fr;
    gap:26px;
  }
  .footer-bottom {
    padding:14px 18px 18px;
    flex-direction:column;
    gap:5px;
  }
}

@media (prefers-reduced-motion:reduce) {
  .public-loading span,
  .front-live-dot {
    animation:none;
  }
  .front-feature-image img,
  .front-stack-image img,
  .story-image,
  .related-image img,
  .search-result-image img,
  .section-lead-image img {
    transition:none;
  }
}


/* Footer contrast + section title spacing fix */

/* Give long section names, especially Geopolitics, a little breathing room before the desk description. */
.section-front-head h1 + p {
  margin-top: 9px;
}

/* The public light-theme footer rule was overriding the redesigned dark publication footer.
   Reassert the intended footer palette with the correct specificity. */
.shell .footer {
  margin-top:30px;
  padding:0;
  border-top:0;
  background:#102b3d;
  color:#c9dce7;
}

.shell .footer-brand-lockup strong {
  color:#ffffff;
}

.shell .footer-brand-lockup span {
  color:#73c7f1;
}

.shell .footer-brand > p {
  color:#b6cfdd;
}

.shell .footer-newsletter > label {
  color:#73c7f1;
}

.shell .footer-columns b {
  color:#67c4f1;
}

.shell .footer-columns a {
  color:#c8dce7;
}

.shell .footer-columns a:hover {
  color:#ffffff;
}

.shell .footer-bottom {
  border-top-color:#315268;
  color:#8fb4c6;
}

.shell .footer-newsletter input {
  background:#0b2231;
  color:#ffffff;
  border-color:#3a6077;
}

.shell .footer-newsletter input::placeholder {
  color:#7794a5;
}

.shell .footer-newsletter button {
  background:#168bd2;
  border-color:#168bd2;
  color:#ffffff;
}

@media (max-width:640px) {
  .section-front-head h1 + p {
    margin-top:7px;
  }
}


/* Mobile homepage cascade repair */
/* Reassert mobile homepage structure after the later desktop editorial refresh. */
@media (max-width:860px) {
  .front-page {
    padding-top:18px;
  }

  .front-hero {
    display:grid;
    grid-template-columns:minmax(0,1fr);
    gap:28px;
    padding:20px 0 42px;
  }

  .front-lead {
    min-width:0;
    width:100%;
    padding-right:0;
  }

  .front-lead h1 {
    max-width:none;
    margin:9px 0 18px;
    font-size:clamp(42px,10.5vw,60px);
    line-height:.94;
    letter-spacing:-.052em;
    overflow-wrap:break-word;
    word-break:normal;
  }

  .front-lead-copy {
    display:grid;
    grid-template-columns:minmax(0,1fr);
    gap:17px;
    align-items:start;
  }

  .front-lead-image {
    width:100%;
    border-radius:13px;
  }

  .front-lead-image img {
    width:100%;
    aspect-ratio:16/9;
  }

  .front-lead-text {
    display:block;
    padding:0;
  }

  .front-lead-text > p {
    max-width:none;
    font-size:18px;
    line-height:1.5;
  }

  .front-lead-text .meta {
    margin-top:13px;
    white-space:normal;
  }

  .front-latest {
    width:100%;
    min-width:0;
    margin:0;
    padding:20px;
    border-left:0;
    border-top:1px solid #d4e2e9;
    border-radius:16px;
  }

  .front-latest-item {
    grid-template-columns:28px minmax(0,1fr);
  }

  .front-latest-item h3 {
    font-size:18px;
    overflow-wrap:break-word;
  }
}

@media (max-width:640px) {
  .front-page {
    padding-left:16px;
    padding-right:16px;
  }

  .front-hero {
    gap:24px;
    padding-top:16px;
    padding-bottom:36px;
  }

  .front-lead h1 {
    font-size:clamp(38px,11vw,50px);
    line-height:.95;
    letter-spacing:-.045em;
  }

  .front-lead-text > p {
    font-size:17px;
  }

  .front-latest {
    padding:17px 16px;
    border-radius:14px;
  }

  .front-latest-head h2 {
    font-size:27px;
  }

  .front-latest-item {
    gap:9px;
    padding:15px 0;
  }

  .front-latest-item h3 {
    font-size:17px;
    line-height:1.16;
  }
}

/* Keep the homepage from creating accidental horizontal page overflow. */
.front-page,
.front-hero,
.front-lead,
.front-latest {
  min-width:0;
}

@media (max-width:860px) {
  .front-page {
    overflow-x:hidden;
  }
}


/* Standard article flow: body first, tags after */
.article-wrap > .article-body {
  max-width:740px;
  padding-top:30px;
}

.article-wrap > .article-tags {
  max-width:740px;
  margin-top:34px;
  padding-top:18px;
  border-top:1px solid #d9e3e8;
}

@media (max-width:820px) {
  .article-wrap > .article-body,
  .article-wrap > .article-tags {
    max-width:none;
  }
}

@media (max-width:640px) {
  .article-wrap > .article-tags {
    margin-top:28px;
    padding-top:16px;
  }
}


/* Telegram share icon */
.share-bar .telegram-mark {
  display:inline-grid;
  place-items:center;
  width:16px;
  height:16px;
  color:#168bd2;
}
.share-bar .telegram-mark svg {
  display:block;
  width:16px;
  height:16px;
}


/* Final public polish pass */

/* Keyboard accessibility */
.skip-link {
  position:fixed;
  left:18px;
  top:10px;
  z-index:9999;
  padding:9px 13px;
  border-radius:9px;
  background:#102b3d;
  color:#fff;
  font:800 11px var(--sans);
  transform:translateY(-160%);
  transition:transform .16s ease;
  box-shadow:0 8px 22px rgba(20,50,68,.18);
}
.skip-link:focus {
  transform:translateY(0);
}

/* Mobile nav overflow cues */
@media (max-width:940px) {
  .shell .nav {
    position:relative;
  }
  .shell .nav::before,
  .shell .nav::after {
    content:"";
    position:absolute;
    top:0;
    bottom:0;
    width:34px;
    z-index:3;
    pointer-events:none;
    opacity:0;
    transition:opacity .16s ease;
  }
  .shell .nav::before {
    left:0;
    background:linear-gradient(90deg,rgba(232,245,251,.98),rgba(232,245,251,0));
  }
  .shell .nav::after {
    right:0;
    background:linear-gradient(270deg,rgba(232,245,251,.98),rgba(232,245,251,0));
  }
  .shell .nav.scroll-left::before { opacity:1; }
  .shell .nav.scroll-right::after { opacity:1; }
}

/* Share controls use one icon system */
.share-bar .share-mark {
  width:16px;
  height:16px;
  display:inline-grid;
  place-items:center;
  color:#168bd2;
}
.share-bar .share-mark svg {
  width:16px;
  height:16px;
  display:block;
}

/* Homepage and footer social marks */
.front-social-links span svg,
.footer-socials span svg {
  display:block;
  width:16px;
  height:16px;
}
.front-social-links span {
  display:grid;
  place-items:center;
}

/* Footer social links */
.footer-socials {
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:12px;
}
.shell .footer-socials a {
  display:inline-flex;
  align-items:center;
  gap:6px;
  width:auto;
  padding:7px 9px;
  border:1px solid #36566a;
  border-radius:9px;
  color:#bcd6e5;
  background:#0c2433;
  font-size:10px;
  font-weight:750;
}
.shell .footer-socials a:hover {
  color:#fff;
  border-color:#4c7a94;
  background:#133247;
}
.footer-socials span {
  display:grid;
  place-items:center;
  color:#65c6f2;
}
.footer-socials b {
  margin:0;
  color:inherit;
  font-size:10px;
  letter-spacing:0;
  text-transform:none;
}

/* Rich 404 recovery */
.not-found-rich {
  max-width:1120px;
  margin:auto;
  padding:70px 28px 90px;
}
.not-found-copy {
  max-width:720px;
}
.not-found-copy h1 {
  margin:10px 0 14px;
  color:#142834;
  font-family:var(--serif);
  font-size:clamp(54px,7vw,88px);
  line-height:.92;
  letter-spacing:-.06em;
}
.not-found-copy > p {
  max-width:600px;
  margin:0 0 24px;
  color:#60727e;
  font-family:var(--serif);
  font-size:19px;
  line-height:1.5;
}
.not-found-copy > div {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.not-found-latest {
  margin-top:58px;
  padding-top:28px;
  border-top:2px solid #17384d;
}
.not-found-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:24px;
}
.not-found-grid article {
  min-width:0;
}
.not-found-grid img {
  width:100%;
  aspect-ratio:16/9;
  object-fit:cover;
  display:block;
  margin-bottom:11px;
  border-radius:11px;
}
.not-found-grid h3 {
  margin:6px 0 8px;
  color:#1e3543;
  font-family:var(--serif);
  font-size:23px;
  line-height:1.08;
}
.not-found-grid h3:hover { color:#087abd; }
.not-found-grid small {
  color:#8999a3;
  font-size:10px;
}

/* Decoded images still reserve stable visual space through existing aspect ratios. */
img {
  max-width:100%;
}

@media (max-width:700px) {
  .not-found-rich {
    padding:48px 18px 70px;
  }
  .not-found-grid {
    grid-template-columns:1fr;
    gap:26px;
  }
  .not-found-copy h1 {
    font-size:52px;
  }
}

@media (prefers-reduced-motion:reduce) {
  .skip-link,
  .shell .nav::before,
  .shell .nav::after {
    transition:none;
  }
}


/* Newsroom live-story indicator */
.admin-live-label {
  display:inline-flex;
  align-items:center;
  margin-right:5px;
  padding:2px 5px;
  border-radius:999px;
  background:#b42318;
  color:#fff;
  font-size:8px;
  font-weight:900;
  line-height:1.2;
  letter-spacing:.08em;
  vertical-align:1px;
}


/* Live article newsroom workflow */
.live-editor-panel {
  margin-top:18px;
  border-color:#efc4bf;
  background:#fffafa;
}
.live-editor-head {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:24px;
  margin-bottom:22px;
}
.live-editor-head h2 {
  margin:4px 0 5px;
}
.live-editor-head p {
  margin:0;
  color:#73838d;
  font-size:12px;
}
.live-editor-panel textarea {
  min-height:150px;
}
.live-update-admin-list {
  display:grid;
  gap:12px;
  margin-top:26px;
  padding-top:22px;
  border-top:1px solid #ead8d5;
}
.live-update-admin-item {
  padding:16px 17px;
  border:1px solid #e7d8d5;
  border-radius:12px;
  background:#fff;
}
.live-update-admin-meta {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-bottom:8px;
}
.live-update-admin-meta time {
  color:#8a7774;
  font-size:9px;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
}
.delete-live-update {
  border:0;
  background:transparent;
  color:#b42318;
  font-size:10px;
  font-weight:800;
  cursor:pointer;
}
.live-update-admin-item h3 {
  margin:0 0 7px;
  color:#243d4a;
  font-size:18px;
}
.live-update-admin-item p {
  margin:0;
  color:#4f626e;
  font-size:13px;
  line-height:1.55;
}
.live-update-admin-item > a {
  display:inline-block;
  margin-top:9px;
  color:#087bbe;
  font-size:10px;
  font-weight:800;
}
.live-update-copy > h3 {
  margin:0 0 8px;
  color:#18394d;
  font-size:22px;
  line-height:1.2;
}


/* Article quote formatting */
.visual-body-editor blockquote {
  position:relative;
  margin:24px 0;
  padding:18px 22px 18px 25px;
  border-left:4px solid #168bd2;
  border-radius:0 10px 10px 0;
  background:#f2f8fb;
  color:#284657;
  font-family:var(--serif);
  font-size:inherit;
  line-height:inherit;
}
.visual-body-editor blockquote::before {
  content:"“";
  position:absolute;
  top:5px;
  left:8px;
  color:#a9d6ec;
  font-family:Georgia,serif;
  font-size:32px;
  line-height:1;
}
.article-body .article-quote {
  position:relative;
  margin:36px 0;
  padding:22px 28px 22px 32px;
  border-left:4px solid #168bd2;
  border-radius:0 12px 12px 0;
  background:#f3f8fb;
  color:#234352;
  font-family:var(--serif);
  font-size:inherit;
  font-weight:inherit;
  line-height:inherit;
}
.article-body .article-quote::before {
  content:"“";
  position:absolute;
  top:8px;
  left:10px;
  color:#9fd0e8;
  font-family:Georgia,serif;
  font-size:40px;
  line-height:1;
}
.article-body .article-quote strong {
  color:inherit;
}
.article-body .article-quote a {
  color:#087bbe;
}
@media (max-width:640px) {
  .visual-body-editor blockquote {
    padding:16px 18px 16px 22px;
    font-size:inherit;
  }
  .article-body .article-quote {
    margin:30px 0;
    padding:19px 20px 19px 25px;
    font-size:inherit;
  }
}


/* Newsroom 2.0 - route-aware, WordPress-inspired workspace */
.admin-shell {
  grid-template-columns:272px minmax(0,1fr);
  min-height:100vh;
  background:#f4f7f9;
  color:#1b3444;
}
.admin-side {
  display:flex;
  flex-direction:column;
  height:100vh;
  padding:18px 14px;
  background:linear-gradient(180deg,#f8fcfe 0%,#edf6fb 58%,#e8f2f8 100%);
  border-right:1px solid #d6e3ea;
  box-shadow:10px 0 35px rgba(35,74,98,.055);
  z-index:90;
}
.admin-brand {
  gap:11px;
  padding:5px 8px 20px;
  margin-bottom:8px;
  border-bottom:1px solid rgba(164,194,211,.46);
}
.admin-brand-mark {
  width:43px;
  height:43px;
  flex:0 0 43px;
  display:grid;
  place-items:center;
  overflow:hidden;
  border:1px solid #bdd6e3;
  border-radius:12px;
  background:#fff;
  box-shadow:0 6px 18px rgba(50,94,120,.1);
}
.admin-brand-mark img { width:100%; height:100%; object-fit:cover; }
.admin-brand > div:last-child { display:grid; gap:2px; min-width:0; }
.admin-brand b { font-size:17px; line-height:1.05; color:#173246; }
.admin-brand span { color:#7b909c; font-size:10px; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }
.admin-menu {
  display:flex;
  flex:1;
  min-height:0;
  flex-direction:column;
  gap:3px;
  overflow-y:auto;
  padding:2px;
}
.admin-menu-label {
  margin:16px 10px 5px;
  color:#91a3ad;
  font-size:9px;
  font-weight:900;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.admin-menu button {
  width:100%;
  min-height:42px;
  display:flex;
  align-items:center;
  gap:11px;
  padding:9px 11px;
  border-radius:10px;
  color:#5f7481;
  font-size:12px;
  font-weight:750;
  transition:background .16s ease,color .16s ease,transform .16s ease,box-shadow .16s ease;
}
.admin-menu button:hover {
  transform:translateX(2px);
  background:rgba(255,255,255,.78);
  color:#177fb8;
  box-shadow:none;
}
.admin-menu button.active {
  background:#fff;
  color:#0d7fbe;
  box-shadow:0 7px 22px rgba(55,100,126,.105);
}
.admin-menu-icon {
  width:19px;
  height:19px;
  display:grid;
  place-items:center;
  flex:0 0 19px;
}
.admin-menu-icon svg {
  width:18px;
  height:18px;
  fill:none;
  stroke:currentColor;
  stroke-width:1.7;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.admin-menu-footer {
  margin-top:auto;
  padding-top:14px;
  border-top:1px solid rgba(164,194,211,.52);
  display:grid;
  gap:5px;
}
.admin-view-site {
  min-height:40px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:8px 11px;
  border-radius:10px;
  color:#496877;
  font-size:11px;
  font-weight:800;
}
.admin-view-site:hover { background:#fff; color:#087fbe; }
.admin-main {
  min-width:0;
  padding:0 34px 54px;
  background:
    radial-gradient(circle at 82% -4%,rgba(126,203,238,.2),transparent 30%),
    linear-gradient(180deg,#f7f9fa 0%,#f4f7f9 100%);
}
.admin-workbar {
  position:sticky;
  top:0;
  z-index:75;
  min-height:66px;
  margin:0 -34px;
  padding:0 34px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  border-bottom:1px solid rgba(205,220,229,.84);
  background:rgba(247,249,250,.88);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
}
.admin-breadcrumb { display:flex; align-items:center; gap:8px; font-size:11px; }
.admin-breadcrumb span { color:#8a9ba5; }
.admin-breadcrumb span::after { content:"/"; margin-left:8px; color:#b0bec6; }
.admin-breadcrumb b { color:#294b5e; font-size:12px; }
.admin-work-actions { display:flex; align-items:center; gap:8px; }
.admin-work-actions a,
.admin-work-actions button {
  min-height:36px;
  border-radius:9px;
  padding:8px 12px;
  font-size:11px;
  font-weight:850;
}
.admin-work-actions a { color:#587483; border:1px solid transparent; }
.admin-work-actions a:hover { color:#087fbe; background:#fff; border-color:#d7e5ec; }
.admin-work-actions button {
  border:1px solid #168bd2;
  background:#168bd2;
  color:#fff;
  box-shadow:0 7px 18px rgba(22,139,210,.18);
}
.admin-work-actions button:hover { background:#0f7fc4; }
.admin-main-inner {
  width:min(1440px,100%);
  margin:0 auto;
  padding-top:30px;
}
.admin-top {
  margin-bottom:22px;
  align-items:flex-end;
}
.admin-top h1 {
  font-size:38px;
  letter-spacing:-.025em;
  color:#173246;
}
.admin-top p,
.admin-top span:not(.admin-eyebrow) { color:#718692; }
.admin-eyebrow {
  display:block;
  margin-bottom:5px;
  color:#168bd2;
  font-size:9px;
  font-weight:900;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.stats { gap:16px; }
.stat {
  position:relative;
  overflow:hidden;
  min-height:116px;
  padding:20px;
  border:1px solid #d8e4ea;
  border-radius:15px;
  background:#fff;
  box-shadow:0 9px 28px rgba(46,80,101,.055);
}
.stat::before {
  content:"";
  position:absolute;
  left:0;
  top:0;
  width:100%;
  height:3px;
  background:linear-gradient(90deg,#168bd2,#8ed5f4);
}
.stat strong { font-size:34px; color:#173246; letter-spacing:-.035em; }
.admin-panel {
  border:1px solid #dbe6ec;
  border-radius:16px;
  background:rgba(255,255,255,.96);
  box-shadow:0 10px 30px rgba(43,78,99,.055);
}
.table-wrap { border-radius:11px; }
.admin-panel table tbody tr { transition:background .14s ease; }
.admin-panel table tbody tr:hover { background:#f7fbfd; }
th { color:#8295a0; font-weight:900; }
td { color:#385567; }
.field label { color:#6f838f; font-weight:850; }
.field input,
.field textarea,
.field select {
  min-height:42px;
  background:#fff;
  border-color:#d1e0e8;
  border-radius:9px;
  color:#1b3444;
}
.field textarea { padding:11px 12px; }
.toggle {
  align-self:end;
  min-height:42px;
  padding:0 12px;
  border:1px solid #d5e3ea;
  border-radius:9px;
  background:#f9fbfc;
}
.admin-login-kicker {
  display:block;
  margin:0 auto 8px;
  text-align:center;
  color:#168bd2;
  font-size:9px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.14em;
}

/* =========================================================
   LIVE DESK - dedicated newsroom + reader experience
   ========================================================= */

/* Sidebar/workbar live affordances */
.admin-menu button[data-tab="live"] { color:#7d5560; }
.admin-menu button[data-tab="live"] .admin-menu-icon { color:#d7475b; }
.admin-menu button[data-tab="live"].active,
.admin-menu button[data-tab="live"]:hover {
  color:#b92f45;
  background:linear-gradient(135deg,#fff 0%,#fff6f7 100%);
}
.admin-live-shortcut {
  display:inline-flex!important;
  align-items:center;
  gap:7px;
  border-color:#ead0d4!important;
  background:#fff8f8!important;
  color:#b63449!important;
  box-shadow:none!important;
}
.admin-live-shortcut span,
.live-start-btn span,
.resume-live-btn span,
.go-live-btn span,
.live-push-row button span {
  width:7px;
  height:7px;
  display:inline-block;
  border-radius:50%;
  background:#ee4058;
  box-shadow:0 0 0 5px rgba(238,64,88,.11);
}
.admin-live-shortcut:hover { background:#fff1f3!important; border-color:#e4aeb7!important; }

/* Public live article */
.live-coverage-article {
  max-width:1080px;
}
.live-story-banner {
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:center;
  gap:16px;
  margin:0 0 26px;
  padding:12px 16px;
  border:1px solid #d4e2e8;
  border-radius:14px;
  background:#f7fafb;
}
.live-story-banner.is-active {
  border-color:#eac8cd;
  background:
    radial-gradient(circle at 88% 50%,rgba(238,64,88,.075),transparent 20%),
    linear-gradient(90deg,#fff7f8,#fffdfa);
}
.live-story-banner-state {
  min-height:34px;
  display:flex;
  align-items:center;
  gap:8px;
  padding:7px 10px;
  border-radius:999px;
  background:#e9eef1;
  color:#657983;
}
.live-story-banner.is-active .live-story-banner-state {
  background:#172b36;
  color:#fff;
}
.live-story-banner-state i {
  width:8px;
  height:8px;
  border-radius:50%;
  background:#95a4ab;
}
.live-story-banner.is-active .live-story-banner-state i {
  background:#ff5167;
  box-shadow:0 0 0 5px rgba(255,81,103,.13);
  animation:apexLivePulse 1.55s ease-in-out infinite;
}
.live-story-banner-state b { font:900 9px var(--sans); letter-spacing:.1em; }
.live-story-banner-copy { display:grid; gap:2px; }
.live-story-banner-copy strong { color:#2d4a59; font:800 11px var(--sans); }
.live-story-banner-copy span { color:#85959d; font:500 10px var(--sans); }
.live-article-head {
  position:relative;
  padding-bottom:34px;
}
.live-article-head h1 {
  max-width:980px;
}
.live-featured {
  margin-top:4px;
  border-radius:18px;
  overflow:hidden;
}
.live-article-body {
  max-width:900px;
  margin-left:auto;
  margin-right:auto;
}
.reader-live-stream {
  position:relative;
  margin:42px 0 52px;
  border:1px solid #d9e4e9;
  border-radius:18px;
  background:#fffdfa;
  box-shadow:0 16px 44px rgba(35,69,90,.065);
  overflow:hidden;
}
.reader-live-stream-head {
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  padding:20px 24px 17px;
  border-bottom:1px solid #dfe8ec;
  background:linear-gradient(180deg,#fbfcfd,#f6f9fa);
}
.reader-live-stream.is-active .reader-live-stream-head {
  background:linear-gradient(120deg,#132b38 0%,#1c3948 100%);
  border-bottom-color:#294a5b;
}
.reader-live-stream-head h2 {
  margin:5px 0 0;
  color:#1c3746;
  font:700 34px/1 var(--serif);
}
.reader-live-stream.is-active .reader-live-stream-head h2 { color:#fff; }
.reader-live-status {
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:#758993;
  font:900 9px var(--sans);
  letter-spacing:.11em;
}
.reader-live-stream.is-active .reader-live-status { color:#ffc0c8; }
.reader-live-status i {
  width:8px;
  height:8px;
  border-radius:50%;
  background:#9ba9af;
}
.reader-live-stream.is-active .reader-live-status i {
  background:#ff5167;
  box-shadow:0 0 0 5px rgba(255,81,103,.13);
  animation:apexLivePulse 1.55s ease-in-out infinite;
}
.reader-live-stream-meta {
  display:grid;
  justify-items:end;
  gap:2px;
  font-family:var(--sans);
}
.reader-live-stream-meta span { color:#8b9ba3; font-size:9px; text-transform:uppercase; letter-spacing:.08em; }
.reader-live-stream-meta b { color:#657a85; font-size:10px; }
.reader-live-stream.is-active .reader-live-stream-meta span { color:#84a5b4; }
.reader-live-stream.is-active .reader-live-stream-meta b { color:#d8e6ec; }
.reader-live-rail {
  position:relative;
  padding:6px 26px 10px;
}
.reader-live-rail::before {
  content:"";
  position:absolute;
  left:50px;
  top:14px;
  bottom:28px;
  width:2px;
  background:linear-gradient(180deg,#e86374,#9fd0e6 45%,#e3eaed 100%);
}
.reader-live-update {
  position:relative;
  display:grid;
  grid-template-columns:112px minmax(0,1fr);
  gap:26px;
  padding:26px 0 28px;
  border-bottom:1px solid #e8edef;
}
.reader-live-update:last-child { border-bottom:0; }
.reader-live-update::before {
  content:"";
  position:absolute;
  left:19px;
  top:34px;
  width:12px;
  height:12px;
  border:3px solid #fffdfa;
  border-radius:50%;
  background:#85b7cf;
  box-shadow:0 0 0 2px #c4dce7;
  z-index:2;
}
.reader-live-update.is-latest::before {
  background:#f04a60;
  box-shadow:0 0 0 2px #f1b7c0,0 0 0 7px rgba(240,74,96,.09);
}
.reader-live-time {
  padding-left:42px;
  display:grid;
  align-content:start;
  gap:2px;
  font-family:var(--sans);
}
.reader-live-time time {
  color:#bd3449;
  font-size:17px;
  font-weight:950;
  font-variant-numeric:tabular-nums;
}
.reader-live-time span { color:#92a1a8; font-size:9px; }
.reader-live-time b {
  width:max-content;
  margin-top:6px;
  padding:4px 7px;
  border-radius:999px;
  background:#fff0f2;
  color:#c6374c;
  font-size:8px;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.reader-live-copy {
  min-width:0;
  padding-right:8px;
}
.reader-live-copy h3 {
  margin:0 0 9px;
  color:#18313e;
  font:700 27px/1.08 var(--serif);
  letter-spacing:-.015em;
}
.reader-live-body {
  color:#3d5664;
  font:500 18px/1.72 var(--serif);
}
.reader-live-body p { margin:0 0 1em; }
.reader-live-body h2,
.reader-live-body h3 { color:#1f3d4d; }
.reader-live-source {
  display:inline-flex;
  margin-top:8px;
  color:#147fb9;
  font:800 10px var(--sans);
  text-decoration:none;
}
.reader-live-empty { padding:38px 24px; color:#87979f; text-align:center; font:500 13px var(--sans); }
.live-story-context {
  margin:58px 0 0;
  padding:30px 34px;
  border-top:4px solid #d6e6ee;
  background:#f8fafb;
  border-radius:0 0 14px 14px;
}
.live-story-context-head { margin-bottom:16px; }
.live-story-context-head h2 {
  margin:4px 0 0;
  color:#1f3b4a;
  font:700 30px/1.05 var(--serif);
}
.live-story-context > p { color:#4f6571; }

@keyframes apexLivePulse {
  0%,100% { opacity:1; transform:scale(1); }
  50% { opacity:.55; transform:scale(.84); }
}

@media (max-width:1000px) {
  .live-library-grid { grid-template-columns:1fr; }
  .live-desk-layout { grid-template-columns:1fr; }
  .live-desk-preview { position:relative; top:auto; }
}
@media (max-width:700px) {
  .live-control-head { padding:20px; flex-direction:column; }
  .live-control-head-actions { justify-content:flex-start; }
  .live-desk-layout { padding:10px; gap:10px; }
  .live-setup-form { grid-template-columns:1fr; padding:14px; }
  .live-setup-form .field.full { grid-column:auto; }
  .delete-live-coverage { margin-left:0; }
  .live-push-row { align-items:flex-start; flex-direction:column; }
  .live-push-row button { width:100%; justify-content:center; }
  .live-admin-update { grid-template-columns:78px minmax(0,1fr) 28px; gap:10px; padding:18px 13px; }
  .live-admin-update-time span { font-size:15px; }
  .live-reader-mini > h2 { font-size:25px; }

  .live-story-banner {
    grid-template-columns:1fr;
    gap:9px;
    padding:12px;
  }
  .live-story-banner-state { width:max-content; }
  .reader-live-stream { margin:30px -3px 40px; border-radius:14px; }
  .reader-live-stream-head { padding:17px; align-items:flex-start; }
  .reader-live-stream-head h2 { font-size:29px; }
  .reader-live-stream-meta { display:none; }
  .reader-live-rail { padding:4px 17px 8px; }
  .reader-live-rail::before { left:30px; }
  .reader-live-update {
    grid-template-columns:1fr;
    gap:10px;
    padding:22px 0 24px 35px;
  }
  .reader-live-update::before { left:7px; top:27px; }
  .reader-live-time { padding-left:0; display:flex; align-items:center; flex-wrap:wrap; gap:7px; }
  .reader-live-time time { font-size:15px; }
  .reader-live-time b { margin-top:0; }
  .reader-live-copy h3 { font-size:23px; }
  .reader-live-body { font-size:17px; line-height:1.68; }
  .live-story-context { margin-top:40px; padding:24px 20px; }
}

.live-library-card.is-draft { border-color:#c9deea; }
.live-library-card.is-draft .live-library-status { background:#f2f9fd; border-bottom-color:#dbeaf1; }
.live-library-card.is-draft .live-library-status b { color:#2b7fa9; }
.live-library-card.is-draft .live-library-dot {
  background:#4ca6d1;
  box-shadow:0 0 0 5px rgba(76,166,209,.1);
}


/* Timeline polish */
.live-running-order-v2 {
  margin-bottom:18px;
  border-radius:16px;
}
.live-running-order-v2 > header {
  min-height:76px;
  align-items:center;
  padding:16px 19px;
}
.live-running-order-v2 > header h2 {
  margin-top:2px;
  font-size:26px;
}
.live-running-order-v2 > header p {
  margin:5px 0 0;
  color:#8898a0;
  font-size:9px;
}
.live-running-empty {
  display:grid;
  justify-items:center;
  gap:5px;
  padding:42px 20px;
}
.live-running-empty > span {
  width:36px;
  height:36px;
  display:grid;
  place-items:center;
  border:1px solid #d5e3e9;
  border-radius:50%;
  background:#f4f9fb;
  color:#56a0c3;
  font-size:20px;
}
.live-running-empty b { color:#4b6675; font-size:11px; }
.live-running-empty p {
  margin:0;
  color:#93a1a8;
  font-size:9px;
}
.live-admin-update {
  transition:background .15s ease;
}
.live-admin-update:hover { background:#fbfdfe; }

/* Active coverage card now has an unmistakable update button */
.live-library-card.is-active { padding-bottom:12px; }
.live-library-add {
  width:calc(100% - 24px);
  min-height:38px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  margin:0 12px;
  border:1px solid #ecc3ca;
  border-radius:10px;
  background:#fff6f7;
  color:#c23349;
  font:850 10px var(--sans);
  cursor:pointer;
  transition:background .15s ease,border-color .15s ease,transform .15s ease;
}
.live-library-add:hover {
  transform:translateY(-1px);
  border-color:#e58a99;
  background:#fff0f2;
}

/* Public live page: slightly more premium, cleaner hierarchy */
.live-story-banner {
  box-shadow:0 10px 28px rgba(31,69,90,.045);
}
.live-story-banner.is-active {
  border-color:#e8bfc6;
  box-shadow:0 12px 34px rgba(180,50,71,.065);
}
.live-article-head h1 {
  font-size:clamp(43px,6.3vw,76px);
  line-height:.98;
  letter-spacing:-.037em;
}
.reader-live-stream {
  border-radius:20px;
  box-shadow:0 20px 52px rgba(31,66,87,.075);
}
.reader-live-stream-head {
  padding:22px 26px 19px;
}
.reader-live-stream.is-active .reader-live-stream-head {
  background:
    radial-gradient(circle at 88% 40%,rgba(255,83,105,.08),transparent 23%),
    linear-gradient(120deg,#122a37 0%,#1c3a49 100%);
}
.reader-live-update.is-latest {
  margin:8px -10px 0;
  padding-left:10px;
  padding-right:10px;
  border:1px solid #f0d6da;
  border-radius:14px;
  background:linear-gradient(120deg,#fff9fa,#fffdfa);
}
.reader-live-update.is-latest + .reader-live-update {
  margin-top:5px;
}

@media (max-width:900px) {
  .live-command-strip {
    grid-template-columns:repeat(2,1fr);
  }
  .live-command-strip > div:nth-child(2) { border-right:0; }
  .live-command-strip > div:nth-child(3),
  .live-command-strip > div:nth-child(4) { border-top:1px solid #e3ebef; }
  .live-strip-jump {
    grid-column:1/-1;
    min-height:38px;
    border-left:0;
    border-top:1px solid #e3ebef;
  }
}
@media (max-width:700px) {
  .live-control-head-v2 { min-height:0; padding:21px 18px 20px; }
  .live-control-head-v2 h1 { font-size:35px; }
  .live-control-head-v2 .live-control-head-actions {
    width:100%;
    display:grid;
    grid-template-columns:1fr 1fr;
  }
  .live-control-head-v2 .live-control-head-actions a,
  .live-control-head-v2 .live-control-head-actions button {
    width:100%;
    justify-content:center;
    text-align:center;
  }
  .live-command-strip { grid-template-columns:1fr 1fr; }
  .live-command-strip > div { padding:10px 13px; }
  .live-desk-layout-v2 { padding:10px; gap:12px; }
  .live-composer-primary form { padding:15px 14px 16px 17px; }
  .live-update-body-field textarea { min-height:190px; }
  .live-update-extras { grid-template-columns:1fr; }
  .live-keyboard-hint { display:none; }
  .live-push-row { align-items:stretch; }
  .live-push-row > div { display:none; }
  .live-push-row button { width:100%; justify-content:center; }
  .live-locked-action { align-items:stretch; flex-direction:column; }
  .locked-action-btn { width:100%; justify-content:center; }
  .live-preview-card-head { padding:0 2px 7px; }
  .live-article-head h1 { font-size:40px; }
  .reader-live-update.is-latest {
    margin:6px -4px 0;
    padding-left:39px;
    padding-right:6px;
  }
}

.live-reader-mini-bar > span.draft {
  background:#4ca6d1;
  box-shadow:0 0 0 5px rgba(76,166,209,.1);
}


/* Homepage APEX LIVE module directly beneath market tape */
.front-live-wrap {
  width:100%;
  border-bottom:1px solid #e5d7da;
  background:
    linear-gradient(180deg,#fffafb 0%,#fffdfb 100%);
}
.front-live-alert-v2 {
  max-width:1320px;
  min-height:96px;
  margin:0 auto;
  padding:15px 28px 16px;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:20px;
  color:#203c4d;
  background:transparent;
  border:0;
  font-size:12px;
  transition:background .16s ease;
}
.front-live-alert-v2:hover {
  background:rgba(255,246,248,.68);
}
.front-live-signal {
  min-width:106px;
  display:flex;
  align-items:center;
  gap:9px;
  align-self:start;
  padding-top:6px;
}
.front-live-signal b {
  color:#c9354c;
  font-size:9px;
  font-weight:950;
  letter-spacing:.13em;
  white-space:nowrap;
}
.front-live-alert-v2 .front-live-dot {
  width:8px;
  height:8px;
  background:#ed455b;
  box-shadow:0 0 0 5px rgba(237,69,91,.11);
  animation:apexLivePulse 1.6s ease-in-out infinite;
}
.front-live-copy {
  min-width:0;
  display:grid;
  gap:3px;
}
.front-live-copy small {
  color:#8d7b80;
  font-size:9px;
  font-weight:850;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.front-live-copy strong {
  color:#173040;
  font:700 25px/1.08 var(--serif);
  letter-spacing:-.022em;
}
.front-live-copy > span {
  max-width:860px;
  color:#6c7c85;
  font-size:11px;
  line-height:1.45;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.front-live-meta {
  min-width:125px;
  display:grid;
  justify-items:end;
  gap:7px;
}
.front-live-meta small {
  color:#9a8c90;
  font-size:9px;
}
.front-live-meta em {
  display:inline-flex;
  align-items:center;
  gap:6px;
  min-height:32px;
  padding:7px 10px;
  border:1px solid #e7bcc4;
  border-radius:999px;
  background:#fff4f6;
  color:#ba3147;
  font-size:10px;
  font-style:normal;
  font-weight:900;
}
.front-live-meta em span {
  transition:transform .16s ease;
}
.front-live-alert-v2:hover .front-live-meta em span {
  transform:translateX(2px);
}

/* Remove legacy strip spacing when v2 is present */
.front-live-alert.front-live-alert-v2 {
  border-top:0;
  border-bottom:0;
}

@media (max-width:760px) {
  .front-live-alert-v2 {
    min-height:0;
    padding:13px 16px 14px;
    grid-template-columns:1fr auto;
    gap:9px 14px;
  }
  .front-live-signal {
    min-width:0;
    padding-top:0;
    grid-column:1;
  }
  .front-live-copy {
    grid-column:1 / -1;
    grid-row:2;
  }
  .front-live-copy strong {
    font-size:21px;
  }
  .front-live-copy > span {
    display:-webkit-box;
    white-space:normal;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
  }
  .front-live-meta {
    grid-column:2;
    grid-row:1;
    min-width:0;
    align-self:start;
  }
  .front-live-meta small { display:none; }
  .front-live-meta em {
    min-height:29px;
    padding:6px 9px;
    font-size:9px;
  }
}
@media (max-width:460px) {
  .front-live-alert-v2 {
    padding-left:14px;
    padding-right:14px;
  }
  .front-live-copy strong {
    font-size:19px;
    line-height:1.1;
  }
  .front-live-meta em {
    padding:6px 8px;
  }
}


/* Reader rendering for media inside individual live updates */
.reader-live-body .article-inline-image {
  margin:18px 0;
}
.reader-live-body .article-inline-image img {
  display:block;
  width:100%;
  max-height:520px;
  object-fit:cover;
  border-radius:12px;
}
.reader-live-body .article-inline-image figcaption {
  margin-top:7px;
  color:#81919a;
  font:500 10px/1.45 var(--sans);
}
.reader-live-body .article-quote {
  margin:18px 0;
  padding:11px 15px;
  border-left:3px solid #72b7d7;
  background:#f3f8fa;
  color:#395766;
}
.reader-live-body .tweet-embed {
  margin:20px 0;
}

@media (max-width:700px) {
  .live-rich-toolbar {
    top:auto;
    flex-wrap:nowrap;
    overflow-x:auto;
    scrollbar-width:none;
  }
  .live-rich-toolbar::-webkit-scrollbar { display:none; }
  .live-rich-toolbar button { flex:0 0 auto; }
  .live-update-body-editor {
    min-height:210px;
    padding:15px 13px 19px;
    font-size:17px;
  }
  .live-rich-insert-fields {
    grid-template-columns:1fr;
  }
}

.live-rich-update {
  display:flex;
  flex-direction:column;
}
.live-rich-toolbar {
  flex:0 0 auto;
  order:0;
}
.live-rich-insert {
  order:1;
}
.live-update-body-editor {
  order:2;
  width:100%;
}


/* Article-level analytics inside newsroom editors */
.writer-header-metrics {
  display:flex;
  align-items:center;
  justify-content:flex-end;
  flex-wrap:wrap;
  gap:8px;
}
.editor-view-stat,
.editor-recent-stat {
  min-height:38px;
  display:flex;
  align-items:center;
  gap:8px;
  padding:7px 10px;
  border:1px solid #d5e4eb;
  border-radius:10px;
  background:#f8fbfc;
  color:#34576a;
}
.editor-view-stat {
  min-width:94px;
}
.editor-view-icon {
  width:24px;
  height:24px;
  display:grid;
  place-items:center;
  border-radius:8px;
  background:#e8f5fb;
  color:#1687bd;
  font-size:10px;
}
.editor-view-stat > div,
.editor-recent-stat {
  line-height:1;
}
.editor-view-stat strong,
.editor-recent-stat strong {
  display:block;
  color:#17364a;
  font:900 13px var(--sans);
  font-variant-numeric:tabular-nums;
}
.editor-view-stat small,
.editor-recent-stat small {
  display:block;
  margin-top:3px;
  color:#83949d;
  font:800 8px var(--sans);
  letter-spacing:.07em;
  text-transform:uppercase;
}
.editor-recent-stat {
  display:grid;
  justify-items:center;
  min-width:52px;
}

/* Five live metrics + action */
.live-command-strip.live-command-strip-analytics {
  grid-template-columns:repeat(5,minmax(110px,1fr)) auto;
}
.live-views-cell span {
  color:#8ba0ab;
  font:750 8px var(--sans);
}
.live-views-cell b {
  font-size:15px;
}

@media (max-width:900px) {
  .live-command-strip.live-command-strip-analytics {
    grid-template-columns:repeat(2,1fr);
  }
  .live-command-strip.live-command-strip-analytics > div:nth-child(2n) {
    border-right:0;
  }
  .live-command-strip.live-command-strip-analytics > div:nth-child(n+3) {
    border-top:1px solid #e3ebef;
  }
}
@media (max-width:700px) {
  .writer-header {
    align-items:flex-start;
  }
  .writer-header-metrics {
    width:100%;
    justify-content:flex-start;
  }
}


/* =========================================================
   NEWSROOM 3.0 - premium CMS workspace
   ========================================================= */

.admin-shell {
  grid-template-columns:252px minmax(0,1fr);
  background:#f5f6f7;
  color:#202d36;
}
.admin-side {
  padding:18px 13px;
  background:
    radial-gradient(circle at 0 0,rgba(42,139,197,.14),transparent 34%),
    linear-gradient(180deg,#111b25 0%,#0d151e 100%);
  border-right:1px solid #172633;
  box-shadow:12px 0 36px rgba(16,30,41,.08);
}
.admin-brand {
  margin-bottom:10px;
  padding:5px 8px 20px;
  border-bottom:1px solid rgba(255,255,255,.07);
}
.admin-brand-mark {
  border-color:rgba(255,255,255,.1);
  background:#fff;
  box-shadow:0 8px 24px rgba(0,0,0,.18);
}
.admin-brand b { color:#f7fbfd; }
.admin-brand span { color:#708493; }
.admin-menu-label { color:#5d7180; }
.admin-menu button {
  min-height:42px;
  border-radius:10px;
  color:#8fa1ae;
  font-weight:760;
}
.admin-menu button:hover {
  transform:none;
  background:rgba(255,255,255,.055);
  color:#eaf6fc;
}
.admin-menu button.active {
  background:linear-gradient(135deg,rgba(30,145,211,.2),rgba(30,145,211,.09));
  color:#9edcff;
  box-shadow:inset 0 0 0 1px rgba(103,197,246,.12);
}
.admin-menu button.active .admin-menu-icon { color:#6fc7f3; }
.admin-menu-footer { border-top-color:rgba(255,255,255,.08); }
.admin-view-site { color:#8296a4; }
.admin-view-site:hover { background:rgba(255,255,255,.055); color:#c9ecff; }
.admin-menu-footer button { color:#748996; }
.admin-menu button[data-tab="live"] { color:#a59299; }
.admin-menu button[data-tab="live"].active,
.admin-menu button[data-tab="live"]:hover {
  color:#ffb4c0;
  background:linear-gradient(135deg,rgba(196,55,77,.18),rgba(196,55,77,.07));
}
.admin-menu button[data-tab="live"] .admin-menu-icon { color:#ef7185; }

.admin-main {
  padding:0 38px 62px;
  background:
    radial-gradient(circle at 88% -5%,rgba(120,195,232,.13),transparent 31%),
    linear-gradient(180deg,#fafbfc 0%,#f4f6f7 100%);
}
.admin-workbar {
  min-height:68px;
  margin:0 -38px;
  padding:0 38px;
  border-bottom:1px solid rgba(218,224,229,.92);
  background:rgba(255,255,255,.86);
  box-shadow:0 1px 0 rgba(255,255,255,.75);
}
.admin-breadcrumb span { color:#9aa7af; }
.admin-breadcrumb b { color:#263d4a; }
.admin-work-actions a {
  color:#627784;
  border-radius:10px;
}
.admin-work-actions button {
  min-height:38px;
  border-radius:10px;
  border-color:#188fd1;
  background:#188fd1;
  box-shadow:0 8px 22px rgba(24,143,209,.17);
}
.admin-work-actions button:hover {
  background:#0e7ebd;
  border-color:#0e7ebd;
}
.admin-live-shortcut {
  border-color:#ecd7db!important;
  background:#fff9fa!important;
  color:#bb3e53!important;
  box-shadow:none!important;
}
.admin-main-inner {
  width:min(1500px,100%);
  padding-top:32px;
}
.admin-top { margin-bottom:24px; }
.admin-top h1 {
  color:#182c38;
  font-size:40px;
  letter-spacing:-.035em;
}
.admin-top p { color:#70818b; }
.admin-eyebrow { color:#1688c8; }
.admin-panel {
  border:1px solid #e1e6e9;
  border-radius:18px;
  background:#fff;
  box-shadow:0 12px 34px rgba(28,50,64,.055);
}
.stat {
  border-color:#e0e6e9;
  border-radius:17px;
  box-shadow:0 10px 28px rgba(28,50,64,.045);
}
.stat::before { height:2px; background:linear-gradient(90deg,#188fd1,#88d2f1); }
.table-wrap table { font-size:12px; }
.admin-panel table tbody tr:hover { background:#f8fafb; }
th {
  color:#8998a1;
  font-size:9px;
  font-weight:900;
}
td { color:#344e5d; }
.outline-btn {
  border-radius:9px;
  border-color:#d9e2e7;
  background:#fff;
  color:#38586a;
}
.blue-btn {
  border-radius:10px!important;
  background:#188fd1!important;
  border-color:#188fd1!important;
  box-shadow:0 8px 20px rgba(24,143,209,.15);
}

/* LIVE editor - same selection-first link popover as standard articles */
.live-link-popover {
  position:fixed;
  z-index:220;
  width:min(390px,calc(100vw - 16px));
}
.live-link-popover::after {
  bottom:-6px;
  top:auto;
}
.live-link-popover.is-below::after {
  top:-6px;
  bottom:auto;
  border-right:0;
  border-bottom:0;
  border-left:1px solid #d5e1e7;
  border-top:1px solid #d5e1e7;
}
.live-link-popover[hidden] {
  display:none!important;
}
.live-update-body-editor a {
  cursor:pointer;
}
.live-keyboard-hints {
  display:flex;
  align-items:center;
  justify-content:flex-end;
  flex-wrap:wrap;
  gap:9px;
}
.live-keyboard-hints .live-keyboard-hint {
  flex:0 0 auto;
}
.live-keyboard-hints .live-keyboard-hint kbd:first-child:last-of-type {
  min-width:34px;
}
@media (max-width:700px) {
  .live-link-popover {
    width:min(360px,calc(100vw - 16px));
  }
  .live-keyboard-hints {
    justify-content:flex-start;
    width:100%;
  }
}


/* =========================================================
   OWNER MODE - private public-site editing controls
   ========================================================= */
.apex-owner-dock {
  position:fixed;
  right:22px;
  bottom:22px;
  z-index:1000;
  display:flex;
  align-items:center;
  gap:7px;
  padding:7px;
  border:1px solid rgba(154,193,214,.72);
  border-radius:14px;
  background:rgba(248,252,254,.95);
  box-shadow:0 16px 42px rgba(31,67,87,.16),0 3px 10px rgba(31,67,87,.06);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}
.owner-dock-status {
  display:flex;
  align-items:center;
  gap:6px;
  padding:0 8px 0 5px;
  color:#6f8795;
  font:850 8px var(--sans);
  letter-spacing:.04em;
  text-transform:uppercase;
  white-space:nowrap;
}
.owner-dock-status i {
  width:7px;
  height:7px;
  border-radius:50%;
  background:#36ad79;
  box-shadow:0 0 0 4px rgba(54,173,121,.1);
}
.apex-owner-dock a {
  min-height:36px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  padding:7px 11px;
  border-radius:9px;
  font:900 9px var(--sans);
  text-decoration:none;
  transition:transform .14s ease,background .14s ease,border-color .14s ease,color .14s ease;
}
.apex-owner-dock a:hover {
  transform:translateY(-1px);
}
.owner-newsroom-link {
  border:1px solid #cde0ea;
  background:#eef8fd;
  color:#197da9;
}
.owner-newsroom-link:hover {
  border-color:#acd0e2;
  background:#e5f5fc;
  color:#086e9d;
}
.owner-edit-link {
  border:1px solid #168bd2;
  background:#168bd2;
  color:#fff;
  box-shadow:0 7px 18px rgba(22,139,210,.15);
}
.owner-edit-link:hover {
  background:#0f7fbe;
  border-color:#0f7fbe;
}
.owner-edit-link span,
.owner-newsroom-link span {
  font-size:12px;
  line-height:1;
}

/* Persistent newsroom sign-in */
.admin-remember {
  display:flex;
  align-items:flex-start;
  gap:10px;
  margin:2px 0 4px;
  padding:11px 12px;
  border:1px solid #d8e5eb;
  border-radius:10px;
  background:#f8fbfc;
  color:#3f5967;
  cursor:pointer;
}
.admin-remember input {
  width:15px!important;
  height:15px!important;
  min-height:15px!important;
  margin:2px 0 0!important;
  padding:0!important;
  accent-color:#168bd2;
  box-shadow:none!important;
}
.admin-remember span {
  display:grid;
  gap:2px;
}
.admin-remember b {
  font:850 10px var(--sans);
}
.admin-remember small {
  color:#81939d;
  font:500 8px/1.45 var(--sans);
}
.admin-login-error {
  min-height:16px;
  color:#b64859;
  font:750 9px var(--sans);
}
@media (max-width:700px) {
  .apex-owner-dock {
    right:10px;
    bottom:10px;
    max-width:calc(100vw - 20px);
  }
  .owner-dock-status {
    display:none;
  }
  .apex-owner-dock a {
    padding-inline:10px;
  }
}


/* Fast Social desk loading feedback */
.social-loading-state {
  min-height:220px;
  display:grid;
  place-items:center;
  align-content:center;
  gap:12px;
  border:1px solid #e1e8eb;
  border-radius:16px;
  background:#fff;
  color:#728691;
  box-shadow:0 10px 26px rgba(31,57,72,.035);
}
.social-loading-state span {
  width:28px;
  height:28px;
  border:3px solid #dcecf4;
  border-top-color:#168bd2;
  border-radius:50%;
  animation:apexSocialSpin .7s linear infinite;
}
.social-loading-state b {
  font:850 10px var(--sans);
}
@keyframes apexSocialSpin { to { transform:rotate(360deg) } }


/* =========================================================
   APEX LEARN - evergreen knowledge layer
   ========================================================= */

/* Learn is a publication utility, not a seventh news desk. */
.shell .learn-nav-link {
  padding:0 12px;
  border-color:#bfcfc8!important;
  background:
    linear-gradient(180deg,rgba(252,254,250,.96),rgba(242,248,244,.96))!important;
  color:#315d50!important;
}
.shell .learn-nav-link svg { stroke:#397463; }
.shell .learn-nav-link:hover {
  border-color:#88b2a3!important;
  background:#edf7f1!important;
  color:#235c4b!important;
  box-shadow:0 8px 20px rgba(47,98,81,.09)!important;
}

/* Homepage knowledge desk */
.front-learn {
  position:relative;
  margin:34px 0 42px;
  padding:27px;
  overflow:hidden;
  border:1px solid #cddbd4;
  border-radius:22px;
  background:
    radial-gradient(circle at 92% 10%,rgba(107,159,139,.13),transparent 28%),
    radial-gradient(circle at 6% 100%,rgba(177,211,226,.18),transparent 28%),
    linear-gradient(135deg,#fbfcf7 0%,#f2f7f3 52%,#f7faf7 100%);
  box-shadow:0 18px 48px rgba(42,72,62,.055);
}
.front-learn::before {
  content:"";
  position:absolute;
  inset:0 auto 0 0;
  width:4px;
  background:linear-gradient(180deg,#407d69,#7ba996,#acd0c1);
}
.front-learn-head {
  position:relative;
  z-index:1;
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:28px;
  padding-bottom:21px;
  border-bottom:1px solid rgba(123,157,143,.22);
}
.front-learn-head > div {
  min-width:0;
  display:flex;
  align-items:center;
  gap:17px;
}
.front-learn-mark {
  width:54px;
  height:54px;
  display:grid;
  place-items:center;
  flex:0 0 54px;
  border:1px solid #9dbbac;
  border-radius:15px;
  background:#244c41;
  color:#f7fbf8;
  box-shadow:0 8px 20px rgba(35,77,65,.13);
  font:700 29px/1 var(--serif);
}
.front-learn-head .front-eyebrow { color:#4b7869; }
.front-learn-head h2 {
  margin:3px 0 4px;
  color:#183b31;
  font:700 clamp(25px,2.4vw,36px)/1.04 var(--serif);
  letter-spacing:-.025em;
}
.front-learn-head p {
  max-width:700px;
  margin:0;
  color:#667c73;
  font-size:11px;
  line-height:1.55;
}
.front-learn-head > a {
  display:inline-flex;
  align-items:center;
  gap:8px;
  flex:0 0 auto;
  padding:9px 12px;
  border:1px solid #aac5b9;
  border-radius:10px;
  background:rgba(255,255,255,.68);
  color:#315f50;
  font-size:9px;
  font-weight:900;
}
.front-learn-head > a:hover {
  border-color:#759f8e;
  background:#fff;
}
.front-learn-grid {
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(330px,.95fr);
  gap:18px;
  padding-top:20px;
}
.front-learn-stack {
  display:grid;
  align-content:start;
}
.learn-card {
  min-width:0;
  display:grid;
  grid-template-columns:112px minmax(0,1fr);
  gap:14px;
  padding:13px 0;
  border-bottom:1px solid rgba(126,155,143,.2);
}
.front-learn-stack .learn-card:first-child { padding-top:0; }
.front-learn-stack .learn-card:last-child { border-bottom:0; }
.learn-card.is-featured {
  grid-template-columns:1fr;
  padding:0 18px 0 0;
  border-right:1px solid rgba(126,155,143,.22);
  border-bottom:0;
}
.learn-card-image {
  display:block;
  width:100%;
  aspect-ratio:16/9;
  overflow:hidden;
  border-radius:12px;
  background:#dce7df;
}
.learn-card:not(.is-featured) .learn-card-image {
  aspect-ratio:4/3;
}
.learn-card-image img {
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
  transition:transform .3s ease;
}
.learn-card:hover .learn-card-image img { transform:scale(1.02); }
.learn-card-placeholder {
  display:grid;
  place-items:center;
  background:
    linear-gradient(145deg,#244c41,#386b5b);
}
.learn-card-placeholder span {
  color:#e9f3ee;
  font:700 14px/1.08 var(--serif);
  letter-spacing:.08em;
  text-align:center;
}
.learn-card-copy { min-width:0; }
.learn-card-meta {
  display:flex;
  align-items:center;
  gap:7px;
  margin-bottom:6px;
}
.learn-card-meta span {
  color:#527768;
  font-size:8px;
  font-weight:900;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.learn-card-meta b {
  padding:3px 6px;
  border-radius:999px;
  background:#e5eee8;
  color:#5d786d;
  font-size:7px;
  font-weight:850;
}
.learn-card h3 {
  margin:0;
  color:#1c3d33;
  font:700 19px/1.1 var(--serif);
  letter-spacing:-.015em;
}
.learn-card.is-featured h3 {
  margin-top:8px;
  font-size:clamp(26px,2.8vw,39px);
  line-height:1.02;
}
.learn-card h3:hover { color:#28705a; }
.learn-card p {
  margin:8px 0 7px;
  color:#667d74;
  font-size:10px;
  line-height:1.55;
}
.learn-card.is-featured p {
  max-width:700px;
  font-size:12px;
}
.learn-card small {
  color:#8a9b94;
  font-size:8px;
  font-weight:700;
}
.front-learn-empty {
  min-height:164px;
  display:grid;
  align-content:center;
}

/* Learn archive */
.learn-index {
  max-width:1240px;
  margin:0 auto;
  padding:46px 28px 88px;
}
.learn-index-hero {
  position:relative;
  min-height:285px;
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(270px,.65fr);
  align-items:center;
  gap:44px;
  padding:44px 48px;
  overflow:hidden;
  border:1px solid #cbdad2;
  border-radius:26px;
  background:
    radial-gradient(circle at 86% 25%,rgba(80,137,116,.16),transparent 26%),
    linear-gradient(135deg,#f9fbf6,#edf4ef);
  box-shadow:0 22px 60px rgba(43,74,63,.07);
}
.learn-index-kicker {
  display:flex;
  align-items:center;
  gap:9px;
  color:#557a6c;
  font-size:9px;
  font-weight:950;
  letter-spacing:.13em;
}
.learn-index-kicker i {
  width:28px;
  height:28px;
  display:grid;
  place-items:center;
  border-radius:8px;
  background:#244c41;
  color:#fff;
  font:700 15px var(--serif);
  font-style:normal;
}
.learn-index-hero h1 {
  margin:13px 0 8px;
  color:#183a31;
  font:700 clamp(58px,8vw,96px)/.88 var(--serif);
  letter-spacing:-.055em;
}
.learn-index-hero p {
  max-width:660px;
  margin:0;
  color:#5f756c;
  font:500 18px/1.55 var(--serif);
}
.learn-index-orbit {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  transform:rotate(-2deg);
}
.learn-index-orbit span {
  min-height:76px;
  display:grid;
  place-items:center;
  border:1px solid rgba(105,145,129,.27);
  border-radius:18px;
  background:rgba(255,255,255,.62);
  color:#3e6959;
  box-shadow:0 8px 22px rgba(49,85,71,.04);
  font:700 18px var(--serif);
}
.learn-index-orbit span:nth-child(2),
.learn-index-orbit span:nth-child(3) { transform:translateY(12px); }
.learn-filter {
  display:flex;
  align-items:center;
  gap:6px;
  margin:24px 0 18px;
  padding:5px;
  overflow-x:auto;
  border:1px solid #dce5e0;
  border-radius:13px;
  background:rgba(255,255,255,.66);
  scrollbar-width:none;
}
.learn-filter::-webkit-scrollbar { display:none; }
.learn-filter button {
  flex:0 0 auto;
  padding:8px 12px;
  border:0;
  border-radius:9px;
  background:transparent;
  color:#687f76;
  font-size:9px;
  font-weight:850;
}
.learn-filter button:hover { color:#315e50; }
.learn-filter button.active {
  background:#315f50;
  color:#fff;
  box-shadow:0 5px 13px rgba(49,95,80,.14);
}
.learn-index-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}
.learn-index-grid > div:first-child {
  grid-column:span 2;
}
.learn-index-grid .learn-card {
  height:auto;
  display:block;
  padding:0;
  overflow:hidden;
  border:1px solid #d9e3de;
  border-radius:16px;
  background:#fffdfa;
  box-shadow:0 9px 28px rgba(42,68,58,.035);
}
.learn-index-grid .learn-card.is-featured {
  border-right:1px solid #d9e3de;
}
.learn-index-grid .learn-card-image {
  border-radius:0;
  aspect-ratio:16/9;
}
.learn-index-grid .learn-card-copy { padding:17px 18px 19px; }
.learn-index-grid .learn-card:not(.is-featured) h3 { font-size:23px; }
.learn-index-grid .learn-card p { font-size:11px; }
.learn-empty {
  grid-column:1/-1;
  min-height:260px;
  display:grid;
  place-items:center;
  align-content:center;
  gap:7px;
  border:1px dashed #bfd0c7;
  border-radius:20px;
  background:#f8fbf8;
  color:#688077;
  text-align:center;
}
.learn-empty > span {
  width:45px;
  height:45px;
  display:grid;
  place-items:center;
  border-radius:13px;
  background:#315f50;
  color:#fff;
  font:700 22px var(--serif);
}
.learn-empty h2 {
  margin:6px 0 0;
  color:#23483c;
  font:700 28px var(--serif);
}
.learn-empty p { margin:0; font-size:11px; }

/* Learn reader */
.learn-progress-track {
  position:fixed;
  z-index:100;
  left:0;
  top:0;
  width:100%;
  height:3px;
  background:transparent;
}
.learn-progress-track span {
  width:0;
  height:100%;
  display:block;
  background:linear-gradient(90deg,#397764,#73aa95);
  transition:width .08s linear;
}
.learn-article {
  max-width:1160px;
  margin:0 auto;
  padding:42px 28px 96px;
}
.learn-breadcrumb,
.learn-article .server-breadcrumb {
  display:flex;
  align-items:center;
  gap:7px;
  margin-bottom:34px;
  color:#7e9089;
  font-size:9px;
  font-weight:750;
}
.learn-breadcrumb a:hover,
.learn-article .server-breadcrumb a:hover { color:#36705c; }
.learn-article-head {
  max-width:940px;
  margin:0 auto;
  text-align:center;
}
.learn-label {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
}
.learn-label span {
  padding:5px 8px;
  border-radius:6px;
  background:#244c41;
  color:#f5faf7;
  font-size:8px;
  font-weight:950;
  letter-spacing:.13em;
}
.learn-label b {
  padding:5px 8px;
  border:1px solid #c5d8ce;
  border-radius:6px;
  background:#f2f7f4;
  color:#55776b;
  font-size:8px;
  font-weight:900;
}
.learn-article-head h1 {
  max-width:930px;
  margin:15px auto 14px;
  color:#172f28;
  font:700 clamp(47px,6vw,76px)/.96 var(--serif);
  letter-spacing:-.045em;
}
.learn-article-head > p {
  max-width:780px;
  margin:0 auto;
  color:#687b74;
  font:500 20px/1.5 var(--serif);
}
.learn-meta {
  display:flex;
  justify-content:center;
  flex-wrap:wrap;
  gap:0;
  margin-top:18px;
  color:#87968f;
  font-size:9px;
  font-weight:750;
}
.learn-meta span + span::before {
  content:"•";
  margin:0 8px;
  color:#aebbb5;
}
.learn-share {
  justify-content:center;
  margin-top:18px;
}
.learn-featured {
  max-width:1040px;
  margin:35px auto 28px;
  overflow:hidden;
  border-radius:18px;
  background:#edf2ef;
  box-shadow:0 16px 44px rgba(29,54,45,.08);
}
.learn-featured img {
  width:100%;
  max-height:650px;
  display:block;
  object-fit:cover;
}
.learn-takeaways {
  max-width:880px;
  display:grid;
  grid-template-columns:180px minmax(0,1fr);
  gap:24px;
  margin:30px auto 40px;
  padding:22px 24px;
  border:1px solid #c8d9d0;
  border-radius:16px;
  background:
    linear-gradient(135deg,#f1f7f3,#fafcf9);
}
.learn-takeaways > div {
  display:grid;
  align-content:start;
  gap:4px;
}
.learn-takeaways > div > span,
.learn-takeaways > span {
  color:#315f50;
  font-size:9px;
  font-weight:950;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.learn-takeaways > div small {
  color:#91a198;
  font-size:7px;
  font-weight:800;
  letter-spacing:.08em;
}
.learn-takeaways ul {
  display:grid;
  gap:8px;
  margin:0;
  padding:0;
  list-style:none;
}
.learn-takeaways li {
  position:relative;
  padding-left:19px;
  color:#38554b;
  font:500 15px/1.45 var(--serif);
}
.learn-takeaways li::before {
  content:"✓";
  position:absolute;
  left:0;
  top:1px;
  color:#4a846f;
  font:bold 11px var(--sans);
}
.learn-reading-layout {
  display:grid;
  grid-template-columns:190px minmax(0,700px) 170px;
  align-items:start;
  justify-content:center;
  gap:34px;
}
.learn-toc {
  position:sticky;
  top:112px;
  padding:14px 0;
  border-top:2px solid #477a68;
}
.learn-toc-head {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  margin-bottom:9px;
}
.learn-toc > span,
.learn-toc-head > span {
  color:#315b4e;
  font-size:8px;
  font-weight:950;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.learn-toc-head small { color:#9aa8a2; font-size:7px; }
.learn-toc nav {
  display:grid;
  gap:3px;
}
.learn-toc a {
  display:block;
  padding:5px 7px;
  border-left:2px solid transparent;
  color:#73847d;
  font-size:9px;
  line-height:1.35;
}
.learn-toc a.toc-level-3 { padding-left:16px; font-size:8px; }
.learn-toc a:hover,
.learn-toc a.active {
  border-left-color:#4b836e;
  background:#f1f7f3;
  color:#315e50;
}
.learn-body {
  min-width:0;
  color:#273a33;
  font:500 19px/1.8 var(--serif);
}
.learn-body > :first-child { margin-top:0; }
.learn-body p { margin:0 0 1.35em; }
.learn-body h2 {
  scroll-margin-top:120px;
  margin:2.05em 0 .55em;
  padding-top:.2em;
  color:#19392f;
  font-size:34px;
  line-height:1.08;
  letter-spacing:-.025em;
}
.learn-body h3 {
  scroll-margin-top:120px;
  margin:1.7em 0 .45em;
  color:#274b3f;
  font-size:25px;
  line-height:1.14;
}
.learn-body strong { color:#142c24; }
.learn-body a {
  color:#28765d;
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:3px;
}
.learn-body blockquote,
.learn-body .article-quote {
  margin:28px 0;
  padding:15px 20px;
  border-left:3px solid #558c77;
  background:#f3f7f4;
  color:#3c5c50;
  font-size:inherit;
  font-style:italic;
}
.learn-body .article-inline-image {
  margin:30px 0;
}
.learn-body .article-inline-image img {
  width:100%;
  display:block;
  border-radius:12px;
}
.learn-body .article-inline-image figcaption {
  margin-top:8px;
  color:#82928b;
  font:500 9px/1.5 var(--sans);
}
.learn-side-note {
  position:sticky;
  top:112px;
  padding:14px 0;
  border-top:1px solid #cad7d0;
}
.learn-side-note span {
  color:#557569;
  font-size:8px;
  font-weight:950;
  letter-spacing:.09em;
  text-transform:uppercase;
}
.learn-side-note p {
  margin:7px 0 9px;
  color:#788982;
  font-size:9px;
  line-height:1.55;
}
.learn-side-note small { color:#a0ada7; font-size:7px; }
.learn-related {
  margin-top:58px;
  padding-top:27px;
  border-top:1px solid #d7e0db;
}
.learn-related header h2 {
  margin:3px 0 18px;
  color:#254a3e;
  font:700 31px var(--serif);
}
.learn-related > div {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}
.learn-related .learn-card {
  display:block;
  padding:0;
  overflow:hidden;
  border:1px solid #dce5e0;
  border-radius:14px;
  background:#fff;
}
.learn-related .learn-card-image { border-radius:0; }
.learn-related .learn-card-copy { padding:14px; }

/* Responsive Learn */
@media (max-width:1080px) {
  .learn-reading-layout {
    grid-template-columns:180px minmax(0,700px);
  }
  .learn-side-note { display:none; }
  .learn-editor-layout { grid-template-columns:1fr; }
  .learn-editor-side {
    position:relative;
    top:auto;
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .learn-publish-card { grid-column:1/-1; }
}
@media (max-width:820px) {
  .front-learn-grid { grid-template-columns:1fr; }
  .learn-card.is-featured {
    padding-right:0;
    padding-bottom:18px;
    border-right:0;
    border-bottom:1px solid rgba(126,155,143,.22);
  }
  .learn-index-hero { grid-template-columns:1fr; padding:34px; }
  .learn-index-orbit { display:none; }
  .learn-index-grid { grid-template-columns:1fr 1fr; }
  .learn-index-grid > div:first-child { grid-column:1/-1; grid-row:auto; }
  .learn-reading-layout { grid-template-columns:1fr; }
  .learn-toc {
    position:relative;
    top:auto;
    max-width:700px;
    width:100%;
    margin:0 auto 12px;
    padding:13px;
    border:1px solid #d5e1da;
    border-radius:12px;
    background:#f7faf8;
  }
  .learn-toc nav {
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media (max-width:700px) {
  .front-learn { margin:24px -4px 32px; padding:20px 16px; border-radius:17px; }
  .front-learn-head { align-items:flex-start; flex-direction:column; gap:14px; }
  .front-learn-head > div { align-items:flex-start; }
  .front-learn-mark { width:42px; height:42px; flex-basis:42px; border-radius:11px; font-size:22px; }
  .front-learn-head h2 { font-size:27px; }
  .learn-card { grid-template-columns:90px minmax(0,1fr); }
  .learn-card.is-featured { grid-template-columns:1fr; }
  .learn-index { padding:24px 14px 64px; }
  .learn-index-hero { min-height:0; padding:29px 21px; border-radius:18px; }
  .learn-index-hero h1 { font-size:64px; }
  .learn-index-hero p { font-size:16px; }
  .learn-index-grid { grid-template-columns:1fr; }
  .learn-index-grid > div:first-child { grid-column:auto; }
  .learn-article { padding:28px 17px 72px; }
  .learn-breadcrumb { margin-bottom:24px; }
  .learn-article-head h1 { font-size:43px; }
  .learn-article-head > p { font-size:17px; }
  .learn-featured { margin:27px -3px 24px; border-radius:13px; }
  .learn-takeaways { grid-template-columns:1fr; gap:11px; padding:18px; }
  .learn-body { font-size:18px; line-height:1.72; }
  .learn-body h2 { font-size:29px; }
  .learn-body h3 { font-size:23px; }
  .learn-toc nav { grid-template-columns:1fr; }
  .learn-related > div { grid-template-columns:1fr; }
  .learn-library-summary { grid-template-columns:1fr 1fr; }
  .learn-library-summary > div:nth-child(2) { border-right:0; }
  .learn-library-summary > div:nth-child(-n+2) { border-bottom:1px solid #e3eae6; }
  .learn-admin-row {
    grid-template-columns:38px minmax(0,1fr) 30px;
    gap:10px;
    padding:12px;
  }
  .learn-admin-row .article-library-metric { display:none; }
  .learn-studio-head { align-items:flex-start; flex-direction:column; }
  .learn-studio-title { align-items:flex-start; }
  .learn-studio-mark { display:none; }
  .learn-editor-layout { padding:8px; }
  .learn-title-block { padding:17px; }
  .learn-title-block input { font-size:32px!important; }
  .learn-toolbar { top:58px; overflow-x:auto; scrollbar-width:none; }
  .learn-toolbar::-webkit-scrollbar { display:none; }
  .learn-toolbar button { flex:0 0 auto; }
  .learn-body-editor { min-height:620px!important; padding:30px 18px 50px!important; }
  .learn-editor-footer { flex-direction:column; }
  .learn-editor-side { grid-template-columns:1fr; }
  .learn-publish-card { grid-column:auto; }
}


/* =========================================================
   NEWSROOM COMMAND CENTER + LEARN FAQS
   ========================================================= */

/* Public Learn FAQs */
.learn-faqs {
  max-width:880px;
  margin:52px auto 22px;
  padding-top:28px;
  border-top:1px solid #d7e1dc;
}
.learn-faqs > header {
  max-width:650px;
  margin-bottom:17px;
}
.learn-faqs > header > span {
  color:#4f7969;
  font-size:8px;
  font-weight:950;
  letter-spacing:.1em;
  text-transform:uppercase;
}
.learn-faqs > header h2 {
  margin:4px 0 5px;
  color:#1e4035;
  font:700 35px/1.05 var(--serif);
  letter-spacing:-.025em;
}
.learn-faqs > header p {
  margin:0;
  color:#809088;
  font-size:10px;
}
.learn-faq-list {
  display:grid;
  border-top:1px solid #dce5e0;
}
.learn-faq-list details {
  border-bottom:1px solid #dce5e0;
}
.learn-faq-list summary {
  min-height:63px;
  display:grid;
  grid-template-columns:minmax(0,1fr) 28px;
  align-items:center;
  gap:16px;
  padding:12px 3px;
  color:#294b40;
  cursor:pointer;
  list-style:none;
  font:700 18px/1.25 var(--serif);
}
.learn-faq-list summary::-webkit-details-marker { display:none; }
.learn-faq-list summary i {
  width:27px;
  height:27px;
  display:grid;
  place-items:center;
  border:1px solid #c8d8d0;
  border-radius:50%;
  color:#5e7e70;
  font:500 15px/1 var(--sans);
  transition:transform .18s ease,background .18s ease;
}
.learn-faq-list details[open] summary i {
  transform:rotate(45deg);
  background:#edf5f0;
}
.learn-faq-list details > div {
  padding:0 48px 17px 3px;
}
.learn-faq-list details p {
  max-width:720px;
  margin:0;
  color:#61756c;
  font:500 16px/1.65 var(--serif);
}

/* Responsive command center and FAQs */
@media (max-width:1180px) {
  .dashboard-kpi-grid { grid-template-columns:repeat(3,1fr); }
  .dashboard-pipeline { grid-template-columns:repeat(3,1fr); }
  .dashboard-detail-grid { grid-template-columns:1fr 1fr; }
  .dashboard-audience-sources { grid-column:1/-1; }
}
@media (max-width:900px) {
  .dashboard-main-grid,
  .dashboard-bottom-grid { grid-template-columns:1fr; }
  .dashboard-detail-grid { grid-template-columns:1fr; }
  .dashboard-audience-sources { grid-column:auto; }
}
@media (max-width:700px) {
  .dashboard-command-head {
    align-items:flex-start;
    flex-direction:column;
  }
  .dashboard-head-actions {
    width:100%;
    align-items:stretch;
    flex-direction:column;
  }
  .dashboard-live-pill { width:max-content; }
  .dashboard-kpi-grid { grid-template-columns:1fr 1fr; gap:8px; }
  .dashboard-kpi { min-height:102px; }
  .dashboard-pipeline { grid-template-columns:1fr 1fr; }
  .dashboard-bar-chart {
    height:205px;
    gap:3px;
    padding:16px 11px 10px;
  }
  .dashboard-bar-col > b { display:none; }
  .dashboard-source-split { grid-template-columns:1fr; }
  .dashboard-source-split > div + div {
    border-left:0;
    border-top:1px solid #edf1f2;
  }
  .dashboard-system-grid { grid-template-columns:1fr 1fr; }
  .dashboard-system-grid > div:nth-child(2) { border-right:0; }
  .dashboard-system-grid > div:nth-child(-n+2) { border-bottom:1px solid #e9edef; }
  .dashboard-source-health { grid-template-columns:1fr; }
  .dashboard-content-row {
    grid-template-columns:auto minmax(0,1fr) 18px;
  }
  .dashboard-content-row > strong { display:none; }
  .learn-faq-editor-head {
    align-items:flex-start;
    flex-direction:column;
  }
  .learn-faq-edit-row {
    grid-template-columns:28px minmax(0,1fr) 28px;
    gap:8px;
    padding:12px 10px;
  }
  .learn-faqs { margin-top:40px; }
  .learn-faqs > header h2 { font-size:30px; }
  .learn-faq-list summary { font-size:17px; }
}
@media (max-width:480px) {
  .dashboard-kpi-grid { grid-template-columns:1fr; }
  .dashboard-pipeline { grid-template-columns:1fr; }
}


/* =========================================================
   APEX LEARN - TABLES
   ========================================================= */

/* Reader table */
.learn-body .article-table-wrap,
.learn-article .article-table-wrap {
  width:100%;
  margin:30px 0 34px;
  overflow-x:auto;
  overscroll-behavior-inline:contain;
  border:1px solid #d7e2dc;
  border-radius:13px;
  background:#fff;
  box-shadow:0 9px 28px rgba(42,70,59,.04);
  -webkit-overflow-scrolling:touch;
}
.learn-body .article-data-table,
.learn-article .article-data-table {
  width:100%;
  min-width:680px;
  border-collapse:collapse;
  table-layout:auto;
  color:#344b42;
  font:500 14px/1.55 var(--sans);
}
.learn-body .article-data-table th,
.learn-body .article-data-table td,
.learn-article .article-data-table th,
.learn-article .article-data-table td {
  min-width:145px;
  padding:16px 17px;
  border-right:1px solid #e2e9e5;
  border-bottom:1px solid #e2e9e5;
  vertical-align:top;
  text-align:left;
}
.learn-body .article-data-table th:last-child,
.learn-body .article-data-table td:last-child,
.learn-article .article-data-table th:last-child,
.learn-article .article-data-table td:last-child {
  border-right:0;
}
.learn-body .article-data-table tbody tr:last-child td,
.learn-article .article-data-table tbody tr:last-child td {
  border-bottom:0;
}
.learn-body .article-data-table thead th,
.learn-article .article-data-table thead th {
  position:sticky;
  top:0;
  z-index:1;
  background:#f1f6f3;
  color:#254b3e;
  font-weight:900;
}
.learn-body .article-data-table tbody tr:nth-child(even),
.learn-article .article-data-table tbody tr:nth-child(even) {
  background:#fbfdfc;
}
.learn-body .article-data-table tbody td:first-child,
.learn-article .article-data-table tbody td:first-child {
  color:#27493e;
  font-weight:800;
}
.learn-body .article-data-table a,
.learn-article .article-data-table a {
  color:#28765d;
  text-decoration:underline;
  text-underline-offset:2px;
}

@media (max-width:700px) {
  .learn-body-editor .editor-table-wrap {
    margin:22px 0;
  }
  .learn-body-editor .editor-learn-table {
    min-width:600px;
    font-size:12px;
  }
  .learn-body .article-table-wrap,
  .learn-article .article-table-wrap {
    width:calc(100vw - 34px);
    margin:26px 0 30px;
  }
  .learn-body .article-data-table,
  .learn-article .article-data-table {
    min-width:640px;
    font-size:13px;
  }
  .learn-body .article-data-table th,
  .learn-body .article-data-table td,
  .learn-article .article-data-table th,
  .learn-article .article-data-table td {
    padding:13px 14px;
  }
}

.learn-faqs { scroll-margin-top:120px; }


/* =========================================================
   ALL EDITORS - BULLET, NUMBERED & MARK LISTS
   ========================================================= */
.visual-body-editor .editor-list {
  margin:18px 0 22px;
  padding-left:28px;
}
.visual-body-editor .editor-list li {
  margin:7px 0;
  padding-left:3px;
  line-height:1.55;
}
.visual-body-editor .editor-bullet-list {
  list-style:disc;
}
.visual-body-editor .editor-number-list {
  list-style:decimal;
}
.visual-body-editor .editor-check-list {
  padding-left:0;
  list-style:none;
}
.visual-body-editor .editor-check-list li {
  position:relative;
  padding-left:27px;
}
.visual-body-editor .editor-check-list li::before {
  content:"✓";
  position:absolute;
  left:0;
  top:.02em;
  width:18px;
  height:18px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#eaf5ef;
  color:#3e7f64;
  font:900 10px/1 var(--sans);
}

/* Reader lists across News, Learn and LIVE */
.article-list {
  margin:22px 0 26px;
  padding-left:29px;
}
.article-list li {
  margin:9px 0;
  padding-left:4px;
  line-height:1.62;
}
.article-bullet-list {
  list-style:disc;
}
.article-number-list {
  list-style:decimal;
}
.article-check-list {
  padding-left:0;
  list-style:none;
}
.article-check-list li {
  position:relative;
  padding-left:31px;
}
.article-check-list li::before {
  content:"✓";
  position:absolute;
  left:0;
  top:.22em;
  width:19px;
  height:19px;
  display:grid;
  place-items:center;
  border:1px solid #bdd6ca;
  border-radius:50%;
  background:#eef7f2;
  color:#39775f;
  font:900 10px/1 var(--sans);
}
.article-body .article-list {
  font-size:inherit;
}
.learn-body .article-list {
  margin:24px 0 30px;
  font:500 18px/1.68 var(--serif);
}
.learn-body .article-list li {
  margin:11px 0;
}
.reader-live-body .article-list {
  margin:12px 0 14px;
  padding-left:23px;
}
.reader-live-body .article-check-list {
  padding-left:0;
}
.reader-live-body .article-check-list li {
  padding-left:26px;
}
.reader-live-body .article-check-list li::before {
  width:17px;
  height:17px;
  font-size:9px;
}

/* Keep the expanded toolbars tidy. */
.format-toolbar-v3 {
  flex-wrap:wrap;
}
.format-toolbar-v3 .toolbar-group {
  flex-wrap:wrap;
}
.learn-toolbar {
  flex-wrap:wrap;
}
.live-rich-toolbar {
  display:flex;
  flex-wrap:wrap;
  gap:5px;
}
.live-rich-toolbar button {
  white-space:nowrap;
}

@media (max-width:700px) {
  .format-toolbar-v3,
  .learn-toolbar,
  .live-rich-toolbar {
    flex-wrap:nowrap;
    overflow-x:auto;
    overscroll-behavior-inline:contain;
    scrollbar-width:none;
  }
  .format-toolbar-v3::-webkit-scrollbar,
  .learn-toolbar::-webkit-scrollbar,
  .live-rich-toolbar::-webkit-scrollbar {
    display:none;
  }
  .format-toolbar-v3 button,
  .learn-toolbar button,
  .live-rich-toolbar button {
    flex:0 0 auto;
  }
  .article-list {
    margin:18px 0 22px;
    padding-left:24px;
  }
  .article-check-list {
    padding-left:0;
  }
}


/* Learn reader author byline */
.learn-byline {
  justify-content:center;
  margin:20px auto 0;
  text-align:left;
}
.learn-byline .byline-mark {
  width:36px;
  height:36px;
  flex-basis:36px;
  border-color:#c5d9cf;
  background:#f2f7f4;
}
.learn-byline .byline-mark img {
  width:29px;
  height:29px;
}
.learn-byline b {
  color:#315f50;
}
.learn-byline span {
  color:#8a9a93;
}
.learn-byline:hover b {
  color:#275e4c;
}
.learn-byline:hover .byline-mark {
  border-color:#9fc2b1;
  background:#edf5f0;
}
@media (max-width:700px) {
  .learn-byline {
    margin-top:17px;
  }
}


/* Personal author byline */
.article-byline.is-jai .byline-mark {
  width:42px;
  height:42px;
  flex-basis:42px;
  border-color:#d1d8dc;
  background:#e9ecee;
}
.article-byline.is-jai .byline-mark img {
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  transform:none;
}
.article-byline.is-jai:hover .byline-mark {
  border-color:#aebbc2;
  background:#e9ecee;
}
.learn-byline.is-jai .byline-mark {
  width:42px;
  height:42px;
  flex-basis:42px;
}
.learn-byline.is-jai .byline-mark img {
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  transform:none;
}


/* Our Portfolio */
.portfolio-page {
  max-width:1180px;
  margin:auto;
  padding:58px 28px 94px;
}
.portfolio-hero {
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr);
  gap:56px;
  align-items:end;
  padding:8px 0 42px;
  border-bottom:1px solid #d7e1e7;
}
.portfolio-hero h1 {
  margin:8px 0 14px;
  color:#14212b;
  font-family:var(--serif);
  font-size:clamp(54px,7vw,86px);
  line-height:.92;
  letter-spacing:-.055em;
}
.portfolio-hero p {
  max-width:720px;
  margin:0;
  color:#566b79;
  font-family:var(--serif);
  font-size:20px;
  line-height:1.55;
}
.portfolio-summary {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  border:1px solid #d5e1e8;
  border-radius:15px;
  background:#fff;
  box-shadow:0 12px 34px rgba(29,63,84,.05);
  overflow:hidden;
}
.portfolio-summary div {
  min-height:98px;
  padding:20px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  border-right:1px solid #e0e8ed;
  border-bottom:1px solid #e0e8ed;
}
.portfolio-summary div:nth-child(2n) { border-right:0; }
.portfolio-summary div:nth-last-child(-n+2) { border-bottom:0; }
.portfolio-summary strong {
  color:#15364c;
  font-family:var(--serif);
  font-size:33px;
  line-height:1;
}
.portfolio-summary span {
  margin-top:6px;
  color:#718491;
  font-size:9px;
  font-weight:900;
  letter-spacing:.11em;
  text-transform:uppercase;
}
.portfolio-holdings,
.portfolio-live {
  padding-top:42px;
}
.portfolio-section-title {
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:30px;
  margin-bottom:18px;
}
.portfolio-section-title h2 {
  margin:5px 0 0;
  color:#14212b;
  font-family:var(--serif);
  font-size:35px;
  letter-spacing:-.025em;
}
.portfolio-section-title > p {
  max-width:470px;
  margin:0;
  color:#687b87;
  font-size:12px;
  line-height:1.55;
  text-align:right;
}
.portfolio-group {
  margin-top:22px;
  padding-top:18px;
  border-top:1px solid #dbe4e9;
}
.portfolio-group-head {
  margin-bottom:11px;
}
.portfolio-group-head > div {
  display:flex;
  align-items:baseline;
  gap:10px;
}
.portfolio-group-head span {
  color:#18364a;
  font-family:var(--serif);
  font-size:20px;
  font-weight:700;
}
.portfolio-group-head b {
  color:#83939d;
  font-size:9px;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.portfolio-asset-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
}
.portfolio-asset {
  min-width:0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:16px 17px;
  border:1px solid #d9e3e9;
  border-radius:11px;
  background:#fff;
  box-shadow:0 5px 20px rgba(24,54,74,.025);
  transition:border-color .16s ease,transform .16s ease,box-shadow .16s ease;
}
.portfolio-asset:hover {
  transform:translateY(-2px);
  border-color:#9ccde6;
  box-shadow:0 10px 25px rgba(24,73,102,.07);
}
.portfolio-asset-copy {
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:3px;
}
.portfolio-asset-copy strong {
  overflow:hidden;
  color:#19303e;
  font-family:var(--serif);
  font-size:18px;
  line-height:1.08;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.portfolio-asset-copy small {
  color:#758793;
  font-size:9px;
  font-weight:850;
  letter-spacing:.11em;
}
.portfolio-asset-arrow {
  flex:0 0 auto;
  color:#168bd2;
  font-size:17px;
}
.portfolio-quote-shell {
  min-height:760px;
  padding:12px;
  border:1px solid #d7e2e8;
  border-radius:15px;
  background:#fff;
  box-shadow:0 15px 38px rgba(29,63,84,.05);
  overflow:hidden;
}
.portfolio-quote-shell .tradingview-widget-container,
.portfolio-quote-shell .tradingview-widget-container__widget {
  width:100%;
  min-height:720px;
}
.portfolio-disclosure {
  margin-top:32px;
  padding:20px 22px;
  display:grid;
  grid-template-columns:120px minmax(0,1fr);
  gap:20px;
  border-top:1px solid #cbdce5;
  border-bottom:1px solid #cbdce5;
  background:#f3f8fb;
}
.portfolio-disclosure span {
  color:#147db9;
  font-size:9px;
  font-weight:950;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.portfolio-disclosure p {
  margin:0;
  color:#5c707d;
  font-size:12px;
  line-height:1.65;
}
@media (max-width:900px) {
  .portfolio-hero {
    grid-template-columns:1fr;
    gap:26px;
  }
  .portfolio-summary { max-width:620px; }
  .portfolio-asset-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:640px) {
  .portfolio-page { padding:38px 18px 72px; }
  .portfolio-hero { padding-bottom:30px; }
  .portfolio-hero h1 { font-size:clamp(50px,16vw,68px); }
  .portfolio-hero p { font-size:18px; }
  .portfolio-summary div { min-height:86px; padding:16px; }
  .portfolio-summary strong { font-size:29px; }
  .portfolio-section-title {
    align-items:start;
    flex-direction:column;
    gap:8px;
  }
  .portfolio-section-title > p { text-align:left; }
  .portfolio-asset-grid { grid-template-columns:1fr; }
  .portfolio-disclosure {
    grid-template-columns:1fr;
    gap:8px;
  }
  .portfolio-quote-shell {
    min-height:700px;
    padding:8px;
  }
}


/* Portfolio disclosed values */.portfolio-group-head {
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  gap:18px;
}
.portfolio-group-head > strong {
  color:#516977;
  font-family:var(--serif);
  font-size:18px;
}
.portfolio-asset-value {
  margin-left:auto;
  display:flex;
  flex:0 0 auto;
  flex-direction:column;
  align-items:flex-end;
  gap:3px;
}
.portfolio-asset-value b {
  color:#15364c;
  font-family:var(--serif);
  font-size:17px;
}
.portfolio-asset-value small {
  color:#82939e;
  font-size:8px;
  font-weight:800;
  letter-spacing:.05em;
  text-transform:uppercase;
}
@media (max-width:640px) {
  .portfolio-group-head {
    align-items:flex-start;
  }
  .portfolio-asset {
    display:grid;
    grid-template-columns:minmax(0,1fr) auto auto;
  }
  .portfolio-asset-value small {
    display:none;
  }
}


/* Permanent reader disclaimer: news, LIVE and Learn */
.reader-disclaimer {
  max-width:740px;
  margin:14px 0 0;
  overflow:hidden;
  border:1px solid #d6e2e8;
  border-radius:12px;
  background:#f8fbfc;
}
.reader-disclaimer summary {
  min-height:54px;
  display:grid;
  grid-template-columns:minmax(0,1fr) 28px;
  align-items:center;
  gap:16px;
  padding:11px 14px;
  color:#29495a;
  cursor:pointer;
  list-style:none;
  font:700 16px/1.25 var(--serif);
}
.reader-disclaimer summary::-webkit-details-marker { display:none; }
.reader-disclaimer summary i {
  width:27px;
  height:27px;
  display:grid;
  place-items:center;
  border:1px solid #c8d9e2;
  border-radius:50%;
  color:#5a7a8b;
  font:500 15px/1 var(--sans);
  transition:transform .18s ease,background .18s ease,border-color .18s ease;
}
.reader-disclaimer[open] summary i {
  transform:rotate(45deg);
  border-color:#afd1e2;
  background:#eaf5fa;
}
.reader-disclaimer > div {
  padding:0 50px 17px 14px;
  border-top:1px solid #e0e9ee;
}
.reader-disclaimer p {
  max-width:680px;
  margin:14px 0 0;
  color:#617581;
  font:500 14px/1.68 var(--serif);
}
.learn-article > .reader-disclaimer {
  max-width:880px;
  margin:14px auto 0;
  border-color:#d5e1da;
  background:#f7faf8;
}
.learn-article > .reader-disclaimer summary {
  color:#294b40;
}
.learn-article > .reader-disclaimer summary i {
  border-color:#c8d8d0;
  color:#5e7e70;
}
.learn-article > .reader-disclaimer[open] summary i {
  border-color:#b8d0c4;
  background:#edf5f0;
}
.learn-article > .reader-disclaimer > div {
  border-top-color:#dce5e0;
}
.learn-article > .reader-disclaimer p {
  color:#61756c;
}
@media (max-width:820px) {
  .article-wrap > .reader-disclaimer {
    max-width:none;
  }
}
@media (max-width:640px) {
  .reader-disclaimer {
    margin-top:12px;
  }
  .reader-disclaimer summary {
    min-height:51px;
    padding:10px 12px;
    font-size:15px;
  }
  .reader-disclaimer > div {
    padding:0 42px 15px 12px;
  }
  .reader-disclaimer p {
    font-size:13px;
    line-height:1.62;
  }
}
.utc-calendar {padding:18px;background:#fff;color:#253c4a}
.utc-calendar-filters {display:flex;align-items:end;flex-wrap:wrap;gap:12px}
.utc-calendar-filters label {display:flex;flex-direction:column;gap:6px;font:500 13px/1.4 var(--sans)}
.utc-calendar-filters input,.utc-calendar-filters select {min-height:40px;padding:8px;border:1px solid #d5e1e8;border-radius:6px;background:#fff;color:inherit;font:inherit}
.utc-calendar-status {font:500 13px/1.5 var(--sans);margin:16px 0}
.utc-calendar-table {max-height:760px;overflow:auto}
.utc-calendar-table table {width:100%;border-collapse:collapse;text-align:left;font:400 13px/1.5 var(--sans)}
.utc-calendar-table th {position:sticky;top:0;background:#f2f6f8;font-weight:600}
.utc-calendar-table th,.utc-calendar-table td {padding:12px;border-bottom:1px solid #e0e9ee;vertical-align:top}
.utc-calendar-table time {white-space:nowrap}
.utc-calendar-table small {display:block;color:#617581}


/* Keep content loading, fonts and market embeds from moving the first viewport. */
#view:has(> .public-loading) { min-height:100vh; min-height:100svh; }
.home-market-tape { grid-template-columns:auto minmax(0,1fr) auto; height:56px; min-height:56px; }
.market-tape-widget { position:relative; height:46px; }
.market-tape-placeholder { position:absolute; inset:0; display:flex; align-items:center; justify-content:center; gap:12px; color:#526876; font-size:12px; }
.market-tape-placeholder[hidden] { display:none; }
.market-tape-placeholder button { min-height:32px; border:1px solid #466a7e; border-radius:5px; background:#fff; color:#254c64; }
.market-tape-open { color:#225971; font-size:11px; min-height:32px; display:flex; align-items:center; }
.front-social-links { min-height:160px; }
.footer-socials { min-height:36px; }
/* Accessible text, buttons and navigation retain the publication palette. */
.blue-btn { background:#0874b1!important; border-color:#0874b1!important; color:#fff!important; }
.shell .footer-newsletter button { background:#0874b1; border-color:#0874b1; }
.front-follow .front-eyebrow { color:#076eaa; }
.front-social-links small { color:#526876; }
.footer-columns a { min-height:28px; display:flex; align-items:center; }
@media (max-width:850px) {
  .home-market-tape { position:relative; height:88px; min-height:88px; }
  .market-tape-widget { height:72px; padding-right:86px; }
  .market-tape-open { position:absolute; right:8px; top:27px; min-height:32px; background:#fffaf2; }
}
@media (max-width:480px) {
  .home-market-tape { height:92px; min-height:92px; }
  .market-tape-widget { height:74px; }
  .market-tape-open { top:30px; }
}

/* News discussions: quiet entry point, expanded only at the reader's request. */
.discussion-invite{display:flex;align-items:center;justify-content:space-between;gap:20px;max-width:760px;margin:18px auto 34px;color:#536978;font:13px/1.5 var(--sans)}
.discussion-invite button{display:inline-flex;align-items:center;gap:20px;background:#fff;border:1px solid #c4d7de;border-radius:8px;padding:12px 17px;color:#075b85;font:600 13px var(--sans);cursor:pointer;white-space:nowrap}
.discussion-invite button:hover{background:#edf7fb;border-color:#187eaa}
.reader-discussion{max-width:760px;margin:0 auto 52px;border:1px solid #cfdee4;border-radius:16px;background:linear-gradient(140deg,#f4fafc,#fffdf9);overflow:hidden;scroll-margin-top:110px}
.reader-discussion>summary{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:28px 30px;cursor:pointer;list-style:none}
.reader-discussion>summary::-webkit-details-marker{display:none}
.discussion-eyebrow{font:700 10px/1.4 var(--sans);letter-spacing:.15em;color:#086991}
.reader-discussion h2{margin:8px 0 5px;font:500 31px/1.13 var(--serif);color:#122e3b}
.reader-discussion>summary p{margin:0;font:13px/1.55 var(--sans);color:#526876}
.discussion-open-label{display:flex;align-items:center;gap:14px;font:600 12px var(--sans);color:#075b85;white-space:nowrap}
.discussion-open-label i{display:grid;place-items:center;width:32px;height:32px;border:1px solid #c3d7e0;border-radius:50%;font:normal 21px var(--sans)}
.reader-discussion[open] .discussion-open-label i{transform:rotate(45deg)}
.discussion-host{border-top:1px solid #d9e6eb;padding:24px 30px 30px}
.discussion-guidelines{margin:0 0 24px;font:12px/1.7 var(--sans);color:#526876}
.discussion-empty{display:flex;align-items:center;gap:18px;padding:18px 0 29px}
.discussion-empty svg{width:42px;height:42px;flex-shrink:0;stroke:#1680a6;stroke-width:1.3;fill:none}
.discussion-empty h3,.discussion-success h3{font:500 23px/1.25 var(--serif);margin:0 0 5px;color:#173441}
.discussion-empty p,.discussion-success p{font:13px/1.6 var(--sans);color:#526876;margin:0}
.discussion-form{border-top:1px solid #d9e6eb;padding-top:25px}
.discussion-form-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:22px}
.discussion-form-head h3{font:500 26px/1.2 var(--serif);margin:0;color:#173441}
.discussion-form-head>span{font:11px var(--sans);color:#526876}
.discussion-form label{display:block;font:600 12px/1.5 var(--sans);color:#173441;margin-bottom:7px}
.discussion-form input:not([type=checkbox]),.discussion-form textarea,.discussion-report-box select{box-sizing:border-box;display:block;width:100%;border:1px solid #bfd1da;border-radius:8px;padding:12px 13px;background:#fff;color:#193744;font:15px/1.6 var(--sans)}
.discussion-form textarea{resize:vertical;min-height:128px}
.discussion-form textarea::placeholder,.discussion-form input::placeholder{color:#617784}
.discussion-writing-note{display:flex;justify-content:space-between;gap:12px;font:11px/1.5 var(--sans);color:#526876;margin:7px 0 22px}
.discussion-identity{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.discussion-identity label span{display:inline-block;font-weight:400;color:#526876;margin-left:6px}
.discussion-private{margin:10px 0 21px;font:11px/1.6 var(--sans);color:#526876}
.discussion-trap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.discussion-form label.discussion-consent{display:flex;align-items:flex-start;gap:10px;font:12px/1.65 var(--sans);font-weight:400;color:#526876;margin:0 0 22px}
.discussion-consent input{width:17px;height:17px;flex-shrink:0;margin:2px 0 0;accent-color:#076a93}
.discussion-consent a{color:#075b85;text-decoration:underline;text-underline-offset:2px}
.discussion-submit-row{display:flex;align-items:center;gap:18px}
.discussion-submit-row button{display:flex;align-items:center;gap:24px;background:#075d84;color:#fff;border:0;border-radius:8px;padding:14px 18px;font:600 13px var(--sans);cursor:pointer}
.discussion-submit-row small{font:11px/1.6 var(--sans);color:#526876;max-width:170px}
.discussion-feedback{margin:12px 0 0;color:#a02d27;font:13px/1.6 var(--sans)}
.discussion-feedback:empty{display:none}
.discussion-comment{display:flex;gap:14px;padding:22px 0;border-top:1px solid #dae5e9}
.discussion-comment:first-child{border-top:0;padding-top:0}
.discussion-avatar{display:grid;place-items:center;width:36px;height:36px;flex:0 0 36px;background:#e3eff3;border:1px solid #cbdee6;border-radius:50%;color:#125e7b;font:600 14px var(--sans)}
.discussion-comment-content{min-width:0;flex:1}
.discussion-comment header{display:flex;align-items:baseline;justify-content:space-between;gap:10px;font:13px var(--sans);color:#173441}
.discussion-comment time{font:10px var(--sans);color:#526876}
.discussion-comment-content>p{white-space:pre-wrap;overflow-wrap:anywhere;font:18px/1.6 var(--serif);color:#213c49;margin:10px 0}
.discussion-report,.discussion-more,.discussion-retry,.discussion-success button{border:0;background:transparent;color:#075b85;font:12px/1.4 var(--sans);padding:10px 0;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.discussion-more{margin-bottom:18px}
.discussion-report-box{background:#eff6f8;padding:14px;border-radius:8px;font:12px/1.6 var(--sans)}
.discussion-report-box label{display:block;color:#173441}.discussion-report-box select{margin:8px 0;font-size:13px}
.discussion-report-box button{background:#fff;border:1px solid #bfd1da;border-radius:6px;padding:10px 12px;color:#075b85;cursor:pointer;margin-right:8px;font:12px var(--sans)}
.discussion-report-box p{margin:7px 0 0;color:#526876}
.discussion-success{display:flex;align-items:flex-start;gap:16px;padding:10px 0;outline:none}
.discussion-success>span{display:grid;place-items:center;background:#dceee8;color:#16654a;border-radius:50%;width:35px;height:35px;flex:0 0 35px;font:16px var(--sans)}
.discussion-loading,.discussion-paused{font:13px/1.7 var(--sans);color:#526876}
.reader-discussion button:disabled{opacity:.55;cursor:wait}
.reader-discussion :focus-visible,.discussion-invite button:focus-visible{outline:2px solid #1680a6;outline-offset:4px}
.reader-discussion [hidden],.moderation-more[hidden]{display:none!important}
.moderation-filters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 23px}.moderation-filters button{display:flex;gap:10px;align-items:center;border:1px solid #cedde4;background:#fff;color:#294b5b;border-radius:8px;padding:12px 14px;font:12px var(--sans);cursor:pointer}
.moderation-filters button[aria-pressed=true]{background:#075d84;color:#fff;border-color:#075d84}.moderation-filters span{font-weight:700}
.moderation-comment{background:#fff;border:1px solid #d6e2e8;border-radius:12px;padding:23px;margin-bottom:15px}
.moderation-comment header{display:flex;justify-content:space-between;gap:16px;font:13px var(--sans)}.moderation-comment header span{display:block;margin-top:5px;color:#526876}.moderation-comment time{font-size:11px;color:#526876}
.moderation-story{display:block;color:#075b85;font:600 13px/1.6 var(--sans);margin-top:18px}.moderation-comment>p{white-space:pre-wrap;overflow-wrap:anywhere;font:17px/1.6 var(--serif);margin:16px 0;color:#233f4b}
.moderation-comment footer{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #e1eaee;padding-top:16px}.moderation-comment footer div{display:flex;flex-wrap:wrap;gap:8px}.moderation-comment button{border:1px solid #c5d7df;background:#f5fafc;color:#075b85;border-radius:6px;padding:10px 12px;font:12px var(--sans);cursor:pointer}.moderation-comment [data-action=approved]{background:#075d84;color:#fff;border-color:#075d84}.moderation-comment [data-action=delete]{color:#99352f;background:#fff}
.moderation-status{color:#526876;font:11px var(--sans);text-transform:capitalize}.moderation-flags{background:#fff2df;color:#80501b;padding:10px;border-radius:6px;margin:12px 0;font:12px var(--sans)}.moderation-empty{padding:40px!important}.moderation-empty h2{font:500 28px var(--serif)}
@media(max-width:600px){.discussion-invite{align-items:flex-start;gap:13px;flex-direction:column;margin:18px 0 26px}.reader-discussion{margin:0 0 36px;border-radius:12px}.reader-discussion>summary{padding:22px 20px;align-items:flex-start;gap:12px}.reader-discussion h2{font-size:27px}.discussion-open-label{font-size:0;gap:0}.discussion-open-label i{font-size:21px}.discussion-host{padding:20px}.discussion-empty{gap:12px}.discussion-empty h3{font-size:22px}.discussion-empty svg{width:32px;height:32px}.discussion-identity{grid-template-columns:1fr;gap:15px}.discussion-form-head{align-items:flex-start}.discussion-form-head h3{font-size:24px}.discussion-form-head>span{padding-top:6px}.discussion-form input:not([type=checkbox]),.discussion-form textarea{font-size:16px}.discussion-submit-row{align-items:flex-start;flex-direction:column;gap:10px}.discussion-submit-row small{max-width:none}.discussion-comment header{align-items:flex-start;flex-direction:column;gap:5px}.discussion-writing-note{font-size:10px}.moderation-comment{padding:17px}.moderation-comment header,.moderation-comment footer{flex-direction:column;align-items:flex-start}.moderation-filters button{padding:10px;font-size:11px}}

/* Native email drafts remain usable alongside explicit webmail fallbacks. */
.contact-card h2 a{color:inherit;text-decoration:none}.contact-card h2 a:hover{text-decoration:underline;text-underline-offset:4px}
.contact-email-primary{display:inline-flex;align-items:center;gap:18px;color:#075b85;font:700 13px var(--sans);min-height:40px;text-decoration:none}
.contact-email-options{border-top:1px solid #d8e4e9;margin-top:12px;padding-top:12px}
.contact-email-options>summary{cursor:pointer;color:#526876;font:12px/1.6 var(--sans);padding:5px 0}
.contact-email-choices{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-top:14px}
.contact-email-choices a,.contact-email-choices button{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px;border:1px solid #c7d9e2;border-radius:7px;background:#fff;color:#075b85;font:600 12px/1.5 var(--sans);text-decoration:none;cursor:pointer;min-height:44px}
.contact-email-choices a:hover,.contact-email-choices button:hover{background:#edf7fb;border-color:#82b4ca}
.contact-card p.contact-email-status{margin:12px 0 0;font:11px/1.7 var(--sans);color:#526876}
.contact-email-manual{width:100%;box-sizing:border-box;background:#fff;color:#173441;border:1px solid #bfd1da;border-radius:7px;padding:12px;margin-top:10px;font:14px var(--sans)}
.contact-email-manual[hidden]{display:none}.contact-card :focus-visible{outline:2px solid #1680a6;outline-offset:4px}
.contact-note{color:#526876}
@media(max-width:380px){.contact-email-choices{grid-template-columns:1fr}}

/* Related reading is a standalone navigational card, separate from article copy. */
.article-related-card{margin:32px 0;border:1px solid var(--line,#c9dce4);border-left:4px solid #0785bc;border-radius:14px;background:linear-gradient(120deg,#edf7fc,#f7fbfa);overflow:hidden;font-family:Arial,sans-serif}
.article-related-card>a{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 24px;padding:22px 24px;text-decoration:none!important;color:#153947!important}
.related-card-label{font:700 11px/1.4 Arial,sans-serif;text-transform:uppercase;letter-spacing:.12em;color:#397083;display:block}
.article-related-card .related-card-label{grid-column:1/-1}
.related-card-title{font:600 19px/1.4 Arial,sans-serif;display:block}
.related-card-action{align-self:center;padding:10px 14px;border-radius:9px;background:#076d9c;color:white;font:600 13px/1.4 Arial,sans-serif;white-space:nowrap}
.article-related-card>a:hover .related-card-action{background:#075f8a}
.article-related-card>a:focus-visible{outline:3px solid #087fb7;outline-offset:-3px}
.editor-related-card{position:relative;display:grid;gap:8px;margin:24px 0;padding:20px 48px 20px 20px;border:1px solid #c9dce4;border-left:4px solid #0785bc;border-radius:12px;background:#edf7fc}
.editor-related-remove{position:absolute;right:10px;top:10px;border:0;background:transparent;font-size:24px;cursor:pointer;color:#426574}
.related-picker{box-sizing:border-box;width:min(620px,calc(100vw - 32px));max-height:85vh;padding:24px;border:1px solid #c9dce4;border-radius:18px;box-shadow:0 24px 80px #14384940;color:#153947;background:#fafdfd;font-family:Arial,sans-serif}
.related-picker::backdrop{background:#0c263b80;backdrop-filter:blur(3px)}
.related-picker-head{display:flex;justify-content:space-between;align-items:start;gap:16px}.related-picker-head h2{font-size:25px;margin:8px 0 22px}.related-picker-head button{border:0;background:transparent;font-size:28px;cursor:pointer}
.related-picker-search{display:block;font-size:13px;font-weight:600}.related-picker-search input{box-sizing:border-box;display:block;width:100%;margin-top:10px;padding:12px;border:1px solid #aac8d6;border-radius:9px;font:16px Arial,sans-serif}
.related-picker-status{font-size:13px;color:#4b6773;line-height:1.5}.related-picker-results{display:grid;gap:10px}
.related-picker-option{display:grid;gap:6px;text-align:left;padding:16px;border:1px solid #c9dce4;border-radius:10px;background:white;color:#153947;cursor:pointer}.related-picker-option small{font-weight:700;color:#07648f}.related-picker-option span{font:600 16px/1.4 Arial,sans-serif}.related-picker-option:hover,.related-picker-option:focus-visible{background:#edf7fc;border-color:#087fb7}
@media(max-width:640px){.article-related-card>a{grid-template-columns:1fr;padding:18px;gap:12px}.related-card-action{justify-self:start}.related-card-title{font-size:17px}.related-picker{padding:18px}}
/* Curated market quote board */
.market-board{border:1px solid #c5dde7;border-radius:20px;background:#fff;overflow:hidden;margin:30px 0}.market-board-tools{display:flex;gap:16px;justify-content:space-between;align-items:center;padding:20px;background:#eff8fc;border-bottom:1px solid #d4e5ed}.market-tabs{display:flex;gap:5px;flex-wrap:wrap}.market-tabs button{border:0;background:transparent;color:#284957;padding:11px 15px;border-radius:10px;font-weight:700;cursor:pointer}.market-tabs button[aria-selected="true"]{background:#087bb5;color:#fff}.market-tabs button:focus-visible{outline:3px solid #163642;outline-offset:2px}.market-status{padding:0 24px;font-size:13px;color:#526d79;min-height:20px}.market-table-scroll{overflow-x:auto}.market-table{width:100%;border-collapse:collapse;font-size:15px}.market-table th,.market-table td{padding:17px 24px;text-align:left;border-bottom:1px solid #e4eef2}.market-table thead{color:#526d79;font-size:12px;text-transform:uppercase;letter-spacing:.05em}.market-table tbody th{font-weight:600}.market-table th a{color:#163642;text-decoration:none}.market-table th a:hover{text-decoration:underline;color:#087bb5}.market-table small{display:block;font-weight:400;font-size:11px;color:#526d79;margin-top:4px}.quote-number{font-variant-numeric:tabular-nums;white-space:nowrap}.quote-up{color:#137249}.quote-down{color:#ac383c}.quote-timing{font-size:12px;color:#526d79}.market-footnote{font-size:12px;line-height:1.7;color:#526d79;padding:10px 24px}.market-selected{border:1px solid #c5dde7;border-radius:20px;padding:28px;background:#eff8fc;margin-top:25px}.market-selected h2{margin:8px 0 18px}.market-selected-price{font-size:36px;font-weight:700;font-variant-numeric:tabular-nums}.market-selected-price small{font-size:14px;font-weight:400}.market-selected-change{font-variant-numeric:tabular-nums}.market-selected .outline-btn{margin:10px 8px 0 0}.market-selected .asset-chart-shell{height:520px;margin-top:20px}.market-board button:disabled{opacity:.6}@media(max-width:640px){.market-board-tools{align-items:flex-start;padding:14px;gap:8px}.market-tabs button{padding:9px 10px;font-size:12px}.market-table th,.market-table td{padding:14px 12px}.market-table{min-width:610px}.market-status{padding:0 14px}.market-selected{padding:20px}.market-selected-price{font-size:30px}.market-footnote{padding:10px 14px}}

.data-page .market-table thead th{color:#526d79;font-size:12px}.data-page .market-table tbody th{color:#163642;font-size:15px}


/* MOBILE READER SYSTEM — consolidated 2026-10-07 */
.mobile-nav-learn { display:none!important; }

@media (max-width:700px) {
  html { scroll-padding-top:12px; }
  body { overflow-x:hidden; }
  .shell,#view,.main,.front-page,.article-wrap,.learn-article,.section-front,.search-page,.portfolio-page {
    min-width:0;
    max-width:100%;
  }
  a,button,input,textarea,select { touch-action:manipulation; }
  input,textarea,select { font-size:16px; }

  .shell .masthead {
    position:relative;
    top:auto;
    width:calc(100% - 12px);
    min-height:0;
    margin:6px auto 8px;
    padding:8px;
    gap:7px;
    border-radius:15px;
    background:#fffdf9;
    box-shadow:0 4px 14px rgba(37,72,92,.07);
    backdrop-filter:none;
    -webkit-backdrop-filter:none;
  }
  .shell .brand {
    flex:1 1 180px;
    min-width:0;
    gap:8px;
    padding:2px;
  }
  .shell .brand-mark {
    width:42px;
    height:42px;
    flex-basis:42px;
    border-radius:11px;
    box-shadow:none;
  }
  .shell .brand-mark img {
    width:36px;
    height:36px;
    border-radius:8px;
  }
  .shell .brand-copy strong {
    font-size:20px;
    line-height:1;
  }
  .shell .brand-copy span {
    max-width:none;
    overflow:visible;
    text-overflow:clip;
    font-size:6.5px;
    letter-spacing:.015em;
    line-height:1.15;
  }
  .shell .nav-actions {
    flex:0 0 auto;
    gap:5px;
  }
  .shell .learn-nav-link { display:none!important; }
  .shell .nav-actions a {
    width:44px;
    height:44px;
    min-width:44px;
    min-height:44px;
    padding:0;
    border-radius:12px;
    box-shadow:none;
  }
  .shell .nav {
    order:3;
    flex:1 0 100%;
    overflow:hidden;
  }
  .shell .nav-track {
    gap:4px;
    padding:3px;
    border-radius:12px;
    scroll-padding-inline:4px;
  }
  .shell .nav a {
    min-height:44px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:8px 13px;
    font-size:11px;
    line-height:1;
  }
  .shell .nav .mobile-nav-learn {
    display:inline-flex!important;
    color:#315d50;
    border:1px solid #c6dbd1;
    background:#f1f8f4;
  }

  .home-market-tape.is-mobile-quotes {
    width:100%;
    height:88px;
    min-height:88px;
    padding:3px 12px;
    display:grid;
    grid-template-columns:1fr auto;
    grid-template-rows:24px 56px;
    gap:0;
    border-top:1px solid #d9e6ec;
    border-bottom:1px solid #d9e6ec;
    background:#fffaf2;
  }
  .is-mobile-quotes .market-tape-label {
    grid-column:1;
    grid-row:1;
    display:flex;
    gap:7px;
    font-size:10px;
  }
  .mobile-market-controls {
    grid-column:2;
    grid-row:1;
    display:flex;
    align-items:center;
    gap:8px;
  }
  .is-mobile-quotes .market-tape-open {
    position:static;
    min-height:24px;
    background:transparent;
  }
  .mobile-ticker-toggle,.mobile-quote-refresh {
    width:28px;
    height:24px;
    padding:0;
    border:1px solid #ccdce5;
    border-radius:5px;
    color:#2d5267;
    background:transparent;
    font-size:13px;
    line-height:1;
    cursor:pointer;
  }
  .mobile-ticker-toggle svg,.mobile-quote-refresh svg { display:block; margin:auto; }
  .mobile-market-quotes {
    grid-column:1 / -1;
    grid-row:2;
    min-width:0;
    height:56px;
    display:flex;
    align-items:center;
    overflow-x:auto;
    overscroll-behavior-x:contain;
    scrollbar-width:none;
    -webkit-mask-image:linear-gradient(to right,transparent,#000 8px,#000 calc(100% - 8px),transparent);
    mask-image:linear-gradient(to right,transparent,#000 8px,#000 calc(100% - 8px),transparent);
    font-family:var(--sans);
  }
  .mobile-market-quotes::-webkit-scrollbar { display:none; }
  .mobile-quote-track {
    display:flex;
    flex:0 0 var(--ticker-cycle-width);
    width:var(--ticker-cycle-width);
    min-width:var(--ticker-cycle-width);
    max-width:var(--ticker-cycle-width);
  }
  .mobile-market-quote {
    box-sizing:border-box;
    flex:0 0 136px;
    width:136px;
    min-width:136px;
    max-width:136px;
    height:56px;
    padding:0 10px;
    border-right:1px solid #d9e6ec;
    display:grid;
    grid-template-columns:minmax(0,1fr);
    grid-template-rows:22px 18px 16px;
    gap:0;
    align-items:center;
    color:#203b4a;
    text-decoration:none;
  }
  .mobile-quote-heading {
    display:flex;
    align-items:center;
    gap:5px;
    min-width:0;
  }
  .mobile-quote-heading img {
    display:block;
    width:20px;
    height:20px;
    min-width:20px;
    flex:0 0 20px;
    object-fit:contain;
    border-radius:50%;
  }
  .mobile-quote-icon-fallback { width:20px; height:20px; flex:0 0 20px; display:grid; place-items:center; border-radius:50%; background:#d9e9f1; color:#31576c; font-size:11px; }
  .mobile-quote-heading [hidden] { display:none; }
  .mobile-quote-name {
    font-size:10px;
    color:#526876;
    white-space:nowrap;
  }
  .mobile-market-quote strong {
    font-size:13px;
    font-variant-numeric:tabular-nums;
    line-height:1.1;
    white-space:nowrap;
  }
  .mobile-quote-detail {
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:5px;
    min-width:0;
    white-space:nowrap;
  }
  .mobile-quote-change,.mobile-market-quote small {
    font-size:9px;
    line-height:1.15;
  }
  .mobile-market-quote small {
    flex:0 0 auto;
    white-space:nowrap;
    color:#526876;
  }
  .mobile-quote-refresh:disabled { opacity:.55; cursor:wait; }
  .mobile-quote-loading { color:#526876; font-size:12px; }
  .mobile-market-quotes button {
    min-height:44px;
    border:1px solid #466a7e;
    border-radius:5px;
    background:#fff;
    color:#254c64;
  }

  .front-page {
    padding-left:14px;
    padding-right:14px;
    padding-top:12px;
  }
  .front-hero {
    gap:22px;
    padding-top:14px;
    padding-bottom:34px;
  }
  .front-lead h1 {
    margin:8px 0 16px;
    font-size:clamp(36px,10vw,46px);
    line-height:.97;
    letter-spacing:-.042em;
    overflow-wrap:anywhere;
  }
  .front-lead-text > p {
    font-size:17px;
    line-height:1.48;
  }
  .front-latest { padding:16px 15px; }
  .front-latest-item {
    min-height:58px;
    padding:14px 0;
  }
  .front-desk-title {
    align-items:flex-end;
    gap:12px;
  }
  .front-desk-title h2 { font-size:30px; }
  .front-connect { margin-top:50px; }
  .front-brief,.front-follow { padding:23px 18px; }
  .front-brief form { min-width:0; width:100%; }
  .front-brief input,.footer-newsletter input { min-height:48px; }

  .article-wrap { padding:30px 16px 68px; }
  .article-head { padding-bottom:24px; }
  .article-head h1,.live-article-head h1 {
    font-size:clamp(38px,10.5vw,50px);
    line-height:.98;
    letter-spacing:-.045em;
    overflow-wrap:anywhere;
  }
  .article-head .dek {
    font-size:18px;
    line-height:1.48;
  }
  .article-byline { margin-top:20px; }
  .share-bar {
    flex-wrap:wrap;
    gap:7px;
  }
  .share-bar a,.share-bar button {
    width:44px;
    height:44px;
    min-width:44px;
    min-height:44px;
    padding:0;
    justify-content:center;
  }
  .share-bar em { display:none; }
  .article-featured { margin:25px -4px 12px; }
  .article-featured img { border-radius:11px; }
  .article-body {
    padding-top:24px;
    font-size:18px;
    line-height:1.72;
    overflow-wrap:break-word;
  }
  .article-body h2 {
    margin-top:39px;
    font-size:29px;
  }
  .article-body h3 { font-size:23px; }
  .article-tags a,.article-tags span {
    min-height:36px;
    display:inline-flex;
    align-items:center;
    padding:7px 11px;
  }
  .reader-disclaimer summary { min-height:52px; }
  .related-grid { gap:28px; }

  .learn-article { padding:26px 15px 68px; }
  .learn-breadcrumb { margin-bottom:22px; }
  .learn-article-head h1 {
    font-size:clamp(38px,10.5vw,48px);
    line-height:.98;
    overflow-wrap:anywhere;
  }
  .learn-article-head > p { font-size:17px; }
  .learn-body { font-size:18px; line-height:1.72; }
  .learn-share a,.learn-share button {
    width:44px;
    height:44px;
    min-width:44px;
  }

  .section-front { padding:26px 16px 66px; }
  .section-front-head h1 { font-size:48px; }
  .section-lead h2 {
    font-size:clamp(36px,10vw,44px);
    line-height:.99;
    overflow-wrap:anywhere;
  }
  .section-secondary {
    padding-left:0;
    border-left:0;
  }
  .section-secondary article + article { padding-top:20px; }

  .search-page,.portfolio-page { overflow-x:hidden; }
  .search-hero h1 { font-size:44px; }
  .portfolio-asset { min-width:0; }
  .footer-inner { padding:34px 16px 28px; }
  .footer-columns { gap:22px 18px; }
  .footer-columns a { min-height:40px; }

  .front-page > .front-learn,
  .front-page > .front-section,
  .front-page > .front-connect,
  .section-more,
  .related-stories,
  .learn-faqs,
  .learn-related,
  .portfolio-live,
  .shell > .footer {
    content-visibility:auto;
    contain-intrinsic-size:auto 620px;
  }
}

@media (max-width:380px) {
  .shell .brand-copy span { display:block; font-size:6px; }
  .shell .brand { flex-basis:150px; }
  .shell .brand-copy strong { font-size:18px; }
  .shell .brand-mark {
    width:38px;
    height:38px;
    flex-basis:38px;
  }
  .shell .brand-mark img {
    width:33px;
    height:33px;
  }
  .front-lead h1,
  .article-head h1,
  .live-article-head h1,
  .learn-article-head h1 { font-size:36px; }
}

@media (hover:none) and (pointer:coarse) {
  .shell .nav a:hover,
  .shell .nav-actions a:hover,
  .front-feature-story:hover,
  .front-stack-story:hover,
  .front-feature-story:hover img,
  .front-stack-story:hover img,
  .story-card:hover .story-image,
  .related-grid article:hover .related-image img {
    transform:none;
  }
}

/* Chronological section grids and the Markets Price Analysis subsection. */
.section-article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px 24px;margin-top:30px}
.section-article-grid .story-card,.analysis-home-grid .story-card{min-width:0;display:flex;flex-direction:column;background:#fffdfa;border:1px solid var(--line);border-radius:14px;overflow:hidden;padding:0 0 20px}
.section-article-grid .story-card>a:first-child,.analysis-home-grid .story-card>a:first-child{display:block}
.section-article-grid .story-image,.analysis-home-grid .story-image{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;margin:0}
.section-article-grid .story-card>.kicker,.section-article-grid .story-card>p,.section-article-grid .story-card>.meta,.section-article-grid .story-card>a:not(:first-child),.analysis-home-grid .story-card>.kicker,.analysis-home-grid .story-card>p,.analysis-home-grid .story-card>.meta,.analysis-home-grid .story-card>a:not(:first-child){margin-left:19px;margin-right:19px}
.section-article-grid .story-card>.kicker,.analysis-home-grid .story-card>.kicker{margin-top:17px}
.section-article-grid .story-card h3,.analysis-home-grid .story-card h3{font-family:var(--serif);font-size:27px;line-height:1.08;letter-spacing:-.025em;margin:10px 0}
.section-article-grid .story-card p,.analysis-home-grid .story-card p{font-size:14px;line-height:1.55;color:var(--muted);margin-top:0}
.section-article-grid .story-card .meta,.analysis-home-grid .story-card .meta{margin-top:auto;padding-top:10px}
.section-load-more{display:block;margin:28px auto 0}.section-load-more[hidden]{display:none}.section-feed-status{color:var(--muted);font-size:14px}
.market-subnav{display:flex;gap:25px;border-bottom:1px solid var(--line);overflow-x:auto;white-space:nowrap}.market-subnav a{padding:16px 0;color:var(--muted);font-size:14px}.market-subnav a[aria-current]{color:#007ab7;border-bottom:3px solid #007ab7;font-weight:700}
.analysis-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:25px}.analysis-toolbar>span{font-size:12px;color:var(--muted)}.analysis-filters{display:flex;flex-wrap:wrap;gap:8px}.analysis-filters button{font:inherit;font-size:13px;border:1px solid var(--line);padding:9px 16px;border-radius:24px;background:#fffdfa;color:#416371;cursor:pointer}.analysis-filters button[aria-pressed=true]{background:#17384d;color:white;border-color:#17384d}
.analysis-home-intro{color:var(--muted);margin:-6px 0 20px}.analysis-home-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.analysis-home-grid .story-card h3{font-size:24px}
@media(min-width:1280px){.section-article-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:1000px){.section-article-grid,.analysis-home-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.analysis-toolbar{align-items:flex-start;flex-direction:column}}
@media(max-width:600px){.section-article-grid,.analysis-home-grid{grid-template-columns:minmax(0,1fr);gap:22px}.section-grid-page .section-front-head{align-items:flex-start;flex-direction:column;gap:18px}.section-grid-page .section-front-head h1{font-size:clamp(42px,12vw,58px)}.market-subnav{gap:23px}.market-subnav a{font-size:13px}.analysis-toolbar>span{font-size:11px}}

.analysis-standard{margin-top:32px;padding:20px 24px;background:#edf5f6;border:1px solid var(--line);border-radius:12px}.analysis-standard summary{font-family:var(--serif);font-size:25px;color:#17384d;cursor:pointer}.analysis-standard p{font-size:14px;line-height:1.7;color:var(--muted);max-width:800px}

/* Editorial Standards: restrained typography and clear paragraph rhythm. */
.page.standards-page{max-width:860px;margin:76px auto 96px;padding:0 32px}
.standards-page h1{font-size:clamp(38px,5vw,60px);line-height:1.1;letter-spacing:-.035em;margin:0 0 30px;padding-bottom:24px;border-bottom:1px solid var(--line)}
.standards-page .page-copy p{font-size:19px;line-height:1.75;margin:0;padding:24px 0;border-bottom:1px solid var(--line)}
.standards-page .page-copy p:first-child{font-size:22px;line-height:1.6;font-weight:400;color:#253f4e;padding:0 0 28px}
.standards-page .page-copy p:last-child{border-bottom:0;padding-bottom:0}
@media(max-width:600px){.page.standards-page{margin:44px auto 64px;padding:0 22px}.standards-page h1{margin-bottom:24px;padding-bottom:20px}.standards-page .page-copy p{font-size:18px;line-height:1.7;padding:21px 0}.standards-page .page-copy p:first-child{font-size:20px;line-height:1.65;padding-bottom:24px}}
