.hero-paths {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 7px;
  margin: 16px 0;
}

.hero-paths a {
  min-width: 0;
  min-height: 72px;
  padding: 9px 7px 8px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  color: var(--navy);
  background: #f7fbff;
  border-top: 3px solid #78b4e2;
  text-decoration: none;
}

.hero-paths a:nth-child(2) {
  background: #f5d37e;
  border-top-color: #f5d37e;
}

.hero-paths a:nth-child(3) {
  border-top-color: #e0ae4f;
}

.hero-paths strong {
  font-size: 13px;
  line-height: 1.25;
  white-space: nowrap;
}

.hero-paths small {
  color: #345574;
  font-size: 10px;
  line-height: 1.25;
}

@media (max-width: 340px) {
  .hero-paths {
    gap: 5px;
  }

  .hero-paths strong {
    font-size: 12px;
  }
}

@media (min-width: 720px) {
  .hero-copy > .hero-paths {
    grid-column: 1;
  }
}

/* The work page uses the GUIDE palette and only confirmed public job examples. */
.work-page {
  background: #fff;
}

.work-hero h1 {
  max-width: 700px;
  font-size: clamp(31px, 8.5vw, 47px);
}

.work-hero .page-lead {
  max-width: 720px;
  font-size: 14px;
}

.work-hero-actions {
  margin-top: 18px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.work-hero-actions a {
  min-height: 49px;
  padding: 10px 11px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 4px;
  color: var(--navy);
  background: #fff;
  font-size: 12px;
  font-weight: 800;
  line-height: 1.35;
  text-decoration: none;
}

.work-hero-actions a:last-child {
  color: #fff;
  background: rgba(255, 255, 255, 0.08);
  border: 1px solid rgba(255, 255, 255, 0.7);
}

.work-section {
  padding-block: 34px;
  scroll-margin-top: 112px;
}

.work-section--paper {
  background: var(--paper);
}

.work-section-head {
  margin-bottom: 8px;
}

.work-section-head > span {
  display: block;
  margin-bottom: 4px;
  color: var(--blue);
  font-size: 10px;
  font-weight: 800;
}

.work-section-head h2,
.work-related h2 {
  margin: 0;
  color: var(--navy);
  font-size: clamp(22px, 6vw, 32px);
  line-height: 1.3;
}

.work-intro {
  max-width: 760px;
  margin: 0 0 17px;
  color: #34495e;
  font-size: 14px;
}

.work-intro a,
.work-source a {
  color: #075b9d;
  font-weight: 700;
}

.duty-diagram {
  padding: 12px;
  background: #eaf2f8;
  border: 1px solid #bcd2e4;
}

.duty-diagram__core {
  padding: 6px 10px 12px;
  color: #315f84;
  font-size: 11px;
  line-height: 1.45;
  text-align: center;
}

.duty-diagram__core strong {
  display: block;
  color: var(--navy);
  font-size: 15px;
}

.duty-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
}

.duty-grid article {
  min-width: 0;
  min-height: 94px;
  padding: 10px 10px 8px;
  background: #fff;
  border-left: 3px solid #2880c6;
}

.duty-grid span {
  color: var(--navy);
  font-size: 15px;
  font-weight: 800;
}

.duty-grid p {
  margin: 4px 0 0;
  color: #4f6173;
  font-size: 12px;
  line-height: 1.45;
}

.work-footnote,
.work-source {
  margin: 12px 0 0;
  color: #52677b;
  font-size: 11px;
  line-height: 1.55;
}

.work-newcomer {
  margin-top: 10px;
  padding: 10px 12px;
  background: #fff;
  border: 1px solid #bcd2e4;
}

.work-newcomer strong {
  color: var(--navy);
  font-size: 13px;
}

.work-newcomer p {
  margin: 3px 0 0;
  color: #52677b;
  font-size: 12px;
  line-height: 1.5;
}

.work-newcomer a {
  color: #075b9d;
  font-weight: 700;
}

.condition-list {
  display: grid;
  gap: 6px;
}

.condition-list article {
  min-width: 0;
  padding: 11px 12px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 0.93fr);
  align-items: center;
  gap: 10px;
  background: #fff;
  border-left: 3px solid #3384c6;
}

.condition-list b,
.condition-list strong {
  color: var(--navy);
  font-size: 13px;
  line-height: 1.4;
}

.condition-list p {
  margin: 3px 0 0;
  color: #586b7d;
  font-size: 11px;
  line-height: 1.45;
}

.condition-list strong {
  font-size: 14px;
}

.condition-list small {
  display: block;
  margin-top: 2px;
  color: #3c6b91;
  font-size: 10px;
  font-weight: 600;
}

.promotion-note {
  margin-top: 17px;
  padding: 13px 15px;
  background: #dfeef9;
  border-top: 3px solid var(--blue);
}

.promotion-note strong {
  color: var(--navy);
  font-size: 15px;
}

.promotion-note p {
  margin: 5px 0 0;
  font-size: 13px;
}

.work-route {
  margin: 4px 0 16px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 5px;
}

.work-route > span {
  min-width: 0;
  min-height: 62px;
  padding: 8px 5px;
  display: grid;
  align-content: center;
  color: var(--navy);
  background: #eaf2f8;
  border-top: 3px solid #74afd8;
  font-size: 11px;
  font-weight: 800;
  line-height: 1.3;
  text-align: center;
}

.work-route small {
  color: #476680;
  font-size: 10px;
  font-weight: 500;
}

.work-destination-grid {
  display: grid;
  gap: 8px;
}

.work-destination {
  min-height: 82px;
  padding: 12px 14px;
  display: grid;
  align-content: center;
  color: var(--navy);
  background: #eaf2f8;
  border: 1px solid #b7cedf;
  text-decoration: none;
}

.work-destination--primary {
  color: #fff;
  background: #176fbd;
  border-color: #176fbd;
}

.work-destination > span {
  font-size: 10px;
  font-weight: 800;
}

.work-destination strong {
  font-size: 15px;
}

.work-destination small {
  font-size: 10px;
}

.work-related {
  padding-block: 27px;
  background: #eaf2f8;
}

.work-related > .section-shell > div {
  margin-top: 11px;
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

.work-related a {
  min-height: 50px;
  padding: 8px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  color: var(--navy);
  background: #fff;
  font-size: 12px;
  font-weight: 800;
  text-decoration: none;
}

@media (max-width: 360px) {
  .header-location {
    display: none;
  }

  .condition-list article {
    grid-template-columns: minmax(0, 1fr);
    gap: 5px;
  }
}

@media (min-width: 720px) {
  .work-section {
    padding-block: 54px;
  }

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

  .duty-diagram {
    max-width: 840px;
    margin-inline: auto;
  }

  .duty-grid {
    gap: 12px;
  }
}
