*, :before, :after {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html {
  font: 100%/1.5 "Roboto", Verdana, sans-serif;
  color: #3d464d;
  background-color: #fff;
  -webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
  width: 100%;
  overflow: hidden-x;
  text-align: center;
}

p, hr, form {
  margin-bottom: 24px;
  margin-bottom: 1.5rem;
}

hr {
  border: none;
  margin-top: -1px;
  height: 1px;
  background-color: #c0c8c9;
  background-image: -webkit-linear-gradient(bottom, #fff, #c0c8c9, #fff);
  background-image: linear-gradient(0deg, #fff, #c0c8c9, #fff);
}

a {
  color: inherit;
  text-decoration: underline;
  -webkit-animation: hue 60s infinite linear;
          animation: hue 60s infinite linear;
}

a:hover {
  color: #f35626;
}

header, main {
  padding: 24px;
  padding: 1.5rem;
  max-width: 608px;
  max-width: 38rem;
  margin: 0 auto;
}

button, select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  font: inherit;
  color: inherit;
  padding: 12px;
  padding: .75rem;
  margin: 6px;
  margin: .375rem;
  background-color: transparent;
  border-radius: 4px;
}

button:focus,
select:focus {
  outline: none;
}

button {
  border: 2px solid #f35626;
  line-height: 1.375;
  padding-left: 24px;
  padding-left: 1.5rem;
  padding-right: 24px;
  padding-right: 1.5rem;
  font-weight: 700;
  color: #f35626;
  cursor: pointer;
  -webkit-animation: hue 60s infinite linear;
          animation: hue 60s infinite linear;
}

select {
  border: 1px solid #c0c8c9;
  border-radius: 4px;
}

h1 {
  margin-bottom: 24px;
  margin-bottom: 1.5rem;
  font-size: 48px;
  font-size: 3rem;
  font-weight: 100;
  line-height: 1;
  letter-spacing: -.05em;
}

h2 {
  margin-bottom: 12px;
  margin-bottom: .75rem;
  font-weight: 200;
  font-size: 24px;
  font-size: 1.5rem;
  line-height: 1;
  color: #7b8993;
}

#index-target {
    color: #f35626;
    background-image: -webkit-linear-gradient(92deg,#f35626,#feab3a);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    -webkit-animation: hue 60s infinite linear;
            animation: hue 60s infinite linear;
}

@-webkit-keyframes hue {
  from {
    -webkit-filter: hue-rotate(0deg);
            filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feColorMatrix type="hueRotate" color-interpolation-filters="sRGB" values="0" /></filter></svg>#filter');
            filter: hue-rotate(0deg);
  }

  to {
    -webkit-filter: hue-rotate(-360deg);
            filter: hue-rotate(-360deg);
  }
}
@keyframes hue {
  from {
    -webkit-filter: hue-rotate(0deg);
            filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feColorMatrix type="hueRotate" color-interpolation-filters="sRGB" values="0" /></filter></svg>#filter');
            filter: hue-rotate(0deg);
  }

  to {
    -webkit-filter: hue-rotate(-360deg);
            filter: hue-rotate(-360deg);
  }
}

@media (min-width: 650px) {
  html {
    height: 100%;
  }

  html:before {
    content: '';
    display: inline-block;
    height: 100%;
    vertical-align: middle;
    margin-right: -0.25em;
  }

  body {
    display: inline-block;
    vertical-align: middle;
    max-width: 38rem;
  }

  h1 {
      font-size: 96px;
      font-size: 6rem;
      line-height: 1;
    }

  h2 {
      font-weight: 400;
      font-size: 24px;
      font-size: 1.5rem;
  }
}