.width-tool {
  margin: 2rem 0 3rem;
  border: 4px solid #111;
  background: #fff5e9;
  box-shadow: 8px 8px 0 #111;
}

.width-tool__intro {
  padding: 1.5rem;
  border-bottom: 4px solid #111;
  background: #65d9ff;
}

.width-tool__eyebrow {
  margin: 0 0 .5rem;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.width-tool__intro h2 {
  margin: 0 0 .75rem;
  font-size: clamp(1.8rem, 5vw, 3rem);
  line-height: .98;
}
.width-tool__form {
  display: grid;
  gap: 1rem;
  padding: 1.5rem;
}

.width-tool__field {
  display: grid;
  gap: .45rem;
}

.width-tool__field label,
.width-tool__field legend {
  font-weight: 900;
}

.width-tool__field select {
  width: 100%;
  min-height: 3rem;
  border: 3px solid #111;
  border-radius: 0;
  background: #fff;
  padding: .6rem .75rem;
  font: inherit;
}

.width-tool__field small {
  line-height: 1.4;
}
.width-tool__button,
.width-tool__result a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 3rem;
  border: 3px solid #111;
  background: #f58220;
  color: #111;
  padding: .7rem 1rem;
  font: inherit;
  font-weight: 900;
  text-decoration: none;
  cursor: pointer;
}

.width-tool__button:hover,
.width-tool__button:focus-visible,
.width-tool__result a:hover,
.width-tool__result a:focus-visible {
  transform: translate(-2px, -2px);
  box-shadow: 4px 4px 0 #111;
}

.width-tool__result {
  margin: 0 1.5rem 1.5rem;
  border: 4px solid #111;
  background: #fff;
  padding: 1.25rem;
}
.width-tool__result[hidden] {
  display: none;
}

.width-tool__result-label {
  margin: 0 0 .35rem;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.width-tool__result h3 {
  margin: 0 0 .75rem;
  font-size: clamp(1.6rem, 4vw, 2.5rem);
}

.width-tool__reasons {
  padding-left: 1.2rem;
  margin: 1rem 0 1.25rem;
}

.width-tool__note {
  margin: 0;
  padding: 0 1.5rem 1.5rem;
  font-size: .92rem;
  line-height: 1.5;
}

@media (min-width: 760px) {
  .width-tool__form { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .width-tool__button { grid-column: 1 / -1; }
}
