* {
  box-sizing: border-box;
}
html,
body {
  max-width: 100%;
  overflow-x: clip;
}
body {
  margin: 0;
  background: #f5f1e8;
  color: #202020;
  font:
    16px/1.8 Arial,
    "PingFang SC",
    sans-serif;
}
a {
  color: inherit;
}
.mast {
  display: flex;
  align-items: center;
  gap: 18px;
  padding: 18px 4vw;
  border-bottom: 2px solid;
}
.brand {
  font-weight: 900;
  margin-right: auto;
  text-decoration: none;
}
.mast nav {
  display: flex;
  gap: 18px;
  flex-wrap: wrap;
}
.report {
  width: min(880px, 92vw);
  margin: 30px auto;
}
.route-label {
  display: inline-block;
  background: #1b75bc;
  color: #fff;
  padding: 5px 11px;
  font: bold 0.78rem monospace;
}
.report h1 {
  font-size: clamp(1.65rem, 3vw, 2.35rem);
  line-height: 1.22;
  margin: 0.5em 0;
}
.lead {
  font-size: 1.08rem;
  border-left: 8px solid #e94b35;
  padding-left: 18px;
}
.body {
  margin-top: 26px;
  border-top: 8px solid #1b75bc;
  padding-top: 12px;
}
.body h2 {
  font-size: 1.15rem;
}
.body p {
  margin: 0.9em 0;
}
.date {
  margin-top: 28px;
  padding-top: 12px;
  border-top: 2px solid;
  font: bold 0.84rem monospace;
  color: #a52e22;
}
.terminal {
  padding: 18px 4vw;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
  border-top: 2px solid;
}
.terminal h2,
.terminal p,
.boundary-footer h2,
.boundary-footer p {
  margin: 0.35em 0;
}
.boundary-footer {
  padding: 20px 4vw;
  border-top: 1px solid;
}
@media (max-width: 680px) {
  .mast {
    display: block;
    padding: 14px 16px;
  }
  .mast nav {
    margin-top: 10px;
    font-size: 0.9rem;
  }
  .report {
    margin: 18px auto;
  }
  .report h1 {
    font-size: 1.45rem;
  }
  .terminal {
    display: block;
  }
  .terminal section + section {
    margin-top: 16px;
  }
}
