/* A cor institucional vem de m_colorcustom_configpi e é validada no bootstrap. */
body {
  --brand-dark: color-mix(in srgb, var(--org-color) 48%, #101e29);
  --brand-deep: color-mix(in srgb, var(--org-color) 32%, #101e29);
  --brand-mid: color-mix(in srgb, var(--org-color) 72%, #101e29);
  --brand-soft: color-mix(in srgb, var(--org-color) 10%, #fff);
  --brand-border: color-mix(in srgb, var(--org-color) 23%, #fff);
  --brand-accent: color-mix(in srgb, var(--org-color) 42%, #fff);
  --navy: var(--brand-deep);
  --blue: var(--brand-mid);
  --teal: var(--brand-mid);
  --ink: var(--brand-deep);
  --border: var(--brand-border);
  --page: color-mix(in srgb, var(--org-color) 5%, #fff);
}
.accessbar, .footer { background: var(--brand-deep); }
.utility, .navigation { background: var(--brand-dark); }
.home-link:hover, .nav-top:hover, .nav-top[aria-expanded="true"] { background: var(--brand-deep); }
.hero, .info-band, .newsletter, .internal-page .page-hero {
  background: linear-gradient(115deg, var(--brand-deep), var(--brand-mid));
}
.brand-logo strong, h2, .news h3, .doc-panel h3, .bid-panel h3,
.internal-page .content-body h1, .internal-page .content-body h2,
.internal-page .content-body h3, .internal-page .content-body h4,
.internal-page .result-summary h2, .internal-page .record-page-list h3,
.internal-page .document-modal .modal-title { color: var(--brand-deep); }
.kicker, .eyebrow, .see-all, .news a, .quick > .bi:first-child,
.quick .go, .trans-card > .bi, .trans-card span, .links-row .bi,
.other-portal-icon, .other-portal-arrow, .pub-item > .bi,
.pub-icon, .attachment-list a, .download-action,
.internal-page .content-body a { color: var(--brand-mid); }
.quick, .other-portal-card { border-top-color: var(--org-color); }
.campaigns, .links-band, .other-portals { background: var(--brand-soft); }
.internal-page, .internal-page .page-shell { background: var(--page); }
.internal-page .glass-panel, .internal-page .news-card-page,
.internal-page .document-heading, .internal-page .document-description,
.internal-page .attachment-section { border-color: var(--brand-border); }
.internal-page .content-body, .internal-page .document-detail { color: var(--ink); }
.trans-card, .links-row a { background: linear-gradient(125deg, #fff, var(--brand-soft)); }
.links-row a, .other-portal-card, .trans-card { color: var(--brand-deep); border-color: var(--brand-border); }
.links-row a > .bi:first-child, .links-row a > .bi:last-child,
.links-row a > svg, .other-portal-arrow { color: var(--brand-mid); }
.theme-dark .links-row a > .bi:first-child,
.theme-dark .links-row a > .bi:last-child,
.theme-dark .links-row a > svg { color: var(--brand-accent); }
.logo-mark { background: linear-gradient(145deg, var(--brand-mid), var(--brand-deep)); }
.hero-arrow { background: var(--brand-deep); }
.floating-flag b { color: var(--brand-deep); }
.nav-cta, .btn-primary, .service-action-primary, .newsletter button,
.float-button.alt, .hero-dots button.active {
  background: var(--brand-accent);
  color: var(--brand-deep);
}
.nav-cta:hover, .btn-primary:hover, .service-action-primary:hover,
.newsletter button:hover { background: color-mix(in srgb, var(--org-color) 32%, #fff); }
.internal-page .btn-brand, .internal-page .btn-primary-custom,
.internal-page .pagination-modern .active, .cookie-dialog-action,
.cookie-dialog-actions button:not(:first-child), .notice-dialog-head button,
.document-dialog-head button, .cookies button:first-child {
  background: var(--brand-dark);
  border-color: var(--brand-dark);
  color: #fff;
}
.internal-page .record-icon, .internal-page .event-date,
.internal-page .contract-stats i, .internal-page .document-type,
.internal-page .attachment-icon { background: var(--brand-soft); color: var(--brand-deep); }
.theme-dark { --page: #101f2c; --ink: #e5f1f8; --border: #425b6a; }
.theme-dark h2, .theme-dark .news h3, .theme-dark .brand-logo strong,
.internal-page.theme-dark .content-body h1, .internal-page.theme-dark .content-body h2,
.internal-page.theme-dark .content-body h3, .internal-page.theme-dark .content-body h4 { color: #f0f8f0; }
