/*
Theme Name: blueflux-blog-child
Template: hello-elementor
Text Domain: blueflux-blog-child
Description: Blueflux blog child theme for site-specific content architecture and WordPress data-model extensions.
Version: 1.1.0
Requires at least: 6.0
Requires PHP: 7.4
License: GPL-2.0-or-later
WPVibe: yes
*/

/* Corporate-site alignment: light editorial canvas with preserved dark emphasis bands. */
:root {
  --bfp-navy: #070b1c;
  --bfp-navy-raised: #121a2a;
  --bfp-navy-panel: #132343;
  --bfp-light: #f5f8fc;
  --bfp-light-alt: #f7fafd;
  --bfp-white: #ffffff;
  --bfp-ink: #0a1a2f;
  --bfp-body: #38495b;
  --bfp-muted: #66758a;
  --bfp-rule: #d7e0ea;
  --bfp-cyan: #168bc2;
  --bfp-cyan-bright: #4fc3f7;
  --bfp-light-text: #d6def2;
}

body {
  background: var(--bfp-navy);
  font-family: Calibri, Inter, system-ui, sans-serif;
}

/* Light canvases: home, Insights, seven Topic Hubs and Technical Library. */
:is(
  .elementor-22,
  .elementor-21,
  .elementor-25
) {
  background: var(--bfp-light);
  color: var(--bfp-body);
}

/* Article reading canvas. Decision Area mastheads remain navy. */
.elementor-location-single > .elementor-element-f55be75 {
  background: var(--bfp-light) !important;
  color: var(--bfp-body) !important;
}

/* Default editorial typography on light surfaces. */
:is(
  .elementor-22,
  .elementor-21,
  .elementor-25,
  .elementor-location-single > .elementor-element-f55be75
) :is(h1, h2, h3, h4, h5, h6, .elementor-heading-title, .elementor-post__title, .elementor-icon-box-title) {
  color: var(--bfp-ink) !important;
}

:is(
  .elementor-22,
  .elementor-21,
  .elementor-25,
  .elementor-location-single > .elementor-element-f55be75
) :is(p, li, blockquote, figcaption, .elementor-widget-text-editor, .elementor-icon-box-description, .elementor-post__excerpt, .elementor-post__meta-data) {
  color: var(--bfp-body) !important;
}

:is(
  .elementor-22,
  .elementor-21,
  .elementor-25,
  .elementor-location-single > .elementor-element-f55be75
) a {
  color: var(--bfp-cyan) !important;
}

.elementor-location-single .elementor-widget-theme-post-content {
  font-size: 19px;
  line-height: 1.6;
}

.elementor-location-single .elementor-widget-theme-post-content :is(h2, h3, h4) {
  color: var(--bfp-ink) !important;
  margin-top: 1.55em;
}

.elementor-location-single .elementor-widget-theme-post-content :is(hr, table, th, td) {
  border-color: var(--bfp-rule);
}

/* Reusable editorial cards. */
:is(.elementor-22, .elementor-21, .elementor-25)
:is(.elementor-post, .elementor-icon-box-wrapper) {
  background: var(--bfp-white);
  border: 1px solid var(--bfp-rule);
  border-radius: 10px;
}

:is(.elementor-22, .elementor-21, .elementor-25)
.elementor-post {
  overflow: hidden;
}

.elementor-location-single .elementor-posts-container .elementor-post {
  background: var(--bfp-white);
  border: 1px solid var(--bfp-rule);
  border-radius: 10px;
  overflow: hidden;
}

/* Corporate-style rules and softer separation on light sections. */
:is(.elementor-22, .elementor-21, .elementor-25)
.elementor-divider-separator,
.elementor-location-single > .elementor-element-f55be75 .elementor-divider-separator {
  border-color: var(--bfp-rule) !important;
}

/* Preserve intentionally dark feature cards, frameworks and event CTAs. */
:is(
  .elementor-element-65e6ea8,
  .elementor-element-0a5d7aa,
  .elementor-element-76a30b0,
  .elementor-element-d709158,
  .elementor-element-902e415,
  .elementor-element-44a4016,
  .elementor-element-4f7aa4d,
  .elementor-element-b235314,
  .elementor-element-577cbe1,
  .elementor-element-c850de9,
  .elementor-element-15cc9f4,
  .elementor-element-a6c217c,
  .elementor-element-2f4d138,
  .elementor-element-17b0d8c,
  .elementor-element-fb8a947,
  .elementor-element-eadee12,
  .elementor-element-991f562,
  .elementor-element-97207a8,
  .elementor-element-93ea58b,
  .elementor-element-d51dc9d,
  .elementor-element-oct18001,
  .elementor-element-oct18010,
  .elementor-element-d3dff74,
  .elementor-element-c09fad9,
  .elementor-element-3c06f14,
  .elementor-element-8c755cb
) {
  color: var(--bfp-light-text) !important;
}

:is(
  .elementor-element-65e6ea8,
  .elementor-element-0a5d7aa,
  .elementor-element-76a30b0,
  .elementor-element-d709158,
  .elementor-element-902e415,
  .elementor-element-44a4016,
  .elementor-element-4f7aa4d,
  .elementor-element-b235314,
  .elementor-element-577cbe1,
  .elementor-element-c850de9,
  .elementor-element-15cc9f4,
  .elementor-element-a6c217c,
  .elementor-element-2f4d138,
  .elementor-element-17b0d8c,
  .elementor-element-fb8a947,
  .elementor-element-eadee12,
  .elementor-element-991f562,
  .elementor-element-97207a8,
  .elementor-element-93ea58b,
  .elementor-element-d51dc9d,
  .elementor-element-oct18001,
  .elementor-element-oct18010,
  .elementor-element-d3dff74,
  .elementor-element-c09fad9,
  .elementor-element-3c06f14,
  .elementor-element-8c755cb
) :is(h1, h2, h3, h4, h5, h6, p, li, .elementor-heading-title, .elementor-icon-box-title, .elementor-icon-box-description, .elementor-widget-text-editor) {
  color: var(--bfp-light-text) !important;
}

:is(
  .elementor-element-65e6ea8,
  .elementor-element-0a5d7aa,
  .elementor-element-76a30b0,
  .elementor-element-d709158,
  .elementor-element-902e415,
  .elementor-element-44a4016,
  .elementor-element-4f7aa4d,
  .elementor-element-b235314,
  .elementor-element-577cbe1,
  .elementor-element-c850de9,
  .elementor-element-15cc9f4,
  .elementor-element-a6c217c,
  .elementor-element-2f4d138,
  .elementor-element-17b0d8c,
  .elementor-element-fb8a947,
  .elementor-element-eadee12,
  .elementor-element-991f562,
  .elementor-element-97207a8,
  .elementor-element-93ea58b,
  .elementor-element-d51dc9d,
  .elementor-element-oct18001,
  .elementor-element-oct18010,
  .elementor-element-d3dff74,
  .elementor-element-c09fad9,
  .elementor-element-3c06f14,
  .elementor-element-8c755cb
) a {
  color: var(--bfp-cyan-bright) !important;
}

/* Remove the legacy lime link treatment. */
:is(.elementor-element-7c2eb8b, .elementor-element-4008a55) a,
:is(.elementor-element-7c2eb8b, .elementor-element-4008a55) {
  color: var(--bfp-cyan) !important;
}

/* Align the blog header action with the corporate outlined button. */
.elementor-location-header .elementor-button {
  background: transparent !important;
  border: 1px solid #314362 !important;
  color: var(--bfp-light-text) !important;
  box-shadow: none !important;
}

.elementor-location-header .elementor-button:hover,
.elementor-location-header .elementor-button:focus {
  background: #101a33 !important;
  border-color: var(--bfp-cyan-bright) !important;
  color: #fff !important;
}

/* Light-surface contrast corrections for dynamic excerpts and nested card copy. */
.elementor-location-single > .elementor-element-f55be75 .elementor-widget-theme-post-excerpt .elementor-widget-container,
:is(.elementor-22, .elementor-21, .elementor-25)
.elementor-icon-box-description :is(span, em, strong) {
  color: var(--bfp-body) !important;
}

/* Accessible focus treatment across both color systems. */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
  outline: 3px solid var(--bfp-cyan-bright);
  outline-offset: 3px;
}

/* Homepage cadence: corporate dark/light sequence and interactive cards. */
body.home .elementor-22 {
  background: var(--bfp-navy) !important;
}

/* Full-bleed light narrative bands. */
body.home .elementor-22 :is(
  .elementor-element-783c311,
  .elementor-element-1f9242c,
  .elementor-element-7a90cb3,
  .elementor-element-38758a4
) {
  background: var(--bfp-light) !important;
  box-shadow: 0 0 0 100vmax var(--bfp-light);
  clip-path: inset(0 -100vmax);
}

/* Featured content and closing engagement live naturally on navy. */
body.home .elementor-22 :is(
  .elementor-element-a743ee9,
  .elementor-element-54bf6b3,
  .elementor-element-073a81e
) {
  background: transparent !important;
}

/* Recent Insights becomes the primary dark editorial band. */
body.home .elementor-22 .elementor-element-b56e498,
body.home .elementor-22 > .elementor-element-c3b6942 {
  background: var(--bfp-navy) !important;
}

body.home .elementor-22 .elementor-element-b56e498 {
  box-shadow: 0 0 0 100vmax var(--bfp-navy);
  clip-path: inset(0 -100vmax);
}

body.home .elementor-22 .elementor-element-b56e498 :is(h2, h3, .elementor-heading-title) {
  color: #eaf0ff !important;
}

body.home .elementor-22 .elementor-element-b56e498 :is(p, span, .elementor-widget-text-editor) {
  color: var(--bfp-light-text) !important;
}

/* Featured modules: cyan eyebrows, white titles, readable supporting copy. */
body.home .elementor-22 :is(.elementor-element-65e6ea8, .elementor-element-0a5d7aa)
:is(h2, h3, h4, .elementor-heading-title, .elementor-post__title) {
  color: #eaf0ff !important;
}

body.home .elementor-22 :is(.elementor-element-65e6ea8, .elementor-element-0a5d7aa)
:is(p, span, .elementor-post__excerpt) {
  color: var(--bfp-light-text) !important;
}

/* Light cards use subtle borders instead of navy frames. */
body.home .elementor-22 :is(.elementor-icon-box-wrapper, .elementor-post) {
  border: 1px solid var(--bfp-rule) !important;
  border-radius: 8px;
  box-shadow: 0 5px 16px rgba(7, 11, 28, 0.06);
}

body.home .elementor-22 .elementor-icon-box-wrapper {
  background: var(--bfp-white) !important;
}

body.home .elementor-22 .elementor-icon-box-wrapper :is(
  h3,
  h4,
  .elementor-icon-box-title,
  .elementor-icon-box-title span
) {
  color: var(--bfp-ink) !important;
}

body.home .elementor-22 .elementor-icon-box-wrapper :is(
  p,
  span,
  em,
  strong,
  .elementor-icon-box-description
) {
  color: var(--bfp-body) !important;
}

/* Replace heavy black bars with restrained rules and spacing. */
body.home .elementor-22 .elementor-divider-separator {
  border-color: var(--bfp-rule) !important;
  border-width: 1px !important;
}

/* Recent Insight cards remain crisp white against the navy band. */
body.home .elementor-22 > .elementor-element-c3b6942 .elementor-post,
body.home .elementor-22 > .elementor-element-c3b6942 {
  color: var(--bfp-body);
}

body.home .elementor-22 > .elementor-element-c3b6942
:is(h2, h3, h4, .elementor-heading-title, .elementor-post__title) {
  color: var(--bfp-ink) !important;
}

body.home .elementor-22 > .elementor-element-c3b6942
:is(p, span, .elementor-post__excerpt, .elementor-widget-text-editor) {
  color: var(--bfp-body) !important;
}

/* Restrained interaction: lift, border emphasis and minimal image scale. */
body.home .elementor-22 :is(
  .elementor-icon-box-wrapper,
  .elementor-post,
  .elementor-element-65e6ea8,
  .elementor-element-0a5d7aa
) {
  transition:
    transform 180ms ease,
    box-shadow 180ms ease,
    border-color 180ms ease;
  will-change: transform;
}

body.home .elementor-22 :is(
  .elementor-icon-box-wrapper,
  .elementor-post,
  .elementor-element-65e6ea8,
  .elementor-element-0a5d7aa
):hover {
  transform: translateY(-4px);
  border-color: rgba(79, 195, 247, 0.7) !important;
  box-shadow: 0 14px 30px rgba(7, 11, 28, 0.16);
}

body.home .elementor-22 .elementor-post img {
  transition: transform 220ms ease;
}

body.home .elementor-22 .elementor-post:hover img {
  transform: scale(1.015);
}

/* Remove the legacy navy shells around the white decision-area cards. */
body.home .elementor-22 .bfp-topic-card,
body.home .elementor-22 .bfp-topic-card > .elementor-widget-container {
	background: none !important;
	border: 0 !important;
	box-shadow: none !important;
}

/* Replace the legacy heavy black rules with the site's quieter blue dividers. */
body.home .elementor-22 hr.e-divider-base {
	background: rgba(79, 195, 247, 0.28) !important;
	border: 0 !important;
	height: 1px !important;
	min-height: 1px !important;
}

/* Keep the closing community CTA legible on its navy field. */
body.home .elementor-22 .elementor-element-073a81e :is(h1, h2, h3, h4, .elementor-heading-title) {
	color: #eaf0ff !important;
}

body.home .elementor-22 .elementor-element-073a81e :is(p, .elementor-widget-text-editor) {
	color: var(--bfp-light-text) !important;
}

body.home .elementor-22 .elementor-element-073a81e .elementor-button {
	color: #ffffff !important;
}

/* Give card action links consistent breathing room and a larger click target. */
body.home .elementor-22 :is(
  .elementor-element-1f9242c,
  .elementor-element-38758a4
) .elementor-icon-box-description > a {
  display: inline-block;
  margin-top: 8px;
  margin-bottom: 5px;
  padding: 3px 2px;
  line-height: 1.45;
}

/* Match the corporate homepage eyebrow color system. */
body.home .elementor-22 :is(
  .e-65f9f0f-165f2c7,
  .e-517100a-54734e5
) {
  color: #1478b8 !important;
}

body.home .elementor-22 :is(
  .e-f858557-1b623aa,
  .e-165c259-b596a35,
  .e-0ad27b8-e84aeb1
) {
  color: var(--bfp-cyan-bright) !important;
}

/* Keep the Recent Insights eyebrow bright against the navy band. */
body.home .elementor-22 .elementor-element-b56e498 .e-0ad27b8-e84aeb1 {
  color: var(--bfp-cyan-bright) !important;
}

/* Corporate eyebrow labels are intentionally bold. */
body.home .elementor-22 :is(
  .e-65f9f0f-165f2c7,
  .e-f858557-1b623aa,
  .e-165c259-b596a35,
  .e-0ad27b8-e84aeb1,
  .e-517100a-54734e5
) {
  font-weight: 700 !important;
}

/* Shared page-family treatment for Insights, Topic Hubs, and Technical Library. */
body:is(.page-id-21, .page-id-25) {
  background: var(--bfp-navy);
}

:is(
  .elementor-21,
  .elementor-25) {
  background: var(--bfp-navy) !important;
}

/* Light hero canvas on each page family. */
:is(
  .elementor-21,
  .elementor-25) > .e-con > .e-con:first-child {
  background: var(--bfp-light) !important;
  color: var(--bfp-body) !important;
  box-shadow: 0 0 0 100vmax var(--bfp-light);
  clip-path: inset(0 -100vmax);
}

/* Light decision/filter/card surfaces. */
:is(
  .elementor-21,
  .elementor-25) :is(.bfp-topic-card, .elementor-icon-box-wrapper, .elementor-post, .elementor-loop-container, .elementor-widget-search, .elementor-widget-taxonomy-filter) {
  border-radius: 8px;
}

:is(
  .elementor-21,
  .elementor-25) :is(.bfp-topic-card .elementor-widget-container, .bfp-topic-card .elementor-icon-box-wrapper, .elementor-post) {
  background: var(--bfp-white) !important;
  border: 1px solid var(--bfp-rule) !important;
  box-shadow: 0 5px 16px rgba(7, 11, 28, 0.06);
}

/* Replace all remaining heavy atomic black bars with restrained blue rules. */
:is(
  .elementor-21,
  .elementor-25) hr.e-divider-base {
  height: 3px !important;
  min-height: 3px !important;
  background: #16345b !important;
  border: 0 !important;
}

/* Shared card interaction. */
:is(
  .elementor-21,
  .elementor-25) :is(.bfp-topic-card, .elementor-icon-box-wrapper, .elementor-post) {
  transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
  will-change: transform;
}

:is(
  .elementor-21,
  .elementor-25) :is(.bfp-topic-card, .elementor-icon-box-wrapper, .elementor-post):hover {
  transform: translateY(-4px);
  border-color: rgba(79, 195, 247, 0.7) !important;
  box-shadow: 0 14px 30px rgba(7, 11, 28, 0.16);
}

:is(
  .elementor-21,
  .elementor-25) .elementor-icon-box-description > a {
  display: inline-block;
  margin-top: 8px;
  margin-bottom: 5px;
  padding: 3px 2px;
  line-height: 1.45;
}

/* Insights page cadence: light hero, light decisions, dark exploration bands. */
body.page-id-21 .elementor-21 {
  background: var(--bfp-navy) !important;
}

body.page-id-21 .elementor-21 > .elementor-element-ff8320c > .elementor-element-27ba443 {
  background: var(--bfp-light) !important;
  color: var(--bfp-body) !important;
  box-shadow: 0 0 0 100vmax var(--bfp-light);
  clip-path: inset(0 -100vmax);
}

/* Decision Areas remain a light, white-card surface. */
body.page-id-21 .elementor-21 .elementor-element-3584d9d {
  background: var(--bfp-light) !important;
  color: var(--bfp-body) !important;
  box-shadow: 0 0 0 100vmax var(--bfp-light);
  clip-path: inset(0 -100vmax);
}

body.page-id-21 .elementor-21 .elementor-element-3584d9d .bfp-topic-card,
body.page-id-21 .elementor-21 .elementor-element-3584d9d .bfp-topic-card > .elementor-widget-container {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

body.page-id-21 .elementor-21 .elementor-element-3584d9d .elementor-icon-box-wrapper {
  background: var(--bfp-white) !important;
  border: 1px solid var(--bfp-rule) !important;
  border-radius: 8px;
  box-shadow: 0 5px 16px rgba(7, 11, 28, 0.06);
}

/* Situation cards become the dark transition band. */
body.page-id-21 .elementor-21 .elementor-element-c25f27c {
  background: var(--bfp-navy) !important;
  color: var(--bfp-light-text) !important;
  box-shadow: 0 0 0 100vmax var(--bfp-navy);
  clip-path: inset(0 -100vmax);
}

body.page-id-21 .elementor-21 .elementor-element-c25f27c :is(h2, h3, .elementor-heading-title) {
  color: #eaf0ff !important;
}

body.page-id-21 .elementor-21 .elementor-element-c25f27c :is(p, .elementor-icon-box-description) {
  color: var(--bfp-light-text) !important;
}

body.page-id-21 .elementor-21 #start-with-your-situation .elementor-element-d565a1d {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 24px !important;
  align-items: stretch !important;
}

body.page-id-21 .elementor-21 #start-with-your-situation .bfp-topic-card {
  background: #132343 !important;
  background-image: none !important;
  border: 1px solid #233b64 !important;
  border-radius: 8px !important;
  padding: 24px !important;
  width: auto !important;
  min-width: 0;
  height: 100%;
  box-sizing: border-box;
  box-shadow: none !important;
  transform: none !important;
  transition: border-color 160ms ease;
}

body.page-id-21 .elementor-21 #start-with-your-situation .bfp-topic-card:hover,
body.page-id-21 .elementor-21 #start-with-your-situation .bfp-topic-card:focus-within {
  border-color: #4fc3f7 !important;
}

body.page-id-21 .elementor-21 #start-with-your-situation .bfp-topic-card > .elementor-widget-container,
body.page-id-21 .elementor-21 #start-with-your-situation .bfp-topic-card .elementor-icon-box-wrapper {
  background: transparent !important;
  background-image: none !important;
  border: 0 !important;
  border-radius: 0 !important;
  padding: 0 !important;
  height: 100%;
  box-shadow: none !important;
  transform: none !important;
}

body.page-id-21 .elementor-21 #start-with-your-situation .bfp-topic-card .elementor-icon-box-wrapper {
  display: flex !important;
  align-items: flex-start !important;
  gap: 16px !important;
  text-align: left !important;
}

body.page-id-21 .elementor-21 #start-with-your-situation .bfp-topic-card .elementor-icon-box-icon {
  flex: 0 0 28px;
  margin: 2px 0 0 !important;
}

body.page-id-21 .elementor-21 #start-with-your-situation .bfp-topic-card .elementor-icon {
  color: #4fc3f7 !important;
  fill: #4fc3f7 !important;
  background: transparent !important;
  border: 0 !important;
  padding: 0 !important;
  font-size: 28px !important;
  width: 28px;
  height: 28px;
}

body.page-id-21 .elementor-21 #start-with-your-situation .bfp-topic-card .elementor-icon svg {
  fill: #4fc3f7 !important;
  width: 28px;
  height: 28px;
}

body.page-id-21 .elementor-21 #start-with-your-situation .bfp-topic-card .elementor-icon-box-content {
  display: flex;
  flex-direction: column;
  flex: 1;
  align-self: stretch;
  min-width: 0;
}

body.page-id-21 .elementor-21 #start-with-your-situation .bfp-topic-card .elementor-icon-box-title {
  color: #eaf0ff !important;
  font-size: 22px !important;
  font-weight: 700 !important;
  line-height: 1.3 !important;
  margin: 0 0 12px !important;
}

body.page-id-21 .elementor-21 #start-with-your-situation .bfp-topic-card .elementor-icon-box-description {
  display: flex;
  flex-direction: column;
  flex: 1;
  color: #d7e2f5 !important;
  font-size: 18px !important;
  font-weight: 400 !important;
  line-height: 1.5 !important;
  margin: 0 !important;
}

body.page-id-21 .elementor-21 #start-with-your-situation .bfp-topic-card .elementor-icon-box-description br {
  display: none;
}

body.page-id-21 .elementor-21 #start-with-your-situation .bfp-topic-card .elementor-icon-box-description a {
  display: inline-flex;
  align-items: center;
  align-self: flex-start;
  min-height: 44px;
  margin-top: auto;
  padding-top: 20px;
  color: #4fc3f7 !important;
  font-size: 18px !important;
  font-weight: 600 !important;
  line-height: 1.5 !important;
  text-decoration: underline !important;
  text-underline-offset: 4px;
}

body.page-id-21 .elementor-21 #start-with-your-situation .bfp-topic-card a:hover {
  color: #eaf0ff !important;
}

body.page-id-21 .elementor-21 #start-with-your-situation .bfp-topic-card a:focus-visible {
  outline: 2px solid #4fc3f7 !important;
  outline-offset: 4px;
  border-radius: 2px;
}

@media (max-width: 767px) {
  body.page-id-21 .elementor-21 #start-with-your-situation .elementor-element-d565a1d {
    grid-template-columns: minmax(0, 1fr) !important;
  }
  body.page-id-21 .elementor-21 #start-with-your-situation .bfp-topic-card .elementor-icon-box-wrapper {
    flex-direction: column !important;
  }
}

/* All Insights becomes the dark article exploration band. */
body.page-id-21 .elementor-21 .elementor-element-85df3b9 {
  background: var(--bfp-navy) !important;
  color: var(--bfp-light-text) !important;
  box-shadow: 0 0 0 100vmax var(--bfp-navy);
  clip-path: inset(0 -100vmax);
}

body.page-id-21 .elementor-21 .elementor-element-85df3b9 :is(h2, h3, .elementor-heading-title) {
  color: #eaf0ff !important;
}

body.page-id-21 .elementor-21 .elementor-element-85df3b9 :is(p, .elementor-post__excerpt, .elementor-widget-theme-post-excerpt) {
  color: var(--bfp-light-text) !important;
}

body.page-id-21 .elementor-21 .elementor-element-1fc4cb7 .elementor-post {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

body.page-id-21 .elementor-21 .elementor-element-1fc4cb7 .elementor-heading-title a {
  color: var(--bfp-cyan-bright) !important;
}

body.page-id-21 .elementor-21 .elementor-element-1fc4cb7 .elementor-post-info__terms-list-item {
  color: var(--bfp-light-text) !important;
}

body.page-id-21 .elementor-21 .elementor-element-43f8c93 .e-filter {
  gap: 8px;
}

body.page-id-21 .elementor-21 .elementor-element-43f8c93 .e-filter-item {
  background: transparent !important;
  border: 1px solid #314362 !important;
  border-radius: 999px;
  color: var(--bfp-light-text) !important;
  padding: 8px 14px;
  transition: background 180ms ease, border-color 180ms ease, color 180ms ease;
}

body.page-id-21 .elementor-21 .elementor-element-43f8c93 .e-filter-item:hover,
body.page-id-21 .elementor-21 .elementor-element-43f8c93 .e-filter-item[aria-pressed="true"] {
  background: #16345b !important;
  border-color: var(--bfp-cyan-bright) !important;
  color: #ffffff !important;
}

/* Insights action links and cards use the homepage interaction treatment. */
body.page-id-21 .elementor-21 :is(.bfp-topic-card, .elementor-icon-box-wrapper, .elementor-post) {
  transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
  will-change: transform;
}

body.page-id-21 .elementor-21 :is(.bfp-topic-card, .elementor-icon-box-wrapper, .elementor-post):hover {
  transform: translateY(-4px);
  border-color: rgba(79, 195, 247, 0.7) !important;
  box-shadow: 0 14px 30px rgba(7, 11, 28, 0.16);
}

body.page-id-21 .elementor-21 .elementor-icon-box-description > a {
  display: inline-block;
  margin-top: 8px;
  margin-bottom: 5px;
  padding: 3px 2px;
  line-height: 1.45;
}

/* If dividers are added later, keep them slim and blue. */
body.page-id-21 .elementor-21 hr.e-divider-base {
  height: 3px !important;
  min-height: 3px !important;
  background: #16345b !important;
  border: 0 !important;
}


/* Approved Topic Hub system: scoped to the seven Hubs only.
 * Remove the Hub selectors from light editorial rules upstream.
 * Elementor owns section spacing and responsive sizing.
 */
body:is(.page-id-27,.page-id-635,.page-id-14,.page-id-629,.page-id-18,.page-id-20,.page-id-28) { background: #09142d; }
body:is(.page-id-27,.page-id-635,.page-id-14,.page-id-629,.page-id-18,.page-id-20,.page-id-28) :is(.elementor-27,.elementor-635,.elementor-14,.elementor-629,.elementor-18,.elementor-20,.elementor-28) { background: #09142d !important; color: #d7e2f5; }
body:is(.page-id-27,.page-id-635,.page-id-14,.page-id-629,.page-id-18,.page-id-20,.page-id-28) :is(.elementor-27,.elementor-635,.elementor-14,.elementor-629,.elementor-18,.elementor-20,.elementor-28) :is(h1,h2,h3,h4,h5,h6,.elementor-heading-title,.elementor-icon-box-title) {
  color: #eaf0ff !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
}
body:is(.page-id-27,.page-id-635,.page-id-14,.page-id-629,.page-id-18,.page-id-20,.page-id-28) :is(.elementor-27,.elementor-635,.elementor-14,.elementor-629,.elementor-18,.elementor-20,.elementor-28) :is(.elementor-icon-box-title span,.elementor-icon-box-title a) {
  color: #eaf0ff !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
}
body:is(.page-id-27,.page-id-635,.page-id-14,.page-id-629,.page-id-18,.page-id-20,.page-id-28) :is(.elementor-27,.elementor-635,.elementor-14,.elementor-629,.elementor-18,.elementor-20,.elementor-28) :is(p,li,blockquote,figcaption,.elementor-widget-text-editor,.elementor-icon-box-description,.elementor-post__excerpt,.elementor-widget-theme-post-excerpt,.e-paragraph-base) {
  color: #d7e2f5 !important;
}
body:is(.page-id-27,.page-id-635,.page-id-14,.page-id-629,.page-id-18,.page-id-20,.page-id-28) :is(.elementor-27,.elementor-635,.elementor-14,.elementor-629,.elementor-18,.elementor-20,.elementor-28) .e-paragraph-base { font-weight: 400; }
body:is(.page-id-27,.page-id-635,.page-id-14,.page-id-629,.page-id-18,.page-id-20,.page-id-28) :is(.elementor-27,.elementor-635,.elementor-14,.elementor-629,.elementor-18,.elementor-20,.elementor-28) .elementor-icon-box-description :is(span,em,strong) { color: inherit !important; }
body:is(.page-id-27,.page-id-635,.page-id-14,.page-id-629,.page-id-18,.page-id-20,.page-id-28) :is(.elementor-27,.elementor-635,.elementor-14,.elementor-629,.elementor-18,.elementor-20,.elementor-28) :is(a,.elementor-icon) { color: #4fc3f7 !important; }
body:is(.page-id-27,.page-id-635,.page-id-14,.page-id-629,.page-id-18,.page-id-20,.page-id-28) :is(.elementor-27,.elementor-635,.elementor-14,.elementor-629,.elementor-18,.elementor-20,.elementor-28) .elementor-icon svg { fill: #4fc3f7 !important; }
body:is(.page-id-27,.page-id-635,.page-id-14,.page-id-629,.page-id-18,.page-id-20,.page-id-28) :is(.elementor-27,.elementor-635,.elementor-14,.elementor-629,.elementor-18,.elementor-20,.elementor-28) .elementor-widget-icon-box > .elementor-widget-container {
  background: #132343 !important;
  border: 1px solid #233b64 !important;
  border-radius: 8px;
  box-shadow: none;
}
body:is(.page-id-27,.page-id-635,.page-id-14,.page-id-629,.page-id-18,.page-id-20,.page-id-28) :is(.elementor-27,.elementor-635,.elementor-14,.elementor-629,.elementor-18,.elementor-20,.elementor-28) .elementor-icon-box-wrapper {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none;
}
body:is(.page-id-27,.page-id-635,.page-id-14,.page-id-629,.page-id-18,.page-id-20,.page-id-28) :is(.elementor-27,.elementor-635,.elementor-14,.elementor-629,.elementor-18,.elementor-20,.elementor-28) .elementor-icon-box-title {
  font-size: 22px;
  line-height: 1.25;
}
body:is(.page-id-27,.page-id-635,.page-id-14,.page-id-629,.page-id-18,.page-id-20,.page-id-28) :is(.elementor-27,.elementor-635,.elementor-14,.elementor-629,.elementor-18,.elementor-20,.elementor-28) .elementor-icon-box-description span {
  opacity: 1 !important;
}
body:is(.page-id-27,.page-id-635,.page-id-14,.page-id-629,.page-id-18,.page-id-20,.page-id-28) :is(.elementor-27,.elementor-635,.elementor-14,.elementor-629,.elementor-18,.elementor-20,.elementor-28) :is(.bfp-topic-card,.bfp-topic-card > .elementor-widget-container) {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none;
}
body:is(.page-id-27,.page-id-635,.page-id-14,.page-id-629,.page-id-18,.page-id-20,.page-id-28) :is(.elementor-27,.elementor-635,.elementor-14,.elementor-629,.elementor-18,.elementor-20,.elementor-28) .elementor-post {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none;
}
body:is(.page-id-27,.page-id-635,.page-id-14,.page-id-629,.page-id-18,.page-id-20,.page-id-28) :is(.elementor-27,.elementor-635,.elementor-14,.elementor-629,.elementor-18,.elementor-20,.elementor-28) :is(.elementor-post__title a,.elementor-widget-theme-post-title a) { color: #4fc3f7 !important; }
body:is(.page-id-27,.page-id-635,.page-id-14,.page-id-629,.page-id-18,.page-id-20,.page-id-28) :is(.elementor-27,.elementor-635,.elementor-14,.elementor-629,.elementor-18,.elementor-20,.elementor-28) :is(.elementor-post__meta-data,.elementor-post-info,.elementor-post-info__terms-list-item) { color: #b5c8ee !important; }
body:is(.page-id-27,.page-id-635,.page-id-14,.page-id-629,.page-id-18,.page-id-20,.page-id-28) :is(.elementor-27,.elementor-635,.elementor-14,.elementor-629,.elementor-18,.elementor-20,.elementor-28) .elementor-divider-separator { border-color: #233b64 !important; }
body:is(.page-id-27,.page-id-635,.page-id-14,.page-id-629,.page-id-18,.page-id-20,.page-id-28) :is(.elementor-27,.elementor-635,.elementor-14,.elementor-629,.elementor-18,.elementor-20,.elementor-28) hr.e-divider-base {
  height: 1px !important;
  min-height: 1px !important;
  background: #233b64 !important;
  border: 0 !important;
}
body:is(.page-id-27,.page-id-635,.page-id-14,.page-id-629,.page-id-18,.page-id-20,.page-id-28) :is(.elementor-27,.elementor-635,.elementor-14,.elementor-629,.elementor-18,.elementor-20,.elementor-28) .e-filter-item {
  background: #132343 !important;
  color: #d7e2f5 !important;
  border: 1px solid #233b64 !important;
  border-radius: 999px;
  min-height: 44px;
  padding: 8px 14px;
}
body:is(.page-id-27,.page-id-635,.page-id-14,.page-id-629,.page-id-18,.page-id-20,.page-id-28) :is(.elementor-27,.elementor-635,.elementor-14,.elementor-629,.elementor-18,.elementor-20,.elementor-28) .e-filter-item:is(:hover,[aria-pressed="true"]) {
  background: #233b64 !important;
  color: #eaf0ff !important;
  border-color: #4fc3f7 !important;
}
body:is(.page-id-27,.page-id-635,.page-id-14,.page-id-629,.page-id-18,.page-id-20,.page-id-28) :is(.elementor-27,.elementor-635,.elementor-14,.elementor-629,.elementor-18,.elementor-20,.elementor-28) a:focus-visible, body:is(.page-id-27,.page-id-635,.page-id-14,.page-id-629,.page-id-18,.page-id-20,.page-id-28) :is(.elementor-27,.elementor-635,.elementor-14,.elementor-629,.elementor-18,.elementor-20,.elementor-28) button:focus-visible {
  outline: 3px solid #4fc3f7;
  outline-offset: 3px;
}
@media (prefers-reduced-motion: reduce) {
  body:is(.page-id-27,.page-id-635,.page-id-14,.page-id-629,.page-id-18,.page-id-20,.page-id-28) :is(.elementor-27,.elementor-635,.elementor-14,.elementor-629,.elementor-18,.elementor-20,.elementor-28) :is(.bfp-topic-card,.elementor-icon-box-wrapper,.elementor-post) {
    transition: none !important;
    transform: none !important;
  }
}

/* Insights closing CTA: dark-surface text must override editorial defaults. */
body.page-id-21 .elementor-21 .bfp-cta-banner :is(h1,h2,h3,h4,.elementor-heading-title) {
  color: #eaf0ff !important;
}
body.page-id-21 .elementor-21 .bfp-cta-banner :is(p,.e-paragraph-base) {
  color: #d7e2f5 !important;
}
body.page-id-21 .elementor-21 .bfp-cta-banner :is(a,.e-button-base,.elementor-button) {
  color: #09142d !important;
  background-color: #4fc3f7 !important;
  background-image: none !important;
  border-color: #4fc3f7 !important;
  min-height: 44px;
}
body.page-id-21 .elementor-21 .bfp-cta-banner a span {
  color: #09142d !important;
}

/* Readiness tables share the Hub palette. */
body:is(.page-id-27,.page-id-635,.page-id-14,.page-id-629,.page-id-18,.page-id-20,.page-id-28) :is(.elementor-27,.elementor-635,.elementor-14,.elementor-629,.elementor-18,.elementor-20,.elementor-28) :is(table,th,td) { border-color: #233b64 !important; }
body:is(.page-id-27,.page-id-635,.page-id-14,.page-id-629,.page-id-18,.page-id-20,.page-id-28) :is(.elementor-27,.elementor-635,.elementor-14,.elementor-629,.elementor-18,.elementor-20,.elementor-28) th { color: #4fc3f7 !important; background: #132343 !important; }
body:is(.page-id-27,.page-id-635,.page-id-14,.page-id-629,.page-id-18,.page-id-20,.page-id-28) :is(.elementor-27,.elementor-635,.elementor-14,.elementor-629,.elementor-18,.elementor-20,.elementor-28) td { color: #d7e2f5 !important; }
body:is(.page-id-27,.page-id-635,.page-id-14,.page-id-629,.page-id-18,.page-id-20,.page-id-28) :is(.elementor-27,.elementor-635,.elementor-14,.elementor-629,.elementor-18,.elementor-20,.elementor-28) tbody tr:nth-child(odd) { background: #0b1530 !important; }
body:is(.page-id-27,.page-id-635,.page-id-14,.page-id-629,.page-id-18,.page-id-20,.page-id-28) :is(.elementor-27,.elementor-635,.elementor-14,.elementor-629,.elementor-18,.elementor-20,.elementor-28) tbody tr:nth-child(even) { background: #0f1d3a !important; }
body:is(.page-id-27,.page-id-635,.page-id-14,.page-id-629,.page-id-18,.page-id-20,.page-id-28) :is(.elementor-27,.elementor-635,.elementor-14,.elementor-629,.elementor-18,.elementor-20,.elementor-28) .elementor-widget-loop-grid .elementor-widget-heading :is(h2,h3,a) {
  font-size: 22px;
  line-height: 1.25;
}
