/* ===============================*/
/* =======    LinkStyle   ========*/
/* ===============================*/

.link {
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-align: center;
      align-items: center;
  color: #00008f;
  fill: #00008f;
  text-decoration: none;
  text-transform: uppercase;
  font-weight: bold;
  transition: all 0.25s ease;
  font-size: 12px;
  line-height: 14px;
  letter-spacing: 0.08em;
}

.link.large {
  font-size: 16px;
  line-height: 18px;
}

.link.red {
  color: #f07662;
  fill: #f07662;
}

.link.white {
  color: #fff;
  fill: #fff;
}

.link:hover, .link:active {
  color: #00005b;
  fill: #00005b;
}

.link.red:hover, .link.red:active {
  color: #ec4d33;
  fill: #ec4d33;
}

.link.white:hover, .link.white:active {
  color: #f5f5f5;
  fill: #f5f5f5;
}

.link .icon {
  height: 11px;
  width: auto;
  padding-left: 0;
  padding-right: 0;
}

.link .icon.right {
  padding-left: 5px;
}

.link .icon.left {
  padding-right: 5px;
}

@media(min-width: 768px) {
  .link {
    font-size: 14px;
    line-height: 17px;
  }

  .link.large {
    font-size: 18px;
    line-height: 21px;
  }

  .link .icon {
    height: 13px;
  }

  .link .icon.right {
    padding-left: 10px;
  }

  .link .icon.left {
    padding-right: 10px;
  }
}

.link-basic {
  position: relative;
  color: #00008f;
  transition: color 0.2s ease-out;
}

.link-basic:after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background: transparent;
  transition: background 0.2s ease-out;
}

.link-basic:hover {
  color: #00005b;
}

.link-basic:hover:after {
  background: #00008f 
}