:root {
  --audience-accent: #d4a017;
  --audience-accent-dark: #b88700;
  --audience-bg: #fafaf7;
  --audience-soft: #f5f5f7;
  --audience-ink: #3b3b3b;
  --audience-muted: #64748b;
  --audience-line: rgba(100, 116, 139, 0.22);
}

.audience-body {
  background: var(--audience-bg);
  color: var(--audience-ink);
  font-family: "Inter", Arial, sans-serif;
}

.audience-body * {
  box-sizing: border-box;
}

.audience-body .rv60-nav a[aria-current="page"],
.audience-body .rv60-nav-dropdown[aria-current="page"] {
  color: var(--audience-accent);
}

.audience-main {
  overflow: hidden;
}

.audience-section {
  padding: 48px max(24px, calc((100vw - 1184px) / 2));
}

.audience-hero {
  min-height: 684px;
  display: grid;
  grid-template-columns: minmax(0, 560px) minmax(360px, 560px);
  gap: 64px;
  align-items: center;
  background:
    radial-gradient(42% 40% at 70% 27%, rgba(255, 247, 227, 0.95), rgba(255, 250, 235, 0.8) 30%, rgba(255,255,255,0) 70%),
    #fff;
}

.audience-hero.tall {
  min-height: 980px;
}

.audience-copy {
  display: grid;
  gap: 24px;
}

.audience-pill {
  width: max-content;
  max-width: 100%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 30px;
  margin: 0;
  padding: 6px 16px;
  border: 1px solid color-mix(in srgb, var(--audience-accent) 22%, transparent);
  border-radius: 999px;
  background: color-mix(in srgb, var(--audience-accent) 10%, white);
  color: var(--audience-accent);
  font-size: 12px;
  line-height: 16px;
  font-weight: 800;
  letter-spacing: 1.1px;
  text-transform: uppercase;
}

.audience-pill.soft {
  font-size: 14px;
  line-height: 18px;
  letter-spacing: 0;
  text-transform: none;
}

.audience-hero h1,
.audience-heading h2,
.audience-final h2 {
  margin: 0;
  color: var(--audience-ink);
  font-size: 48px;
  line-height: 1.12;
  font-weight: 800;
  letter-spacing: 0;
}

.audience-hero h1.large {
  font-size: 72px;
  line-height: 1;
}

.audience-hero h1 span,
.audience-heading h2 span,
.audience-final h2 span,
.audience-card h3 span {
  color: var(--audience-accent);
}

.audience-lede {
  margin: 0;
  color: var(--audience-muted);
  font-size: 18px;
  line-height: 29px;
  font-weight: 700;
}

.audience-copy p:not([class]) {
  margin: 0;
  color: var(--audience-muted);
  font-size: 16px;
  line-height: 26px;
}

.audience-list {
  display: grid;
  gap: 12px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.audience-list li {
  position: relative;
  padding-left: 32px;
  color: var(--audience-muted);
  font-size: 16px;
  line-height: 24px;
  font-weight: 500;
}

.audience-list li::before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 0;
  color: var(--audience-accent);
  font-weight: 800;
}

.audience-button {
  width: max-content;
  max-width: 100%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 58px;
  padding: 16px 32px;
  border-radius: 999px;
  background: linear-gradient(135deg, var(--audience-accent-dark), #d6a72b);
  color: #fff !important;
  font-size: 16px;
  line-height: 24px;
  font-weight: 800;
  text-align: center;
  text-decoration: none;
  box-shadow: 0 18px 32px rgba(0, 0, 0, 0.1);
}

.audience-trial {
  margin: -8px 0 0;
  color: var(--audience-muted);
  font-size: 12px;
  line-height: 18px;
}

.audience-ai-card,
.audience-demo-card {
  position: relative;
  padding: 36px 32px;
  border-top: 4px solid var(--audience-accent);
  border-radius: 32px;
  background: #fff;
  box-shadow: 0 24px 70px rgba(15, 23, 42, 0.1);
}

.audience-ai-card small,
.audience-demo-card small {
  display: block;
  margin-bottom: 16px;
  color: var(--audience-accent);
  font-size: 10px;
  line-height: 15px;
  font-weight: 800;
  letter-spacing: 2px;
  text-transform: uppercase;
}

.audience-ai-card h2,
.audience-demo-card h2 {
  margin: 0 0 24px;
  color: var(--audience-ink);
  font-size: 30px;
  line-height: 1.25;
}

.audience-ai-card p,
.audience-demo-card p {
  margin: 0;
  color: var(--audience-muted);
  font-size: 16px;
  line-height: 26px;
}

.audience-ai-card hr {
  margin: 28px 0;
  border: 0;
  border-top: 1px solid var(--audience-line);
}

.audience-quote {
  margin-top: 16px;
  padding: 24px 28px;
  border-left: 4px solid var(--audience-accent);
  border-radius: 0 32px 32px 0;
  background: var(--audience-soft);
}

.audience-quote p {
  margin: 0 0 8px;
  color: var(--audience-muted);
  font-size: 16px;
  line-height: 24px;
  font-style: italic;
}

.audience-quote cite {
  color: var(--audience-accent);
  font-size: 12px;
  line-height: 16px;
  font-style: normal;
  font-weight: 800;
  letter-spacing: 0.6px;
  text-transform: uppercase;
}

.audience-stats {
  background: var(--audience-soft);
}

.audience-stat-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 32px;
}

.audience-stat-grid article {
  text-align: center;
}

.audience-stat-grid strong {
  display: block;
  color: var(--audience-accent);
  font-size: 36px;
  line-height: 40px;
  font-weight: 800;
}

.audience-stat-grid p {
  margin: 4px 0 0;
  color: var(--audience-ink);
  font-size: 11px;
  line-height: 16px;
  font-weight: 800;
  letter-spacing: 0.6px;
  text-transform: uppercase;
}

.audience-heading {
  max-width: 1024px;
  margin: 0 auto 48px;
  text-align: center;
}

.audience-heading.left {
  margin-left: 0;
  text-align: left;
}

.audience-heading > p {
  margin: 0 0 12px;
  color: var(--audience-accent);
  font-size: 12px;
  line-height: 18px;
  font-weight: 800;
  letter-spacing: 1.2px;
  text-transform: uppercase;
}

.audience-heading small {
  display: block;
  max-width: 876px;
  margin: 16px auto 0;
  color: var(--audience-muted);
  font-size: 16px;
  line-height: 28px;
}

.audience-compare {
  background: #fff;
}

.audience-compare-grid,
.audience-card-grid.two,
.audience-guide-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 32px;
}

.audience-panel {
  padding: 32px;
  border: 1px solid var(--audience-line);
  border-radius: 20px;
  background: #fff;
}

.audience-panel.negative {
  border-color: rgba(239, 68, 68, 0.25);
}

.audience-panel.positive {
  border-color: color-mix(in srgb, var(--audience-accent) 45%, white);
  background: color-mix(in srgb, var(--audience-accent) 7%, white);
}

.audience-panel h3,
.audience-card h3 {
  margin: 0 0 20px;
  color: var(--audience-ink);
  font-size: 18px;
  line-height: 24px;
}

.audience-panel ul {
  display: grid;
  gap: 14px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.audience-panel li {
  position: relative;
  padding-left: 24px;
  color: var(--audience-muted);
  font-size: 14px;
  line-height: 22px;
}

.audience-panel.negative li::before {
  content: "×";
  position: absolute;
  left: 0;
  color: #ef4444;
  font-weight: 800;
}

.audience-panel.positive li::before {
  content: "✓";
  position: absolute;
  left: 0;
  color: var(--audience-accent);
  font-weight: 800;
}

.audience-muted-section {
  background: var(--audience-soft);
}

.audience-card-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
}

.audience-card {
  padding: 25px;
  border: 1px solid var(--audience-line);
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 12px 30px rgba(15, 23, 42, 0.04);
}

.audience-card p {
  margin: 0;
  color: var(--audience-muted);
  font-size: 14px;
  line-height: 22px;
}

.audience-card strong {
  display: block;
  margin-top: 16px;
  color: var(--audience-accent);
  font-size: 12px;
  line-height: 18px;
}

.audience-course-callout {
  max-width: 1056px;
  margin: 0 auto;
  padding: 48px;
  border-radius: 24px;
  background: #fff;
  text-align: center;
}

.audience-course-callout h3 {
  margin: 8px 0 10px;
  color: var(--audience-ink);
  font-size: 24px;
  line-height: 32px;
}

.audience-chip-row {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
  margin-top: 24px;
}

.audience-chip-row span {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  padding: 8px 17px;
  border: 1px solid color-mix(in srgb, var(--audience-accent) 45%, white);
  border-radius: 999px;
  background: color-mix(in srgb, var(--audience-accent) 8%, white);
  color: var(--audience-ink);
  font-size: 14px;
  line-height: 20px;
  font-weight: 700;
}

.audience-email {
  background:
    radial-gradient(45% 32% at 50% 24%, rgba(255,244,216,0.9), rgba(255,244,216,0) 65%),
    linear-gradient(180deg, #fbfbfd 0%, #f5f5f7 62%, #fff 100%);
}

.audience-email-box {
  max-width: 672px;
  margin: 0 auto;
  text-align: center;
}

.audience-email-box h3 {
  margin: 0;
  color: var(--audience-ink);
  font-size: 24px;
  line-height: 32px;
}

.audience-email-box p {
  margin: 16px 0 0;
  color: var(--audience-muted);
  font-size: 16px;
  line-height: 24px;
}

.audience-email-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  margin-top: 32px;
}

.audience-email-form input {
  min-height: 58px;
  border: 1px solid rgba(212, 160, 23, 0.3);
  border-radius: 999px;
  padding: 0 25px;
  color: var(--audience-ink);
  font: inherit;
}

.audience-email-form button {
  min-height: 58px;
  border: 0;
  border-radius: 999px;
  padding: 0 32px;
  background: var(--audience-accent);
  color: #fff !important;
  font: inherit;
  font-weight: 800;
}

.audience-final {
  padding-top: 88px;
  padding-bottom: 88px;
  background: #fff;
  text-align: center;
}

.audience-final p {
  max-width: 760px;
  margin: 18px auto 0;
  color: var(--audience-muted);
  font-size: 18px;
  line-height: 28px;
}

.audience-final .audience-button {
  margin-top: 32px;
}

.audience-benefits {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 24px;
  margin-top: 24px;
  color: var(--audience-muted);
  font-size: 12px;
  line-height: 18px;
  font-weight: 800;
  letter-spacing: 1.1px;
  text-transform: uppercase;
}

.audience-footer {
  padding: 66px 16px 32px;
  background: #64748b;
  color: #fafaf7;
  text-align: center;
}

.audience-footer p,
.audience-footer a {
  color: #fafaf7;
}

.audience-footer-legal {
  max-width: 1132px;
  margin: 16px auto;
  padding: 16px 0;
  border-top: 1px solid #8499b6;
  border-bottom: 1px solid #8499b6;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 16px;
}

.audience-footer-legal a {
  display: block;
  margin: 10px 0;
  font-size: 14px;
  line-height: 21px;
}

.audience-footer small {
  display: block;
  max-width: 1132px;
  margin: 12px auto;
  font-size: 11px;
  line-height: 18px;
}

@media (max-width: 1080px) {
  .audience-hero,
  .audience-compare-grid,
  .audience-card-grid.two,
  .audience-guide-grid {
    grid-template-columns: 1fr;
  }

  .audience-hero {
    gap: 40px;
  }

  .audience-stat-grid,
  .audience-card-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .audience-body .rv60-header-inner {
    grid-template-columns: 1fr;
    justify-items: center;
  }

  .audience-body .rv60-nav {
    justify-content: center;
    flex-wrap: wrap;
    overflow: visible;
    padding-bottom: 0;
  }

  .audience-body .rv60-actions {
    justify-content: center;
  }

  .audience-section {
    padding: 72px 20px;
  }

  .audience-hero {
    min-height: auto;
  }

  .audience-hero h1,
  .audience-hero h1.large,
  .audience-heading h2,
  .audience-final h2 {
    font-size: 38px;
    line-height: 1.12;
  }

  .audience-stat-grid,
  .audience-card-grid {
    grid-template-columns: 1fr;
  }

  .audience-email-form {
    grid-template-columns: 1fr;
  }

  .audience-footer-legal {
    grid-template-columns: 1fr;
  }
}
