/* SERPIFAI Insights Canonical Article Foundation V1.1.0 — Phase 3B. Legacy hub, authority-library, pre-master-hero and stale featured-framework selectors removed. */
/* SERPIFAI Insights consolidated candidate V1.0.0. Whole-source order retained. */

/* BEGIN SOURCE /assets/css/insights-v1.css | SHA-256 580b090aec5d34cd804277084a0caa39c0f10592f96240c6328284cadad5c467 */
:root {
  --ri-bg: #04101d;
  --ri-bg-deep: #020914;
  --ri-panel: #071827;
  --ri-panel-2: #0a2234;
  --ri-line: rgba(129, 205, 233, .17);
  --ri-line-strong: rgba(125, 227, 245, .36);
  --ri-text: #f8fbfd;
  --ri-muted: #aebfca;
  --ri-soft: #d9e4ee;
  --ri-cyan: #7de3f5;
  --ri-cyan-strong: #53d8f4;
  --ri-mint: #66e3bd;
  --ri-violet: #9a7cff;
  --ri-gold: #e7bd72;
  --ri-danger: #ff9baa;
  --ri-radius: 24px;
  --ri-shadow: 0 28px 90px rgba(0, 0, 0, .34);
  --ri-reading: 760px;
}

html { scroll-padding-top: 96px; }
body.insights-page {
  background:
    radial-gradient(circle at 15% 0%, rgba(83, 216, 244, .08), transparent 28rem),
    radial-gradient(circle at 88% 12%, rgba(154, 124, 255, .08), transparent 30rem),
    var(--ri-bg);
  color: var(--ri-text);
  overflow-x: hidden;
}

.insights-page * { box-sizing: border-box; }
.insights-page img,
.insights-page svg { max-width: 100%; }
.insights-page a { text-underline-offset: .18em; }
.insights-page main { min-height: 70vh; }

/* Explicit heading contrast: no dependence on older heading patches. */
.insights-page :is(h1,h2,h3,h4,h5,h6),
.insights-page :is(h1,h2,h3,h4,h5,h6) * {
  color: var(--ri-text) !important;
  -webkit-text-fill-color: currentColor !important;
  background: none !important;
  background-image: none !important;
  opacity: 1 !important;
  text-shadow: none !important;
}
.insights-page :is(.ri-eyebrow,.ri-label,.ri-kicker) {
  color: var(--ri-cyan) !important;
  -webkit-text-fill-color: currentColor !important;
}

.ri-shell {
  width: min(calc(100% - 40px), 1200px);
  margin-inline: auto;
}
.ri-section {
  position: relative;
  padding: clamp(72px, 9vw, 128px) 0;
}
.ri-section--compact { padding: clamp(52px, 7vw, 88px) 0; }
.ri-section--line { border-top: 1px solid var(--ri-line); }
.ri-eyebrow {
  margin: 0 0 14px;
  font-size: .76rem;
  font-weight: 850;
  letter-spacing: .16em;
  text-transform: uppercase;
}
.ri-card-title {
  margin: 0;
  font-size: clamp(1.25rem, 2vw, 1.7rem) !important;
  line-height: 1.18 !important;
  letter-spacing: -.025em !important;
}
.ri-muted { color: var(--ri-muted); }
.ri-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 50px;
  padding: 13px 20px;
  border: 1px solid var(--ri-line-strong);
  border-radius: 13px;
  text-decoration: none;
  color: var(--ri-text);
  font-weight: 800;
  transition: transform .22s ease, border-color .22s ease, background-color .22s ease;
}
.ri-button:hover { transform: translateY(-2px); border-color: var(--ri-cyan); }
.ri-button--primary {
  color: #03111c;
  background: linear-gradient(110deg, var(--ri-cyan), var(--ri-mint));
  border-color: transparent;
}
.ri-button:focus-visible,
.ri-toc a:focus-visible {
  outline: 3px solid rgba(125,227,245,.7);
  outline-offset: 4px;
}
.ri-lens {
  position: absolute;
  inset: 50% auto auto 50%;
  width: min(76%, 360px);
  aspect-ratio: 1;
  transform: translate(-50%,-50%);
}
.ri-lens__ring {
  position: absolute;
  inset: var(--ring, 0);
  border: 1px solid rgba(125,227,245,.25);
  border-radius: 50%;
}
.ri-lens__ring:nth-child(2) { --ring: 15%; }
.ri-lens__ring:nth-child(3) { --ring: 30%; }
.ri-lens__ring:nth-child(4) { --ring: 43%; border-color: var(--ri-cyan); box-shadow: 0 0 36px rgba(83,216,244,.13); }
.ri-lens__label {
  position: absolute;
  padding: 8px 10px;
  border-radius: 10px;
  background: rgba(6,25,39,.94);
  border: 1px solid var(--ri-line);
  color: var(--ri-soft);
  font-size: .7rem;
  font-weight: 800;
}
.ri-lens__label:nth-of-type(5) { top: 2%; left: 50%; transform: translateX(-50%); }
.ri-lens__label:nth-of-type(6) { top: 50%; right: -12%; transform: translateY(-50%); }
.ri-lens__label:nth-of-type(7) { bottom: 1%; left: 50%; transform: translateX(-50%); }
.ri-lens__label:nth-of-type(8) { top: 50%; left: -12%; transform: translateY(-50%); }

.ri-meta-line {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 16px;
  margin: 18px 0;
  color: #8fa6b5;
  font-size: .78rem;
}
.ri-meta-line span { display: inline-flex; align-items: center; gap: 7px; }
.ri-meta-line span::before {
  content: "";
  width: 5px; height: 5px; border-radius: 50%; background: var(--ri-cyan);
}

.ri-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin: 28px 0 30px;
}
.ri-card {
  position: relative;
  min-height: 390px;
  display: flex;
  flex-direction: column;
  padding: 25px;
  border: 1px solid var(--ri-line);
  border-radius: 22px;
  background:
    radial-gradient(circle at 100% 0%, rgba(154,124,255,.09), transparent 16rem),
    rgba(7,24,39,.78);
  text-decoration: none;
  overflow: hidden;
  transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;
}
.ri-card:hover {
  transform: translateY(-7px);
  border-color: rgba(125,227,245,.52);
  box-shadow: 0 24px 55px rgba(0,0,0,.28);
}
.ri-card[hidden] { display: none; }

.ri-cta {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 30px;
  align-items: center;
  padding: clamp(30px, 5vw, 56px);
  border: 1px solid var(--ri-line-strong);
  border-radius: 28px;
  background:
    radial-gradient(circle at 85% 0%, rgba(154,124,255,.12), transparent 23rem),
    linear-gradient(135deg, rgba(8,34,51,.98), rgba(5,18,31,.98));
  box-shadow: var(--ri-shadow);
}
.ri-cta p { max-width: 700px; margin: 12px 0 0; color: var(--ri-muted); }

/* Article pages */
.ri-breadcrumbs {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-bottom: 28px;
  color: #8da5b4;
  font-size: .78rem;
}
.ri-breadcrumbs a { color: var(--ri-cyan); text-decoration: none; }
.ri-article-title {
  max-width: 980px;
  margin: 0;
  font-size: clamp(2.8rem, 6vw, 6.4rem) !important;
  line-height: 1 !important;
  letter-spacing: -.06em !important;
  text-wrap: balance;
}
.ri-article-deck {
  max-width: 830px;
  margin: 24px 0 0;
  color: var(--ri-soft);
  font-size: clamp(1.08rem, 1.8vw, 1.34rem);
  line-height: 1.7;
}
.ri-article-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 22px;
  margin-top: 28px;
  color: #8ea5b5;
  font-size: .8rem;
}
.ri-article-layout {
  display: grid;
  grid-template-columns: 240px minmax(0, var(--ri-reading)) 1fr;
  gap: clamp(34px, 5vw, 70px);
  align-items: start;
}
.ri-toc {
  position: sticky;
  top: 98px;
  padding: 18px 0;
  border-top: 1px solid var(--ri-line);
  border-bottom: 1px solid var(--ri-line);
}
.ri-toc b {
  display: block;
  margin-bottom: 11px;
  color: var(--ri-text);
  font-size: .72rem;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.ri-toc nav { display: grid; gap: 4px; }
.ri-toc a {
  display: block;
  padding: 7px 9px;
  border-left: 2px solid transparent;
  color: #8fa7b6;
  text-decoration: none;
  font-size: .76rem;
  line-height: 1.35;
}
.ri-toc a.active {
  color: var(--ri-text);
  border-left-color: var(--ri-cyan);
  background: rgba(125,227,245,.045);
}
.ri-article {
  min-width: 0;
}
.ri-article section {
  scroll-margin-top: 105px;
  padding: 0 0 60px;
}
.ri-article section + section {
  padding-top: 14px;
  border-top: 1px solid var(--ri-line);
}
.ri-article h2 {
  margin: 0 0 22px;
  font-size: clamp(2rem, 3vw, 3rem) !important;
  line-height: 1.08 !important;
  letter-spacing: -.04em !important;
}
.ri-article h3 {
  margin: 32px 0 12px;
  font-size: clamp(1.3rem, 2vw, 1.7rem) !important;
  line-height: 1.2 !important;
}
.ri-article p,
.ri-article li,
.ri-article dd {
  color: #bdcbd4;
  font-size: 1.02rem;
  line-height: 1.84;
}
.ri-article p { margin: 0 0 22px; }
.ri-article strong { color: var(--ri-text); }
.ri-article a { color: var(--ri-cyan); }
.ri-article ul,
.ri-article ol { padding-left: 1.3rem; }
.ri-article li { margin-bottom: 10px; }
.ri-callout {
  margin: 30px 0;
  padding: 24px;
  border: 1px solid var(--ri-line-strong);
  border-radius: 18px;
  background: linear-gradient(135deg, rgba(12,39,57,.92), rgba(7,24,39,.86));
}
.ri-callout p:last-child { margin-bottom: 0; }
.ri-callout__label {
  display: block;
  margin-bottom: 8px;
  color: var(--ri-cyan);
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.ri-table-wrap {
  margin: 30px 0;
  overflow-x: auto;
  border: 1px solid var(--ri-line);
  border-radius: 18px;
}
.ri-table {
  width: 100%;
  min-width: 680px;
  border-collapse: collapse;
  background: rgba(6,22,35,.72);
}
.ri-table th,
.ri-table td {
  padding: 15px 16px;
  border-bottom: 1px solid var(--ri-line);
  text-align: left;
  vertical-align: top;
}
.ri-table th {
  color: var(--ri-cyan);
  font-size: .72rem;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.ri-table td { color: #bdcbd4; font-size: .87rem; line-height: 1.55; }
.ri-table tr:last-child td { border-bottom: 0; }
.ri-quote {
  margin: 34px 0;
  padding: 0 0 0 24px;
  border-left: 3px solid var(--ri-cyan);
}
.ri-quote p {
  color: var(--ri-text);
  font-size: clamp(1.35rem, 2.4vw, 2rem);
  line-height: 1.45;
  letter-spacing: -.025em;
}
.ri-side-note {
  position: sticky;
  top: 98px;
  padding: 20px;
  border: 1px solid var(--ri-line);
  border-radius: 18px;
  background: rgba(7,24,39,.6);
}
.ri-side-note b { display: block; color: var(--ri-text); margin-bottom: 8px; }
.ri-side-note p { margin: 0; color: var(--ri-muted); font-size: .8rem; line-height: 1.6; }

.ri-footer {
  border-top: 1px solid var(--ri-line);
  padding: 52px 0 24px;
  background: var(--ri-bg-deep);
}
.ri-footer__grid {
  display: grid;
  grid-template-columns: 1.5fr repeat(3, .7fr);
  gap: 38px;
}
.ri-footer__brand img { width: 210px; height: auto; }
.ri-footer__brand p { max-width: 430px; color: #8ea5b5; }
.ri-footer nav { display: grid; align-content: start; gap: 10px; }
.ri-footer nav h2 {
  margin: 0 0 6px;
  color: #7f98a8 !important;
  font-size: .72rem !important;
  text-transform: uppercase;
  letter-spacing: .13em;
}
.ri-footer nav a { color: #bdcbd4; text-decoration: none; font-size: .84rem; }
.ri-footer nav a:hover { color: var(--ri-text); }
.ri-footer__bottom {
  margin-top: 34px;
  padding-top: 18px;
  border-top: 1px solid var(--ri-line);
  display: flex;
  justify-content: space-between;
  gap: 20px;
  color: #738d9e;
  font-size: .73rem;
}

@media (max-width: 1080px) {
  .ri-article-layout { grid-template-columns: minmax(0, var(--ri-reading)) 1fr; justify-content: center; }
  .ri-toc { display: none; }
}
@media (max-width: 760px) {
  .ri-shell { width: min(calc(100% - 28px), 1200px); }
  .ri-article-layout,
.ri-cta { grid-template-columns: 1fr; }
  .ri-side-note { position: static; }
  .ri-footer__grid { grid-template-columns: 1fr; }
  .ri-footer__bottom { flex-direction: column; }
}
@media (max-width: 430px) {
  .ri-article-title { font-size: 2.55rem !important; }
  .ri-button { width: 100%; }
}
@media (prefers-reduced-motion: reduce) {
  .ri-card,
.ri-button { transition: none; }
}

/* Homepage integration */
.serpifai-home-insights__heading {
  display: grid;
  grid-template-columns: 1.15fr .85fr;
  gap: 50px;
  align-items: end;
  margin-bottom: 34px;
}
.serpifai-home-insights__heading p { margin: 0; color: #aebfca; line-height: 1.7; }
.serpifai-home-insights__all { margin: 28px 0 0; text-align: right; }
@media(max-width:760px){
  .serpifai-home-insights__heading { grid-template-columns: 1fr; gap: 18px; }
  .serpifai-home-insights__all { text-align: left; }
}

/* SERPIFAI INSIGHTS HERO VISIBILITY BOOST V1.5.1 */






/* SERPIFAI V1.13.2 founder author links */
.ri-article-meta a,
.ri-author-note a{color:inherit;text-decoration-color:rgba(105,227,255,.52);text-underline-offset:4px}.ri-article-meta a:hover,
.ri-author-note a:hover{color:#7fe7ff}
/* END SOURCE /assets/css/insights-v1.css */

/* BEGIN SOURCE /assets/css/insights-heading-seo-v1-0-1.css | SHA-256 6da2488597e059a53bc938033afee46c05ddc344682a87364c3cc5432e93be26 */
/*
SERPIFAI Research & Insights — Heading Scale and SEO Refinement V1.0.1

Purpose:
- Bring Insights typography closer to the established commercial-site scale.
- Improve scanning, line length and mobile readability.
- Keep one clear H1 per page.
- Prevent oversized editorial headings from dominating the viewport.
*/

.insights-page .ri-card-title {
    max-width: 34ch;
    font-size: clamp(1.12rem, 1.55vw, 1.46rem) !important;
    line-height: 1.24 !important;
    letter-spacing: -0.022em !important;
}

.insights-page .ri-article-title {
    max-width: 22ch;
    font-size: clamp(2.35rem, 4.7vw, 4.45rem) !important;
    line-height: 1.03 !important;
    letter-spacing: -0.052em !important;
}

.insights-page .ri-article h2 {
    max-width: 31ch;
    font-size: clamp(1.72rem, 2.65vw, 2.38rem) !important;
    line-height: 1.12 !important;
    letter-spacing: -0.034em !important;
}

.insights-page .ri-article h3 {
    max-width: 38ch;
    font-size: clamp(1.14rem, 1.7vw, 1.42rem) !important;
    line-height: 1.24 !important;
    letter-spacing: -0.018em !important;
}

@media (max-width: 760px) {

    .insights-page .ri-article-title {
        max-width: 23ch;
        font-size: clamp(2.15rem, 10vw, 3.25rem) !important;
    }

    .insights-page .ri-article h2 {
        max-width: 34ch;
        font-size: clamp(1.55rem, 6.8vw, 2rem) !important;
    }
}
/* END SOURCE /assets/css/insights-heading-seo-v1-0-1.css */

/* BEGIN SOURCE /assets/css/insights-editorial-layout-v1-0-3.css | SHA-256 39818f052fd0cc5ba97a76f51dcc564c1fd832d4478672d80e582151f8e97a31 */
.insights-page {
  overflow-x: clip;
}

/* ------------------------------------------------------------------
   INSIGHTS HUB — FEATURED FRAMEWORK
   ------------------------------------------------------------------ */

/* ------------------------------------------------------------------
   INSIGHTS HUB — FLAGSHIP SERIES CARDS
   ------------------------------------------------------------------ */

.insights-page .ri-card-media__index {
  position: absolute;
  top: .85rem;
  left: .9rem;
  z-index: 3;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 2rem;
  min-height: 2rem;
  padding: .35rem .55rem;
  border: 1px solid rgba(125, 227, 245, .28);
  border-radius: 999px;
  background: rgba(3, 13, 25, .74);
  color: #dffaff;
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .08em;
  backdrop-filter: blur(10px);
}

/* Retire the empty/overlay art boxes from the earlier patch. */

/* ------------------------------------------------------------------
   ARTICLE HERO — COMPACT FULL-BLEED BACKGROUND
   ------------------------------------------------------------------ */

.insights-page .ri-article-hero__background {
  position: absolute;
  inset: 0;
  z-index: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 70% center;
  opacity: .38;
  filter: saturate(.84) contrast(1.08) brightness(.72);
  transform: scale(1.015);
}

.insights-page--competition .ri-article-hero__background { object-position: 76% center; }
.insights-page--evidence .ri-article-hero__background { object-position: 66% center; }
.insights-page--investment .ri-article-hero__background { object-position: 58% center; }

/* Retire every earlier split/cinematic hero implementation. */
.insights-page .ri-article-hero__visual,
.insights-page .ri-article-hero__image {
  display: none !important;
}

/* ------------------------------------------------------------------
   ARTICLE BODY — CONTROLLED WIDTH
   ------------------------------------------------------------------ */
.insights-page .ri-section > .ri-article-layout {
  width: min(calc(100% - 40px), 1200px) !important;
  max-width: 1200px !important;
  margin-inline: auto !important;
  padding-inline: 0 !important;
  display: grid !important;
  grid-template-columns: minmax(11rem, 14rem) minmax(0, 47.5rem) minmax(10rem, 1fr) !important;
  gap: clamp(2rem, 4vw, 4.25rem) !important;
  align-items: start !important;
}

.insights-page .ri-article-layout > *,
.insights-page .ri-article,
.insights-page .ri-article section,
.insights-page .ri-article .ri-table-wrap,
.insights-page .ri-article .ri-article-showcase {
  min-width: 0;
  max-width: 100%;
}

.insights-page .ri-article {
  width: 100%;
  margin: 0;
}

.insights-page .ri-article section {
  width: 100%;
}

.insights-page .ri-table-wrap {
  width: 100% !important;
  max-width: 100% !important;
  overflow-x: auto !important;
  overscroll-behavior-inline: contain;
}

.insights-page .ri-table {
  width: 100% !important;
  min-width: 42rem;
}

.insights-page .ri-article-showcase {
  position: relative;
  width: 100%;
  margin: 2rem 0 2.65rem;
  overflow: hidden;
  border: 1px solid rgba(125, 227, 245, .18);
  border-radius: 1.45rem;
  background: rgba(5, 18, 31, .92);
  box-shadow: 0 24px 60px rgba(0, 0, 0, .28), inset 0 0 0 1px rgba(255, 255, 255, .025);
}

.insights-page .ri-article-showcase img {
  display: block;
  width: 100%;
  height: auto;
  max-height: 42rem;
  object-fit: contain;
  background: #020b16;
}

.insights-page .ri-article-showcase figcaption {
  padding: .9rem 1.1rem 1rem;
  color: #c8d7e1;
  font-size: .88rem;
  line-height: 1.5;
}

@media (max-width: 1080px) {
  .insights-page .ri-section > .ri-article-layout {
    grid-template-columns: minmax(0, 47.5rem) minmax(10rem, 1fr) !important;
    justify-content: center !important;
  }

  .insights-page .ri-article-layout > .ri-toc {
    display: none !important;
  }
}

@media (max-width: 820px) {
  .insights-page .ri-section > .ri-article-layout {
    width: min(calc(100% - 28px), 47.5rem) !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 2rem !important;
  }

  .insights-page .ri-article-layout > .ri-side-note {
    position: static !important;
  }
}

@media (max-width: 720px) {

  .insights-page .ri-article-hero__background {
    object-position: 68% center;
    opacity: .28;
  }

  .insights-page .ri-table {
    min-width: 36rem;
  }
}

/* SERPIFAI INSIGHTS HERO VISIBILITY BOOST V1.5.1 */
/* END SOURCE /assets/css/insights-editorial-layout-v1-0-3.css */

/* BEGIN SOURCE /assets/css/insights-flagship-editorial-v1-1-0.css | SHA-256 7bf4dc63355ac512f7920c0931901e8cad796acdbd1790a89e64374678a6f3d1 */
.insights-page .ri-article {
  --ri-editorial-panel: rgba(8, 24, 39, .74);
  --ri-editorial-panel-strong: rgba(9, 31, 48, .92);
  --ri-editorial-line: rgba(125, 227, 245, .2);
  --ri-editorial-line-strong: rgba(125, 227, 245, .42);
  --ri-editorial-cyan: #7de3f5;
  --ri-editorial-mint: #66e3bd;
  --ri-editorial-violet: #a78bfa;
  --ri-editorial-gold: #f3c96b;
}

.insights-page .ri-article section {
  scroll-margin-top: 7rem;
}

.insights-page .ri-article h2 {
  max-width: 30ch;
}

.insights-page .ri-article h3 {
  max-width: 40ch;
}

.ri-stage-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .55rem;
  margin: 0 0 2rem;
}

.ri-stage-strip span {
  display: grid;
  gap: .2rem;
  min-height: 4.35rem;
  padding: .9rem 1rem;
  border: 1px solid var(--ri-editorial-line);
  border-radius: 1rem;
  background: rgba(5, 20, 33, .58);
  color: #9fb4c1;
  font-size: .74rem;
  line-height: 1.35;
}

.ri-stage-strip span strong {
  color: #eef8fc;
  font-size: .85rem;
}

.ri-stage-strip span[aria-current="step"] {
  border-color: var(--ri-editorial-line-strong);
  background: linear-gradient(135deg, rgba(32, 102, 125, .32), rgba(42, 29, 99, .28));
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.03);
}

.ri-executive-answer,
.ri-key-takeaway,
.ri-decision-rule,
.ri-method-note,
.ri-download-card,
.ri-author-note,
.ri-worked-example {
  margin: 1.8rem 0 2.2rem;
  border: 1px solid var(--ri-editorial-line);
  border-radius: 1.15rem;
  background: var(--ri-editorial-panel);
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .025);
}

.ri-executive-answer,
.ri-key-takeaway,
.ri-decision-rule,
.ri-method-note,
.ri-author-note {
  padding: 1.35rem 1.45rem;
}

.ri-executive-answer {
  border-color: var(--ri-editorial-line-strong);
  background: linear-gradient(135deg, rgba(9, 42, 59, .9), rgba(17, 25, 57, .82));
}

.ri-box-label,
.ri-example-label {
  display: block;
  margin-bottom: .55rem;
  color: var(--ri-editorial-cyan);
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .12em;
  text-transform: uppercase;
}

.ri-executive-answer p,
.ri-key-takeaway p,
.ri-decision-rule p,
.ri-method-note p,
.ri-author-note p {
  margin: 0;
}

.ri-executive-answer p {
  color: #f2f8fb;
  font-size: 1.06rem;
  line-height: 1.7;
}

.ri-decision-rule {
  border-left: 4px solid var(--ri-editorial-cyan);
}

.ri-decision-rule strong,
.ri-key-takeaway strong {
  color: #fff;
}

.ri-decision-tree {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .7rem;
  margin: 1.7rem 0 2.2rem;
}

.ri-decision-tree .ri-tree-node {
  position: relative;
  min-height: 8.6rem;
  padding: 1.05rem;
  border: 1px solid var(--ri-editorial-line);
  border-radius: 1rem;
  background: rgba(6, 22, 36, .72);
}

.ri-decision-tree .ri-tree-node:not(:last-child)::after {
  content: "\2192";
  position: absolute;
  top: 50%;
  right: -.62rem;
  z-index: 2;
  transform: translateY(-50%);
  color: var(--ri-editorial-cyan);
  font-weight: 900;
}

.ri-decision-tree b {
  display: block;
  margin-bottom: .35rem;
  color: #fff;
}

.ri-decision-tree p {
  margin: 0;
  color: #aebfca;
  font-size: .86rem;
  line-height: 1.55;
}

.ri-worked-example {
  overflow: hidden;
}

.ri-worked-example__header {
  padding: 1.15rem 1.35rem;
  border-bottom: 1px solid var(--ri-editorial-line);
  background: linear-gradient(135deg, rgba(69, 46, 145, .22), rgba(6, 34, 50, .45));
}

.ri-worked-example__header h3 {
  margin: 0;
}

.ri-worked-example__header p {
  margin: .5rem 0 0;
  color: #b8c8d1;
}

.ri-example-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1px;
  background: var(--ri-editorial-line);
}

.ri-example-card {
  padding: 1.15rem;
  background: rgba(5, 20, 33, .94);
}

.ri-example-card h4 {
  margin: 0 0 .6rem;
  color: #fff !important;
  font-size: 1rem !important;
}

.ri-example-card p,
.ri-example-card li {
  font-size: .88rem;
  line-height: 1.55;
}

.ri-example-card ul {
  margin: .75rem 0 0;
  padding-left: 1.1rem;
}

.ri-status {
  display: inline-flex;
  align-items: center;
  margin-top: .7rem;
  padding: .42rem .7rem;
  border-radius: 999px;
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .04em;
}

.ri-status--include,
.ri-status--fund {
  color: #062217;
  background: var(--ri-editorial-mint);
}

.ri-status--context,
.ri-status--prepare {
  color: #061827;
  background: var(--ri-editorial-cyan);
}

.ri-status--exclude,
.ri-status--defer {
  color: #241600;
  background: var(--ri-editorial-gold);
}

.ri-status--ignore {
  color: #e4e8ef;
  background: #455166;
}

.ri-summary-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .75rem;
  margin: 1.6rem 0 2rem;
}

.ri-summary-grid > div {
  padding: 1rem;
  border: 1px solid var(--ri-editorial-line);
  border-radius: 1rem;
  background: rgba(6, 22, 36, .66);
}

.ri-summary-grid b {
  display: block;
  margin-bottom: .35rem;
  color: #fff;
}

.ri-summary-grid p {
  margin: 0;
  font-size: .88rem;
  line-height: 1.55;
}

.ri-download-card {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 1rem;
  align-items: center;
  padding: 1.25rem 1.35rem;
  border-color: var(--ri-editorial-line-strong);
}

.ri-download-card h3 {
  margin: 0 0 .35rem;
}

.ri-download-card p {
  margin: 0;
}

.ri-download-card a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.8rem;
  padding: .75rem 1rem;
  border-radius: .8rem;
  color: #04121c;
  background: linear-gradient(110deg, var(--ri-editorial-cyan), var(--ri-editorial-mint));
  font-weight: 900;
  text-decoration: none;
  white-space: nowrap;
}

.ri-check-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .7rem;
  margin: 1.4rem 0 2rem;
}

.ri-check-grid div {
  position: relative;
  padding: 1rem 1rem 1rem 2.75rem;
  border: 1px solid var(--ri-editorial-line);
  border-radius: .95rem;
  background: rgba(6, 22, 36, .62);
  color: #bdcbd4;
  line-height: 1.55;
}

.ri-check-grid div::before {
  content: "\2713";
  position: absolute;
  top: .95rem;
  left: 1rem;
  width: 1.15rem;
  height: 1.15rem;
  display: grid;
  place-items: center;
  border-radius: 50%;
  color: #062217;
  background: var(--ri-editorial-mint);
  font-size: .72rem;
  font-weight: 900;
}

.ri-faq {
  display: grid;
  gap: .65rem;
  margin: 1.4rem 0 2rem;
}

.ri-faq details {
  border: 1px solid var(--ri-editorial-line);
  border-radius: .95rem;
  background: rgba(6, 22, 36, .62);
}

.ri-faq summary {
  cursor: pointer;
  padding: 1rem 1.1rem;
  color: #fff;
  font-weight: 800;
}

.ri-faq details p {
  margin: 0;
  padding: 0 1.1rem 1.1rem;
}

.ri-author-note {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 1rem;
  align-items: start;
}

.ri-author-note__mark {
  width: 2.8rem;
  height: 2.8rem;
  display: grid;
  place-items: center;
  border: 1px solid var(--ri-editorial-line-strong);
  border-radius: 50%;
  color: var(--ri-editorial-cyan);
  font-weight: 900;
  background: rgba(9, 41, 59, .7);
}

.ri-inline-links {
  display: flex;
  flex-wrap: wrap;
  gap: .55rem;
  margin-top: .85rem;
}

.ri-inline-links a {
  display: inline-flex;
  padding: .48rem .7rem;
  border: 1px solid var(--ri-editorial-line);
  border-radius: 999px;
  text-decoration: none;
  font-size: .78rem;
}

.ri-mini-note {
  color: #8fa7b6;
  font-size: .82rem;
  line-height: 1.55;
}

.ri-article-showcase {
  margin-top: 1.7rem;
  margin-bottom: 2.1rem;
}

@media (max-width: 900px) {
  .ri-stage-strip,
.ri-decision-tree,
.ri-example-grid,
.ri-summary-grid {
    grid-template-columns: 1fr 1fr;
  }

  .ri-decision-tree .ri-tree-node::after {
    display: none;
  }
}

@media (max-width: 680px) {
  .ri-stage-strip,
.ri-decision-tree,
.ri-example-grid,
.ri-summary-grid,
.ri-check-grid,
.ri-download-card,
.ri-author-note {
    grid-template-columns: 1fr;
  }

  .ri-download-card a {
    width: 100%;
  }
}

@media print {
  .site-header,
.ri-footer,
.ri-toc,
.ri-side-note,
.ri-article-hero__background,
.ri-button,
.ri-download-card a {
    display: none !important;
  }

  .insights-page,
.insights-page .ri-article,
.ri-executive-answer,
.ri-key-takeaway,
.ri-decision-rule,
.ri-method-note,
.ri-download-card,
.ri-author-note,
.ri-worked-example {
    color: #000 !important;
    background: #fff !important;
    box-shadow: none !important;
  }
}

/* SERPIFAI INSIGHTS HERO VISIBILITY BOOST V1.5.1 */
/* END SOURCE /assets/css/insights-flagship-editorial-v1-1-0.css */

/* BEGIN SOURCE /assets/css/insights-authority-library-v1-2-0.css | SHA-256 8c3dfdd19ed7dbe8a510cb83fe532322f7d35316cf49311f647a3a20b0a382ec */
:root {
  --ri2-bg: #040d18;
  --ri2-bg-deep: #020812;
  --ri2-panel: #081827;
  --ri2-panel-2: #0b2132;
  --ri2-line: rgba(139, 207, 231, .17);
  --ri2-line-strong: rgba(125, 227, 245, .36);
  --ri2-white: #ffffff;
  --ri2-text: #f7fafc;
  --ri2-soft: #d9e5ed;
  --ri2-muted: #9db0bd;
  --ri2-cyan: #78e1f4;
  --ri2-mint: #66e3bd;
  --ri2-violet: #987cff;
  --ri2-gold: #e6bd73;
  --ri2-max: 1200px;
  --ri2-reading: 760px;
  --ri2-shadow: 0 28px 80px rgba(0,0,0,.32);
}

/* Article hero */

/* Article reading layout */

/* Category pages and library */

/* Pillar supporting blocks */

/* CTA and footer */

/* SERPIFAI INSIGHTS HERO VISIBILITY BOOST V1.5.1 */
/* END SOURCE /assets/css/insights-authority-library-v1-2-0.css */

/* BEGIN SOURCE /assets/css/insights-unified-cinematic-hero-v1-5-2.css | SHA-256 0849b5f398a79a65b4a3cc03f5590b878376c6c68f1eeec916f35a304a5bee9c */
/* SERPIFAI Insights — Unified Cinematic Hero V1.5.2
   Cinematic visibility refinement for every flagship and authority article.
   Category hubs and the main Insights hub are intentionally excluded. */

/* ---------------------------------------------------------------
   AUTHORITY LIBRARY ARTICLE HERO
   --------------------------------------------------------------- */

/* ---------------------------------------------------------------
   FLAGSHIP ARTICLE HERO
   --------------------------------------------------------------- */

/* ---------------------------------------------------------------
   PRESERVE BOTH VISUAL GENERATIONS AFTER RETIRING THEIR CSS FILES
   --------------------------------------------------------------- */

/* Per-article image art direction for the current ten illustrated articles. */
/* END SOURCE /assets/css/insights-unified-cinematic-hero-v1-5-2.css */

/* BEGIN SOURCE /assets/css/insights-content-spacing-encoding-v1-6-0.css | SHA-256 ae55659f8189f0da04309a8e49a443cc4864453943feb3c00f0939df2e1d237e */
/* SERPIFAI Insights Content Spacing & Encoding Fix V1.6.0
   Scoped to article content and robust ASCII CSS escapes. */

/* Authority-library article lead cards: restore real internal spacing despite
   the more-specific generic section rules. */

/* The flagship articles use nested editorial boxes rather than section-level
   classes. Give those the same premium breathing room. */
.insights-page .ri-article .ri-executive-answer,
.insights-page .ri-article .ri-key-takeaway,
.insights-page .ri-article .ri-decision-rule,
.insights-page .ri-article .ri-method-note,
.insights-page .ri-article .ri-author-note {
  padding: clamp(1.3rem, 2.7vw, 1.9rem) clamp(1.25rem, 3.2vw, 2.15rem) !important;
  border-radius: 20px !important;
}

/* Checklist readability and encoding-safe glyphs. */

.insights-page .ri-check-grid div::before {
  content: "\2713" !important;
}

.insights-page .ri-decision-tree .ri-tree-node:not(:last-child)::after {
  content: "\2192" !important;
}
/* END SOURCE /assets/css/insights-content-spacing-encoding-v1-6-0.css */

/* BEGIN SOURCE /assets/css/insights-editorial-image-scale-v1-6-1.css | SHA-256 804960597537f05aef9af12189fed901abff80c73dedddec13c4bd0cac786659 */
/* SERPIFAI Insights Editorial Image Scale Fix V1.6.1
   Enlarges in-article visuals without cropping their content.
   Scoped to Insights article pages only. */

/* Keep breakout visuals visible outside the 760px reading column. */
.insights-page .ri-article,
.insights-page .ri-article-body,
.insights-page .ri-article-content {
  overflow: visible !important;
}

/* Authority-library and flagship explanatory visuals. */
.insights-page :is(.ri-article-showcase, .ri-article-figure, .ri-article > figure, .ri-article-body > figure) {
  position: relative !important;
  left: 50% !important;
  width: min(1120px, calc(100vw - 48px)) !important;
  max-width: none !important;
  margin: clamp(1.8rem, 4vw, 3rem) 0 clamp(2.6rem, 5vw, 4.25rem) !important;
  transform: translateX(-50%) !important;
  overflow: hidden !important;
  border-radius: clamp(18px, 2vw, 28px) !important;
  border: 1px solid rgba(125, 227, 245, .20) !important;
  background:
    radial-gradient(circle at 50% 0%, rgba(154, 124, 255, .08), transparent 44%),
    linear-gradient(145deg, rgba(7, 20, 34, .98), rgba(3, 10, 21, .99)) !important;
  box-shadow:
    0 34px 90px rgba(0, 0, 0, .34),
    0 8px 24px rgba(5, 19, 38, .28),
    inset 0 1px 0 rgba(255, 255, 255, .04) !important;
  content-visibility: auto;
  contain-intrinsic-size: auto 720px;
}

/* Show the complete image. Previous 16:9 + cover rules cropped some diagrams. */
.insights-page :is(.ri-article-showcase, .ri-article-figure, .ri-article > figure, .ri-article-body > figure) img {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  max-height: none !important;
  aspect-ratio: auto !important;
  object-fit: contain !important;
  object-position: center center !important;
  background: #071422 !important;
  transform: none !important;
  filter: none !important;
}

/* Premium caption treatment with controlled reading length. */
.insights-page :is(.ri-article-showcase, .ri-article-figure, .ri-article > figure, .ri-article-body > figure) figcaption {
  max-width: 92ch !important;
  margin: 0 auto !important;
  padding: 1rem clamp(1.15rem, 3vw, 2rem) 1.15rem !important;
  border-top: 1px solid rgba(125, 227, 245, .12) !important;
  color: #a9bbc8 !important;
  font-size: clamp(.78rem, 1vw, .88rem) !important;
  line-height: 1.6 !important;
  text-align: left !important;
}

.insights-page :is(.ri-article-showcase, .ri-article-figure, .ri-article > figure, .ri-article-body > figure) figcaption strong {
  color: #f7fbff !important;
}

/* Subtle polish without hiding any part of the artwork. */
@media (hover: hover) and (pointer: fine) {
  .insights-page :is(.ri-article-showcase, .ri-article-figure, .ri-article > figure, .ri-article-body > figure) {
    transition: transform .35s ease, border-color .35s ease, box-shadow .35s ease;
  }

  .insights-page :is(.ri-article-showcase, .ri-article-figure, .ri-article > figure, .ri-article-body > figure):hover {
    border-color: rgba(125, 227, 245, .34) !important;
    box-shadow:
      0 40px 100px rgba(0, 0, 0, .38),
      0 10px 28px rgba(32, 91, 150, .20),
      inset 0 1px 0 rgba(255, 255, 255, .05) !important;
  }
}

/* Tablet: keep a generous editorial width but avoid horizontal scrolling. */
@media (max-width: 1180px) {
  .insights-page :is(.ri-article-showcase, .ri-article-figure, .ri-article > figure, .ri-article-body > figure) {
    width: min(980px, calc(100vw - 40px)) !important;
  }
}

/* Mobile: return to the content column and keep every pixel visible. */
@media (max-width: 760px) {
  .insights-page :is(.ri-article-showcase, .ri-article-figure, .ri-article > figure, .ri-article-body > figure) {
    left: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 1.5rem 0 2.6rem !important;
    transform: none !important;
    border-radius: 16px !important;
  }

  .insights-page :is(.ri-article-showcase, .ri-article-figure, .ri-article > figure, .ri-article-body > figure) figcaption {
    padding: .85rem 1rem 1rem !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .insights-page :is(.ri-article-showcase, .ri-article-figure, .ri-article > figure, .ri-article-body > figure) {
    transition: none !important;
  }
}

/* SERPIFAI Featured Article Visual Focus V1.6.5
   Mirrors the supporting-article sidebar focus behaviour on the three
   flagship frameworks only. Sidebars yield while a wide article visual is
   in view and return when the visual leaves the reading viewport. */
/* END SOURCE /assets/css/insights-editorial-image-scale-v1-6-1.css */
