.headline-block {
  width: 100%;
  max-width: 100%;
}

@media (min-width: 641px) {
  .headline-shell {
    position: relative;
    left: 50%;
    width: calc(100vw - 48px);
    max-width: none;
    transform: translateX(-50%);
  }

  .headline-block {
    width: 100%;
    font-size: min(5.7rem, 6vw);
  }

  .headline-block--wide {
    font-size: min(5.7rem, 4.3vw);
  }

  .headline-line-one {
    display: block;
    width: 100%;
    max-width: 100%;
    margin-inline: 0;
    text-align: center;
    white-space: nowrap;
  }
}

@media (max-width: 640px) {
  .headline-block {
    font-size: clamp(2rem, 8.75vw, 2.25rem);
  }

  .headline-block--wide {
    font-size: clamp(1.75rem, 8.5vw, 2.25rem);
  }

  .headline-block--wide .headline-line-two {
    text-wrap: balance;
  }
}
