/*Tags*/
body{
    background: #fff !important;
}
*{
	padding: 0;
	margin: 0;
	box-sizing: border-box;
}

html{
	overflow-x: hidden;
}

body{
	font-family: 'Open Sans', sans-serif;
	font-size: 14px;
}
a{
	text-decoration: none;
	color: inherit;
}
input,button,select,textarea{
	font-family: inherit;
}
img{
	max-width: 100% !important;
	object-fit: cover !important;
}
li{
	list-style: none;
}
p{
	font-size: 16px;
	line-height: 28px;
	margin-bottom: 12px;
}

/* Typography */

h1{
	font-size: 53px;
	font-weight: 800;
	margin-bottom: 20px;
	color: #3d2c5a;
}
h2{
	font-size: 30px !important;
	font-weight: 800 !important;
	margin-bottom: 20px !important;
	color: #3d2c5a;
}
h3{
	font-size: 16px;
	font-weight: 800;
	margin-bottom: 15px;
}
section{
	position: relative;
}



/* Global Classes */
.container{
	max-width: 990px;
	margin:  0 auto;
	width: 100%;
	padding: 0 20px;
	display:block !important;
}
.flex{
	display: flex;
	flex-wrap: wrap;
}
.end{
	justify-content: flex-end;
}
.jsb{
	justify-content: space-between;
}
.text-right{
	text-align: right;
}
.text-center{
	text-align: center;
}

/*Widgets*/

.cta{
	display: inline-block;
	border-bottom: 3px solid #f8ba4f;
	color: #f8ba4f;
	line-height: 30px;
	font-weight: 700;
	transition: 0.3s;
	font-size: 16px;
	letter-spacing: 0.9px;
}
.cta:hover{
	color:#3d2c5a;
	border-color:#3d2c5a;
}

.cta + .cta{
	margin-left: 35px;
}
#header_wrapper{margin-bottom: 0px !important;}

/*Header*/

.site-header{
	border-bottom: 4px solid #f8ba4f !important;
	padding: 20px 0 !important;
	position: sticky !important;
	top: 0 !important;
	background: #fff !important;
	z-index: 10 !important;
	max-width: 1300px !important;
}
.site-header .row{
	align-items: center !important;
}


.branding a{
	display: block;
	max-width: 130px;
}

.navigation li:last-child a{
	background: #f8ba4f;
	color: #fff;
	margin-left: 40px;
}

.navigation li a{
	display: block;
	padding: 10px 18px;
	font-weight: 600;
	color: #3d2c5a;
}


/* Home page */

.pv-banner{
	padding: 80px 0 0;
	background: #fff4e0;
}
.pv-banner::after, .pv-banner::before,
.pv-projekt::after, .pv-projekt::before,
.pv-material::after, .pv-material::before,
.pv-handouts::after, .pv-handouts::before{
	content: '';
	width: calc((100vw - 990px) / 2);
	pointer-events: none;
	position: absolute;
}

.pv-banner::before{
	background: url('/sites/all/themes/creative-responsive-theme/images/banner-left.png')no-repeat left center/contain;
	bottom: 0;
	left: 0;
	height: 100%;
	max-width: calc(((100vw - 990px) / 2) / 2);	
	top: 50%;
}
.pv-banner::after{
	background: url('/sites/all/themes/creative-responsive-theme/images/banner-right.png')no-repeat right top/contain;
	top: 0;
	bottom: 0;
	right: 0;
}
.pv-banner p{
	font-size: 21px;
	font-weight: 600;
	color: #3d2c5a;
}
.pv-banner img{
	height: 280px;
	display: block;
}

.pv-projekt{
	padding: 80px 0;
}
.pv-projekt .row{
	display: grid;
	grid-template-columns: 1fr 1fr;
}
.pv-projekt .left{
	padding-right: 70px;
}
.pv-projekt .left p{
	line-height: 28px;
	font-weight:400;
}

.pv-projekt::before{
	bottom: 0;
	left: 0;
	z-index: -1;
	background: url('/sites/all/themes/creative-responsive-theme/images/project-top-left.png')no-repeat left top/contain;
	top: 0;
	height: 240px;
}
.pv-projekt::after{
	background: url('/sites/all/themes/creative-responsive-theme/images/project-top-right.png')no-repeat right top/contain;
	top: 0;
    height: 350px;
    max-width: calc(((100vw - 990px) / 2) / 2);
	right: 0;
	z-index: 1;
	transform: translateY(-50%);
}
.pv-projekt .text{
	background: #3d2c5a;
	padding: 55px 35px;
}
.pv-projekt .text h3, .pv-projekt .text p{
	color: #f8ba4f;
}
.pv-projekt .text h3{
	text-transform: uppercase;
	letter-spacing: 2px;
}
.pv-projekt img{
	display: block;
	max-width: 70% !important;
	margin:  0 auto;
}

.pv-material{
	background: #fff4e0;
	padding: 80px 0 0;
}

.pv-material::before{
	height: 450px;
	background: url('/sites/all/themes/creative-responsive-theme/images/material-top-right.png')no-repeat right -40px center/contain;
	right: 0;
	z-index: 1;
	transform: translateY(-50%);
	width: calc(1.5 * ((100vw - 990px) / 2));
	top: -23px;
}

.pv-material h2{
	color: #f8ba4f;
}
.pv-material h2 strong{
	color: #3d2c5a;
}

.pv-material .row, .pv-handouts .row{
	display: grid;
	align-items: flex-end;
	grid-template-columns: 1fr 1fr;	
}
.pv-material .left{
	margin-bottom: 100px;
}
.intro{text-align: unset !important;}
.pv-material .intro{
	margin-bottom: 40px;
}
.module-toggle .item:not(:last-child){
	border-bottom: 6px solid #f8ba4f;
}
.pv-handouts .intro p,.pv-material .intro p{color: #3d2c5a !important;
    font-weight: 400 !important;
}

.module-toggle h3{
	background: #3d2c5a;
	color: #f8ba4f;
	padding: 15px 20px;
	text-transform: uppercase;
	letter-spacing: 2px;
	cursor: pointer;
	margin-bottom: 0;
}
.module-toggle .desc{
	background: #fff;
	padding: 20px;
}
.module-toggle .item:not(.active) .desc{
	display: none;
}

.module-toggle .desc p{
	color: #3d2c5a;
	margin-bottom: 20px;
}

.pv-handouts{
	padding: 80px 0 0;
	overflow: hidden;
}

.pv-handouts::before{
	background: url('/sites/all/themes/creative-responsive-theme/images/handre-left-top.png')no-repeat left top/contain;
	height: 450px;
	top: -46px;
	left: 0;
	transform: translateY(-50%);
}
.pv-handouts::after{
	height: 50vw;
	top: 100px;
	width: 50vw;
	transform: translateX(50%);
	right: 0;
	border-radius: 50%;
	background: #f8ba4f;
	z-index: -1;
}

.pv-handouts .right{
	padding-left: 70px;
	margin-bottom: 70px;
}
.pv-handouts h2 strong{
	color: #f8ba4f;
}
.pv-handouts img{
	display: block;
	width: 100%;
}

/* Footer */

.site-footer{
	background: #3d2c5a;
	padding: 80px 0;
	position: relative;
}
.site-footer .inner{
	padding: 0 70px;
}

.site-footer .row{
	display: grid;
	grid-template-columns: repeat(4, auto);
	grid-gap: 80px;
}

.site-footer h3{
	font-size: 30px;
	color: #fff;
	margin-bottom: 30px;
	margin-left: -16px;
}

.site-footer p{
	color: #fff;
	margin-bottom: 5px;
	opacity: 0.8;
}

.site-footer p a: hover{
	opacity: 1;
}


.site-footer .footer-logo img{
	height: 62px;
	object-fit: contain !important;
}
.container:before,.row:before{content: none !important; }