/* Final brand layer: keep every public page in the navy and blue system. */
:root {
  --warm-primary: #2563eb;
  --warm-primary-dark: #1d4ed8;
  --warm-primary-light: #e5efff;
  --warm-accent: #60a5fa;
  --warm-accent-hover: #3b82f6;
  --primary: #2563eb;
  --primary-dark: #1d4ed8;
  --primary-light: #e5efff;
  --accent: #60a5fa;
  --accent-hover: #3b82f6;
}

/* Shared links, buttons, badges, and content accents. */
body a,
body .content-hub a,
body .article-card a,
body .company-page-card a,
body .related-grid a,
body .hub-kicker,
body .article-label,
body .article-more,
body .hub-result-count {
  color: #2563eb;
}

body button,
body input[type="submit"],
body input[type="button"],
body .button,
body .header-cta-btn,
body .company-page-button,
body .contact-submit,
body .iq-submit-btn,
body .iq-quote-btn,
body .wp-element-button,
body .elementor-button,
body .content-hub .button,
body .content-hub-orange .button {
  background: #2563eb !important;
  border-color: #2563eb !important;
  color: #ffffff !important;
}

body .iq-widget.iq-widget--v3 .iq-submit-btn,
body .ip-process-step {
  background: #2563eb !important;
  border-color: #2563eb !important;
  color: #ffffff !important;
  font-weight: 800 !important;
  letter-spacing: 0.5px !important;
}

body .ip-process-card {
  background: #ffffff !important;
  border-top: 6px solid #2563eb !important;
  border-radius: 12px !important;
  box-shadow: 0 10px 30px rgba(37, 99, 235, 0.08) !important;
  transition: transform 0.25s ease, box-shadow 0.25s ease !important;
}

body .ip-process-card:hover {
  transform: translateY(-5px) !important;
  box-shadow: 0 18px 40px rgba(37, 99, 235, 0.16) !important;
  border-top-color: #1d4ed8 !important;
}

body .iq-widget.iq-widget--v3 .iq-submit-btn:hover {
  background: #1d4ed8 !important;
}

body button:hover,
body input[type="submit"]:hover,
body input[type="button"]:hover,
body .button:hover,
body .header-cta-btn:hover,
body .company-page-button:hover,
body .contact-submit:hover,
body .iq-submit-btn:hover,
body .iq-cta:hover,
body .iq-quote-btn:hover,
body .wp-element-button:hover,
body .elementor-button:hover,
body .content-hub .button:hover,
body .content-hub-orange .button:hover {
  background: #1d4ed8 !important;
  border-color: #1d4ed8 !important;
  color: #ffffff !important;
}

body .content-hub a:hover,
body .article-card a:hover,
body .company-page-card a:hover,
body .related-grid a:hover {
  color: #1d4ed8;
}

body .company-page-card,
body .article-card,
body .related-grid > a,
body .faq-item,
body .content-hub .hub-card {
  border-color: #d7e0ec;
}

body .company-page-card:hover,
body .article-card:hover,
body .related-grid > a:hover,
body .faq-item[open] {
  border-color: #60a5fa;
}

body .company-page-card::before,
body .article-card::before,
body .footer-col-title::after,
body .footer-links li a::before {
  background: #60a5fa;
}

body .single-article blockquote,
body .article-content blockquote {
  border-left-color: #60a5fa;
}

/* Keep editorial pages in the same navy and blue brand system. */
body .hub-kicker,
body .hub-hero .hub-kicker,
body .hub-stats strong,
body .article-breadcrumb a,
body .article-topic,
body .faq-answer-label,
body .article-hero .article-topic,
body .article-prose a,
body .isb-editorial-index,
body .isb-editorial-meta,
body .isb-text-link,
body .isb-editorial-read {
  color: #2563eb !important;
}

body .article-prose .isb-article-quote,
body .article-prose .isb-faq-quote,
body .article-card-art-placeholder {
  background: #eff6ff !important;
  border-left-color: #60a5fa !important;
}

body .isb-editorial-blog .site-content {
  background: #f4f7fb;
}

body .isb-editorial-row {
  border-top-color: #d7e0ec;
}

body .isb-editorial-blog .nav-links .current,
body .isb-editorial-blog .nav-links a:hover {
  background: #0f2f52;
  border-color: #0f2f52;
}

body .article-row-index {
  color: #2563eb !important;
}

body .page-numbers.current {
  background: #0f2f52 !important;
  border-color: #0f2f52 !important;
  color: #ffffff !important;
}

body .hub-sidebar a b {
  background: #eff6ff !important;
  color: #1d4ed8 !important;
}

body.isb-site-page .entry-header {
  display: none !important;
}

body.page-id-215 .hub-hero {
  background: linear-gradient(90deg, rgba(7, 28, 45, .9), rgba(7, 28, 45, .5)), var(--hub-hero-image) center / cover !important;
  color: #ffffff;
  min-height: 340px;
  display: flex;
  align-items: center;
}

body.page-id-215 .hub-hero h1,
body.page-id-215 .hub-hero p,
body.page-id-215 .hub-hero .hub-kicker,
body.page-id-215 .hub-hero .hub-stats strong,
body.page-id-215 .hub-hero .hub-stats span {
  position: relative;
  z-index: 1;
  color: #ffffff;
}

body.page-id-215 .hub-hero .hub-kicker,
body.page-id-215 .hub-hero .hub-stats strong {
  color: #bfdbfe;
}

/* Real site logo styling for header and footer */
.iq-header-logo a {
  display: inline-flex;
  align-items: center;
  text-decoration: none;
  gap: 10px;
}

.iq-header-logo .iq-logo-img,
.iq-header-logo .custom-logo {
  display: block !important;
  max-height: 52px;
  width: auto;
  object-fit: contain;
}

.csf-footer .csf-logo img,
.csf-footer .csf-logo .custom-logo {
  display: block !important;
  max-width: 220px;
  max-height: 56px;
  height: auto;
  object-fit: contain;
}

body.page-id-233 .ip-updated,
body.page-id-233 table th,
body.page-id-180 .ip-step-number,
body.page-id-180 .ip-score {
  background: #0f2f52 !important;
  border-color: #0f2f52 !important;
  color: #ffffff !important;
}

body.page-id-233 .entry-content a,
body.page-id-233 .entry-content .ip-tip-title,
body.page-id-233 .entry-content .ip-limit-number,
body.page-id-233 .entry-content .ip-quick-tip strong,
body.page-id-233 .entry-content h3,
body.page-id-180 .entry-content a,
body.page-id-245 .entry-content a {
  color: #2563eb !important;
}

body.page-id-233 h2::before,
body.page-id-233 .ip-card,
body.page-id-233 .ip-content-card,
body.page-id-233 .ip-coverage-card,
body.page-id-233 .ip-quick-tip,
body.page-id-233 .ip-tip-box,
body.page-id-233 .ip-limit-item,
body.page-id-233 .ip-hero,
body.page-id-233 .ip-table-wrapper,
body.page-id-180 .ip-process-card {
  border-color: #60a5fa !important;
}

body.page-id-233 .ip-tip-box,
body.page-id-233 .ip-quick-tip,
body.page-id-233 .ip-limit-item,
body.page-id-180 .ip-step-number,
body.page-id-180 .ip-score,
body.page-id-245 table tr:nth-child(even) {
  background: #eff6ff !important;
}

body.page-id-233 table tr:nth-child(even),
body.page-id-245 table tr:nth-child(even) {
  background: #f4f8fd !important;
}

body.page-id-233 table tr:nth-child(odd) td {
  background: #f4f8fd !important;
}

body.page-id-233 table td {
  background: #f4f8fd !important;
}

body.page-id-245 table th {
  background: #0f2f52 !important;
  color: #ffffff !important;
}

body.page-id-180 .ip-step-number,
body.page-id-180 .ip-score {
  background: #eff6ff !important;
  color: #1d4ed8 !important;
}

body.page-id-180 .ip-wrap h1 span {
  color: #2563eb !important;
  background: transparent !important;
}

body.page-id-180 .ip-orange-line {
  background: #2563eb !important;
}

body.page-id-180 .ip-card.ip-result {
  background: #0f2f52 !important;
}

body.page-id-180 .entry-content table th {
  background: #eff6ff !important;
  color: #0f2f52 !important;
}

@media (min-width: 901px) {
  body.page-id-233 .iq-header a,
  body.page-id-180 .iq-header a,
  body.page-id-245 .iq-header a {
    color: #ffffff !important;
  }
}

@media (max-width: 640px) {
  .iq-header-logo a::before {
    width: 29px;
    height: 34px;
    flex-basis: 29px;
  }

  .iq-header-logo a::after {
    font-size: 18px;
  }
}
