/* lf-global-header.css: the one LegalFirms.in header (8 Nov 2026).
   BYTE-IDENTICAL in both repos with includes/lf-global-header.php and
   assets/lf-global-header.js. Bump LF_GH_VER in the PHP file on any change.
   Colours and type follow the legalfirms.in home page: ink #0b1526, gold
   #c9a256, Public Sans where the page loads it, the system font otherwise.
   Flat: no gradients, no pill shapes, one hairline under each row.

   Every rule starts with #lfg. The header goes on pages with very different
   styles (WordPress theme, landing pages, judgments, directory), and page
   rules such as `.header a` or `nav a` must not reach it. Resets are
   `#lfg a` (one id, one element); parts are `#lfg .lfg-x` (one id, one class),
   so a part always beats a reset and a page's class rules. */

#lfg, #lfg *, #lfg *::before, #lfg *::after { box-sizing: border-box; }
#lfg {
  position: sticky; top: 0; z-index: 1000; display: block; width: 100%; margin: 0; padding: 0; float: none;
  font-family: 'Public Sans', system-ui, -apple-system, 'Segoe UI', Roboto, Arial, sans-serif;
  font-size: 14px; line-height: 1.4; font-weight: 400; letter-spacing: normal; text-transform: none;
  text-align: left; color: #dde4ef; -webkit-font-smoothing: antialiased; background: none; border: 0; box-shadow: none;
}
/* Many page styles set body { overflow-x: hidden }, which makes <body> a
   scroll box of its own, so a sticky header scrolls away with the page (seen
   on the magazine theme and the directory). clip hides sideways overflow the
   same way without that side effect. Only on pages that carry this header. */
body:has(> #lfg) { overflow-x: clip !important; overflow-y: visible !important; }
.admin-bar #lfg { top: 32px; }
@media (max-width: 782px) { .admin-bar #lfg { top: 46px; } }

/* Resets (lose to every part below) */
#lfg a { color: inherit; text-decoration: none; background: none; border: 0; box-shadow: none; font: inherit; letter-spacing: normal; text-transform: none; margin: 0; padding: 0; outline-offset: 2px; }
#lfg a:hover { text-decoration: none; }
#lfg img { display: block; max-width: none; border: 0; margin: 0; padding: 0; box-shadow: none; }
#lfg nav { display: block; background: none; border: 0; margin: 0; padding: 0; box-shadow: none; position: static; float: none; width: auto; height: auto; }
#lfg details { display: block; margin: 0; padding: 0; border: 0; }
#lfg summary { display: block; list-style: none; cursor: pointer; margin: 0; padding: 0; outline-offset: 2px; }
#lfg summary::-webkit-details-marker { display: none; }
#lfg summary::marker { content: ''; }
#lfg hr { border: 0; border-top: 1px solid #ece6d8; margin: 6px 4px; height: 0; background: none; }
#lfg svg { display: inline-block; flex: 0 0 auto; vertical-align: middle; }
#lfg a:focus-visible, #lfg summary:focus-visible { outline: 2px solid #c9a256; }

/* Parts */
#lfg .lfg-ico-chev { width: 14px; height: 14px; opacity: .7; transition: transform .15s; }
#lfg details[open] > summary .lfg-ico-chev { transform: rotate(180deg); }

#lfg .lfg-bar { background: #0b1526; border-bottom: 1px solid rgba(255, 255, 255, .08); }
#lfg .lfg-in { max-width: 1240px; margin: 0 auto; padding: 0 20px; display: flex; align-items: center; gap: 18px; height: 60px; position: relative; }

#lfg .lfg-logo { flex: 0 0 auto; display: flex; align-items: center; height: 60px; }
#lfg .lfg-logo img { height: 40px; width: auto; }
/* The section name shows only when the menu folds into the burger (the menu
   item for the section is underlined on wider screens, so it would repeat). */
#lfg .lfg-sec {
  display: none; flex: 0 0 auto; color: #c9a256; font-weight: 600; font-size: 14px; white-space: nowrap;
  padding-left: 16px; border-left: 1px solid rgba(255, 255, 255, .18); line-height: 22px;
}
#lfg .lfg-sec:hover { color: #d8b36a; }

#lfg .lfg-nav { display: flex; align-items: center; gap: 20px; margin-left: 6px; min-width: 0; }
#lfg .lfg-a {
  display: inline-flex; align-items: center; gap: 4px; height: 60px; white-space: nowrap;
  color: rgba(255, 255, 255, .74); font-size: 13.5px; font-weight: 500;
  border-bottom: 2px solid transparent; padding-top: 2px; transition: color .15s, border-color .15s;
}
#lfg .lfg-a:hover, #lfg details[open] > .lfg-a { color: #fff; }
#lfg .lfg-a[aria-current] { color: #fff; border-bottom-color: #c9a256; }

#lfg .lfg-act { margin-left: auto; display: flex; align-items: center; gap: 10px; flex: 0 0 auto; }
#lfg .lfg-btn {
  height: 36px; padding: 0 12px; display: inline-flex; align-items: center; gap: 6px; white-space: nowrap;
  border: 1px solid rgba(255, 255, 255, .22); border-radius: 3px; color: #dde4ef; font-size: 13.5px; font-weight: 500;
  transition: border-color .15s, background .15s;
}
#lfg .lfg-btn:hover, #lfg details[open] > .lfg-btn { border-color: rgba(255, 255, 255, .45); background: rgba(255, 255, 255, .06); color: #fff; }
#lfg .lfg-me-name { max-width: 170px; overflow: hidden; text-overflow: ellipsis; }
#lfg .lfg-cta {
  height: 36px; padding: 0 16px; display: inline-flex; align-items: center; white-space: nowrap;
  background: #c9a256; border: 1px solid #c9a256; border-radius: 3px; color: #101d33; font-size: 13.5px; font-weight: 700;
  transition: background .15s;
}
#lfg .lfg-cta:hover { background: #d8b36a; border-color: #d8b36a; color: #101d33; }

#lfg .lfg-dd { position: relative; }
#lfg .lfg-menu {
  position: absolute; top: calc(100% + 4px); left: -10px; min-width: 230px; z-index: 1001;
  background: #fff; color: #171a21; border: 1px solid #e4ddcd; border-radius: 6px; padding: 6px;
  box-shadow: 0 6px 18px rgba(11, 21, 38, .10); text-align: left;
}
#lfg .lfg-nav .lfg-dd > .lfg-menu { top: 56px; }
#lfg .lfg-dd-r > .lfg-menu { left: auto; right: 0; }
#lfg .lfg-menu a { display: block; padding: 8px 10px; border-radius: 3px; color: #171a21; font-size: 14px; font-weight: 400; white-space: nowrap; line-height: 1.4; }
#lfg .lfg-menu a:hover, #lfg .lfg-menu a:focus { background: #f3efe6; color: #101d33; }
#lfg .lfg-menu .lfg-strong { font-weight: 700; color: #16243f; }
#lfg .lfg-menu .lfg-out { color: #9b2c2c; }
#lfg .lfg-menu .lfg-jdg { color: #16243f; }
#lfg .lfg-cap { display: block; padding: 8px 10px 4px; font-size: 11px; letter-spacing: .08em; text-transform: uppercase; color: #6f6a5e; white-space: nowrap; }

#lfg .lfg-sub { background: #101d33; border-bottom: 1px solid rgba(255, 255, 255, .06); }
#lfg .lfg-sub .lfg-in { height: 42px; }
#lfg .lfg-subnav { display: flex; align-items: center; gap: 22px; overflow-x: auto; scrollbar-width: none; height: 42px; }
#lfg .lfg-subnav::-webkit-scrollbar { display: none; }
#lfg .lfg-subnav a {
  display: inline-flex; align-items: center; height: 42px; white-space: nowrap; color: rgba(255, 255, 255, .70);
  font-size: 13px; border-bottom: 2px solid transparent; padding-top: 2px;
}
#lfg .lfg-subnav a:hover { color: #fff; }
#lfg .lfg-subnav a[aria-current] { color: #fff; border-bottom-color: #c9a256; }

#lfg .lfg-burger { display: none; }
#lfg .lfg-burger-btn { width: 38px; padding: 0; justify-content: center; }
#lfg .lfg-burger .lfg-ico-close { display: none; }
#lfg .lfg-burger[open] .lfg-ico-close { display: inline-block; }
#lfg .lfg-burger[open] .lfg-ico-menu { display: none; }
#lfg .lfg-drawer {
  position: absolute; top: 60px; left: 0; right: 0; z-index: 1001; background: #0b1526;
  border-top: 1px solid rgba(255, 255, 255, .08); border-bottom: 1px solid rgba(255, 255, 255, .12);
  padding: 8px 20px 16px; max-height: calc(100vh - 60px); overflow-y: auto;
}
#lfg .lfg-dl { display: flex; align-items: center; min-height: 46px; color: rgba(255, 255, 255, .86); font-size: 15px; border-bottom: 1px solid rgba(255, 255, 255, .06); }
#lfg .lfg-dl:hover { color: #fff; }
#lfg .lfg-dl[aria-current] { color: #c9a256; }
#lfg .lfg-dl-sub { padding-left: 14px; font-size: 14px; }
#lfg .lfg-dl-cta { justify-content: center; margin: 8px 0 6px; min-height: 44px; border: 1px solid #c9a256; border-radius: 3px; background: #c9a256; color: #101d33; font-weight: 700; }
#lfg .lfg-dl-cta:hover { color: #101d33; background: #d8b36a; }
#lfg .lfg-dcap { display: block; padding: 14px 0 4px; font-size: 11px; letter-spacing: .08em; text-transform: uppercase; color: #8e9cb5; }

/* A signed-in name must not push into the menu: shorter, then icon only
   ("Signed in as ..." heads the menu itself). */
@media (max-width: 1220px) {
  #lfg .lfg-nav { gap: 16px; }
  #lfg .lfg-me-name { max-width: 110px; }
}
@media (max-width: 1100px) {
  #lfg .lfg-in { gap: 14px; }
  #lfg .lfg-nav { gap: 13px; margin-left: 0; }
  #lfg .lfg-a { font-size: 13px; }
  #lfg .lfg-me-name { display: none; }
}
@media (max-width: 1023px) and (min-width: 601px) {
  #lfg .lfg-me-name { display: inline; max-width: 140px; }
}
@media (max-width: 1023px) {
  #lfg .lfg-nav { display: none; }
  #lfg .lfg-sec { display: inline-block; }
  #lfg .lfg-burger { display: block; }
  #lfg .lfg-dd-r > .lfg-menu { right: -48px; }
}
@media (max-width: 600px) {
  #lfg .lfg-in { padding: 0 14px; gap: 10px; }
  #lfg .lfg-sec { display: none; }
  #lfg .lfg-cta { display: none; }
  #lfg .lfg-me-name { max-width: 90px; }
  #lfg .lfg-drawer { padding: 6px 14px 14px; }
  #lfg .lfg-sub .lfg-in { padding: 0 14px; }
  #lfg .lfg-subnav { gap: 18px; }
  #lfg .lfg-dd-r > .lfg-menu { right: -48px; min-width: 220px; }
}
@media (max-width: 380px) {
  #lfg .lfg-logo img { height: 34px; }
  #lfg .lfg-me-name { display: none; }
}
@media print { #lfg { display: none; } }
