#main {
  text-align: left;
  justify-items: auto;
}

.sell {
  padding: 3.75rem 11.75rem 18.75rem 11.75rem;
}

.sell h3 {
  margin-bottom: 1rem;
  font-size: 1.625rem;
}

form {
  display: grid;
  grid-template-areas: 'name name price quantity'
                       'description description description description'
                       '. . . submit';
  grid-gap: 1.75rem;
  font-size: 1.25rem;
}

input {
  min-width: 100%;
  box-sizing: border-box;
}

select {
  background-color: hsla(0, 0%, 100%, 1);
  font-size: 1.225rem;
}

textarea {
  min-height: 12rem;
  font-size: 1.25rem;
}

#name {
  grid-area: name;
}

#price {
  grid-area: price;
}

#quantity {
  grid-area: quantity;
}

#description {
  grid-area: description;
}

#submit {
  grid-area: submit;
  justify-self: end;
}

@media only screen and (max-width: 1100px) {
  .sell {
    padding-left: 10%;
    padding-right: 10%;
  }
}

@media only screen and (max-width: 970px) {
  form {
    grid-template-areas: 'name name'
                         'price quantity'
                         'description description'
                         '. submit';
  }
}

@media only screen and (max-width: 660px) {
  form {
    grid-template-areas: 'name'
                         'price'
                         'quantity'
                         'description'
                         'submit';
  }

  #submit {
    justify-self: center;
  }
}