html, body {
	position: relative;
}

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

body {
	font-family: "Nunito Sans", "Roboto", system-ui, sans-serif !important;
	background-color: #f58664 !important;
	/*background-image: url('unfocused.jpg');*/
	background-repeat: no-repeat;
	background-size: cover;
	background-position: top center;
	background-attachment: fixed;
	color: #99121f;
}

.ua-ios-safari body {
	background: #f58664;
	background-attachment: scroll;
}

.ua-ios-safari body > *:first-child::before {
	content: " ";
	display: block;
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	min-width: 100%;
	height: 100vh;
	min-height: 100%;
	z-index: -1;
	/*background-image: url('unfocused.jpg');*/
	background-repeat: no-repeat;
	background-size: cover;
	background-position: top center;
	pointer-events: none;
}

#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, rgba(245,134,100,1) 0%, rgba(245,134,100,0.75) 15%, rgba(245,134,100,0.5) 35%, rgba(245,134,100,0.25) 60%, rgba(245,134,100,0) 100%);
	pointer-events: none;
}

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

.feature-content {
	font-weight: 700;
	color: #99121f !important;
}

h1, h2, h3, h4, h5, h6 {
	font-family: "Nunito Sans", "Roboto", system-ui, sans-serif !important;
	margin-top: 1rem;
	color: #99121f;
}

h1, h2, h3 {
	color: #ef3e36 !important;
	font-weight: 700;
}

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

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

h4 {
	font-weight: 600;
}

h5 {
	font-weight: 500;
}

h6 {
	font-weight: 400;
}

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: #99121f !important;
	text-decoration: none !important;
}

a:hover {
	color: #000 !important;
}

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

p a {
	font-weight: 700;
}

.qr-code::before {
	content: "\a0";
	display: block;
	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.3em 0.6em;
	font-size: 1.5em;
	font-weight: 900;
	font-family: "Nunito Sans", "Roboto", system-ui, sans-serif !important;
	border-radius: 1em;
	background: #f58664;
	background: linear-gradient(160deg, #99121f 30%, #ef3e36 60%, #99121f 90%);
	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, #f58664, #f58664), linear-gradient(160deg, #ef3e36 30%, #ed6d5a 60%, #99121f 90%);
	background-clip: padding-box, border-box;
	background-origin: padding-box, border-box;
}

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

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

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

.feature-content > p {
	font-size: larger;
	margin: 0;
	color: 99121f;
}

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

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

.modular-features .column:hover .feature-icon {
	color: #ef3e36;
}

.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: #ef3e36 !important;
}

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

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

.modular-text p.tagline {
	font-size: 24px;
	font-weight: 600;
	text-align: center;
	margin-top: -1em;
	margin-bottom: 1.5em;
	color: 99121f;
}

@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;
	}
}
