/* Shared Photography submenu; typography and link states inherit site.css. */
.site-header {
  position: relative;
  z-index: 30;
}

.site-nav__group {
  position: relative;
  display: flex;
  align-items: center;
}

.site-nav__submenu {
  margin: 0;
  list-style: none;
}

.site-nav__submenu .site-nav__link {
  display: block;
}

@media (min-width: 641px) {
  .site-nav__submenu {
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 1;
    width: max-content;
    padding: 12px 20px;
    background: #ffffff;
    box-shadow: 0 12px 20px rgba(0, 0, 0, 0.12);
    visibility: hidden;
    pointer-events: none;
  }

  .site-nav__submenu .site-nav__link {
    padding-block: 13px;
    white-space: nowrap;
  }

  .site-nav__group:not(.is-dismissed):hover > .site-nav__submenu,
  .site-nav__group:not(.is-dismissed):focus-within > .site-nav__submenu {
    visibility: visible;
    pointer-events: auto;
  }
}

@media (max-width: 640px) {
  .site-nav {
    max-height: calc(100dvh - 100%);
    overflow-y: auto;
  }

  .site-nav__group {
    display: block;
  }

  .site-nav__group > .site-nav__link {
    display: block;
  }

  .site-nav__submenu {
    padding: 0 0 10px 16px;
  }
}
