/**
 * content-section pattern — visual parity rules.
 *
 * Extracted from template-parts/patterns/content-section.php (inline
 * <style id="vestfin-content-section-visual-parity">) on 2026-05-19 as
 * part of the hardcoded-CSS cleanup.
 *
 * Rules are verbatim — no value changes — so the rendered output should
 * be identical to the inline-emit version. The only behavioural delta is
 * cascade order: previously emitted inline at pattern render time (after
 * <head> styles), this file is enqueued in <head> AFTER overrides.css so
 * the same source-order tiebreak applies for any !important collisions.
 */

.content-section--strategy {
  font-size: 20px !important;
  line-height: 30px !important;
}
.content-section--strategy .section-title {
  font-size: 40px !important;
  line-height: 60px !important;
}
.content-section--strategy .article-body,
.content-section--strategy .article-body p,
.content-section--strategy .article-body li {
  font-size: 20px !important;
  line-height: 30px !important;
}
.content-section--strategy .article-body h3:not(.our-products__header) {
  font-size: 18.72px !important;
  line-height: 28px !important;
  font-weight: 700 !important;
}
main.page-content:has(.strategy-page-menu--buffer-strategy) .content-section,
main.page-content:has(.strategy-page-menu--target-income-strategy) .content-section,
main.page-content:has(.strategy-page-menu--retirement-solutions) .content-section {
  font-size: 20px !important;
  line-height: 30px !important;
}
main.page-content:has(.strategy-page-menu--buffer-strategy) .content-section .section-title,
main.page-content:has(.strategy-page-menu--target-income-strategy) .content-section .section-title,
main.page-content:has(.strategy-page-menu--retirement-solutions) .content-section .section-title {
  font-size: 40px !important;
  line-height: 60px !important;
}
main.page-content:has(.strategy-page-menu--buffer-strategy) .content-section .article-body,
main.page-content:has(.strategy-page-menu--buffer-strategy) .content-section .article-body p,
main.page-content:has(.strategy-page-menu--buffer-strategy) .content-section .article-body li,
main.page-content:has(.strategy-page-menu--target-income-strategy) .content-section .article-body,
main.page-content:has(.strategy-page-menu--target-income-strategy) .content-section .article-body p,
main.page-content:has(.strategy-page-menu--target-income-strategy) .content-section .article-body li,
main.page-content:has(.strategy-page-menu--retirement-solutions) .content-section .article-body,
main.page-content:has(.strategy-page-menu--retirement-solutions) .content-section .article-body p,
main.page-content:has(.strategy-page-menu--retirement-solutions) .content-section .article-body li {
  font-size: 20px !important;
  line-height: 30px !important;
}
main.page-content:has(.strategy-page-menu--buffer-strategy) .content-section .article-body h3:not(.our-products__header),
main.page-content:has(.strategy-page-menu--target-income-strategy) .content-section .article-body h3:not(.our-products__header),
main.page-content:has(.strategy-page-menu--retirement-solutions) .content-section .article-body h3:not(.our-products__header) {
  font-size: 18.72px !important;
  line-height: 28px !important;
  font-weight: 700 !important;
}
main.page-content:has(.strategy-page-menu--target-growth-strategy) .content-section .section-title {
  font-size: 40px !important;
  line-height: 52px !important;
  font-weight: 700 !important;
}
@media (min-width: 768px) {
  main.page-content:has(.strategy-page-menu--retirement-solutions) #summary .fund-summery .resource-item__image {
    align-items: center !important;
    background:
      linear-gradient(90deg, #f8c9c4 0 23%, #e4ffb3 23% 47%, #34b9aa 47% 70%, #ffcd52 70% 100%) !important;
    border: 1px solid #e6e6e0 !important;
    display: flex !important;
    height: 174px !important;
    justify-content: center !important;
    min-height: 174px !important;
  }
  main.page-content:has(.strategy-page-menu--retirement-solutions) #summary .fund-summery .resource-item__image::before {
    color: #003140;
    content: "BUFFER\A STRATEGY";
    font-size: 28px;
    font-weight: 700;
    line-height: 32px;
    text-align: center;
    white-space: pre;
  }
  main.page-content:has(.strategy-page-menu--retirement-solutions) #why-invest section.fund-diagrams__carousel {
    display: none !important;
  }
  main.page-content:has(.strategy-page-menu--retirement-solutions) #why-invest .blue-background .col-sm-6:nth-child(2)::before {
    align-items: center;
    background: #fff;
    color: #003140;
    content: "Bonds can move with equities in stressed markets.\A Contractual buffers are designed to add a defined layer of loss protection.";
    display: flex;
    font-size: 16px;
    font-weight: 700;
    line-height: 24px;
    min-height: 150px;
    padding: 28px;
    white-space: pre-line;
  }
  main.page-content:has(.strategy-page-menu--retirement-solutions) #strategies .investment__container__video .resource-item__image {
    align-items: center;
    background: #00808f !important;
    display: flex;
    height: 205px;
    justify-content: center;
    min-height: 205px;
  }
  main.page-content:has(.strategy-page-menu--retirement-solutions) #strategies .investment__container__video .resource-item__image::before {
    color: #fff;
    content: "VEST\A BUFFER\A STRATEGY";
    font-size: 24px;
    font-weight: 700;
    line-height: 30px;
    text-align: center;
    white-space: pre;
  }
}
.content-section--target-growth .section-title {
  font-size: 40px !important;
  line-height: 52px !important;
  font-weight: 700 !important;
}
.content-section--marketing .content-section__title {
  font-size: 40px !important;
  line-height: 52px !important;
  font-weight: 700 !important;
}
.syntheticborrow-section .sb-title {
  font-size: 40px !important;
  line-height: 44px !important;
  font-weight: 700 !important;
}
.syntheticborrow-section .sb-title--tall {
  line-height: 60px !important;
}
.syntheticborrow-section .sb-label {
  font-size: 20px !important;
  line-height: 28px !important;
}
.syntheticborrow-section .sb-rates-title {
  font-size: 30px !important;
  line-height: 36px !important;
}
.syntheticborrow-section .range-slider::-webkit-slider-thumb {
  appearance: none !important;
  background: #ffae33 !important;
  border: 0 !important;
  border-radius: 999px !important;
  height: 16px !important;
  width: 16px !important;
}
.syntheticborrow-section .range-slider::-moz-range-thumb {
  background: #ffae33 !important;
  border: 0 !important;
  border-radius: 999px !important;
  height: 16px !important;
  width: 16px !important;
}
main.page-content:has(.page-hero--copyright) .content-section {
  padding-bottom: 168px !important;
  padding-top: 96px !important;
}
main.page-content:has(.page-hero--copyright) .content-section ._container {
  max-width: 960px !important;
}
main.page-content:has(.page-hero--copyright) .content-section .prose {
  color: #003140 !important;
  font-size: 18px !important;
  line-height: 28px !important;
}
main.page-content:has(.page-hero--copyright) .content-section .prose h2 {
  color: #003140 !important;
  font-size: 30px !important;
  font-weight: 700 !important;
  line-height: 38px !important;
  margin-bottom: 32px !important;
  margin-top: 92px !important;
  text-align: center !important;
}
main.page-content:has(.page-hero--copyright) .content-section .prose h2:first-child {
  margin-top: 0 !important;
}
main.page-content:has(.page-hero--copyright) .content-section .prose p,
main.page-content:has(.page-hero--copyright) .content-section .prose li {
  margin-bottom: 18px !important;
}
main.page-content:has(.page-hero--copyright) .content-section .prose table {
  margin-bottom: 36px !important;
  margin-top: 36px !important;
  width: 62% !important;
}
main.page-content:has(.page-hero--copyright) .content-section .prose td {
  padding-bottom: 8px !important;
  padding-right: 44px !important;
}
@media (max-width: 767px) {
  .content-section--strategy,
  .content-section--strategy .article-body,
  .content-section--strategy .article-body p,
  .content-section--strategy .article-body li {
    font-size: 18px !important;
    line-height: 24px !important;
  }
  main.page-content:has(.strategy-page-menu--buffer-strategy) .content-section,
  main.page-content:has(.strategy-page-menu--target-income-strategy) .content-section,
  main.page-content:has(.strategy-page-menu--retirement-solutions) .content-section,
  main.page-content:has(.strategy-page-menu--buffer-strategy) .content-section .article-body,
  main.page-content:has(.strategy-page-menu--buffer-strategy) .content-section .article-body p,
  main.page-content:has(.strategy-page-menu--buffer-strategy) .content-section .article-body li,
  main.page-content:has(.strategy-page-menu--target-income-strategy) .content-section .article-body,
  main.page-content:has(.strategy-page-menu--target-income-strategy) .content-section .article-body p,
  main.page-content:has(.strategy-page-menu--target-income-strategy) .content-section .article-body li,
  main.page-content:has(.strategy-page-menu--retirement-solutions) .content-section .article-body,
  main.page-content:has(.strategy-page-menu--retirement-solutions) .content-section .article-body p,
  main.page-content:has(.strategy-page-menu--retirement-solutions) .content-section .article-body li {
    font-size: 18px !important;
    line-height: 24px !important;
  }
  .syntheticborrow-section .sb-title,
  .syntheticborrow-section .sb-title--tall {
    font-size: 30px !important;
    line-height: 36px !important;
  }
  .syntheticborrow-section .sb-label {
    font-size: 18px !important;
    line-height: 26px !important;
  }
  .syntheticborrow-section .sb-rates-title {
    font-size: 22px !important;
    line-height: 30px !important;
  }
  .syntheticborrow-section .range-slider::-webkit-slider-thumb {
    height: 14px !important;
    width: 14px !important;
  }
  .syntheticborrow-section .range-slider::-moz-range-thumb {
    height: 14px !important;
    width: 14px !important;
  }
  main.page-content:has(.page-hero--copyright) .content-section {
    padding-bottom: 120px !important;
    padding-top: 88px !important;
  }
  main.page-content:has(.page-hero--copyright) .content-section ._container {
    max-width: none !important;
  }
  main.page-content:has(.page-hero--copyright) .content-section .prose {
    font-size: 18px !important;
    line-height: 28px !important;
  }
  main.page-content:has(.page-hero--copyright) .content-section .prose h2 {
    font-size: 30px !important;
    line-height: 38px !important;
    margin-bottom: 28px !important;
    margin-top: 72px !important;
  }
  main.page-content:has(.page-hero--copyright) .content-section .prose table {
    width: 100% !important;
  }
  main.page-content:has(.page-hero--copyright) .content-section .prose td {
    display: block !important;
    padding-bottom: 8px !important;
    padding-right: 0 !important;
  }
}

.content-section--strategy .arrow-head {
  transform: translatex(-1px) rotate(-135deg);
}
.content-section--strategy .checkmark-list li::before {
  color: #ffa523;
  content: "✓";
  display: table-cell;
  font-weight: 700;
  padding-right: 12px;
}

.content-section .yellow-background h3 > b {
	font-size: 1.17em;
	font-weight: 900;
}