/**
 * PR Desk frontend pages — v4 "Registry" (2026-08-31, 0.9.6); v14 file (0.13.3): boilerplate zone styled wherever it renders (live + preview); Key Facts authorship note.
 *
 * Scopes: .aiprd-pr (channel archive + newsroom shell), .aiprd-pr-microlabel,
 * .aiprd-pr-disclaimer, .aiprd-pr-identity, .aiprd-pr-deksub, .aiprd-pr-body,
 * .aiprd-release-footer, .aiprd-media-contact, .aiprd-newsroom. Nothing here
 * leaks outside them — the --aiprd-* custom properties sit on :root only so
 * the single-post blocks (which have no .aiprd-pr ancestor) can read the same
 * palette instead of repeating literal hexes.
 *
 * NEW FILENAME ON PURPOSE (was pr-pages-v3.css). Cloudflare on this site
 * ignores ?ver= for cached assets — redesigns ship under a new path.
 *
 * v4 direction (owner-approved Registry proposal, 2026-08-31 — evidence from
 * live captures of OpenAI/Anthropic/Stripe/Mistral newsrooms + the wire
 * platforms; proposal artifact linked from CLAUDE.md):
 *
 * - FUNDING IS NEWS, PR IS A RECORD. This channel reads as a light registry /
 *   index, not a magazine. The dark masthead band is DEAD (every top-tier
 *   newsroom measured is light; dark was also the #1 "looks like Funding"
 *   tell). No dark surfaces anywhere on the PR product pages.
 * - NO PHOTO HERO. Paid Featured releases get INLINE emphasis in the list
 *   (accent left bar + mono FEATURED label + larger headline — EIN marks paid
 *   placement inline; Anthropic promotes typographically). When nothing is
 *   Featured the index starts immediately. Never backfill the top with
 *   whatever happens to be newest.
 * - MONO METADATA LAYER (self-hosted JetBrains Mono 400, the family Anthropic
 *   loads on its news page): dates, company microlabels, kicker, FEATURED
 *   flag. This layer — not effects — is what carries the "AI-native" feel.
 * - THE CHANNEL SELLS QUIETLY: one small text link in the masthead, price
 *   only in the bottom teaser (the Newsworthy end of the CTA spectrum, never
 *   the EIN end).
 * - Everything v3 locked stays locked: weights 400/600 only, accent starved
 *   (CTA/hover/Featured flag), 2px radius, 120ms color hovers, serif deks as
 *   the one cross-channel rhyme, per-row dates, no chips, no day groups.
 *
 * Single-post + newsroom + print sections are carried over from v3 UNCHANGED
 * (the release page layout was explicitly approved) — only the archive
 * furniture (masthead, featured, river) is new.
 */

/* ─── Type ──────────────────────────────────────────────────── */

/* Same family Funding self-hosts, under a plugin-scoped name so the two
   stylesheets can never fight over one @font-face definition. */
@font-face {
    font-family: 'AIPRD Inter Tight';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('../fonts/inter-tight-400.woff2') format('woff2');
}
@font-face {
    font-family: 'AIPRD Inter Tight';
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: url('../fonts/inter-tight-600.woff2') format('woff2');
}
/* v4: the metadata layer. One weight — mono emphasis comes from case,
   tracking and color, never from boldness. */
@font-face {
    font-family: 'AIPRD JetBrains Mono';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('../fonts/jetbrains-mono-400.woff2') format('woff2');
}

/* ─── Tokens ────────────────────────────────────────────────── */

:root {
    --aiprd-paper: #fdfdfe;
    --aiprd-ink: #0e0e12;
    --aiprd-body: #212127;
    --aiprd-mute: #62626e;
    --aiprd-faint: #9a9aa6;
    --aiprd-line: #e7e7ee;
    --aiprd-line-soft: #efeff4;
    --aiprd-line-strong: #d9d9e3;
    --aiprd-img-bg: #f2f2f5;

    --aiprd-accent: #6c5ce7;
    --aiprd-accent-hover: #5a4bd4;
    --aiprd-accent-tint: #efedfc;

    --aiprd-sans: 'AIPRD Inter Tight', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
    --aiprd-serif: ui-serif, 'New York', Georgia, 'Times New Roman', serif;
    --aiprd-mono: 'AIPRD JetBrains Mono', ui-monospace, 'SF Mono', Menlo, Consolas, monospace;
}

/* ─── Shared shell ──────────────────────────────────────────── */

.aiprd-pr {
    font-family: var(--aiprd-sans);
    font-size: 16px;
    line-height: 1.5;
    -webkit-font-smoothing: antialiased;
    max-width: 1080px;
    margin: 0 auto;
    padding: 0 24px 72px;
    box-sizing: border-box;
    color: var(--aiprd-ink);
    background: var(--aiprd-paper);
}

.aiprd-pr *,
.aiprd-pr *::before,
.aiprd-pr *::after {
    box-sizing: border-box;
}

/* Defensive resets against theme content styles. :where() keeps specificity
   at (0,1,0) so later single-class component rules win by source order. */
.aiprd-pr :where(h1, h2, h3, p, ol, ul) {
    margin: 0;
    padding: 0;
}
.aiprd-pr a {
    text-decoration: none;
    border: none;
    box-shadow: none;
}
.aiprd-pr img {
    margin: 0;
    max-width: 100%;
    display: block;
}

/* One focus treatment for the whole plugin surface. */
.aiprd-pr a:focus-visible,
.aiprd-pr-identity a:focus-visible,
.aiprd-release-footer a:focus-visible,
.aiprd-newsroom a:focus-visible {
    outline: 2px solid var(--aiprd-accent);
    outline-offset: 3px;
    border-radius: 2px;
}

/* Shared mono microlabel treatment (kicker, company, dates, flags). */
.aiprd-pr-kicker,
.aiprd-pr-rowco,
.aiprd-pr-rowdate,
.aiprd-pr-meta-flag {
    font-family: var(--aiprd-mono);
    font-weight: 400;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

/* ─── Preview notice ────────────────────────────────────────── */

.aiprd-pr-preview-note {
    background: var(--aiprd-accent-tint);
    color: var(--aiprd-accent-hover);
    border: 1px solid var(--aiprd-accent);
    border-radius: 2px;
    font-size: 13px;
    font-weight: 600;
    padding: 10px 14px;
    margin: 16px 0 24px;
}

/* ─── Masthead (light — the dark band is dead, do not resurrect) ── */

.aiprd-pr-masthead {
    padding: 56px 0 36px;
    border-bottom: 1px solid var(--aiprd-line-strong);
}
.aiprd-pr-masthead-inner {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 48px;
}
.aiprd-pr-masthead-text {
    min-width: 0;
}
.aiprd-pr-kicker {
    font-size: 11px;
    color: var(--aiprd-faint);
    letter-spacing: 0.16em;
    margin-bottom: 16px;
}
.aiprd-pr-masthead-h1 {
    font-size: clamp(34px, 4.4vw, 50px);
    line-height: 1.06;
    font-weight: 600;
    letter-spacing: -0.03em;
    color: var(--aiprd-ink);
}
/* Serif dek — the cross-channel rhyme with Funding's masthead dek. */
.aiprd-pr-masthead-dek {
    font-family: var(--aiprd-serif);
    font-size: 17px;
    line-height: 1.6;
    color: var(--aiprd-mute);
    max-width: 560px;
    margin-top: 16px;
}

/* Right column: the channel's only above-the-fold sales moment is ONE quiet
   text link (no price — that lives in the bottom teaser), plus the RSS
   utility. Small, right-aligned, hairline-separated. */
.aiprd-pr-masthead-cta {
    text-align: right;
    flex: 0 0 auto;
}
.aiprd-pr-masthead-link {
    display: inline-block;
    font-size: 14px;
    font-weight: 600;
    color: var(--aiprd-ink);
    transition: color 120ms ease;
}
.aiprd-pr-masthead-link:hover,
.aiprd-pr-masthead-link:focus {
    color: var(--aiprd-accent);
}
.aiprd-pr-util {
    list-style: none;
    margin: 14px 0 0;
    padding: 0;
}
.aiprd-pr-util li {
    border-top: 1px solid var(--aiprd-line);
    margin: 0;
    padding: 0;
}
.aiprd-pr-util a {
    display: block;
    padding: 10px 0 0;
    font-size: 13px;
    color: var(--aiprd-faint);
    transition: color 120ms ease;
}
.aiprd-pr-util a:hover,
.aiprd-pr-util a:focus {
    color: var(--aiprd-accent);
}

/* ─── Index rows (river + featured share one anatomy) ───────── */

/* "All Releases" header: label, hairline. */
.aiprd-pr-riverhead {
    display: flex;
    align-items: center;
    gap: 16px;
    margin: 48px 0 8px;
}
.aiprd-pr-riverhead-t {
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    color: var(--aiprd-faint);
}
.aiprd-pr-riverhead-rule {
    flex: 1;
    height: 1px;
    background: var(--aiprd-line);
}

/* Section header for the newsroom pages. */
.aiprd-pr-day {
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    color: var(--aiprd-faint);
    margin: 32px 0 0;
    padding-bottom: 8px;
    border-bottom: 1px solid var(--aiprd-line);
}
.aiprd-pr-empty {
    font-size: 15px;
    color: var(--aiprd-mute);
    padding: 24px 0;
}

/* Row anatomy: [ mono date column | main ]. No thumbnails since v4 —
   client-supplied art is uneven, and the registry reads by text. The date
   column gives every row the same left reading edge; the date is stacked
   (MMM D / YYYY) so the column stays narrow. */
.aiprd-pr-row {
    display: grid;
    grid-template-columns: 76px minmax(0, 1fr);
    gap: 24px;
    padding: 22px 0;
    border-bottom: 1px solid var(--aiprd-line-soft);
}
.aiprd-pr-rowdate {
    font-size: 11px;
    line-height: 1.6;
    color: var(--aiprd-faint);
    padding-top: 3px;
}
.aiprd-pr-rowdate .aiprd-pr-rowdate-y {
    display: block;
    color: var(--aiprd-faint);
    opacity: 0.75;
}
.aiprd-pr-rowmain {
    min-width: 0;
}
.aiprd-pr-rowmeta {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: 4px 14px;
    margin-bottom: 6px;
    font-size: 11px;
    line-height: 1.4;
}
.aiprd-pr-rowco {
    color: var(--aiprd-mute);
}
/* The one meta element that keeps the accent: it marks a paid placement. */
.aiprd-pr-meta-flag {
    font-size: 11px;
    color: var(--aiprd-accent);
}
.aiprd-pr-headline {
    font-size: 19px;
    line-height: 1.35;
    font-weight: 600;
    letter-spacing: -0.01em;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    overflow: hidden;
}
.aiprd-pr-headline a {
    color: var(--aiprd-ink);
    transition: color 120ms ease;
}
.aiprd-pr-rowx {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    overflow: hidden;
    font-size: 14px;
    line-height: 1.6;
    color: var(--aiprd-mute);
    margin-top: 8px;
}

/* Paid Featured emphasis: accent left bar + mono flag + a step up in size.
   Inline in the index (the EIN pattern) — never a separate photo-hero zone,
   and NEVER backfilled with non-paying releases. */
.aiprd-pr-row--featured {
    border-left: 2px solid var(--aiprd-accent);
    padding-left: 20px;
    margin-left: -22px;
}
.aiprd-pr-row--featured .aiprd-pr-headline {
    font-size: 24px;
    letter-spacing: -0.015em;
    line-height: 1.25;
}
.aiprd-pr-row--featured .aiprd-pr-rowx {
    font-size: 15px;
}

/* ─── Hover: one language, 120ms color to accent (matches Funding) ── */

.aiprd-pr-headline a:hover,
.aiprd-pr-headline a:focus-visible {
    color: var(--aiprd-accent);
}

/* ─── Newsroom leftovers used by AIPRD_Newsroom ─────────────── */

.aiprd-pr-bar {
    width: 32px;
    height: 2px;
    background: var(--aiprd-accent);
    margin-bottom: 16px;
}
.aiprd-pr-h1 {
    font-size: clamp(26px, 3vw, 34px);
    line-height: 1.15;
    font-weight: 600;
    letter-spacing: -0.025em;
    color: var(--aiprd-ink);
}
.aiprd-pr-chip {
    display: inline-block;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: var(--aiprd-accent);
    background: var(--aiprd-accent-tint);
    padding: 3px 8px;
    border-radius: 2px;
    line-height: 1.4;
}

/* ─── Teaser (bottom CTA — the only place a price appears) ──── */

.aiprd-pr-teaser {
    margin-top: 72px;
    border-top: 1px solid var(--aiprd-line);
    padding-top: 24px;
}
.aiprd-pr-teaser-copy {
    font-size: 15px;
    line-height: 1.6;
    color: var(--aiprd-mute);
    margin-bottom: 16px;
    max-width: 560px;
}
.aiprd-pr-cta {
    display: inline-block;
    background: var(--aiprd-accent);
    color: #fff;
    font-size: 15px;
    font-weight: 600;
    line-height: 1;
    letter-spacing: -0.005em;
    padding: 14px 22px;
    border-radius: 2px;
    white-space: nowrap;
    transition: background-color 120ms ease;
}
.aiprd-pr-cta:hover,
.aiprd-pr-cta:focus {
    background: var(--aiprd-accent-hover);
    color: #fff;
}

/* ─── Pagination ────────────────────────────────────────────── */

/* paginate_links(type=list) emits <ul class="page-numbers"> — the container
   carries the same class as the items; scoping to `li >` keeps the pill
   styling off the list itself. */
.aiprd-pr-pagination {
    margin-top: 40px;
}
.aiprd-pr-pagination ul.page-numbers,
.aiprd-pr-pagination ul {
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0;
    padding: 0;
    border: none;
    background: none;
}
.aiprd-pr-pagination li {
    margin: 0;
    padding: 0;
    list-style: none;
}
.aiprd-pr-pagination li > .page-numbers {
    display: inline-block;
    font-size: 14px;
    font-weight: 600;
    color: var(--aiprd-ink);
    border: 1px solid var(--aiprd-line);
    border-radius: 2px;
    padding: 9px 13px;
    line-height: 1;
    background: var(--aiprd-paper);
    transition: color 120ms ease, border-color 120ms ease;
}
.aiprd-pr-pagination li > a.page-numbers:hover,
.aiprd-pr-pagination li > a.page-numbers:focus-visible {
    border-color: var(--aiprd-accent);
    color: var(--aiprd-accent);
}
.aiprd-pr-pagination li > .page-numbers.current {
    background: var(--aiprd-ink);
    border-color: var(--aiprd-ink);
    color: var(--aiprd-paper);
}
.aiprd-pr-pagination li > .page-numbers.dots {
    border-color: transparent;
    background: none;
    color: var(--aiprd-faint);
}

/* ─── Single-post microlabel (top) + disclaimer (bottom) ────── */

/* Deliberately quiet: no background, no border — quieter than the post's
   own meta line. The responsibility copy lives in the bottom disclaimer.
   The v2 decision stands: never resurrect the top disclosure box. */
.aiprd-pr-microlabel {
    font-family: var(--aiprd-sans);
    font-size: 12px;
    line-height: 1.5;
    color: var(--aiprd-faint);
    margin: 0 0 20px;
}
.aiprd-pr-microlabel-tag {
    text-transform: uppercase;
    letter-spacing: 0.08em;
    font-weight: 600;
}
.aiprd-pr-disclaimer {
    font-family: var(--aiprd-sans);
    font-size: 12px;
    line-height: 1.6;
    color: var(--aiprd-faint);
    border-top: 1px solid var(--aiprd-line);
    padding-top: 14px;
    margin: 32px 0 0;
    max-width: 680px;
}

/* ─── Single-post publisher identity block ─────────────────── */

.aiprd-pr-identity {
    font-family: var(--aiprd-sans);
    display: flex;
    align-items: center;
    gap: 14px;
    max-width: 680px;
    padding-bottom: 24px;
    border-bottom: 1px solid var(--aiprd-line);
    margin: 0 0 24px;
}
.aiprd-pr-identity-logo {
    flex: 0 0 48px;
    display: block;
}
.aiprd-pr-identity-logo img,
img.aiprd-pr-identity-img {
    width: 48px;
    height: 48px;
    object-fit: contain;
    border: 1px solid var(--aiprd-line);
    border-radius: 2px;
    background: #fff;
    display: block;
    margin: 0;
}
.aiprd-pr-identity-text {
    min-width: 0;
}
.aiprd-pr-identity-name {
    font-size: 16px;
    font-weight: 600;
    letter-spacing: -0.01em;
    color: var(--aiprd-ink);
    text-decoration: none;
    transition: color 120ms ease;
}
a.aiprd-pr-identity-name:hover,
a.aiprd-pr-identity-name:focus-visible {
    color: var(--aiprd-accent);
}
.aiprd-pr-identity-line {
    font-size: 13px;
    color: var(--aiprd-faint);
    margin: 3px 0 0;
}

/* ─── Single-post dek + body measure ───────────────────────── */

/* Serif dek: same rhyme as the masthead dek and Funding's. The body below
   deliberately keeps the theme's own font — a press release should read
   like every other article on the site. */
.aiprd-pr-deksub {
    font-family: var(--aiprd-serif);
    font-size: 20px;
    line-height: 1.55;
    font-weight: 400;
    color: var(--aiprd-mute);
    max-width: 680px;
    margin: 0 0 28px;
}
.aiprd-pr-body {
    max-width: 680px;
    font-size: 17px;
    line-height: 1.7;
}
.aiprd-pr-body p,
.aiprd-pr-body li {
    font-size: 17px;
    line-height: 1.7;
}

/* Wire dateline, opening the body: "SAN FRANCISCO, August 28, 2026
   /AIPressRoom/ --". AIPRD_Publisher writes it into post_content as a bare
   <strong> at publish time, so it is targeted structurally rather than by
   class — that way every ALREADY-published release picks the styling up
   too (their post_content is frozen and carries no class to hook).

   It stays in the body's own face: this is the one element every newswire
   keeps verbatim through every redesign (Business Wire carried its 40-year-
   old form untouched through a ground-up 2025 rebuild), so it reads as part
   of the release, never as plugin chrome. */
.aiprd-pr-body > p:first-child > strong:first-child {
    color: var(--aiprd-ink);
    letter-spacing: 0.005em;
}

/* ─── Single-post structured footer ────────────────────────── */

.aiprd-release-footer {
    font-family: var(--aiprd-sans);
    max-width: 680px;
    margin-top: 48px;
    padding-top: 24px;
    border-top: 1px solid var(--aiprd-line);
}
.aiprd-release-footer-heading {
    font-size: 17px;
    font-weight: 600;
    letter-spacing: -0.01em;
    color: var(--aiprd-ink);
    margin: 0 0 8px;
}
.aiprd-release-boilerplate {
    font-size: 15px;
    line-height: 1.65;
    color: var(--aiprd-body);
    margin: 0 0 16px;
}
/* Media Contact (0.13.0): rendered with the Key Facts classes, so it
   inherits the kicker + hairline rows. Only the spacing lives here. */
.aiprd-media-contact {
    margin: 32px 0 0;
}
.aiprd-media-contact-logo {
    display: none;
}
.aiprd-newsroom-link {
    margin: 20px 0 0;
}
.aiprd-newsroom-link a {
    font-size: 14px;
    font-weight: 600;
    color: var(--aiprd-accent);
    text-decoration: none;
    transition: color 120ms ease;
}
.aiprd-newsroom-link a:hover,
.aiprd-newsroom-link a:focus-visible {
    color: var(--aiprd-accent-hover);
}

/* ─── Newsroom pages ────────────────────────────────────────── */

.aiprd-newsroom .aiprd-newsroom-head {
    margin: 32px 0;
    padding-bottom: 32px;
    border-bottom: 1px solid var(--aiprd-line);
}
.aiprd-newsroom-head-row {
    display: flex;
    gap: 24px;
    align-items: flex-start;
}
.aiprd-newsroom-logo {
    flex: 0 0 88px;
    border: 1px solid var(--aiprd-line);
    border-radius: 2px;
    padding: 8px;
    background: #fff;
}
.aiprd-newsroom-logo img {
    width: 100%;
    height: 70px;
    object-fit: contain;
}
.aiprd-newsroom-head-text {
    flex: 1 1 auto;
    min-width: 0;
}
.aiprd-newsroom-head-text .aiprd-pr-h1 {
    margin-top: 8px;
}
.aiprd-newsroom-url {
    margin-top: 8px;
    font-size: 14px;
}
.aiprd-newsroom-url a {
    color: var(--aiprd-mute);
    text-decoration: underline;
    text-decoration-color: var(--aiprd-line);
    text-underline-offset: 3px;
    overflow-wrap: anywhere;
    transition: color 120ms ease;
}
.aiprd-newsroom-url a:hover,
.aiprd-newsroom-url a:focus-visible {
    color: var(--aiprd-accent);
}
.aiprd-newsroom-boilerplate {
    font-family: var(--aiprd-serif);
    margin-top: 16px;
    font-size: 16px;
    line-height: 1.65;
    color: var(--aiprd-mute);
    max-width: 680px;
}

/* ─── Responsive ────────────────────────────────────────────── */

@media (max-width: 900px) {
    .aiprd-pr-masthead {
        padding: 44px 0 32px;
    }
    .aiprd-pr-masthead-inner {
        gap: 32px;
    }
    .aiprd-pr-riverhead {
        margin-top: 40px;
    }
    .aiprd-pr-row {
        gap: 20px;
    }
    .aiprd-pr-row--featured .aiprd-pr-headline {
        font-size: 22px;
    }
}

@media (max-width: 640px) {
    .aiprd-pr {
        padding: 0 16px 56px;
    }
    .aiprd-pr-masthead {
        padding: 32px 0 24px;
    }
    .aiprd-pr-masthead-inner {
        flex-direction: column;
        align-items: stretch;
        gap: 20px;
    }
    .aiprd-pr-masthead-dek {
        font-size: 16px;
    }
    .aiprd-pr-masthead-cta {
        text-align: left;
    }
    .aiprd-pr-riverhead {
        margin: 32px 0 4px;
    }
    /* Date joins the meta row on one line — a 76px column is too dear on a
       small screen. */
    .aiprd-pr-row {
        grid-template-columns: minmax(0, 1fr);
        gap: 0;
        padding: 18px 0;
    }
    .aiprd-pr-rowdate {
        padding-top: 0;
        order: -1;
        margin-bottom: 4px;
    }
    .aiprd-pr-rowdate .aiprd-pr-rowdate-y {
        display: inline;
        opacity: 1;
    }
    .aiprd-pr-rowdate .aiprd-pr-rowdate-y::before {
        content: "\00a0";
    }
    .aiprd-pr-row--featured {
        padding-left: 14px;
        margin-left: -16px;
    }
    .aiprd-pr-row--featured .aiprd-pr-headline {
        font-size: 20px;
    }
    .aiprd-pr-headline {
        font-size: 17px;
    }
    .aiprd-pr-rowx {
        -webkit-line-clamp: 1;
        line-clamp: 1;
    }
    .aiprd-pr-teaser {
        margin-top: 48px;
    }
    .aiprd-pr-deksub {
        font-size: 18px;
    }
    .aiprd-media-contact-row {
        flex-direction: column;
        gap: 2px;
    }
    .aiprd-media-contact-lab {
        flex-basis: auto;
    }
}

@media (max-width: 720px) {
    .aiprd-newsroom-head-row {
        flex-direction: column;
    }
    .aiprd-newsroom-logo {
        flex-basis: auto;
        width: 88px;
    }
}

/* ─── Print ─────────────────────────────────────────────────── */

/* A release that prints cleanly is a cheap, real "of record" signal — the
   legacy wires all surface Print/PDF actions for exactly this reason. Only
   the plugin's own blocks are addressed; the theme owns the rest of the page. */
@media print {
    .aiprd-pr-identity,
    .aiprd-pr-deksub,
    .aiprd-pr-body,
    .aiprd-release-footer,
    .aiprd-pr-disclaimer,
    .aiprd-pr-microlabel {
        max-width: none;
        color: #000;
    }
    .aiprd-pr-identity {
        border-bottom: 1px solid #999;
        break-after: avoid;
    }
    .aiprd-pr-body p,
    .aiprd-pr-body li {
        font-size: 11pt;
        line-height: 1.5;
        orphans: 3;
        widows: 3;
    }
    /* Expose destinations that a printed page would otherwise swallow. */
    .aiprd-pr-body a::after,
    .aiprd-media-contact-val a::after {
        content: " (" attr(href) ")";
        font-size: 9pt;
        word-break: break-all;
    }
    .aiprd-media-contact,
    .aiprd-release-footer {
        break-inside: avoid;
        border-color: #999;
    }
    .aiprd-media-contact-head {
        background: none;
        border-bottom: 1px solid #999;
    }
    .aiprd-media-contact-val a,
    .aiprd-newsroom-link a {
        color: #000;
    }
    /* Channel furniture never belongs on paper. */
    .aiprd-pr-masthead,
    .aiprd-pr-teaser,
    .aiprd-pr-pagination,
    .aiprd-pr-preview-note,
    .aiprd-pr-util,
    .aiprd-newsroom-link {
        display: none;
    }
}

@media (prefers-reduced-motion: reduce) {
    .aiprd-pr *,
    .aiprd-pr-identity *,
    .aiprd-release-footer *,
    .aiprd-newsroom * {
        transition: none !important;
        animation: none !important;
    }
}

/* =============================================================
 * Key Facts + More on AIPressRoom (0.11.0)
 *
 * Both sit between the release body and the disclosure. They are
 * the two things a wire service structurally cannot give a
 * client: a checkable fact table in the same shape the Funding
 * channel uses, and this newsroom's own coverage of the company.
 *
 * Typography follows the locked v3/v4 discipline: two weights
 * only (400/600), mono reserved for the metadata layer, accent
 * starved. No card, no shadow — hairlines, like the rest.
 * ============================================================= */

.aiprd-facts {
    max-width: 680px;
    margin: 40px auto 0;
    padding-top: 22px;
    border-top: 1px solid var(--aiprd-rule, #e6e6ea);
}

.aiprd-facts-head,
.aiprd-related-head {
    font-family: 'AIPRD JetBrains Mono', ui-monospace, SFMono-Regular, Menlo, monospace;
    font-size: 11px;
    font-weight: 400;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--aiprd-muted, #85858f);
    margin: 0 0 14px;
}

.aiprd-facts-list {
    margin: 0;
    padding: 0;
}

.aiprd-facts-row {
    display: grid;
    grid-template-columns: 150px minmax(0, 1fr);
    gap: 16px;
    padding: 9px 0;
    border-bottom: 1px solid var(--aiprd-rule-soft, #f0f0f3);
}

.aiprd-facts-row:last-child {
    border-bottom: 0;
}

.aiprd-facts-row dt {
    font-family: 'AIPRD JetBrains Mono', ui-monospace, SFMono-Regular, Menlo, monospace;
    font-size: 11px;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: var(--aiprd-muted, #85858f);
    margin: 0;
    padding-top: 2px;
}

.aiprd-facts-row dd {
    margin: 0;
    font-size: 15px;
    line-height: 1.5;
    color: var(--aiprd-ink, #14141a);
}

.aiprd-facts-row dd a {
    color: inherit;
    text-decoration: none;
    border-bottom: 1px solid var(--aiprd-rule, #e6e6ea);
    transition: color 120ms ease, border-color 120ms ease;
}

.aiprd-facts-row dd a:hover {
    color: var(--aiprd-accent, #6c5ce7);
    border-bottom-color: var(--aiprd-accent, #6c5ce7);
}

@media (max-width: 560px) {
    .aiprd-facts-row {
        grid-template-columns: minmax(0, 1fr);
        gap: 3px;
    }
}

/* ── More on AIPressRoom ─────────────────────────────────────── */

.aiprd-related {
    max-width: 680px;
    margin: 34px auto 0;
    padding-top: 22px;
    border-top: 1px solid var(--aiprd-rule, #e6e6ea);
}

.aiprd-related-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.aiprd-related-list li {
    margin: 0;
    border-bottom: 1px solid var(--aiprd-rule-soft, #f0f0f3);
}

.aiprd-related-list li:last-child {
    border-bottom: 0;
}

.aiprd-related-list a {
    display: grid;
    grid-template-columns: 110px minmax(0, 1fr) auto;
    gap: 16px;
    align-items: baseline;
    padding: 11px 0;
    text-decoration: none;
    color: inherit;
    transition: color 120ms ease;
}

.aiprd-related-list a:hover .aiprd-related-title {
    color: var(--aiprd-accent, #6c5ce7);
}

.aiprd-related-kind,
.aiprd-related-date {
    font-family: 'AIPRD JetBrains Mono', ui-monospace, SFMono-Regular, Menlo, monospace;
    font-size: 10.5px;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: var(--aiprd-muted, #85858f);
    white-space: nowrap;
}

.aiprd-related-title {
    font-size: 15px;
    font-weight: 600;
    line-height: 1.4;
    letter-spacing: -0.01em;
    color: var(--aiprd-ink, #14141a);
    transition: color 120ms ease;
}

@media (max-width: 560px) {
    .aiprd-related-list a {
        grid-template-columns: minmax(0, 1fr);
        gap: 3px;
    }

    .aiprd-related-date {
        display: none;
    }
}

@media print {
    .aiprd-related {
        display: none;
    }
}

/* ─── 0.12.0: release pages on the classic-no-sidebar template ──────
   AIPRD_Publisher writes _bimber_single_options.template so the headline
   sits ABOVE the cover instead of being burned into a full-viewport
   background. bimber's classic template then renders the cover across the
   full 1152px grid while the title column is 758px (.entry-header-01).
   Cap cover and body to the title column — same rule, same width, same
   !important reason as the Funding Deal Card (the Customizer's Additional
   CSS pins .single-post .entry-content to 800px with !important, and only
   !important beats !important). Scoped by .aiprd-release (post_class
   filter) so the Interviews/Funding pages are untouched. Inside that
   column our own blocks drop their 680px measure: one column, one width,
   the way the Deal Card body already reads. */

.entry-tpl-classic-nosidebar.aiprd-release .entry-header,
.entry-tpl-classic-nosidebar.aiprd-release .entry-featured-media-main,
.entry-tpl-classic-nosidebar.aiprd-release .entry-content {
    /* 0.12.5 (owner's call, 2026-09-12): title, cover AND body on one
       758px column — the Funding Deal Card configuration (758/758/758).
       0.12.2–0.12.4 tried a 680 body under a 758 title (The Verge) and
       then 680 for all (NYT); the theme's `.g1-content-narrow > div`
       centring made the narrow body look indented, and the owner wants
       the three edges identical at the theme's column width. Known
       trade-off, stated once: ~88 characters a line at 18px, above the
       65–75 most publishers run. Owner accepted it. */
    max-width: 758px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}
.entry-tpl-classic-nosidebar.aiprd-release .entry-featured-media-main img {
    width: 100%;
    height: auto;
}
.entry-tpl-classic-nosidebar.aiprd-release .aiprd-pr-identity,
.entry-tpl-classic-nosidebar.aiprd-release .aiprd-pr-deksub,
.entry-tpl-classic-nosidebar.aiprd-release .aiprd-pr-body,
.entry-tpl-classic-nosidebar.aiprd-release .aiprd-release-footer,
.entry-tpl-classic-nosidebar.aiprd-release .aiprd-facts,
.entry-tpl-classic-nosidebar.aiprd-release .aiprd-related,
.entry-tpl-classic-nosidebar.aiprd-release .aiprd-pr-disclaimer {
    /* 0.12.5: fill the column. !important because the theme's
       `.g1-content-narrow > div` caps children at 662px and centres them,
       and the Customizer's `.entry-content > *` rule is !important too. */
    max-width: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}



/* ─── 0.12.1 ─────────────────────────────────────────────────────────
   Small print and the dek are <div>s now, so the Customizer's
   `.entry-content p` rule (18px Inter !important) no longer flattens
   them; the sizes below are stated explicitly anyway. */

.aiprd-pr-disclaimer,
.aiprd-pr-identity-line {
    font-size: 12px !important;
    line-height: 1.6 !important;
}
.aiprd-pr-deksub {
    font-size: 20px !important;
    line-height: 1.5 !important;
    margin: 0 0 24px !important;
}

/* Share bar lifted out of the top of the body (AddToAny prepends it at
   the_content priority 98) and placed after the last paragraph, before
   Key Facts: a quiet row on a hairline, the way the Interviews pages end. */
.aiprd-pr-share {
    max-width: 680px;
    margin: 8px 0 0;
    padding: 16px 0 0;
    border-top: 1px solid var(--aiprd-line);
}
.entry-tpl-classic-nosidebar.aiprd-release .aiprd-pr-share {
    max-width: none !important;
}
.aiprd-pr-share .addtoany_share_save_container {
    margin: 0 !important;
}

/* Wire-style section heads inside the body ("About fundcraft", "Media
   Contact") — promoted from run-in text by AIPRD_Html::promote_subheads. */
.aiprd-pr-body h3 {
    font-family: var(--aiprd-sans);
    font-size: 17px;
    font-weight: 600;
    line-height: 1.4;
    letter-spacing: -0.01em;
    color: var(--aiprd-ink);
    margin: 36px 0 8px;
}
.aiprd-pr-body h3 + p {
    margin-top: 0 !important;
}

/* Newsroom link as the last Key Facts row. */
.aiprd-facts-row-newsroom dd a {
    color: var(--aiprd-accent, #6c5ce7);
    border-bottom: 0;
    font-weight: 600;
}

/* ─── 0.12.2 — measured against NYT / Bloomberg / Reuters / FT ──────
   Body: 18px / 1.6 / 1.4em paragraph gap on a 680px measure (~72
   characters). The Customizer sets 18px / 1.8 / 2em site-wide with
   !important on `.single-post .entry-content p`; these carry !important
   and one more class, so they win on release pages only. Title and cover
   stay on the 758px column — a title wider than the body is The Verge's
   pattern; a body wider than the title is nobody's. (Reverses the 0.12.0
   "one column, one width" call: 758px at 18px ran ~88 characters a line.) */

.entry-tpl-classic-nosidebar.aiprd-release .entry-content p,
.entry-tpl-classic-nosidebar.aiprd-release .entry-content li {
    font-size: 18px !important;
    line-height: 1.6 !important;
    margin-bottom: 1.4em !important;
}
.entry-tpl-classic-nosidebar.aiprd-release .entry-content li {
    margin-bottom: 0.5em !important;
}

/* Dek in the theme's subtitle slot: 19px grey sentence, not a second
   headline (the theme's default there is a ~26px h2). */
.entry-tpl-classic-nosidebar.aiprd-release .entry-subtitle {
    font-family: var(--aiprd-sans) !important;
    font-size: 19px !important;
    font-weight: 400 !important;
    line-height: 1.45 !important;
    letter-spacing: -0.005em !important;
    color: #55555e !important; /* 0.12.3: one step darker than --aiprd-muted; 7 lines on a phone read thin */
    margin: 4px 0 18px !important;
    max-width: none;
}

/* Share buttons under the byline (theme slot), four services. */
.aiprd-pr-share-top {
    margin: 14px 0 20px; /* 0.12.3: the icons sat 0px above the cover */
}
.aiprd-pr-share-top .addtoany_share_save_container {
    margin: 0 !important;
}
.aiprd-pr-share-top .a2a_kit a {
    padding: 0 10px 0 0 !important;
}
.aiprd-pr-share-top .a2a_kit .a2a_svg {
    width: 22px !important;
    height: 22px !important;
}

/* Room before the site footer: the theme's after-content stack is gone
   on release pages, so the disclaimer was the last thing before the footer. */
.entry-tpl-classic-nosidebar.aiprd-release .aiprd-pr-disclaimer {
    margin-bottom: 56px !important;
}

/* One section-head style for Key Facts / About / Media Contact / More on:
   the mono kicker the row labels already use. The theme's h3 rule was
   winning over .aiprd-facts-head (KEY FACTS rendered ~28px light grey) and
   over .aiprd-release-footer-heading (About rendered 24px bold). */
.entry-content .aiprd-facts-head,
.entry-content .aiprd-related-head,
.entry-content .aiprd-release-footer-heading,
.entry-content .aiprd-media-contact-head {
    font-family: 'AIPRD JetBrains Mono', ui-monospace, SFMono-Regular, Menlo, monospace !important;
    font-size: 11px !important;
    font-weight: 400 !important;
    letter-spacing: 0.09em !important;
    text-transform: uppercase !important;
    color: var(--aiprd-muted, #85858f) !important;
    line-height: 1.4 !important;
}
.entry-content .aiprd-facts-head,
.entry-content .aiprd-related-head,
.entry-content .aiprd-release-footer-heading {
    margin: 0 0 14px !important;
}

/* In-body wire subheads: pin against the theme's h3 sizes. */
.entry-content .aiprd-pr-body h3 {
    font-family: var(--aiprd-sans) !important;
    font-size: 17px !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
    margin: 36px 0 8px !important;
}

/* ─── 0.13.2 — boilerplate zone ─────────────────────────────────────
   The About sections the release came with, printed after Key Facts as
   fine print: complete and verbatim (the wires run them in full), but at
   15px and one shade lighter, with the same mono kicker the data rows
   use. The client's own email set them smaller than the body too. */
.entry-tpl-classic-nosidebar.aiprd-release .aiprd-pr-boilerplate {
    max-width: none !important;
    margin: 40px 0 0 !important;
    padding-top: 24px;
    border-top: 1px solid var(--aiprd-line);
}
.entry-content .aiprd-pr-boilerplate h3 {
    font-family: 'AIPRD JetBrains Mono', ui-monospace, SFMono-Regular, Menlo, monospace !important;
    font-size: 11px !important;
    font-weight: 400 !important;
    letter-spacing: 0.09em !important;
    text-transform: uppercase !important;
    color: var(--aiprd-muted, #85858f) !important;
    line-height: 1.4 !important;
    margin: 28px 0 8px !important;
}
.entry-content .aiprd-pr-boilerplate h3:first-child {
    margin-top: 0 !important;
}
.entry-tpl-classic-nosidebar.aiprd-release .aiprd-pr-boilerplate p {
    font-size: 15px !important;
    line-height: 1.6 !important;
    color: #3f3f47 !important;
    margin-bottom: 1em !important;
}
.aiprd-pr-boilerplate a {
    color: inherit;
    text-decoration: none;
    border-bottom: 1px solid var(--aiprd-rule, #e6e6ea);
}
.aiprd-pr-boilerplate a:hover {
    color: var(--aiprd-accent, #6c5ce7);
    border-bottom-color: var(--aiprd-accent, #6c5ce7);
}

/* ─── 0.13.3 ─────────────────────────────────────────────────────────
   Boilerplate zone rules without the classic-template scope, so the
   wizard preview (no .aiprd-release article) shows the same thing. */
.aiprd-pr-boilerplate {
    margin: 40px 0 0;
    padding-top: 24px;
    border-top: 1px solid var(--aiprd-line);
}
.aiprd-pr-boilerplate h3 {
    font-family: 'AIPRD JetBrains Mono', ui-monospace, SFMono-Regular, Menlo, monospace !important;
    font-size: 11px !important;
    font-weight: 400 !important;
    letter-spacing: 0.09em !important;
    text-transform: uppercase !important;
    color: var(--aiprd-muted, #85858f) !important;
    line-height: 1.4 !important;
    margin: 28px 0 8px !important;
}
.aiprd-pr-boilerplate h3:first-child {
    margin-top: 0 !important;
}
.aiprd-pr-boilerplate p {
    font-size: 15px !important;
    line-height: 1.6 !important;
    color: #3f3f47 !important;
    margin: 0 0 1em !important;
}

/* Key Facts authorship note. */
.aiprd-facts-note {
    font-family: var(--aiprd-sans);
    font-size: 12px;
    line-height: 1.6;
    color: var(--aiprd-faint, #9a9aa3);
    margin: 10px 0 0;
}
