:root{
  --shared-nav-height:72px;
  --shared-nav-bg:var(--navy,#0a1628);
  --shared-nav-border:var(--gold,#c9921a);
  --shared-nav-text:rgba(255,255,255,0.72);
  --shared-nav-text-strong:#ffffff;
  --shared-nav-accent:var(--gold-lt,#e8ab2a);
  --shared-nav-surface:rgba(255,255,255,0.08);
  --shared-nav-surface-strong:rgba(255,255,255,0.14);
  --shared-nav-menu-bg:#ffffff;
  --shared-nav-menu-text:var(--ink,#1a2a3a);
  --shared-nav-menu-muted:var(--slate,#4a5568);
  --shared-nav-menu-border:rgba(10,22,40,0.12);
}

.shared-nav{
  position:sticky;
  top:0;
  z-index:1000;
  background:var(--shared-nav-bg);
  color:#fff;
  border-bottom:3px solid var(--shared-nav-border);
  box-shadow:0 2px 16px rgba(10,22,40,0.22);
}

.shared-nav__inner{
  max-width:1440px;
  margin:0 auto;
  min-height:var(--shared-nav-height);
  padding:0 1.25rem;
  display:flex;
  align-items:center;
  gap:1rem;
}

.shared-nav__brand{
  color:#fff;
  text-decoration:none;
  flex-shrink:0;
}

.shared-nav__brand-mark{
  font-family:var(--font-serif,var(--font-d,Georgia,serif));
  font-size:1.42rem;
  line-height:1;
  letter-spacing:-0.01em;
}

.shared-nav__brand-mark em{
  color:var(--shared-nav-accent);
  font-style:italic;
}

.shared-nav__brand-sub{
  display:block;
  margin-top:0.2rem;
  font-family:var(--font-sans,var(--font-b,system-ui,sans-serif));
  font-size:0.62rem;
  letter-spacing:0.08em;
  text-transform:uppercase;
  color:rgba(255,255,255,0.44);
}

.shared-nav__desktop{
  display:flex;
  align-items:center;
  gap:0.35rem;
  margin-left:auto;
}

.shared-nav__item{
  position:relative;
}

.shared-nav__link,
.shared-nav__trigger,
.shared-nav__mobile-link,
.shared-nav__mobile-trigger{
  font-family:var(--font-sans,var(--font-b,system-ui,sans-serif));
}

.shared-nav__link,
.shared-nav__trigger{
  display:inline-flex;
  align-items:center;
  gap:0.4rem;
  min-height:42px;
  padding:0.7rem 0.95rem;
  border:1px solid transparent;
  border-radius:10px;
  background:transparent;
  color:var(--shared-nav-text);
  text-decoration:none;
  font-size:0.8rem;
  font-weight:600;
  cursor:pointer;
  transition:background .18s ease,border-color .18s ease,color .18s ease;
}

.shared-nav__trigger{
  appearance:none;
}

.shared-nav__link:hover,
.shared-nav__trigger:hover,
.shared-nav__link:focus-visible,
.shared-nav__trigger:focus-visible,
.shared-nav__item.is-open > .shared-nav__trigger,
.shared-nav__item.is-active > .shared-nav__trigger,
.shared-nav__link.is-active{
  background:var(--shared-nav-surface);
  border-color:rgba(255,255,255,0.14);
  color:var(--shared-nav-text-strong);
  outline:none;
}

.shared-nav__chevron{
  font-size:0.72rem;
  line-height:1;
  transition:transform .18s ease;
}

.shared-nav__item.is-open .shared-nav__chevron{
  transform:rotate(180deg);
}

.shared-nav__menu{
  position:absolute;
  top:calc(100% + 0.65rem);
  left:0;
  min-width:260px;
  padding:0.5rem;
  border:1px solid var(--shared-nav-menu-border);
  border-radius:14px;
  background:var(--shared-nav-menu-bg);
  box-shadow:0 18px 36px rgba(10,22,40,0.18);
  opacity:0;
  visibility:hidden;
  transform:translateY(8px);
  transition:opacity .18s ease,transform .18s ease,visibility .18s ease;
}

.shared-nav__item.is-open .shared-nav__menu{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
}

.shared-nav__menu-link{
  display:flex;
  flex-direction:column;
  gap:0.15rem;
  padding:0.8rem 0.9rem;
  border-radius:10px;
  color:var(--shared-nav-menu-text);
  text-decoration:none;
  transition:background .15s ease,color .15s ease;
}

.shared-nav__menu-link:hover,
.shared-nav__menu-link:focus-visible,
.shared-nav__menu-link.is-active{
  background:rgba(10,22,40,0.06);
  outline:none;
}

.shared-nav__menu-label{
  font-size:0.84rem;
  font-weight:700;
  line-height:1.25;
}

.shared-nav__menu-meta{
  font-size:0.69rem;
  color:var(--shared-nav-menu-muted);
  line-height:1.4;
}

.shared-nav__mobile-toggle{
  display:none;
  margin-left:auto;
  width:46px;
  height:46px;
  padding:0;
  border:1px solid rgba(255,255,255,0.16);
  border-radius:12px;
  background:transparent;
  color:#fff;
  cursor:pointer;
}

.shared-nav__mobile-toggle span{
  display:block;
  width:18px;
  height:2px;
  margin:4px auto;
  background:currentColor;
  border-radius:999px;
}

.shared-nav__mobile-panel{
  display:none;
  border-top:1px solid rgba(255,255,255,0.08);
  padding:0 1rem 1rem;
  background:var(--shared-nav-bg);
}

.shared-nav.is-mobile-open .shared-nav__mobile-panel{
  display:block;
}

.shared-nav__mobile-list{
  display:flex;
  flex-direction:column;
  gap:0.4rem;
  padding-top:0.8rem;
}

.shared-nav__mobile-link,
.shared-nav__mobile-trigger{
  width:100%;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:0.75rem;
  padding:0.9rem 1rem;
  border:1px solid rgba(255,255,255,0.1);
  border-radius:12px;
  background:rgba(255,255,255,0.04);
  color:#fff;
  text-decoration:none;
  font-size:0.86rem;
  font-weight:600;
  text-align:left;
}

.shared-nav__mobile-trigger{
  appearance:none;
  cursor:pointer;
}

.shared-nav__mobile-link.is-active,
.shared-nav__mobile-trigger.is-active{
  background:rgba(255,255,255,0.12);
  border-color:rgba(255,255,255,0.18);
}

.shared-nav__mobile-group.is-open .shared-nav__mobile-trigger .shared-nav__chevron{
  transform:rotate(180deg);
}

.shared-nav__mobile-children{
  display:none;
  padding:0.35rem 0 0.1rem 0.85rem;
}

.shared-nav__mobile-group.is-open .shared-nav__mobile-children{
  display:flex;
  flex-direction:column;
  gap:0.35rem;
}

.shared-nav__mobile-child{
  display:flex;
  flex-direction:column;
  gap:0.12rem;
  padding:0.8rem 0.95rem;
  border-radius:10px;
  text-decoration:none;
  background:rgba(255,255,255,0.04);
  color:rgba(255,255,255,0.88);
}

.shared-nav__mobile-child.is-active{
  background:rgba(255,255,255,0.12);
}

.shared-nav__mobile-child .shared-nav__menu-meta{
  color:rgba(255,255,255,0.58);
}

@media (max-width:1180px){
  :root{
    --shared-nav-height:68px;
  }

  .shared-nav__desktop{
    display:none;
  }

  .shared-nav__mobile-toggle{
    display:inline-block;
  }
}

/* Occupation breadcrumb bar */
#occ-breadcrumb{
  background:#112447;
  border-bottom:1px solid rgba(201,162,61,0.25);
  padding:7px 1.5rem;
  display:flex;
  align-items:center;
  gap:12px;
  font-size:0.78rem;
  font-family:var(--font-sans,var(--font-b,system-ui,sans-serif));
  flex-wrap:wrap;
}
#occ-breadcrumb a{color:rgba(255,255,255,0.75);text-decoration:none}
#occ-back-btn{
  background:rgba(201,162,61,0.15);
  border:1px solid rgba(201,162,61,0.3);
  border-radius:5px;
  padding:4px 10px;
  color:#e8c96a;
  font-weight:600;
  transition:background .15s ease;
  white-space:nowrap;
}
#occ-back-btn:hover{background:rgba(201,162,61,0.28)}
.occ-bc-sep{color:rgba(255,255,255,0.2)}
.occ-bc-trail{
  display:flex;
  align-items:center;
  gap:6px;
  color:rgba(255,255,255,0.45);
  flex-wrap:nowrap;
  overflow:hidden;
}
.occ-bc-trail a{color:rgba(255,255,255,0.55)}
.occ-bc-trail a:hover{color:rgba(255,255,255,0.85)}
.occ-bc-occ{color:rgba(255,255,255,0.75);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}
@media(max-width:700px){
  .occ-bc-sep,.occ-bc-trail{display:none}
}
