/* Keep the same palette, with legible variants on dark or light surfaces. */
.navbar .header-locations ul li a { color: #79aaff; }
.offices-property .info-block strong,
.offices-property .info-block a[href^="mailto:"] { color: #83b3ff; }
.home .rate-score-block .vc_tta-tab a { color: #5c6472 !important; }
.home .rate-score-block .vc_tta-tab.vc_active a { color: #0050c2 !important; }
.home .rate-score-block h3,
.home h3 > span[style*="#aaaaaa"] { color: #5d6572 !important; }
.footer-achievement p span { color: #ffdf9c; }
.site-bottom .site-footer { background-color: #005ce6 !important; }
.footer-areas .bp4uq-footer-heading,
.footer-sitemap .bp4uq-footer-heading {
    font-size: 18px;
    font-weight: 700;
    color: #83b3ff;
    margin: 10px 0 33px;
    letter-spacing: .03em;
    font-stretch: condensed;
}
.footer-areas .right-block .social .bp4uq-footer-heading { margin-bottom: 13px; }
.footer-areas .right-block .license .bp4uq-footer-heading { margin-bottom: 16px; }
.site-bottom .footer-sitemap .bold-title .bp4uq-footer-heading {
    margin: 0;
    color: #b8c5d8;
    font-size: 12px;
    letter-spacing: .14em;
}
.site-bottom .footer-sitemap .footer-form .bp4uq-footer-heading { color: #87b4ff; }
.footer-areas .locations-block p strong { color: #83b3ff; }
.footer-areas .locations-block p:nth-child(2) strong { color: #ff9379 !important; }
.footer-areas .locations-block p:nth-child(3) strong { color: #8ed68c !important; }
.footer-areas .locations-block p:nth-child(4) strong { color: #eac044 !important; }
.footer-areas .locations-block p:nth-child(5) strong { color: #d3bcff !important; }
.footer-areas .locations-block p:nth-child(4) code { color: #222; }
.footer-areas .locations-block p:nth-child(5) code { background: #d3bcff !important; color: #332050; }
.offices-property .bp4uq-office-heading {
    letter-spacing: 0;
    font-size: 18px;
    font-weight: 700;
    margin: 1px 0 24px;
    font-stretch: condensed;
    text-transform: uppercase;
}
.offices-property .bp4uq-office-heading a { color: #fff; }
.chat-with .bp4uq-chat-label {
    display: block;
    max-width: 105px;
    margin: 10px 0;
    color: #fff;
    font-size: 18px;
    line-height: 1.2;
}
.site-bottom .footer-nav .menu .sub-menu > li { margin-bottom: 1px; }
.site-bottom .footer-nav .menu .sub-menu > li > a {
    display: inline-block;
    min-height: 24px;
    padding-block: 3px;
    line-height: 18px;
}
.site-bottom a:focus-visible,
.navbar a:focus-visible,
.offices-property button:focus-visible,
.home .bp4uq-video-toggle:focus-visible { outline: 2px solid #9cc5ff; outline-offset: 3px; }
.home .bp4uq-video-toggle {
    position: absolute;
    inset: auto 16px 16px auto;
    z-index: 3;
    display: grid;
    place-items: center;
    width: 40px;
    height: 40px;
    border: 1px solid #ffffffbd;
    border-radius: 50%;
    background: #151a23d9;
    color: #fff;
    font-size: 16px;
    line-height: 1;
}
.home .bp4uq-video-toggle:hover { background: #151a23; }

/* Match the original condensed font's measured widths while it loads. */
@font-face {
    font-family: "BP4U Hero Fallback";
    src: local("Arial Bold"), local("Arial-BoldMT"), local("Liberation Sans Bold");
    font-weight: 700;
    font-stretch: condensed;
    size-adjust: 79%;
    ascent-override: 90.4%;
    descent-override: 36.2%;
    line-gap-override: 25.3%;
}
.home .home-banner h1 {
    font-family: "Helvetica Neue LT Pro", "BP4U Hero Fallback", sans-serif;
}
.bp4uq-skip-link {
    position: fixed;
    z-index: 2147483646;
    top: 12px;
    left: 12px;
    transform: translateY(calc(-100% - 14px));
    padding: 10px 16px;
    color: #fff;
    background: #183567;
    border-radius: 4px;
}
.bp4uq-skip-link:focus { transform: none; color: #fff; outline: 2px solid #fff; }

.footer-areas .bp4uq-footer-heading em {
    color: #fff;
    font-style: normal;
    font-weight: inherit;
}
.home .for-tools.home-property { background-color: #005ce6 !important; }
.home .rate-score-block strong > span[style*="#0066ff"] { color: #0050c2 !important; }
.offices-property .info-block a[href^="mailto:"] {
    text-decoration: underline;
    text-underline-offset: .15em;
}
