*, *:before, *:after {
  box-sizing: border-box; }

body {
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  line-height: 1.5;
  padding: 50px 0 0; }

a {
  box-shadow: 0 0 0 transparent;
  -webkit-transition: all 200ms;
          transition: all 200ms; }

p {
  margin: 0 0 20px; }

.container {
  margin: 0 auto;
  width: 50%; }

input[type='text'], input[type='password'], input[type='number'], input[type='email'], select, textarea, button, input[type='submit'] {
  border: 1px solid transparent;
  border-radius: 3px;
  box-shadow: 0 0 0 transparent;
  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
  line-height: 1.4;
  margin: 0;
  padding: 6px 12px;
  -webkit-transition: all 200ms;
          transition: all 200ms; }

input[type='text'], input[type='password'], input[type='number'], input[type='email'], select, textarea {
  background-color: #fff;
  border-color: #ccc;
  color: #555;
  display: block;
  font-size: 16px;
  height: 40px;
  width: 100%; }

textarea {
  height: auto;
  resize: none; }

input[type='checkbox'], input[type='radio'] {
  margin: 0 5px 0 0; }

button, input[type='submit'] {
  cursor: pointer;
  display: inline-block;
  font-size: 14px;
  text-align: center;
  white-space: nowrap;
  vertical-align: middle; }

.button--default {
  background-color: #fff;
  border-color: #ccc;
  color: #333; }

.button--primary {
  background-color: #428bca;
  border-color: #357ebd;
  color: #fff; }

.focus--keyboard, a:focus, button:focus, input:focus, select:focus, textarea:focus {
  border-color: #ffaa55;
  box-shadow: 0 0 6px 2px #ffaa55;
  outline: none; }

.focus--mouse, a.focus--mouse:focus, button.focus--mouse:focus, input.focus--mouse:focus, select.focus--mouse:focus, textarea.focus--mouse:focus {
  border-color: #5aa8bd;
  box-shadow: 0 0 6px 2px #5aa8bd;
  outline: none; }

