/* Grupo Convergia design tokens: shared by every static page. */
:root {
  --brand-primary: #06265C;
  --brand-primary-dark: #031B46;
  --brand-blue: #006AE8;
  --brand-blue-bright: #087CFF;
  --brand-secondary: #1254A5;
  --brand-light: #EAF3FF;
  --background: #F7F9FC;
  --surface: #FFFFFF;
  --text-primary: #0A1F44;
  --text-secondary: #52647A;
  --border: #DCE5F0;
  --focus-ring: rgba(0, 106, 232, .32);
  --shadow: 0 12px 36px rgba(6, 38, 92, .10);
}

body { background: var(--background) !important; color: var(--text-primary) !important; }
h1, h2, h3, h4 { color: var(--text-primary); }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible {
  outline: 3px solid var(--focus-ring); outline-offset: 3px;
}
.dots-bg { background-image: radial-gradient(circle, rgba(8,124,255,.18) 1px, transparent 1px) !important; }
.card-lift:hover { box-shadow: var(--shadow) !important; }
.form-input { background: var(--surface) !important; border-color: var(--border) !important; color: var(--text-primary) !important; }
.form-input:focus { border-color: var(--brand-blue) !important; box-shadow: 0 0 0 3px var(--focus-ring) !important; }
.info-card { border-color: var(--border) !important; }
.badge { background: var(--brand-light) !important; border-color: #A9CCF8 !important; color: var(--brand-secondary) !important; }
.check-item, .step-row { border-color: var(--border) !important; }
.step-num { color: #DCEBFC !important; }
.svc-row:hover { background: var(--brand-light) !important; }

/* Shared light footer: the blue logo needs a pale surface to remain legible. */
footer.brand-footer {
  background-color: #EAF3FF !important;
  color: var(--text-primary) !important;
  border-color: #B7D4F5 !important;
}
.brand-footer [class*="border-white"] { border-color: #B7D4F5 !important; }
.brand-footer [class*="text-[#64748b]"],
.brand-footer [class*="text-[#94a3b8]"],
.brand-footer [class*="text-[#8C838E]"] { color: var(--text-secondary) !important; }
.brand-footer [class*="text-[#475569]"] { color: var(--brand-secondary) !important; }
.brand-footer a:hover { color: var(--brand-blue) !important; }

/* Tailwind semantic brand utilities used in the existing pages. */
.bg-accent-500 { background-color: var(--brand-blue) !important; }
.bg-accent-600, .hover\:bg-accent-600:hover { background-color: var(--brand-secondary) !important; }
.bg-accent-50 { background-color: var(--brand-light) !important; }
.text-accent-700 { color: var(--brand-secondary) !important; }
.text-accent-500, .hover\:text-accent-500:hover, .group:hover .group-hover\:text-accent-500 { color: var(--brand-blue) !important; }
.text-accent-400 { color: #69ACFF !important; }
.border-accent-500 { border-color: var(--brand-blue) !important; }
.hover\:border-accent-300:hover { border-color: #8CC0FF !important; }

/* Legacy arbitrary utility values mapped to the same purpose, not by hue alone. */
[class*="bg-[#0c1d33]"], [class*="bg-[#0D0A0E]"] { background-color: var(--brand-primary-dark) !important; }
[class*="hover:bg-[#211822]"]:hover { background-color: var(--brand-primary) !important; }
[class*="bg-[#f7f4ef]"], [class*="bg-[#F7F4F6]"] { background-color: var(--background) !important; }
[class*="border-[#e8e4dc]"], [class*="border-[#e5e1d8]"], [class*="border-[#E8E1E8]"] { border-color: var(--border) !important; }
[class*="text-[#0c1d33]"], [class*="text-[#29242B]"] { color: var(--text-primary) !important; }
[class*="text-[#94a3b8]"], [class*="text-[#BDB4BE]"] { color: #B7D4F5 !important; }
[class*="text-[#64748b]"], [class*="text-[#6F6872]"], [class*="text-[#8C838E]"] { color: var(--text-secondary) !important; }
[class*="text-[#5D2A61]"] { color: var(--brand-secondary) !important; }
[class*="border-[#362A38]"] { border-color: #315783 !important; }
