/*
 * Shared circular-icon alignment contract.
 *
 * Font Awesome icons are inline text by default. Centering only their parent
 * leaves the font baseline in control and makes otherwise centered glyphs
 * appear low or offset. Keep both the badge and the glyph box centered here so
 * every redesigned page inherits the same behavior.
 */
[class$="-icon"],
[class*="-icon "],
.home-quick-nav a > span:first-child,
.home-service-grid article > span:first-child,
.home-connect > div > a > span:first-child,
.sales-quick-nav > a > span:first-child,
.employment-note > span:first-child,
.employment-expectations article > span:first-child,
.app-value-grid article > span:first-child,
.events-intro aside > span:first-child,
.delivery-tool-title > span:first-child,
.delivery-quick-nav > a > i:first-child,
.support-resource-nav > a > i:first-child {
    align-items: center !important;
    justify-content: center !important;
}

[class$="-icon"] > i[class*="fa-"],
[class*="-icon "] > i[class*="fa-"],
.home-quick-nav a > span:first-child > i[class*="fa-"],
.home-service-grid article > span:first-child > i[class*="fa-"],
.home-connect > div > a > span:first-child > i[class*="fa-"],
.sales-quick-nav > a > span:first-child > i[class*="fa-"],
.employment-note > span:first-child > i[class*="fa-"],
.employment-expectations article > span:first-child > i[class*="fa-"],
.app-value-grid article > span:first-child > i[class*="fa-"],
.events-intro aside > span:first-child > i[class*="fa-"],
.delivery-tool-title > span:first-child > i[class*="fa-"] {
    display: inline-grid !important;
    width: 1em !important;
    height: 1em !important;
    margin: 0 !important;
    padding: 0 !important;
    place-items: center !important;
    position: static !important;
    inset: auto !important;
    line-height: 1 !important;
    transform: none !important;
    vertical-align: middle !important;
}

/* Some Font Awesome elements are the badge, not a child inside the badge. */
.delivery-quick-nav > a > i:first-child,
.support-resource-nav > a > i:first-child {
    display: inline-flex !important;
    margin: 0 !important;
    padding: 0 !important;
    position: static !important;
    inset: auto !important;
    line-height: 1 !important;
    transform: none !important;
    vertical-align: middle !important;
}

[class$="-icon"] > i[class*="fa-"]::before,
[class*="-icon "] > i[class*="fa-"]::before,
.home-quick-nav a > span:first-child > i[class*="fa-"]::before,
.home-service-grid article > span:first-child > i[class*="fa-"]::before,
.home-connect > div > a > span:first-child > i[class*="fa-"]::before,
.sales-quick-nav > a > span:first-child > i[class*="fa-"]::before,
.employment-note > span:first-child > i[class*="fa-"]::before,
.employment-expectations article > span:first-child > i[class*="fa-"]::before,
.app-value-grid article > span:first-child > i[class*="fa-"]::before,
.events-intro aside > span:first-child > i[class*="fa-"]::before,
.delivery-tool-title > span:first-child > i[class*="fa-"]::before,
.delivery-quick-nav > a > i:first-child::before,
.support-resource-nav > a > i:first-child::before {
    display: block;
    line-height: 1 !important;
}

[class$="-icon"] > svg,
[class*="-icon "] > svg {
    display: block;
    margin: auto;
}
