/* Shared portfolio navigation, including the homepage's selected work. */
.project-menu { position: relative; }
.nav-steelwork { display: inline-flex; align-items: center; gap: 7px; white-space: nowrap; }
.nav-steelwork > span[aria-hidden] { font-size: 15px; font-weight: 400; }
@media (min-width: 681px) and (max-width: 900px) {
  .header .brand { width: 180px; gap: 10px; flex: none; }
  .header .brand-symbol { width: 27px; height: 37px; }
  .header .brand-wordmark { width: 140px; }
  .header .navigation { gap: 14px; }
  .header .nav-contact { margin-left: 0; padding-inline: 12px !important; white-space: nowrap; }
}
.project-menu > summary { display: flex; align-items: center; gap: 9px; min-height: 48px; cursor: pointer; list-style: none; }
.project-menu > summary::-webkit-details-marker { display: none; }
.project-menu > summary::after { content: ''; width: 6px; height: 6px; border-right: 1px solid; border-bottom: 1px solid; transform: translateY(-2px) rotate(45deg); transition: transform .2s; }
.project-menu[open] > summary::after { transform: translateY(2px) rotate(225deg); }
.project-submenu { position: absolute; top: calc(100% + 12px); left: -24px; min-width: 250px; padding: 10px 24px; background: #f2eee5; color: #10392f; box-shadow: 0 12px 30px #0002; }
.project-submenu a { display: flex; align-items: center; justify-content: space-between; gap: 32px; padding-block: 18px; font-size: 16px; }
.project-submenu a + a { border-top: 1px solid #10392f26; }
.project-submenu a:hover, .project-submenu a[aria-current="page"] { color: #167767; }
.project-submenu a span { transition: transform .2s; }
.project-submenu a:hover span { transform: translateX(4px); }
.sector-view-all { display: flex; justify-content: flex-end; margin-top: 40px; }
.sector-view-all .text-link { min-width: 270px; }
@media (max-width: 680px) {
  .project-menu > summary { font-size: 20px; padding-block: 12px; justify-content: space-between; }
  .project-submenu { position: static; background: transparent; color: inherit; box-shadow: none; padding: 0 0 10px 18px; min-width: 0; }
  .project-submenu a { font-size: 17px; padding-block: 14px; }
  .project-submenu a + a { border-color: #ffffff26; }
  .project-submenu a:hover, .project-submenu a[aria-current="page"] { color: #9edbc0; }
  .sector-view-all { justify-content: flex-start; margin-top: 28px; }
  .sector-view-all .text-link { width: 100%; min-width: 0; }
  html:not(.has-navigation) .header { position: relative; height: auto; min-height: 82px; flex-wrap: wrap; padding-bottom: 18px; }
  html:not(.has-navigation) .menu-toggle { display: none; }
  html:not(.has-navigation) .navigation { display: flex; position: static; flex-basis: 100%; flex-direction: column; align-items: stretch; padding: 18px 0 0; background: transparent; color: inherit; box-shadow: none; max-height: none; }
}
@media (prefers-reduced-motion: reduce) { .project-menu *, .project-menu *::after { transition: none; } }
