.nav-menu {
  position: relative;
}

.nav-menu > a {
  display: block;
}

.nav-submenu {
  position: absolute;
  top: 100%;
  left: 0;
  display: none;
  min-width: 210px;
  padding: 8px;
  background: rgba(10, 18, 13, .98);
  border: 1px solid rgba(255, 255, 255, .14);
  border-radius: 8px;
  box-shadow: var(--shadow);
}

.nav-submenu a {
  display: block;
  white-space: nowrap;
}

.nav-menu:hover .nav-submenu,
.nav-menu:focus-within .nav-submenu {
  display: block;
}

.resource-row {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

@media (max-width: 900px) {
  .nav-menu {
    display: block;
  }

  .nav-submenu {
    position: static;
    display: grid;
    gap: 4px;
    min-width: 0;
    margin-top: 4px;
    padding: 6px;
    background: rgba(255, 255, 255, .06);
    box-shadow: none;
  }

  .nav-submenu a {
    padding-left: 24px;
  }

  .resource-row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .resource-row {
    grid-template-columns: 1fr;
  }
}
