/* Shared enterprise navigation. Existing page styles remain scoped to their content. */
html { scroll-padding-top: 92px; }
.site-skip { position: fixed; top: -70px; left: 20px; z-index: 10001; padding: 10px 18px; background: #fff; color: #a91118; }
.site-skip:focus { top: 12px; }
.company-header { height: 72px; background: rgba(255, 255, 255, .97); border-bottom: 1px solid #e9ece8; box-shadow: none; }
.company-header .container { max-width: 1280px; padding-inline: 40px; }
.company-header .logo { gap: 9px; color: #242724; font-size: 22px; font-weight: 600; letter-spacing: -.4px; }
.company-header .logo img { width: 34px; height: 34px; filter: none; }
.company-header .logo small { margin-left: 6px; padding-left: 15px; border-left: 1px solid #d9d5ce; font-size: 10px; font-weight: 500; letter-spacing: 1.8px; color: #777a74; }
.company-header .nav-list { align-items: center; gap: 10px; }
.company-header .nav-list > a, .company-header .nav-summary { position: relative; padding: 10px 13px; border-radius: 0; font-size: 14px; font-weight: 400; color: #424640; background: none; box-shadow: none; white-space: nowrap; }
.company-header .nav-list > a:hover, .company-header .nav-list > a.active, .company-header .nav-summary:hover, .company-header .nav-dropdown[open] .nav-summary, .company-header .nav-dropdown.is-current .nav-summary { color: #b81720; background: none; box-shadow: none; }
.company-header .nav-list > a.active::after, .company-header .nav-dropdown.is-current .nav-summary::after { content: ''; position: absolute; bottom: 3px; left: 13px; right: 13px; height: 2px; background: #c9161d; }
.company-header .nav-list .nav-contact { display: inline-flex; align-items: center; gap: 20px; margin-left: 13px; padding: 10px 18px; background: #c9161d; color: #fff; font-weight: 500; }
.company-header .nav-list .nav-contact:hover { background: #a91118; color: #fff; }
.company-header a:focus-visible, .company-header summary:focus-visible, .company-header button:focus-visible { outline: 2px solid #c9161d; outline-offset: 4px; }
.nav-dropdown { position: static; }
.nav-summary { display: flex; align-items: center; gap: 7px; cursor: pointer; list-style: none; user-select: none; }
.nav-summary::-webkit-details-marker { display: none; }
.nav-chevron { width: 12px; height: 12px; transition: transform .2s; }
.nav-dropdown[open] .nav-chevron { transform: rotate(180deg); }
.nav-drawer { position: absolute; top: calc(100% - 1px); left: 0; right: 0; background: #fff; border-top: 1px solid #e8ece7; border-bottom: 1px solid #e1e6de; box-shadow: 0 20px 30px rgba(25, 30, 25, .08); animation: drawer-in .18s ease-out; }
.nav-drawer-inner { max-width: 1280px; margin: 0 auto; padding: 32px 40px; display: grid; grid-template-columns: 1.25fr 1fr 1.2fr 1fr; gap: 32px; }
.nav-drawer-intro { padding-right: 32px; border-right: 1px solid #e1ddd5; }
.nav-drawer-kicker { display: block; font-size: 11px; letter-spacing: 1px; font-weight: 500; color: #bd1620; margin-bottom: 12px; }
.nav-drawer-intro strong { display: block; font-size: 19px; line-height: 1.6; font-weight: 500; color: #242724; }
.nav-drawer-intro p { margin: 12px 0 16px; font-size: 13px; color: #747870; line-height: 1.8; }
.nav-drawer .nav-drawer-intro a { padding: 0; font-size: 13px; font-weight: 500; color: #b81720; }
.nav-drawer h2 { margin: 0 0 12px; font-size: 12px; font-weight: 500; letter-spacing: .5px; color: #757e73; }
.nav-drawer .nav-drawer-column a { display: block; padding: 8px 0; font-size: 14px; font-weight: 400; color: #30372f; background: none; border-radius: 0; }
.nav-drawer .nav-drawer-column a:hover { color: #bc1720; }
.nav-drawer-column a small { display: block; margin-top: 2px; color: #81857e; font-size: 11px; font-weight: 400; }
.nav-drawer-bottom { max-width: 1220px; margin: 0 auto; padding: 14px 0; border-top: 1px solid #e4e0d9; color: #82877f; font-size: 11px; letter-spacing: .4px; }
@keyframes drawer-in { from { opacity: 0; transform: translateY(-6px); } to { opacity: 1; transform: translateY(0); } }
@media (max-width: 1280px) { .company-header .nav-list { gap: 0; } .company-header .container { padding-inline: 24px; } .company-header .logo small { display: none; } }
@media (min-width: 1081px) { .company-header .nav-toggle { display: none; } }
@media (max-width: 1080px) {
  .company-header { height: 68px; }
  .company-header:has(.nav-list.open) { z-index: 1200; }
  .company-header .container { padding-inline: 22px; }
  .company-header .logo { font-size: 21px; }
  .company-header .logo img { width: 32px; height: 32px; }
  .company-header .nav-toggle { display: block; }
  .company-header .nav-list { display: none; position: absolute; top: 68px; left: 0; right: 0; flex-direction: column; align-items: stretch; padding: 15px 22px 25px; background: #fff; border-bottom: 1px solid #e4e8e1; max-height: calc(100svh - 68px); overflow-y: auto; box-shadow: 0 20px 30px #24272412; }
  .company-header .nav-list.open { display: flex; }
  .company-header .nav-list > a, .company-header .nav-summary { padding: 14px 8px; font-size: 15px; }
  .company-header .nav-list > a.active::after, .company-header .nav-dropdown.is-current .nav-summary::after { display: none; }
  .company-header .nav-summary { justify-content: space-between; }
  .company-header .nav-list .nav-contact { margin: 14px 0 0; justify-content: space-between; padding: 13px 18px; }
  .nav-drawer { position: static; box-shadow: none; border: 1px solid #e5e9e2; background: #f7f8f6; }
  .nav-drawer-inner { grid-template-columns: 1fr 1fr; gap: 24px 18px; padding: 22px 18px; }
  .nav-drawer-intro { padding-right: 10px; border-right: 0; }
  .nav-drawer-intro strong { font-size: 18px; }
  .nav-drawer-intro p { font-size: 12px; }
  .nav-drawer-bottom { margin: 0 18px; padding: 13px 0; line-height: 1.8; }
}
@media (max-width: 420px) { .nav-drawer-inner { grid-template-columns: 1fr; gap: 18px; } .nav-drawer-intro { border-bottom: 1px solid #ddd8cf; padding-bottom: 18px; } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } .nav-drawer { animation: none; } .nav-chevron { transition: none; } }
