html {
	line-height: 1.15;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%
}

body {
	margin: 0
}

article,
aside,
footer,
header,
nav,
section {
	display: block
}

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

figcaption,
figure,
main {
	display: block
}

figure {
	margin: 1em 40px
}

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

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

a {
	background-color: transparent;
	-webkit-text-decoration-skip: objects
}

abbr[title] {
	border-bottom: none;
	text-decoration: underline;
	-webkit-text-decoration: underline dotted;
	text-decoration: underline dotted
}

b,
strong {
	font-weight: inherit
}

b,
strong {
	font-weight: bolder
}

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

dfn {
	font-style: italic
}

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

small {
	font-size: 80%
}

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

sub {
	bottom: -0.25em
}

sup {
	top: -0.5em
}

audio,
video {
	display: inline-block
}

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

img {
	border-style: none
}

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

button,
input,
optgroup,
select,
textarea {
	font-family: sans-serif;
	font-size: 100%;
	line-height: 1.15;
	margin: 0
}

button,
input {
	overflow: visible
}

button,
select {
	text-transform: none
}

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

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
	border-style: none;
	padding: 0
}

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
	outline: 1px dotted ButtonText
}

fieldset {
	padding: 0.35em 0.75em 0.625em
}

legend {
	box-sizing: border-box;
	color: inherit;
	display: table;
	max-width: 100%;
	padding: 0;
	white-space: normal
}

progress {
	display: inline-block;
	vertical-align: baseline
}

textarea {
	overflow: auto
}

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

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

[type="search"] {
	-webkit-appearance: textfield;
	outline-offset: -2px
}

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

::-webkit-file-upload-button {
	-webkit-appearance: button;
	font: inherit
}

details,
menu {
	display: block
}

summary {
	display: list-item
}

canvas {
	display: inline-block
}

template {
	display: none
}

[hidden] {
	display: none
}

html {
	box-sizing: border-box
}

*,
*:before,
*:after {
	box-sizing: inherit
}

body {
	background: #fff;
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased
}

hr {
	border: 0;
	display: block;
	height: 1px;
	background: #E4E8EE;
	margin-top: 24px;
	margin-bottom: 24px
}

ul,
ol {
	margin-top: 0;
	margin-bottom: 24px;
	padding-left: 24px
}

ul {
	list-style: disc
}

ol {
	list-style: decimal
}

li>ul,
li>ol {
	margin-bottom: 0
}

dl {
	margin-top: 0;
	margin-bottom: 24px
}

dt {
	font-weight: 600
}

dd {
	margin-left: 24px;
	margin-bottom: 24px
}

img {
	height: auto;
	max-width: 100%;
	vertical-align: middle
}

figure {
	margin: 24px 0
}

figcaption {
	font-size: 16px;
	line-height: 24px;
	padding: 8px 0
}

img,
svg {
	display: block
}

table {
	border-collapse: collapse;
	margin-bottom: 24px;
	width: 100%
}

tr {
	border-bottom: 1px solid #E4E8EE
}

th {
	text-align: left
}

th,
td {
	padding: 10px 16px
}

th:first-child,
td:first-child {
	padding-left: 0
}

th:last-child,
td:last-child {
	padding-right: 0
}

html {
	font-size: 20px;
	line-height: 30px
}

body {
	color: #6B7A90;
	font-size: 1rem
}

body,
button,
input,
select,
textarea {
	font-family: "Heebo", sans-serif
}

a {
	color: #4234F8;
	text-decoration: none
}

a:hover,
a:active {
	outline: 0;
	text-decoration: underline
}

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
	clear: both;
	color: #161E2A;
	font-family: "Oxygen", sans-serif;
	font-weight: 600
}

h1,
.h1 {
	font-size: 38px;
	line-height: 48px;
	letter-spacing: 0px
}

@media (min-width: 641px) {

	h1,
	.h1 {
		font-size: 44px;
		line-height: 54px;
		letter-spacing: 0px
	}
}

h2,
.h2 {
	font-size: 32px;
	line-height: 42px;
	letter-spacing: 0px
}

@media (min-width: 641px) {

	h2,
	.h2 {
		font-size: 38px;
		line-height: 48px;
		letter-spacing: 0px
	}
}

h3,
.h3,
blockquote {
	font-size: 28px;
	line-height: 34px;
	letter-spacing: 0px
}

@media (min-width: 641px) {

	h3,
	.h3,
	blockquote {
		font-size: 32px;
		line-height: 42px;
		letter-spacing: 0px
	}
}

h4,
.h4 {
	font-size: 28px;
	line-height: 34px;
	letter-spacing: 0px
}

h5,
.h5,
h6,
.h6 {
	font-size: 20px;
	line-height: 30px;
	letter-spacing: -0.1px
}

@media (max-width: 640px) {
	.h1-mobile {
		font-size: 38px;
		line-height: 48px;
		letter-spacing: 0px
	}

	.h2-mobile {
		font-size: 32px;
		line-height: 42px;
		letter-spacing: 0px
	}

	.h3-mobile {
		font-size: 28px;
		line-height: 34px;
		letter-spacing: 0px
	}

	.h4-mobile {
		font-size: 28px;
		line-height: 34px;
		letter-spacing: 0px
	}

	.h5-mobile,
	.h6-mobile {
		font-size: 20px;
		line-height: 30px;
		letter-spacing: -0.1px
	}
}

.text-light {
	color: #606483
}

.text-light a {
	color: #606483
}

.text-light h1,
.text-light h2,
.text-light h3,
.text-light h4,
.text-light h5,
.text-light h6,
.text-light .h1,
.text-light .h2,
.text-light .h3,
.text-light .h4,
.text-light .h5,
.text-light .h6 {
	color: #fff !important
}

.text-sm {
	font-size: 18px;
	line-height: 27px;
	letter-spacing: -0.1px
}

.text-xs {
	font-size: 16px;
	line-height: 24px;
	letter-spacing: -0.1px
}

h1,
h2,
.h1,
.h2 {
	margin-top: 48px;
	margin-bottom: 16px
}

h3,
.h3 {
	margin-top: 36px;
	margin-bottom: 12px
}

h4,
h5,
h6,
.h4,
.h5,
.h6 {
	margin-top: 24px;
	margin-bottom: 4px
}

p {
	margin-top: 0;
	margin-bottom: 24px
}

dfn,
cite,
em,
i {
	font-style: italic
}

blockquote {
	color: #6B7A90;
	font-style: italic;
	margin-top: 24px;
	margin-bottom: 24px;
	margin-left: 24px
}

blockquote::before {
	content: "\201C"
}

blockquote::after {
	content: "\201D"
}

blockquote p {
	display: inline
}

address {
	color: #6B7A90;
	border-width: 1px 0;
	border-style: solid;
	border-color: #E4E8EE;
	padding: 24px 0;
	margin: 0 0 24px
}

pre,
pre h1,
pre h2,
pre h3,
pre h4,
pre h5,
pre h6,
pre .h1,
pre .h2,
pre .h3,
pre .h4,
pre .h5,
pre .h6 {
	font-family: "Courier 10 Pitch", Courier, monospace
}

pre,
code,
kbd,
tt,
var {
	background: #F3F4FF
}

pre {
	font-size: 16px;
	line-height: 24px;
	margin-bottom: 1.6em;
	max-width: 100%;
	overflow: auto;
	padding: 24px;
	margin-top: 24px;
	margin-bottom: 24px
}

code,
kbd,
tt,
var {
	font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
	font-size: 16px;
	padding: 2px 4px
}

abbr,
acronym {
	cursor: help
}

mark,
ins {
	text-decoration: none
}

small {
	font-size: 18px;
	line-height: 27px;
	letter-spacing: -0.1px
}

b,
strong {
	font-weight: 600
}

button,
input,
select,
textarea,
label {
	font-size: 20px;
	line-height: 30px
}

.container,
.container-sm {
	width: 100%;
	margin: 0 auto;
	padding-left: 16px;
	padding-right: 16px
}

@media (min-width: 481px) {

	.container,
	.container-sm {
		padding-left: 24px;
		padding-right: 24px
	}
}

.container {
	max-width: 1128px
}

.container-sm {
	max-width: 848px
}

.container .container-sm {
	max-width: 800px;
	padding-left: 0;
	padding-right: 0
}

.screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	position: absolute !important;
	height: 1px;
	width: 1px;
	overflow: hidden;
	word-wrap: normal !important
}

.screen-reader-text:focus {
	border-radius: 2px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	display: block;
	font-size: 14px;
	letter-spacing: 0px;
	font-weight: 600;
	line-height: 16px;
	text-decoration: none;
	text-transform: uppercase;
	background-color: #fff;
	color: #4234F8 !important;
	border: none;
	height: auto;
	left: 8px;
	padding: 16px 40px;
	top: 8px;
	width: auto;
	z-index: 100000
}

.list-reset {
	list-style: none;
	padding: 0
}

.text-left {
	text-align: left
}

.text-center {
	text-align: center
}

.text-right {
	text-align: right
}

.text-primary {
	color: #4234F8
}

.text-secondary {
	color: #FF6C50
}

.has-top-divider {
	position: relative
}

.has-top-divider::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	display: block;
	height: 1px;
	background: #E4E8EE
}

.has-bottom-divider {
	position: relative
}

.has-bottom-divider::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	display: block;
	height: 1px;
	background: #E4E8EE
}

.m-0 {
	margin: 0
}

.mt-0 {
	margin-top: 0
}

.mr-0 {
	margin-right: 0
}

.mb-0 {
	margin-bottom: 0
}

.ml-0 {
	margin-left: 0
}

.m-8 {
	margin: 8px
}

.mt-8 {
	margin-top: 8px
}

.mr-8 {
	margin-right: 8px
}

.mb-8 {
	margin-bottom: 8px
}

.ml-8 {
	margin-left: 8px
}

.m-16 {
	margin: 16px
}

.mt-16 {
	margin-top: 16px
}

.mr-16 {
	margin-right: 16px
}

.mb-16 {
	margin-bottom: 16px
}

.ml-16 {
	margin-left: 16px
}

.m-24 {
	margin: 24px
}

.mt-24 {
	margin-top: 24px
}

.mr-24 {
	margin-right: 24px
}

.mb-24 {
	margin-bottom: 24px
}

.ml-24 {
	margin-left: 24px
}

.m-32 {
	margin: 32px
}

.mt-32 {
	margin-top: 32px
}

.mr-32 {
	margin-right: 32px
}

.mb-32 {
	margin-bottom: 32px
}

.ml-32 {
	margin-left: 32px
}

.m-40 {
	margin: 40px
}

.mt-40 {
	margin-top: 40px
}

.mr-40 {
	margin-right: 40px
}

.mb-40 {
	margin-bottom: 40px
}

.ml-40 {
	margin-left: 40px
}

.m-48 {
	margin: 48px
}

.mt-48 {
	margin-top: 48px
}

.mr-48 {
	margin-right: 48px
}

.mb-48 {
	margin-bottom: 48px
}

.ml-48 {
	margin-left: 48px
}

.m-56 {
	margin: 56px
}

.mt-56 {
	margin-top: 56px
}

.mr-56 {
	margin-right: 56px
}

.mb-56 {
	margin-bottom: 56px
}

.ml-56 {
	margin-left: 56px
}

.m-64 {
	margin: 64px
}

.mt-64 {
	margin-top: 64px
}

.mr-64 {
	margin-right: 64px
}

.mb-64 {
	margin-bottom: 64px
}

.ml-64 {
	margin-left: 64px
}

.p-0 {
	padding: 0
}

.pt-0 {
	padding-top: 0
}

.pr-0 {
	padding-right: 0
}

.pb-0 {
	padding-bottom: 0
}

.pl-0 {
	padding-left: 0
}

.p-8 {
	padding: 8px
}

.pt-8 {
	padding-top: 8px
}

.pr-8 {
	padding-right: 8px
}

.pb-8 {
	padding-bottom: 8px
}

.pl-8 {
	padding-left: 8px
}

.p-16 {
	padding: 16px
}

.pt-16 {
	padding-top: 16px
}

.pr-16 {
	padding-right: 16px
}

.pb-16 {
	padding-bottom: 16px
}

.pl-16 {
	padding-left: 16px
}

.p-24 {
	padding: 24px
}

.pt-24 {
	padding-top: 24px
}

.pr-24 {
	padding-right: 24px
}

.pb-24 {
	padding-bottom: 24px
}

.pl-24 {
	padding-left: 24px
}

.p-32 {
	padding: 32px
}

.pt-32 {
	padding-top: 32px
}

.pr-32 {
	padding-right: 32px
}

.pb-32 {
	padding-bottom: 32px
}

.pl-32 {
	padding-left: 32px
}

.p-40 {
	padding: 40px
}

.pt-40 {
	padding-top: 40px
}

.pr-40 {
	padding-right: 40px
}

.pb-40 {
	padding-bottom: 40px
}

.pl-40 {
	padding-left: 40px
}

.p-48 {
	padding: 48px
}

.pt-48 {
	padding-top: 48px
}

.pr-48 {
	padding-right: 48px
}

.pb-48 {
	padding-bottom: 48px
}

.pl-48 {
	padding-left: 48px
}

.p-56 {
	padding: 56px
}

.pt-56 {
	padding-top: 56px
}

.pr-56 {
	padding-right: 56px
}

.pb-56 {
	padding-bottom: 56px
}

.pl-56 {
	padding-left: 56px
}

.p-64 {
	padding: 64px
}

.pt-64 {
	padding-top: 64px
}

.pr-64 {
	padding-right: 64px
}

.pb-64 {
	padding-bottom: 64px
}

.pl-64 {
	padding-left: 64px
}

.sr .has-animations .is-revealing {
	visibility: hidden
}

.button {
	display: inline-flex;
	font-size: 14px;
	letter-spacing: 0px;
	font-weight: 700;
	line-height: 16px;
	text-decoration: none !important;
	text-transform: uppercase;
	background-color: #fff;
	background: #fff;
	color: #4234F8 !important;
	border: none;
	border-radius: 2px;
	cursor: pointer;
	justify-content: center;
	padding: 16px 40px;
	height: 48px;
	text-align: center;
	white-space: nowrap
}

.button:active {
	outline: 0
}

.button::before {
	border-radius: 2px
}

.button-shadow {
	position: relative
}

.button-shadow::before {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	box-shadow: 0 8px 16px rgba(22, 30, 42, 0.12);
	mix-blend-mode: multiply;
	transition: box-shadow .15s ease
}

.button-shadow:hover::before {
	box-shadow: 0 8px 16px rgba(22, 30, 42, 0.16)
}

.button-sm {
	padding: 8px 24px;
	height: 32px
}

.button-sm.button-shadow::before {
	box-shadow: 0 4px 16px rgba(22, 30, 42, 0.12)
}

.button-sm.button-shadow:hover::before {
	box-shadow: 0 4px 16px rgba(22, 30, 42, 0.16)
}

.button-primary,
.button-secondary {
	color: #fff !important;
	transition: background .15s ease
}

.button-primary {
	background: #4234F8
}

.button-primary:hover {
	background: #4b3ef8
}

.button-primary.button-shadow::before {
	box-shadow: 0 8px 16px rgba(66, 52, 248, 0.24)
}

.button-primary.button-shadow:hover::before {
	box-shadow: 0 8px 16px rgba(66, 52, 248, 0.32)
}

.button-primary .button-sm.button-shadow::before {
	box-shadow: 0 4px 16px rgba(66, 52, 248, 0.24)
}

.button-primary .button-sm.button-shadow:hover::before {
	box-shadow: 0 4px 16px rgba(66, 52, 248, 0.32)
}

.button-secondary {
	background: #FF6C50
}

.button-secondary:hover {
	background: #ff795f
}

.button-secondary.button-shadow::before {
	box-shadow: 0 8px 16px rgba(255, 108, 80, 0.24)
}

.button-secondary.button-shadow:hover::before {
	box-shadow: 0 8px 16px rgba(255, 108, 80, 0.32)
}

.button-secondary .button-sm.button-shadow::before {
	box-shadow: 0 4px 16px rgba(255, 108, 80, 0.24)
}

.button-secondary .button-sm.button-shadow:hover::before {
	box-shadow: 0 4px 16px rgba(255, 108, 80, 0.32)
}

.button-block {
	display: flex;
	width: 100%
}

@media (max-width: 640px) {
	.button-wide-mobile {
		width: 100%;
		max-width: 280px
	}
}

.site-header {
	padding: 24px 0;
	position: absolute;
	top: 0;
	left: 0;
	width: 25%;
	z-index: 1
}

.site-header-inner {
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: center
}

.header-links {
	display: inline-flex
}

.header-links li {
	display: inline-flex
}

.header-links a:not(.button) {
	font-size: 16px;
	line-height: 24px;
	letter-spacing: -0.1px;
	font-weight: 600;
	color: #606483;
	text-transform: uppercase;
	text-decoration: none;
	line-height: 16px;
	padding: 8px 24px
}

.header-links a:not(.button):hover,
.header-links a:not(.button):active {
	color: #fff
}

.hero {
	position: relative;
	padding-top: 128px;
	padding-bottom: 88px;
	z-index: 0
}

.hero .hero-bg {
	position: absolute;
	top: 0;
	bottom: 42%;
	left: 0;
	right: 0;
	background: #100018;
	z-index: -2
}

.hero .hero-particles-container {
	position: absolute;
	top: 0;
	bottom: 42%;
	left: 0;
	right: 0
}

.hero::before,
.hero::after {
	content: '';
	position: absolute;
	left: calc(50% - 360px);
	width: 720px;
	background-repeat: no-repeat
}

.hero::before {
	top: 0;
	height: 159px;
	background-image: url("../images/hero-bg-top.svg");
	background-size: 720px 159px
}

.hero::after {
	bottom: 42%;
	height: 173px;
	background-image: url("../images/hero-bg-bottom.svg");
	background-size: 720px 173px
}

.hero-inner {
	position: relative;
	z-index: 1
}

.hero-copy {
	position: relative;
	margin-bottom: 48px
}

@media (min-width: 641px) {
	.hero {
		padding-top: 160px;
		padding-bottom: 128px
	}

	.hero::before,
	.hero::after {
		left: calc(50% - 720px);
		width: 1440px
	}

	.hero::before {
		height: 318px;
		background-size: 1440px 318px
	}

	.hero::after {
		height: 347px;
		background-size: 1440px 347px
	}

	.hero-copy {
		margin-bottom: 88px
	}

	.hero-paragraph {
		padding-left: 72px;
		padding-right: 72px
	}
}

.has-animations .hero .hero-bg,
.has-animations .hero::before,
.has-animations .hero::after,
.has-animations .hero-particles-container,
.has-animations .site-header,
.has-animations .hero-title,
.has-animations .hero-paragraph,
.has-animations .hero-cta,
.has-animations .hero .mockup-bg,
.has-animations .hero .device-mockup {
	opacity: 0
}

.has-animations.is-loaded .hero .hero-bg {
	-webkit-animation: heroBg 0.6s cubic-bezier(0.215, 0.61, 0.355, 1) forwards;
	animation: heroBg 0.6s cubic-bezier(0.215, 0.61, 0.355, 1) forwards
}

.has-animations.is-loaded .hero::before,
.has-animations.is-loaded .hero::after {
	-webkit-animation: heroFadeIn .6s ease forwards .45s;
	animation: heroFadeIn .6s ease forwards .45s
}

.has-animations.is-loaded .site-header,
.has-animations.is-loaded .hero-particles-container,
.has-animations.is-loaded .hero .mockup-bg {
	-webkit-animation: heroFadeIn .6s ease forwards .45s;
	animation: heroFadeIn .6s ease forwards .45s
}

.has-animations.is-loaded .hero-title {
	-webkit-animation: heroContent 0.6s cubic-bezier(0.215, 0.61, 0.355, 1) forwards 0.15s;
	animation: heroContent 0.6s cubic-bezier(0.215, 0.61, 0.355, 1) forwards 0.15s
}

.has-animations.is-loaded .hero-paragraph {
	-webkit-animation: heroContent 0.6s cubic-bezier(0.215, 0.61, 0.355, 1) forwards 0.3s;
	animation: heroContent 0.6s cubic-bezier(0.215, 0.61, 0.355, 1) forwards 0.3s
}

.has-animations.is-loaded .hero-cta {
	-webkit-animation: heroContent 0.6s cubic-bezier(0.215, 0.61, 0.355, 1) forwards 0.45s;
	animation: heroContent 0.6s cubic-bezier(0.215, 0.61, 0.355, 1) forwards 0.45s
}

.has-animations.is-loaded .hero .device-mockup {
	-webkit-animation: heroMockup .6s ease forwards .6s;
	animation: heroMockup .6s ease forwards .6s
}

@-webkit-keyframes heroBg {
	from {
		-webkit-transform: scaleY(0) scaleX(1.2) skewY(30deg);
		transform: scaleY(0) scaleX(1.2) skewY(30deg);
		opacity: 1
	}

	to {
		-webkit-transform: scaleY(1) scaleX(1) skewY(0);
		transform: scaleY(1) scaleX(1) skewY(0);
		opacity: 1
	}
}

@keyframes heroBg {
	from {
		-webkit-transform: scaleY(0) scaleX(1.2) skewY(30deg);
		transform: scaleY(0) scaleX(1.2) skewY(30deg);
		opacity: 1
	}

	to {
		-webkit-transform: scaleY(1) scaleX(1) skewY(0);
		transform: scaleY(1) scaleX(1) skewY(0);
		opacity: 1
	}
}

@-webkit-keyframes heroContent {
	from {
		-webkit-transform: translateY(40px) skewY(2deg);
		transform: translateY(40px) skewY(2deg);
		opacity: 0
	}

	to {
		-webkit-transform: translateY(0) skewY(0);
		transform: translateY(0) skewY(0);
		opacity: 1
	}
}

@keyframes heroContent {
	from {
		-webkit-transform: translateY(40px) skewY(2deg);
		transform: translateY(40px) skewY(2deg);
		opacity: 0
	}

	to {
		-webkit-transform: translateY(0) skewY(0);
		transform: translateY(0) skewY(0);
		opacity: 1
	}
}

@-webkit-keyframes heroMockup {
	from {
		-webkit-transform: translateY(80px);
		transform: translateY(80px);
		opacity: 0
	}

	to {
		-webkit-transform: translateY(0);
		transform: translateY(0);
		opacity: 1
	}
}

@keyframes heroMockup {
	from {
		-webkit-transform: translateY(80px);
		transform: translateY(80px);
		opacity: 0
	}

	to {
		-webkit-transform: translateY(0);
		transform: translateY(0);
		opacity: 1
	}
}

@-webkit-keyframes heroFadeIn {
	from {
		opacity: 0
	}

	to {
		opacity: 1
	}
}

@keyframes heroFadeIn {
	from {
		opacity: 0
	}

	to {
		opacity: 1
	}
}

.mockup-container {
	position: relative
}

.mockup-bg {
	pointer-events: none
}

.mockup-bg img,
.mockup-bg svg {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	width: auto !important;
	height: auto;
	max-width: 300% !important
}

.device-mockup {
	position: relative;
	width: 350px;
	height: auto;
	margin: 0 auto;
	z-index: 1
}

.has-animations .features-extended {
	opacity: 0
}

.has-animations.is-loaded .features-extended {
	opacity: 1
}

.features-extended-header {
	margin-bottom: 32px
}

.features-extended-wrap {
	display: flex;
	flex-wrap: wrap;
	margin-top: -24px
}

.features-extended-wrap:last-of-type {
	margin-bottom: -24px
}

.features-extended-wrap:not(:last-of-type) {
	margin-bottom: 24px
}

.feature-extended {
	padding: 24px 0
}

.feature-extended-image {
	position: relative;
	margin-bottom: 32px
}

.feature-extended-image img,
.feature-extended-image svg {
	width: 100%;
	max-width: 296px;
	height: auto;
	margin-left: auto;
	margin-right: auto;
	overflow: visible
}

.feature-extended-body {
	text-align: center
}

@media (min-width: 641px) {
	.features-extended .container {
		max-width: 912px
	}

	.features-extended .section-inner {
		padding-bottom: 128px
	}

	.features-extended .section-paragraph {
		padding-left: 72px;
		padding-right: 72px;
		margin-bottom: 0
	}

	.features-extended-header {
		margin-bottom: 80px
	}

	.features-extended-wrap {
		margin-top: -64px
	}

	.features-extended-wrap:last-of-type {
		margin-bottom: -64px
	}

	.features-extended-wrap:not(:last-of-type) {
		margin-bottom: 64px
	}

	.feature-extended {
		display: flex;
		flex-wrap: nowrap;
		align-items: stretch;
		justify-content: flex-end;
		padding: 64px 0
	}

	.feature-extended .feature-extended-image {
		width: 440px;
		margin-right: 96px;
		margin-bottom: 0
	}

	.feature-extended .feature-extended-image img,
	.feature-extended .feature-extended-image svg {
		width: auto
	}

	.feature-extended .feature-extended-image img.device-mockup,
	.feature-extended .feature-extended-image svg.device-mockup {
		max-width: 296px
	}

	.feature-extended:nth-child(even) {
		justify-content: flex-start
	}

	.feature-extended:nth-child(even) .feature-extended-image {
		order: 1;
		margin-left: 96px;
		margin-right: 0
	}

	.feature-extended-body {
		display: flex;
		flex-direction: column;
		justify-content: center;
		flex-shrink: 0;
		width: 360px;
		text-align: left
	}
}

@media (min-width: 1025px) {
	.features-extended .container {
		max-width: 944px
	}

	.feature-extended .feature-extended-image {
		margin-right: 64px
	}

	.feature-extended:nth-child(even) .feature-extended-image {
		margin-left: 64px
	}

	.feature-extended-body {
		width: 392px
	}
}

.cta .section-paragraph {
	margin-bottom: 32px
}

@media (min-width: 641px) {
	.cta .section-paragraph {
		margin-bottom: 32px;
		padding-left: 72px;
		padding-right: 72px
	}
}

.is-boxed {
	background: #fff
}

.body-wrap {
	background: #fff;
	overflow: hidden;
	display: flex;
	flex-direction: column;
	min-height: 100vh
}

.boxed-container {
	/*max-width: 1440px;*/
	margin: 0 auto;
	box-shadow: 0 20px 48px rgba(22, 30, 42, 0.16)
}

main {
	flex: 1 0 auto
}

.section-inner {
	position: relative;
	padding-top: 48px;
	padding-bottom: 48px
}

@media (min-width: 641px) {
	.section-inner {
		padding-top: 88px;
		padding-bottom: 88px
	}
}

.site-footer {
	position: relative;
	background: #0B0D19
}

.site-footer::before {
	content: '';
	position: absolute;
	top: -76px;
	left: calc(50% - 360px);
	width: 720px;
	height: 291px;
	background-image: url("../images/footer-bg.svg");
	background-size: 720px 291px;
	background-repeat: no-repeat
}

.site-footer .footer-particles-container {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0
}

.site-footer-bottom {
	font-size: 14px;
	line-height: 22px;
	letter-spacing: 0px;
	z-index: 1
}

.site-footer-bottom a {
	color: #606483;
	text-decoration: none
}

.site-footer-bottom a:hover,
.site-footer-bottom a:active {
	text-decoration: underline
}

.site-footer-inner {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	padding-top: 48px;
	padding-bottom: 48px;
	position: relative
}

.site-footer-inner::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	display: block;
	height: 1px;
	background: #1E233D
}

.footer-brand,
.footer-links,
.footer-social-links,
.footer-copyright {
	flex: none;
	width: 100%;
	display: inline-flex;
	justify-content: center
}

.footer-brand,
.footer-links,
.footer-social-links {
	margin-bottom: 24px
}

.footer-links li+li,
.footer-social-links li+li {
	margin-left: 16px
}

.footer-social-links li {
	display: inline-flex
}

.footer-social-links li a {
	padding: 8px
}

@media (min-width: 641px) {
	.site-footer::before {
		top: -152px;
		left: calc(50% - 720px);
		width: 1440px;
		height: 582px;
		background-size: 1440px 582px
	}

	.site-footer-inner {
		justify-content: space-between;
		padding-top: 64px;
		padding-bottom: 64px
	}

	.footer-brand,
	.footer-links,
	.footer-social-links,
	.footer-copyright {
		flex: 50%
	}

	.footer-brand,
	.footer-copyright {
		justify-content: flex-start
	}

	.footer-links,
	.footer-social-links {
		justify-content: flex-end
	}

	.footer-links {
		order: 1;
		margin-bottom: 0
	}
}
