static/scss/default.scss
@import "globals";

* {
  padding: 0;
  margin: 0;
}

ul {
  list-style: none;
}

html {
  height: 100%;
}

body {
  background-color: get-color(dark-blue);
  background-image: url(/static/images/brackets-bg.png);
}

h2 {
  @include heading();
}

#content {
  z-index: $BASE-INDEX + 1;
  position: relative;
  min-height: calc(100vh - 280px);
}

.logo {
  position: relative;
  z-index: $BASE-INDEX + 1;
  display: block;
  margin: 40px 0 20px;

  h1 {
    @include logo();
  }
}

footer {
  background: get-color(dark-gray);
  margin: 100px 0 0;
  padding: 20px;
  text-align: center;
  p {
    @include body-copy();
    line-height: 1;
    color: #fff;
  }
  a {
    color: $standard;
  }
}

// Banner message
.message {
  font: 20px/1 'Roboto', sans-serif;
  padding: 15px 20px;
  margin-bottom: 20px;
  &.error {
    color: #a94442 !important;
    background: #f2dede;
  }

  &.success {
    color: #3c763d !important;
    background: #dff0d8;

    a {
      color: #3c763d;
    }
  }

  &.hidden {
    display: none;
  }

}

.button {
  @include button;

  &--secondary {
    background-color: get-color(gray);
  }

  &--small {
    @include button--small;
  }

  &--critical {
    @include button--critical;
  }
}

.small-button {
  @include button;
  @include button--small;
}

.inverse-small-button {
  @include button;
  @include button--small;
  @include button--inverse;
}

.input {
  @include textbox;

  &--search {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
  }
}

@media screen and (max-width: 1280px), screen and (max-height: 768px) {
  body {
    font-size: 18px;
  }
}

//
// MOBILE STYLES
//

@media screen and (max-width: $MOBILE-WIDTH) {
  footer p {
    font-size: 18px;
  }

  .button {
    padding: 10px 20px;
    font-size: 24px;
  }
}
