/* rdlEditorialV2 (2026-10-18) — warm editorial theme for every page EXCEPT the homepage.
   Cream canvas · serif display (weight 400, negative tracking) · humanist sans body ·
   accent = the homepage rotating colour (--accent-rot, one of 5, picked per page load) · dark product bands + dark footer.
   Loaded after each page's inline CSS and only active when <body> has class "rdl-ed".
   Rollback = remove the <!--RDL:editorial--> block from a page (or delete this file). */

html body.rdl-ed, html body.rdl-ed.light {
  /* surfaces */
  --void: #faf9f5; --void-2: #f5f0e8;
  --panel: #efe9de; --panel-solid: #efe9de;
  --glass: #f5f0e8; --glass-edge: #e6dfd8; --grid-line: transparent;
  /* text */
  --text: #141413; --text-2: #3d3d3a; --text-3: #6c6a64; --text-4: #8e8b82;
  /* the old neon palette collapses onto one warm accent + quiet companions */
  --cyan: var(--ed-accent); --cyan-dim: color-mix(in srgb, var(--ed-accent) 45%, transparent); --cyan-glow: transparent;
  --red: var(--ed-accent); --red-glow: transparent;
  --gold: #b9853f; --gold-glow: transparent;
  --violet: #6c6a64; --violet-glow: transparent;
  --green: #5db872;
  --grad-holo: linear-gradient(var(--ed-accent), var(--ed-accent));
  --grad-red: linear-gradient(var(--ed-accent), var(--ed-accent));
  --grad-gold: linear-gradient(#b9853f, #b9853f);
  --grad-cyan: linear-gradient(var(--ed-accent), var(--ed-accent));
  /* type */
  --f-display: 'Source Serif 4', 'Tiempos Headline', Georgia, 'Times New Roman', serif;
  --f-body: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  --f-mono: 'JetBrains Mono', ui-monospace, monospace;
  /* local tokens */
  --ed-accent: var(--accent-rot, #0891B2);
  --ed-accent-active: color-mix(in srgb, var(--ed-accent) 78%, #000);
  --ed-accent-soft: color-mix(in srgb, var(--ed-accent) 55%, #fff);
  --ed-accent-band: color-mix(in srgb, var(--ed-accent) 82%, #000);
  --ed-card: #efe9de; --ed-cream-strong: #e8e0d2; --ed-hair: #e6dfd8;
  --ed-dark: #181715; --ed-dark-2: #252320; --ed-on-dark: #faf9f5; --ed-on-dark-2: #a09d96;
  background: #faf9f5 !important; color: #3d3d3a;
  font-family: var(--f-body);
}
html body.rdl-ed ::selection { background: color-mix(in srgb, var(--ed-accent) 22%, transparent); }

/* kill the cyberpunk atmosphere */
html body.rdl-ed .grid-floor, html body.rdl-ed canvas#bg, html body.rdl-ed .scanline, html body.rdl-ed .noise { display: none !important; }
html body.rdl-ed *:not(nav.hud, nav.hud *), html body.rdl-ed *:not(nav.hud *)::before, html body.rdl-ed *:not(nav.hud *)::after { text-shadow: none !important; }
html body.rdl-ed .theme-toggle { display: none !important; }

/* typography: serif display, regular weight, negative tracking */
html body.rdl-ed h1, html body.rdl-ed h2, html body.rdl-ed h3,
html body.rdl-ed .v-h1, html body.rdl-ed .section-title, html body.rdl-ed .art-h1 {
  font-family: var(--f-display) !important; font-weight: 400 !important; color: #141413;
}
html body.rdl-ed h1, html body.rdl-ed .v-h1, html body.rdl-ed .art-h1 { letter-spacing: -0.025em !important; line-height: 1.06 !important; }
html body.rdl-ed h2, html body.rdl-ed .section-title { letter-spacing: -0.018em !important; line-height: 1.12 !important; }
html body.rdl-ed h3 { letter-spacing: -0.01em !important; line-height: 1.25 !important; }
html body.rdl-ed h4, html body.rdl-ed h5, html body.rdl-ed h6 { font-family: var(--f-body) !important; font-weight: 500 !important; color: #141413; }
html body.rdl-ed p:not(nav.hud *), html body.rdl-ed li:not(nav.hud *) { color: #3d3d3a; }
/* gradient "holo" words become plain accent text (no animation) */
html body.rdl-ed .holo, html body.rdl-ed .v-h1 .holo, html body.rdl-ed .section-title .holo {
  background: none !important; -webkit-text-fill-color: var(--ed-accent) !important; color: var(--ed-accent) !important; animation: none !important; font-style: italic;
}

html body.rdl-ed .art-content a, html body.rdl-ed p a { color: var(--ed-accent); text-underline-offset: 3px; }

/* header (nav.hud) is intentionally NOT restyled: it stays exactly as before */
/* header keeps its original look: restore the original light-mode tokens inside nav.hud */
html body.rdl-ed nav.hud, html body.rdl-ed.light nav.hud {
  --void:#ffffff; --void-2:#fafafa; --panel:rgba(255,255,255,0.72); --panel-solid:#ffffff;
  --glass:rgba(15,30,61,0.03); --glass-edge:rgba(15,30,61,0.12); --grid-line:rgba(15,30,61,0.05);
  --text:#0f1e3d; --text-2:#3d4e6f; --text-3:#6a7894; --text-4:#9aa3b5;
  --cyan:#00c8e5; --cyan-dim:rgba(0,200,229,0.65); --cyan-glow:rgba(0,200,229,0.42);
  --red:#ff2d55; --red-glow:rgba(255,45,85,0.42); --gold:#ff9500; --gold-glow:rgba(255,149,0,0.45);
  --violet:#a855f7; --violet-glow:rgba(168,85,247,0.45); --green:#00d97e;
  --grad-holo:linear-gradient(120deg,#00c8e5 0%,#a855f7 50%,#ff2d55 100%);
  --grad-red:linear-gradient(135deg,#ff2d55 0%,#b00030 100%); --grad-gold:linear-gradient(135deg,#ffc83d 0%,#c8901a 100%);
  --grad-cyan:linear-gradient(135deg,#00f0ff 0%,#0080b0 100%);
  --f-display:'Chakra Petch',sans-serif; --f-body:'Space Grotesk',sans-serif; --f-mono:'JetBrains Mono',monospace;
  font-family:'Space Grotesk',sans-serif;
}

/* buttons: accent primary, cream secondary, 8px radius, sans 14/500 */
html body.rdl-ed .btn-neon:not(nav.hud .btn-neon), html body.rdl-ed .btn-ghost:not(nav.hud .btn-ghost) {
  font-family: var(--f-body) !important; font-size: 14px !important; font-weight: 500 !important; letter-spacing: 0 !important;
  text-transform: none !important; border-radius: 8px !important; box-shadow: none !important; transform: none !important;
  min-height: 40px; padding: 10px 20px !important;
}
html body.rdl-ed .btn-neon:not(nav.hud .btn-neon) { background: var(--ed-accent) !important; border: 1px solid var(--ed-accent) !important; color: #fff !important; }
html body.rdl-ed .btn-neon:not(nav.hud .btn-neon):active { background: var(--ed-accent-active) !important; border-color: var(--ed-accent-active) !important; }
html body.rdl-ed .btn-neon:not(nav.hud .btn-neon)::before { display: none !important; }
html body.rdl-ed .btn-ghost:not(nav.hud .btn-ghost) { background: #faf9f5 !important; border: 1px solid #e6dfd8 !important; color: #141413 !important; }

/* eyebrows / badges: quiet pills */
html body.rdl-ed .eyebrow, html body.rdl-ed .v-eyebrow, html body.rdl-ed .post-tag {
  background: #efe9de !important; border: 0 !important; color: #3d3d3a !important; border-radius: 9999px !important;
  font-family: var(--f-body) !important; font-size: 12px !important; font-weight: 500 !important; letter-spacing: .12em !important;
}
html body.rdl-ed .eyebrow::before, html body.rdl-ed .v-eyebrow::before { background: var(--ed-accent) !important; box-shadow: none !important; animation: none !important; }

/* hero */
html body.rdl-ed .v-hero { background: #faf9f5 !important; }
html body.rdl-ed .v-hero::before, html body.rdl-ed .v-hero::after { display: none !important; }
html body.rdl-ed .v-sub { color: #3d3d3a !important; }

/* stats strip: cream card, serif numbers */
html body.rdl-ed .v-stats-grid { background: #efe9de !important; border: 0 !important; border-radius: 12px !important; backdrop-filter: none !important; box-shadow: none !important; }
html body.rdl-ed .v-stat-n, html body.rdl-ed .v-prod-stat, html body.rdl-ed .ag-stat {
  font-family: var(--f-display) !important; font-weight: 400 !important; background: none !important;
  -webkit-text-fill-color: #141413 !important; color: #141413 !important; letter-spacing: -0.02em !important;
}
html body.rdl-ed .v-stat-l { font-family: var(--f-body) !important; color: #6c6a64 !important; letter-spacing: .08em !important; }

/* content cards: cream cards, no border, no glow, 12px */
html body.rdl-ed .v-feat, html body.rdl-ed .v-use, html body.rdl-ed .v-nri-card, html body.rdl-ed .v-prod-card,
html body.rdl-ed .prob-card, html body.rdl-ed .uni-card, html body.rdl-ed .vert-card,
html body.rdl-ed .ag-card, html body.rdl-ed .arch-card, html body.rdl-ed .cmp-card, html body.rdl-ed .featured-card,
html body.rdl-ed .post-card, html body.rdl-ed .panel, html body.rdl-ed .faq-item, html body.rdl-ed .art-callout,
html body.rdl-ed .v-case, html body.rdl-ed .pricing-card {
  background: #efe9de !important; border: 0 !important; border-radius: 12px !important;
  box-shadow: none !important; backdrop-filter: none !important;
}
html body.rdl-ed .v-feat h3, html body.rdl-ed .v-use h3, html body.rdl-ed .v-nri-card h3, html body.rdl-ed .v-prod-card h3 {
  font-family: var(--f-body) !important; font-size: 18px !important; font-weight: 500 !important; letter-spacing: 0 !important;
}
html body.rdl-ed .faq-item summary { font-family: var(--f-body) !important; font-weight: 500 !important; color: #141413 !important; }

/* tables (compare pages) */
html body.rdl-ed table { background: #faf9f5 !important; border-color: #e6dfd8 !important; }
html body.rdl-ed th { background: #efe9de !important; color: #141413 !important; font-family: var(--f-body) !important; }
html body.rdl-ed td { border-color: #e6dfd8 !important; color: #3d3d3a !important; }
html body.rdl-ed td.rv, html body.rdl-ed td.cell-y { color: #141413 !important; font-weight: 500; }

/* pricing block: dark surface = the featured signal, price in serif */
html body.rdl-ed .v-pricing-card {
  background: #181715 !important; border: 0 !important; border-radius: 12px !important; backdrop-filter: none !important;
}
html body.rdl-ed .v-pricing-card h2, html body.rdl-ed .v-pricing-card .price { color: #faf9f5 !important; -webkit-text-fill-color: #faf9f5 !important; background: none !important; animation: none !important; }
html body.rdl-ed .v-pricing-card .price { font-family: var(--f-display) !important; font-weight: 400 !important; }
html body.rdl-ed .v-pricing-card p, html body.rdl-ed .v-pricing-card .price-per { color: #a09d96 !important; }
html body.rdl-ed .v-pricing-card .holo { -webkit-text-fill-color: var(--ed-accent-soft) !important; color: var(--ed-accent-soft) !important; }
html body.rdl-ed .v-pricing-card .btn-ghost { background: #252320 !important; border-color: #252320 !important; color: #faf9f5 !important; }

/* closing CTA: full-bleed accent card */
html body.rdl-ed .v-cta-card, html body.rdl-ed .cta-card {
  background: var(--ed-accent-band) !important; border: 0 !important; border-radius: 12px !important; box-shadow: none !important; backdrop-filter: none !important;
}
html body.rdl-ed .v-cta-card::before, html body.rdl-ed .v-cta-card::after, html body.rdl-ed .cta-card::before, html body.rdl-ed .cta-card::after { display: none !important; }
html body.rdl-ed .v-cta-card h2, html body.rdl-ed .v-cta-card p, html body.rdl-ed .cta-card h2, html body.rdl-ed .cta-card p { color: #fff !important; }
html body.rdl-ed .v-cta-card .holo, html body.rdl-ed .cta-card .holo { -webkit-text-fill-color: #fff !important; color: #fff !important; }
html body.rdl-ed .v-cta-card .btn-neon, html body.rdl-ed .cta-card .btn-neon { background: #faf9f5 !important; border-color: #faf9f5 !important; color: #141413 !important; }
html body.rdl-ed .v-cta-card .btn-ghost, html body.rdl-ed .cta-card .btn-ghost { background: transparent !important; border-color: rgba(255,255,255,.6) !important; color: #fff !important; }

/* footer: dark, never inverts */
html body.rdl-ed .ft { background: #181715 !important; border-top: 0 !important; }
html body.rdl-ed .ft a, html body.rdl-ed .ft p, html body.rdl-ed .ft div, html body.rdl-ed .ft-m, html body.rdl-ed .ft-col a, html body.rdl-ed .ft-legal a, html body.rdl-ed .ft-bot { color: #a09d96 !important; }
html body.rdl-ed .ft a:hover { color: #faf9f5 !important; padding-left: 0 !important; }
html body.rdl-ed .ft h4, html body.rdl-ed .ft h5, html body.rdl-ed .ft-col h5, html body.rdl-ed .ft-corp b, html body.rdl-ed .ft .brand-name { color: #faf9f5 !important; font-family: var(--f-body) !important; }
html body.rdl-ed .ft-corp { background: #252320 !important; border: 0 !important; font-family: var(--f-body) !important; }
html body.rdl-ed .ft-bot { border-top-color: #2e2c28 !important; }

/* breadcrumbs, article meta */
html body.rdl-ed .breadcrumb, html body.rdl-ed .breadcrumb a, html body.rdl-ed .art-meta-top { color: #6c6a64 !important; font-family: var(--f-body) !important; }
html body.rdl-ed .art-content { color: #3d3d3a; }
html body.rdl-ed .art-content code, html body.rdl-ed code { font-family: var(--f-mono); background: #efe9de; border-radius: 4px; padding: 1px 5px; }
html body.rdl-ed pre { background: #181715 !important; color: #faf9f5 !important; border-radius: 12px !important; }

/* motion: no neon pulses */
html body.rdl-ed .v-eyebrow, html body.rdl-ed .holo, html body.rdl-ed .bulb { animation: none !important; }

/* ---- page-family components (articles, compare pages, about) ---- */
html body.rdl-ed::after, html body.rdl-ed .art-hero::before, html body.rdl-ed .v-hero::before { display: none !important; }
html body.rdl-ed .hc-row { background: #efe9de !important; border-color: #e6dfd8 !important; }

/* articles */
html body.rdl-ed .art-lede { color: #3d3d3a !important; }
html body.rdl-ed .art-callout { background: #efe9de !important; border: 0 !important; }
html body.rdl-ed .art-callout-title { color: var(--ed-accent-active) !important; font-family: var(--f-body) !important; }
html body.rdl-ed .art-cta { background: #181715 !important; border: 0 !important; border-radius: 12px !important; }
html body.rdl-ed .art-cta h3 { color: #faf9f5 !important; }
html body.rdl-ed .art-cta p { color: #a09d96 !important; }
html body.rdl-ed .art-cta .btn-ghost { background: #252320 !important; border-color: #252320 !important; color: #faf9f5 !important; }
html body.rdl-ed .related-grid .hub-card { background: #efe9de !important; border: 0 !important; border-radius: 12px !important; }
html body.rdl-ed .related-grid .hub-card:hover { box-shadow: 0 1px 3px rgba(20,20,19,.08) !important; transform: none !important; }
html body.rdl-ed .related-grid .hub-card-title { font-family: var(--f-display) !important; font-weight: 400 !important; }
html body.rdl-ed .related-grid .hub-card-arrow, html body.rdl-ed .hub-card-arrow { color: var(--ed-accent) !important; font-family: var(--f-body) !important; }
html body.rdl-ed .related-grid .hub-card-tag { background: rgba(250,249,245,.92) !important; color: #141413 !important; border: 0 !important; }
html body.rdl-ed .yspan.y i { background: var(--ed-accent) !important; border-color: var(--ed-accent) !important; box-shadow: none !important; }

/* compare pages */
html body.rdl-ed .rvx-verdict { background: #efe9de !important; border: 0 !important; border-radius: 12px !important; }
html body.rdl-ed .rvx-verdict::before { background: var(--ed-accent) !important; }
html body.rdl-ed .rvx-verdict h4, html body.rdl-ed .rvx-best>div.win b, html body.rdl-ed .rvx-price b, html body.rdl-ed .rvx-pick.win h5 { color: var(--ed-accent-active) !important; font-family: var(--f-body) !important; }
html body.rdl-ed .rvx-best>div { background: #faf9f5 !important; border-color: #e6dfd8 !important; box-shadow: none !important; }
html body.rdl-ed .rvx-best>div.win { border-color: var(--ed-accent) !important; }
html body.rdl-ed .rvx-chip.r { color: var(--ed-accent-active) !important; border-color: var(--ed-accent) !important; box-shadow: none !important; }
html body.rdl-ed .rvx-num { background: var(--ed-accent) !important; border-color: var(--ed-accent) !important; color: #fff !important; font-family: var(--f-body) !important; }
html body.rdl-ed .rvx-cmp th { background: #efe9de !important; color: #6c6a64 !important; font-family: var(--f-body) !important; }
html body.rdl-ed .rvx-cmp th.rv { background: #e8e0d2 !important; color: #141413 !important; }
html body.rdl-ed .rvx-cmp td.rv { background: #f5f0e8 !important; border-left-color: #e6dfd8 !important; }
html body.rdl-ed .rvx-cmp tbody tr:hover td, html body.rdl-ed .rvx-cmp tbody tr:hover td.rv { background: #f5f0e8 !important; }
html body.rdl-ed .rvx-price>div, html body.rdl-ed .rvx-pick { background: #efe9de !important; border: 0 !important; box-shadow: none !important; }
html body.rdl-ed .rvx-price .p { font-family: var(--f-display) !important; font-weight: 400 !important; }
html body.rdl-ed .rvx-price .c, html body.rdl-ed .rvx-best b, html body.rdl-ed .rvx-cmp th { font-family: var(--f-body) !important; }
html body.rdl-ed .rvx-pick.win { background: #181715 !important; }
html body.rdl-ed .rvx-pick.win p { color: #a09d96 !important; }
html body.rdl-ed .rvx-pick.win h5 { color: #faf9f5 !important; }
html body.rdl-ed .rvx-pick.win h5::before { background: var(--ed-accent) !important; box-shadow: none !important; }
html body.rdl-ed .cmp-table th { background: #efe9de !important; }
html body.rdl-ed .cmp-table tr:hover td { background: #f5f0e8 !important; }
html body.rdl-ed .v-cmp-fair-card, html body.rdl-ed .cmp-fair-item { background: #efe9de !important; border: 0 !important; }
html body.rdl-ed .cmp-fair-ico { background: #e8e0d2 !important; }
html body.rdl-ed .pr-vid { box-shadow: none !important; }
html body.rdl-ed .pr-vid::after { display: none !important; }

/* about page */
html body.rdl-ed .ab-btn { font-family: var(--f-body) !important; font-weight: 500 !important; font-size: 14px !important; border-radius: 8px !important; padding: 11px 20px !important; }
html body.rdl-ed .ab-btn-p { background: var(--ed-accent) !important; color: #fff !important; box-shadow: none !important; transform: none !important; }
html body.rdl-ed .ab-btn-g { background: #faf9f5 !important; border-color: #e6dfd8 !important; color: #141413 !important; }
html body.rdl-ed .ab-card { background: #efe9de !important; border: 0 !important; border-radius: 12px !important; backdrop-filter: none !important; }
html body.rdl-ed .ab-card:hover { transform: none !important; box-shadow: none !important; }
html body.rdl-ed .ab-card .ic { background: #e8e0d2 !important; }
html body.rdl-ed .ab-card h3 { font-family: var(--f-body) !important; font-weight: 500 !important; font-size: 18px !important; }
html body.rdl-ed .ab-band { background: var(--ed-accent-band) !important; border-radius: 12px !important; }
html body.rdl-ed .ab-band h2 { color: #fff !important; letter-spacing: -0.018em !important; }
html body.rdl-ed .ab-band p { color: rgba(255,255,255,.88) !important; }
html body.rdl-ed .ab-band .ab-btn-p { background: #faf9f5 !important; color: #141413 !important; }
html body.rdl-ed .ft, html body.rdl-ed footer.ft, html body.rdl-ed .ft * { text-shadow: none !important; }

/* rdlAiArtV1: article covers are inline illustrations (accent follows the page colour) */
html body.rdl-ed .art-cover { border: 0 !important; border-radius: 12px !important; background: #efe9de !important; height: auto !important; aspect-ratio: 1200 / 630; max-height: 470px; }
html body.rdl-ed .art-cover::after { display: none !important; }
html body.rdl-ed .art-cover .thumb-svg svg { display: block; width: 100%; height: 100%; }
html body.rdl-ed .blg-img img, html body.rdl-ed .hub-card-img img { background: #efe9de; }
