/*
Theme Name:  AsbestosAccountability
Theme URI:   https://asbestosaccountability.org
Author:      Yardly Group
Description: Investigative journalism — asbestos industry suppression, corporate cover-ups, and accountability for mesothelioma victims. ProPublica-grade editorial design.
Version:     2.0.0
Requires at least: 6.0
Tested up to: 6.7
Requires PHP: 8.0
License:     Proprietary
Text Domain: asbestosaccountability
*/

/* ============================================================
   TOKENS
   ============================================================ */
:root {
  /* Pure editorial palette — no gradients, no softening */
  --black:      #000000;
  --ink:        #111111;
  --ink-2:      #1a1a1a;
  --ink-3:      #242424;
  --white:      #FFFFFF;
  --paper:      #F5F2ED;
  --paper-2:    #EDE9E2;
  --paper-3:    #E0DBD3;

  --text-dark:  #1a1a1a;
  --text-body:  #333333;
  --text-muted: #666666;
  --text-faint: #999999;

  --rule:       #DDDDDD;
  --rule-dark:  #444444;

  --red:        #CC0000;   /* ProPublica uses pure red */
  --red-2:      #AA0000;
  --amber:      #B8860B;
  --amber-pale: #FFFBF0;
  --green:      #1A7340;

  --serif:  'Georgia', 'Times New Roman', serif;
  --sans:   'Franklin Gothic Medium', 'Arial Narrow', 'Arial', sans-serif;
  --mono:   'Courier New', 'Courier', monospace;

  /* ProPublica uses system fonts for UI, Georgia for editorial */

  --container:   1480px;
  --article-max: 680px;
  --header-h:    64px;

  --sp-1:.25rem;--sp-2:.5rem;--sp-3:.75rem;--sp-4:1rem;
  --sp-5:1.25rem;--sp-6:1.5rem;--sp-8:2rem;--sp-10:2.5rem;
  --sp-12:3rem;--sp-16:4rem;--sp-20:5rem;
}

/* ── RESET ────────────────────────────────────────────────── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;font-size:16px}
body{
  font-family:var(--sans);
  font-size:1rem;
  line-height:1.5;
  color:var(--text-body);
  background:var(--white);
  -webkit-font-smoothing:antialiased;
}
img,svg{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
a:focus-visible{outline:2px solid var(--red);outline-offset:2px}

/* ── UTILITIES ────────────────────────────────────────────── */
.container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:1.25rem}
@media(min-width:640px){.container{padding-inline:1.5rem}}
@media(min-width:1280px){.container{padding-inline:2rem}}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.skip-link{
  position:absolute;top:-9999px;left:1rem;z-index:9999;
  padding:.5rem 1rem;background:var(--red);color:var(--white);
  font-family:var(--sans);font-size:.875rem;font-weight:700;
}
.skip-link:focus{top:1rem}

/* ── HEADER ───────────────────────────────────────────────── */
.site-header{
  background:var(--black);
  border-bottom:3px solid var(--red);
  position:sticky;top:0;z-index:200;
}
.header-top{
  display:flex;align-items:center;
  justify-content:space-between;
  height:var(--header-h);
  gap:1rem;
}

/* Logo */
.site-logo{text-decoration:none;display:block}
.logo-wordmark{
  font-family:var(--serif);
  font-size:1.75rem;
  font-weight:700;
  color:var(--white);
  letter-spacing:-.02em;
  line-height:1;
}
.logo-wordmark em{color:var(--red);font-style:normal}
.logo-sub{
  font-family:var(--mono);
  font-size:.5625rem;
  color:#888;
  text-transform:uppercase;
  letter-spacing:.16em;
  margin-top:2px;
  display:block;
}

/* Nav */
.primary-nav{display:none}
.nav-list{display:flex;align-items:center;gap:0;list-style:none}
.nav-link{
  font-family:var(--sans);
  font-size:.8125rem;
  font-weight:700;
  color:#aaa;
  text-decoration:none;
  padding:.5rem 1.125rem;
  text-transform:uppercase;
  letter-spacing:.05em;
  transition:color .1s;
  white-space:nowrap;
}
.nav-link:hover{color:var(--white)}
.nav-link.current-menu-item{color:var(--white)}
.nav-link--cta{
  background:var(--red);
  color:var(--white)!important;
  padding:.4rem .9rem;
  margin-left:.5rem;
}
.nav-link--cta:hover{background:var(--red-2)}

.nav-toggle{
  display:flex;flex-direction:column;gap:4px;
  background:none;border:none;cursor:pointer;padding:.5rem;
}
.nav-toggle__bar{display:block;width:22px;height:2px;background:#aaa}

@media(min-width:900px){.primary-nav{display:flex;align-items:center}.nav-toggle{display:none}}
@media(max-width:899px){
  .primary-nav{
    position:absolute;top:var(--header-h);left:0;right:0;
    background:var(--black);border-top:1px solid #333;border-bottom:3px solid var(--red);
    padding:1rem 1.25rem;
  }
  .primary-nav[hidden]{display:none}
  .primary-nav:not([hidden]){display:block}
  .nav-list{flex-direction:column;align-items:flex-start;gap:.25rem}
  .nav-link{padding:.5rem 0;display:block;width:100%}
}

/* Nav secondary strip */
.header-secondary{
  background:var(--ink-2);
  border-top:1px solid #2a2a2a;
  padding:.55rem 0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
}
.secondary-nav-list{
  display:flex;align-items:center;
  gap:0;list-style:none;
  overflow-x:auto;-webkit-overflow-scrolling:touch;
}
.secondary-nav-link{
  font-family:var(--sans);
  font-size:.8125rem;
  color:#bbb;
  text-decoration:none;
  padding:.4rem 1.125rem;
  white-space:nowrap;
  border-right:1px solid #2a2a2a;
  transition:color .1s;
  letter-spacing:.03em;
  font-weight:600;
}
.secondary-nav-link:first-child{padding-left:.25rem}
.secondary-nav-link:hover{color:var(--white)}
.secondary-nav-link--highlight{
  color:var(--red);font-weight:700;
}
.secondary-nav-link--highlight:hover{color:#ff3333}

.newsletter-inline-cta{
  display:flex;align-items:center;gap:.75rem;
  flex-shrink:0;
}
.newsletter-inline-cta span{
  font-family:var(--sans);font-size:.75rem;color:#888;white-space:nowrap;
}
.newsletter-inline-cta a{
  font-family:var(--sans);font-size:.75rem;font-weight:700;
  color:var(--white);text-decoration:underline;white-space:nowrap;
}

/* ── ALERT TICKER ─────────────────────────────────────────── */
.alert-ticker{
  background:var(--red);
  padding:.375rem 0;
}
.alert-ticker__inner{
  display:flex;align-items:center;gap:1rem;
}
.alert-ticker__label{
  font-family:var(--sans);font-size:.6875rem;font-weight:700;
  color:var(--white);text-transform:uppercase;letter-spacing:.1em;
  background:rgba(0,0,0,.25);padding:.2rem .6rem;white-space:nowrap;
  flex-shrink:0;
}
.alert-ticker__text{
  font-family:var(--sans);font-size:.8125rem;color:var(--white);
}
.alert-ticker__text a{color:var(--white);text-decoration:underline;font-weight:700}

/* ── HOMEPAGE HERO — TWO COLUMN ───────────────────────────── */
.home-hero{
  background:var(--black);
  border-bottom:3px solid var(--red);
  padding:2.5rem 0;
}
.home-hero__grid{
  display:grid;
  grid-template-columns:1fr;
  gap:2rem;
  border-bottom:1px solid #222;
  padding-bottom:2rem;
  margin-bottom:2rem;
}
@media(min-width:768px){
  .home-hero__grid{
    grid-template-columns:1.75fr 1fr;
    gap:0;
  }
}

/* Featured story */
.hero-feature{}
.hero-feature__series{
  font-family:var(--sans);font-size:.6875rem;font-weight:700;
  text-transform:uppercase;letter-spacing:.12em;
  color:var(--red);margin-bottom:.75rem;display:block;
}
.hero-feature__heading{
  font-family:var(--serif);
  font-size:clamp(2rem,3.5vw,3rem);
  font-weight:700;
  color:var(--white);
  line-height:1.06;
  margin-bottom:1rem;
  letter-spacing:-.025em;
}
.hero-feature__heading a{color:inherit;text-decoration:none}
.hero-feature__heading a:hover{text-decoration:underline;text-decoration-color:var(--red)}
.hero-feature__dek{
  font-family:var(--serif);
  font-size:1.0625rem;
  color:#aaa;
  line-height:1.55;
  margin-bottom:1rem;
  max-width:52ch;
}
.hero-feature__byline{
  font-family:var(--sans);
  font-size:.75rem;
  color:#666;
  letter-spacing:.02em;
}
.hero-feature__byline strong{color:#aaa}
.hero-feature__img{
  aspect-ratio:16/9;
  overflow:hidden;
  margin-bottom:1.25rem;
  background:var(--ink-3);
  position:relative;
}
.hero-feature__img img{
  width:100%;height:100%;
  object-fit:cover;
  filter:grayscale(15%);
  transition:filter .3s;
}
.hero-feature__img:hover img{filter:grayscale(0%)}

/* Placeholder visual when no featured image */
.hero-feature__img--placeholder{
  background:linear-gradient(135deg,#0a0a0a 0%,#1a0a0a 50%,#0a0a0a 100%);
  min-height:280px;
  display:flex;
  align-items:flex-end;
  padding:1.5rem;
  border-left:4px solid var(--red);
}
.hero-feature__img--placeholder::before{
  content:'';
  position:absolute;inset:0;
  background-image:
    repeating-linear-gradient(0deg,transparent,transparent 39px,rgba(255,255,255,.03) 39px,rgba(255,255,255,.03) 40px),
    repeating-linear-gradient(90deg,transparent,transparent 39px,rgba(255,255,255,.02) 39px,rgba(255,255,255,.02) 40px);
  pointer-events:none;
}
.hero-feature__img--placeholder .hero-placeholder-label{
  font-family:var(--mono);
  font-size:.625rem;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.2em;
  color:rgba(204,0,0,.6);
  position:relative;
  z-index:1;
}

/* Secondary stories stack */
.hero-secondary{
  border-left:1px solid #222;
  padding-left:2rem;
  display:flex;flex-direction:column;gap:0;
}
@media(max-width:767px){
  .hero-secondary{border-left:none;border-top:1px solid #222;padding-left:0;padding-top:2rem}
}
.hero-secondary-story{
  padding:1.25rem 0;
  border-bottom:1px solid #1e1e1e;
}
.hero-secondary-story:first-child{padding-top:0}
.hero-secondary-story:last-child{border-bottom:none;padding-bottom:0}
.hero-secondary-story__series{
  font-family:var(--sans);font-size:.625rem;font-weight:700;
  text-transform:uppercase;letter-spacing:.14em;
  color:var(--red);margin-bottom:.4rem;display:block;
}
.hero-secondary-story__heading{
  font-family:var(--serif);
  font-size:1.125rem;
  font-weight:700;
  color:var(--white);
  line-height:1.2;
  margin-bottom:.5rem;
  letter-spacing:-.01em;
}
.hero-secondary-story__heading a{color:inherit;text-decoration:none}
.hero-secondary-story__heading a:hover{text-decoration:underline;text-decoration-color:var(--red)}
.hero-secondary-story__dek{
  font-family:var(--sans);font-size:.875rem;color:#777;line-height:1.5;margin-bottom:.5rem;
}
.hero-secondary-story__byline{
  font-family:var(--sans);font-size:.6875rem;color:#555;
}

/* Hero bottom row — smaller stories */
.home-hero__bottom{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:1.5rem;
}
@media(min-width:640px){
  .home-hero__bottom{grid-template-columns:repeat(4,1fr)}
}
.hero-mini{}
.hero-mini__series{
  font-family:var(--sans);font-size:.5625rem;font-weight:700;
  text-transform:uppercase;letter-spacing:.14em;color:var(--red);
  margin-bottom:.35rem;display:block;
}
.hero-mini__heading{
  font-family:var(--serif);font-size:.9375rem;font-weight:700;
  color:#ccc;line-height:1.25;letter-spacing:-.01em;
}
.hero-mini__heading a{color:inherit;text-decoration:none}
.hero-mini__heading a:hover{text-decoration:underline;text-decoration-color:var(--red)}

/* ── WHAT WE'RE INVESTIGATING ─────────────────────────────── */
.investigation-mission{
  background:var(--ink-2);
  padding:2rem 0;
  border-bottom:1px solid #2a2a2a;
}
.investigation-mission__inner{
  display:grid;
  grid-template-columns:1fr;
  gap:1.5rem;
}
@media(min-width:768px){
  .investigation-mission__inner{grid-template-columns:auto 1fr}
}
.investigation-mission__label{
  font-family:var(--sans);font-size:.6875rem;font-weight:700;
  text-transform:uppercase;letter-spacing:.14em;color:var(--red);
  white-space:nowrap;padding-top:.2rem;
}
.investigation-mission__text{
  font-family:var(--serif);font-size:1.0625rem;color:#ccc;line-height:1.6;
}
.investigation-mission__text strong{color:var(--white)}

/* ── SECTION HEADER ───────────────────────────────────────── */
.section-header{
  display:flex;align-items:center;
  gap:1rem;
  padding:.625rem 0;
  border-top:3px solid var(--text-dark);
  border-bottom:1px solid var(--rule);
  margin-bottom:2rem;
}
.section-header--dark{border-top-color:var(--red);border-bottom-color:#2a2a2a}
.section-header__label{
  font-family:var(--sans);
  font-size:.6875rem;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.14em;
  color:var(--text-dark);
}
.section-header--dark .section-header__label{color:var(--white)}
.section-header__link{
  font-family:var(--sans);font-size:.6875rem;
  text-transform:uppercase;letter-spacing:.1em;
  color:var(--red);text-decoration:none;margin-left:auto;
}
.section-header__link:hover{text-decoration:underline}

/* ── ARTICLE GRID ─────────────────────────────────────────── */
.article-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:0;
}
.article-grid--2{
  grid-template-columns:1fr;
}
@media(min-width:640px){.article-grid--2{grid-template-columns:repeat(2,1fr)}}
@media(min-width:960px){.article-grid--3{grid-template-columns:repeat(3,1fr)}}

.article-card{
  padding:1.5rem 0;
  border-bottom:1px solid var(--rule);
}
.article-card:last-child{border-bottom:none}
.article-card--col{border-bottom:none;border-right:1px solid var(--rule);padding:0 1.5rem 0 0}
.article-card--col:last-child{border-right:none;padding-right:0;padding-left:1.5rem}
@media(max-width:639px){
  .article-card--col{border-right:none;padding:1.5rem 0;border-bottom:1px solid var(--rule)}
  .article-card--col:last-child{border-bottom:none}
}

.article-card__thumb{
  aspect-ratio:3/2;overflow:hidden;
  background:var(--paper-2);margin-bottom:1rem;
}
.article-card__thumb img{
  width:100%;height:100%;object-fit:cover;
  filter:grayscale(10%);transition:filter .3s,transform .3s;
}
.article-card:hover .article-card__thumb img{filter:grayscale(0%);transform:scale(1.02)}
.article-card__series{
  font-family:var(--sans);font-size:.625rem;font-weight:700;
  text-transform:uppercase;letter-spacing:.14em;color:var(--red);
  margin-bottom:.4rem;display:block;
}
.article-card__heading{
  font-family:var(--serif);font-size:1.125rem;font-weight:700;
  color:var(--text-dark);line-height:1.25;
  margin-bottom:.5rem;letter-spacing:-.01em;
}
.article-card__heading a{color:inherit;text-decoration:none}
.article-card__heading a:hover{text-decoration:underline;text-decoration-color:var(--red)}
.article-card__dek{
  font-family:var(--sans);font-size:.9rem;color:var(--text-muted);
  line-height:1.5;margin-bottom:.6rem;
}
.article-card__meta{
  font-family:var(--sans);font-size:.6875rem;color:var(--text-faint);
  letter-spacing:.01em;
}
.article-card__meta strong{color:var(--text-muted)}

/* ── SERIES STRIP ─────────────────────────────────────────── */
.series-strip{
  background:var(--paper);
  border-top:3px solid var(--text-dark);
  border-bottom:1px solid var(--rule);
  padding:1.5rem 0;
  margin:3rem 0;
}
.series-strip__label{
  font-family:var(--sans);font-size:.625rem;font-weight:700;
  text-transform:uppercase;letter-spacing:.16em;color:var(--text-muted);
  margin-bottom:1rem;
}
.series-strip__list{
  display:flex;flex-wrap:wrap;gap:.5rem;list-style:none;
}
.series-strip__item a{
  font-family:var(--sans);font-size:.8125rem;font-weight:700;
  text-transform:uppercase;letter-spacing:.06em;
  color:var(--text-dark);text-decoration:none;
  padding:.35rem .75rem;
  border:1.5px solid var(--text-dark);
  display:block;
  transition:background .15s,color .15s;
}
.series-strip__item a:hover{background:var(--text-dark);color:var(--white)}
.series-strip__item--active a{background:var(--red);color:var(--white);border-color:var(--red)}

/* ── MAIN LAYOUT ──────────────────────────────────────────── */
.main-with-sidebar{
  display:grid;grid-template-columns:1fr;gap:3rem;
  padding:3rem 0;
}
@media(min-width:960px){
  .main-with-sidebar{grid-template-columns:1fr 300px}
}
@media(min-width:1280px){
  .main-with-sidebar{grid-template-columns:1fr 320px}
}
.sidebar{
  border-left:1px solid var(--rule);
  padding-left:2rem;
}
@media(max-width:899px){
  .sidebar{border-left:none;border-top:1px solid var(--rule);padding-left:0;padding-top:2rem}
}

/* ── ARTICLE TYPOGRAPHY ───────────────────────────────────── */
.article{max-width:var(--article-max)}
.article-header{margin-bottom:2rem}
.article-header__series{
  font-family:var(--sans);font-size:.6875rem;font-weight:700;
  text-transform:uppercase;letter-spacing:.14em;color:var(--red);
  margin-bottom:.75rem;display:flex;align-items:center;gap:.5rem;
}
.article-header__series::after{
  content:'';flex:1;height:1px;background:var(--red);max-width:60px;
}
.article-header__headline{
  font-family:var(--serif);
  font-size:clamp(1.625rem,4vw,2.375rem);
  font-weight:700;color:var(--text-dark);
  line-height:1.1;letter-spacing:-.025em;
  margin-bottom:1rem;
}
.article-header__dek{
  font-family:var(--serif);
  font-size:1.125rem;color:var(--text-muted);
  line-height:1.55;margin-bottom:1.5rem;
  max-width:56ch;
}
.article-header__meta{
  font-family:var(--sans);font-size:.8125rem;color:var(--text-muted);
  padding:1rem 0;
  border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);
  display:flex;flex-wrap:wrap;gap:.75rem 2rem;
  margin-bottom:1.5rem;
}
.article-header__meta strong{color:var(--text-dark)}

/* Body text */
.article p{
  font-family:var(--serif);font-size:1.0625rem;
  line-height:1.75;color:var(--text-body);
  margin-bottom:1.5rem;
}
.article p a{color:var(--red);text-decoration:underline;text-decoration-thickness:1px}
.article p a:hover{color:var(--red-2)}
.article strong{color:var(--text-dark)}

.article h2{
  font-family:var(--sans);font-size:1.375rem;font-weight:700;
  color:var(--text-dark);
  margin:3rem 0 1rem;
  padding-top:2rem;
  border-top:3px solid var(--text-dark);
  line-height:1.2;
  text-transform:uppercase;letter-spacing:-.01em;
}
.article h3{
  font-family:var(--serif);font-size:1.25rem;font-weight:700;
  color:var(--text-dark);margin:2rem 0 .75rem;line-height:1.3;
}
.article ul,.article ol{
  margin:0 0 1.5rem 1.5rem;
  font-family:var(--serif);font-size:1.0625rem;line-height:1.75;
}
.article li{margin-bottom:.5rem}
.article blockquote{
  border-left:4px solid var(--text-dark);
  padding-left:1.5rem;margin:2rem 0;
}
.article blockquote p{
  font-size:1.25rem;font-style:italic;color:var(--text-dark);
}

/* ── PULL QUOTE ───────────────────────────────────────────── */
.pull-quote{
  border-top:3px solid var(--red);
  border-bottom:1px solid var(--rule);
  padding:1.5rem 0;
  margin:2.5rem 0;
}
.pull-quote__text{
  font-family:var(--serif);font-size:1.375rem;font-weight:700;
  color:var(--text-dark);line-height:1.35;letter-spacing:-.01em;
  margin-bottom:.75rem;
}
.pull-quote__source{
  font-family:var(--sans);font-size:.75rem;font-weight:700;
  text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);
}

/* ── DOCUMENT EXHIBIT ─────────────────────────────────────── */
.doc-exhibit{
  background:var(--paper);
  border:1px solid var(--paper-3);
  border-top:4px solid var(--amber);
  margin:2.5rem 0;
  page-break-inside:avoid;
}
.doc-exhibit__header{
  padding:.75rem 1.25rem;
  border-bottom:1px solid var(--paper-3);
  background:var(--paper-2);
  display:flex;align-items:center;justify-content:space-between;
  flex-wrap:wrap;gap:.5rem;
}
.doc-exhibit__type{
  font-family:var(--mono);font-size:.6875rem;font-weight:700;
  text-transform:uppercase;letter-spacing:.12em;color:var(--amber);
}
.doc-exhibit__meta{
  font-family:var(--mono);font-size:.6875rem;color:var(--text-muted);
}
.doc-exhibit__body{
  padding:1.5rem;
}
.doc-exhibit__text{
  font-family:var(--mono);font-size:.9375rem;
  line-height:1.7;color:var(--text-dark);
  white-space:pre-wrap;
}
.doc-exhibit__text mark{
  background:rgba(184,134,11,.2);
  color:var(--text-dark);
  font-weight:700;
  padding:0 2px;
}
.doc-exhibit__redacted{
  display:inline-block;
  background:var(--text-dark);color:var(--text-dark);
  user-select:none;min-width:80px;
}
.doc-exhibit__footnote{
  padding:.75rem 1.25rem;
  border-top:1px solid var(--paper-3);
  font-family:var(--sans);font-size:.75rem;color:var(--text-muted);
  line-height:1.5;
}
.doc-exhibit__footnote strong{color:var(--text-dark)}

/* ── CORPORATE RECORD ─────────────────────────────────────── */
.corp-record{
  border:1.5px solid var(--text-dark);
  margin:2rem 0;
}
.corp-record__header{
  background:var(--text-dark);
  padding:.875rem 1.25rem;
  display:grid;
  grid-template-columns:1fr auto;
  gap:1rem;align-items:start;
}
.corp-record__name{
  font-family:var(--sans);font-size:1.0625rem;font-weight:700;
  color:var(--white);text-transform:uppercase;letter-spacing:.02em;
}
.corp-record__status{
  font-family:var(--mono);font-size:.6875rem;text-transform:uppercase;
  letter-spacing:.1em;padding:.25rem .5rem;
  border:1px solid;
}
.corp-record__status--bankrupt{color:#ff9a00;border-color:#ff9a00}
.corp-record__status--active{color:#4ade80;border-color:#4ade80}
.corp-record__status--dissolved{color:#aaa;border-color:#aaa}

.corp-record__grid{
  display:grid;
  grid-template-columns:1fr;
  gap:0;
}
@media(min-width:640px){.corp-record__grid{grid-template-columns:1fr 1fr}}

.corp-record__cell{
  padding:1rem 1.25rem;
  border-bottom:1px solid var(--rule);
  border-right:1px solid var(--rule);
}
.corp-record__cell:nth-child(2n){border-right:none}
@media(max-width:639px){.corp-record__cell{border-right:none}}
.corp-record__cell:last-child,.corp-record__cell:nth-last-child(2){border-bottom:none}
@media(max-width:639px){.corp-record__cell:last-child{border-bottom:none}.corp-record__cell:nth-last-child(2){border-bottom:1px solid var(--rule)}}

.corp-record__field{
  font-family:var(--mono);font-size:.625rem;font-weight:700;
  text-transform:uppercase;letter-spacing:.14em;color:var(--text-muted);
  margin-bottom:.35rem;
}
.corp-record__value{
  font-family:var(--sans);font-size:.9375rem;color:var(--text-dark);
  font-weight:600;line-height:1.3;
}
.corp-record__value--red{color:var(--red);font-weight:700}
.corp-record__value--note{font-family:var(--serif);font-size:.9rem;color:var(--text-body);font-weight:400;line-height:1.5}

.corp-record__summary{
  padding:1rem 1.25rem;
  border-top:2px solid var(--text-dark);
  background:var(--paper);
  font-family:var(--sans);font-size:.9rem;color:var(--text-body);
  line-height:1.6;
}
.corp-record__summary strong{color:var(--text-dark)}

/* ── TIMELINE ─────────────────────────────────────────────── */
.investigation-timeline{margin:2.5rem 0}
.timeline-item{
  display:grid;grid-template-columns:80px 1fr;
  gap:1.5rem;padding-bottom:2rem;
  position:relative;
}
.timeline-item::before{
  content:'';
  position:absolute;left:39px;top:8px;bottom:-8px;
  width:2px;background:var(--rule);
}
.timeline-item:last-child::before{display:none}
.timeline-item__year{
  text-align:right;
  padding-top:1px;
}
.timeline-item__year-num{
  font-family:var(--mono);font-size:.9375rem;font-weight:700;
  color:var(--red);display:block;
  background:var(--white);
  position:relative;z-index:1;
}
.timeline-item__dot{
  width:12px;height:12px;
  background:var(--red);border-radius:50%;
  border:2px solid var(--white);
  box-shadow:0 0 0 2px var(--red);
  position:absolute;left:34px;top:5px;
  z-index:2;
}
.timeline-item--key .timeline-item__dot{background:var(--text-dark);box-shadow:0 0 0 2px var(--text-dark)}
.timeline-item--key .timeline-item__year-num{color:var(--text-dark)}
.timeline-item__content{padding-top:0}
.timeline-item__heading{
  font-family:var(--serif);font-size:1.0625rem;font-weight:700;
  color:var(--text-dark);line-height:1.3;margin-bottom:.5rem;
}
.timeline-item__body{
  font-family:var(--sans);font-size:.9rem;color:var(--text-muted);
  line-height:1.6;
}
.timeline-item__doc{
  margin-top:.75rem;
  padding:.75rem 1rem;
  background:var(--amber-pale);
  border-left:3px solid var(--amber);
  font-family:var(--mono);font-size:.8125rem;color:var(--text-dark);
  line-height:1.6;
}

/* ── TRUST FUND TABLE ─────────────────────────────────────── */
.data-table-wrap{overflow-x:auto;margin:2rem 0}
.data-table{
  width:100%;border-collapse:collapse;
  font-size:.9rem;
  border:1px solid var(--rule);
}
.data-table thead{border-bottom:2px solid var(--text-dark)}
.data-table thead th{
  padding:.75rem 1rem;text-align:left;
  font-family:var(--sans);font-size:.625rem;font-weight:700;
  text-transform:uppercase;letter-spacing:.12em;
  color:var(--text-dark);
  background:var(--paper);
  white-space:nowrap;
  border-right:1px solid var(--rule);
}
.data-table thead th:last-child{border-right:none}
.data-table tbody tr{border-bottom:1px solid var(--rule)}
.data-table tbody tr:hover{background:var(--paper)}
.data-table tbody td{
  padding:.75rem 1rem;
  font-family:var(--sans);color:var(--text-body);
  border-right:1px solid var(--rule);
  vertical-align:top;
}
.data-table tbody td:last-child{border-right:none}
.data-table .td-company{font-weight:700;color:var(--text-dark);font-family:var(--mono);font-size:.875rem}
.data-table .td-amount{color:var(--red);font-weight:700;font-family:var(--mono)}
.data-table .td-status{font-family:var(--mono);font-size:.75rem;text-transform:uppercase;letter-spacing:.06em}
.data-table .td-status--active{color:var(--green)}
.data-table .td-status--depleted{color:var(--text-faint)}
.data-table .td-status--partial{color:var(--amber)}
.data-table__note{
  font-family:var(--sans);font-size:.75rem;color:var(--text-muted);
  margin-top:.5rem;line-height:1.5;
}

/* ── CALLOUT BOXES ────────────────────────────────────────── */
.callout{margin:2rem 0;padding:1.25rem 1.5rem}
.callout--finding{
  border-left:4px solid var(--red);
  background:var(--paper);
}
.callout--finding .callout__label{
  font-family:var(--sans);font-size:.625rem;font-weight:700;
  text-transform:uppercase;letter-spacing:.14em;color:var(--red);
  margin-bottom:.5rem;
}
.callout--finding .callout__text{
  font-family:var(--serif);font-size:1.0625rem;
  color:var(--text-dark);line-height:1.6;font-weight:700;
}
.callout--context{
  border-left:4px solid var(--text-dark);
  background:var(--paper);
}
.callout--context .callout__label{
  font-family:var(--sans);font-size:.625rem;font-weight:700;
  text-transform:uppercase;letter-spacing:.14em;color:var(--text-dark);
  margin-bottom:.5rem;
}
.callout--context .callout__text{
  font-family:var(--sans);font-size:.9375rem;color:var(--text-body);line-height:1.65;
}

/* ── IMPACT REPORT ────────────────────────────────────────── */
.impact-box{
  background:var(--text-dark);color:var(--white);
  padding:1.5rem;margin:2.5rem 0;
}
.impact-box__label{
  font-family:var(--sans);font-size:.625rem;font-weight:700;
  text-transform:uppercase;letter-spacing:.14em;
  color:var(--red);margin-bottom:.75rem;display:flex;align-items:center;gap:.5rem;
}
.impact-box__label::before{
  content:'';width:8px;height:8px;background:var(--red);border-radius:50%;
  animation:pulse-imp 2s infinite;
}
@keyframes pulse-imp{0%,100%{opacity:1}50%{opacity:.4}}
.impact-box__heading{
  font-family:var(--serif);font-size:1.125rem;font-weight:700;
  color:var(--white);line-height:1.3;margin-bottom:.75rem;
}
.impact-box__items{list-style:none;display:flex;flex-direction:column;gap:.5rem}
.impact-box__items li{
  font-family:var(--sans);font-size:.9rem;color:#ccc;
  padding-left:1rem;position:relative;line-height:1.5;
}
.impact-box__items li::before{
  content:'›';position:absolute;left:0;color:var(--red);font-weight:700;
}

/* ── END-OF-ARTICLE CTA ───────────────────────────────────── */
.article-cta{
  margin-top:3rem;
  padding:2rem;
  background:var(--black);
  border-top:4px solid var(--red);
}
.article-cta__eyebrow{
  font-family:var(--sans);font-size:.625rem;font-weight:700;
  text-transform:uppercase;letter-spacing:.16em;color:var(--red);
  margin-bottom:.75rem;
}
.article-cta__heading{
  font-family:var(--serif);font-size:1.375rem;font-weight:700;
  color:var(--white);line-height:1.25;margin-bottom:.75rem;letter-spacing:-.01em;
}
.article-cta__body{
  font-family:var(--sans);font-size:.9375rem;color:#aaa;
  line-height:1.6;margin-bottom:1.25rem;max-width:54ch;
}
.article-cta__link{
  display:inline-flex;align-items:center;gap:.5rem;
  background:var(--red);color:var(--white);
  padding:.75rem 1.5rem;
  font-family:var(--sans);font-size:.9375rem;font-weight:700;
  text-decoration:none;text-transform:uppercase;letter-spacing:.04em;
  transition:background .15s;
}
.article-cta__link:hover{background:var(--red-2);color:var(--white)}
.article-cta__disclaimer{
  margin-top:1rem;font-family:var(--mono);font-size:.6875rem;
  color:#555;line-height:1.6;
}

/* ── BYLINE ───────────────────────────────────────────────── */
.byline-full{
  display:flex;align-items:flex-start;gap:1rem;
  padding:1.25rem 0;border-top:1px solid var(--rule);
  margin-top:2rem;
}
.byline-full__avatar{
  width:48px;height:48px;border-radius:50%;
  overflow:hidden;flex-shrink:0;
  background:var(--paper-2);
}
.byline-full__avatar img{width:100%;height:100%;object-fit:cover;filter:grayscale(30%)}
.byline-full__name{
  font-family:var(--sans);font-size:.9375rem;font-weight:700;
  color:var(--text-dark);margin-bottom:2px;
}
.byline-full__role{
  font-family:var(--sans);font-size:.75rem;color:var(--text-muted);
  margin-bottom:.4rem;
}
.byline-full__bio{
  font-family:var(--sans);font-size:.8125rem;color:var(--text-muted);
  line-height:1.5;
}

/* Legal reviewer bar */
.legal-review-bar{
  background:var(--amber-pale);
  border:1px solid rgba(184,134,11,.3);
  padding:.75rem 1.25rem;
  display:flex;align-items:center;gap:1rem;flex-wrap:wrap;
  margin-bottom:2rem;
}
.legal-review-bar__icon{font-size:1rem}
.legal-review-bar__text{
  font-family:var(--sans);font-size:.8125rem;color:var(--text-dark);line-height:1.4;
}
.legal-review-bar__text strong{font-weight:700}

/* ── SIDEBAR ──────────────────────────────────────────────── */
.sidebar-widget{margin-bottom:2.5rem;padding-bottom:2.5rem;border-bottom:1px solid var(--rule)}
.sidebar-widget:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}
.sidebar-widget__heading{
  font-family:var(--sans);font-size:.625rem;font-weight:700;
  text-transform:uppercase;letter-spacing:.16em;color:var(--text-dark);
  padding:.5rem 0;border-top:3px solid var(--text-dark);
  border-bottom:1px solid var(--rule);margin-bottom:1.25rem;
}

/* Sidebar article list */
.sidebar-story{
  padding:.875rem 0;
  border-bottom:1px solid var(--rule);
}
.sidebar-story:last-child{border-bottom:none}
.sidebar-story__series{
  font-family:var(--sans);font-size:.5625rem;font-weight:700;
  text-transform:uppercase;letter-spacing:.14em;color:var(--red);
  margin-bottom:.3rem;display:block;
}
.sidebar-story__heading{
  font-family:var(--serif);font-size:.9375rem;font-weight:700;
  color:var(--text-dark);line-height:1.25;
}
.sidebar-story__heading a{color:inherit;text-decoration:none}
.sidebar-story__heading a:hover{text-decoration:underline;text-decoration-color:var(--red)}
.sidebar-story__meta{
  font-family:var(--sans);font-size:.6875rem;color:var(--text-faint);
  margin-top:.3rem;
}

/* Sidebar newsletter widget */
.sidebar-newsletter{
  background:var(--paper);padding:1.25rem;border:1px solid var(--paper-3);
}
.sidebar-newsletter__heading{
  font-family:var(--serif);font-size:1rem;font-weight:700;
  color:var(--text-dark);margin-bottom:.5rem;
}
.sidebar-newsletter__body{
  font-family:var(--sans);font-size:.8125rem;color:var(--text-muted);
  line-height:1.5;margin-bottom:1rem;
}
.sidebar-newsletter__input{
  width:100%;padding:.6rem .75rem;
  border:1.5px solid var(--paper-3);
  font-family:var(--sans);font-size:.875rem;
  margin-bottom:.5rem;
  -webkit-appearance:none;
}
.sidebar-newsletter__input:focus{outline:none;border-color:var(--text-dark)}
.sidebar-newsletter__btn{
  width:100%;padding:.6rem;background:var(--text-dark);color:var(--white);
  border:none;font-family:var(--sans);font-size:.8125rem;font-weight:700;
  text-transform:uppercase;letter-spacing:.06em;cursor:pointer;
  transition:background .15s;
}
.sidebar-newsletter__btn:hover{background:var(--red)}

/* ── DATA SEARCH (Exposure DB) ────────────────────────────── */
.data-search{
  background:var(--paper);border:1px solid var(--paper-3);
  padding:1.5rem;margin-bottom:2rem;
}
.data-search__heading{
  font-family:var(--sans);font-size:.75rem;font-weight:700;
  text-transform:uppercase;letter-spacing:.1em;color:var(--text-dark);
  margin-bottom:.75rem;
}
.data-search__row{
  display:flex;gap:.75rem;flex-wrap:wrap;
}
.data-search__input{
  flex:1;min-width:180px;padding:.65rem .875rem;
  border:1.5px solid var(--paper-3);background:var(--white);
  font-family:var(--sans);font-size:.9rem;
  -webkit-appearance:none;
}
.data-search__input:focus{outline:none;border-color:var(--text-dark)}
.data-search__btn{
  padding:.65rem 1.25rem;background:var(--text-dark);color:var(--white);
  border:none;font-family:var(--sans);font-size:.875rem;font-weight:700;
  text-transform:uppercase;letter-spacing:.06em;cursor:pointer;white-space:nowrap;
  transition:background .15s;
}
.data-search__btn:hover{background:var(--red)}

/* ── POSTS / ARCHIVE ─────────────────────────────────────── */
.posts-list{display:flex;flex-direction:column;gap:0}
.post-item{
  padding:1.5rem 0;
  border-bottom:1px solid var(--rule);
  display:grid;grid-template-columns:1fr auto;
  gap:1.5rem;align-items:start;
}
.post-item:last-child{border-bottom:none}
.post-item__thumb{
  width:120px;height:80px;overflow:hidden;
  background:var(--paper-2);flex-shrink:0;
}
.post-item__thumb img{width:100%;height:100%;object-fit:cover;filter:grayscale(15%)}
.post-item__series{
  font-family:var(--sans);font-size:.5625rem;font-weight:700;
  text-transform:uppercase;letter-spacing:.14em;color:var(--red);
  margin-bottom:.35rem;display:block;
}
.post-item__heading{
  font-family:var(--serif);font-size:1.125rem;font-weight:700;
  color:var(--text-dark);line-height:1.25;margin-bottom:.4rem;letter-spacing:-.01em;
}
.post-item__heading a{color:inherit;text-decoration:none}
.post-item__heading a:hover{text-decoration:underline;text-decoration-color:var(--red)}
.post-item__dek{
  font-family:var(--sans);font-size:.875rem;color:var(--text-muted);
  line-height:1.5;margin-bottom:.4rem;
}
.post-item__meta{
  font-family:var(--sans);font-size:.6875rem;color:var(--text-faint);
}
.post-item__meta strong{color:var(--text-muted)}

/* ── BREADCRUMB ───────────────────────────────────────────── */
.breadcrumb{
  font-family:var(--sans);font-size:.75rem;color:var(--text-faint);
  padding:.625rem 0;border-bottom:1px solid var(--rule);
  text-transform:uppercase;letter-spacing:.06em;
}
.breadcrumb a{color:var(--text-muted);text-decoration:none}
.breadcrumb a:hover{color:var(--red);text-decoration:underline}
.breadcrumb__sep{margin:0 .4rem;color:var(--rule)}

/* ── FOOTER ───────────────────────────────────────────────── */
.site-footer{
  background:var(--black);
  border-top:3px solid var(--red);
  padding:3rem 0 2rem;
  margin-top:4rem;
}
.footer-logo-area{
  padding-bottom:2rem;
  border-bottom:1px solid #2a2a2a;
  margin-bottom:2rem;
  display:flex;align-items:center;justify-content:space-between;
  flex-wrap:wrap;gap:1rem;
}
.footer-wordmark{
  font-family:var(--serif);font-size:1.5rem;font-weight:700;
  color:var(--white);letter-spacing:-.02em;text-decoration:none;display:block;
}
.footer-wordmark em{color:var(--red);font-style:normal}
.footer-tagline{font-family:var(--mono);font-size:.625rem;color:#555;text-transform:uppercase;letter-spacing:.14em;margin-top:4px}
.footer-grid{
  display:grid;grid-template-columns:1fr;gap:2rem;
  padding-bottom:2rem;border-bottom:1px solid #2a2a2a;margin-bottom:2rem;
}
@media(min-width:640px){.footer-grid{grid-template-columns:2fr 1fr 1fr}}
.footer-col__heading{
  font-family:var(--sans);font-size:.625rem;font-weight:700;
  text-transform:uppercase;letter-spacing:.14em;color:#555;
  margin-bottom:.875rem;padding-bottom:.5rem;border-bottom:1px solid #2a2a2a;
}
.footer-nav-list{list-style:none;display:flex;flex-direction:column;gap:.375rem}
.footer-nav-list a{
  font-family:var(--sans);font-size:.875rem;color:#777;
  text-decoration:none;transition:color .1s;
}
.footer-nav-list a:hover{color:var(--white)}
.footer-col__body{font-family:var(--sans);font-size:.875rem;color:#666;line-height:1.6}
.footer-bottom{
  font-family:var(--mono);font-size:.6875rem;color:#444;line-height:1.65;
}
.footer-bottom p{margin-bottom:.5rem}
.footer-bottom a{color:#555}
.footer-bottom a:hover{color:#aaa}

/* ── ADMIN BAR ────────────────────────────────────────────── */
.admin-bar .site-header{top:32px}
@media(max-width:782px){.admin-bar .site-header{top:46px}}

/* ── WP CORE ──────────────────────────────────────────────── */
.wp-caption,.wp-block-image{max-width:100%;margin:2rem 0}
.wp-caption-text,.wp-block-image figcaption{
  font-family:var(--sans);font-size:.75rem;color:var(--text-muted);
  margin-top:.5rem;line-height:1.4;
}
.alignwide{margin-inline:calc(50% - 50vw + 2rem);max-width:calc(100vw - 4rem)}
