/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */html {
  font-family:sans-serif;
  -ms-text-size-adjust:100%;
  -webkit-text-size-adjust:100%
 }
 body {
  margin:0
 }
 article,
 aside,
 details,
 figcaption,
 figure,
 footer,
 header,
 hgroup,
 main,
 menu,
 nav,
 section,
 summary {
  display:block
 }
 audio,
 canvas,
 progress,
 video {
  display:inline-block;
  vertical-align:baseline
 }
 audio:not([controls]) {
  display:none;
  height:0
 }
 [hidden],
 template {
  display:none
 }
 a {
  background-color:transparent
 }
 a:active,
 a:hover {
  outline:0
 }
 abbr[title] {
  border-bottom:1px dotted
 }
 b,
 strong {
  font-weight:700
 }
 dfn {
  font-style:italic
 }
 h1 {
  font-size:2em;
  margin:.67em 0
 }
 mark {
  background:#ff0;
  color:#000
 }
 small {
  font-size:80%
 }
 sub,
 sup {
  font-size:75%;
  line-height:0;
  position:relative;
  vertical-align:baseline
 }
 sup {
  top:-.5em
 }
 sub {
  bottom:-.25em
 }
 img {
  border:0
 }
 svg:not(:root) {
  overflow:hidden
 }
 figure {
  margin:1em 40px
 }
 hr {
  box-sizing:content-box;
  height:0
 }
 pre {
  overflow:auto
 }
 code,
 kbd,
 pre,
 samp {
  font-family:monospace,monospace;
  font-size:1em
 }
 button,
 input,
 optgroup,
 select,
 textarea {
  color:inherit;
  font:inherit;
  margin:0
 }
 button {
  overflow:visible
 }
 button,
 select {
  text-transform:none
 }
 button,
 html input[type=button],
 input[type=reset],
 input[type=submit] {
  -webkit-appearance:button;
  cursor:pointer
 }
 button[disabled],
 html input[disabled] {
  cursor:default
 }
 button::-moz-focus-inner,
 input::-moz-focus-inner {
  border:0;
  padding:0
 }
 input {
  line-height:normal
 }
 input[type=checkbox],
 input[type=radio] {
  box-sizing:border-box;
  padding:0
 }
 input[type=number]::-webkit-inner-spin-button,
 input[type=number]::-webkit-outer-spin-button {
  height:auto
 }
 input[type=search] {
  -webkit-appearance:textfield;
  box-sizing:content-box
 }
 input[type=search]::-webkit-search-cancel-button,
 input[type=search]::-webkit-search-decoration {
  -webkit-appearance:none
 }
 fieldset {
  border:1px solid silver;
  margin:0 2px;
  padding:.35em .625em .75em
 }
 legend {
  border:0;
  padding:0
 }
 textarea {
  overflow:auto
 }
 optgroup {
  font-weight:700
 }
 table {
  border-collapse:collapse;
  border-spacing:0
 }
 td,
 th {
  padding:0
 }
 .darkgrey {
  color:#343f44
 }
 .midgrey {
  color:#738a94
 }
 .lightgrey {
  color:#e5eff5
 }
 .blue {
  color:#3eb0ef
 }
 .red {
  color:#f05230
 }
 .orange {
  color:#fecd35
 }
 .green {
  color:#a4d037
 }
 .darkgrey-hover:hover {
  color:#343f44
 }
 .midgrey-hover:hover {
  color:#738a94
 }
 .lightgrey-hover:hover {
  color:#e5eff5
 }
 .blue-hover:hover {
  color:#3eb0ef
 }
 .red-hover:hover {
  color:#f05230
 }
 .orange-hover:hover {
  color:#fecd35
 }
 .green-hover:hover {
  color:#a4d037
 }
 *,
 :after,
 :before {
  box-sizing:border-box
 }
 html {
  overflow:hidden;
  font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;
  font-size:62.5%;
  line-height:1.65;
  letter-spacing:.2px;
  -webkit-tap-highlight-color:rgba(0,0,0,0)
 }
 body,
 html {
  width:100%;
  height:100%
 }
 body {
  overflow:auto;
  overflow-x:hidden;
  color:#343f44;
  font-size:1.4rem
 }
 .gh-view {
  -ms-flex-positive:1;
  flex-grow:1;
  display:-ms-flexbox;
  display:flex;
  -ms-flex-direction:column;
  flex-direction:column
 }
 h1,
 h2 {
  margin:0 0 .3em;
  color:#343f44;
  line-height:1.15em;
  text-rendering:optimizeLegibility;
  text-indent:-1px;
  font-size:2.9rem
 }
 @media (max-width:500px) {
  h1 {
   font-size:2.4rem
  }
 }
 .gh-input {
  display:block;
  padding:10px 12px;
  width:100%;
  height:40px;
  border:1px solid #d6e3eb;
  border-radius:4px;
  color:#4b5b62;
  font-size:1.6rem;
  line-height:1em;
  font-weight:300;
  -webkit-user-select:text;
  -moz-user-select:text;
  -ms-user-select:text;
  user-select:text;
  transition:border-color .15s linear;
  -webkit-appearance:none
 }
 .gh-input:focus {
  outline:0;
  border-color:#b4cbda
 }
 .gh-btn {
  display:inline-block;
  outline:none;
  border:1px solid #d6e3eb;
  color:#829aa8;
  text-shadow:0 1px 0 #fff;
  text-decoration:none!important;
  -webkit-user-select:none;
  -moz-user-select:none;
  -ms-user-select:none;
  user-select:none;
  fill:#829aa8;
  border-radius:5px;
  transition:all .2s ease;
  -webkit-font-smoothing:subpixel-antialiased
 }
 .gh-btn span {
  display:block;
  padding:0 12px;
  height:33px;
  font-size:1.3rem;
  line-height:33px;
  font-weight:400;
  text-align:center;
  letter-spacing:.2px;
  border-radius:4px
 }
 .gh-btn:hover {
  border-color:#b4cbda
 }
 .gh-btn-hover-blue:hover {
  border-color:#3eb0ef;
  color:#3eb0ef
 }
 .gh-btn-blue {
  padding:1px;
  border:0;
  color:#fff;
  text-shadow:0 -1px 0 rgba(0,0,0,.1);
  fill:#fff;
  background:linear-gradient(#3da1d6,#2288bf);
  box-shadow:0 1px 0 rgba(0,0,0,.12);
  transition:none!important
 }
 .gh-btn-blue span {
  background:linear-gradient(#4ab6f0,#2fa5e4 60%,#2fa5e4 90%,#38a9e5);
  box-shadow:inset 0 1px 0 hsla(0,0%,100%,.1)
 }
 .gh-btn-blue:active,
 .gh-btn-blue:focus {
  background:#1e78a9
 }
 .gh-btn-blue:active span,
 .gh-btn-blue:focus span {
  background:#29a0e0;
  box-shadow:none
 }
 .gh-btn-block {
  display:block;
  width:100%
 }
 .gh-input-icon {
  position:relative;
  display:block
 }
 .gh-input-icon svg {
  position:absolute;
  top:50%;
  left:10px;
  z-index:1;
  height:14px;
  width:auto;
  fill:color(var(--midgrey) l(15%));
  transform:translateY(-7px)
 }
 .gh-input-icon input {
  padding-left:35px
 }
 .gh-app {
  display:-ms-flexbox;
  display:flex;
  -ms-flex-direction:column;
  flex-direction:column;
  overflow:hidden;
  height:100%
 }
 .gh-viewport {
  overflow:hidden;
  max-height:100%
 }
 .gh-main,
 .gh-viewport {
  -ms-flex-positive:1;
  flex-grow:1;
  display:-ms-flexbox;
  display:flex
 }
 .gh-main {
  position:relative;
  background:#fff;
  overflow-y:auto
 }
 .gh-flow {
  -ms-flex-positive:1;
  flex-grow:1;
  -ms-flex-direction:column;
  flex-direction:column;
  overflow-y:auto;
  min-height:100%
 }
 .gh-flow,
 .gh-flow-head {
  display:-ms-flexbox;
  display:flex
 }
 .gh-flow-head {
  -ms-flex-negative:0;
  flex-shrink:0;
  -ms-flex-pack:justify;
  justify-content:space-between;
  padding-top:4vh;
  padding-bottom:20px
 }
 .gh-flow-content-wrap {
  -ms-flex-positive:1;
  flex-grow:1;
  -ms-flex-negative:0;
  flex-shrink:0;
  -ms-flex-pack:center;
  justify-content:center;
  margin:0 5%;
  padding-bottom:8vh
 }
 .gh-flow-back,
 .gh-flow-content-wrap {
  display:-ms-flexbox;
  display:flex;
  -ms-flex-align:center;
  align-items:center
 }
 .gh-flow-back {
  position:absolute;
  top:0;
  left:0;
  margin:0 0 0 3%;
  padding:2px 9px 2px 5px;
  border:1px solid transparent;
  border-radius:4px;
  color:#7d878a;
  font-weight:100;
  transition:all .3s ease
 }
 .gh-flow-back svg {
  margin-right:4px;
  height:12px;
  line-height:14px
 }
 .gh-flow-back svg path {
  stroke:#7d878a;
  stroke-width:1.2px
 }
 .gh-flow-back:hover {
  border:1px solid #dae1e3
 }
 .gh-flow-nav {
  position:relative;
  -ms-flex:1;
  flex:1
 }
 .gh-flow-content {
  display:-ms-flexbox;
  display:flex;
  -ms-flex-direction:column;
  flex-direction:column;
  max-width:700px;
  width:100%;
  color:#738a94;
  text-align:center;
  font-size:1.9rem;
  line-height:1.5em;
  font-weight:100
 }
 .gh-flow-content .gh-input-icon input {
  padding-left:35px
 }
 @media (max-width:500px) {
  .gh-flow-content {
   font-size:4vw
  }
 }
 .gh-flow-content header {
  margin:0 auto;
  max-width:520px
 }
 .gh-flow-content h1 {
  font-size:4.2rem;
  font-weight:100
 }
 @media (max-width:600px) {
  .gh-flow-content h1 {
   font-size:7vw
  }
 }
 .gh-flow-content .gh-btn {
  display:block;
  margin:20px auto 0;
  max-width:400px
 }
 .gh-flow-content .form-group {
  margin-bottom:2.5rem
 }
 .gh-flow-content input {
  padding:10px;
  border:1px solid #dae1e3;
  font-size:1.6rem;
  line-height:1.4em;
  font-weight:100
 }
 .gh-signin {
  position:relative;
  margin:30px auto;
  padding:40px;
  max-width:400px;
  width:100%;
  border:1px solid #dae1e3;
  background:#f8fbfd;
  border-radius:5px;
  text-align:left
 }
 .gh-signin .form-group {
  margin-bottom:1.5rem
 }
 .gh-signin .gh-btn {
  margin:0
 }
 .error-content {
  flex-grow:1;
  justify-content:center;
  user-select:text
 }
 .error-content,
 .error-details {
  display:flex;
  align-items:center
 }
 .error-details {
  margin-bottom:4rem
 }
 .error-ghost {
  margin:15px;
  height:115px
 }
 @media (max-width:630px) {
  .error-ghost {
   display:none
  }
 }
 .error-code {
  margin:0;
  color:#979797;
  font-size:7.8rem;
  line-height:.9em
 }
 .error-description {
  margin:0;
  padding:0;
  border:none;
  color:#979797;
  font-size:1.9rem;
  font-weight:300
 }
 .error-message {
  display:flex;
  flex-direction:column;
  margin:15px
 }
 .error-message a {
  margin-top:5px;
  font-size:1.4rem;
  line-height:1
 }
 .error-link {
  background-color:transparent;
  color:#5ba4e5;
  transition:background .3s,color .3s;
  text-decoration:none
 }
 .error-stack {
  margin:1rem auto;
  padding:2rem;
  max-width:800px;
  background-color:hsla(0,0%,100%,.3)
 }
 .error-stack-list {
  margin:0;
  padding:0;
  list-style-type:none
 }
 .error-stack-list li {
  display:block
 }
 .error-stack-list li:before {
  content:"\21AA";
  display:inline-block;
  margin-right:.5rem;
  color:#bbb;
  font-size:1.2rem
 }
 .error-stack-function {
  font-weight:700
 }
