/* APC COOKIE-BANNER #####################*/

#apccookies {
	bottom: 0;
	display: none;
	height: 100vh;
	left: 0;
	margin: 0;
	padding: 0;
	perspective: 700px;
	position: fixed;
	right: 0;
	top: 0;
	width: 100%;
	z-index: 99999;
}

#apccookies * {
	font-family: 'Poppins', sans-serif !important;
}

#apcbg {
	background-color: rgba(0,0,0,0.5);
	bottom: 0;
	height: 100vh;
	left: 0;
	margin: 0;
	padding: 0;
	position: absolute;
	right: 0;
	top: 0;
	width: 100%;
	z-index: 1;
}

#apcinner {
	background-color: #fff;
	border: 1px solid #aaa;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	-ms-border-radius: 10px;
	-o-border-radius: 10px;
	border-radius: 10px;
	-webkit-box-shadow: 0 10px 10px -5px rgba(0,0,0,0.1);
	-moz-box-shadow: 0 10px 10px -5px rgba(0,0,0,0.1);
	-ms-box-shadow: 0 10px 10px -5px rgba(0,0,0,0.1);
	-o-box-shadow: 0 10px 10px -5px rgba(0,0,0,0.1);
	box-shadow: 0 10px 10px -5px rgba(0,0,0,0.1);
	color: #777;
	font-size: 14px;
	left: 50%;
	line-height: 22px;
	margin: 0;
	max-width: 385px;
	min-width: 320px;
	padding: 20px 25px 10px 25px;
	position: absolute;
	text-align: center;
	top: 45vh;
	-webkit-transform: rotateX(0deg) scale(1) translate(-50%, -50%);
	-moz-transform: rotateX(0deg) scale(1) translate(-50%, -50%);
	-ms-transform: rotateX(0deg) scale(1) translate(-50%, -50%);
	-o-transform: rotateX(0deg) scale(1) translate(-50%, -50%);
	transform: rotateX(0deg) scale(1) translate(-50%, -50%);
	-webkit-transform-origin: 0% 0%;
	-moz-transform-origin: 0% 0%;
	-ms-transform-origin: 0% 0%;
	-o-transform-origin: 0% 0%;
	transform-origin: 0% 0%;
	-webkit-transform-style: preserve-3d;
	-moz-transform-style: preserve-3d;
	-ms-transform-style: preserve-3d;
	-o-transform-style: preserve-3d;
	transform-style: preserve-3d;
	width: 90%;
	z-index: 10;
}

#apcinner.apcflip {
	-webkit-animation: apcflip 0.75s ease-in-out;
	-moz-animation: apcflip 0.75s ease-in-out;
	-ms-animation: apcflip 0.75s ease-in-out;
	-o-animation: apcflip 0.75s ease-in-out;
	animation: apcflip 0.75s ease-in-out;
	-webkit-animation-fill-mode: forwards;
	-moz-animation-fill-mode: forwards;
	-ms-animation-fill-mode: forwards;
	-o-animation-fill-mode: forwards;
	animation-fill-mode: forwards;
}


@-webkit-keyframes apcflip {
0% {opacity: 1; -webkit-transform: rotateX(0deg) scale(1) translate(-50%, -50%);}
25% {opacity: 1; -webkit-transform: rotateX(-25deg) scale(1) translate(-50%, -50%);}
100% {opacity: 0; -webkit-transform: rotateX(90deg) scale(0.5) translate(-50%, -50%);}
}

@-moz-keyframes apcflip {
0% {opacity: 1; -moz-transform: rotateX(0deg) scale(1) translate(-50%, -50%);}
25% {opacity: 1; -moz-transform: rotateX(-25deg) scale(1) translate(-50%, -50%);}
100% {opacity: 0; -moz-transform: rotateX(90deg) scale(0.5) translate(-50%, -50%);}
}

@-ms-keyframes apcflip {
0% {opacity: 1; -ms-transform: rotateX(0deg) scale(1) translate(-50%, -50%);}
25% {opacity: 1; -ms-transform: rotateX(-25deg) scale(1) translate(-50%, -50%);}
100% {opacity: 0; -ms-transform: rotateX(90deg) scale(0.5) translate(-50%, -50%);}
}

@-o-keyframes apcflip {
0% {opacity: 1; -o-transform: rotateX(0deg) scale(1) translate(-50%, -50%);}
25% {opacity: 1; -o-transform: rotateX(-25deg) scale(1) translate(-50%, -50%);}
100% {opacity: 0; -o-transform: rotateX(90deg) scale(0.5) translate(-50%, -50%);}
}

@keyframes apcflip {
0% {opacity: 1; transform: rotateX(0deg) scale(1) translate(-50%, -50%);}
25% {opacity: 1; transform: rotateX(-25deg) scale(1) translate(-50%, -50%);}
100% {opacity: 0; transform: rotateX(90deg) scale(0.5) translate(-50%, -50%);}
}


/* APC Header */

#apcheader {
	border-bottom: 1px dashed #ccc;
	padding: 0 0 15px 0;
}

#apcheader h3 {
	background: transparent url("apc.png") no-repeat left 2px;
	-webkit-background-size: auto 100%;
	-moz-background-size: auto 100%;
	-ms-background-size: auto 100%;
	-o-background-size: auto 100%;
	background-size: auto 100%;
	border: none !important;
	color: #777 !important;
	display: block;
	font-size: 16px;
	font-weight: normal !important;
	line-height: 24px;
	margin: 0 0 5px 0;
	padding: 0 0 0 25px;
	position: relative;
	text-align: justify;
	width: 100%;
}

#apcheader p {
	color: #777;
	display: block;
	font-size: 13px;
	font-weight: 300;
	line-height: 20px;
	margin: 0 0 10px 0;
	padding: 0;
	position: relative;
	text-align: left;
}

#apcheader a {
	color: #333;
}

#apcheader-buttons {
	display: inline-block;
	margin: 5px 0 0 0;
	text-align: center;
	width: 100%;
}

#apcheader button, #apcheader input {
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	-ms-border-radius: 5px;
	-o-border-radius: 5px;
	border-radius: 5px;
	cursor: pointer;
	display: inline-block;
	font-size: 16px;
	font-weight: 300;
	line-height: 22px;
	padding: 7px 10px;
	position: relative;
}

#apcheader-buttons button {
	background-color: #eee;
	border: 1px solid #ccc;
	color: #777;
	display: inline-block;
	font-size: 14px;
	font-weight: 300;
	line-height: 22px;
	margin: 0 0 12px 0;
	-webkit-transform: scale(1);
	-moz-transform: scale(1);
	-ms-transform: scale(1);
	-o-transform: scale(1);
	transform: scale(1);
	-webkit-transition: all 0.25s ease-in-out 0s;
	-moz-transition: all 0.25s ease-in-out 0s;
	-ms-transition: all 0.25s ease-in-out 0s;
	-o-transition: all 0.25s ease-in-out 0s;
	transition: all 0.25s ease-in-out 0s;
	white-space: nowrap;
	width: 80%;
}

#apcheader button#apccookiesave {
	display: none;
}

#apcheader-buttons button#apccookieaccept,
.apccookieacceptext {
	background-color: #0a0;
	border: 1px solid #fff;
	color: #fff;
	font-size: 15px;
}

#apcheader-buttons button#apccookiedeny {
	padding: 5px 10px;
}

#apcheader-buttons button:hover {
	-webkit-transform: scale(1.05);
	-moz-transform: scale(1.05);
	-ms-transform: scale(1.05);
	-o-transform: scale(1.05);
	transform: scale(1.05);
}

a#apccookiecustomise {
	color: #777;
	cursor: pointer;
	display: inline-block;
	font-size: 13px;
	margin: 0;
	-webkit-transition: all 0.25s ease-in-out 0s;
	-moz-transition: all 0.25s ease-in-out 0s;
	-ms-transition: all 0.25s ease-in-out 0s;
	-o-transition: all 0.25s ease-in-out 0s;
	transition: all 0.25s ease-in-out 0s;
	width: 100%;
}

a#apccookiecustomise:hover {
	color: #333;
}

#apcflyout {
	display: none;
}


/* APC Cookie Types */

#apctogglebox {
	list-style-type: none !important;
	padding: 5px 0 10px 0 !important;
	width: 100%;
}

.apctogglebox {
	border-bottom: 1px dashed #ccc;
	clear: both;
	cursor: pointer;
	float: left;
	margin: 10px 0 0 0;
	padding: 0 0 10px 0;
	position: relative;
	width: 100%;
}

.apctogglebox.apcna {
	display: none !important;
	height: 0 !important;
	opacity: 0 !important;
}

.apctogglebox h3 {
	border: none !important;
	color: #aaa;
	display: block;
	font-size: 14px;
	font-weight: normal !important;
	letter-spacing: 0;
	line-height: 24px;
	margin: 0 !important;
	padding: 0 !important;
	position: relative;
	text-align: left;
	text-transform: uppercase;
	-webkit-transition: all 0.35s ease-in-out 0s;
	-moz-transition: all 0.35s ease-in-out 0s;
	-ms-transition: all 0.35s ease-in-out 0s;
	-o-transition: all 0.35s ease-in-out 0s;
	transition: all 0.35s ease-in-out 0s;
}

.apccheck {
	height: 30px;
	position: absolute;
	margin: 0;
	right: 0;
	top: 28px;
	width: 50px;
	z-index: 2000;
}

.apccheckbg {
	background-color: #ddd;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
	-ms-border-radius: 20px;
	-o-border-radius: 20px;
	border-radius: 20px;
	height: 16px;
	left: 0;
	overflow: hidden;
	position: absolute;
	margin: 0;
	top: 7px;
	width: 100%;
	z-index: 10;
}

.apccheck input {
	cursor:pointer;
	height:100%;
	left: 0;
	opacity:0;
	position:absolute;
	top: 0;
	width:100%;
	z-index:999;
}

.apccheck .toggle {
	background-color: #fff;
	border: 1px solid #bbb;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
	-ms-border-radius: 20px;
	-o-border-radius: 20px;
	border-radius: 20px;
	display: block;
	height: 100%;
	position: absolute;
	text-align: center;
	top: 0;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-ms-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all 0.2s ease;
	width: 30px;
	z-index: 20;
}

.apccheck .toggle:before {
	color: #aaa;
	content: "OFF";
	font-size: 10px;
	letter-spacing: 0.5px;
	line-height: 20px;
	left: 0;
	margin: 0 0 0 -0.5px;
	padding: 5px 0 0 0;
	position: absolute;
	width: 100%;
}

.apccheck .toggle.toggle-de:before {
	content: "AUS";
}

.apccheck input:checked ~ .toggle {
	background-color: #0c0;
	border: 1px solid #fff;
	background-image: radial-gradient(#0c0, #090);
	margin-left: 18px;
}

.apccheck input:checked ~ .toggle:before {
	color: #fff !important;
	content: "ON";
}

.apccheck input:checked ~ .toggle.toggle-de:before {
	content: "AN";
}

.apctogglebox p {
	color: #777;
	display: block;
	font-size: 12px;
	font-weight: 300;
	line-height: 18px;
	margin: 0 !important;
	padding: 0;
	position: relative;
	text-align: left;
	width: calc(100% - 80px);
}

p.apcanbieter {
	color: #aaa;
	padding: 5px 0 0 0;
	width: 100% !important;
}

.apcanbieter span {
	color: #333;
	padding-left: 3px;
}

.apcanbieter span em {
	color: #aaa;
}


/* APC Footer */

#apcfooter {
	display: inline-block;
	margin: 10px 0 0 0;
	text-align: center;
	width: 100%;
}

#apcfooter p, #apcfooter a {
	color: #777;
	font-size: 10px;
	font-weight: 300;
	letter-spacing: 0.25px;
	line-height: 18px;
	margin: 0;
	position: relative;
	text-align: center;
	text-decoration: none;
}

#apcfooter p {
	width: 100%;
}

#apcfooter p strong {
	color: #777;
	font-size: 11px;
}

#apcfooter a {
	display: inline-block;
	padding: 0 5px;
	-webkit-transition: all 0.35s ease-in-out 0s;
	-moz-transition: all 0.35s ease-in-out 0s;
	-ms-transition: all 0.35s ease-in-out 0s;
	-o-transition: all 0.35s ease-in-out 0s;
	transition: all 0.35s ease-in-out 0s;
}

#apcfooter a:hover {
	color: #333;
}



/* APC Ext-Note */

.apcextnote {
	background-color: #fff;
	border: 1px solid #aaa;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	-ms-border-radius: 10px;
	-o-border-radius: 10px;
	border-radius: 10px;
	-webkit-box-shadow: 0 10px 10px -5px rgba(0,0,0,0.20);
	-moz-box-shadow: 0 10px 10px -5px rgba(0,0,0,0.20);
	-ms-box-shadow: 0 10px 10px -5px rgba(0,0,0,0.20);
	-o-box-shadow: 0 10px 10px -5px rgba(0,0,0,0.20);
	box-shadow: 0 10px 10px -5px rgba(0,0,0,0.20);
	color: #777;
	font-size: 14px;
	line-height: 22px;
	margin: 50px auto;
	padding: 10px 15px 15px 15px;
	position: relative;
	text-align: center;
	width: 300px;
	z-index: 10;
}

.apcextnote h4 {
	color: #aaa;
	font-size: 12px;
	font-weight: 300;
	margin: 0 0 3px 0;
	padding: 0;
	text-align: center;
}

.apcextnote h3 {
	color: #aaa;
	font-size: 18px;
	font-weight: 300;
	margin: 0 0 5px 0;
	padding: 0;
	text-align: center;
}

.apcextnote p {
	color: #aaa;
	font-size: 12px;
	font-weight: 300;
	line-height: 18px;
	text-align: center;
}

.apcextnote button {
	background-color: #eee;
	border: 1px solid #ccc;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	-ms-border-radius: 5px;
	-o-border-radius: 5px;
	border-radius: 5px;
	color: #999;
	cursor: pointer;
	display: inline-block;
	font-size: 13px;
	font-weight: 300;
	line-height: 18px;
	margin: 5px 0;
	padding: 7px 10px;
	position: relative;
	-webkit-transform: scale(1);
	-moz-transform: scale(1);
	-ms-transform: scale(1);
	-o-transform: scale(1);
	transform: scale(1);
	-webkit-transition: all 0.25s ease-in-out 0s;
	-moz-transition: all 0.25s ease-in-out 0s;
	-ms-transition: all 0.25s ease-in-out 0s;
	-o-transition: all 0.25s ease-in-out 0s;
	transition: all 0.25s ease-in-out 0s;
	white-space: nowrap;
	width: 80%;
}

.apcextnote button:hover {
	-webkit-transform: scale(1.05);
	-moz-transform: scale(1.05);
	-ms-transform: scale(1.05);
	-o-transform: scale(1.05);
	transform: scale(1.05);
}



/* Close */
#apccookieclose {
	background-color: #ccc;
	border: 3px solid #fff;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	-ms-border-radius: 50%;
	-o-border-radius: 50%;
	border-radius: 50%;
	cursor: pointer;
	display: block;
	height: 25px;
	position: absolute;
	right: -5px;
	top: -5px;
	-webkit-transition: all 0.25s ease-in-out 0s;
	-moz-transition: all 0.25s ease-in-out 0s;
	-ms-transition: all 0.25s ease-in-out 0s;
	-o-transition: all 0.25s ease-in-out 0s;
	transition: all 0.25s ease-in-out 0s;
	width: 25px;
	z-index: 500;
}

#apccookieclose::before {
	content: 'x';
	color: #fff !Important;
	font-size: 20px;
	font-weight: 600;
	left: 50%;
	line-height: 20px;
	position: absolute;
	top: 45%;
	-webkit-transform: translate(-50%, -50%);
	-moz-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	-o-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

#apccookieclose:hover {
	background-color: #777;
}





/* MOBILE ##### */

@media screen and (max-width: 720px) {

#apcheader h2,
p.apcdescription,
.apcanbieter span label {
	display: none !important;
}

#apcheader p {
	font-size: 12px;
	line-height: 17px;
}

#apcheader button, #apcheader input {
	font-size: 14px;
	padding: 7px 10px;
}

.apctogglebox {
	margin: 7px 0 0 0;
	padding: 0 0 7px 0;
}

.apctogglebox h3 {
	margin: 0 !important;
}

.apccheck {
	top: 5px;
}
}