html, body {
	position: relative;
}

html.ua-ios-safari { /* to fix background-attachment: fixed; on iOS Safari */
	height: 100vh;
	min-height: 100%;
}

body {
	background-color: #000 !important;
	background-image: url('spotlight-top.jpg');
	background-repeat: no-repeat;
	background-size: cover;
	background-size: min(1920px, 100vw);
	background-position: top center;
	background-attachment: scroll;
	color: #fff;
	font-family: "Karla", "Roboto", "Helvetica", sans-serif !important;
}

#page-wrapper > *:last-child::after {
	content: " ";
	display: block;
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100vw;
	min-width: 100%;
	height: 2em;
	z-index: 999;
	background: linear-gradient(0deg, #000 0%, rgba(0,0,0,0.75) 15%, rgba(0,0,0,0.5) 35%, rgba(0,0,0,0.25) 60%, rgba(0,0,0,0) 100%);
	pointer-events: none;
}

#landing + section:after {
	content: " ";
	display: block;
	margin: 1rem auto 0 auto;
	width: 6rem;
	height: 6rem;
	box-sizing: content-box;
	background-position: center !important;
	background-size: contain !important;
	background-repeat: no-repeat !important;
	background: url(../02._theme/focus-x.png);
	background: url(../02._theme/focus-x.svg), linear-gradient(transparent, transparent);
	transform: rotate(-32.8deg);
}

#landing + section > .container > .columns > .column:first-child {
	display: none !important;
}
#landing + section > .container > .columns > .column:last-child {
	width: 100% !important;
	padding-bottom: 0;
	text-align: center;
}

#theme + section h1, #theme + section h2, #theme + section h3, #theme + section h4, #theme + section h5, #theme + section h6 {
	font-weight: 300 !important;
	font-size-adjust: 0.6;
	font-size: 0.8rem;
	color: #02acee;
}

#theme + section h1 {
	font-size: 1.2rem;
	font-weight: 400 !important;
	width: 82%;
	max-width: 600px;
	margin-left: auto;
	margin-right: auto;
	padding-bottom: 1.5rem;
}

#theme + section h2 {
	text-transform: uppercase;
}

@media screen and (min-width: 481px) {
	#theme + section h1, #theme + section h2, #theme + section h3, #theme + section h4, #theme + section h5, #theme + section h6 {
		font-size: calc(16px + 20 * ((100vw - 480px)/ 800));
		border-bottom-width: 0.2rem;
	}

	#theme + section h1 {
		font-size: calc(30px + 20 * ((100vw - 480px)/ 800));
	}
}
@media screen and (min-width: 720px) {
	#theme + section h1, #theme + section h2, #theme + section h3, #theme + section h4, #theme + section h5, #theme + section h6 {
		border-bottom-width: 4px;
	}
}
@media screen and (min-width: 1280px) {
	#theme + section h1, #theme + section h2, #theme + section h3, #theme + section h4, #theme + section h5, #theme + section h6 {
		font-size: 1.8rem;
	}

	#theme + section h1 {
		font-size: 2.5rem;
	}
}

#theme + section > .container > .columns > .column:first-child {
	width: 100% !important;
	text-align: center;
}
#theme + section > .container > .columns > .column:last-child {
	display: none !important;
}

.feature-content {
	font-weight: bold;
	color: #d4d4d4 !important;
}

h1, h2, h3, h4, h5, h6 {
	font-family: "Karla", "Roboto", "Helvetica", sans-serif !important;
	margin-top: 1rem;
	color: #fff;
}

h1, h2, h3 {
	color: #02acee !important;
}

h2 {
	margin-top: 1.2rem;
	margin-bottom: 0.25em;
}

h2:first-child {
	margin-top: 0;
	margin-bottom: 0.5em;
}

h4 {
	font-weight: 400;
}

h5 {
	font-weight: 300;
}

h6 {
	font-weight: 200;
}

h1 + h2, h1 + h3, h1 + h4, h1 + h5, h1 + h6,
h2 + h3, h2 + h4, h2 + h5, h2 + h6,
h3 + h4, h3 + h5, h3 + h6,
h4 + h5, h4 + h6,
h5 + h6 {
	margin-top: 0;
}

a {
	color: #d4d4d4 !important;
	text-decoration: none !important;
}

h2 > a {
	color: #02acee !important;
}

a:hover:not(.register) {
	color: #fff !important;
	text-decoration: underline !important;
	text-decoration-color: #02acee !important;
}

p a {
	font-weight: 500;
}

.qr-code::before {
	content: "\a0";
	display: block;
	background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABIgAAASIAgMAAAAFQhxQAAAACVBMVEUAAJ0AAAD///8NwtguAAAAAXRSTlMAQObYZgAAAAFiS0dEAIgFHUgAAAAJcEhZcwAAimkAAIppAbFlszIAAAZNSURBVHja7dyxccNADEVBxey/AMWq0h2cPwQcSZv7QmnIA1bpjV4vSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkabjPSOn70gnOnRkRIkSIECFChAgRIkSIECFChAgRIkSIECFChAgRIkSIECFChAgRIkSIECFChAgRIkSI7kjUGRrRfYne1Yv/x/VEMzMjQoQIESJEiBAhQoQIESJEiBAhQoQIESJEiBAhQoQIESJEiBAhQoQIESJEiBAhehpRuOYvRClH5+LyzMyIECFChAgRIkSIECFChAgRIkSIECFChAgRIkSIECFChAgRIkSIECFChAgRIkSIECFCdCZRffU1x7kzI0KECBEiRIgQIUKECBEiRIgQIUKECBEiRIgQIUKECBEiRIgQIUKECBEiRIgQIUKECNH+49YLdzgQIUKECBEiRIgQIUKECBEiRIgQIUKECBEiRIgQIUKECBEiRIgQIUKECBEiRIgQIUKE6D5EYUd9zbTrZ0aECBEiRIgQIUKECBEiRIgQIUKECBEiRIgQIUKECBEiRIgQIUKECBEiRIgQIUL0/4g6XUW0b2ZEVxKd+xkiRIgQIUKECBEiRIgQIUKECBEiRIgQIUKECBEiRIgQIUKECBEiRIgQIUKECBEiRIgQ7SfaVzrM7RdBhAgRIkSIECFChAgRIkSIECFChAgRIkSIECFChAgRIkSIECFChAgRIkSIECFChAjRw4nWw0xf/U6vtaeX1Nffjt/eR4QIESJEiBAhQoQIESJEiBAhQoQIESJEiBAhQoQIESJEiBAhQoQIESJEiBAhQoQIEaLiZ+ly9TrkQzCIECFChAgRIkSIECFChAgRIkSIECFChAgRIkSIECFChAgRIkSIECFChAgRIkSIECFC9PXq08Osf5D6m9ONECFChAgRIkSIECFChAgRIkSIECFChAgRIkSIECFChAgRIkSIECFChAgRIkSIECFChGh2wM4T9QE7b5n+CREhQoQIESJEiBAhQoQIESJEiBAhQoQIESJEiBAhQoQIESJEiBAhQoQIESJEiBAhQvR0os4hdcoZjs7CiBAhQoQIESJEiBAhQoQIESJEiBAhQoQIESJEiBAhQoQIESJEiBAhQoQIESJEiBAhQlQlStdMF0mxOk/MQCNChAgRIkSIECFChAgRIkSIECFChAgRIkSIECFChAgRIkSIECFChAgRIkSIECFChAjRLFHn4PqAHdQ0RIgQIUKECBEiRIgQIUKECBEiRIgQIUKECBEiRIgQIUKECBEiRIgQIUKECBEiRIgQIdo/TAcmffMMVufnQoQIESJEiBAhQoQIESJEiBAhQoQIESJEiBAhQoQIESJEiBAhQoQIESJEiBAhQoQIEaJZhE+59Iz6++qnIUKECBEiRIgQIUKECBEiRIgQIUKECBEiRIgQIUKECBEiRIgQIUKECBEiRIgQIUKECNH+Oot0lkOECBEiRIgQIUKECBEiRIgQIUKECBEiRIgQIUKECBEiRIgQIUKECBEiRIgQIUKECBGi/VfTO61HTc+tr945FxEiRIgQIUKECBEiRIgQIUKECBEiRIgQIUKECBEiRIgQIUKECBEiRIgQIUKECBEiRIjuSLR+Ij1jaHVEG4je1UcPRIgQIUKECBEiRIgQIUKECBEiRIgQIUKECBEiRIgQIUKECBEiRIgQIUKECBEiRIj+JlE46pEunBLV2eoX3FtX0xEhQoQIESJEiBAhQoQIESJEiBAhQoQIESJEiBAhQoQIESJEiBAhQoQIESJEiBAhQoRoO9Grekbr778RIUKECBEiRIgQIUKECBEiRIgQIUKECBEiRIgQIUKECBEiRIgQIUKECBEiRIgQIUKE6I5E9QHrlHVyRIgQIUKECBEiRIgQIUKECBEiRIgQIUKECBEiRIgQIUKECBEiRIgQIUKECBEiRIgQIZolCjsuG7qMjwgRIkSIECFChAgRIkSIECFChAgRIkSIECFChAgRIkSIECFChAgRIkSIECFChAhRL0SIJonOgE43qn+LCBEiRIgQIUKECBEiRIgQIUKECBEiRIgQIUKECBEiRIgQIUKECBEiRIgQIUKECBEiRJIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSZIkSdLX/QB5Gst6zCG5tgAAAABJRU5ErkJggg==");
	/*background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAABIgAAASIAQMAAABC4maAAAAABlBMVEX///8AAABVwtN+AAADhUlEQVR42uzcsQ2DQBBEUST335M7O2cO0CxwWhACvR8RwNwrAN0iSZIkSZIkSZIkSZIkSZIkSTq7sV96Lw3MLxMRERERERERERERERERERERERERERFdK0qYd4u+S+7TFdXLRERERERERERERERERERERERERERE4btw5kqUHSO0vUxERERERERERERERERERERERERERER0iejf0X+biYiIiIiIiIiIiIiIiIiIiIiIiIiIiG4SrQ7edhARERERERERERERERERERERERERERE1Rf17SkbV0WUiIiIiIiIiIiIiIiIiIiIiIiIiIqK4X9UV1b1RNPVERERERERERERERERERERERERERERE1BC1SzOdQ4hSRERERERVRERERERVRERERERVRERERERVjxTN39m9eyFKHk3zRERERERERERERD927NgIQBgGgmD/XZMR+Sw0pPuRQSP/xiYiIiIiIiIiIiIiItqIDqds79zlJwwRERERERERERERERERERERERERERHRIPr5wr55Pu8iIiIiIiIiIiIiIiIiIiIiIiIiIiIiohTNF/bgzarz5CUiIiIiIiIiIiIiIiIiIiIiIiIiIiIaRWnr7B33YiIiIiIiIiIiIiIiIiIiIiIiIiIiIqJBFI68JljT4AOaiIiIiIiIiIiIiIiIiIiIiIiIiIiIaC2al/vfQK0QERERERERERERERERERERERERERERbUQfbOm9n/KTiIiIiIiIiIiIiIiIiIiIiIiIiIiI6Ieop4fExiHBIiIiIiIiIiIiIiIiIiIiIiIiIiIiIhpE23TJXEdERERERERERERERERERERERERERES0Fs1NXZy70T7tEhERERERERERERERERERERERERE97dwxCoBADEXBwvvfyaPZWeUTAkZYmNeK2amXJUREq6L8lHx0+kmiO3y8iIiIiIiIiIiIiIiIiIiIiIiIiIiI/hMVoytRv8I7V11YExERERERERERERERERERERERERERES2I8uhMfSMiIiIiIiIiIiIiIiIiIiIiIiIiIiLaF+WBSZnlRERERERERERERERERERERERERERERK1ovgFlPjrziYiIiIiIiIiIiIiIiIiIiIiIiIiI0i85oolohu7XehMRERERERERERERERERERERERERERElkSRJkiRJkiRJkiRJkiRJkiTp4x5jD3OxtqpsywAAAABJRU5ErkJggg==");*/
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
}

a.register {
	position: relative;
	display: inline-block;
	padding: 0.6rem 1.2rem;
	font-family: "Roboto", "Helvetica", sans-serif !important;
	font-size: 2.3rem;
	font-weight: 600;
	border-radius: 1em;
	background: #02acee;
	background: linear-gradient(160deg, #02acee 10%, #ffffff 30%, #02acee 80%);
	background-clip: text;
	-webkit-background-clip: text;
	color: transparent !important;
	text-fill-color: transparent;
	-webkit-text-fill-color: transparent;
}

a.register::before {
	content: " ";
	position: absolute;
	z-index: -1;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 0.1em solid transparent;
	border-radius: 1em;
	background: linear-gradient(to right, black, black), linear-gradient(160deg, #02acee 10%, #ffffff 30%, #02acee 80%);
	background-clip: padding-box, border-box;
	background-origin: padding-box, border-box;
}

a.register:hover::before {
	filter: drop-shadow(0 0 0.2em #02acee);
}

.bg-gray {
	background: transparent !important;
}

.modular-text {
	padding-top: 1rem;
	padding-bottom: 1rem;
}

.feature-content > p {
	font-size: larger;
	margin: 0;
	color: rgba(255,255,255,0.5);
}

.modular-features .frame-box {
	padding: 1rem 0;
}

.modular-features .feature-icon {
	color: #fff;
}

.modular-text:first-of-type .column:first-of-type {
	display: none;
}

@media screen and (min-width: 841px) {
	.modular-text:first-of-type .column:last-of-type {
		width: 100%;
		padding: 4rem 0;
	}
}

.modular-text h2 {
	color: #02acee !important;
}

.modular-text h2, .modular-text h3, .modular-text h4, .modular-text h5 {
	text-align: center;
}

.modular-text p {
	font-size: larger;
	font-weight: 200;
	text-align: justify;
}

.tagline::before {
	content: " ";
	display: block;
	background-image: url(../02._theme/separator.png);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	height: 6rem;
	margin-bottom: 1em;
}

.modular-text p.tagline {
	font-weight: 400;
	text-align: center;
	margin-top: -1em;
	margin-bottom: 1.5em;
	color: #fff;
}

@media screen and (min-width: 481px) {
	.modular-text p.tagline {
		font-size: calc(24px + 4 * ((100vw - 480px)/ 800));
	}
}
@media screen and (min-width: 1280px) {
	.modular-text p.tagline {
		font-size: 30px;
	}
}
