/*
Theme Name: Pionairs
Theme URI: https://thepionairs.com
Author: thepionairs.com
Description: Light newsprint theme for thepionairs.com, frontline reporting on AI and SaaS. News. Playbooks. Momentum.
Version: 1.0.0
Requires at least: 6.0
Requires PHP: 7.4
License: GNU General Public License v2 or later
Text Domain: pionairs
*/

:root{
  --bg:#0A0B0E;
  --panel:#101218;
  --panel-2:#161923;
  --text:#F2F1EA;
  --dim:#A9ACB7;
  --faint:#5F626E;
  --line:#23262F;
  --lime:#C6F45B;
  --lime-dim:#A5D53E;
  --serif:'Fraunces',Georgia,serif;
  --mono:'IBM Plex Mono',ui-monospace,'Courier New',monospace;
  --sans:'Inter',system-ui,-apple-system,sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:var(--sans);background:var(--bg);color:var(--text);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
.container{max-width:1120px;margin:0 auto;padding:0 24px}
.mono{font-family:var(--mono)}

/* ---------- Ticker ---------- */
.ticker{background:var(--lime);color:#0A0B0E;overflow:hidden;white-space:nowrap;font-family:var(--mono);font-size:12.5px;font-weight:600;letter-spacing:.02em}
.ticker-inner{display:inline-block;padding:7px 0;animation:tick 300s linear infinite}
.ticker:hover .ticker-inner{animation-play-state:paused}
.ticker-inner span{margin:0 26px}
@keyframes tick{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

/* ---------- Masthead ---------- */
.masthead{border-bottom:1px solid var(--line);padding:34px 0 0;text-align:center}
.masthead .wordmark{font-family:var(--serif);font-weight:700;font-size:clamp(38px,6vw,64px);letter-spacing:-.02em;color:var(--text);line-height:1}
.masthead .wordmark .br{color:var(--lime);font-family:var(--mono);font-weight:500}
.masthead .tag{font-family:var(--mono);font-size:12px;color:var(--dim);margin-top:10px;letter-spacing:.06em;text-transform:uppercase}
.masthead .meta-row{display:flex;justify-content:space-between;align-items:center;font-family:var(--mono);font-size:11.5px;color:var(--faint);padding:14px 0 12px;text-transform:uppercase;letter-spacing:.04em}
nav.main{border-top:1px solid var(--line);display:flex;justify-content:center;gap:34px;padding:0;flex-wrap:wrap}
nav.main a{font-family:var(--mono);font-size:13px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--dim);padding:15px 2px;border-bottom:2px solid transparent;margin-bottom:-1px}
nav.main a:hover{color:var(--text)}
nav.main a.active{color:var(--lime);border-bottom-color:var(--lime)}
.mast-actions{position:absolute;right:24px;top:34px;display:flex;gap:10px}
.masthead-wrap{position:relative}
@media(max-width:900px){.mast-actions{position:static;justify-content:center;margin-top:14px}}

/* ---------- Buttons ---------- */
.btn{display:inline-flex;align-items:center;gap:9px;font-family:var(--mono);font-weight:600;font-size:12.5px;letter-spacing:.06em;text-transform:uppercase;padding:11px 20px;border-radius:3px;cursor:pointer;border:1px solid transparent;transition:all .15s ease}
.btn-lime{background:var(--lime);color:#0A0B0E}
.btn-lime:hover{background:var(--lime-dim)}
.btn-line{background:transparent;color:var(--text);border-color:#3A3D49}
.btn-line:hover{border-color:var(--lime);color:var(--lime)}
.btn-big{padding:14px 26px;font-size:13.5px}

/* ---------- Section labels ---------- */
.slabel{font-family:var(--mono);font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--lime);display:flex;align-items:center;gap:12px;margin-bottom:26px}
.slabel::after{content:"";flex:1;height:1px;background:var(--line)}
.slabel .right{color:var(--faint);font-weight:500}
.slabel a:hover{color:var(--lime)}

/* ---------- Lead story ---------- */
.lead-zone{display:grid;grid-template-columns:1.7fr 1fr;gap:0 56px;border-bottom:1px solid var(--line)}
@media(max-width:900px){.lead-zone{grid-template-columns:1fr}}
.lead{padding:54px 0 44px;cursor:pointer}
.lead .kick{font-family:var(--mono);font-size:12px;color:var(--dim);text-transform:uppercase;letter-spacing:.07em;margin-bottom:16px}
.lead .kick b{color:var(--lime);font-weight:600}
.lead h1{font-family:var(--serif);font-weight:600;font-size:clamp(30px,4.6vw,54px);line-height:1.08;letter-spacing:-.015em;max-width:20ch}
.lead h1 a:hover{color:var(--lime)}
.lead p{color:var(--dim);font-size:17px;max-width:640px;margin-top:18px}
.lead .lead-img{margin-top:24px}
.lead .lead-img img{width:100%;aspect-ratio:21/9;object-fit:cover;display:block;border:1px solid var(--line)}
.lead .more{font-family:var(--mono);font-size:12.5px;color:var(--lime);margin-top:20px;display:inline-block;letter-spacing:.06em;text-transform:uppercase}
.latest{padding:54px 0 44px 40px;border-left:1px solid var(--line)}
@media(max-width:900px){.latest{border-left:none;border-top:1px solid var(--line);padding:30px 0}}
.latest .lt-label{font-family:var(--mono);font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--lime);margin-bottom:6px}
.lrow{padding:16px 0;border-bottom:1px solid var(--line);cursor:pointer}
.lrow:last-child{border-bottom:none}
.lrow .ld{font-family:var(--mono);font-size:11px;color:var(--faint);text-transform:uppercase;letter-spacing:.06em;display:block;margin-bottom:5px}
.lrow h4{font-family:var(--serif);font-weight:600;font-size:16.5px;line-height:1.35;letter-spacing:-.01em}
.lrow h4 a:hover{color:var(--lime)}

/* ---------- Numbered index ---------- */
.index-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 56px}
@media(max-width:860px){.index-grid{grid-template-columns:1fr}}
.irow{display:flex;gap:20px;padding:24px 0;border-bottom:1px solid var(--line);cursor:pointer;align-items:baseline}
.irow .no{font-family:var(--mono);font-size:13px;color:var(--faint);flex-shrink:0;width:26px}
.irow:hover .no{color:var(--lime)}
.irow h3{font-family:var(--serif);font-weight:600;font-size:20px;line-height:1.3;letter-spacing:-.01em}
.irow h3 a:hover{color:var(--lime)}
.irow .sub{font-family:var(--mono);font-size:11px;color:var(--faint);text-transform:uppercase;letter-spacing:.06em;display:block;margin-bottom:6px}
.irow p{color:var(--dim);font-size:14px;line-height:1.6;margin-top:7px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}

/* ---------- Playbook index table ---------- */
.pb-row{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:baseline;padding:20px 0;border-bottom:1px solid var(--line);cursor:pointer}
.pb-row .no{font-family:var(--mono);font-size:13px;color:var(--faint)}
.pb-row:hover .no{color:var(--lime)}
.pb-row h3{font-family:var(--serif);font-weight:600;font-size:20px;letter-spacing:-.01em}
.pb-row h3 a:hover{color:var(--lime)}
.pb-row p{color:var(--dim);font-size:13.5px;margin-top:5px;max-width:70ch}
.pb-row .arrow{font-family:var(--mono);color:var(--faint);font-size:15px}
.pb-row:hover .arrow{color:var(--lime)}

/* ---------- Events timeline ---------- */
.timeline{border-left:1px solid var(--line);margin-left:8px}
.trow{position:relative;padding:6px 0 34px 34px;cursor:pointer}
.trow::before{content:"";position:absolute;left:-5px;top:14px;width:9px;height:9px;border-radius:50%;background:var(--bg);border:2px solid var(--faint)}
.trow:hover::before{border-color:var(--lime);background:var(--lime)}
.trow .tdate{font-family:var(--mono);font-size:12px;color:var(--lime);letter-spacing:.05em;text-transform:uppercase}
.trow h3{font-family:var(--serif);font-weight:600;font-size:22px;margin:6px 0 2px}
.trow h3 a:hover{color:var(--lime)}
.trow .tloc{font-family:var(--mono);font-size:11.5px;color:var(--faint);text-transform:uppercase;letter-spacing:.05em}
.trow p{color:var(--dim);font-size:14px;margin-top:8px;max-width:72ch}

/* ---------- Article ---------- */
.article-wrap{max-width:720px;margin:0 auto;padding:54px 24px 30px}
.article-wrap .kick{font-family:var(--mono);font-size:12px;color:var(--dim);text-transform:uppercase;letter-spacing:.07em;margin-bottom:18px}
.article-wrap .kick b{color:var(--lime);font-weight:600}
.article-wrap h1{font-family:var(--serif);font-weight:600;font-size:clamp(28px,4vw,44px);line-height:1.12;letter-spacing:-.015em;margin-bottom:20px}
.article-wrap .intro{font-size:18.5px;line-height:1.6;color:#C9CBD2;font-family:var(--serif);font-weight:500;border-left:3px solid var(--lime);padding-left:20px;margin-bottom:8px}
.byline{display:flex;align-items:center;gap:12px;font-family:var(--mono);font-size:12px;color:var(--faint);text-transform:uppercase;letter-spacing:.05em;padding:18px 0;border-bottom:1px solid var(--line);margin-bottom:10px}
.article-hero{margin:26px 0 4px}
.article-hero img{width:100%;aspect-ratio:21/9;object-fit:cover;display:block;border:1px solid var(--line)}
.article-hero figcaption{font-family:var(--mono);font-size:10.5px;color:var(--faint);text-transform:uppercase;letter-spacing:.08em;margin-top:8px}
.byline .dotsq{width:9px;height:9px;background:var(--lime)}
.article-body{font-size:16.5px;line-height:1.8;color:#D6D7DC}
.article-body p{margin:19px 0}
.article-body h4{font-family:var(--serif);font-size:22px;font-weight:600;margin:32px 0 2px;color:var(--text)}
.article-body ul,.article-body ol{margin:18px 0 18px 26px}
.article-body a{color:var(--lime);border-bottom:1px solid rgba(198,244,91,.35)}
.article-body a:hover{border-bottom-color:var(--lime)}
.article-body strong{color:var(--text)}
.srcblock{border:1px solid var(--line);background:var(--panel);padding:16px 20px;font-family:var(--mono);font-size:12.5px;color:var(--dim);margin-top:28px}
.srcblock a{color:var(--lime)}
.tag-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:22px}
.tag-chip{font-family:var(--mono);font-weight:500;font-size:11.5px;letter-spacing:.04em;padding:6px 12px;border:1px solid var(--line);color:var(--dim);border-radius:3px}
.tag-chip:hover{border-color:var(--lime);color:var(--lime)}
.tag-chip.cat{background:var(--lime);color:#0A0B0E;border-color:var(--lime);font-weight:600}
.after-article{border-top:1px solid var(--line);margin-top:44px;padding-top:34px}

/* ---------- Page head ---------- */
.page-head{padding:54px 0 40px;border-bottom:1px solid var(--line)}
.page-head .kicker{font-family:var(--mono);font-size:12px;color:var(--lime);letter-spacing:.1em;text-transform:uppercase;display:block;margin-bottom:14px}
.page-head h1{font-family:var(--serif);font-weight:600;font-size:clamp(28px,4vw,46px);letter-spacing:-.015em;margin-bottom:14px}
.page-head p{color:var(--dim);max-width:640px;font-size:16px}

/* ---------- Panels / empty states ---------- */
.panel{border:1px solid var(--line);background:var(--panel);padding:44px 40px;text-align:center}
.panel h3{font-family:var(--serif);font-size:24px;font-weight:600;margin-bottom:10px}
.panel p{color:var(--dim);max-width:520px;margin:0 auto 22px;font-size:14.5px}
.pitch{border:1px dashed #4A4E5C;background:var(--panel);padding:26px 30px;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;margin-top:26px}
.pitch b{font-family:var(--serif);font-size:18px;font-weight:600}
.pitch p{font-size:13.5px;color:var(--dim);margin-top:4px}
.rules{border:1px solid var(--line);background:var(--panel);padding:24px 28px;margin-top:26px}
.rules p{font-size:14px;color:var(--dim);max-width:76ch}
.rules a{color:var(--lime)}
.fact-line{display:flex;gap:40px;flex-wrap:wrap;border:1px solid var(--line);background:var(--panel);padding:20px 26px;margin:26px 0}
.fact-line div span{display:block;font-family:var(--mono);font-size:10.5px;text-transform:uppercase;letter-spacing:.08em;color:var(--faint)}
.fact-line div b{font-family:var(--serif);font-size:19px;font-weight:600}
.past-note{border:1px solid #6B5A1F;background:#1C1707;color:#E8D48A;padding:14px 18px;margin:20px 0;font-size:14px}
.past-note a{color:var(--lime)}

/* ---------- Brief band ---------- */
.brief-band{background:var(--lime);color:#0A0B0E;padding:52px 0;margin-top:64px}
.brief-band .inner{display:flex;justify-content:space-between;align-items:center;gap:30px;flex-wrap:wrap}
.brief-band .k{font-family:var(--mono);font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;display:block;margin-bottom:10px}
.brief-band h2{font-family:var(--serif);font-weight:600;font-size:clamp(22px,3vw,34px);letter-spacing:-.015em;max-width:22ch}
.brief-band p{font-size:15px;margin-top:10px;max-width:560px;color:#20230F}
.btn-ink{background:#0A0B0E;color:var(--lime)}
.btn-ink:hover{background:#20222B}

/* ---------- Forms ---------- */
.form-panel{border:1px solid var(--line);background:var(--panel);padding:36px;max-width:640px;margin:0 auto}
.form-2col{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:600px){.form-2col{grid-template-columns:1fr}}
.fieldlabel{display:block;font-family:var(--mono);font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--dim);margin:16px 0 6px}
.field{width:100%;padding:12px 14px;border:1px solid #33363F;border-radius:3px;font-family:var(--sans);font-size:14.5px;background:#0D0E13;color:var(--text)}
.field:focus{outline:none;border-color:var(--lime)}
.notice{border:1px solid #3F5A25;background:#141B0C;color:#CBE8A5;padding:14px 18px;margin:0 auto 20px;max-width:640px;font-size:14px}

/* ---------- BP zone ---------- */
.bplus{border-top:1px solid var(--line);padding:30px 0;margin-top:70px}
.bplus .zlabel{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--faint);display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:16px}
.bplus .zlabel a{color:var(--lime)}
.bplus .slot{border:1px dashed #4A4E5C;padding:24px 28px;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.bplus .slot b{font-family:var(--serif);font-size:17px;font-weight:600}
.bplus .slot p{font-size:13.5px;color:var(--dim);margin-top:4px}
.bplus .q{width:44px;height:44px;border:1px dashed #4A4E5C;display:flex;align-items:center;justify-content:center;font-family:var(--mono);color:var(--faint);flex-shrink:0}

/* ---------- Footer ---------- */
footer.site{border-top:1px solid var(--line);margin-top:0;padding:46px 0 0;color:var(--dim)}
.fgrid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:36px;padding-bottom:40px}
@media(max-width:900px){.fgrid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.fgrid{grid-template-columns:1fr}}
footer .wm{font-family:var(--serif);font-weight:700;font-size:24px;color:var(--text)}
footer .wm .br{color:var(--lime);font-family:var(--mono);font-weight:500}
footer .sl{font-family:var(--mono);font-size:11px;text-transform:uppercase;letter-spacing:.08em;margin-top:6px;color:var(--faint)}
footer p{font-size:13.5px;margin-top:14px;max-width:34ch}
footer h5{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--faint);margin-bottom:14px}
footer ul{list-style:none}
footer li{margin-bottom:9px;font-size:14px}
footer li a:hover{color:var(--lime)}
.fbrief{border:1px solid var(--line);background:var(--panel);padding:20px 22px}
.fbrief p{font-size:13px;margin:0 0 14px}
.fbottom{border-top:1px solid var(--line);padding:16px 0;font-family:var(--mono);font-size:11px;letter-spacing:.03em;display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;color:var(--faint);text-transform:uppercase}
.fbottom a:hover{color:var(--lime)}

.section{padding:48px 0}
.center{text-align:center}

/* ===== LIGHT VARIANT ===== */
/* ===== LIGHT NEWSPRINT VARIANT ===== */
:root{
  --bg:#FAF8F1;
  --panel:#FFFFFF;
  --panel-2:#F1EEE4;
  --text:#16171A;
  --dim:#54565F;
  --faint:#8B8E96;
  --line:#DFDACB;
  --acc:#4E6E0A;
}
body{-webkit-font-smoothing:auto}
.masthead .wordmark .br{color:#16171A;background:var(--lime);padding:0 8px;border-radius:8px;margin:0 5px}
footer .wm .br{color:#16171A;background:var(--lime);padding:0 4px;border-radius:5px;margin:0 3px}
nav.main a.active{color:var(--acc)}
.slabel{color:var(--acc)}
.lead .kick b{color:var(--acc)}
.lead h1 a:hover{color:var(--acc)}
.lead .more{color:var(--acc)}
.latest .lt-label{color:var(--acc)}
.lrow h4 a:hover{color:var(--acc)}
.irow:hover .no{color:var(--acc)}
.irow h3 a:hover{color:var(--acc)}
.pb-row:hover .no{color:var(--acc)}
.pb-row h3 a:hover{color:var(--acc)}
.pb-row:hover .arrow{color:var(--acc)}
.trow:hover::before{border-color:var(--acc);background:var(--lime)}
.trow .tdate{color:var(--acc)}
.trow h3 a:hover{color:var(--acc)}
.article-wrap .kick b{color:var(--acc)}
.article-wrap .kick a{color:var(--acc) !important}
.article-wrap .intro{color:#33363D}
.article-body{color:#26282E}
.article-body a{color:var(--acc);border-bottom:1px solid rgba(78,110,10,.35)}
.article-body a:hover{border-bottom-color:var(--acc)}
.article-body strong{color:var(--text)}
.srcblock{background:var(--panel-2)}
.srcblock a{color:var(--acc)}
.tag-chip:hover{border-color:var(--acc);color:var(--acc)}
.page-head .kicker{color:var(--acc)}
.rules a{color:var(--acc)}
.pitch{border-color:#C6C0AE}
.bplus .slot{border-color:#C6C0AE}
.bplus .q{border-color:#C6C0AE}
.bplus .zlabel a{color:var(--acc)}
.btn-line{color:var(--text);border-color:#C0BAA6}
.btn-line:hover{border-color:var(--acc);color:var(--acc)}
.field{background:#FFFFFF;border-color:#D5D0C0;color:var(--text)}
.field:focus{border-color:var(--acc)}
.notice{border-color:#B7D389;background:#F0F7DF;color:#43610F}
.past-note{border-color:#D9C67A;background:#FBF3D9;color:#6B5A15}
.past-note a{color:var(--acc)}
footer li a:hover{color:var(--acc)}
.fbottom a:hover{color:var(--acc)}
.slabel a:hover{color:var(--acc)}


/* ===== WordPress-aanvullingen ===== */
.article-body h2{font-family:var(--serif);font-size:24px;font-weight:600;margin:34px 0 4px;color:var(--text)}
.article-body h3{font-family:var(--serif);font-size:20px;font-weight:600;margin:26px 0 2px;color:var(--text)}
.article-body img{max-width:100%;height:auto}
.aligncenter{margin-left:auto;margin-right:auto;display:block}
.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.paginering{display:flex;gap:10px;justify-content:center;padding:30px 0;font-family:var(--mono);font-size:13px}
.paginering a,.paginering span{padding:8px 14px;border:1px solid var(--line)}
.paginering .current{background:var(--lime);border-color:var(--lime);color:#16171A}
/* ===== Mobiel (390px-vriendelijk) ===== */
@media(max-width:700px){
  /* Header: logo eerst, knoppen eronder, compacte nav */
  .masthead{display:flex;flex-direction:column;align-items:center;padding:20px 0 0}
  .masthead > a{order:1}
  .mast-actions{order:2;position:static;margin:16px 0 0;justify-content:center;width:100%}
  .mast-actions .btn{font-size:11px;padding:9px 14px}
  .masthead .meta-row{order:3;width:100%;justify-content:center;padding:12px 0 8px}
  .masthead .meta-row span:last-child{display:none}
  nav.main{order:4;width:100%;gap:4px 20px;justify-content:center}
  nav.main a{font-size:12px;padding:10px 2px}
  .masthead .wordmark{font-size:38px}
  .masthead .tag{font-size:10.5px}
  .ticker{font-size:11.5px}
  /* Ruimte en maten */
  .container{padding:0 18px}
  .section{padding:34px 0}
  .lead{padding:32px 0 28px}
  .lead p{font-size:15.5px}
  .latest{padding:24px 0}
  .slabel{margin-bottom:18px}
  /* Nieuwsindex en playbooks */
  .irow{gap:14px;padding:20px 0}
  .irow h3{font-size:18px}
  .pb-row{grid-template-columns:1fr;gap:12px}
  .pb-row .arrow{display:none}
  .pb-row h3{font-size:18px}
  /* Artikel */
  .article-wrap{padding:32px 18px 22px}
  .article-wrap .intro{font-size:16.5px;padding-left:14px}
  .byline{flex-wrap:wrap;gap:8px;row-gap:4px}
  /* Paginakoppen, formulieren, banden */
  .page-head{padding:34px 0 26px}
  .form-panel{padding:24px 18px}
  .pitch{padding:20px}
  .brief-band{padding:36px 0;margin-top:44px}
  /* Events-tijdlijn */
  .timeline{margin-left:4px}
  .trow{padding:6px 0 26px 24px}
  .trow h3{font-size:19px}
  /* Footer */
  footer.site{padding:32px 0 0}
  .fgrid{gap:24px;padding-bottom:28px}
}


/* ===== Header-uitlijning logo/knoppen (wordt inline meegeleverd) ===== */
.masthead{position:relative}
@media(min-width:901px){
  .mast-actions{position:absolute;right:24px;top:50px}
}
@media(max-width:700px){
  .masthead{padding:26px 0 0}
  .mast-actions{margin:16px 0 2px;gap:8px}
  .mast-actions .btn{flex:1;max-width:170px;justify-content:center}
  nav.main{max-width:250px;margin:0 auto}
}

/* ===== Nummers naast artikelen weg: grid terug naar 2 kolommen (inline geleverd) ===== */
.pb-row{grid-template-columns:1fr auto}
@media(max-width:700px){.pb-row{grid-template-columns:1fr}}

/* ===== Expert-partner widget + artikel-rail (inline geleverd, Varnish-proof) ===== */
.xpartner{border:1px solid var(--line);background:var(--panel);border-radius:6px;padding:22px}
.xpartner .xlabel{display:inline-block;font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#0A0B0E;background:var(--lime);padding:3px 9px;border-radius:3px;margin-bottom:14px}
.xpartner .xhead{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.xpartner .xlogo{width:44px;height:44px;border-radius:9px;overflow:hidden;flex-shrink:0;display:flex;align-items:center;justify-content:center;border:1px solid var(--line)}
.xpartner .xinit{background:var(--lime);color:#0A0B0E;font-family:var(--serif);font-weight:700;font-size:22px}
.xpartner .xhead b{font-family:var(--serif);font-size:17px;display:block;line-height:1.2}
.xpartner .xhead em{font-family:var(--mono);font-style:normal;font-size:11px;color:var(--faint);text-transform:uppercase;letter-spacing:.05em}
.xpartner p{color:var(--dim);font-size:14px;line-height:1.55;margin:0 0 16px}
.xpartner .xcta{font-family:var(--mono);font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--acc)}
.xpartner .xcta:hover{color:var(--lime)}
.xpartner.xrecruit b{font-family:var(--serif);font-size:18px;display:block;margin-bottom:8px}
.latest .xpartner{margin-top:34px}
.article-layout{display:grid;grid-template-columns:minmax(0,720px) 300px;gap:48px;justify-content:center;align-items:start;max-width:1100px;margin:0 auto}
.article-layout .article-wrap{max-width:none;margin:0;padding-left:0;padding-right:0}
.article-rail{padding-top:60px;position:sticky;top:20px}
@media(max-width:1000px){.article-layout{grid-template-columns:1fr;max-width:720px;padding:0 24px}.article-rail{padding-top:0;position:static;margin-top:10px}}

/* ===== Tell your story-pagina (inline geleverd, Varnish-proof) ===== */
.story-sub{color:var(--dim);font-size:17px;max-width:640px;margin:6px 0 34px}
.story-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}
.story-card{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:32px 26px;display:flex;flex-direction:column}
.story-card.featured{border:1.5px solid var(--lime);background:var(--panel-2)}
.story-tag{align-self:flex-start;font-family:var(--mono);font-weight:600;font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:#0A0B0E;background:var(--lime);border-radius:3px;padding:5px 11px;margin-bottom:18px}
.story-card h3{font-family:var(--serif);font-weight:600;font-size:23px;margin-bottom:8px}
.story-card>p{font-size:15px;color:var(--dim);margin-bottom:18px}
.story-list{list-style:none;margin:0 0 24px;padding:0}
.story-list li{font-size:14.5px;color:var(--dim);padding-left:20px;position:relative;margin-bottom:10px;line-height:1.55}
.story-list li::before{content:"";position:absolute;left:0;top:9px;width:7px;height:7px;background:var(--lime)}
.story-list li strong{color:var(--text)}
.story-card .btn{margin-top:auto;display:flex;justify-content:center}
.story-rules{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:start}
.story-rules h2{font-family:var(--serif);font-size:clamp(24px,3vw,30px);margin:12px 0 12px}
.story-rules>div>p{color:var(--dim);font-size:16px}
.story-rules-card{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:30px}
.story-rules-card .story-list{margin-bottom:0}
.story-final{text-align:center;padding-bottom:76px}
.story-final .kicker{font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--acc);display:block;margin-bottom:10px}
.story-final h2{font-family:var(--serif);font-size:clamp(24px,3vw,34px);margin:0 0 12px}
.story-final p{color:var(--dim);max-width:560px;margin:0 auto 26px}
@media(max-width:760px){.story-rules{grid-template-columns:1fr;gap:24px}}


/* Rotating "also worth your time" block in the article rail */
.rail-more{margin-top:34px}
.rail-more .rm-label{display:block;font-family:var(--mono);font-size:12px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--acc);margin-bottom:16px;padding-bottom:10px;border-bottom:1px solid var(--line)}
.rail-more ul{list-style:none;margin:0;padding:0}
.rail-more li{padding-bottom:15px;margin-bottom:15px;border-bottom:1px solid var(--line)}
.rail-more li:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}
.rail-more a{text-decoration:none;display:block}
.rail-more .rm-cat{display:block;font-family:var(--mono);font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--faint);margin-bottom:5px}
.rail-more .rm-title{font-family:var(--serif);font-size:15.5px;line-height:1.3;color:var(--text)}
.rail-more a:hover .rm-title{color:var(--acc)}