/* Kudoboard content uses the shared comparison shell, with scoped reading layouts. */
.page-kudoboard .compare-hero-title { max-width: 900px; }
.page-kudoboard .kb-eyebrow { font-size: .75rem; font-weight: 600; text-transform: uppercase; letter-spacing: .12em; }
.page-kudoboard .kb-choice h3, .page-kudoboard .kb-price h3, .page-kudoboard .kb-review h3, .page-kudoboard .kb-example h3 { font-family: 'Newsreader', serif; font-size: 1.9rem; line-height: 1.15; font-weight: 400; margin: .75rem 0 1rem; color: #172033; }
.page-kudoboard .kb-choice, .page-kudoboard .kb-price, .page-kudoboard .kb-review { color: #374151; line-height: 1.65; }
.page-kudoboard .kb-choice ul { padding-left: 1.2rem; margin: 1.5rem 0; }
.page-kudoboard .kb-choice li { margin: .75rem 0; }
.page-kudoboard .kb-tradeoff { border-top: 1px solid #dce2eb; padding-top: 1rem; }
.page-kudoboard main a:not(.compare-btn):not(.compare-faq-link) { text-decoration: underline; text-underline-offset: .2em; }
.page-kudoboard .kb-choice a, .page-kudoboard .kb-price a, .page-kudoboard .kb-review a, .page-kudoboard .kb-free a, .page-kudoboard .compare-value-props .kb-source a { color: var(--color-primary); }
.page-kudoboard .kb-table-hint { display: none; color: #cbd5e1; margin-bottom: 1rem; }
.page-kudoboard .kb-free p + p { margin-top: 1rem; }
.page-kudoboard .kb-table { min-width: 600px; color: #e5e7eb; }
.page-kudoboard .kb-source { font-size: .85rem; line-height: 1.7; margin: 1.5rem auto 0; max-width: 1000px; }
.page-kudoboard .compare-table-section .kb-source, .page-kudoboard .compare-table-section .kb-source a { color: #cbd5e1; }
.page-kudoboard .kb-free { display: grid; grid-template-columns: 1fr 1.3fr; gap: 3rem; color: #374151; line-height: 1.7; }
.page-kudoboard .kb-free .compare-section-title, .page-kudoboard .kb-free .compare-section-eyebrow { text-align: left; }
.page-kudoboard .kb-lead { font-size: 1.4rem; line-height: 1.4; color: #172033; }
.page-kudoboard .kb-price dl { margin: 1.5rem 0 0; }
.page-kudoboard .kb-price dl div { display: flex; justify-content: space-between; gap: 1rem; padding: 1rem 0; border-bottom: 1px solid #dce2eb; }
.page-kudoboard .kb-price dd { margin: 0; font-weight: 700; color: #172033; }
.page-kudoboard .kb-example { max-width: 1000px; margin: 2rem auto 0; padding: 2rem; color: #374151; line-height: 1.65; }
.page-kudoboard .kb-review-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1.5rem; }
.page-kudoboard .kb-review { padding: 2rem; }
.page-kudoboard .kb-step { color: #70519a; font-size: .8rem; letter-spacing: .08em; text-transform: uppercase; }
.page-kudoboard main a:focus-visible, .page-kudoboard .compare-table-wrapper:focus-visible { outline: 2px solid currentColor; outline-offset: 4px; }
@media (max-width: 767px) {
  .page-kudoboard .kb-table-hint { display: block; }
  .page-kudoboard .kb-free, .page-kudoboard .kb-review-grid { grid-template-columns: 1fr; gap: 1.5rem; }
  .page-kudoboard .kb-choice, .page-kudoboard .kb-price, .page-kudoboard .kb-review { padding: 1.5rem; }
}

.page-kudoboard .compare-hero {
  background-image:
    radial-gradient(at 15% 20%, rgba(181,29,29,.22), transparent 50%),
    radial-gradient(at 85% 20%, rgba(27,94,253,.24), transparent 50%),
    radial-gradient(at 50% 45%, rgba(27,94,253,.12), transparent 45%),
    radial-gradient(at 25% 70%, rgba(181,29,29,.1), transparent 40%),
    radial-gradient(at 75% 70%, rgba(27,94,253,.1), transparent 40%);
}
.page-kudoboard .compare-hero-image {
  filter: drop-shadow(0 8px 30px rgba(181,29,29,.25)) drop-shadow(0 4px 15px rgba(27,94,253,.2));
}
.page-kudoboard .kb-hero-logo { width: 160px; height: auto; padding: .5rem .65rem; box-sizing: content-box; }
.page-kudoboard .compare-table-section {
  background-image: radial-gradient(at 80% 20%, rgba(27,94,253,.22), transparent 55%), radial-gradient(at 15% 70%, rgba(181,29,29,.12), transparent 50%);
}
.page-kudoboard .kb-methodology { margin-top: 3rem; color: #b8bfcb; }
@media (max-width: 767px) {
  .page-kudoboard .kb-choice .compare-side-header { margin-left: -1.5rem; margin-right: -1.5rem; }
}
@media (max-width: 480px) {
  .page-kudoboard .compare-hero-logos { gap: .6rem; flex-wrap: nowrap; }
  .page-kudoboard .compare-hero-logo--tribute { width: 95px; }
  .page-kudoboard .kb-hero-logo { width: 120px; padding: .4rem; }
  .page-kudoboard .compare-hero-vs-badge { flex-shrink: 0; }
}

.page-kudoboard .compare-table-headline-accent {
  background-image: linear-gradient(120deg, #fecdd3, #bfdbfe 55%, #93b4ff);
}
.page-kudoboard .kb-table tbody th { color: #d1d5db; text-align: left; font-weight: 500; }
.page-kudoboard .compare-table-right { min-width: 0; }
.page-kudoboard #kb-table-title { scroll-margin-top: 160px; }

.page-kudoboard .kb-source { font-size: .75rem; text-align: center; }

/* A darker pause between pricing and customer experiences. */
body.page-kudoboard .kb-free-section {
  background: radial-gradient(ellipse at 85% 25%, rgba(27,94,253,.18), transparent 60%), #080e1c;
  scroll-margin-top: 150px;
}
.page-kudoboard .kb-free-section .kb-free { color: #cbd5e1; }
.page-kudoboard .kb-free-section .compare-section-title,
.page-kudoboard .kb-free-section .kb-lead { color: #fff; }
.page-kudoboard .kb-free-section .compare-section-eyebrow { color: #fca5a5; }
.page-kudoboard .kb-free-section a { color: #bfdbfe; }
.page-kudoboard .kb-free-section .kb-source { color: #aeb8c8; }
.page-kudoboard .kb-occasion-image {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 3 / 2;
  object-fit: cover;
  object-position: center;
  margin-bottom: 1.5rem;
  border-radius: .875rem;
}

.page-kudoboard .kb-example { max-width: 1125px; box-sizing: border-box; }
.page-kudoboard .kb-example > .kb-eyebrow { color: #b51d1d; }
.page-kudoboard .kb-example h3 { max-width: 32ch; }
.page-kudoboard .kb-example-intro { margin-bottom: 1.75rem; }
.page-kudoboard .kb-example-options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2rem; }
.page-kudoboard .kb-example-options > div { border-top: 1px solid #cbd5e1; padding-top: 1.5rem; }
.page-kudoboard .kb-example-options h4 { font-size: 1.1rem; color: #172033; margin: 0 0 .75rem; }
.page-kudoboard .kb-example-cost { margin-top: 1.25rem; }
.page-kudoboard .kb-example-cost strong { font-size: 1.75rem; color: #172033; margin-right: .5rem; }
.page-kudoboard .kb-example-detail, .page-kudoboard .kb-example-note { font-size: .8rem; color: #526075; }
.page-kudoboard .kb-example-note { margin-top: 1.75rem; }
@media (max-width: 767px) {
  .page-kudoboard .kb-example { padding: 1.5rem; }
  .page-kudoboard .kb-example-options { grid-template-columns: 1fr; gap: 1.5rem; }
}

.page-kudoboard #kb-example-title { scroll-margin-top: 200px; }
