.section-festival-app-hero {
	padding: 0;

	&.fullscreen {
		padding-top: 20px;
		padding-bottom: 0;
		min-height: 100vh;

		@media @bp_360 {
			padding: 0;
			display: flex;
			margin-top: -40px;
		}

		@media @bp_768 {
			//min-height: calc(~'100vh - 70px');
			margin-top: -70px;
		}

		@media @bp_1024 {
		}
		
		@media @bp_1200 {
			margin-top: -90px;
		}

		> .page-wrapper {
			padding-top: 40px;
			margin: 0 auto;
			width: 100%;

			@media @bp_360 {
				display: flex;
				flex-direction: column;
			}

			@media @bp_1024 {
				justify-content: center;
			}

			> .page {
				display: flex;
				flex: 1 1 auto;
				align-items: center;
			}
		}
	}

	.section-main {

		@media @bp_1024 {
			width: 100%;
			display: flex;
			flex-direction: row;
		}
	}

	.col {
		padding: 20px 0;

		@media @bp_1024 {
			padding: 0;
			display: flex;
			align-items: center;
			position: relative;
		}
	}

	.col-1 {
		@media @bp_1024 {
			justify-content: flex-end;
			order: 2;
			width: 50%;
		}

		article {
			padding: 0;
			text-align: center;

			@media @bp_768 {
				padding: 30px 30px 0 30px;
			}

			@media @bp_1024 {
				padding: 60px 30px;
				text-align: left;
			}
		}

		img {
			max-width: 200px;

			@media @bp_768 {
				max-width: 400px;
			}

			@media @bp_1024 {
				max-width: 100%;
			}
		}
	}

	.col-2 {
		padding-top: 0;
		text-align: center;

		@media @bp_1024 {
			order: 1;
			display: flex;
			justify-content: flex-start;
			align-items: center;
			width: 50%;
			text-align: left;
		}

		article {
			width: 100%;

			@media @bp_768 {
				padding-bottom: 0px;
			}

			@media @bp_1024 {
				max-width: 70%;
				text-align: left;
			}
		}
	}

	h2 {
		.font-size(28);
		line-height: 35px;
		font-weight: 500;

		@media @bp_1024 {
			.font-size(34);
			line-height: 40px;
		}

		@media @bp_1200 {
			.font-size(42);
			line-height: 49px;
			text-align: left;
		}

		br {
			display: none;

			@media @bp_1024 {
				display: block;
			}
		}
	}

	p {
		.font-size(14);
		line-height: 20px;
		font-weight: 400;
		text-align: center;
		padding: 0;

		@media @bp_768 {
			.font-size(20);
			line-height: 28px;
		}

		@media @bp_1024 {
			text-align: left;
		}
	}

	.logos {
		background-color: @white;
		padding-bottom: 30px;

		@media @bp_360 {
			display: flex;
			flex: 1;
			align-items: center;
			padding: 0 0 60px 0;
		}

		@media @bp_768 {
			padding: 30px 0 60px 0;
		}

		.page {
			width: 100%;
		}
	}

	.btn-solid {
		width: 260px;
		margin-top: 10px;
	}
}