/*
 * Shared full-report styling for free report review pages.
 * Paid report pages intentionally do not load this file.
 */

body.free-report-review-page,
body.free-report-review-page #main-content {
  background: #06142a !important;
}

body.free-report-review-page .report-article-shell {
  background:
    radial-gradient(circle at 18% 8%, rgba(42,139,255,.14), transparent 30rem),
    linear-gradient(180deg, #06142a 0%, #08182d 100%) !important;
  color: #fff !important;
}

body.free-report-review-page .report-article {
  width: min(1120px, calc(100vw - 48px)) !important;
  color: rgba(255,255,255,.84) !important;
}

body.free-report-review-page .report-article :where(div, span) {
  color: inherit;
}

body.free-report-review-page .report-article h1,
body.free-report-review-page .report-article h2,
body.free-report-review-page .report-article h3,
body.free-report-review-page .report-article h4 {
  color: #fff !important;
  font-family: Sora, sans-serif !important;
  letter-spacing: 0 !important;
}

body.free-report-review-page .report-article h1 {
  max-width: 980px !important;
  font-size: clamp(42px, 6vw, 82px) !important;
  line-height: 1.02 !important;
}

body.free-report-review-page .report-article h2 {
  max-width: 900px;
  font-size: clamp(28px, 3.4vw, 48px) !important;
  line-height: 1.1 !important;
}

body.free-report-review-page .report-article h3 {
  font-size: clamp(20px, 2vw, 28px) !important;
  line-height: 1.2 !important;
}

body.free-report-review-page .report-article h1 em,
body.free-report-review-page .report-article h2 em,
body.free-report-review-page .report-article .quote em {
  color: #f5c542 !important;
  font-style: normal;
}

body.free-report-review-page .report-article p,
body.free-report-review-page .report-article li {
  color: rgba(255,255,255,.82) !important;
  font: 450 clamp(16px, 1.08vw, 19px) / 1.76 Inter, sans-serif !important;
}

body.free-report-review-page .report-article p b,
body.free-report-review-page .report-article p strong,
body.free-report-review-page .report-article li b,
body.free-report-review-page .report-article li strong {
  color: #fff !important;
}

body.free-report-review-page .report-article a {
  color: #f5c542 !important;
  text-decoration-color: rgba(245,197,66,.42) !important;
}

body.free-report-review-page .report-article .page,
body.free-report-review-page .report-article .wrap,
body.free-report-review-page .report-article .container,
body.free-report-review-page .report-article .page-shell {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.free-report-review-page .report-article .nav,
body.free-report-review-page .report-article .nav-inner,
body.free-report-review-page .report-article .nav-actions {
  display: none !important;
}

body.free-report-review-page .report-article .hero,
body.free-report-review-page .report-article .exec-summary,
body.free-report-review-page .report-article .toc,
body.free-report-review-page .report-article .summary,
body.free-report-review-page .report-article .closing,
body.free-report-review-page .report-article .cta-wrap {
  max-width: 100% !important;
  margin: 0 0 clamp(28px, 3vw, 44px) !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

body.free-report-review-page .report-article .hero {
  padding: clamp(28px, 4vw, 56px) 0 clamp(30px, 4vw, 54px) !important;
  border-bottom: 1px solid rgba(245,197,66,.22) !important;
}

body.free-report-review-page .report-article .section {
  margin: 0 0 clamp(32px, 4vw, 58px) !important;
  padding: clamp(26px, 4vw, 48px) 0 0 !important;
  border: 0 !important;
  border-top: 1px solid rgba(255,255,255,.14) !important;
  border-radius: 0 !important;
  background: transparent !important;
}

body.free-report-review-page .report-article .eyebrow,
body.free-report-review-page .report-article .kicker,
body.free-report-review-page .report-article .kicker-note,
body.free-report-review-page .report-article .tag,
body.free-report-review-page .report-article .section-pill,
body.free-report-review-page .report-article .callout-label {
  color: #f5c542 !important;
  font-family: "Space Grotesk", sans-serif !important;
  font-weight: 800 !important;
  letter-spacing: .18em !important;
  text-transform: uppercase !important;
}

body.free-report-review-page .report-article .eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 24px;
  font-size: .78rem;
}

body.free-report-review-page .report-article .eyebrow::before {
  content: "";
  width: 32px;
  height: 2px;
  border-radius: 999px;
  background: #f5c542;
}

body.free-report-review-page .report-article .lede,
body.free-report-review-page .report-article .section-deck {
  max-width: 66ch;
  color: rgba(255,255,255,.84) !important;
  font: 500 clamp(18px,1.35vw,23px) / 1.62 Inter, sans-serif !important;
}

body.free-report-review-page .report-article .meta,
body.free-report-review-page .report-article .meta-row {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 18px;
  margin-top: 28px;
  padding-top: 20px;
  border-top: 1px solid rgba(255,255,255,.12);
  color: rgba(255,255,255,.62) !important;
  font: 800 11px / 1.4 "Space Grotesk", sans-serif !important;
  letter-spacing: .14em;
  text-transform: uppercase;
}

body.free-report-review-page .report-article .stats,
body.free-report-review-page .report-article .stats-strip {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 16px !important;
  margin: 34px 0 10px !important;
}

body.free-report-review-page .report-article .cards {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 16px !important;
}

body.free-report-review-page .report-article .data-grid,
body.free-report-review-page .report-article .matrix {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 16px !important;
}

body.free-report-review-page .report-article .toc-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 12px !important;
}

body.free-report-review-page .report-article .stat,
body.free-report-review-page .report-article .card,
body.free-report-review-page .report-article .data-card,
body.free-report-review-page .report-article .step-card,
body.free-report-review-page .report-article .panel,
body.free-report-review-page .report-article .term,
body.free-report-review-page .report-article .vendor-row,
body.free-report-review-page .report-article .source-list > div,
body.free-report-review-page .report-article .sources-list > div {
  position: relative;
  overflow: hidden;
  padding: clamp(20px, 2vw, 30px) !important;
  border: 1px solid rgba(255,255,255,.12) !important;
  border-radius: 14px !important;
  background: rgba(255,255,255,.055) !important;
  box-shadow: none !important;
}

body.free-report-review-page .report-article .stat::before,
body.free-report-review-page .report-article .data-card::before,
body.free-report-review-page .report-article .panel::before {
  content: "";
  position: absolute;
  inset: 0 auto 0 0;
  width: 3px;
  background: #f5c542;
}

body.free-report-review-page .report-article .stat > b,
body.free-report-review-page .report-article .stat-val,
body.free-report-review-page .report-article .dc-val {
  color: #f5c542 !important;
  font: 900 clamp(1.9rem, 4vw, 3.15rem) / 1 Sora, sans-serif !important;
}

body.free-report-review-page .report-article .stat > span,
body.free-report-review-page .report-article .stat-lbl,
body.free-report-review-page .report-article .dc-lbl,
body.free-report-review-page .report-article .card p,
body.free-report-review-page .report-article .step-card p,
body.free-report-review-page .report-article .sources-list p,
body.free-report-review-page .report-article .source-list p {
  color: rgba(255,255,255,.74) !important;
  font: 500 clamp(14px,1vw,16px) / 1.56 Inter, sans-serif !important;
}

body.free-report-review-page .report-article .callout {
  padding: 18px 20px !important;
  border: 0 !important;
  border-left: 4px solid #f5c542 !important;
  border-radius: 0 !important;
  background: rgba(245,197,66,.08) !important;
  color: rgba(255,255,255,.88) !important;
}

body.free-report-review-page .report-article .callout strong,
body.free-report-review-page .report-article .callout b {
  color: #f5c542 !important;
}

body.free-report-review-page .report-article table,
body.free-report-review-page .report-article .report-table,
body.free-report-review-page .report-article .compare-table {
  width: 100% !important;
  border-collapse: collapse !important;
  border: 1px solid rgba(255,255,255,.14) !important;
  border-radius: 14px !important;
  overflow: hidden;
  background: rgba(255,255,255,.04) !important;
}

body.free-report-review-page .report-article th,
body.free-report-review-page .report-article td {
  padding: 15px 16px !important;
  border-bottom: 1px solid rgba(255,255,255,.1) !important;
  color: rgba(255,255,255,.84) !important;
  text-align: left;
  vertical-align: top;
  font: 500 14.5px / 1.5 Inter, sans-serif !important;
}

body.free-report-review-page .report-article th {
  background: rgba(15,41,66,.9) !important;
  color: #fff !important;
  font: 850 11px / 1.25 "Space Grotesk", sans-serif !important;
  letter-spacing: .12em;
  text-transform: uppercase;
}

body.free-report-review-page .report-article .toc-grid a {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 54px;
  padding: 13px 15px !important;
  border: 1px solid rgba(255,255,255,.1) !important;
  border-radius: 12px !important;
  background: rgba(255,255,255,.035) !important;
  color: #fff !important;
  text-decoration: none !important;
}

body.free-report-review-page .report-article .toc-grid b,
body.free-report-review-page .report-article .toc-num {
  color: #f5c542 !important;
  font: 900 11px / 1 "Space Grotesk", sans-serif !important;
  letter-spacing: .16em;
}

body.free-report-review-page .report-article .toc-grid span,
body.free-report-review-page .report-article .toc-title {
  color: #fff !important;
  font: 800 14px / 1.25 Sora, sans-serif !important;
}

body.free-report-review-page .report-article pre,
body.free-report-review-page .report-article code {
  border-radius: 12px !important;
  background: #071425 !important;
  color: #f7fbff !important;
}

@media (max-width: 900px) {
  body.free-report-review-page .report-article .stats,
  body.free-report-review-page .report-article .stats-strip,
  body.free-report-review-page .report-article .cards,
  body.free-report-review-page .report-article .toc-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 640px) {
  body.free-report-review-page .report-article {
    width: min(100% - 24px, 1120px) !important;
  }

  body.free-report-review-page .report-article .stats,
  body.free-report-review-page .report-article .stats-strip,
  body.free-report-review-page .report-article .cards,
  body.free-report-review-page .report-article .toc-grid,
  body.free-report-review-page .report-article .data-grid,
  body.free-report-review-page .report-article .matrix {
    grid-template-columns: 1fr !important;
  }
}

@media print {
  body.free-report-review-page {
    background: #fff !important;
  }

  body.free-report-review-page .report-article-shell,
  body.free-report-review-page #main-content {
    background: #fff !important;
    color: #111 !important;
  }

  body.free-report-review-page .report-article,
  body.free-report-review-page .report-article p,
  body.free-report-review-page .report-article li,
  body.free-report-review-page .report-article td {
    color: #111 !important;
  }

  body.free-report-review-page .report-article h1,
  body.free-report-review-page .report-article h2,
  body.free-report-review-page .report-article h3,
  body.free-report-review-page .report-article h4 {
    color: #111 !important;
  }

  body.free-report-review-page .report-article .card,
  body.free-report-review-page .report-article .stat,
  body.free-report-review-page .report-article .panel,
  body.free-report-review-page .report-article .data-card,
  body.free-report-review-page .report-article .step-card,
  body.free-report-review-page .report-article .source-list > div,
  body.free-report-review-page .report-article .sources-list > div {
    background: #fff !important;
    border-color: #d5dce3 !important;
    break-inside: avoid;
  }

  body.free-report-review-page .report-article table,
  body.free-report-review-page .report-article .report-table,
  body.free-report-review-page .report-article .compare-table {
    break-inside: avoid;
  }
}
