:root{
    --paper:#faf8f3;
    --ink:#141414;
    --ink-soft:#4a4a46;
    --ink-faint:#6f6e67;
    --rule:#d9d5ca;
    --rule-dark:#141414;
    --accent:#FDC314;        /* WFU Vivid Yellow */
    --up:#0a7d4f;
    --down:#b02a1e;
    --tag:#eeeae0;
  }
  *{margin:0;padding:0;box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{
    background:var(--paper);
    color:var(--ink);
    font-family:'Newsreader', Georgia, serif;
    font-size:17px;
    line-height:1.55;
  }
  a{color:inherit;text-decoration:none;}
  .wrap{max-width:1240px;margin:0 auto;padding:0 28px;}

  /* ── Ticker ─────────────────────────── */
  .ticker-bar{
    background:var(--ink);
    color:#f5f2ea;
    font-family:'Inter',sans-serif;
    font-size:12.5px;
    overflow:hidden;
    white-space:nowrap;
    border-bottom:3px solid var(--accent);
  }
  .ticker-inner{
    display:inline-block;
    padding:9px 0;
    animation:tick 60s linear infinite;
  }
  .ticker-inner span{margin:0 26px;letter-spacing:.02em;}
  .ticker-inner a{color:inherit;}
  .ticker-inner a:hover{text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:2px;text-underline-offset:3px;}
  .ticker-inner b{font-weight:700;color:var(--accent);}
  .t-up{color:#5fd39a;font-weight:600;}
  .t-down{color:#ff8a7a;font-weight:600;}
  @keyframes tick{0%{transform:translateX(0);}100%{transform:translateX(-50%);}}

  /* ── Masthead ───────────────────────── */
  header{padding:34px 0 18px;text-align:center;border-bottom:1px solid var(--rule);}
  .kicker-line{
    font-family:'Inter',sans-serif;font-size:11px;font-weight:600;
    letter-spacing:.28em;text-transform:uppercase;color:var(--ink-faint);
    display:flex;justify-content:space-between;align-items:center;
    max-width:1240px;margin:0 auto 14px;padding:0 28px;
  }
  h1.masthead{
    font-size:clamp(30px,4.6vw,58px);
    font-weight:800;letter-spacing:-.01em;line-height:1;
  }
  h1.masthead .ai{background:var(--accent);color:var(--ink);padding:0 12px 4px;display:inline-block;}
  .masthead-sub{
    font-family:'Inter',sans-serif;font-size:12px;letter-spacing:.24em;
    text-transform:uppercase;color:var(--ink-soft);margin-top:12px;font-weight:500;
  }
  nav.sections{
    border-top:1px solid var(--rule);border-bottom:3px double var(--rule-dark);
    margin-top:20px;
  }
  nav.sections ul{
    display:flex;justify-content:center;flex-wrap:wrap;gap:2px;list-style:none;
    font-family:'Inter',sans-serif;font-size:12.5px;font-weight:600;
    letter-spacing:.1em;text-transform:uppercase;
  }
  nav.sections a{display:block;padding:12px 18px;transition:.15s;}
  nav.sections a:hover{background:var(--accent);color:var(--ink);}

  /* ── Layout ─────────────────────────── */
  main{padding:38px 0 20px;}
  .lead-grid{
    display:grid;grid-template-columns:1.55fr 1fr;gap:0;
    border-bottom:1px solid var(--rule);padding-bottom:36px;margin-bottom:36px;
  }
  .lead-main{padding-right:36px;border-right:1px solid var(--rule);}
  .lead-side{padding-left:36px;display:flex;flex-direction:column;gap:26px;}

  .tag{
    display:inline-block;font-family:'Inter',sans-serif;font-size:10.5px;
    font-weight:700;letter-spacing:.16em;text-transform:uppercase;
    background:var(--accent);color:var(--ink);padding:4px 9px;margin-bottom:12px;
  }
  .tag.red{background:var(--down);color:#fff;}
  .lead-main h2{
    font-size:clamp(32px,4vw,48px);font-weight:800;line-height:1.06;
    letter-spacing:-.01em;margin-bottom:14px;
  }
  .lead-main h2 a:hover, .story h3 a:hover, .side-story h3 a:hover{
    text-decoration:underline;text-decoration-color:var(--accent);
    text-decoration-thickness:3px;text-underline-offset:4px;
  }
  .dek{font-size:20px;line-height:1.45;color:var(--ink-soft);font-style:italic;margin-bottom:16px;}
  .body-text{font-size:17px;color:var(--ink);margin-bottom:14px;}
  .wim{font-size:16px;line-height:1.5;color:var(--ink);margin:12px 0 14px;}
  .wim b{
    font-family:'Inter',sans-serif;font-size:10.5px;font-weight:800;
    letter-spacing:.14em;text-transform:uppercase;background:var(--accent);
    color:var(--ink);padding:2px 7px;margin-right:7px;white-space:nowrap;
  }
  .byline{
    font-family:'Inter',sans-serif;font-size:11.5px;letter-spacing:.06em;
    text-transform:uppercase;color:var(--ink-faint);margin-top:6px;
  }
  .byline a{color:var(--ink);font-weight:600;border-bottom:2px solid var(--accent);}
  .byline a:hover{background:var(--accent);}

  .stat-strip{
    display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin:22px 0 8px;
    border-top:4px solid var(--accent);border-bottom:1px solid var(--rule);
  }
  .stat{padding:14px 16px 16px;border-right:1px solid var(--rule);}
  .stat:last-child{border-right:none;}
  .stat b{
    display:block;font-family:'Inter',sans-serif;font-size:30px;font-weight:800;
    letter-spacing:-.02em;color:var(--ink);line-height:1.1;
  }
  .stat span{font-family:'Inter',sans-serif;font-size:11.5px;color:var(--ink-soft);line-height:1.4;display:block;margin-top:4px;}

  .side-story{border-bottom:1px solid var(--rule);padding-bottom:24px;}
  .side-story:last-child{border-bottom:none;padding-bottom:0;}
  .side-story h3{font-size:23px;font-weight:700;line-height:1.15;margin-bottom:8px;}
  .side-story p{font-size:15.5px;color:var(--ink-soft);}
  .side-story .wim{font-size:15px;}

  /* ── Section bands ──────────────────── */
  .band{margin-bottom:40px;}
  .band-head{
    display:flex;align-items:baseline;gap:16px;
    border-bottom:3px solid var(--ink);padding-bottom:8px;margin-bottom:24px;
  }
  .band-head h2{
    font-family:'Inter',sans-serif;font-size:15px;font-weight:800;
    letter-spacing:.2em;text-transform:uppercase;
  }
  .band-head h2::before{
    content:"";display:inline-block;width:12px;height:12px;
    background:var(--accent);margin-right:10px;
  }
  .band-head .rule-note{font-family:'Inter',sans-serif;font-size:11.5px;color:var(--ink-faint);letter-spacing:.05em;}
  .col-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;}
  .story{padding:0 28px;border-right:1px solid var(--rule);}
  .story:first-child{padding-left:0;}
  .story:last-child{border-right:none;padding-right:0;}
  .story h3{font-size:24px;font-weight:700;line-height:1.15;margin-bottom:9px;}
  .story p{font-size:15.5px;color:var(--ink-soft);margin-bottom:10px;}
  .story .wim{font-size:15px;color:var(--ink);}

  /* ── Playbook (highlight box) ───────── */
  .playbook{
    background:var(--ink);color:#f5f2ea;padding:40px 44px;margin-bottom:40px;
  }
  .playbook .tag{background:var(--accent);color:var(--ink);}
  .playbook h2{font-size:clamp(26px,3.2vw,38px);font-weight:800;line-height:1.1;margin-bottom:12px;color:#fff;}
  .playbook .dek{color:#c9c5b8;font-size:18px;}
  .pb-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:26px;}
  .pb-item{border-top:3px solid var(--accent);padding-top:12px;}
  .pb-item b{display:block;font-family:'Inter',sans-serif;font-size:24px;font-weight:800;color:var(--accent);}
  .pb-item span{font-family:'Inter',sans-serif;font-size:12.5px;color:#c9c5b8;line-height:1.45;display:block;margin-top:4px;}
  .playbook .byline{color:#8b8a83;margin-top:22px;}
  .playbook .byline a{color:var(--accent);border-bottom:none;}
  .playbook .byline a:hover{background:none;text-decoration:underline;}
  .playbook .wim{color:#f5f2ea;}

  /* ── Wire briefs ────────────────────── */
  .wire-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0 48px;}
  .wire-item{
    display:flex;gap:14px;padding:15px 0;border-bottom:1px solid var(--rule);
  }
  .wire-item .w-src{
    font-family:'Inter',sans-serif;font-size:10px;font-weight:700;
    letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);
    min-width:96px;padding-top:4px;line-height:1.5;
    border-left:3px solid var(--accent);padding-left:8px;
  }
  .wire-item p{font-size:15.5px;line-height:1.5;color:var(--ink);}
  .wire-item p a{font-weight:700;}
  .wire-item p a:hover{text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:3px;}
  .wire-item p .w-note{color:var(--ink-soft);}
  @media(max-width:960px){.wire-grid{grid-template-columns:1fr;}}

  /* ── Editorial art ──────────────────── */
  figure.art{margin:0 0 16px;}
  figure.art img{
    width:100%;aspect-ratio:16/9;object-fit:cover;display:block;
    border:1px solid var(--rule);background:#f2efe7;
  }
  figure.art figcaption{
    font-family:'Newsreader',serif;font-style:italic;font-size:13.5px;
    color:var(--ink-faint);padding-top:7px;line-height:1.4;
    border-bottom:1px solid var(--rule);padding-bottom:10px;
  }
  figure.art figcaption b{
    font-family:'Inter',sans-serif;font-style:normal;font-weight:700;
    font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-soft);
  }
  .lead-main figure.art{margin:4px 0 18px;}
  .story figure.art img, .side-story figure.art img{aspect-ratio:3/2;}

  /* ── Watch list / sources ───────────── */
  .watch-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:48px;}
  .watch-list{list-style:none;}
  .watch-list li{
    display:flex;gap:14px;padding:13px 0;border-bottom:1px solid var(--rule);
    font-size:16px;
  }
  .watch-list li:last-child{border-bottom:none;}
  .watch-list .wnum{
    font-family:'Inter',sans-serif;font-weight:800;font-size:12px;color:var(--ink);
    background:var(--accent);min-width:26px;height:22px;text-align:center;
    line-height:22px;margin-top:3px;
  }
  .src-note{font-size:15px;color:var(--ink-soft);font-style:italic;margin-bottom:14px;}
  .src-list{list-style:none;font-family:'Inter',sans-serif;font-size:13.5px;}
  .src-list li{padding:9px 0;border-bottom:1px solid var(--rule);display:flex;justify-content:space-between;gap:12px;}
  .src-list a{color:var(--ink);font-weight:600;border-bottom:2px solid var(--accent);}
  .src-list a:hover{background:var(--accent);}
  .src-list .src-kind{color:var(--ink-faint);font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;padding-top:2px;}

  /* ── Pro Humanitate close ───────────── */
  .prohum{
    max-width:820px;margin:0 auto 44px;padding:38px 40px 34px;
    border-top:6px solid var(--accent);border-bottom:3px double var(--rule-dark);
    background:#fff;text-align:center;
  }
  .prohum .ph-kicker{
    font-family:'Inter',sans-serif;font-size:11px;font-weight:800;
    letter-spacing:.28em;text-transform:uppercase;color:var(--ink);margin-bottom:6px;
  }
  .prohum .ph-note{font-family:'Inter',sans-serif;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);margin-bottom:18px;}
  .prohum h2{font-size:clamp(24px,3vw,34px);font-weight:800;line-height:1.15;margin-bottom:16px;}
  .prohum p{font-size:17px;line-height:1.6;color:var(--ink);text-align:left;margin-bottom:12px;}
  .prohum .byline{text-align:center;margin-top:14px;}

  footer{
    border-top:3px double var(--rule-dark);margin-top:14px;padding:26px 0 40px;
    text-align:center;font-family:'Inter',sans-serif;font-size:12px;color:var(--ink-faint);
    line-height:1.8;
  }
  footer b{color:var(--ink-soft);letter-spacing:.18em;text-transform:uppercase;font-size:11px;}

  @media(max-width:960px){
    .lead-grid{grid-template-columns:1fr;}
    .lead-main{padding-right:0;border-right:none;border-bottom:1px solid var(--rule);padding-bottom:28px;}
    .lead-side{padding-left:0;padding-top:28px;}
    .col-grid{grid-template-columns:1fr;}
    .story{padding:0 0 24px;border-right:none;border-bottom:1px solid var(--rule);margin-bottom:24px;}
    .story:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0;}
    .pb-grid{grid-template-columns:repeat(2,1fr);}
    .watch-grid{grid-template-columns:1fr;}
    .stat-strip{grid-template-columns:1fr;}
    .stat{border-right:none;border-bottom:1px solid var(--rule);}
  }

/* ══════════════════════════════════════════════════════
   WFU ADDITIONS — masthead lockup, podcast band, pages
   ══════════════════════════════════════════════════════ */

/* ── Podcast band (directly under masthead) ── */
.podbar{
  background:var(--ink);color:#f5f2ea;
  border-bottom:3px solid var(--accent);
}
.podbar-in{
  max-width:1240px;margin:0 auto;padding:20px 28px;
  display:grid;grid-template-columns:auto 1fr auto;gap:24px;align-items:center;
}
.podbar .pod-kicker{
  font-family:'Inter',sans-serif;font-size:10.5px;font-weight:800;
  letter-spacing:.18em;text-transform:uppercase;
  background:var(--accent);color:var(--ink);padding:5px 10px;white-space:nowrap;
}
.podbar .pod-title{
  font-family:'Newsreader',Georgia,serif;font-size:21px;font-weight:700;
  line-height:1.2;margin:0;
}
.podbar .pod-meta{
  font-family:'Inter',sans-serif;font-size:11.5px;letter-spacing:.06em;
  color:#a9a69c;margin-top:5px;
}
.podbar audio{width:100%;max-width:420px;height:38px;}
.podbar .pod-links{
  font-family:'Inter',sans-serif;font-size:11.5px;font-weight:700;
  letter-spacing:.1em;text-transform:uppercase;white-space:nowrap;
  display:flex;gap:16px;
}
.podbar .pod-links a{border-bottom:2px solid var(--accent);padding-bottom:2px;}
.podbar .pod-links a:hover{background:var(--accent);color:var(--ink);}
.podbar .pod-soon{
  font-family:'Inter',sans-serif;font-size:13px;color:#c9c5b8;font-style:normal;
}

/* ── Episode list (/podcast/) ── */
.ep{border-bottom:1px solid var(--rule);padding:26px 0;}
.ep:last-child{border-bottom:none;}
.ep .ep-date{
  font-family:'Inter',sans-serif;font-size:11px;font-weight:700;
  letter-spacing:.16em;text-transform:uppercase;color:var(--ink-faint);
}
.ep h3{font-size:26px;font-weight:700;line-height:1.15;margin:7px 0 9px;}
.ep p{font-size:16px;color:var(--ink-soft);margin-bottom:12px;}
.ep audio{width:100%;max-width:560px;height:38px;}

/* ── Prose pages (/faq/, /program/) ── */
.prose{max-width:760px;margin:0 auto;padding:44px 0 20px;}
.prose h2{font-size:clamp(28px,3.4vw,40px);font-weight:800;line-height:1.1;margin-bottom:10px;}
.prose h3{font-size:22px;font-weight:700;line-height:1.25;margin:32px 0 8px;}
.prose p{font-size:17px;line-height:1.62;margin-bottom:14px;}
.prose p a{font-weight:600;border-bottom:2px solid var(--accent);}
.prose p a:hover{background:var(--accent);}
.prose .lede{font-size:20px;font-style:italic;color:var(--ink-soft);margin-bottom:26px;}
.prose ul{margin:0 0 16px 20px;}
.prose li{font-size:17px;line-height:1.6;margin-bottom:8px;}

/* ── Archive index ── */
.arch{list-style:none;}
.arch li{
  border-bottom:1px solid var(--rule);padding:18px 0;
  display:flex;justify-content:space-between;align-items:baseline;gap:20px;
}
.arch li:last-child{border-bottom:none;}
.arch .a-date{
  font-family:'Inter',sans-serif;font-size:11.5px;font-weight:700;
  letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);
  white-space:nowrap;min-width:120px;
}
.arch .a-title{font-size:21px;font-weight:700;line-height:1.25;flex:1;}
.arch .a-title:hover{text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:3px;text-underline-offset:4px;}

/* ── Subscribe CTA band ── */
.sub-band{
  background:var(--ink);color:#f5f2ea;padding:38px 0;margin:44px 0 0;
  border-top:3px solid var(--accent);
}
.sub-band .wrap{display:grid;grid-template-columns:1fr auto;gap:32px;align-items:center;}
.sub-band h2{font-size:clamp(22px,2.8vw,30px);font-weight:800;line-height:1.15;color:#fff;margin-bottom:8px;}
.sub-band p{font-family:'Inter',sans-serif;font-size:14px;color:#c9c5b8;line-height:1.5;}
.sub-band form{display:flex;gap:0;}
.sub-band input{
  font-family:'Inter',sans-serif;font-size:14px;padding:13px 15px;
  border:2px solid var(--accent);border-right:none;background:#fff;color:var(--ink);
  min-width:250px;
}
.sub-band button{
  font-family:'Inter',sans-serif;font-size:12.5px;font-weight:800;
  letter-spacing:.12em;text-transform:uppercase;cursor:pointer;
  padding:13px 22px;border:2px solid var(--accent);background:var(--accent);color:var(--ink);
}
.sub-band button:hover{background:#e5ae0c;border-color:#e5ae0c;}

@media(max-width:860px){
  .podbar-in{grid-template-columns:1fr;gap:14px;}
  .podbar audio{max-width:100%;}
  .sub-band .wrap{grid-template-columns:1fr;}
  .sub-band input{min-width:0;width:100%;}
  .sub-band form{flex-wrap:nowrap;}
  .arch li{flex-direction:column;gap:6px;}
}

figure.art figcaption .credit{color:var(--ink-faint);font-style:normal;}
