/* Paint the cream on the section content only, never on body: the site header keeps its own
   light/dark ground and text colours (a cream body under a dark-theme header made the menu invisible
   in the 30 Sep 2026 preview). */
.section-ai-journalism main{background:#f7f1e3}
.section-ai-journalism .site-header{border-bottom:4px double #24221e}
.aij{
  --aij-paper:#f7f1e3; --aij-panel:#eee5d2; --aij-note:#f2ead8; --aij-tint:#efe4cc;
  --aij-ink:#1b1a17; --aij-ink-strong:#141310; --aij-rule-strong:#24221e;
  --aij-text-2:#45403a; --aij-text-3:#57514a; --aij-muted:#5e574f; --aij-caption:#5c564e;
  --aij-accent:#315843; --aij-accent-ink:#172b24; --aij-quote:#24221e;
  --aij-rule:#8f887c; --aij-rule-mid:#aaa396; --aij-rule-soft:#cfc6b5;
  --aij-serif:Georgia,"Times New Roman",serif;
  --aij-sans:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  --aij-fs-nameplate:clamp(40px,7vw,96px); --aij-fs-nameplate-compact:clamp(22px,2.4vw,28px);
  --aij-fs-date:clamp(28px,3.6vw,44px); --aij-fs-h1:clamp(34px,5.2vw,64px);
  --aij-fs-h2:clamp(24px,2.8vw,34px); --aij-fs-h3:clamp(19px,1.8vw,22px);
  --aij-fs-section:clamp(20px,2vw,26px); --aij-fs-standfirst:clamp(18px,1.6vw,21px);
  --aij-fs-deck:16px; --aij-fs-body:18px;   --aij-fs-kicker:13px; --aij-fs-meta:13px;
  --aij-fs-caption:14px; --aij-fs-credit:13px; --aij-fs-numeral:clamp(22px,2vw,28px);
  --aij-space-1:4px; --aij-space-2:8px; --aij-space-3:12px; --aij-space-4:16px;
  --aij-space-5:24px; --aij-space-6:32px; --aij-space-7:48px; --aij-space-8:64px;
  --aij-gutter:16px; --aij-cols:4; --aij-max:1240px;
  background:var(--aij-paper); color:var(--aij-ink); color-scheme:light;
}
@media (min-width:480px){.aij{--aij-gutter:20px}}
@media (min-width:740px){.aij{--aij-gutter:32px; --aij-cols:8; --aij-fs-deck:17px}}
@media (min-width:1024px){.aij{--aij-gutter:40px; --aij-cols:12}}
.aij .aij-shell{width:min(var(--aij-max),100% - 2*var(--aij-gutter));margin-inline:auto}
.aij .aij-grid{display:grid;grid-template-columns:repeat(var(--aij-cols),minmax(0,1fr));column-gap:var(--aij-gutter)}
.aij a{color:var(--aij-accent-ink);text-decoration-thickness:1px}
.aij .aij-utility{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--aij-space-3);font:500 var(--aij-fs-meta)/1.5 var(--aij-sans);color:var(--aij-muted);padding:var(--aij-space-4) 0}
.aij .aij-nameplate{font:400 var(--aij-fs-nameplate-compact)/1.1 var(--aij-serif);letter-spacing:-.02em;margin:var(--aij-space-4) 0;color:var(--aij-ink-strong)}
.aij .aij-nameplate a{text-decoration:none}
.aij .aij-masthead:not(.aij-masthead--compact) .aij-nameplate{font-size:var(--aij-fs-nameplate);line-height:.95;letter-spacing:-.055em}
.aij .aij-lead-grid>*{grid-column:1/-1}
.aij .aij-teaser--row>*{grid-column:1}
.aij .aij-teaser--row .aij-thumb{grid-column:2;grid-row:1/span 3;margin:0}
.aij .aij-deck{font:400 var(--aij-fs-standfirst)/1.5 var(--aij-serif);color:var(--aij-text-2);max-width:60ch;margin:var(--aij-space-4) 0 var(--aij-space-7)}
.aij .aij-rule-double{border:0;border-top:4px double var(--aij-rule-strong);margin:var(--aij-space-4) 0}
.aij .aij-kicker{font:700 var(--aij-fs-kicker)/1.4 var(--aij-sans);text-transform:uppercase;letter-spacing:.14em;color:var(--aij-accent);margin:0 0 var(--aij-space-2)}
.aij .aij-date{font:400 var(--aij-fs-date)/1.05 var(--aij-serif);letter-spacing:-.035em;margin:0;color:var(--aij-ink-strong)}
.aij .aij-meta{font:500 var(--aij-fs-meta)/1.5 var(--aij-sans);color:var(--aij-muted);margin:var(--aij-space-2) 0}
.aij .aij-section-title{font:400 var(--aij-fs-section)/1.2 var(--aij-serif);letter-spacing:-.02em;border-top:2px solid var(--aij-rule-strong);padding-top:var(--aij-space-4);margin:var(--aij-space-7) 0 var(--aij-space-4)}
.aij .aij-edition-head{margin-bottom:var(--aij-space-5)}
.aij .aij-teaser{position:relative;padding:var(--aij-space-5) 0;border-bottom:1px solid var(--aij-rule)}
.aij .aij-teaser a::after{content:"";position:absolute;inset:0}
.aij .aij-teaser:focus-within,.aij .aij-teaser:hover{background:var(--aij-tint)}
.aij .aij-teaser h2,.aij .aij-teaser h3{font:400 var(--aij-fs-h1)/1.04 var(--aij-serif);letter-spacing:-.04em;margin:0 0 var(--aij-space-3);text-wrap:balance}
.aij .aij-teaser--secondary h3{font-size:var(--aij-fs-h2)}
.aij .aij-standfirst,.aij .aij-deck{font:400 var(--aij-fs-deck)/1.5 var(--aij-serif);color:var(--aij-text-2);max-width:55ch;text-wrap:pretty}
.aij .aij-thumb{width:100%;aspect-ratio:16/9;object-fit:cover;background:var(--aij-panel);display:block;margin-bottom:var(--aij-space-4)}
.aij .aij-teaser--secondary .aij-thumb{aspect-ratio:3/2}
.aij .aij-thumb--diagram{object-fit:contain;padding:var(--aij-space-4);box-sizing:border-box}
.aij .aij-contents ol{counter-reset:aij-story;list-style:none;padding:0;margin:0}
.aij .aij-contents li{counter-increment:aij-story;border-top:1px solid var(--aij-rule-soft);min-height:44px;display:flex;align-items:center;gap:var(--aij-space-3);padding:var(--aij-space-2) 0}
.aij .aij-contents li::before{content:counter(aij-story);font:400 var(--aij-fs-numeral)/1 var(--aij-serif);color:var(--aij-accent);min-width:1.5em}
.aij .aij-contents-title{font:400 var(--aij-fs-h3)/1.2 var(--aij-serif)}
.aij .aij-secondaries{display:grid;gap:0}
@media (min-width:740px){.aij .aij-secondaries{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--aij-gutter)}}
@media (min-width:1024px){
  .aij .aij-lead-grid{grid-template-columns:repeat(12,minmax(0,1fr))}
  .aij .aij-teaser--lead{grid-column:span 8}
  .aij .aij-contents{grid-column:span 4;border-left:1px solid var(--aij-rule-mid);padding-left:var(--aij-gutter)}
  .aij .aij-secondaries{grid-template-columns:repeat(4,minmax(0,1fr))}
}
.aij .aij-teaser--row{display:grid;grid-template-columns:1fr 96px;gap:var(--aij-space-4);align-items:start;row-gap:var(--aij-space-2);align-content:start}
.aij .aij-teaser--row.aij-teaser--diagram{display:block}
.aij .aij-teaser--row > *{margin-block:0}
.aij .aij-teaser--diagram .aij-thumb{display:none}
@media (min-width:740px){
  .aij .aij-teaser--row{display:block}
  .aij .aij-teaser--diagram .aij-thumb{display:block}
}
.aij .aij-feature-band{background:var(--aij-panel);margin:var(--aij-space-7) calc(-1*var(--aij-gutter));padding:var(--aij-space-6) var(--aij-gutter)}
.aij .aij-feature-layout{display:grid;gap:var(--aij-space-5)}
@media (min-width:740px){.aij .aij-feature-layout{grid-template-columns:1fr 1fr;align-items:center}}
.aij .aij-agent-box{border:1px solid var(--aij-rule-mid);background:var(--aij-note);padding:var(--aij-space-5);margin:var(--aij-space-7) 0}
.aij .aij-archive ol{list-style:none;padding:0}
.aij .aij-archive-edition{border-top:1px solid var(--aij-rule);padding:var(--aij-space-5) 0}
.aij .aij-section-foot{border-top:2px solid var(--aij-rule-strong);padding:var(--aij-space-6) 0 var(--aij-space-8);font:500 var(--aij-fs-meta)/1.5 var(--aij-sans);color:var(--aij-muted)}
.aij .aij-title{font:400 var(--aij-fs-h1)/1.04 var(--aij-serif);letter-spacing:-.04em;text-wrap:balance;margin:0 0 var(--aij-space-3)}
.aij .aij-body{font:400 var(--aij-fs-body)/1.65 var(--aij-serif);max-width:68ch}
.aij .aij-body p{margin:0 0 1em}
.aij .aij-figure{margin:var(--aij-space-5) 0;max-width:960px}
.aij .aij-figure img{width:100%;height:auto;display:block;background:var(--aij-panel)}
.aij .aij-figure--diagram img{object-fit:contain;padding:var(--aij-space-4);box-sizing:border-box}
.aij .aij-caption{display:block;font:400 var(--aij-fs-caption)/1.5 var(--aij-sans);color:var(--aij-caption);margin-top:var(--aij-space-2)}
.aij .aij-credit{display:block;font:500 var(--aij-fs-credit)/1.4 var(--aij-sans);color:var(--aij-muted);margin-top:var(--aij-space-2);overflow-wrap:anywhere}
.aij pre{overflow-x:auto;max-width:100%}
.aij code{overflow-wrap:anywhere}
.aij .aij-scroll{overflow-x:auto;max-width:100%}
.aij .aij-sources ul{list-style:none;padding:0}
.aij .aij-sources li{min-height:44px;display:flex;gap:var(--aij-space-3);align-items:center;border-top:1px solid var(--aij-rule-soft);padding:var(--aij-space-2) 0}
.aij .aij-role{font:700 13px/1 var(--aij-sans);text-transform:uppercase;color:var(--aij-accent);min-width:7em}
.aij .aij-story-nav,.aij .aij-edition-nav{display:grid;gap:var(--aij-space-3);margin:var(--aij-space-7) 0}
@media (min-width:740px){.aij .aij-story-nav,.aij .aij-edition-nav{grid-template-columns:1fr 1fr}}
.aij .aij-story-nav a,.aij .aij-edition-nav a{display:block;min-height:44px;padding:var(--aij-space-3);border:1px solid var(--aij-rule-mid);text-decoration:none}
.aij .aij-method{font:400 var(--aij-fs-meta)/1.6 var(--aij-sans);color:var(--aij-text-3)}
.aij .aij-house-ad{background:var(--aij-note);border:1px solid var(--aij-rule-strong);padding:var(--aij-space-5);margin:var(--aij-space-7) 0}
.aij .aij-house-ad__label{font:700 var(--aij-fs-kicker)/1.4 var(--aij-sans);text-transform:uppercase;letter-spacing:.12em;color:var(--aij-muted);margin:0 0 var(--aij-space-4)}
.aij .aij-house-ad__headline{font:700 22px/1.2 var(--aij-sans);color:var(--aij-ink-strong);margin:0 0 var(--aij-space-3)}
.aij .aij-house-ad__body{font:400 16px/1.5 var(--aij-sans);color:var(--aij-text-2);margin:0 0 var(--aij-space-4)}
.aij .aij-house-ad__cta{display:inline-flex;align-items:center;min-height:44px;padding:0 20px;background:var(--aij-accent-ink);color:var(--aij-paper);text-decoration:none;font:600 14px/1 var(--aij-sans)}
.aij .aij-house-ad__layout{display:grid;gap:var(--aij-space-5)}
@media (min-width:740px){.aij .aij-house-ad__layout{grid-template-columns:200px 1fr}}
.aij .aij-house-ad__image{max-width:200px;border:1px solid var(--aij-rule-mid)}
.aij .lab-note,.aij .experiment-grid{background:var(--aij-note);border:1px solid var(--aij-rule-mid);padding:var(--aij-space-4);margin:var(--aij-space-5) 0;font:400 var(--aij-fs-meta)/1.6 var(--aij-sans)}
.aij blockquote{border-left:4px solid var(--aij-accent);padding-left:var(--aij-space-4);color:var(--aij-quote);font-style:italic;margin:var(--aij-space-5) 0}
.aij .aij-api-table{width:100%;border-collapse:collapse;font:400 var(--aij-fs-meta)/1.5 var(--aij-sans)}
.aij .aij-api-table th,.aij .aij-api-table td{border:1px solid var(--aij-rule-soft);padding:var(--aij-space-2);vertical-align:top}
@media (prefers-reduced-motion:reduce){.aij .aij-teaser:focus-within,.aij .aij-teaser:hover{background:transparent}}

/* Source links fill their 44px row so the tap target is the whole row height (WCAG 2.5.5 / brief: 44x44). */
.aij .aij-sources li a{display:inline-flex;align-items:center;min-height:44px}
