.formulario-container {
  width: 100%;
  max-width: 940px;
  margin: 0 auto;
}

.formulario-container * {
  box-sizing: border-box;
}

.flex-outer,
.flex-inner {
  list-style-type: none;
  padding: 0;
}

.flex-outer {
  max-width: 700px;
  margin: 0 auto;
}

.flex-outer li,
.flex-inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}

.flex-inner {
  padding: 0 8px;
  justify-content: space-between;  
}

.flex-outer > li:not(:last-child) {
  margin-bottom: 10px;
}

.flex-outer li label,
.flex-outer li p {
  padding: 8px;
}

.flex-outer > li > label,
.flex-outer li p {
  flex: 1 0 120px;
  max-width: 120px;
  font-size: 1vw;
}

.flex-outer > li > label + *,
.flex-inner {
  flex: 1 0 220px;
}

.flex-outer li p {
  margin: 0;
}

.flex-outer li input:not([type='checkbox']),
.flex-outer li textarea {
  padding: 15px;
}

.flex-outer li button {
    margin-left: auto;
    margin-top: 20px;
    padding: 8px 16px;
    border: none;
    background: #333;
    color: #f2f2f2;
    text-transform: uppercase;
    letter-spacing: .09em;
    border-radius: 2px;
    font-size: 1vw;
}

.flex-inner li {
  width: 100px;
}

.form-control {font-size: 1.5rem !important;}


@media screen and (max-width: 1200px) {
	.flex-outer li button {font-size: 1.25vw;}
	.flex-outer > li > label, .flex-outer li p {font-size: 1.25vw;}
}
@media screen and (max-width: 1024px) {
	.flex-outer li button {font-size: 1.5vw;}
	.flex-outer > li > label, .flex-outer li p {font-size: 1.5vw;}
}
@media screen and (max-width: 768px) {
	.flex-outer li button {font-size: 2vw;}
	.flex-outer > li > label, .flex-outer li p {font-size: 2vw;}
}
@media screen and (max-width: 600px) {
	.flex-outer li button {font-size: 2.5vw;}
	.flex-outer > li > label, .flex-outer li p {font-size: 2.5vw;}
}
@media screen and (max-width: 480px) {
	.flex-outer li button {font-size: 4vw;}
	.flex-outer > li > label, .flex-outer li p {font-size: 4vw;}
}
@media screen and (max-width: 360px) {
	.flex-outer li button {font-size: 5vw;}
	.flex-outer > li > label, .flex-outer li p {font-size: 5vw;}
}