.block-cta-bar {
  padding: 2rem;
  background: var(--color-primary);
  color: var(--color-white);
}

.block-cta-bar .columns {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}

.block-cta-bar .text {
  flex: 0 0 100%;
  padding-right: 4rem;
  margin-bottom: 2rem;
}

.block-cta-bar .text h3 { margin-bottom: 1rem; }
.block-cta-bar .text p {
  font-size: 1.25rem;
  color: var(--color-white);
}

.block-cta-bar .cta {
  flex: 0 0 100%;
}

.block-cta-bar .cta form {
  text-align: right;
  display: flex;
  align-items: stretch;
}

.block-cta-bar .cta input {
  flex: auto;
  width: 100px;
  margin-right: 0.25rem;
  border-radius: 0.3rem 0 0 0.3rem;
}

.block-cta-bar .cta .button {
  flex: 0 0 100px;
  border-radius: 0 0.3rem 0.3rem 0;
}

@media screen and (min-width: 700px) {

  .block-cta-bar {
    padding: 2rem 4rem;
  }

  .block-cta-bar .text {
    flex: 0 0 50%;
    margin: 0;
  }

  .block-cta-bar .cta {
    flex: 0 0 50%;
  }
  
  .block-cta-bar .cta input {
    flex: auto;
    width: 100px;
  }

}