/* KatSar v1.5.1 — readability and contrast pass for all existing layouts.
   Loaded LAST. Deliberately scopes overrides to preserve the v1.5.0 design. */
:root {
  --k51-ink: #17384c;
  --k51-body: #344f5f;
  --k51-secondary: #486574;
  --k51-link: #006a9e;
  --k51-navy: #082b40;
}
html { -webkit-text-size-adjust: 100%; }
body.katsar-modern { font-size: 17px; line-height: 1.65; color: var(--k51-ink); }
body.katsar-modern p,
body.katsar-modern .entry-content p,
body.katsar-modern .entry-content li {font-size: 17px;line-height: 1.72;color:var(--k51-body)}
body.katsar-modern main li {line-height:1.65}
body.katsar-modern h1,body.katsar-modern h2,body.katsar-modern h3,body.katsar-modern h4 {color:var(--k51-ink)}
body.katsar-modern a:focus-visible,
body.katsar-modern button:focus-visible,
body.katsar-modern textarea:focus-visible,
body.katsar-modern select:focus-visible {outline:3px solid #2ba7df;outline-offset:3px}

/* Primary navigation is one meaningful size larger; dropdowns and support shortcut match. */
body.katsar-modern #site-header .nav-shell,
body.katsar-modern #site-header .nav-inner { min-height: 57px; height:auto; }
body.katsar-modern #site-header .primary-nav .menu>li>a {font-size:14.5px;line-height:1.36;font-weight:700;padding:18px 11px;height:auto;min-height:57px;color:#fff;}
body.katsar-modern #site-header .primary-nav .sub-menu {top:100%;}
body.katsar-modern #site-header .primary-nav .sub-menu a {font-size:15px;line-height:1.38;min-height:46px;color:#17384c;padding:12px 16px}
body.katsar-modern #site-header .primary-nav .sub-menu a:hover,
body.katsar-modern #site-header .primary-nav .sub-menu a:focus-visible {color:#06476c;background:#e9f6fc}
body.katsar-modern #site-header .support-shortcut {font-size:13px;line-height:1.3;color:#fff;background:#105172;padding:0 15px;}
body.katsar-modern #site-header .header-action strong {font-size:12px;line-height:1.3}
body.katsar-modern #site-header .email-chip strong {font-size:15px;color:#214d65}
body.katsar-modern #site-header .phone-chip strong {font-size:21px;color:#006a9e}

/* Readable UI controls and links in both legacy and rebuilt templates. */
body.katsar-modern .site-btn,
body.katsar-modern .compact-blue-button,
body.katsar-modern .btn,
body.katsar-modern .text-arrow,
body.katsar-modern .final-cta a {font-size:13.5px;line-height:1.38}
body.katsar-modern .site-btn-blue,
body.katsar-modern .compact-blue-button,
body.katsar-modern .btn-primary,
body.katsar-modern .header-action.primary {background:linear-gradient(125deg,#0675b2,#005f97);color:#fff}
body.katsar-modern .site-btn-light {color:#075578;background:#fff}
body.katsar-modern .site-btn-outline-light,
body.katsar-modern .site-btn-outline {color:#fff}
body.katsar-modern .small-blue-label,
body.katsar-modern .hero-eyebrow {font-size:13px;line-height:1.5}
body.katsar-modern input:not([type=checkbox]):not([type=radio]),
body.katsar-modern textarea,
body.katsar-modern select,
body.katsar-modern .support-form-card input,
body.katsar-modern .contact-form-card-v13 input {font-size:16px;line-height:1.55;color:#17384c}
body.katsar-modern label {font-size:15px;line-height:1.5;color:#24485b}
body.katsar-modern ::placeholder {color:#536c7a;opacity:1}
body.katsar-modern .entry-content a:not(.site-btn) {color:#00689a;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}

/* Old-style sections on the homepage, contact, about, support and audience pages:
   explicit foreground rules prevent generic heading/body CSS turning text dark on navy. */
body.katsar-modern .home-slide h1,
body.katsar-modern .home-slide h2,
body.katsar-modern .home-slide .home-slide-title,
body.katsar-modern .preview-hero h1,
body.katsar-modern .preview-hero h2,
body.katsar-modern .inner-hero-v13 h1,
body.katsar-modern .inner-hero-v13 h2,
body.katsar-modern .audience-hero-v14 h1,
body.katsar-modern .audience-hero-v14 h2,
body.katsar-modern .service-hero-v13 h1,
body.katsar-modern .service-hero-v13 h2,
body.katsar-modern .contact-hero-v13 h1,
body.katsar-modern .contact-hero-v13 h2,
body.katsar-modern .support-hero h1,
body.katsar-modern .support-hero h2,
body.katsar-modern .about-hero h1,
body.katsar-modern .about-hero h2,
body.katsar-modern .page-hero h1,
body.katsar-modern .page-hero h2,
body.katsar-modern .service-page-cta-v13 h2,
body.katsar-modern .final-cta h2,
body.katsar-modern .final-cta-v13 h2,
body.katsar-modern .ks-intercom-showcase h2,
body.katsar-modern .ks-intercom-showcase h3 {color:#fff}
body.katsar-modern .home-slide-copy p,
body.katsar-modern .preview-hero-copy p,
body.katsar-modern .inner-hero-v13 p,
body.katsar-modern .audience-hero-copy-v14 p,
body.katsar-modern .service-hero-copy-v13 p,
body.katsar-modern .contact-hero-v13 p,
body.katsar-modern .support-hero p,
body.katsar-modern .about-hero p,
body.katsar-modern .page-hero p,
body.katsar-modern .service-page-cta-v13 p,
body.katsar-modern .final-cta p,
body.katsar-modern .final-cta-v13 p,
body.katsar-modern .ks-intercom-showcase p {color:#ebf5fa;font-size:17px;line-height:1.72}
body.katsar-modern .about-stats b,
body.katsar-modern .about-stats span {color:#fff}
body.katsar-modern .about-stats span {font-size:14px}
body.katsar-modern .home-slide .hero-eyebrow,
body.katsar-modern .about-hero .small-blue-label,
body.katsar-modern .contact-hero-v13 .small-blue-label,
body.katsar-modern .support-hero .small-blue-label {color:#b5eaff}
body.katsar-modern .home-slide-copy {text-shadow:0 1px 2px rgba(0,0,0,.15)}

/* Theme v1.5 editorial components: sensible base sizes, without scaling major headings. */
body.katsar-modern main.k50 p {font-size:17px;line-height:1.7;color:var(--k51-body)}
body.katsar-modern main.k50 h3 {font-size:20px;line-height:1.35}
body.katsar-modern main.k50 .k50-eyebrow {font-size:12.5px;line-height:1.55;letter-spacing:.16em;color:#006b9d}
body.katsar-modern main.k50 .k50-link,
body.katsar-modern main.k50 .k50-region-card span,
body.katsar-modern main.k50 .k50-system-card span {font-size:13.5px;color:#006b9f;line-height:1.45;letter-spacing:.025em}
body.katsar-modern main.k50 .k50-button {font-size:13px;min-height:52px;padding:13px 20px;letter-spacing:.025em}
body.katsar-modern main.k50 .k50-primary {background:linear-gradient(115deg,#0676af,#005e95);color:#fff}
body.katsar-modern main.k50 .k50-outline-blue {color:#06587d;border-color:#147aaa}
body.katsar-modern main.k50 .k50-outline-white {color:#fff;border-color:#ebf8ff}
body.katsar-modern main.k50 .k50-area-hero h1,
body.katsar-modern main.k50 .k50-inner-copy h1,
body.katsar-modern main.k50 .k50-last-cta h2,
body.katsar-modern main.k50 .k50-banner-call h2 {color:#fff}
body.katsar-modern main.k50 .k50-area-hero p,
body.katsar-modern main.k50 .k50-inner-copy p,
body.katsar-modern main.k50 .k50-last-cta p,
body.katsar-modern main.k50 .k50-banner-call p {font-size:17px;line-height:1.62;color:#edf7fd}
body.katsar-modern main.k50 .k50-eyebrow-light,
body.katsar-modern main.k50 .k50-area-hero .k50-eyebrow-light {color:#d4f1ff}
body.katsar-modern .k50-hero-facts strong {font-size:15px;color:#183d53;line-height:1.35}
body.katsar-modern .k50-hero-facts small {font-size:13px;color:#486778;line-height:1.5}
body.katsar-modern .k50-map-panel figcaption {font-size:13px;color:#3b6074}
body.katsar-modern main.k50 .k50-region-card h3,
body.katsar-modern main.k50 .k50-system-card h3 {font-size:19px}
body.katsar-modern main.k50 .k50-region-card p,
body.katsar-modern main.k50 .k50-system-card p {font-size:15px;line-height:1.55;color:#385567;min-height:0}
body.katsar-modern .k50-region-meta,
body.katsar-modern .k50-system-card>div {padding:19px 20px 23px}
body.katsar-modern .k50-benefit-grid strong {font-size:15px;color:#1d4358}
body.katsar-modern .k50-benefit-grid small {font-size:13.5px;color:#435f70;line-height:1.53}
body.katsar-modern main.k50 .k50-repair-intro p {font-size:17px;line-height:1.65;color:#385b6e}
body.katsar-modern .k50-repair-vertical-list>div {font-size:14px;color:#34556a}
body.katsar-modern main.k50 .k50-promise-grid h3 {font-size:18px}
body.katsar-modern main.k50 .k50-promise-grid p {font-size:15px;color:#405d6d;line-height:1.56}
body.katsar-modern .k50-promise-grid article {min-height:195px}
body.katsar-modern main.k50 .k50-checks li,
body.katsar-modern main.k50 .k50-feature-grid>div {font-size:16px;color:#2f5266}
body.katsar-modern main.k50 .k50-editorial-card .entry-content p {font-size:16.5px;line-height:1.7;color:#36566a}
body.katsar-modern .k50-back {font-size:13px;color:#c6ebff}

/* Non-editorial legacy cards and dashboard forms. */
body.katsar-modern .service-card-v13 p,
body.katsar-modern .audience-service-card-v14 p,
body.katsar-modern .process-grid-v13 p,
body.katsar-modern .about-value-grid p,
body.katsar-modern .support-benefits small,
body.katsar-modern .support-feature-grid small,
body.katsar-modern .support-steps small {font-size:15px;line-height:1.6;color:#3e5c6c}
body.katsar-modern .about-value-grid h3,
body.katsar-modern .support-benefits strong,
body.katsar-modern .support-feature-grid strong,
body.katsar-modern .support-steps strong {font-size:16px;color:#125174}
body.katsar-modern .support-form-card p,
body.katsar-modern .support-intro>p,
body.katsar-modern .contact-info-v13 p,
body.katsar-modern .contact-form-card-v13 p {font-size:17px;color:#385565;line-height:1.72}
body.katsar-modern .support-phone-card small {font-size:13px;color:#35586e}
body.katsar-modern .support-phone-card a {font-size:14px;color:#006a9e}
body.katsar-modern .support-feature-grid small,
body.katsar-modern .support-steps small {font-size:14px}

/* Footer is dark on every page. Avoid inherited dark text from global h/body rules. */
body.katsar-modern .site-footer h2,
body.katsar-modern .site-footer h3,
body.katsar-modern .site-footer strong {color:#fff}
body.katsar-modern .site-footer p,
body.katsar-modern .site-footer .footer-brand-col p,
body.katsar-modern .site-footer .footer-contact-col p,
body.katsar-modern .site-footer .footer-bottom,
body.katsar-modern .site-footer .footer-bottom span {font-size:14.5px;line-height:1.7;color:#e0eef5!important}
body.katsar-modern .site-footer .footer-links a,
body.katsar-modern .site-footer .footer-email,
body.katsar-modern .site-footer .footer-contact-col a:not(.site-btn) {font-size:14.5px;line-height:1.7;color:#e3f0f6}
body.katsar-modern .site-footer .footer-phone {font-size:23px;color:#fff}
body.katsar-modern .site-footer a:hover {color:#fff;text-decoration:underline}

@media (max-width:1280px) and (min-width:981px) {
  body.katsar-modern #site-header .primary-nav .menu>li>a {font-size:13.5px;padding:18px 8px}
  body.katsar-modern #site-header .support-shortcut {font-size:12px;padding-inline:10px}
  body.katsar-modern #site-header .email-chip strong {font-size:13px}
}
@media (max-width:980px) {
  body.katsar-modern #site-header .primary-nav .menu>li>a {font-size:16px;min-height:48px;padding:14px 19px;}
  body.katsar-modern #site-header .primary-nav .sub-menu {position:static;box-shadow:none;min-width:0;}
  body.katsar-modern #site-header .primary-nav .sub-menu a {font-size:15px;padding:13px 28px}
  body.katsar-modern #site-header .support-shortcut {font-size:13px;min-height:55px}
  body.katsar-modern main.k50 .k50-repair-intro h1 {font-size:clamp(35px,4.5vw,52px)}
}
@media (max-width:700px) {
  body.katsar-modern {font-size:16.5px}
  body.katsar-modern p,body.katsar-modern main.k50 p {font-size:16px;line-height:1.65}
  body.katsar-modern #site-header .nav-shell,body.katsar-modern #site-header .nav-inner {min-height:50px}
  body.katsar-modern #site-header .nav-toggle {min-width:44px;min-height:44px}
  body.katsar-modern main.k50 .k50-region-card p,
  body.katsar-modern main.k50 .k50-system-card p,
  body.katsar-modern main.k50 .k50-promise-grid p {font-size:15px}
  body.katsar-modern main.k50 .k50-button {font-size:13px}
  body.katsar-modern .k50-promise-grid article {min-height:0}
  body.katsar-modern #site-header .header-action strong {font-size:11px}
  body.katsar-modern .site-footer p,body.katsar-modern .site-footer a {font-size:14.5px}
}
/* Small inherited release-specific declarations used !important; override explicitly. */
body.katsar-modern .site-footer .footer-brand-col>p,
body.katsar-modern .site-footer .footer-contact-col p,
body.katsar-modern .site-footer .footer-bottom,
body.katsar-modern .site-footer .footer-bottom a,
body.katsar-modern .site-footer .footer-contact-col .site-btn,
body.katsar-modern .site-footer .footer-contact-col a {font-size:14.5px!important;line-height:1.65}
body.katsar-modern .site-footer .footer-brand-col>p,
body.katsar-modern .site-footer .footer-bottom,
body.katsar-modern .site-footer .footer-contact-col p {color:#e0eef5!important}
body.katsar-modern .site-footer .footer-contact-col .site-btn {color:#fff}
body.katsar-modern main.k50 .k50-eyebrow {font-size:13.5px}
body.katsar-modern main.k50 .k50-button {font-size:14px}
body.katsar-modern #site-header .header-action strong {font-size:13px}
