body {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	height: 100vh;
	width: 100vw;
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	background-color: rgb(42, 37, 31);
}

main {
	position: relative;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	height: 100vh;
	width: 100%;
}

main video {
	width: 39rem;
	height: 100%;
	object-fit: cover;
}

main .content {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	color: #fff;
	text-align: center;
	width: 39rem;
}

main .caption {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
	padding-bottom: 1rem;
}

main .caption h4 {
	color: #428bca;
	font-size: 2.5rem;
	margin: 0;
}

main .caption h5 {
	font-size: 2.25rem;
	font-weight: 400;
	margin: 0;
}

main .content p {
	font-size: 1.5rem;
	margin: 0.5rem 0;
}

[class^="landing"] {
	display: none;
}

[class^="landing"].active {
	display: flex;
	flex-direction: column;
	align-items: center;
}

main .actions {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 1rem;
	padding: 2rem;
	width: 90%;
}

main .actions.column {
	flex-direction: column;
	width: 80%;
}

main .actions.column span {
	align-self: flex-start;
	cursor: pointer;
}

main .actions.column span:hover {
	opacity: 0.75;
	transition: opacity 0.3s ease-in-out;
}

main .content button.btn-play {
	position: relative;
	display: block;
	width: 10rem;
	height: 10rem;
	background: #3b3b3b99;
	border-radius: 50%;
	border: none;
	cursor: pointer;
}

main .content button.btn-play:before {
	position: absolute;
	content: " ";
	top: 50%;
	left: 50%;
	transform: translate(-32%, -50%);
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 43px 0 43px 65px;
	border-color: transparent transparent transparent #328bca;
}

main .content button.btn-play:hover {
	opacity: 0.75;
	transition: opacity 0.3s ease-in-out;
}

main .actions .btn-gray {
	padding: 10px 30px;
	min-width: 200px;
	width: auto;
	min-height: 56px;
	border: 1px solid #939393;
	background: #939393;
	font-size: 20px;
	color: #fff;
	border-radius: 0.5rem;
	cursor: pointer;
	font-weight: 700;
}

main .actions .btn-blue {
	padding: 10px 30px;
	min-width: 200px;
	width: auto;
	min-height: 56px;
	border: 1px solid #428bca;
	font-size: 20px;
	color: #fff;
	border-radius: 0.5rem;
	cursor: pointer;
	background: #428bca;
	font-weight: 700;
}

main .actions .btn-blue.next {
	width: 100%;
	border-radius: 0.5rem;
	font-weight: 500;
}

main .accept-btn {
	margin: 30px 0 0 0;
	padding: 10px 30px;
	min-width: 200px;
	width: auto;
	min-height: 56px;
	border: 1px solid #428bca;
	font-size: 20px;
	color: #fff;
	border-radius: 0.5rem;
	cursor: pointer;
	background: #428bca;
	font-weight: 500;
}

main .accept-btn:hover {
	opacity: 0.75;
	transition: opacity 0.3s ease-in-out;
}

main form {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 1rem;
	width: 100%;
	height: 100%;
	padding: 1rem;
}

main select,
input {
	background-color: transparent;
	color: #fff;
	border: 0.1rem solid #fff;
	border-radius: 0.3rem;
	font-size: 1.3rem;
	padding: 0.3rem 0.5rem;
	outline: none;
	cursor: pointer;
}

main select option {
	color: #428bca;
}

main .inputs-wrapper {
	display: flex;
	gap: 1rem;
	width: 70%;
}

main .inputs-wrapper input:first-child {
	width: 7rem;
}

main .actions .btn-blue.next:hover {
	opacity: 0.75;
	transition: opacity 0.3s ease-in-out;
}

.bold {
	font-weight: bolder !important;
}

.blur {
	-webkit-filter: blur(5px) !important;
	filter: blur(5px) !important;
	-webkit-transition: -webkit-filter 0.3s ease-in-out;
	transition: filter 0.2s ease-out;
}

@media (orientation: portrait) {
	main video {
		width: 100%;
		height: 100%;
	}
	main .content {
		width: 100%;
	}

	main .actions {
		flex-direction: column-reverse;
	}

	main form {
		flex-direction: column;
	}

	main .inputs-wrapper {
		flex-direction: column;
	}
}
