div.needs-list {
  div.need {
    position: relative;
    list-style: none;
    margin-bottom: 10px;
    border-radius: 4px;

    div.welcomeCard {
      text-align: center;
    }
    form.respond {
      display: none;
    }
  }
}

div.panel {
  background-color: #fff;
  border-radius: 4px;
  box-shadow: 4px 4px 20px #DDD;
  textarea {
    width: 95%;
  }
  .panel-footer {
    background-color: #fff;
    a:hover {
      text-decoration: none;
    }
  }
  i {
    font-size: 130%;
    padding-right: 5px;
  }
}
.newNeed {
  p.red {
    color: red;
  }
  textarea {
    height: 80px;
  }
}

a.need-content {
  text-decoration: none;
  color: #333;
  display: block;
  min-height: 100px;
}

.needListing .panel {
  height: 160px;
  position: relative;
  .panel-footer {
    position: absolute;
    bottom: 0px;
    width: 100%;
  }
}

div.needs-list {
  div.need {
    position: relative;
    list-style: none;
    margin-bottom: 10px;
    border-radius: 4px;

    div.welcomeCard {
      text-align: center;
    }
    form.respond {
      display: none;
    }
  }
}

div.panel {
  background-color: #fff;
  border-radius: 4px;
  box-shadow: 4px 4px 20px #DDD;
  textarea {
    width: 95%;
  }
  .panel-footer {
    background-color: #fff;
    a:hover {
      text-decoration: none;
    }
  }
  i {
    font-size: 130%;
    padding-right: 5px;
  }
}
.newNeed {
  p.red {
    color: red;
  }
  textarea {
    height: 80px;
  }
}

a.need-content {
  text-decoration: none;
  color: #333;
  display: block;
  min-height: 100px;
}

.needListing .panel {
  height: 150px;
  position: relative;
  .panel-footer {
    position: absolute;
    bottom: 0px;
    width: 100%;
  }
  @media (max-width: 1197px) {
    height: 170px;
  }
  @media (max-width: 992px) {
    height: 120px;
  }
  @media (max-width: 600px) {
    height: 150px;
  }
}



Fix responsive display of need
Fix responsive display of need
