.nwo-footer {
  padding: 0 !important;
  border: 0 !important;
  background: #111 !important;
  color: #eee9df !important;
  font-family: "Segoe UI", Arial, sans-serif !important;
}

.nwo-footer-inner {
  width: min(1180px, calc(100% - 42px));
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(230px, 1.05fr) minmax(280px, 1.5fr) minmax(150px, .65fr) minmax(170px, .7fr);
  gap: 42px;
  padding: 46px 0 30px;
}

.nwo-footer-brand img {
  width: 128px;
  height: 42px;
  object-fit: contain;
}

.nwo-footer-url {
  display: inline-block;
  margin-top: 19px;
  color: #eee9df !important;
  font: 900 17px/1 Impact, Haettenschweiler, "Arial Narrow Bold", sans-serif;
  letter-spacing: .035em;
  text-decoration: none;
  text-transform: uppercase;
}

.nwo-footer p {
  margin: 12px 0 0;
  color: #989b95;
  font-size: 11px;
  line-height: 1.45;
}

.nwo-footer nav,
.nwo-footer-group {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
}

.nwo-footer strong {
  margin-bottom: 5px;
  color: #c65024;
  font: 800 9px/1 "IBM Plex Mono", Consolas, monospace;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.nwo-footer nav a,
.nwo-footer-group a {
  color: #d7d3ca !important;
  font-size: 11px;
  line-height: 1.35;
  text-decoration: none;
}

.nwo-footer nav a:hover,
.nwo-footer nav a:focus-visible,
.nwo-footer-group a:hover,
.nwo-footer-group a:focus-visible,
.nwo-footer-url:hover,
.nwo-footer-url:focus-visible {
  color: #efab56 !important;
}

.nwo-footer-legal {
  grid-column: 1 / -1;
  margin-top: 5px !important;
  padding-top: 22px;
  border-top: 1px solid #373835;
}

.draftsman-break {
  position: relative;
  isolation: isolate;
  height: 176px;
  margin: 62px 0;
  overflow: hidden;
  border: 1px solid #b9b5ac;
  background-color: #efede6;
  color: #54544f;
}

.draftsman-break::before,
.draftsman-break::after {
  position: absolute;
  content: "";
  pointer-events: none;
}

.draftsman-break::before {
  inset: 16px;
  border: 1px solid rgba(17, 17, 17, .23);
  background:
    linear-gradient(90deg, transparent 49.8%, rgba(17,17,17,.2) 50%, transparent 50.2%),
    linear-gradient(0deg, transparent 49.8%, rgba(17,17,17,.16) 50%, transparent 50.2%);
}

.draftsman-break::after {
  width: 116px;
  height: 116px;
  right: 42px;
  top: 28px;
  border: 1px solid rgba(17, 17, 17, .45);
  border-radius: 50%;
  box-shadow:
    0 0 0 17px rgba(17,17,17,.035),
    0 0 0 34px rgba(17,17,17,.025);
}

.draftsman-break i {
  position: absolute;
  z-index: 2;
  left: 11%;
  right: 25%;
  top: 50%;
  height: 1px;
  display: block;
  background: #c65024;
  transform: rotate(-8deg);
}

.draftsman-break i::before,
.draftsman-break i::after {
  position: absolute;
  width: 9px;
  height: 9px;
  top: -5px;
  border: 1px solid #c65024;
  border-radius: 50%;
  background: #efede6;
  content: "";
}

.draftsman-break i::before { left: 0; }
.draftsman-break i::after { right: 0; }

.draftsman-break span,
.draftsman-break figcaption {
  position: absolute;
  z-index: 3;
  font: 800 8px/1 "IBM Plex Mono", Consolas, monospace;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.draftsman-break span {
  left: 28px;
  top: 27px;
  color: #c65024;
}

.draftsman-break figcaption {
  left: 28px;
  bottom: 26px;
}

.draftsman-break--span {
  background-image:
    repeating-linear-gradient(90deg, transparent 0 48px, rgba(17,17,17,.055) 49px),
    repeating-linear-gradient(0deg, transparent 0 23px, rgba(17,17,17,.045) 24px);
}

.draftsman-break--span i {
  left: 8%;
  right: 8%;
  top: 58%;
  transform: rotate(0);
  box-shadow: 0 -38px 0 rgba(17,17,17,.23), 0 38px 0 rgba(17,17,17,.16);
}

.draftsman-break--route {
  background-image:
    linear-gradient(125deg, transparent 0 21%, rgba(17,17,17,.18) 21.1% 21.3%, transparent 21.4%),
    linear-gradient(35deg, transparent 0 58%, rgba(17,17,17,.2) 58.1% 58.4%, transparent 58.5%),
    repeating-linear-gradient(90deg, transparent 0 63px, rgba(17,17,17,.045) 64px);
}

.draftsman-break--route i {
  left: 18%;
  right: 18%;
  top: 46%;
  transform: rotate(11deg);
}

.draftsman-break--load {
  background-image:
    repeating-linear-gradient(0deg, transparent 0 20px, rgba(17,17,17,.045) 21px),
    linear-gradient(90deg, transparent 0 20%, rgba(17,17,17,.15) 20.1% 20.25%, transparent 20.4% 68%, rgba(17,17,17,.15) 68.1% 68.25%, transparent 68.4%);
}

.draftsman-break--load i {
  left: 10%;
  right: 28%;
  transform: rotate(-4deg);
}

.nwo-byline {
  margin: 16px 0 0 !important;
  color: #d79c50 !important;
  font: 800 10px/1.35 "IBM Plex Mono", Consolas, monospace !important;
  letter-spacing: .08em !important;
}

.nwo-share-button {
  min-width: 102px;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin: 18px 0 0;
  padding: 10px 13px;
  border: 1px solid #d79c50;
  background: transparent;
  color: #eee9df;
  font: 800 10px/1.2 "IBM Plex Sans", "Segoe UI", Arial, sans-serif;
  cursor: pointer;
}

.nwo-share-button:hover,
.nwo-share-button:focus-visible {
  background: #d79c50;
  color: #111;
}

@media (max-width: 860px) {
  .nwo-footer-inner {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 560px) {
  .nwo-footer-inner {
    width: min(100% - 28px, 1180px);
    grid-template-columns: 1fr;
    gap: 28px;
  }

  .nwo-footer-legal {
    grid-column: 1;
  }

  .draftsman-break {
    height: 145px;
    margin: 46px 0;
  }

  .draftsman-break::after {
    width: 86px;
    height: 86px;
    right: 28px;
  }
}
