/*
 * Jobs page-specific styling.
 */

/*
 * Default grid is for mobile.
 */

.wrapper {
  margin-top: 1rem;
  margin-left: 1rem;
  margin-right: 1rem;
  margin-bottom: 1rem;

  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: repeat(8, auto) 4rem 1rem;
  grid-gap: 1.5rem;
  grid-template-areas:
    "logotype"
    "top-nav"
    "hiring"
    "jobs"
    "."
    "company-nav"
    "resources-nav"
    "elsewhere-nav"
    "logo"
    "copyright";
}

.hiring {
  grid-area: hiring;
}

.jobs {
  grid-area: jobs;
}

/*
 * Page-specific styling.
 */

ol > li {
  margin-bottom: 1.5rem;
}

article ul {
  list-style-type: disc;
}

/*
 * Media queries for more expansive page sizes.
 */

@media (min-width: 640px) {
  .wrapper {
    margin-top: 1rem;
    margin-left: 1rem;
    margin-right: 1rem;
    margin-bottom: 1rem;

    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-template-rows: repeat(3, auto) repeat(4, 6rem);
    grid-gap: 1.5rem 2rem; /* row gap is exactly 1 line-height, column gap slightly wider. */
    grid-template-areas:
      "logotype     logotype     top-nav       top-nav       "
      "hiring   hiring   hiring    .             "
      "jobs   jobs   jobs    .             "
      ".            .            .             .             "
      "logo         company-nav  resources-nav elsewhere-nav "
      ".            company-nav  resources-nav elsewhere-nav "
      ".            .            .             copyright     ";
  }
}

@media (min-width: 960px) {
  /*
     * Here we have enough space to fix the grid area sizes for the
     * ideal typography and page flow.
     */
  .wrapper {
    margin-top: 2.5rem;
    margin-left: 4rem;

    display: grid;
    grid-template-columns: repeat(4, 12rem);
    grid-template-rows: repeat(2, 6rem) repeat(2, auto) repeat(4, 6rem);
    grid-gap: 1.5rem 2rem; /* row gap is exactly 1 line-height, column gap slightly wider. */
    grid-template-areas:
      "logotype     logotype     top-nav       top-nav       "
      "logotype     logotype     top-nav       top-nav       "
      "hiring        hiring        hiring         .             "
      "jobs        jobs        jobs         .             "
      ".            .            .             .             "
      "logo         company-nav  resources-nav elsewhere-nav "
      ".            company-nav  resources-nav elsewhere-nav "
      ".            .            .             copyright     ";
  }
}
