/* ============================================================
   Page-load blink fix — definitive solution.

   .rd-navbar { display: none } in style.css until RDNavbar adds
   rd-navbar-static/-fixed. Hard-coded rd-navbar-static on the nav
   in markup + the rules below make the menu paint correctly from
   frame 1 with zero JS dependency. RDNavbar's runtime classes
   take over cleanly afterwards.

   Used by:
     - Main.master (sitewide for every .aspx page)
     - pages/languageinterpreters.html
     - pages/language-translation-services.html
     - pages/language-certified-translation.html
     - pages/language-translator-in-city.html
     - pages/view-language.html

   IMPORTANT: every page that links this file MUST also have
   rd-navbar-static hard-coded on its <nav class="..."> markup,
   otherwise these rules don't activate.
   ============================================================ */

/* Lock html+body background to brand white so first-frame paint
   matches page bg instead of OS-default grey. */
html, body { background-color: #ffffff; }

/* Pre-init dropdown / megamenu hide — uses a JS-independent
   structural selector (direct child of <li>) instead of the
   JS-added .rd-navbar-submenu class. */
.rd-navbar-static .rd-navbar-nav > li > .rd-navbar-dropdown,
.rd-navbar-static .rd-navbar-nav > li > .rd-navbar-megamenu {
    opacity: 0;
    visibility: hidden;
}

.rd-navbar-static .rd-navbar-nav > li:hover > .rd-navbar-dropdown,
.rd-navbar-static .rd-navbar-nav > li:hover > .rd-navbar-megamenu {
    opacity: 1;
    visibility: visible;
}

/* Pre-render the chevron-down (\f107) via ::after pseudo-element
   on the <a> of each menu item that has a submenu. Same glyph,
   colour and width as RDNavbar's injected toggle, so no visual
   shift when JS hands off.

   Dual selector strategy:
     (1) Structural :has(> .rd-navbar-megamenu/-dropdown) — modern
         browsers (Chrome 105+, Safari 15.4+, Firefox 121+, ~94%
         coverage). Works on ALL pages regardless of li IDs.
     (2) ID-based liservices/lisectors/liresources/licompany —
         fallback for older browsers. Works on pages where the
         template author put IDs on those li elements. */

/* (1) Structural — works without IDs */
.rd-navbar-corporate-dark.rd-navbar-static .rd-navbar-nav > li:has(> .rd-navbar-megamenu):not(.rd-navbar-submenu) > a::after,
.rd-navbar-corporate-dark.rd-navbar-static .rd-navbar-nav > li:has(> .rd-navbar-dropdown):not(.rd-navbar-submenu) > a::after,
/* (2) ID-based fallback for older browsers */
.rd-navbar-corporate-dark.rd-navbar-static .rd-navbar-nav > li#liservices:not(.rd-navbar-submenu) > a::after,
.rd-navbar-corporate-dark.rd-navbar-static .rd-navbar-nav > li#lisectors:not(.rd-navbar-submenu) > a::after,
.rd-navbar-corporate-dark.rd-navbar-static .rd-navbar-nav > li#liresources:not(.rd-navbar-submenu) > a::after,
.rd-navbar-corporate-dark.rd-navbar-static .rd-navbar-nav > li#licompany:not(.rd-navbar-submenu) > a::after {
    content: '\f107';
    display: inline-block;
    font: 400 16px "FontAwesome";
    color: #37c386;
    margin-left: 8px;
    width: 16px;
    text-align: center;
    vertical-align: middle;
}

/* Pre-apply margin-right that .rd-navbar-submenu would give, so
   spacing matches between pre-init and post-init states. Same
   dual structural + ID-based selector strategy. */
.rd-navbar-corporate-dark.rd-navbar-static .rd-navbar-nav > li:has(> .rd-navbar-megamenu):not(.rd-navbar-submenu),
.rd-navbar-corporate-dark.rd-navbar-static .rd-navbar-nav > li:has(> .rd-navbar-dropdown):not(.rd-navbar-submenu),
.rd-navbar-corporate-dark.rd-navbar-static .rd-navbar-nav > li#liservices:not(.rd-navbar-submenu),
.rd-navbar-corporate-dark.rd-navbar-static .rd-navbar-nav > li#lisectors:not(.rd-navbar-submenu),
.rd-navbar-corporate-dark.rd-navbar-static .rd-navbar-nav > li#liresources:not(.rd-navbar-submenu),
.rd-navbar-corporate-dark.rd-navbar-static .rd-navbar-nav > li#licompany:not(.rd-navbar-submenu) {
    margin-right: -18px;
}
