.btn {
  transition: background-color 0.25s ease-in-out, color 0.25s ease-in-out;
  display: inline-flex;
  color: #fff;
  text-align: center;
  align-items: center;
  justify-content: center;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  background-color: #474958;
  padding: 8px 25px;
  cursor: pointer;
  font-weight: 600;
  text-decoration: none;
  border: none; }
  .prefers-reduced-motion .btn {
    transition: none; }
  .btn {
    font-size: 14px; }
  @media (min-width: 575px) {
    .btn {
      font-size: calc(14px + 2 * (100vw - 575px) / 1025); } }
  @media (min-width: 1600px) {
    .btn {
      font-size: 16px; } }
  .btn:hover {
    color: #fff;
    background-color: #c7253f; }
  .btn:disabled, .btn.disabled {
    transition: none;
    opacity: 0.6;
    box-shadow: none;
    cursor: default;
    background-color: #fff;
    color: #000; }
    .prefers-reduced-motion .btn:disabled, .prefers-reduced-motion .btn.disabled {
      transition: none; }
  .btn:active, .btn.active {
    background-color: #9c1d31; }
  .btn--primary {
    transition: background-color 0.25s ease-in-out, color 0.25s ease-in-out;
    display: inline-flex;
    color: #fff;
    text-align: center;
    align-items: center;
    justify-content: center;
    -webkit-user-select: none;
       -moz-user-select: none;
            user-select: none;
    background-color: #474958;
    padding: 8px 25px;
    cursor: pointer;
    font-weight: 600;
    text-decoration: none;
    border: none;
    background-color: transparent;
    border: 1px solid #fff;
    border-bottom: 0;
    border-right: 0;
    color: #fff;
    position: relative;
    transition: border-color .25s, background-color .25s; }
    .prefers-reduced-motion .btn--primary {
      transition: none; }
    .btn--primary {
      font-size: 14px; }
    @media (min-width: 575px) {
      .btn--primary {
        font-size: calc(14px + 2 * (100vw - 575px) / 1025); } }
    @media (min-width: 1600px) {
      .btn--primary {
        font-size: 16px; } }
    .btn--primary:hover {
      color: #fff;
      background-color: #c7253f; }
    .btn--primary:disabled, .btn--primary.disabled {
      transition: none;
      opacity: 0.6;
      box-shadow: none;
      cursor: default;
      background-color: #fff;
      color: #000; }
      .prefers-reduced-motion .btn--primary:disabled, .prefers-reduced-motion .btn--primary.disabled {
        transition: none; }
    .btn--primary:active, .btn--primary.active {
      background-color: #9c1d31; }
    .btn--primary:before, .btn--primary:after {
      content: "";
      display: block;
      background-color: #fff;
      position: absolute;
      transition: right .25s, bottom .25s, background-color .25s; }
    .btn--primary:before {
      bottom: 0;
      height: 1px;
      left: 0;
      right: 15px; }
    .btn--primary:after {
      right: 0;
      top: 0;
      bottom: 50%;
      width: 1px; }
    .btn--primary:hover {
      color: #fff;
      background-color: #c7253f;
      border-color: #c7253f; }
      .btn--primary:hover:before {
        right: 0;
        background-color: #c7253f; }
      .btn--primary:hover:after {
        bottom: 0;
        background-color: #c7253f; }
    .btn--primary:active, .btn--primary.active {
      background-color: transparent; }
    .btn--primary:disabled, .btn--primary.disabled {
      background-color: transparent;
      color: #fff; }
  .btn--secondary {
    transition: background-color 0.25s ease-in-out, color 0.25s ease-in-out;
    display: inline-flex;
    color: #fff;
    text-align: center;
    align-items: center;
    justify-content: center;
    -webkit-user-select: none;
       -moz-user-select: none;
            user-select: none;
    background-color: #474958;
    padding: 8px 25px;
    cursor: pointer;
    font-weight: 600;
    text-decoration: none;
    border: none;
    background-color: #c7253f;
    color: #fff; }
    .prefers-reduced-motion .btn--secondary {
      transition: none; }
    .btn--secondary {
      font-size: 14px; }
    @media (min-width: 575px) {
      .btn--secondary {
        font-size: calc(14px + 2 * (100vw - 575px) / 1025); } }
    @media (min-width: 1600px) {
      .btn--secondary {
        font-size: 16px; } }
    .btn--secondary:hover {
      color: #fff;
      background-color: #c7253f; }
    .btn--secondary:disabled, .btn--secondary.disabled {
      transition: none;
      opacity: 0.6;
      box-shadow: none;
      cursor: default;
      background-color: #fff;
      color: #000; }
      .prefers-reduced-motion .btn--secondary:disabled, .prefers-reduced-motion .btn--secondary.disabled {
        transition: none; }
    .btn--secondary:active, .btn--secondary.active {
      background-color: #9c1d31; }
    .btn--secondary:hover {
      background-color: #9c1d31;
      color: #fff; }
    .btn--secondary:active, .btn--secondary.active {
      background-color: #86192b;
      color: #fff; }
    .btn--secondary:disabled, .btn--secondary.disabled {
      background-color: #cccccc;
      color: #000; }
  .btn--reset {
    transition: none;
    background-color: transparent;
    border: none;
    border-radius: 0;
    padding: 0; }
    .prefers-reduced-motion .btn--reset {
      transition: none; }
    .btn--reset:hover, .btn--reset:focus {
      background-color: transparent; }
  .btn.arrow {
    text-decoration: none;
    display: inline-flex;
    align-items: center; }
    .btn.arrow:after {
      content: "\f10d";
      font-family: "icons" !important;
      font-style: normal;
      font-weight: normal;
      font-variant: normal;
      text-transform: none;
      display: inline-block;
      vertical-align: middle;
      line-height: 1;
      -webkit-font-smoothing: antialiased;
      -moz-osx-font-smoothing: grayscale;
      margin-left: 5px; }
