/*
 * WWC One Media — APAC Desk child 0.2.0
 * Mobile-first. Parent fonts only (Inter 400–800, Source Serif 4 600–700). No JS.
 * Identity: navy #0b1f3a masthead + footer, WWC red #dc2626 badge/rules,
 * per-section editorial accents via --wx-accent, serif headline voice,
 * square-cornered imagery with accent base bars.
 */

:root {
  --wx-max: 80rem;
  --wx-pad: 1rem;
  --wx-navy: #0b1f3a;
  --wx-navy-2: #081629;
  --wx-navy-3: #13305a;
  --wx-red: #dc2626;
  --wx-ink: #0b1f3a;
  --wx-body: #1f2937;
  --wx-muted: #64748b;
  --wx-line: #e2e8f0;
  --wx-paper: #f6f4ef;   /* warm newsprint tint for the APAC chapter */
  --wx-serif: var(--wwc-serif, "Source Serif 4", Georgia, serif);
  --wx-sans: var(--wwc-font, "Inter", system-ui, sans-serif);
  --wx-accent: var(--wx-red);
}

.wwcx { background: #fff; color: var(--wx-ink); }
.wx-wrap { max-width: var(--wx-max); margin: 0 auto; padding-left: var(--wx-pad); padding-right: var(--wx-pad); box-sizing: border-box; }
.wx-ph { display: block; width: 100%; height: 100%; min-height: 4rem; background: linear-gradient(135deg, #e2e8f0, #cbd5e1); }
.wwcx img { border-radius: 0; }

/* ===================== Header ===================== */
.wx-header { position: relative; z-index: 50; }
.wx-mast { background: var(--wx-navy); color: #fff; border-bottom: 4px solid var(--wx-red); }
.wx-mast__top { display: flex; align-items: center; gap: 0.75rem; min-height: 3.75rem; }

.wx-brand { display: inline-flex; align-items: center; color: #fff; }
.wx-brand:hover { color: #fff; }
.wwcx .wx-brand__wordmark.site-masthead__wordmark {
  margin: 0; display: inline-flex; align-items: center; gap: 0.45rem;
  font-family: var(--wx-sans); font-weight: 800; font-size: 1.25rem; line-height: 1;
  letter-spacing: 0.02em; text-transform: uppercase; color: #fff;
}
.wx-brand__badge {
  display: inline-flex; align-items: center; justify-content: center;
  background: var(--wx-red); color: #fff; padding: 0.32em 0.4em 0.28em; letter-spacing: 0.04em;
  box-shadow: 3px 3px 0 rgba(0, 0, 0, 0.35);
}
.wx-brand__name { color: #fff; letter-spacing: 0.14em; }
.wx-brand__one { color: #fca5a5; }

.wx-edition { display: none; }
.wx-mast__tools { margin-left: auto; display: flex; align-items: center; gap: 0.5rem; }
.wx-mast__brief { display: none; }
.wx-mast__search { display: inline-flex; align-items: center; justify-content: center; width: 2.25rem; height: 2.25rem; color: #fff; border: 1px solid rgba(255,255,255,.25); }
.wx-mast__search:hover { color: #fff; border-color: #fff; }

.wwcx .wx-nav__toggle.nav-toggle {
  display: inline-flex; align-items: center; gap: 0.45rem; height: 2.25rem; padding: 0 0.75rem;
  background: var(--wx-red); color: #fff; border: 0; border-radius: 0;
  font: 800 0.75rem/1 var(--wx-sans); letter-spacing: 0.1em; text-transform: uppercase; cursor: pointer;
}
.wx-burger, .wx-burger::before, .wx-burger::after { display: block; width: 14px; height: 2px; background: currentColor; position: relative; }
.wx-burger::before, .wx-burger::after { content: ""; position: absolute; left: 0; }
.wx-burger::before { top: -5px; }
.wx-burger::after { top: 5px; }
.nav-toggle[aria-expanded="true"] .wx-burger { background: transparent; }
.nav-toggle[aria-expanded="true"] .wx-burger::before { top: 0; transform: rotate(45deg); }
.nav-toggle[aria-expanded="true"] .wx-burger::after { top: 0; transform: rotate(-45deg); }

.wx-nav { background: var(--wx-navy-2); }
.wwcx .wx-nav__panel { display: none; }
.wwcx .wx-nav__panel.is-open { display: block; }
.wx-nav__panel .nav-list { list-style: none; margin: 0; padding: 0.5rem 0 1rem; display: grid; grid-template-columns: 1fr 1fr; gap: 0 1.25rem; }
.wx-nav__panel .nav-list a {
  display: block; padding: 0.7rem 0; border-bottom: 1px solid rgba(255,255,255,.1);
  font: 700 0.9375rem/1.2 var(--wx-sans); color: #e2e8f0;
}
.wx-nav__panel .nav-list a:hover, .wx-nav__panel .nav-item.is-current a { color: #fff; }
.wx-nav__panel .nav-item.is-current a { box-shadow: inset 3px 0 0 var(--wx-red); padding-left: 0.6rem; }

/* APAC market rail */
.wx-apac { background: #fff; border-bottom: 1px solid var(--wx-line); }
.wx-apac__inner { display: flex; align-items: center; gap: 0.6rem; height: 2.75rem; }
.wx-apac__label {
  flex: none; font: 800 0.625rem/1 var(--wx-sans); letter-spacing: 0.16em; color: #fff; background: var(--wx-navy);
  padding: 0.35rem 0.45rem;
}
.wx-apac__list { list-style: none; margin: 0; padding: 0; display: flex; gap: 0.35rem; overflow-x: auto; scrollbar-width: none; -webkit-mask-image: linear-gradient(90deg, #000 88%, transparent); mask-image: linear-gradient(90deg, #000 88%, transparent); }
.wx-apac__list::-webkit-scrollbar { display: none; }
.wx-apac__list a {
  display: inline-flex; align-items: center; gap: 0.35rem; white-space: nowrap;
  padding: 0.3rem 0.5rem; border: 1px solid var(--wx-line);
  font: 600 0.75rem/1 var(--wx-sans); color: var(--wx-body);
}
.wx-apac__list b { font-weight: 800; color: #0e7490; letter-spacing: 0.04em; }
.wx-apac__list span { display: none; }
.wx-apac__list a:hover { border-color: #0e7490; color: #0e7490; }

.wwcx .wx-header + .wwc-ad-slot--ads-header { margin: 0.75rem auto 0; }

/* ===================== Shared atoms ===================== */
.wx-flag { margin: 0 0 0.35rem; line-height: 1; }
.wx-flag a {
  display: inline-flex; align-items: center; gap: 0.4rem;
  font: 800 0.6875rem/1 var(--wx-sans); letter-spacing: 0.1em; text-transform: uppercase; color: var(--wx-accent);
}
.wx-flag a::before { content: ""; width: 0.55rem; height: 0.55rem; background: var(--wx-accent); }
.wx-stamp { margin: 0.4rem 0 0; font: 600 0.6875rem/1.2 var(--wx-sans); letter-spacing: 0.06em; text-transform: uppercase; color: var(--wx-muted); }

.wx-tile { min-width: 0; }
.wx-tile__media { position: relative; display: block; aspect-ratio: 3 / 2; overflow: hidden; background: #e2e8f0; margin-bottom: 0.65rem; }
.wx-tile__media::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 4px; background: var(--wx-accent); }
.wx-tile__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .3s ease; }
.wx-tile:hover .wx-tile__media img { transform: scale(1.03); }
.wx-tile__hed { margin: 0; font-family: var(--wx-serif); font-weight: 700; font-size: 1.1875rem; line-height: 1.2; letter-spacing: -0.005em; color: var(--wx-ink); }
.wx-tile__hed a:hover, .wx-sec__hed a:hover, .wx-ranked__hed a:hover { color: var(--wx-accent); }

/* ===================== Home: top ===================== */
.wwcx .site-main.wx-home { max-width: none; padding: 0; }
.wx-home > .wx-wrap:first-child { padding-top: 1rem; }
.wx-top { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1.5rem; }

/* Lead: image + navy slab overlapping its lower edge */
.wx-lead { position: relative; }
.wx-lead__media { display: block; aspect-ratio: 16 / 9; overflow: hidden; background: #0b1f3a; margin: 0 calc(-1 * var(--wx-pad)); }
.wx-lead__media img { width: 100%; height: 100%; object-fit: cover; }
.wx-lead__slab {
  position: relative; margin: -2.25rem 0 0 0; background: var(--wx-navy); color: #fff;
  padding: 1rem 1rem 1.1rem; border-left: 6px solid var(--wx-accent);
  box-shadow: 0 18px 40px -20px rgba(11,31,58,.55);
}
.wx-lead__top { display: flex; align-items: center; gap: 0.6rem; margin: 0 0 0.6rem; }
.wx-lead__badge { background: var(--wx-red); color: #fff; font: 800 0.625rem/1 var(--wx-sans); letter-spacing: 0.14em; text-transform: uppercase; padding: 0.35rem 0.45rem; }
.wx-lead__sec { font: 700 0.6875rem/1 var(--wx-sans); letter-spacing: 0.12em; text-transform: uppercase; color: #cbd5e1; }
.wx-lead__sec:hover { color: #fff; }
.wwcx .wx-lead__hed { margin: 0 0 0.6rem; font-family: var(--wx-serif); font-weight: 700; font-size: clamp(1.6rem, 1.1rem + 2.4vw, 2.75rem); line-height: 1.08; letter-spacing: -0.012em; color: #fff; }
.wx-lead__hed a { color: #fff; }
.wx-lead__hed a:hover { color: #fecaca; }
.wx-lead__dek { margin: 0; font-size: 1rem; line-height: 1.5; color: #cbd5e1; }
.wx-lead .wx-stamp { color: #94a3b8; }

/* Stack: four tiles */
.wx-top__stack { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.25rem 1rem; }
.wx-tile--stack .wx-tile__hed { font-size: 1.0625rem; }

/* The Wire */
.wx-wire { background: var(--wx-navy); color: #e2e8f0; padding: 1rem 1rem 0.25rem; }
.wx-wire__head { display: flex; align-items: center; gap: 0.5rem; padding-bottom: 0.75rem; border-bottom: 1px solid rgba(255,255,255,.14); }
.wx-wire__live { width: 0.55rem; height: 0.55rem; border-radius: 50%; background: var(--wx-red); box-shadow: 0 0 0 4px rgba(220,38,38,.25); }
.wwcx .wx-wire__title { margin: 0; font: 800 0.875rem/1 var(--wx-sans); letter-spacing: 0.14em; text-transform: uppercase; color: #fff; }
.wx-wire__sub { margin-left: auto; font: 700 0.625rem/1 var(--wx-sans); letter-spacing: 0.14em; text-transform: uppercase; color: #94a3b8; }
.wx-wire__list { list-style: none; margin: 0; padding: 0.25rem 0 0; position: relative; }
.wx-wire__list::before { content: ""; position: absolute; left: 3.05rem; top: 0.9rem; bottom: 0.9rem; width: 1px; background: rgba(255,255,255,.16); }
.wx-wire__item { display: grid; grid-template-columns: 2.6rem minmax(0, 1fr); gap: 0.9rem; padding: 0.7rem 0; position: relative; }
.wx-wire__item::before { content: ""; position: absolute; left: calc(3.05rem - 3px); top: 1.05rem; width: 7px; height: 7px; background: var(--wx-accent); }
.wx-wire__time { font: 700 0.75rem/1.4 var(--wx-sans); font-variant-numeric: tabular-nums; color: #94a3b8; padding-top: 0.1rem; }
.wx-wire__sec { display: block; font: 700 0.625rem/1 var(--wx-sans); letter-spacing: 0.1em; text-transform: uppercase; color: #94a3b8; margin: 0.15rem 0 0.3rem; }
.wwcx .wx-wire__hed { margin: 0; font-family: var(--wx-sans); font-weight: 600; font-size: 0.9375rem; line-height: 1.3; color: #fff; }
.wx-wire__hed a { color: #f1f5f9; }
.wx-wire__hed a:hover { color: #fca5a5; }
.wx-wire__more { display: flex; justify-content: space-between; margin: 0.25rem -1rem 0; padding: 0.8rem 1rem; background: var(--wx-red); color: #fff; font: 800 0.75rem/1 var(--wx-sans); letter-spacing: 0.12em; text-transform: uppercase; }
.wx-wire__more:hover { background: #b91c1c; color: #fff; }
.wx-top__widgets:empty { display: none; }
.wx-top__latest > * + * { margin-top: 1.25rem; }

/* ===================== Home: chapters ===================== */
.wx-chapter { padding: 2rem 0 1.5rem; }
.wx-chapter__head { display: flex; align-items: baseline; flex-wrap: wrap; gap: 0.25rem 0.75rem; margin-bottom: 1.25rem; padding-top: 0.75rem; border-top: 3px solid var(--wx-navy); position: relative; }
.wx-chapter__head::before { content: ""; position: absolute; top: -3px; left: 0; width: 4rem; height: 3px; background: var(--wx-red); }
.wx-chapter__no { font: 800 0.8125rem/1 var(--wx-sans); color: var(--wx-red); letter-spacing: 0.08em; }
.wwcx .wx-chapter__title { margin: 0; font-family: var(--wx-serif); font-weight: 700; font-size: clamp(1.6rem, 1.2rem + 1.6vw, 2.25rem); line-height: 1; letter-spacing: -0.01em; color: var(--wx-ink); }
.wx-chapter__kicker { font: 600 0.75rem/1 var(--wx-sans); letter-spacing: 0.12em; text-transform: uppercase; color: var(--wx-muted); }
.wx-chapter__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1.75rem; }

.wx-sec { min-width: 0; }
.wx-sec__head { display: flex; align-items: center; gap: 0.6rem; margin-bottom: 0.85rem; }
.wwcx .wx-sec__title { margin: 0; font: 800 0.8125rem/1 var(--wx-sans); letter-spacing: 0.12em; text-transform: uppercase; }
.wx-sec__title a { color: inherit; }
.wx-sec__more { margin-left: auto; font: 700 0.6875rem/1 var(--wx-sans); letter-spacing: 0.1em; text-transform: uppercase; color: var(--wx-accent); white-space: nowrap; }
.wx-sec__list { list-style: none; margin: 0; padding: 0; counter-reset: wxn; }
.wx-sec__list:empty { display: none; }
.wx-sec__item { position: relative; padding: 0.7rem 0 0.7rem 2rem; border-top: 1px solid var(--wx-line); counter-increment: wxn; }
.wx-sec__item::before { content: counter(wxn, decimal-leading-zero); position: absolute; left: 0; top: 0.8rem; font: 800 0.8125rem/1 var(--wx-sans); color: var(--wx-accent); font-variant-numeric: tabular-nums; }
.wwcx .wx-sec__hed { margin: 0; font-family: var(--wx-serif); font-weight: 600; font-size: 1rem; line-height: 1.28; color: var(--wx-ink); }
.wx-sec__item .wx-stamp { margin-top: 0.3rem; }

/* desk style: accent tab header */
.wx-sec--desk .wx-sec__head { border-bottom: 2px solid var(--wx-accent); padding-bottom: 0; }
.wx-sec--desk .wx-sec__title { background: var(--wx-accent); color: #fff; padding: 0.5rem 0.7rem 0.45rem; }
.wx-sec--desk .wx-sec__title a:hover { color: #fff; }
.wx-sec--desk .wx-sec__body { display: grid; grid-template-columns: minmax(0, 1fr); gap: 0.85rem; }
.wx-sec--desk .wx-tile .wx-flag { display: none; }
.wx-sec--desk .wx-sec__list .wx-sec__item:first-child { border-top: 0; padding-top: 0.15rem; }
.wx-sec--desk .wx-sec__list .wx-sec__item:first-child::before { top: 0.25rem; }

/* band style: navy full-bleed "After Hours" */
.wx-chapter--band { background: var(--wx-navy); color: #e2e8f0; margin: 1rem 0; padding-bottom: 2rem; }
.wx-chapter--band .wx-chapter__head { border-top-color: rgba(255,255,255,.2); }
.wwcx .wx-chapter--band .wx-chapter__title { color: #fff; }
.wx-chapter--band .wx-chapter__kicker { color: #94a3b8; }
.wx-sec--band .wx-sec__head { border-top: 3px solid var(--wx-accent); padding-top: 0.6rem; }
.wwcx .wx-sec--band .wx-sec__title { color: #fff; }
.wx-over { position: relative; overflow: hidden; background: #000; }
.wx-over__media { display: block; aspect-ratio: 4 / 3; }
.wx-over__media img { width: 100%; height: 100%; object-fit: cover; opacity: .82; }
.wx-over__text { position: absolute; left: 0; right: 0; bottom: 0; padding: 3rem 1rem 1rem; background: linear-gradient(180deg, transparent, rgba(4,12,26,.92) 55%); }
.wwcx .wx-over__hed { margin: 0; font-family: var(--wx-serif); font-weight: 700; font-size: 1.25rem; line-height: 1.18; color: #fff; }
.wx-over__hed a { color: #fff; }
.wx-over__hed a:hover { color: #fecaca; }
.wx-over .wx-stamp { color: #cbd5e1; }
.wx-sec--band .wx-sec__item { border-top-color: rgba(255,255,255,.14); }
.wwcx .wx-sec--band .wx-sec__hed, .wx-sec--band .wx-sec__hed a { color: #f1f5f9; }
.wx-sec--band .wx-sec__hed a:hover { color: #fecaca; }
.wx-sec--band .wx-stamp { color: #94a3b8; }
.wx-sec--band .wx-sec__list { margin-top: 0.4rem; }

/* apac style: warm paper band, market code badges */
.wx-chapter--apac { background: var(--wx-paper); margin: 1rem 0; }
.wx-chapter--apac .wx-chapter__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.5rem 1rem; }
.wx-sec--apac .wx-sec__head { gap: 0.45rem; padding-bottom: 0.55rem; border-bottom: 1px solid rgba(11,31,58,.18); }
.wx-sec__code { display: inline-flex; align-items: center; justify-content: center; min-width: 2rem; height: 1.6rem; background: var(--wx-navy); color: #fff; font: 800 0.75rem/1 var(--wx-sans); letter-spacing: 0.06em; }
.wwcx .wx-sec--apac .wx-sec__title { font-size: 0.6875rem; letter-spacing: 0.1em; }
.wx-sec--apac .wx-sec__more { display: none; }
.wx-tile--mini .wx-flag { display: none; }
.wx-tile--mini .wx-tile__media { aspect-ratio: 16 / 9; margin-bottom: 0.5rem; }
.wx-tile--mini .wx-tile__media::after { background: var(--wx-navy); height: 3px; }
.wwcx .wx-tile--mini .wx-tile__hed { font-size: 0.9375rem; line-height: 1.25; }
.wx-sec--apac .wx-sec__item { padding-left: 0; border-top-color: rgba(11,31,58,.14); }
.wx-sec--apac .wx-sec__item::before { display: none; }
.wwcx .wx-sec--apac .wx-sec__hed { font-size: 0.875rem; }
.wx-sec--apac .wx-sec__list { margin-top: 0.5rem; }
.wx-sec--apac .wx-stamp { display: none; }

.wx-feedad:empty { display: none; }
.wx-feedad .wwc-ad-slot, .wx-home .wwc-ad-slot--ads-in-feed { margin: 1rem auto; }

/* Most read (parent part) — numbered ranking strip */
.wx-most { margin: 1.5rem 0 2.5rem; }
.wwcx .wx-most .most-read { border: 0; border-radius: 0; padding: 1.25rem 1.25rem 1.5rem; box-shadow: inset 0 4px 0 var(--wx-navy); } /* parent keeps Mark's red Most Read panel */
.wwcx .wx-most .most-read__title { font: 800 0.8125rem/1 var(--wx-sans); letter-spacing: 0.14em; text-transform: uppercase; margin-bottom: 1rem; }
.wwcx .wx-most .most-read__list { list-style: none; counter-reset: wxm; display: grid; grid-template-columns: minmax(0, 1fr); gap: 0.9rem 1.5rem; }
.wwcx .wx-most .most-read__list li { counter-increment: wxm; display: grid; grid-template-columns: 2.5rem minmax(0, 1fr); align-items: start; }
.wwcx .wx-most .most-read__list li::before { content: counter(wxm); font: 700 2rem/0.9 var(--wx-serif); color: rgba(255,255,255,.55); }
.wwcx .wx-most .most-read__list a { font: 700 1rem/1.3 var(--wx-serif); }

/* Newsletter band (parent part) restyle */
.wwcx .newsletter { max-width: var(--wx-max); margin: 0 auto; padding: 0 var(--wx-pad) 2.5rem; border: 0; border-radius: 0; background: transparent; }
.wwcx .newsletter__inner { border-radius: 0; background: var(--wx-navy); background-image: linear-gradient(110deg, var(--wx-navy) 0 62%, var(--wx-navy-3) 62%); border-left: 6px solid var(--wx-red); }
.wwcx .newsletter__label { color: #fca5a5; letter-spacing: .14em; text-transform: uppercase; font-weight: 800; font-size: .6875rem; }
.wwcx .newsletter__title { font-family: var(--wx-serif); font-size: 1.75rem; }
.wwcx .newsletter__text { color: #cbd5e1; }
.wwcx .newsletter__input { border-radius: 0; border-color: rgba(255,255,255,.4); background: rgba(0,0,0,.18); }
.wwcx .newsletter__btn { border-radius: 0; background: var(--wx-red); text-transform: uppercase; letter-spacing: .1em; font-weight: 800; font-size: .75rem; }
.wwcx .newsletter__btn:hover { background: #000; }

/* ===================== Single ===================== */
.wwcx .content-wrap.wx-single { max-width: var(--wx-max); padding: 1.5rem var(--wx-pad) 1rem; display: block; }
.wx-single__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 2rem; }
.wx-single__main { min-width: 0; }
.wx-kicker { display: flex; align-items: center; gap: 0.6rem; margin: 0 0 1rem; }
.wx-kicker__tab { background: var(--wx-accent); color: #fff; padding: 0.4rem 0.6rem 0.35rem; font: 800 0.6875rem/1 var(--wx-sans); letter-spacing: 0.12em; text-transform: uppercase; }
.wx-kicker__tab:hover { color: #fff; background: var(--wx-navy); }
.wx-kicker__ed { font: 700 0.6875rem/1 var(--wx-sans); letter-spacing: 0.12em; text-transform: uppercase; color: var(--wx-muted); }
.wwcx .wx-article__title.page-title { margin: 0 0 1rem; font-family: var(--wx-serif); font-weight: 700; font-size: clamp(2rem, 1.3rem + 2.9vw, 3.5rem); line-height: 1.06; letter-spacing: -0.015em; color: var(--wx-ink); }
.wx-article__dek { margin: 0 0 1.25rem; padding-left: 1rem; border-left: 4px solid var(--wx-accent); font-size: 1.125rem; line-height: 1.5; color: #475569; }
.wx-article__meta { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 0.75rem; padding: 0.85rem 0; border-top: 3px solid var(--wx-navy); }
.wwcx .wx-article__meta .entry-meta { margin: 0; display: flex; flex-direction: column; gap: 0.2rem; font-size: 0.8125rem; color: var(--wx-muted); }
.wx-article__byline { font-weight: 800; color: var(--wx-ink); text-transform: uppercase; letter-spacing: 0.06em; font-size: 0.75rem; }
.wx-article__byline::before { content: "By "; font-weight: 600; text-transform: none; letter-spacing: 0; color: var(--wx-muted); }
.wx-article__read::before { content: " · "; }
.wx-share { display: flex; gap: 0; }
.wx-share__btn { padding: 0.5rem 0.7rem; background: var(--wx-navy); color: #fff; font: 700 0.6875rem/1 var(--wx-sans); letter-spacing: 0.08em; text-transform: uppercase; border-right: 1px solid rgba(255,255,255,.18); }
.wx-share__btn:last-child { border-right: 0; }
.wx-share__btn:hover { background: var(--wx-red); color: #fff; }
.wwcx .wx-article__figure.entry-featured { position: relative; margin: 0 0 1.5rem; border-radius: 0; aspect-ratio: auto; background: #0b1f3a; }
.wx-article__figure::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 5px; background: var(--wx-accent); }
.wx-article__figure img { width: 100%; height: auto; }
.wwcx .wx-article__body.entry-content { font-family: var(--wx-sans); font-size: 1.0625rem; line-height: 1.75; color: var(--wx-body); }
.wx-article__body > p:first-of-type { font-size: 1.1875rem; line-height: 1.6; color: var(--wx-ink); }
.wx-article__body h2, .wx-article__body h3 { font-family: var(--wx-serif); font-weight: 700; color: var(--wx-ink); }
.wx-article__body a { color: var(--wx-red); text-decoration: underline; text-underline-offset: 2px; }
.wx-article__body blockquote { margin: 1.5rem 0; padding: 0.25rem 0 0.25rem 1.25rem; border-left: 4px solid var(--wx-accent); font-family: var(--wx-serif); font-size: 1.25rem; font-weight: 600; color: var(--wx-ink); }

.wx-brief { margin: 2rem 0 1.5rem; padding: 1.1rem 1.25rem; background: var(--wx-navy); color: #fff; display: grid; gap: 0.5rem; border-left: 6px solid var(--wx-red); }
.wx-brief__label { margin: 0; font: 800 0.6875rem/1 var(--wx-sans); letter-spacing: 0.16em; text-transform: uppercase; color: #fca5a5; }
.wx-brief__text { margin: 0; font: 700 1.25rem/1.25 var(--wx-serif); }
.wx-brief__btn { justify-self: start; margin-top: 0.25rem; padding: 0.7rem 1rem; background: var(--wx-red); color: #fff; font: 800 0.75rem/1 var(--wx-sans); letter-spacing: 0.08em; text-transform: uppercase; }
.wx-brief__btn:hover { background: #fff; color: var(--wx-navy); }
.wx-tags { display: flex; flex-wrap: wrap; gap: 0.4rem; align-items: center; font-size: 0.75rem; }
.wx-tags__label { font-weight: 800; letter-spacing: 0.12em; text-transform: uppercase; color: var(--wx-muted); margin-right: 0.25rem; }
.wx-tags a { padding: 0.3rem 0.5rem; border: 1px solid var(--wx-line); font-weight: 600; color: var(--wx-body); }

.wx-single__side { min-width: 0; display: grid; gap: 1.5rem; align-content: start; }
.wx-ranked { border-top: 3px solid var(--wx-navy); padding-top: 0.75rem; }
.wwcx .wx-ranked__title { margin: 0 0 0.5rem; font: 800 0.8125rem/1 var(--wx-sans); letter-spacing: 0.14em; text-transform: uppercase; color: var(--wx-red); }
.wx-ranked__list { list-style: none; margin: 0; padding: 0; counter-reset: wxr; }
.wx-ranked__item { position: relative; counter-increment: wxr; padding: 0.75rem 0 0.75rem 2.75rem; border-bottom: 1px solid var(--wx-line); }
.wx-ranked__item::before { content: counter(wxr); position: absolute; left: 0; top: 0.6rem; font: 700 2.25rem/1 var(--wx-serif); color: #cbd5e1; }
.wx-ranked__sec { display: block; font: 800 0.625rem/1 var(--wx-sans); letter-spacing: 0.1em; text-transform: uppercase; color: var(--wx-accent); margin-bottom: 0.3rem; }
.wwcx .wx-ranked__hed { margin: 0; font-family: var(--wx-serif); font-weight: 700; font-size: 1rem; line-height: 1.25; }

.wx-single__after { margin-top: 2.5rem; }
.wwcx .wx-single .related-posts { border-top: 3px solid var(--wx-navy); padding-top: 0.75rem; position: relative; }
.wwcx .wx-single .related-posts::before, .wwcx .wx-single .more-in-hub::before { content: ""; position: absolute; top: -3px; left: 0; width: 4rem; height: 3px; background: var(--wx-red); }
.wwcx .wx-single .related-posts__title, .wwcx .wx-single .more-in-hub__title { font-family: var(--wx-serif); font-weight: 700; font-size: 1.75rem; letter-spacing: -0.01em; color: var(--wx-ink); margin: 0 0 1rem; }
.wwcx .wx-single .related-posts__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.25rem 1rem; }
.wwcx .wx-single .related-card__media { position: relative; border-radius: 0; overflow: hidden; display: block; aspect-ratio: 3 / 2; }
.wwcx .wx-single .related-card__media::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 4px; background: var(--wx-red); }
.wwcx .wx-single .related-card__media img { width: 100%; height: 100%; object-fit: cover; }
.wwcx .wx-single .related-card__kicker a { font-weight: 800; letter-spacing: .1em; }
.wwcx .wx-single .related-card__title { font-family: var(--wx-serif); font-size: 1.0625rem; line-height: 1.22; font-weight: 700; }
.wwcx .wx-single .related-card__date { font-size: .6875rem; letter-spacing: .06em; text-transform: uppercase; color: var(--wx-muted); }
.wwcx .wx-single .more-in-hub { position: relative; border-top: 3px solid var(--wx-navy); padding-top: 0.75rem; }
.wwcx .wx-single .more-in-hub__list { grid-template-columns: minmax(0, 1fr); }
.wwcx .wx-single .more-in-hub__thumb { border-radius: 0; aspect-ratio: 3 / 2; }
.wwcx .wx-single .more-in-hub__link { font-family: var(--wx-serif); font-weight: 700; }
.wwcx .wx-single .hub-chip { border-radius: 0; }
.wx-prevnext { display: grid; grid-template-columns: minmax(0, 1fr); gap: 0.75rem; padding: 1.25rem 0 2rem; margin-top: 1.5rem; border-top: 1px solid var(--wx-line); }
.wx-prevnext a { display: block; padding: 0.85rem 1rem; background: #f1f5f9; font: 700 1rem/1.3 var(--wx-serif); color: var(--wx-ink); }
.wx-prevnext a:hover { background: var(--wx-navy); color: #fff; }
.wx-prevnext__dir { display: block; margin-bottom: 0.3rem; font: 800 0.625rem/1 var(--wx-sans); letter-spacing: 0.14em; text-transform: uppercase; color: var(--wx-red); }
.wx-below-widgets { margin-top: 1.5rem; display: grid; gap: 1.25rem; grid-template-columns: minmax(0, 1fr); font-size: 0.9375rem; }

/* ===================== Footer ===================== */
.wwcx .site-footer.wx-footer { background: var(--wx-navy); color: #cbd5e1; margin-top: 0; padding: 0; border-top: 6px solid var(--wx-red); }
.wx-footer__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: 1.75rem; padding-top: 2.25rem; padding-bottom: 2rem; }
.wx-footer__mark { display: inline-flex; align-items: center; gap: 0.45rem; margin: 0 0 0.85rem; font: 800 1.5rem/1 var(--wx-sans); text-transform: uppercase; letter-spacing: 0.02em; color: #fff; }
.wx-footer__desc { margin: 0; max-width: 26rem; font-size: 0.875rem; line-height: 1.6; color: #94a3b8; }
.wwcx .wx-footer__label, .wwcx .wx-footer .footer-sitelinks__label { margin: 0 0 0.75rem; font: 800 0.6875rem/1 var(--wx-sans); letter-spacing: 0.16em; text-transform: uppercase; color: #fca5a5; position: static; width: auto; height: auto; clip: auto; clip-path: none; }
.wwcx .wx-footer .footer-sitelinks { margin: 0; color: inherit; }
.wwcx .wx-footer .footer-sitelinks__list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.55rem 1rem; border: 0; }
.wwcx .wx-footer .footer-sitelinks__list a { color: #e2e8f0; font-weight: 600; font-size: 0.875rem; }
.wwcx .wx-footer .footer-sitelinks__list a:hover { color: #fff; text-decoration: underline; text-decoration-color: var(--wx-red); text-underline-offset: 4px; }
.wx-footer__codes { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.45rem 1rem; }
.wx-footer__codes a { display: flex; align-items: center; gap: 0.5rem; font-size: 0.8125rem; color: #cbd5e1; }
.wx-footer__codes b { display: inline-flex; align-items: center; justify-content: center; width: 1.9rem; height: 1.35rem; border: 1px solid rgba(255,255,255,.3); font-size: 0.6875rem; letter-spacing: 0.06em; color: #fff; }
.wx-footer__codes a:hover b { background: var(--wx-red); border-color: var(--wx-red); }
.wx-footer__codes a:hover { color: #fff; }
.wx-footer__widgets { color: #cbd5e1; }
.wwcx .wx-footer__bottom { display: block; border: 0; padding: 0; background: var(--wx-navy-2); color: #94a3b8; font-size: 0.75rem; }
.wx-footer__bottom-inner { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 0.5rem; padding-top: 0.9rem; padding-bottom: 0.9rem; }
.wwcx .wx-footer__bottom a { color: #cbd5e1; }
.wwcx .wwc-ad-slot--ads-footer { margin: 1.5rem auto; }

/* ===================== ≥ 640px ===================== */
@media (min-width: 40rem) {
  .wx-apac__list span { display: inline; }
  .wx-apac__list { -webkit-mask-image: none; mask-image: none; }
  .wx-lead__media { margin: 0; }
  .wx-lead__slab { margin: -4.5rem 0 0 1.25rem; padding: 1.25rem 1.5rem 1.35rem; }
  .wx-top__stack { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .wx-chapter__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2rem 1.75rem; }
  .wx-chapter--apac .wx-chapter__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .wwcx .wx-most .most-read__list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .wwcx .wx-single .related-posts__grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
  .wwcx .wx-single .more-in-hub__list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .wx-prevnext { grid-template-columns: 1fr 1fr; }
  .wx-footer__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .wx-below-widgets { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* ===================== ≥ 1100px desktop ===================== */
@media (min-width: 68.75rem) {
  :root { --wx-pad: 2rem; }
  .wx-wrap { max-width: calc(var(--wx-max) + 2 * var(--wx-pad)); }

  .wx-mast__top { min-height: 5.25rem; gap: 2rem; }
  .wwcx .wx-brand__wordmark.site-masthead__wordmark { font-size: 2rem; gap: 0.6rem; }
  .wx-edition { display: block; padding-left: 1.5rem; border-left: 1px solid rgba(255,255,255,.2); }
  .wx-edition__line { margin: 0 0 0.3rem; display: flex; gap: 0.6rem; align-items: center; }
  .wx-edition__label { font: 800 0.625rem/1 var(--wx-sans); letter-spacing: 0.16em; text-transform: uppercase; color: #fca5a5; }
  .wx-edition__date { font: 600 0.8125rem/1 var(--wx-sans); color: #fff; }
  .wx-edition__tag { margin: 0; font: 600 0.6875rem/1 var(--wx-sans); letter-spacing: 0.08em; text-transform: uppercase; color: #94a3b8; }
  .wx-mast__brief { display: inline-flex; align-items: center; height: 2.25rem; padding: 0 0.9rem; border: 1px solid #fff; color: #fff; font: 800 0.6875rem/1 var(--wx-sans); letter-spacing: 0.14em; text-transform: uppercase; }
  .wx-mast__brief:hover { background: var(--wx-red); border-color: var(--wx-red); color: #fff; }
  .wwcx .wx-nav__toggle.nav-toggle { display: none; }

  .wwcx .wx-nav__panel { display: block; }
  .wx-nav__panel .nav-list { display: flex; flex-wrap: nowrap; justify-content: space-between; gap: 0; padding: 0; border-top: 1px solid rgba(255,255,255,.08); }
  .wx-nav__panel .nav-item { flex: 1 1 auto; }
  .wx-nav__panel .nav-list a { padding: 0.8rem 0.3rem; border: 0; text-align: center; font: 700 0.75rem/1 var(--wx-sans); letter-spacing: 0.08em; text-transform: uppercase; white-space: nowrap; color: #cbd5e1; position: relative; }
  .wx-nav__panel .nav-item + .nav-item a::before { content: ""; position: absolute; left: 0; top: 0.7rem; bottom: 0.7rem; width: 1px; background: rgba(255,255,255,.12); }
  .wx-nav__panel .nav-list a:hover { color: #fff; background: var(--wx-navy-3); }
  .wx-nav__panel .nav-item.is-current a { box-shadow: inset 0 -3px 0 var(--wx-red); padding-left: 0.3rem; color: #fff; }

  .wx-apac__inner { height: 2.6rem; gap: 0.9rem; }
  .wx-apac__list { gap: 0; overflow: visible; flex: 1; justify-content: space-between; }
  .wx-apac__list a { border: 0; padding: 0.3rem 0.2rem; font-size: 0.8125rem; }

  .wx-home > .wx-wrap:first-child { padding-top: 1.5rem; }
  .wx-top { grid-template-columns: minmax(0, 1fr) 21rem; grid-template-rows: auto 1fr; gap: 1.75rem 2.25rem; }
  .wx-top__stack { align-self: start; }
  .wx-top__lead { grid-column: 1; grid-row: 1; }
  .wx-top__stack { grid-column: 1; grid-row: 2; gap: 1.5rem; }
  .wx-top__latest { grid-column: 2; grid-row: 1 / span 2; }
  .wx-lead__media { aspect-ratio: 16 / 8.2; }
  .wx-lead__slab { margin: -5.5rem 0 0 2rem; max-width: 46rem; padding: 1.5rem 1.85rem 1.5rem; }
  .wwcx .wx-lead__hed { font-size: 2.75rem; }
  .wx-lead__dek { font-size: 1.0625rem; }

  .wx-chapter { padding: 2.5rem 0 2rem; }
  .wx-chapter__grid { gap: 2.5rem 2.5rem; }
  .wx-sec--desk .wx-sec__body { grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); gap: 1.25rem; }
  .wwcx .wx-sec--desk .wx-tile__hed { font-size: 1.3125rem; }
  .wx-chapter--band .wx-chapter__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 2rem; }
  .wx-chapter--apac .wx-chapter__grid { grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 2rem 1.5rem; }
  .wwcx .wx-most .most-read__list { grid-template-columns: repeat(5, minmax(0, 1fr)); }

  .wwcx .content-wrap.wx-single { max-width: calc(var(--wx-max) + 2 * var(--wx-pad)); padding-top: 2rem; }
  .wx-single__grid { grid-template-columns: minmax(0, 1fr) 21rem; gap: 3.5rem; }
  .wx-article { max-width: 50rem; }
  .wwcx .wx-article__body.entry-content { font-size: 1.125rem; }
  .wx-single__side > .wx-ranked { position: sticky; top: 1rem; }
  .wx-footer__grid { grid-template-columns: 1.4fr 1.2fr 1fr 1fr; gap: 2.5rem; padding-top: 3rem; }
  .wx-below-widgets { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

@media (prefers-reduced-motion: reduce) { .wx-tile__media img { transition: none; } }

/* ===================== Weather + markets ticker ===================== */
.wx-tick { height: 2rem; background: #050d1a; color: #cbd5e1; overflow: hidden; border-bottom: 1px solid rgba(255,255,255,.08); }
.wx-tick__viewport { height: 100%; overflow: hidden; }
.wx-tick__viewport:focus-visible { outline: 2px solid var(--wx-red); outline-offset: -2px; }
.wx-tick__track { display: flex; width: max-content; height: 100%; animation: wx-tick 70s linear infinite; }
.wx-tick:hover .wx-tick__track, .wx-tick__viewport:focus .wx-tick__track { animation-play-state: paused; }
.wx-tick__list { display: flex; align-items: center; height: 100%; list-style: none; margin: 0; padding: 0; white-space: nowrap; }
.wx-tick__item, .wx-tick__head, .wx-tick__src { display: inline-flex; align-items: center; gap: 0.35rem; height: 100%; padding: 0 0.9rem; font: 600 0.75rem/1 var(--wx-sans); font-variant-numeric: tabular-nums; }
.wx-tick__item + .wx-tick__item { border-left: 1px solid rgba(255,255,255,.1); }
.wx-tick__head { background: var(--wx-red); color: #fff; font-weight: 800; font-size: 0.625rem; letter-spacing: 0.14em; text-transform: uppercase; padding: 0 0.6rem; }
.wx-tick__head--wx { background: #0e7490; }
.wx-tick__name { color: #fff; font-weight: 800; }
.wx-tick__val { color: #e2e8f0; }
.wx-tick__chg--up { color: #4ade80; }
.wx-tick__chg--down { color: #f87171; }
.wx-tick__cond { color: #94a3b8; }
.wx-tick__src { color: #64748b; font-size: 0.625rem; letter-spacing: 0.04em; padding-right: 2.5rem; }
@keyframes wx-tick { from { transform: translateX(0); } to { transform: translateX(-50%); } }
@media (prefers-reduced-motion: reduce) {
  .wx-tick__track { animation: none; }
  .wx-tick__viewport { overflow-x: auto; scrollbar-width: none; }
  .wx-tick__viewport::-webkit-scrollbar { display: none; }
  .wx-tick__list[aria-hidden="true"] { display: none; }
}

/* ===================== Density + widget polish (0.2.0) ===================== */
.wx-below-widgets .widget-title, .wx-below-widgets h2, .wx-below-widgets .wp-block-heading { margin: 0 0 0.6rem; padding-top: 0.6rem; border-top: 3px solid var(--wx-navy); font: 800 0.75rem/1 var(--wx-sans); letter-spacing: 0.14em; text-transform: uppercase; color: var(--wx-ink); }
.wx-below-widgets ul { list-style: none; padding: 0; margin: 0; }
.wx-below-widgets li { padding: 0.4rem 0; border-bottom: 1px solid var(--wx-line); font-size: 0.875rem; line-height: 1.35; }
.wx-below-widgets .wp-block-search__button { border-radius: 0; background: var(--wx-navy); color: #fff; }
@media (max-width: 39.99rem) {
  .wwcx .wx-tile--stack .wx-tile__hed { font-size: 0.9375rem; display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 4; overflow: hidden; }
  .wx-top .wx-wire__item:nth-child(n+6) { display: none; }
  .wx-sec--desk .wx-sec__item:nth-child(n+3) { display: none; }
  .wx-sec--band .wx-sec__item:nth-child(n+2) { display: none; }
  .wx-sec--apac .wx-sec__item { display: none; }
  .wx-sec--apac .wx-sec__item:first-child { display: block; }
}
