:root{
  /* Global link colors */
  --link:#0b1a38;        /* navy (unvisited) */
  --link-visited:#4b5e8b;/* soft steel blue (visited) */
  --link-hover:#c8242f;  /* patriotic red (hover/focus) */
}

/* =========================
   Global Links (non-buttons)
   ========================= */
:where(a):not(.btn-call):not(.btn-secondary):not([class*="btn"]){
  color:var(--link);
  text-underline-offset:.15em;
}
:where(a):visited:not(.btn-call):not(.btn-secondary):not([class*="btn"]){
  color:var(--link-visited);
}
:where(a):hover,
:where(a):focus-visible{
  color:var(--link-hover);
  outline:none;
}

/* ======================================
   Keep Top Nav & Footer Links Pure White
   ====================================== */
.top-nav a,
.top-nav a:visited,
.top-nav a:hover,
.top-nav a:focus{
  color:#fff !important;
  background:none !important;
  text-decoration:none !important;
}

.footer-links a,
.footer-links a:visited,
.footer-links a:hover,
.footer-links a:focus{
  color:#fff !important;
}

/* =========================================
   Area Bubbles (title color by link state)
   ========================================= */
.area-card:link .area-title{ color:var(--link); }
.area-card:visited .area-title{ color:var(--link-visited); }
.area-card:hover .area-title,
.area-card:focus .area-title{ color:var(--link-hover); }

/* =========================================
   Buttons (prevent red-on-red disappearance)
   ========================================= */
.btn-call,
.btn-secondary{
  color:#ffffff; /* base safeguard */
  text-decoration:none;
}

/* Red primary button */
.btn-call:hover,
.btn-call:focus{
  color:#ffffff !important;               /* keep text white on red */
  filter:brightness(1.08);                /* gentle feedback */
  text-shadow:0 1px 0 rgba(0,0,0,.25);    /* subtle readability pop */
}

/* Navy secondary button */
.btn-secondary:hover,
.btn-secondary:focus{
  color:#ffffff !important;
  filter:brightness(1.05);
  text-shadow:0 1px 0 rgba(0,0,0,.2);
}
