/*
 * Readability theme.
 * Warm neutral reading surfaces, deep evergreen panels, and WCAG-oriented text contrast.
 */
:root {
  --read-bg: #f7f5ef;
  --read-surface: #fffdf9;
  --read-soft: #e7f0eb;
  --read-ink: #22312d;
  --read-copy: #405650;
  --read-muted: #5b716b;
  --read-border: #cbd7cf;
  --read-hero: #244741;
  --read-hero-2: #315b54;
  --read-accent: #934d2d;

  --pcc-navy: var(--read-hero) !important;
  --pcc-navy-mid: var(--read-hero-2) !important;
  --pcc-blue: var(--read-hero) !important;
  --pcc-blue-mid: #38655e !important;
  --pcc-blue-pale: var(--read-soft) !important;
  --pcc-slate: var(--read-copy) !important;
  --pcc-slate-mid: var(--read-muted) !important;
  --pcc-off-white: var(--read-bg) !important;
  --pcc-surface: var(--read-surface) !important;
  --pcc-border: var(--read-border) !important;
  --pcc-text-primary: var(--read-ink) !important;
  --pcc-text-secondary: var(--read-copy) !important;
  --pcc-text-tertiary: var(--read-muted) !important;
}

body,
body.pcc-site,
.pcc-page,
.sp-page,
#pcc-app-wrapper {
  background: var(--read-bg) !important;
  color: var(--read-ink) !important;
}

a { color: #265e57; }

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: var(--pcc-font-display, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif) !important;
  letter-spacing: -.035em;
}

.plc-header {
  background: #eef4f0 !important;
  border-bottom-color: var(--read-border) !important;
}

.pcc-breadcrumb,
.plc-breadcrumb {
  background: var(--read-soft) !important;
  border-color: var(--read-border) !important;
}

.pcc-breadcrumb a,
.pcc-breadcrumb span,
.plc-breadcrumb a,
.plc-breadcrumb span {
  color: var(--read-copy) !important;
}

.sp-hero,
.home-hero,
.pcc-site-footer,
.pcc-post-cta,
.pcc-highlight--dark,
.bcg-hero,
.bcg-cta,
.cost-hero,
.takeaway-box,
.final-box,
.sidebar-card.blue,
.tier-card.active {
  background: var(--read-hero) !important;
}

.pcc-card,
.pcc-post-card,
.pcc-contact-card,
.pcc-source-item,
.pcc-value-card,
.bcg-card,
.snapshot-card,
.info-card,
.tier-card,
.sidebar-card,
.table-wrap,
.faq-item,
.tips-list div,
.source-list a,
.side-link,
.tool-card {
  background: var(--read-surface) !important;
  border-color: var(--read-border) !important;
}

#pcc-app-wrapper {
  --brand-blue: var(--read-soft);
  --brand-blue-dark: #f5faf7;
  --brand-amber: #d98b5f;
  --hero-dark: var(--read-hero);
  --page-bg: var(--read-bg);
  --card-bg: var(--read-surface);
  --body-text: var(--read-ink);
  --navy: var(--read-hero);
  --navy-2: var(--read-hero-2);
  --blue: var(--read-hero);
  --blue-2: #38655e;
  --blue-light: var(--read-soft);
  --surface-2: #f5faf7;
  --border: var(--read-border);
  --text: var(--read-ink);
  --text-muted: var(--read-copy);
}

#pcc-app-wrapper .hero {
  background: var(--read-hero) !important;
}

#pcc-app-wrapper .hero-badge.hero-badge--trust {
  border-color: #c8d8d1 !important;
  background: #f5faf7 !important;
  color: #315b54 !important;
}

#pcc-app-wrapper .hero h1 span { color: #d9eee7 !important; }
#pcc-app-wrapper .hero-sub { color: #f4faf7 !important; }
#pcc-app-wrapper .hero-reassurance { color: #d4e7df !important; }
#pcc-app-wrapper .hero-pet-strip { color: #eef7f3 !important; }
#pcc-app-wrapper .hero-stat-lbl { color: #d9eee7 !important; }

#pcc-app-wrapper .hero-stat,
#pcc-app-wrapper .hero-stat:first-child {
  border-color: rgba(239, 248, 244, .28) !important;
  background: rgba(15, 48, 44, .36) !important;
}

#pcc-app-wrapper .hero-cta-primary {
  border-color: #f5faf7 !important;
  background: #f5faf7 !important;
  color: var(--read-hero) !important;
}

#pcc-app-wrapper .hero-cta-secondary {
  border-color: #bfd4cc !important;
  color: #ffffff !important;
}

.pcc-home-seo-intro {
  background: var(--read-bg) !important;
  border-color: var(--read-border) !important;
}

.pcc-home-seo-intro h2 { color: var(--read-ink) !important; }
.pcc-home-seo-intro p,
#pcc-app-wrapper .pcc-result-source,
#pcc-app-wrapper .dir-block__note,
#pcc-app-wrapper .dir-header__p {
  color: var(--read-copy) !important;
}

#pcc-app-wrapper .mode-tab {
  border-color: var(--read-border) !important;
  background: var(--read-surface) !important;
  color: var(--read-copy) !important;
}

#pcc-app-wrapper .mode-tab.active {
  border-color: var(--read-hero) !important;
  background: var(--read-hero) !important;
  color: #ffffff !important;
}

#pcc-app-wrapper .pcc-step-intro,
#pcc-app-wrapper .pcc-result-sub,
#pcc-app-wrapper .pcc-summary-note {
  color: var(--read-copy) !important;
}

#pcc-app-wrapper .field-label,
#pcc-app-wrapper .sf-title,
#pcc-app-wrapper .label-xs {
  color: #405650 !important;
}

#pcc-app-wrapper .range-ends span {
  color: var(--read-muted) !important;
}

#pcc-app-wrapper .dir-card__cta,
#pcc-app-wrapper .dir-card__cta span {
  background: var(--read-soft) !important;
  color: var(--read-hero) !important;
}

.journal-card-meta,
.journal-card-meta span,
.journal-card-body p,
.journal-topic p,
.pcc-post-card__excerpt,
.pcc-post-single__excerpt,
.pcc-post-body p,
.pcc-post-body li {
  color: var(--read-copy) !important;
}

.journal-hero aside span,
.journal-section-heading p {
  color: var(--read-copy) !important;
}

.journal-calculator span,
.journal-calculator p {
  color: #f4faf7 !important;
}

.bcg-hero__h1,
.bcg-cta__h2,
.bcg-hero__lead,
.bcg-cta__sub {
  color: #ffffff !important;
}

.bcg-section__sub,
.cost-section p,
.final-box p,
.methodology-box p,
.driver-card p,
.lifetime-box p,
.reserve-box p,
.reality-list p {
  color: var(--read-copy) !important;
}

.bcg-section__eyebrow,
.bcg-card__cta,
.source-list a,
.side-link,
.reserve-box a,
.methodology-box a {
  color: #2d625b !important;
}

.bcg-cta__btn--primary {
  background: #f5faf7 !important;
  color: var(--read-hero) !important;
}

.bcg-cta__btn--secondary {
  border-color: #bfd4cc !important;
  background: transparent !important;
  color: #ffffff !important;
}

.cost-tabs {
  background: var(--read-soft) !important;
  border-color: var(--read-border) !important;
}

.cost-tabs a,
.pill,
.kicker,
.table-row {
  color: var(--read-copy) !important;
}

.cost-section h1,
.cost-section h2,
.cost-section h3,
.methodology-box h2,
.driver-card__head strong,
.lifetime-box strong,
.snapshot-card strong,
.side-row strong,
.faq-item button {
  color: var(--read-ink) !important;
}

.takeaway-box .kicker,
.final-box .kicker,
.sidebar-card.blue .kicker {
  color: #d9eee7 !important;
}

.takeaway-box li,
.final-box p,
.sidebar-card.blue p,
.tier-card.active p,
.tier-card.active span,
.tier-card.active em {
  color: #f4faf7 !important;
}

.driver-card,
.lifetime-box,
.reserve-box,
.methodology-box,
.reality-list {
  background: #f0f5f1 !important;
  border-color: var(--read-border) !important;
}

#pcc-breed-v3 {
  --v3-navy: var(--read-hero);
  --v3-navy-light: var(--read-hero-2);
  --v3-navy-mid: #3b6861;
  --v3-accent: #2d625b;
  --v3-accent-2: #477970;
  --v3-text: var(--read-ink);
  --v3-text-mid: var(--read-copy);
  --v3-text-soft: var(--read-muted);
  --v3-bg: var(--read-bg);
  --v3-card: var(--read-surface);
  --v3-border: var(--read-border);
}

.plc-footer {
  background: #f2eee7 !important;
  color: #2f3a32 !important;
  border-top-color: #e4ded4 !important;
}
.plc-footer__brand-name,
.plc-footer__col h4 {
  color: #10251a !important;
}
.plc-footer__desc,
.plc-footer__col a,
.plc-footer__bottom,
.plc-footer__legal a {
  color: #52635a !important;
}
.plc-footer__badge {
  border-color: #cbd7cf !important;
  background: #e7f0eb !important;
  color: #2f5d3a !important;
}
.plc-footer__bottom {
  border-top-color: #ddd6cb !important;
}

/* Final homepage accessibility lock: readable hero text, safer mobile crop, and high-contrast result panel. */
#pcc-app-wrapper .hero h1 {
  color: #101813 !important;
  text-shadow: none !important;
}

#pcc-app-wrapper .hero h1 span {
  color: #0f8f58 !important;
}

#pcc-app-wrapper .hero-sub {
  color: #24342c !important;
  text-shadow: none !important;
}

#pcc-app-wrapper .hero-cta-primary {
  border-color: #195c3b !important;
  background: #195c3b !important;
  color: #ffffff !important;
}

#pcc-app-wrapper .hero-cta-secondary {
  border-color: rgba(17, 24, 20, .34) !important;
  background: rgba(255, 255, 255, .84) !important;
  color: #111813 !important;
}

#pcc-app-wrapper .hero-trust.hero-trust--compact,
#pcc-app-wrapper .hero-trust__item strong {
  color: #24342c !important;
}

#pcc-app-wrapper .pcc-live-estimate,
#pcc-app-wrapper .pcc-result-hero {
  color: #ffffff !important;
}

#pcc-app-wrapper .pcc-live-estimate__label,
#pcc-app-wrapper .pcc-live-estimate p,
#pcc-app-wrapper .pcc-live-estimate__badge,
#pcc-app-wrapper .pcc-result-sub,
#pcc-app-wrapper .pcc-summary-label,
#pcc-app-wrapper .pcc-summary-note,
#pcc-app-wrapper .pcc-insight-card__text {
  color: rgba(255, 255, 255, .86) !important;
}

#pcc-app-wrapper .pcc-live-estimate strong,
#pcc-app-wrapper .pcc-result-title,
#pcc-app-wrapper .pcc-summary-value,
#pcc-app-wrapper .pcc-summary-card--lifetime .pcc-summary-value,
#pcc-app-wrapper .pcc-insight-card__title {
  color: #ffffff !important;
}

#pcc-app-wrapper .pcc-summary-card,
#pcc-app-wrapper .pcc-summary-card--lifetime,
#pcc-app-wrapper .pcc-insight-card {
  border-color: rgba(255, 255, 255, .26) !important;
  background: rgba(255, 255, 255, .16) !important;
}

@media (max-width: 760px) {
  #pcc-app-wrapper .hero-scene-image {
    object-position: 72% center !important;
  }

  #pcc-app-wrapper .hero::before {
    background:
      linear-gradient(90deg, rgba(248,245,239,.96) 0%, rgba(248,245,239,.74) 50%, rgba(248,245,239,.18) 82%, rgba(248,245,239,0) 100%) !important;
  }

  #pcc-app-wrapper .hero-sub,
  #pcc-app-wrapper .hero-trust.hero-trust--compact,
  #pcc-app-wrapper .hero-trust__item strong {
    color: #1d2f25 !important;
  }
}

@media (max-width: 420px) {
  #pcc-app-wrapper .hero-scene-image {
    object-position: 76% center !important;
  }
}
