/*
 * Globals
 */


:root {
	--pp-blue: #C4DCE7;
	--pp-blue-accent: #66878D;
	--pp-yellow: #F5D103;
	--pp-yellow-accent: #F08589;
	--pp-taupe: #BB9C9E;
	--pp-taupe-accent: #F5D103;
}


/* Links */

a,
a:focus,
a:hover {
	color: #000;
}

.text-white a,
.text-white a:focus,
.text-white a:hover,
.text-white a:active,
.text-white a:visited {
	color: var(--pp-blue) !important;
}

/* Custom default button */

.btn-secondary,
.btn-secondary:visited {
	color: #000;
	background: none;
	text-shadow: none;
	border: 0.09rem solid #000;
	border-radius: 80px;
}

.btn-secondary:hover,
.btn-secondary:focus {
	color: #FFF;
	background: #000;
	text-shadow: none;
	border: 0.09rem solid #000;
	border-radius: 80px;
}


/*
 * Base structure
 */

html,
body {
	height: 100%;
}

body {
	display: -ms-flexbox;
	display: flex;
	color: #000;
}

.mt-8 {
	margin-top: 3em;
}


/*
 * Header
 */
.masthead {
	margin-bottom: 2rem;
}

.masthead-brand {
	margin-bottom: 0;
}

.nav-masthead .nav-link {
	padding: .25rem 0;
	font-weight: 700;
	color: rgba(255, 255, 255, .5);
	background-color: transparent;
	border-bottom: .25rem solid transparent;
}

.nav-masthead .nav-link:hover,
.nav-masthead .nav-link:focus {
	border-bottom-color: rgba(255, 255, 255, .25);
}

.nav-masthead .nav-link + .nav-link {
	margin-left: 1rem;
}

.nav-masthead .active {
	color: #fff;
	border-bottom-color: #fff;
}

@media (min-width: 48em) {
	.masthead-brand {
		float: left;
	}

	.nav-masthead {
		float: right;
	}
}


/*
 * Cover
 */
.cover {
	padding: 0 1.5rem;
}

.cover .btn-lg {
	padding: .75rem 1.25rem;
	font-weight: 100;
}


/*
 * Footer
 */
.mastfoot {
	color: rgba(255, 255, 255, .5);
}


/** projekt//partner – Individual Styles **/


.pp-button-close,
.pp-button-close:visited {
	width: 54px;
	height: 54px;
	background: url("../../img/pp__button-x.svg") no-repeat;
	display: inline-block;
	transition: 0.2s;
}

.pp-button-close:hover,
.pp-button-close:active {
	background: url("../../img/pp__button-x-active.svg") no-repeat;
	transition: 0.2s;
}


.pp-impressum-link {
	color: var(--pp-blue);
}

.pp-footer-left {
	display: inline-block;
	float: left;
	left: 0px;
	align-content: flex-start;
}

.pp-footer-right {
	display: inline-block;
	right: 0px;
	align-content: flex-end;
}


.pp-button-back {

	font-size: 2em;
	border-radius: 30px;
	height: 54px;
	width: 54px;

}

.pp-button-svg {
	width: 54px;
	height: 54px;
}

.pp-button-svg:normal,
.pp-button-svg:visited {
	fill: #000;
}

.pp-button-svg:active,
.pp-button-svg:hover {
	fill: #FFF;
}


::selection {
	background: #000;
	color: #fff;
}

::-moz-selection {
	background: #000;
	color: #fff;
}

.bg-black {
	background: #000;
}


.pp-background {
	background-image: url("../../img/projekt-partner__background-blue.png");
	background-repeat: no-repeat;
	background-position: top right;
	background-size: auto 100%;
	background-attachment: fixed;
	background-color: var(--pp-blue);
}

.pp-background-no-img {
	background-color: var(--pp-blue);
}

/* Mailchimp signup from styles */

#mce-EMAIL {
	background: none;
	color: #000 !important;
	border-top: none;
	border-left: none;
	border-right: none;
	border-bottom: 1px solid #000;
	display: inline-block;
	height: 2.5em;
	width: 100%;
	max-width: 300px;
	text-align: center;
}

/** For Safari/FF/Chrome and IE and Edge **/
::placeholder {
	color: #000000;
	opacity: 1;
	vertical-align: top;
	font-size: 1em !important;
}

:-ms-input-placeholder {
	color: #000000;
}

::-ms-input-placeholder {
	color: #000000;
}


input:focus,
select:focus,
textarea:focus,
button:focus {
	outline: none;
}

.btn-pp {
	position: relative;
	border: 1px solid;
	align-items: center;
	justify-content: center;
	white-space: nowrap;
	border-left-width: 0px;
	border-right-width: 0px;
	border-color: #000000;
	border-radius: 0;
	padding-left: 12px;
	line-height: 1.75rem;
	color: #000000;
	transform: translateX(0px);
	transition: transform 0.4s cubic-bezier(0.74, 0.24, 0.28, 0.87);
}

.btn-pp > span {
	display: block;
	position: relative;
	padding-left: 12px;
	padding-right: 12px;
}

.btn-pp:before, .btn-pp:after {
	content: '';
	position: absolute;
	border: 1px solid #000000;
	top: 0;
	left: 0;
	width: 100%;
	height: 50%;
	border-top-width: 0px;
	border-bottom-width: 0px;
}

.btn-pp:before {
	transform: skew(
			30deg);
	transform-origin: top left;
}

.btn-pp:after {
	top: 50%;
	transform: skew(
			-30deg);
	transform-origin: bottom left;
}

.btn-pp .btn-pp-bg:before, .btn-pp .btn-pp-bg:after {
	content: '';
	position: absolute;
	background-color: #000000;
	top: 0;
	left: 0;
	width: 100%;
	height: 50%;
	opacity: 0;
}

.btn-pp .btn-pp-bg:before {
	transform: skew(
			30deg);
	transform-origin: top left;
}

.btn-pp .btn-pp-bg:after {
	top: 50%;
	transform: skew(
			-30deg);
	transform-origin: bottom left;
}

.btn-pp .btn-pp-bg {
	top: 0;
	left: 0;
	position: absolute;
	width: 100%;
	height: 100%;
}

.btn:hover .btn-pp-bg:before, .btn:hover .btn-pp-bg:after {
	opacity: 1;
}

.btn:hover span {
	color: #FFF;
}

.btn:hover {
	transform: translateX(10px);
}