@font-face {
  font-family: 'SFCompactDisplay';
  src: url('fonts/SFCompactDisplay-Regular.eot');
  src: url('fonts/SFCompactDisplay-Regular.eot?#iefix') format('embedded-opentype'),
     url('fonts/SFCompactDisplay-Regular.woff2') format('woff2'),
     url('fonts/SFCompactDisplay-Regular.woff') format('woff'),
     url('fonts/SFCompactDisplay-Regular.ttf') format('truetype'),
     url('fonts/SFCompactDisplay-Regular.svg#SFCompactDisplay-Regular') format('svg');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'SFCompactDisplay';
  src: url('fonts/SFCompactDisplay-Bold.eot');
  src: url('fonts/SFCompactDisplay-Bold.eot?#iefix') format('embedded-opentype'),
     url('fonts/SFCompactDisplay-Bold.woff2') format('woff2'),
     url('fonts/SFCompactDisplay-Bold.woff') format('woff'),
     url('fonts/SFCompactDisplay-Bold.ttf') format('truetype'),
     url('fonts/SFCompactDisplay-Bold.svg#SFCompactDisplay-Bold') format('svg');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'SFCompactDisplay';
  src: url('fonts/SFCompactDisplay-Black.eot');
  src: url('fonts/SFCompactDisplay-Black.eot?#iefix') format('embedded-opentype'),
     url('fonts/SFCompactDisplay-Black.woff2') format('woff2'),
     url('fonts/SFCompactDisplay-Black.woff') format('woff'),
     url('fonts/SFCompactDisplay-Black.ttf') format('truetype'),
     url('fonts/SFCompactDisplay-Black.svg#SFCompactDisplay-Black') format('svg');
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}

.animated {
	animation-duration: 1s;
	animation-fill-mode: both;
}

@keyframes fadeIn {
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}

.fadeIn {
	animation-name: fadeIn;
}

@keyframes fadeOut {
	from {
		opacity: 1;
	}
	to {
		opacity: 0;
	}
}

.fadeOut {
	animation-name: fadeOut;
}

@keyframes fadeInDown {
	from {
		opacity: 0;
		transform: translate3d(0, -100%, 0);
	}
	to {
		opacity: 1;
		transform: translate3d(0, 0, 0);
	}
}

.fadeInDown {
	animation-name: fadeInDown;
}

@keyframes slideOutLeft {
	from {
		transform: translate3d(0, 0, 0);
	}
	to {
		visibility: hidden;
		transform: translate3d(-100%, 0, 0);
	}
}

.slideOutLeft {
	animation-name: slideOutLeft;
}

@keyframes slideInRight {
	from {
		transform: translate3d(100%, 0, 0);
		visibility: visible;
	}
	to {
		transform: translate3d(0, 0, 0);
	}
}

.slideInRight {
	animation-name: slideInRight;
}

@keyframes slideInUp {
	from {
		transform: translate3d(0, 100%, 0);
		visibility: visible;
	}
	to {
		transform: translate3d(0, 0, 0);
		visibility: visible;
	}
}

.slideInUp {
	animation-name: slideInUp;
}

@keyframes flipOutY {
	from {
		transform: perspective(400px);
	}
	30% {
		transform: perspective(400px) rotate3d(0, 1, 0, -15deg);
		opacity: 1;
	}
	to {
		transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
		opacity: 0;
	}
}

.flipOutY {
	animation-duration: 0.75s;
	backface-visibility: visible;
	animation-name: flipOutY;
}

@keyframes bounceInRight {
	from,
	60%,
	75%,
	90%,
	to {
		animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
	}
	from {
		opacity: 0;
		transform: translate3d(100%, 0, 0);
	}
	60% {
		opacity: 1;
		transform: translate3d(-25px, 0, 0);
	}
	75% {
		transform: translate3d(10px, 0, 0);
	}
	90% {
		transform: translate3d(-5px, 0, 0);
	}
	to {
		transform: translate3d(0, 0, 0);
	}
}

.bounceInRight {
	animation-name: bounceInRight;
}

@keyframes zoomInRight {
	from {
		opacity: 0;
		transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0);
		animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
	}
	60% {
		opacity: 1;
		transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0);
		animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1);
	}
}

.zoomInRight {
	animation-name: zoomInRight;
}

@keyframes fadeInRight {
	from {
		opacity: 0;
		transform: translate3d(100%, 0, 0);
	}
	to {
		opacity: 1;
		transform: translate3d(0, 0, 0);
	}
}

.fadeInRight {
	animation-name: fadeInRight;
}

@keyframes slideOutRight {
	from {
		transform: translate3d(0, 0, 0);
	}
	to {
		visibility: hidden;
		transform: translate3d(100%, 0, 0);
	}
}

.slideOutRight {
	animation-name: slideOutRight;
}

@keyframes flipInY {
	from {
		transform: perspective(400px) rotate3d(0, 1, 0, 90deg);
		animation-timing-function: ease-in;
		opacity: 0;
	}
	40% {
		transform: perspective(400px) rotate3d(0, 1, 0, -20deg);
		animation-timing-function: ease-in;
	}
	60% {
		transform: perspective(400px) rotate3d(0, 1, 0, 10deg);
		opacity: 1;
	}
	80% {
		transform: perspective(400px) rotate3d(0, 1, 0, -5deg);
	}
	to {
		transform: perspective(400px);
	}
}

.flipInY {
	backface-visibility: visible;
	animation-name: flipInY;
}

@keyframes bounceInUp {
	from,
	60%,
	75%,
	90%,
	to {
		animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
	}
	from {
		opacity: 0;
		transform: translate3d(0, 3000px, 0);
	}
	60% {
		opacity: 1;
		transform: translate3d(0, -20px, 0);
	}
	75% {
		transform: translate3d(0, 10px, 0);
	}
	90% {
		transform: translate3d(0, -5px, 0);
	}
	to {
		transform: translate3d(0, 0, 0);
	}
}

.bounceInUp {
	animation-name: bounceInUp;
}

html {
	font-family: sans-serif;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
}

body {
	margin: 0;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
	display: block;
}

audio,
canvas,
progress,
video {
	display: inline-block;
	vertical-align: baseline;
}

audio:not([controls]) {
	display: none;
	height: 0;
}

[hidden],
template {
	display: none;
}

a {
	background-color: transparent;
}

a:active {
	outline: 0;
}

a:hover {
	outline: 0;
}

abbr[title] {
	border-bottom: 1px dotted;
}

b,
strong {
	font-weight: bold;
}

dfn {
	font-style: italic;
}

h1 {
	font-size: 2em;
	margin: 0.67em 0;
}

mark {
	background: #ff0;
	color: #000;
}

small {
	font-size: 80%;
}

sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sup {
	top: -0.5em;
}

sub {
	bottom: -0.25em;
}

img {
	border: 0;
}

svg:not(:root) {
	overflow: hidden;
}

figure {
	margin: 1em 40px;
}

hr {
	box-sizing: content-box;
	height: 0;
}

pre {
	overflow: auto;
}

code,
kbd,
pre,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

button,
input,
optgroup,
select,
textarea {
	color: inherit;
	font: inherit;
	margin: 0;
}

button {
	overflow: visible;
}

button,
select {
	text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
	-webkit-appearance: button;
	cursor: pointer;
}

button[disabled],
html input[disabled] {
	cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
	border: 0;
	padding: 0;
}

input {
	line-height: normal;
}

input[type="checkbox"],
input[type="radio"] {
	box-sizing: border-box;
	padding: 0;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

input[type="search"] {
	-webkit-appearance: textfield;
	box-sizing: content-box;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

fieldset {
	border: 1px solid #c0c0c0;
	margin: 0 2px;
	padding: 0.35em 0.625em 0.75em;
}

legend {
	border: 0;
	padding: 0;
}

textarea {
	overflow: auto;
}

optgroup {
	font-weight: bold;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

td,
th {
	padding: 0;
}

html {
	font-size: 62.5%;
}

body {
	background: #e9ebee;
	margin: 0;
	font-size: 1.9rem;
	line-height: 1.6;
	font-weight: 400;
	font-family: "SFCompactDisplay", sans-serif;
	color: #222;
}

a {
  color: #615d88;
  -webkit-transition: color 0.15s ease-out;
  -moz-transition: color 0.15s ease-out;
  -ms-transition: color 0.15s ease-out;
  -o-transition: color 0.15s ease-out;
  transition: color 0.15s ease-out;
}

a:hover {
  color: #8983c0;
}

hr {
	margin-top: 3rem;
	margin-bottom: 3.5rem;
	border-width: 0;
	border-top: 1px solid #e1e1e1;
}

img {
	border-style: none;
}

a {
	text-decoration: none;
}

.u-full-width {
	width: 100%;
	height: auto;
	box-sizing: border-box;
}

.u-max-full-width {
	max-width: 100%;
	box-sizing: border-box;
}

.u-pull-right {
	float: right;
}

.u-pull-left {
	float: left;
}

.hidden {
	display: none;
}

.img-responsive {
	max-width: 100%;
	height: auto;
}

.block-center {
	width: 100%;
	display: block;
	text-align: center;
}

main {
	min-height: 50vh;
}
.main-wrapper {
	position: relative;
	top: 90px;
}
.container.main-wrapper {
  margin-bottom: 90px;
}

.page-title-wrapper {
	text-align: center;
	position: fixed;
	left: 0;
	right: 0;
	top: 55px;
	z-index: 10;
	padding: 2px;
	background-color: #f7f7f7;
}

.page-title-wrapper h1 {
	font-size: 1.9rem;
	line-height: 1.9;
	font-weight: bold;
	margin-bottom: 0;
}

.inline-block {
	display: inline-block;
}
.section-title {
  color: #3d4859;
  font-size: 2.3rem;
  font-weight: 900;
  margin: 2.5rem 0 0.1em;  
}
.mt0 {
  margin-top: 0;
}


h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
	margin-top: 0;
	margin-bottom: 2rem;
	font-weight: 300;
	font-size: 2.4rem;
	line-height: 1.35;
	letter-spacing: -.08rem;
}

h2,
h3,
h4,
h5,
h6,
.h2,
.h3,
.h4,
.h5,
.h6 {
	color: #615d88;
}

p {
	margin-top: 0;
}

.text-small {
	font-size: 1.4rem;
}

.text-center {
	text-align: center;
}

.text-left {
	text-align: left;
}

.container {
	position: relative;
	width: 100%;
	max-width: 600px;
	margin: 0 auto;
	padding: 0 20px;
	box-sizing: border-box;
}

.column,
.columns {
	width: 100%;
	float: left;
	box-sizing: border-box;
}

@media (min-width: 400px) {
	.container {
		width: 85%;
		padding: 0;
	}
}

@media (min-width: 550px) {
	.container {
		width: 80%;
	}
	.column,
	.columns {
		margin-left: 4%;
	}
	.column:first-child,
	.columns:first-child {
		margin-left: 0;
	}
	.one.column,
	.one.columns {
		width: 4.66667%;
	}
	.two.columns {
		width: 13.33333%;
	}
	.three.columns {
		width: 22%;
	}
	.four.columns {
		width: 30.66667%;
	}
	.five.columns {
		width: 39.33333%;
	}
	.six.columns {
		width: 48%;
	}
	.seven.columns {
		width: 56.66667%;
	}
	.eight.columns {
		width: 65.33333%;
	}
	.nine.columns {
		width: 74%;
	}
	.ten.columns {
		width: 82.66667%;
	}
	.eleven.columns {
		width: 91.33333%;
	}
	.twelve.columns {
		width: 100%;
		margin-left: 0;
	}
	.one-third.column {
		width: 30.66667%;
	}
	.two-thirds.column {
		width: 65.33333%;
	}
	.one-half.column {
		width: 48%;
	}
	.offset-by-one.column,
	.offset-by-one.columns {
		margin-left: 8.66667%;
	}
	.offset-by-two.column,
	.offset-by-two.columns {
		margin-left: 17.33333%;
	}
	.offset-by-three.column,
	.offset-by-three.columns {
		margin-left: 26%;
	}
	.offset-by-four.column,
	.offset-by-four.columns {
		margin-left: 34.66667%;
	}
	.offset-by-five.column,
	.offset-by-five.columns {
		margin-left: 43.33333%;
	}
	.offset-by-six.column,
	.offset-by-six.columns {
		margin-left: 52%;
	}
	.offset-by-seven.column,
	.offset-by-seven.columns {
		margin-left: 60.66667%;
	}
	.offset-by-eight.column,
	.offset-by-eight.columns {
		margin-left: 69.33333%;
	}
	.offset-by-nine.column,
	.offset-by-nine.columns {
		margin-left: 78%;
	}
	.offset-by-ten.column,
	.offset-by-ten.columns {
		margin-left: 86.66667%;
	}
	.offset-by-eleven.column,
	.offset-by-eleven.columns {
		margin-left: 95.33333%;
	}
	.offset-by-one-third.column,
	.offset-by-one-third.columns {
		margin-left: 34.66667%;
	}
	.offset-by-two-thirds.column,
	.offset-by-two-thirds.columns {
		margin-left: 69.33333%;
	}
	.offset-by-one-half.column,
	.offset-by-one-half.column {
		margin-left: 52%;
	}
}

.container:after,
.row:after,
.u-cf {
	content: "";
	display: table;
	clear: both;
}

.button,
button {
	text-align: center;
	background: #615d88;
	color: white;
	border-radius: 4px;
	font-size: 1.6rem;
	font-weight: 700;
	padding-right: 16px;
	padding-left: 16px;
	line-height: 25px;
	padding-top: 12px;
	padding-bottom: 12px;
	min-width: 180px;
	height: 50px;
	box-sizing: border-box;
	display: inline-block;
  -webkit-transition: all 0.175s ease-out;
  -moz-transition: all 0.175s ease-out;
  -ms-transition: all 0.175s ease-out;
  -o-transition: all 0.175s ease-out;
  transition: all 0.175s ease-out;
}
.button.submit {
	min-width: 260px;
}
input[type="submit"],
input[type="reset"],
input[type="button"] {
	text-align: center;
	background: #615d88;
	color: white;
	border-radius: 12px;
	font-size: 2rem;
	font-weight: 700;
	line-height: 1;
	padding: 0.8em;
	min-width: 260px;
	height: auto;
	box-sizing: border-box;
	display: inline-block;
}

.button:hover,
button:hover {
  background: #f57070;
  color: white;
  cursor: pointer;
  -webkit-transform: scale(1.05);
  -moz-transform: scale(1.05);
  -ms-transform: scale(1.05);
  -o-transform: scale(1.05);
  transform: scale(1.05);
}
.button:active,
button:active {
  -webkit-transform: scale(1.0125);
  -moz-transform: scale(1.0125);
  -ms-transform: scale(1.0125);
  -o-transform: scale(1.0125);
  transform: scale(1.0125);
}

input[type="submit"]:hover,
input[type="reset"]:hover,
input[type="button"]:hover {
	color: white;
	cursor: pointer;
}

.button:focus,
button:focus {
  color: #fff;
  border-color: transparent;
	outline: 0;
}
::-webkit-input-placeholder{color:inherit;opacity:0.5;font-family:inherit;}:-moz-placeholder{color:inherit;opacity:0.5;font-family:inherit;}::-moz-placeholder{color:inherit;opacity:0.5;font-family:inherit;}:-ms-input-placeholder{color:inherit;opacity:0.5;font-family:inherit;}
input[type="submit"]:focus,
input[type="reset"]:focus,
input[type="button"]:focus {
	color: #333;
	border-color: #888888;
	outline: 0;
}

.button.button-primary,
button.button-primary {
	color: #fff;
	background-color: #615d88;
	border-color: #615d88;
}

input[type="submit"].button-primary,
input[type="reset"].button-primary,
input[type="button"].button-primary {
	color: #fff;
	background-color: #615d88;
	border-color: #615d88;
}

.button.button-primary:hover,
button.button-primary:hover {
	color: #fff;
	background-color: #615d88;
	border-color: #615d88;
}

input[type="submit"].button-primary:hover,
input[type="reset"].button-primary:hover,
input[type="button"].button-primary:hover {
	color: #fff;
	background-color: #615d88;
	border-color: #615d88;
}

.button.button-primary:focus,
button.button-primary:focus {
	color: #fff;
	background-color: #615d88;
	border-color: #615d88;
}

input[type="submit"].button-primary:focus,
input[type="reset"].button-primary:focus,
input[type="button"].button-primary:focus {
	color: #fff;
	background-color: #615d88;
	border-color: #615d88;
}

input[type="email"],
input[type="number"],
input[type="search"],
input[type="text"],
input[type="tel"],
input[type="url"],
input[type="password"] {
  background-color: #f8fafc;
  border: 1px solid #bdc1cd;
	border-radius: 0;
	box-shadow: none;
	box-sizing: border-box;
	color: #b7b6c3;
}

input[type='email'],
input[type='number'],
input[type='search'],
input[type='text'],
input[type='tel'],
input[type='url'],
input[type='password'],
textarea,
select {
  background-color: #f8fafc;
  border: 1px solid #bdc1cd;
	box-shadow: none;
	box-sizing: border-box;
	color: #b7b6c3;
}


input[type="email"],
input[type="number"],
input[type="search"],
input[type="text"],
input[type="tel"],
input[type="url"],
input[type="password"] {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

textarea {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	min-height: 65px;
	padding-top: 6px;
	padding-bottom: 6px;
}

input[type="email"]:focus,
input[type="number"]:focus,
input[type="search"]:focus,
input[type="text"]:focus,
input[type="tel"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
textarea:focus,
select:focus {
  border: 1px solid #615d88;
  outline: 0;
  color: #615d88;
}


label,
legend {
	display: inline-block;
	margin-bottom: .25em;
	font-weight: 700;
}
fieldset {
	padding: 0;
	border-width: 0;
}

input[type="checkbox"],
input[type="radio"] {
	display: inline;
}

label>.label-body {
	display: inline-block;
	margin-left: .5rem;
	font-weight: normal;
}

form.has-error input,
form.has-error input:focus {
	border-color: red;
}

form.has-error label {
	color: red;
}

ul {
	list-style: circle inside;
}

ol {
	list-style: decimal inside;
	padding-left: 0;
	margin-top: 0;
}

ul {
	padding-left: 0;
	margin-top: 0;
}

ul ul,
ul ol {
	margin: 1.5rem 0 1.5rem 3rem;
	font-size: 90%;
}

ol ol,
ol ul {
	margin: 1.5rem 0 1.5rem 3rem;
	font-size: 90%;
}

li {
	margin-bottom: 1rem;
}

button,
.button {
	margin-bottom: 1rem;
}

input,
textarea,
select,
fieldset {
	margin-bottom: 1.5rem;
}

pre,
blockquote,
dl,
figure,
table,
p,
ul,
ol,
form {
	margin-bottom: 2.5rem;
}

.login-container {
	max-width: 600px;
	margin: 0 auto;
	padding: 20px;
	background-color: #fff;
	border: 1px solid #bdc1cd;
	text-align: center;
}

form input {
  background-color: #f8fafc;
  border: 1px solid #bdc1cd;
  box-shadow: none;
  box-sizing: border-box;
  color: #b7b6c3;
  display: block;
  font-size: 2rem;
  font-weight: bold;
  line-height: 1;
  height: auto;
  padding: 0.5em;
  margin: 0 auto 0.25em;
  max-width: 320px;
  width: 92%;
}
form input:focus,
form input:active {
  color: #615d88;
  outline: 0;
  border-color: #615d88;
}
form input[type=submit]:focus,
form input[type=submit] {
	color: #fff;
	width: auto;
}

form {
	margin-bottom: 0;
}


.error {
	color: red;
	margin-bottom: 2rem;
}
label.error {
	clear: both;
	display: block;
	font-weight: 400;
	font-size: 0.8em;
	margin: 0 auto 0.7em;
}
input.error {
	background-color: rgba(204, 0, 0, 0.1);
	margin-bottom: 0;
}

.navbar {
  background: #615d88;
	height: 35px;
	padding: 5px 20px 5px 20px;
	position: fixed;
	left: 0;
	right: 0;
	top: 0;
	width: auto;
	z-index: 10000;
	font-size: 1.6rem;
}

.navbar .logo {
  height: auto;
  max-width: 100%;
  width: 190px;
}

.navbar .button {
	margin: -1.5px;
}

.navbar .main-button.invisible {
	visibility: hidden;
	opacity: 0;
	transition: all 0.25s ease-in-out;
	transform: rotateY(90deg);
}

.navbar .main-button.visible {
	visibility: visible;
	opacity: 100;
	transition: all 0.25s ease-in-out;
	transform: rotateY(0deg);
}

.navbar ul.subnav a {
	text-decoration: none;
}

.navbar a {
	color: #fff;
}

.navbar #expand-button {
	display: none;
}

.navbar ul.subnav {
	float: right;
	margin-top: 5px;
}

.navbar ul.subnav li {
	display: inline;
	padding: 0;
}

#download-button,
#home-button {
	position: absolute;
}
#home-button {
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}

#download-button {
  height: 38px;
  min-width: 78px;
  width: 78px;
  line-height: 14px;
  color: #fff;
  background: transparent;
  border: 1px solid #fff;
  padding-left: 0.66em;
  padding-right: 0.66em;
}

.footer {
	text-align: center;
	padding-top: 50px;
	margin-bottom: 25px;
}

.footer .row {
	margin-bottom: 1rem;
}

.footer .links a {
	display: inline-block;
	font-weight: bold;
	text-decoration: none;
	text-transform: uppercase;
	padding: 0 5px;
	height: 25px;
}

.footer .disclaimer {
	color: #000;
}

.footer .disclaimer a {
	color: #000;
}

.footer .copyright {
	display: inline-block;
}

.social-icon {
	display: inline-block;
}

.social-icon img {
	vertical-align: middle;
	width: 25px;
	height: 25px;
}

.footer-bottom {
	margin-top: 1.5rem;
	margin-bottom: 2.5rem;
	font-size: 1.4rem;
}
.fwbl {
	font-weight: 900;
}
