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: 100%;
	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: #0B0D19;
	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
	}
}

.tlinks
{
	text-indent: -9999px;
	height: 0;
	line-height: 0;
	font-size: 0;
	overflow: hidden;
}
