/* EO Executives online CI. Nexa Light/Bold are preferred; Arial is the
   official fallback until the licensed webfont files are supplied. */
:root {
  --red:#D50032;
  --off:#D9D9D6;
  --navy:#53565A;
  --muted:#53565A;
  --brand-light:#888B8D;
  --brand-body:'Nexa Light','Nexa',Arial,sans-serif;
  --brand-heading:'Nexa Bold','Nexa',Arial,sans-serif;
  --f:var(--brand-body);
  --nav-h:72px;
}
body,button,input,select,textarea { font-family:var(--brand-body); }
body { font-weight:400; }
h1,h2,h3,h4,.kpi-n,.wstat-n,.pstat-n,.person-name,.ueber-fact-n,.pstep-t {
  font-family:var(--brand-heading);
  font-weight:700;
}
.brand-lockup { display:block; height:48px; width:auto; flex-shrink:0; max-width:none; }
.brand-location { font-size:.8rem; color:rgba(255,255,255,.82); font-weight:400; }
.logo,.blog-nav a:first-child { display:inline-flex; align-items:center; gap:1rem; }
.logo { flex-shrink:0; }
.site-header .wrap { gap:1.5rem; }
.blog-nav { align-items:center; }
.nav-loc { max-width:280px; font-weight:400; }
.hero-lead { font-weight:400; color:rgba(255,255,255,.86); }
.hero-right { padding-top:calc(var(--nav-h) + 2rem); }
.kpi-l { font-size:.78rem; line-height:1.55; letter-spacing:.06em; }
.metrics-note { font-size:.82rem; line-height:1.65; max-width:470px; }
.hero-awards { padding:.8rem 1rem; gap:1rem; }
.award-badge { height:108px; }
.tag { font-size:.78rem; letter-spacing:.14em; color:var(--navy); }
.tag::before { background:var(--red); }
.pill span { font-size:.75rem; color:#fff; }
.impact-section .tag,.proc-section .tag,.eo-hq-section .tag { color:#fff; }
.person-role,.cdet-l,.ueber-link { color:var(--navy); }
.kpi-n sup { color:#fff; }
.impact-intro { gap:3rem; }
.impact-section h2 { color:#fff; }
.impact-emphasis { color:#fff; text-decoration:underline; text-decoration-color:var(--red); text-decoration-thickness:3px; text-underline-offset:.15em; }
.impact-desc { font-size:1rem; color:rgba(255,255,255,.9); line-height:1.75; }
.dim-section-hd { margin-top:2.75rem; }
.dim-section-hd span { color:#fff; font-size:.85rem; letter-spacing:.1em; }
.impact-overview { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:2rem; }
.impact-level { border-top:3px solid var(--red); padding-top:1.2rem; }
.impact-level-label { color:rgba(255,255,255,.9); font-size:.8rem; letter-spacing:.12em; text-transform:uppercase; margin-bottom:.8rem; }
.impact-level h3 { color:#fff; font-size:1.25rem; line-height:1.35; margin-bottom:.8rem; }
.impact-level p { font-size:.96rem; color:rgba(255,255,255,.9); line-height:1.75; }
.impact-method-link { display:inline-block; margin-top:1.75rem; color:#fff; font-size:.94rem; text-underline-offset:4px; }
.impact-gap-combined { margin-top:2.5rem; background:rgba(0,0,0,.14); border-radius:0; }
.impact-gap-combined-hd { color:#fff; font-size:.85rem; }
.impact-gap-stat { color:#fff; font-family:var(--brand-heading); font-size:2.25rem; font-weight:700; }
.impact-gap-text { font-size:.96rem; color:rgba(255,255,255,.92); }
.impact-source-note { font-size:.82rem; color:rgba(255,255,255,.9); line-height:1.7; }
.impact-result { display:block; margin-top:1.5rem; padding:1.5rem; }
.ir-text { font-size:.96rem; color:rgba(255,255,255,.9); margin:0; }
.ir-text strong { display:block; margin-bottom:.4rem; color:#fff; }
.ir-text a,.impact-source-note a,.impact-gap-text a { color:#fff; text-underline-offset:3px; }
.network-source { margin-top:1rem; color:var(--navy); font-size:.82rem; line-height:1.6; }
.network-source a { color:inherit; text-underline-offset:3px; }
.wstat-l { font-size:.9rem; line-height:1.65; }
.pstep-d,.proc-post-item-d { font-size:.9rem; line-height:1.75; }
.proc-section h2 span { color:#fff!important; }
.proc-section h2 span { text-decoration:underline; text-decoration-color:var(--red); text-decoration-thickness:3px; text-underline-offset:.15em; }
.proc-connector-node { color:#fff; font-size:.8rem; }
.method-model { margin:1.5rem 0 2rem; }
.method-model img { display:block; max-width:560px; width:100%; height:auto; margin:0 auto; }
.method-model figcaption { margin-top:1rem; font-size:.85rem; line-height:1.6; text-align:center; color:rgba(255,255,255,.82); }
.back-link,.breadcrumb,.post-card-meta,.article-meta,.footer-copy,.footer-links a,.back-to-blog { font-size:.8rem; }
.post-cat,.article-cat,.post-card-cta,.cta-btn { color:#fff; font-size:.78rem; }
.post-cat { border-left:2px solid var(--red); padding-left:.6rem; }
.post-card-exc { font-size:.9rem; }
.blog-article a { color:#fff; }
.blog-article .cta-button { color:#fff; }
.related h2 { color:rgba(255,255,255,.82); font-size:.8rem; }
.article-faq { margin:2.5rem 0; }
.article-faq details { padding:1rem 0; border-top:1px solid rgba(255,255,255,.2); }
.article-faq summary { color:#fff; font-weight:700; cursor:pointer; line-height:1.6; }
.article-faq details p { margin:1rem 0 0; }
.nav-drawer a:last-child { color:#fff; }
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible {
  outline:2px solid currentColor;
  outline-offset:4px;
}
@media(max-width:1100px) {
  .nav-loc { display:none; }
  .nav-links { display:none; }
  .nav-burger { display:flex; }
  nav.main-nav { padding-left:1.5rem; padding-right:1.5rem; }
}
@media(max-width:900px) {
  .hero-right { padding-top:2rem; }
  .impact-overview { grid-template-columns:1fr; gap:1.75rem; }
  .impact-intro { gap:1.5rem; }
}
@media(max-width:640px) {
  :root { --nav-h:68px; }
  .hero-left { padding-top:calc(var(--nav-h) + 2rem); }
  .hero-right { padding-top:1.5rem; }
  .kpi-l { font-size:.76rem; letter-spacing:.035em; }
  .metrics-note { font-size:.8rem; }
  .hero-awards { gap:.7rem; padding:.75rem; }
  .award-badge { height:86px; }
  .impact-inner { padding-top:3.5rem; padding-bottom:3.5rem; }
  .impact-gap-combined-body { flex-direction:column; align-items:flex-start; }
  .impact-gap-stat { font-size:2rem; }
  .impact-result { padding:1.2rem; }
  .brand-location { display:none; }
}
@media(prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { animation:none!important; transition:none!important; }
  .hero-left,.hero-right,.hero .pill,.hero h1 .block,.hero-lead,.hero-btns { opacity:1!important; transform:none!important; }
}

/* Additional service entry points on the home page and public footers. */
.service-entry-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.5rem; margin-top:1.75rem; }
.service-entry-card { background:#fff; color:#212121; border-top:3px solid #D50032; padding:1.6rem; }
.service-entry-card h3 { font-size:1.25rem; line-height:1.4; margin:0 0 .8rem; }
.service-entry-card p { font-size:.96rem; line-height:1.8; margin-bottom:1rem; }
.service-entry-card a { color:#9a0024; font-size:.9rem; font-weight:700; text-underline-offset:4px; }
.service-footer-links { display:flex; flex-wrap:wrap; justify-content:center; gap:.75rem 1.25rem; margin:1rem 0; font-size:.82rem; width:100%; }
.service-footer-links a { color:inherit; text-underline-offset:3px; }
@media(max-width:700px) { .service-entry-grid { grid-template-columns:1fr; } }
