/*!
 * Star Rating
 * @version: 3.1.4
 * @author: Paul Ryley (http://geminilabs.io)
 * @url: https://github.com/pryley/star-rating.js
 * @license: MIT
 */
.gl-star-rating[data-star-rating] {
  position: relative;
  display: block;
}

.gl-star-rating[data-star-rating] > select {
  overflow: hidden;
  visibility: visible !important;
  position: absolute !important;
  top: 0;
  width: 1px;
  height: 1px;
  clip: rect(1px, 1px, 1px, 1px);
  -webkit-clip-path: circle(1px at 0 0);
          clip-path: circle(1px at 0 0);
  white-space: nowrap;
}

.gl-star-rating[data-star-rating] > select::before,
.gl-star-rating[data-star-rating] > select::after {
  display: none !important;
}

.gl-star-rating-ltr[data-star-rating] > select {
  left: 0;
}

.gl-star-rating-rtl[data-star-rating] > select {
  right: 0;
}

.gl-star-rating[data-star-rating] > select:focus + .gl-star-rating-stars::before {
  opacity: 0.5;
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  content: '';
  outline: dotted 1px currentColor;
  pointer-events: none;
}

.gl-star-rating-stars {
  position: relative;
  display: inline-block;
  height: 34px;
  vertical-align: middle;
  cursor: pointer;
}

.gl-star-rating-stars > span {
  display: inline-block;
  width: 24px;
  height: 24px;
  background-size: 24px;
  background-repeat: no-repeat;
  background-image: url(img/star-empty.svg);
  margin: 0 4px 0 0;
}

.gl-star-rating-stars > span:last-of-type {
  margin-right: 0;
}

.gl-star-rating-rtl[data-star-rating] .gl-star-rating-stars > span {
  margin: 0 0 0 4px;
}

.gl-star-rating-rtl[data-star-rating] .gl-star-rating-stars > span:last-of-type {
  margin-left: 0;
}

.gl-star-rating-stars.s10 > span:nth-child(1),
.gl-star-rating-stars.s20 > span:nth-child(-1n+2),
.gl-star-rating-stars.s30 > span:nth-child(-1n+3),
.gl-star-rating-stars.s40 > span:nth-child(-1n+4),
.gl-star-rating-stars.s50 > span:nth-child(-1n+5),
.gl-star-rating-stars.s60 > span:nth-child(-1n+6),
.gl-star-rating-stars.s70 > span:nth-child(-1n+7),
.gl-star-rating-stars.s80 > span:nth-child(-1n+8),
.gl-star-rating-stars.s90 > span:nth-child(-1n+9),
.gl-star-rating-stars.s100 > span {
  background-image: url(img/star-full.svg);
}

.gl-star-rating-text {
  display: inline-block;
  position: relative;
  height: 34px;
  line-height: 34px;
  font-size: 14px;
  font-weight: 400;
  color: #fff;
  background-color: #212121;
  white-space: nowrap;
  vertical-align: middle;
  padding: 0 12px 0 6px;
  margin: 0 0 0 12px;
}

.gl-star-rating-text::before {
  position: absolute;
  top: 0;
  left: -12px;
  width: 0;
  height: 0;
  content: "";
  border-style: solid;
  border-width: 17px 12px 17px 0;
  border-color: transparent #212121 transparent transparent;
}

.gl-star-rating-rtl[data-star-rating] .gl-star-rating-text {
  padding: 0 6px 0 12px;
  margin: 0 12px 0 0;
}

.gl-star-rating-rtl[data-star-rating] .gl-star-rating-text::before {
  left: unset;
  right: -12px;
  border-width: 17px 0 17px 12px;
  border-color: transparent transparent transparent #212121;
}

a {
  color: #e91e63;
  text-decoration: none;
}

a:hover {
  text-decoration: underline;
}

blockquote {
  border-left: 4px solid #eeeeee;
}

blockquote p {
  font-size: 0.88887rem;
}

blockquote p:not(:last-child) {
  margin-bottom: 0.75rem;
}

blockquote pre {
  margin-bottom: 0;
}

code {
  font-size: 1rem;
  border-radius: 3px;
  background-color: #eeeeee;
  text-shadow: 1px 1px 0 rgba(255, 255, 255, 0.75);
}

pre {
  line-height: 1.5rem;
  font-weight: 200;
  background-color: #212121;
}

pre code {
  font-size: 0.88887rem;
  color: #fffde7;
  text-shadow: 1px 1px 0 rgba(33, 33, 33, 0.25);
  background: none;
}

.page-header {
  padding: 3rem 1.5rem;
  background-color: #fdd835;
  text-align: center;
}

@media screen and (min-width: 42em) {
  .page-header {
    padding: 3rem 4.5rem;
  }
}

@media screen and (min-width: 50em) {
  .page-header {
    padding: 6rem 4.5rem;
  }
}

.page-header .button {
  font-size: 1rem;
  padding: 0.75rem 1.5rem;
  margin: 1.125rem 0 0;
}

@media screen and (min-width: 35em) {
  .page-header .button {
    margin: 1.125rem 0.375rem 0;
  }
}

.page-footer {
  max-width: 52em;
  margin: 0 auto;
  padding: 1.5rem;
}

.page-footer p:first-child {
  position: relative;
  top: 1px;
  font-weight: bold;
  border-top: 1px solid #eeeeee;
  margin: -2px 0 0;
  padding-top: 1.5rem;
}

.main-content {
  max-width: 52em;
  margin: 0 auto;
  padding: 2.25rem 1.5rem 0;
}

.section ul {
  line-height: 1.875rem;
}

.section:not(:last-child) {
  margin-bottom: 3rem;
}

.project-name {
  color: #212121;
  max-width: 52rem;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 3rem;
}

@media screen and (min-width: 42em) {
  .project-name {
    font-size: 2.36856rem;
    line-height: 3rem;
  }
}

@media screen and (min-width: 50em) {
  .project-name {
    font-size: 3.15731rem;
  }
}

.project-tagline {
  max-width: 52rem;
  margin-left: auto;
  margin-right: auto;
  color: #212121;
  font-weight: 400;
  font-size: 1rem;
  margin-bottom: 1.5rem;
}

@media screen and (min-width: 42em) {
  .project-tagline {
    font-size: 1.333rem;
    line-height: 3rem;
    line-height: 2.25rem;
  }
}

.badge {
  display: inline-block;
  line-height: 2.25rem;
  margin-bottom: 1.5rem;
}

.badge img {
  height: 1.5rem;
}

.button {
  font-family: "Open Sans", sans-serif;
  font-size: 1rem;
  line-height: 1.375rem;
  padding: 0.375rem 1.125rem;
  margin-bottom: 1.5rem;
  position: relative;
  display: inline-block;
  text-align: center;
  text-decoration: none;
  outline: none;
  cursor: pointer;
  border: 1px solid transparent;
  border-radius: 3px;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  vertical-align: top;
  color: #fff;
  background-color: #e91e63;
  border-color: #e91e63;
  -webkit-transition: color 0.125s ease-in-out, background-color 0.125s ease-in-out, border-color 0.125s ease-in-out;
  transition: color 0.125s ease-in-out, background-color 0.125s ease-in-out, border-color 0.125s ease-in-out;
  text-shadow: 0 -1px 0 rgba(173, 20, 87, 0.5);
}

.button:hover {
  outline: none;
  text-decoration: none;
}

.button[disabled], .button.disabled {
  opacity: 0.7;
  cursor: default;
}

.button-group {
  display: inline-block;
  vertical-align: bottom;
}

.button-group .button {
  float: left;
  z-index: 1;
}

.button-group .button:hover, .button-group .button:focus {
  z-index: 2;
}

.button-group .button:active, .button-group .button.active {
  z-index: 3;
}

.button-group .button:first-child {
  border-radius: 3px 0 0 3px;
}

.button-group .button:last-child {
  border-radius: 0 3px 3px 0;
}

.button-group .button:not(:first-child):not(:last-child) {
  border-radius: 0;
}

.button-group .button:not(:first-child) {
  margin-left: -1px;
}

.button:hover {
  background-color: #c1134e;
  border-color: #c1134e;
}

.button:active, .button.active {
  background-color: #930e3b;
  border-color: #930e3b;
}

.button[disabled], .button.disabled {
  color: #fff;
  background-color: #e91e63;
  border-color: #e91e63;
}

.button:not([disabled]):not(.disabled):active {
  -webkit-transform: translate3d(0, 1px, 0);
          transform: translate3d(0, 1px, 0);
}

.button.secondary {
  color: #fff;
  background-color: #424242;
  border-color: #424242;
  text-shadow: 0 -1px 0 rgba(33, 33, 33, 0.5);
}

.button.secondary:hover {
  background-color: #292929;
  border-color: #292929;
}

.button.secondary:active, .button.secondary.active {
  background-color: #0f0f0f;
  border-color: #0f0f0f;
}

.button.secondary[disabled], .button.secondary.disabled {
  color: #fff;
  background-color: #424242;
  border-color: #424242;
}

.button-group {
  display: block;
  margin-bottom: 1.5rem;
}

.button-group:after {
  content: '';
  display: table;
  clear: both;
}

:not(.button-group) > .button {
  width: 100%;
}

@media screen and (min-width: 35em) {
  :not(.button-group) > .button {
    width: auto;
  }
}

form .button {
  display: block;
  margin: 0;
}

label {
  font-size: 1rem;
  font-weight: 600;
}

.form-field {
  margin-bottom: 1.5rem;
  border-radius: 3px;
  background-color: #fafafa;
  box-shadow: inset 0 0 8px #eeeeee;
  padding: 0.75rem;
}

@media screen and (min-width: 42em) {
  .form-field {
    padding: 1.125rem;
  }
}

select {
  background-color: #fff;
  border-color: #e0e0e0;
  height: 34px;
  margin: 0;
}

.button-group .button:not(:first-child) {
  margin-left: 0;
}

.gl-star-rating-stars > span {
  width: 20px;
  height: 32px;
  background-size: 20px;
  background-position: center;
}

@media screen and (min-width: 375px) {
  .gl-star-rating-stars > span {
    width: 24px;
    background-size: 24px;
  }
}

@media screen and (min-width: 414px) {
  .gl-star-rating-stars > span {
    width: 28px;
    background-size: 28px;
  }
}

@media screen and (min-width: 35em) {
  .gl-star-rating-stars > span {
    width: 32px;
    height: 32px;
    background-size: 32px;
  }
}
