@charset "UTF-8";
@import url(font-awesome.min.css);
@import url("https://fonts.googleapis.com/css?family=Source+Sans+Pro:300");

/*
	Identity by HTML5 UP
	html5up.net | @ajlkn
	Free for personal and commercial use under the CCA 3.0 license (html5up.net/license)
*/

/* Reset */

html,
body,
h1 {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

footer,
header {
  display: block;
}

ol,
ul {
  list-style: none;
}

/* Box Model */

*,
*:before,
*:after {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

/* Basic */

@media screen and (max-width: 480px) {
  html,
  body {
    min-width: 320px;
  }
}

body.is-loading *,
body.is-loading *:before,
body.is-loading *:after {
  -moz-animation: none !important;
  -webkit-animation: none !important;
  -ms-animation: none !important;
  animation: none !important;
  -moz-transition: none !important;
  -webkit-transition: none !important;
  -ms-transition: none !important;
  transition: none !important;
}

html {
  height: 100%;
}

body {
  line-height: 1;
  -webkit-text-size-adjust: none;
  color: #414f57;
  font-family: "Source Sans Pro", Helvetica, sans-serif;
  font-size: 14pt;
  font-weight: 300;
  line-height: 2;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  height: 100%;
  background: #5c258d; /* fallback for old browsers */
  background: -webkit-linear-gradient(
    to right,
    #4389a2,
    #5c258d
  ); /* Chrome 10-25, Safari 5.1-6 */
  background: linear-gradient(
    to right,
    #4389a2,
    #5c258d
  ); /* W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+ */
}

body:after {
  content: "";
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: inherit;
  opacity: 0;
  z-index: 1;
  background: #5c258d; /* fallback for old browsers */
  background: -webkit-linear-gradient(
    to right,
    #4389a2,
    #5c258d
  ); /* Chrome 10-25, Safari 5.1-6 */
  background: linear-gradient(
    to right,
    #4389a2,
    #5c258d
  ); /* W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+ */
  -moz-transition: opacity 1.75s ease-out;
  -webkit-transition: opacity 1.75s ease-out;
  -ms-transition: opacity 1.75s ease-out;
  transition: opacity 1.75s ease-out;
}

body.is-loading:after {
  opacity: 1;
}

@media screen and (max-width: 1680px) {
  body {
    font-size: 11pt;
  }
}

@media screen and (max-width: 480px) {
  body {
    font-size: 10pt;
    line-height: 1.75;
  }
}

a {
  -moz-transition: color 0.2s ease, border-color 0.2s ease;
  -webkit-transition: color 0.2s ease, border-color 0.2s ease;
  -ms-transition: color 0.2s ease, border-color 0.2s ease;
  transition: color 0.2s ease, border-color 0.2s ease;
  color: inherit;
  text-decoration: none;
}

a:before {
  -moz-transition: color 0.2s ease, text-shadow 0.2s ease;
  -webkit-transition: color 0.2s ease, text-shadow 0.2s ease;
  -ms-transition: color 0.2s ease, text-shadow 0.2s ease;
  transition: color 0.2s ease, text-shadow 0.2s ease;
}

a:hover {
  color: #4389a2;
}

p {
  margin: 0 0 1.5em 0;
}

h1 a {
  color: inherit;
  text-decoration: none;
}

h1 {
  color: #313f47;
  line-height: 1.5;
  font-size: 1.85em;
  letter-spacing: 0.22em;
  margin: 0 0 0.525em 0;
}

@media screen and (max-width: 480px) {
  h1 {
    font-size: 1.65em;
  }
}

/* Icon */

.icon {
  text-decoration: none;
  position: relative;
  border-bottom: none;
}

.icon:before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: FontAwesome;
  font-style: normal;
  font-weight: normal;
  text-transform: none !important;
}

.icon > .label {
  display: none;
}

/* List */

ol {
  list-style: decimal;
  margin: 0 0 1.5em 0;
  padding-left: 1.25em;
}

ol li {
  padding-left: 0.25em;
}

ul {
  list-style: disc;
  margin: 0 0 1.5em 0;
  padding-left: 1em;
}

ul li {
  padding-left: 0.5em;
}

ul.icons {
  cursor: default;
  list-style: none;
  padding-left: 0;
  margin-top: -0.675em;
}

ul.icons li {
  display: inline-block;
  padding: 0.25em;
}

ul.icons li a {
  text-decoration: none;
  position: relative;
  display: block;
  width: 2.75em;
  height: 2.75em;
  border-radius: 100%;
  border: solid 1px #c8cccf;
  line-height: 2.75em;
  overflow: hidden;
  text-align: center;
  text-indent: 2.75em;
  white-space: nowrap;
}

ul.icons li a:before {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  font-family: FontAwesome;
  font-style: normal;
  font-weight: normal;
  text-transform: none !important;
}

ul.icons li a:before {
  color: #ffffff;
  text-shadow: 1.25px 0px 0px #c8cccf, -1.25px 0px 0px #c8cccf,
    0px 1.25px 0px #c8cccf, 0px -1.25px 0px #c8cccf;
}

ul.icons li a:hover:before {
  text-shadow: 1.25px 0px 0px #4389a2, -1.25px 0px 0px #4389a2,
    0px 1.25px 0px #4389a2, 0px -1.25px 0px #4389a2;
}

ul.icons li a:before {
  position: absolute;
  top: 0;
  left: 0;
  width: inherit;
  height: inherit;
  font-size: 1.35rem;
  line-height: inherit;
  text-align: center;
  text-indent: 0;
}

ul.icons li a:hover {
  border-color: #4389a2;
}

@media screen and (max-width: 480px) {
  ul.icons li a:before {
    font-size: 1.5rem;
  }
}

/* Main */

#main {
  position: relative;
  max-width: 100%;
  min-width: 22em;
  padding: 2.5em 3em 0em 3em;
  background: #ffffff;
  border-radius: 15.625%;
  cursor: default;
  opacity: 0.95;
  text-align: center;
  -moz-transform-origin: 50% 50%;
  -webkit-transform-origin: 50% 50%;
  -ms-transform-origin: 50% 50%;
  transform-origin: 50% 50%;
  -moz-transform: rotateX(0deg);
  -webkit-transform: rotateX(0deg);
  -ms-transform: rotateX(0deg);
  transform: rotateX(0deg);
  -moz-transition: opacity 1s ease, -moz-transform 1s ease;
  -webkit-transition: opacity 1s ease, -webkit-transform 1s ease;
  -ms-transition: opacity 1s ease, -ms-transform 1s ease;
  transition: opacity 1s ease, transform 1s ease;
}

#main .avatar {
  position: relative;
  display: block;
  margin-bottom: 1.5em;
}

#main .avatar img {
  display: block;
  margin: 0 auto;
  border-radius: 100%;
  box-shadow: 0 0 0 1.5em #ffffff;
}

#main .avatar:before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: -3em;
  width: calc(100% + 6em);
  height: 1px;
  z-index: -1;
  background: #c8cccf;
}

@media screen and (max-width: 480px) {
  #main {
    min-width: 0;
    width: 100%;
    padding: 4em 2em 2.5em 2em;
  }

  #main .avatar:before {
    left: -2em;
    width: calc(100% + 4em);
  }
}

body.is-loading #main {
  opacity: 0;
  -moz-transform: rotateX(15deg);
  -webkit-transform: rotateX(15deg);
  -ms-transform: rotateX(15deg);
  transform: rotateX(15deg);
}

/* Wrapper */

#wrapper {
  display: -moz-flex;
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  -moz-align-items: center;
  -webkit-align-items: center;
  -ms-align-items: center;
  align-items: center;
  -moz-justify-content: center;
  -webkit-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
  -moz-flex-direction: column;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -moz-perspective: 1000px;
  -webkit-perspective: 1000px;
  -ms-perspective: 1000px;
  perspective: 1000px;
  position: relative;
  min-height: 100%;
  padding: 1.5em;
  z-index: 2;
}

#wrapper > * {
  z-index: 1;
}

#wrapper:before {
  content: "";
  display: block;
}

@media screen and (max-width: 360px) {
  #wrapper {
    padding: 0.75em;
  }
}
