.nav-group { position: relative; display: flex; align-items: center; gap: 3px; }
.submenu-toggle { display: grid; place-items: center; width: 24px; height: 44px; padding: 0; border: 0; background: transparent; color: var(--green-deep); cursor: pointer; }
.submenu-toggle[aria-expanded="true"] svg { transform: rotate(180deg); }
.nav-submenu { position: absolute; top: 100%; left: -24px; width: 216px; padding: 12px 0; background: #071e26; border: 0; box-shadow: 0 12px 24px rgba(6,28,32,.16); }
#submenu-company { left: auto; right: -24px; }
.nav-submenu[hidden] { display: none; }
.nav .nav-submenu a, .nav-submenu .reserved-item { display: flex; min-height: 50px; align-items: center; padding: 12px 24px; font-size: 15px; line-height: 1.5; color: #eaf3f3; }
.nav .nav-submenu a::after { display: none; }
.nav .nav-submenu a:hover, .nav .nav-submenu a:focus-visible, .nav .nav-submenu a[aria-current] { background: #11323a; color: #7ce3c5; }
.nav .nav-submenu a:focus-visible { outline: 2px solid #7ce3c5; outline-offset: -2px; }
.nav-submenu .reserved-item { color: #92a8ae; cursor: default; }
.nav-group:has(.submenu-toggle[aria-expanded="true"]) > a { color: var(--green-deep); }
.nav-group:has(.submenu-toggle[aria-expanded="true"]) > a::after { transform: scaleX(1); }
.nav-submenu::selection { color: #071e26; background: #7ce3c5; }
.submenu-toggle:focus-visible { outline: 2px solid var(--green-deep); outline-offset: 2px; }
/* Desktop inner-page navigation shares the homepage's image-backed treatment. */
@media (min-width: 861px) {
  :root { --desktop-hero-title-top: 208px; }
  .brand-logo { content: url('./assets/logo-on-dark.svg'); }
  body:not(.home-page) .site-header { position: absolute; inset: 0 0 auto; background: transparent; border-bottom: 0; backdrop-filter: none; }
  body:not(.home-page) .nav > a,
  body:not(.home-page) .nav-group > a { color: #f4f7f5; }
  body:not(.home-page) .nav > a:hover:not(.nav-contact),
  body:not(.home-page) .nav > a.active,
  body:not(.home-page) .nav-group > a.active,
  body:not(.home-page) .nav-group > a:hover,
  body:not(.home-page) .nav-group:has(.submenu-toggle[aria-expanded="true"]) > a { color: #9ee2bd; }
  body:not(.home-page) .nav a::after { background: #9ee2bd; }
  body:not(.home-page) .submenu-toggle { color: #9ee2bd; }
  body:not(.home-page) .nav > a:focus-visible,
  body:not(.home-page) .nav-group > a:focus-visible,
  body:not(.home-page) .submenu-toggle:focus-visible { outline: 2px solid #9ee2bd; outline-offset: 3px; }
  body:not(.home-page) main .page-hero::after { background: linear-gradient(180deg, rgba(3,18,24,.62), transparent 140px), linear-gradient(90deg, rgba(3,18,24,.9), rgba(3,24,28,.5) 58%, rgba(3,18,24,.08)); }
  body:not(.home-page) main .company-hero::after { background: linear-gradient(180deg, rgba(3,18,24,.62), transparent 140px), linear-gradient(90deg, rgba(3,18,24,.7), rgba(3,24,28,.12) 42%, rgba(3,18,24,.03) 68%); }
  body:not(.home-page) main .page-hero { height: 440px !important; min-height: 440px !important; }
  body:not(.home-page) main .page-hero > div {
    position: absolute;
    top: var(--desktop-hero-title-top);
    right: max(22px, calc((100vw - var(--max)) / 2));
    bottom: auto;
    left: max(22px, calc((100vw - var(--max)) / 2));
    width: auto;
  }
}
@media (max-width: 1080px) and (min-width: 861px) { .nav { gap: 10px; } .nav-group { gap: 0; } .submenu-toggle { width: 18px; } }
@media (max-width: 860px) {
  .nav { bottom: auto; height: calc(100dvh - 68px); }
  .nav-group { display: grid; grid-template-columns: 1fr 48px; gap: 0; }
  .submenu-toggle { width: 48px; height: 54px; border-bottom: 1px solid var(--line); }
  .nav-submenu { position: relative; top: auto; left: auto; grid-column: 1 / -1; width: 100%; min-width: 0; padding: 8px 0; border: 0; box-shadow: none; }
  #submenu-company { left: auto; right: auto; }
  .nav .nav-submenu a { border-bottom: 0; font-size: 15px; }
}
@media (prefers-reduced-motion: no-preference) {
  .nav .nav-submenu a { transition: color 160ms ease, background-color 160ms ease; }
  .submenu-toggle svg { transition: transform 180ms ease; }
}
