/* CustodyProviders.com V11.2 — utility page readability hardening
   Scope: .ca-page utility / form pages only.
   Goal: fix pale intro copy and weak supporting text on light backgrounds
   without changing structure or behavior. */

body.ca-page{
  background:
    radial-gradient(900px 420px at 50% -160px, rgba(37,99,235,.08), transparent 68%),
    linear-gradient(180deg, #fbfcff 0%, #f3f6fb 46%, #f8fafd 100%) !important;
  color:#12243b !important;
}

body.ca-page .ca-main{
  padding-top:48px !important;
}

/* Light intro area above dark cards */
body.ca-page .ca-hero{
  max-width:920px !important;
  margin-bottom:28px !important;
}
body.ca-page .ca-hero .ca-kicker{
  color:#5d7190 !important;
  -webkit-text-fill-color:#5d7190 !important;
  font-weight:800 !important;
  letter-spacing:.12em !important;
}
body.ca-page .ca-hero h1,
body.ca-page .ca-hero h2,
body.ca-page .ca-hero h3{
  color:#0b1f3a !important;
  -webkit-text-fill-color:#0b1f3a !important;
}
body.ca-page .ca-hero .ca-muted,
body.ca-page .ca-hero p,
body.ca-page .ca-hero span,
body.ca-page .ca-hero li{
  color:#4d617a !important;
  -webkit-text-fill-color:#4d617a !important;
  opacity:1 !important;
}

/* Keep dark cards rich and readable */
body.ca-page .ca-card{
  background:linear-gradient(180deg, #13284b 0%, #102444 100%) !important;
  border-color:rgba(137, 162, 197, .35) !important;
  box-shadow:0 18px 48px rgba(0, 0, 0, .18) !important;
}
body.ca-page .ca-card > h2,
body.ca-page .ca-card > h3,
body.ca-page .ca-card label,
body.ca-page .ca-card .ca-legend{
  color:#ffffff !important;
  -webkit-text-fill-color:#ffffff !important;
}
body.ca-page .ca-card p,
body.ca-page .ca-card li,
body.ca-page .ca-card span,
body.ca-page .ca-card .ca-muted,
body.ca-page .ca-card .ca-disclaimer,
body.ca-page .ca-card dd,
body.ca-page .ca-card dt{
  color:#dce7f5 !important;
  -webkit-text-fill-color:#dce7f5 !important;
  opacity:1 !important;
}
body.ca-page .ca-card .ca-disclaimer{
  color:#d7e3f3 !important;
  -webkit-text-fill-color:#d7e3f3 !important;
  border-left-color:#f0c24e !important;
}
body.ca-page .ca-card a{
  color:#bcd3ff !important;
  -webkit-text-fill-color:#bcd3ff !important;
}

/* Footer copy on light page background */
body.ca-page .ca-footer,
body.ca-page .ca-footer *{
  color:#4d617a !important;
  -webkit-text-fill-color:#4d617a !important;
}

@media (max-width:760px){
  body.ca-page .ca-main{padding-top:34px !important;}
  body.ca-page .ca-hero{margin-bottom:22px !important;}
}

/* V11.3 — compact brand treatment for dark utility headers.
   The current PNG has a white canvas, so keep it as a deliberate compact brand plaque
   rather than letting it dominate the navigation. */
body.ca-page .ca-header .ca-nav{
  min-height:68px !important;
  padding-top:6px !important;
  padding-bottom:6px !important;
}
body.ca-page .ca-header .ca-brand{
  padding:4px 8px !important;
  border-radius:11px !important;
  background:#fff !important;
  border:1px solid rgba(255,255,255,.18) !important;
  box-shadow:0 4px 14px rgba(0,0,0,.12) !important;
  line-height:0 !important;
}
body.ca-page .ca-header .ca-brand .site-logo{
  width:184px !important;
  max-width:184px !important;
  max-height:48px !important;
  height:auto !important;
  object-fit:contain !important;
}
body.ca-page .ca-header .ca-nav-links{
  gap:16px !important;
}
body.ca-page .ca-header .ca-nav-links a{
  color:#dbe8fb !important;
  -webkit-text-fill-color:#dbe8fb !important;
  font-weight:600 !important;
}

@media (max-width:760px){
  body.ca-page .ca-header .ca-nav{
    min-height:62px !important;
    padding-top:5px !important;
    padding-bottom:5px !important;
  }
  body.ca-page .ca-header .ca-brand{
    padding:3px 7px !important;
    border-radius:10px !important;
  }
  body.ca-page .ca-header .ca-brand .site-logo{
    width:154px !important;
    max-width:154px !important;
    max-height:42px !important;
  }
}

@media (max-width:420px){
  body.ca-page .ca-header .ca-brand .site-logo{
    width:142px !important;
    max-width:142px !important;
  }
}
