.fvbanner {
	display: none;
	&:first-child {
		display: block;
	}

	&.fvbanner-mobile {
		display: none;
	}

	@block: fvbanner;

	@imgpath: ~"content/images/external/";

	.mixin-layout-a () {
		.mixin-layout(@block, 56%, 44%);
	}

	.mixin-layout-b () {
		.mixin-layout(@block, 42%, 58%);
	}

	.mixin-candidate () {
		display: block;
		position: relative;

		> img {
			position: absolute;
			width: 100%;
			height: 100%;
		}

		&:after {
			content: "";
			display: block; 
			padding-bottom: 100%;
		}

		.@{block}__party-letter {
			position: absolute;
			top: 0;
			right: 0;
			z-index: 1;
		}
	}

	[class*="dr-icon"]:before {
		font-family: "dr-icons";
		content: " ";
		display: inline-block;
		min-width: 16px;
		font-size: 16px;
		line-height: 1;
		margin-right: 5px;
		vertical-align: text-bottom;
		color: #7f7f7f;
		color: rgba(0,0,0,0.5);
		border-radius: 2px;
		-webkit-font-smoothing: antialiased;
	}

	background: #668289 url("@{imgpath}fvbanner-extended-bg.jpg") repeat-x;
	position: relative;
	overflow: hidden;

	&:after {
		content: "";
		display: block;
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		background: transparent url("@{imgpath}fvbanner-bg.jpg") right top no-repeat;
		z-index: 0;
	}

	*,
	a:link,
	a:hover,
	a:active,
	a:visited {
		color: #FFF;
	}

	a img {
		border: 0;
	}

	h3, h4 {
		text-transform: uppercase;
		font: normal 16px/1 @font-semibold;
		overflow: hidden;
		white-space: nowrap;
		text-overflow: ellipsis;

		span {
			font-family: @font-regular;
		}
	}

	h4 {
		font-family: @font-regular;
		font-size: 12px;
		margin-top: 4px;
	}

	&__wrapper {
		position: relative;
		max-width: 1220px;
		margin: 0 auto;
		z-index: 1;
		.mixin-clear;

		> div {
			padding: 14px;
			height: 150px;
		}
	}

	.mixin-party-letters(@block);


	.block-container {
		display: inline-block;
		height: 106px;
		margin-left: 20px;
		margin-right: 20px;
		position: relative;
		.party-leader {
			display: inline-block;
			width: 120px;
			height: 120px;
			background-size: 100% 100%;
			position: relative;
			bottom: -14px;
			&.left {
				background: transparent url("@{imgpath}helle.png") no-repeat bottom left;
				background-size: 100% 100%;
			}
			&.right {
				background: transparent url("@{imgpath}lars.png") no-repeat bottom left;
				background-size: 100% 100%;
			}
		}
		.block {
			display: inline-block;
			width: 50px;
			height: 70px;
			position: relative;
			.bar {
				position: absolute;
				width: 100%;
				bottom: 0;
				.count {
					position: absolute;
					margin-top: -24px;
					font: 18px/1 "gibsonLight", "Arial", sans-serif;
					text-align: center;
					width: 100%;
				}
			}

			&.left {
				.bar {
					background-color: #b32722;
				}
			}
			&.right {
				.bar {
					background-color: #234263;
				}
			}
		}
		.divider {
			display: inline-block;
			height: 106px;
			width: 1px;
			background-color: #FFF;
			background-color: rgba(255, 255, 255, 0.5);
			margin: 0 4px;
		}
	}

	&__button {
		display: inline-block;
		background-color: #000;
		border-radius: 2px;
		color: #fff;
		text-decoration: none;
		text-transform: uppercase;
		text-align: center;
		line-height: 28px;
		padding: 0 20px;
		font-size: 12px;
		height: 28px;
	}

	&__candidates,
	&__candidatesb {
		position: relative;

		&-footer {
			position: absolute;
			margin: 14px;
			bottom: 0;
			left: 0;
			right: 0;
			text-align: right;

			p {
				float: left;
				text-align: left;
			}
		}
	}

	&__candidate-list {
		.mixin-clear;
		overflow: hidden;

		li {
			float: left;
			list-style: none;
			width: 10%;

			a {
				.mixin-candidate;
			}
		}
	}

	&__forecast-blocks {
		height: 175px !important;
		position: relative;

		.block-container {
			margin: 0;
		}

		+ .@{block}__aside {
			height: 175px !important;
		}

		dl {
			position: absolute;
			bottom: 0;
			right: 0;
		}

		dt, dd {
			display: inline-block;
			vertical-align: bottom;
		}

		canvas {
			width: 50px;
			height: 50px;
			float: left;
			margin-top: 50px;
		}

		.@{block}__button {
			position: absolute;
			right: 14px;
			top: 14px;
		}

		.@{block}__votes {
			font: 48px/1 @font-light;
			margin-top: 50px;
			width: 95px;
			float: left;
		}
	}


	&__block {
		text-indent: -9999px;
		width: 130px;
		height: 130px;
		background: transparent url("@{imgpath}helle.png") no-repeat bottom left;
		background-size: 100% 100%;

		+ dd {
			width: 55px;
			font: 18px/1 @font-light;
			text-align: center;

			div {
				margin-top: 5px;
				margin-bottom: 20px;
				display: block;
				background-color: #b32722;
			}
		}

		~ dt {
			background-image: url("@{imgpath}lars.png");
			margin-left: 78px;

			+ dd {
				margin-left: -190px;
				position: relative;

				&:before {
					content: "";
					display: block;
					width: 1px;
					height: 110px;
					background-color: #FFF;
					background-color: rgba(255, 255, 255, 0.5);
					position: absolute;
					left: -11px;
					bottom: 20px;
				}

				div {
					background-color: #234263;
				}
			}
		}
	}
	
	&__forecast-mandates {

		h3 {
			background-color: rgb(56, 94, 105);
			background-color: rgba(56, 94, 105, .9);
			padding: 8px 10px;
			.type {
				padding-left: 5px;
				font-size: 13px;
				position: relative;
				top: -1px;
			}
			.updated-time {
				float: right;
				font-size: 11px;
				position: relative;
				color: #ccc;
				top: 4px;
			}
		}

		ul {

			li {
				list-style: none;
				display: block;
				float: left;
				width: 10%;

				p {
					background-color: #2a302f;
					background-color: rgba(0, 0, 0, 0.5);
					font: 26px/1 @font-light;
					text-align: center;
					padding: 9px 0;

					
				}

				+ li p {
					border-left: 1px solid #000;
				}

				a {
					.mixin-candidate;
				}

			}

		}
	}


	&__forecast-district-votes {

		h3 {
			background-color: rgb(56, 94, 105);
			background-color: rgba(56, 94, 105, .9);
			padding: 8px 10px;
			.type {
				padding-left: 5px;
				font-size: 13px;
				position: relative;
				top: -1px;
			}
			.updated-time {
				float: right;
				font-size: 11px;
				position: relative;
				color: #ccc;
				top: 4px;
			}
		}

		ul {

			li {
				list-style: none;
				display: block;
				float: left;
				width: 10%;
				background-color: #2a302f;
				background-color: rgba(0, 0, 0, 0.5);
				height: 106px;
				position: relative;

				.votes {
					text-align: center;
					padding: 4px 0;
				}

				.bar-container {
					width: 100%;
					height: 50px;
					position: absolute;
					bottom: 20px;
					.bar {
						width: 100%;
						position: absolute;
						bottom: 0;
						padding: 0;
					}
				}

				.party {
					width: 100%;
					height: 20px;
					padding-top: 2px;
					text-align: right;
					padding-right: 5px;
					bottom: 0;
					position: absolute;
					border-top: 2px solid black;
					font-size: 14px;
				}

				+ li {
					border-left: 1px solid #000;
				}

				a {
					.mixin-candidate;
				}

			}

		}
	}


	&__results-blocks {
		position: relative;
		a.all-results {
			position: absolute;
			right: 14px;
			top: 14px;
		}
		h3 {
			.type {
				padding-left: 5px;
				font-size: 13px;
				position: relative;
				top: -1px;
			}
		}
		ul {
			display: inline-block;
			width: 36%;
		}
		li {
			list-style: none;
			display: block;
			float: left;
			width: 20%;
			position: relative;
			height: 100px;

			> div {
				position: absolute;
				bottom: 0;
				width: 100%;
			}
			p {
				font: 14px/1 @font-light;
				text-align: center;
				padding: 6px 0;
			}

			a {
				.mixin-candidate;
			}
		}
	}


	&__results-mandates {
		position: relative;
		a.all-results {
			position: absolute;
			right: 14px;
			top: 14px;
		}
		h3 {
			.type {
				padding-left: 5px;
				font-size: 13px;
				position: relative;
				top: -1px;
			}
		}
		ul {
			li {
				list-style: none;
				display: inline-block;
				width: 10%;
				position: relative;
				height: 106px;
				float: left;

				&:not(:last-child) {
					margin-right: 2.5%;
				}

				> div {
					position: absolute;
					bottom: 0;
					width: 100%;
				}
				&:nth-child(1) {
					width: 10%;
				}
				&:nth-child(2) {
					width: 9.5%;
				}
				&:nth-child(3) {
					width: 9%;
				}
				&:nth-child(4) {
					width: 8.5%;
				}
				&:nth-child(5) {
					width: 8%;
				}
				&:nth-child(6) {
					width: 7.5%;
				}
				&:nth-child(7) {
					width: 7%;
				}
				&:nth-child(8) {
					width: 6.5%;
				}
				&:nth-child(9) {
					width: 6%;
				}
				&:nth-child(10) {
					width: 5.5%;
				}

				p {
					font: 14px/1 @font-light;
					text-align: center;
					padding: 6px 0;
				}

				a {
					.mixin-candidate;
				}

			}
		}
	}

	&__results-district-votes {
		position: relative;
		a.all-elected {
			position: absolute;
			right: 14px;
			top: 14px;
		}
		ul {
			li {
				list-style: none;
				float: left;
				width: 10%;
				position: relative;
				height: 106px;

				> div {
					position: absolute;
					bottom: 0;
					width: 100%;
				}

				p {
					font: 14px/1 @font-light;
					text-align: center;
					padding: 4px 0;
				}

				a {
					.mixin-candidate;
				}

			}
		}
	}

	&__aside {
		display: none;
		background-color: rgba(0, 0, 0, .4);
		.mixin-clear;
	}

	&__video {
		float: left;
		text-align: center;
		position: relative;
		// copy-pasted icon style from global assets
		.dr-icon-play-boxed {
			position: absolute;
			top: 30px;
			color: #fff;
			border-radius: 2px;
			width: 100%;
			&:before {
				content: "\25b6";
				background-color: #ef3f23;
				color: inherit;
				font-size: 38px;
				line-height: 38px;
				height: 38px;
				width: 38px;
				margin: 0
			}
		}

	}

	&__scribble {
		height: 110px;
		margin-left: 212px;
		position: relative;

		> h3 {
			font-size: 18px;
			border-bottom: 1px solid #CCC;
			border-color: rgba(204, 204, 204, 0.5);
			margin: 0 0 10px 0;
			padding-bottom: 10px;
		}

		> span {
			color: #CCC;
			float: left;
			font-size: 12px;
		}

		> p {
			margin-left: 50px;
			font-size: 12px;
			line-height: 14px;
			max-height: 42px;
			overflow: hidden;
			text-overflow: ellipsis;
		}

		> a {
			font-size: 16px;
			position: absolute;
			bottom: 0;
			white-space: nowrap;
			overflow: hidden;
			margin-right: 20px;
			text-overflow: ellipsis;
			max-width: 100%;

			&:before {
				font-family: "dr-icons";
				content: "\f10f";
				display: inline-block;
				min-width: 16px;
				font-size: 16px;
				line-height: 1;
				margin-right: 5px;
				vertical-align: text-bottom;
				background-color: @red;
				color: #FFF;
				border-radius: 2px;
				-webkit-font-smoothing: antialiased;

			}
		}

	}

	&__countdown {
		background-color: #5a8a91;
		background-color: rgba(255, 255, 255, .3);
		height: 110px;
		margin-left: 212px;
		padding: 6px 0;
		text-align: center;

		h4 {
			font: 18px/1 @font-semibold;
			white-space: normal;
			color: #000;
			&.countdown-done {
				display: none;
			}
		}

		@media (min-width: 1035px) {
			display: block;
		}
	}

	&__time {
		margin-top: 10px;
		display: inline-block;
		white-space: nowrap;

		> span {
			display: inline-block;

			> b {
				display: inline-block;
				width: 30px;
				height: 38px;
				background-color: #000;
				color: #FFF;
				font: 26px/1 @font-light;
				padding: 6px 0;
				margin: 1px;
			}

			> i {
				display: block;
				font-size: 12px;
				text-transform: uppercase;
				font-style: normal;
			}

		}

		> i {
			display: inline-block;
			line-height: 38px;
			font-style: normal;
			vertical-align: top;
		}

	}

	.tablet-mixin () {
		h3 {
			font-size: 14px;
			.type {
				display: inline-block;
				padding-left: 5px;
				top: 2åx;
				font-size: 10px;
			}
			.updated-time {
				display: none;
			}
		}

		.block-container {
			margin-top: 14px;
			top: 0;
			.block {
				width: 40px;
				height: 60px;
				.bar {
					.count {
						font-size: 16px;
					}
				}
			}
			.divider {
				height: 80px;
			}
			.party-leader {
				width: 100px;
				height: 100px;
			}
		}

		.@{block}__candidatesb {
			float: left;
			.mixin-layout(@block, 50%, 50%);
		}
		.@{block}__candidates,
		.@{block}__results-blocks,
		.@{block}__results-mandates,
		.@{block}__results-district-votes {
			float: left;
			.mixin-layout(@block, 78%, 22%);
		}

		.@{block}__results-district-votes {
			ul {
				li {
					width: 9%;
				}
			}
		}

		.@{block}__forecast-blocks {
			float: left;
			.mixin-layout(@block, 45.0%, 55.0%);
			.block-container {
				margin-left: -12px;
				margin-right: -12px;
			}
		}
		.@{block}__forecast-district-votes {
			ul {
				li {
					height: 100px;
					.votes {
						font-size: 12px;
					}
				}
			}
		}

		.@{block}__forecast-mandates {
			ul {
				li {
					p {
						font-size: 20px;
					}
				}
			}
		}


		// .@{block}__video {
		// 	left: 50%;
		// 	margin-left: -96px;
		// }

		.@{block}__aside {
			float: left;
			display: block;
		}


		.@{block}__scribble {
			display: none;
		}
	}

	.tablet-portrait-mixin () {
		.@{block}__countdown {
			h4 {
				font-size: 12px;
			}
			.@{block}__time {
				> span {
					> b {
						width: 18px;
						height: 34px;
						font-size: 22px;
					}
					> i {
						font-size: 11px;
					}
				}
			}
		}
		.@{block}__candidates,
		.@{block}__results-blocks,
		.@{block}__results-mandates,
		.@{block}__results-district-votes {
			.mixin-layout(@block, 71%, 29%);
		}
		.@{block}__results-district-votes {
			ul {
				li {
					width: 10%;
				}
			}
		}
		.@{block}__forecast-blocks {
			.block-container {
				margin-left: 30px;
				margin-right: 0;
				.party-leader {
					display: none;
				}
			}
		}
		.@{block}__results-blocks {
			li {
				p {
					font-size: 12px;
				}
			}
		}
	}


	.mobile-mixin () {
		&.fvbanner-desktop {
			display: none !important;
		}
		&.fvbanner-mobile {
			display: block;
			height: 125px;

			&:after {
				background: #668289 url("@{imgpath}banner-bg-mobil.jpg");
				background-size: cover;
			}

			.@{block}__wrapper {
				position: relative;
				width: 100%;
				margin: 0 auto;
				z-index: 1;
				.mixin-clear;

				> div {
					padding: 0;
					height: 125px !important;
				}
			}

			.@{block}__button {
				padding: 0px 10px;
				font-size: 11px;
			}

			.@{block}__candidates {
				position: relative;
				width: 100%;

				&-footer {
					position: absolute;
					margin: 14px;
					bottom: 0;
					left: 0;
					right: 0;
					text-align: right;

					p {
						float: left;
						text-align: left;
					}
				}
			}

			.@{block}__candidates-footer p {
				position: relative;
				top: 3px;
			}

			.@{block}__candidate-list li {
				width: 20%;
				max-width: 64px;
				padding: 4px;
			}

			.@{block}__forecast-blocks {
				width: 100%;

				h3, h4 {
					position: absolute;
					padding: 5px;
					text-transform: uppercase;
					font: normal 16px/1 "gibsonSemiBold", "Arial Black", sans-serif;
					overflow: hidden;
					white-space: nowrap;
					text-overflow: ellipsis;
					z-index: 1;
				}
				h4 {
					font-family: "gibsonRegular", "Arial", sans-serif;
					font-size: 12px;
					margin-top: 16px;
				}

				.@{block}__votes {
				}
				.count-pie {
				}

				.@{block}__button {
					position: relative;
					right: 0;
					top: 0;
					width: 100%;
				}

				.block-container {
					display: block;
					height: 100%;
					width: 90%;
					position: relative;
					margin: 0;
					margin-left: 5%;
					margin-right: 5%;

					.block-aligner {
						position: absolute;
						width: 100%;
						bottom: 0;
						white-space: nowrap;
					}
					.blocks {
						position: absolute;
						right: 0;
						bottom: 10px;
						display: inline-block;
						width: 40%;
					}
					.party-leader {
						display: inline-block;
						width: 30%;
						position: relative;
					}
					.party-leader img {
						width: 100%;
						margin-bottom: -3px;
					}
					.party-leader.left {
					}
					.party-leader.right {
					}
					.block {
						display: inline-block;
						width: 45%;
						height: 35px;
						position: absolute;
						margin-bottom: 36px;
						bottom: 0;
					}
					.block.right {
						right: 0;
					}
					.block .bar {
						position: absolute;
						width: 100%;
						bottom: 0;
					}
					.block .bar .count {
						position: absolute;
						margin-top: -18px;
						font: 16px/1 "gibsonLight", "Arial", sans-serif;
						text-align: center;
						width: 100%;
					}
					.block.left .bar {
						background-color: #b32722;
					}
					.block.right .bar {
						background-color: #234263;
					}
					.divider {
						display: block;
						height: 60px;
						width: 1px;
						background-color: rgba(255, 255, 255, 0.5);
						margin-bottom: 36px;
						position: absolute;
						bottom: 0;
						left: 50%;
						margin-left: 0;
						margin-right: 0;
					}

				}
			}

			.@{block}__results-blocks {
				width: 100%;

				h3, h4 {
					position: absolute;
					padding: 5px;
					text-transform: uppercase;
					font: normal 16px/1 "gibsonSemiBold", "Arial Black", sans-serif;
					overflow: hidden;
					white-space: nowrap;
					text-overflow: ellipsis;
					z-index: 1;
				}
				h4 {
					font-family: "gibsonRegular", "Arial", sans-serif;
					font-size: 12px;
					margin-top: 16px;
				}

				.@{block}__votes {
				}
				.count-pie {
				}

				.@{block}__button {
					position: relative;
					right: 0;
					top: 0;
					width: 100%;
				}

				.block-container {
					display: block;
					height: 100%;
					width: 90%;
					position: relative;
					margin: 0;
					margin-left: 5%;
					margin-right: 5%;

					.block-aligner {
						position: absolute;
						width: 100%;
						bottom: 0;
						white-space: nowrap;
					}
					.blocks {
						position: relative;
						bottom: 0;
						display: inline-block;
						width: 40%;
					}
					.party-leader {
						display: inline-block;
						width: 30%;
						position: relative;
						background: none;
					}
					.party-leader img {
						width: 100%;
						margin-bottom: -3px;
					}
					.party-leader.left {
					}
					.party-leader.right {
					}
					.block {
						display: inline-block;
						width: 45%;
						height: 35px;
						position: absolute;
						margin-bottom: 36px;
						bottom: 0;
					}
					.block.right {
						right: 0;
					}
					.block .bar {
						position: absolute;
						width: 100%;
						bottom: 0;
					}
					.block .bar .count {
						position: absolute;
						margin-top: -18px;
						font: 16px/1 "gibsonLight", "Arial", sans-serif;
						text-align: center;
						width: 100%;
					}
					.block.left .bar {
						background-color: #b32722;
					}
					.block.right .bar {
						background-color: #234263;
					}
					.divider {
						display: block;
						height: 60px;
						width: 1px;
						background-color: rgba(255, 255, 255, 0.5);
						margin-bottom: 36px;
						position: absolute;
						bottom: 0;
						left: 50%;
						margin-left: 0;
						margin-right: 0;
					}

				}
			}

		}

	}


	.desktop-mixin () {

		.@{block}__candidates,
		.@{block}__candidatesb,
		.@{block}__results-blocks,
		.@{block}__results-mandates,
		.@{block}__results-district-votes {
			float: left;
			.mixin-layout-a;
		}

		.@{block}__forecast-blocks {
			float: left;
			.mixin-layout-b;
			.block-container {
				margin-left: -12px;
				margin-right: -12px;
			}
		}

		.@{block}__aside {
			float: left;
			display: block;
		}

	}

	.static-mixin () {

		.@{block}__countdown {
			display: block;
		}

	}

}
.fvbanner-mobile {
	display: none;
}