:root {
  --navy: #173B57;
  --teal: #2F7B78;
  --white: #FFFFFF;
  --surface: #F4F7F8;
  --cta: #E8872F;
  --text: #26343D;
}

html, body { background: var(--white); color: var(--text); }
h1, h2, h3, .headline,
.hi-sections h1, .hi-sections h2, .hi-sections h3,
.hi-sections strong, .testimonial-card__author { color: var(--navy); }
p, li, ul, .sub-headline, .meta, .date-bar,
.hi-sections p, .hi-sections li, .hi-sections blockquote { color: var(--text); }
a, .footer a { color: var(--teal); }
h2 { border-color: var(--teal); }

.hi-header { background: var(--navy); border-color: var(--navy); }
.hi-logo, .hi-logo span, .hi-nav a { color: var(--white); }
.hi-nav a:hover { color: var(--cta); }
.hi-tag-bar { background: var(--surface); border-color: var(--surface); }
.hi-tag { background: var(--teal); }
.hi-sections h2 { border-left-color: var(--teal); }
.hi-sections .section-block:nth-child(even) {
  background: var(--surface);
  padding: 24px;
  border-radius: 12px;
}
.hi-sections .section-block:nth-child(even) h2:first-child { margin-top: 0; }
.hi-sections .faq-item {
  background: var(--surface);
  border-bottom: 1px solid #2F7B7833;
  padding: 8px 0;
}
.hi-sections .section__highlight, .hi-info-box, .hi-sections blockquote {
  background: #2F7B7810;
  border-color: var(--teal);
  color: var(--teal);
}
.hi-info-box-title, .hi-sections .testimonial-card__stars,
.hi-sections .section__arrow::before,
.hi-sections .final-cta__arrow-item::before { color: var(--teal); }
.hi-sections .section__cta-wrap { background: var(--surface); }
.hi-sections .cta-button, .hi-cta-btn {
  display: block;
  width: fit-content;
  max-width: 100%;
  margin-inline: auto;
  text-align: center;
  background: var(--cta);
  color: var(--navy);
  box-shadow: 0 3px 10px #173B5718;
  transition: transform .2s, box-shadow .2s;
}
.hi-sections .cta-button:hover, .hi-cta-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 6px 18px #173B572E;
}
a:focus-visible { outline: 3px solid var(--teal); outline-offset: 4px; }
.hi-header a:focus-visible { outline-color: var(--cta); }
.hi-cta-block { background: var(--navy); }
.hi-sections .testimonial-card { border-color: #2F7B7833; background: var(--white); }
.hi-sections .testimonial-card__portrait { margin: 0 0 16px; }
.hi-sections .testimonial-card__portrait img {
  display: block;
  width: 96px;
  height: 96px;
  object-fit: cover;
  border-radius: 50%;
  border: 3px solid #2F7B7833;
  margin: 0 0 6px;
}
.testimonial-card__portrait figcaption { font-size: 12px; color: var(--text); }
.hi-sections .cta-caption, .hi-sections .final-cta__caption,
.hi-sections .testimonials__disclaimer, .footer { color: var(--text); }

body > footer { background: var(--navy) !important; color: var(--surface) !important; }
body > footer p, body > footer a, body > footer span { color: var(--surface) !important; }
body > footer > div > div:first-child {
  background: #FFFFFF0A !important;
  border-color: #FFFFFF33 !important;
}
body > footer a:hover { color: var(--cta) !important; }

@media (max-width: 480px) {
  .hi-sections .section-block:nth-child(even) { padding: 18px 14px; }
}
