@charset "utf-8";
/* CSS Document */

/* Structure start
------------------------------------------------------------ */
body {
	margin:0px 0;
	/*overflow:hidden;*/
}

.al_c {
	text-align:center;
}

.al_l {
	text-align:left;
}

.al_r {
	text-align:right;
}

input[type=submit] {
	background-color:lightgray;
	color:gray;
	border:thin;
	border-style:solid;
	border-radius:5px;
	border-color:black;
	padding:0.6em 1.2em;
	font-family:'Roboto', Arial, 'Montserrat', Tahoma, sans-serif;
	font-size:0.8em;
}

input[type=submit]:hover {
	background-color:black;
	color:white;
}

button {
	background-color:gainsboro;
	color:black;
	border:thin;
	border-style:solid;
	border-radius:5px;
	border-color:black;
	margin:0px;
	padding:0.2em 0.4em;
	font-family:'Roboto', Arial, 'Montserrat', Tahoma, sans-serif;
	font-size:0.8em;
	outline:none;
}

button:hover {
	background-color:gray;
	color:white;
}

button[id^=approve]:hover {
	background-color:limegreen;
}

button[id^=cancel]:hover {
	background-color:red;
}

.checkBtn, .cancelBtn {
	background-color:gray;
	margin:0px;
	border:none;
	border-radius:0px;
	color:white;
	padding:0.1em 0.3em;
	font-size:0.8em;
}

.unfoldBtn {
	background-color:white;
	margin:0px;
	border:none;
	border-radius:0px;
	color:black;
	padding:0.1em 0.3em;
	font-size:0.8em;
}

.checkBtn:hover {
	background-color:limegreen;
}

.cancelBtn:hover {
	background-color:red;
}

.budgetBtn, .tobeinvoicedBtn {
	margin:0px;
	border:none;
	border-radius:0.7em;
	color:white;
	padding:0.1em 0.3em;
	font-size:0.9em;
	min-width:1.5em;
}

.budgetBtn {
	background-color:red;
}

.tobeinvoicedBtn {
	background-color:green;
}

.switch {
	position:relative;
	display:inline-block;
	width:50px;
	height:26px;
}

.switch input {
	opacity:0;
	width:0;
	height:0;
}

.slider {
	position:absolute;
	cursor:pointer;
	top:0;
	left:0;
	right:0;
	bottom:0;
	background-color:#ccc;
	-webkit-transition:.4s;
	transition:.4s;
}

.slider:before {
	position:absolute;
	content:"";
	height:18px;
	width:18px;
	left:4px;
	bottom:4px;
	background-color:white;
	-webkit-transition:.4s;
	transition:.4s;
}

input:checked + .slider {
	background-color:#35F35F;
}

input:focus + .slider {
	box-shadow:0 0 1px #35F35F;
}

input:checked + .slider:before {
	-webkit-transform:translateX(18px);
	-ms-transform:translateX(18px);
	transform:translateX(18px);
}

.slider.round {
	border-radius:26px;
}

.slider.round:before {
	border-radius:50%;
}

.container, .row {
	display:block;
	overflow:hidden;
}

.container {
	width:85%;
	margin:0 auto;
	padding-bottom:75px;
}

.container.login {
	width:20%;
	margin:0 auto;
	text-align:center;
}

section {
	padding:0px 0;
}

[class*="span"] {
	float:left;
	box-sizing:border-box;
	padding:0px;
}

.span1 {
	width:8.3333333333%;
}

.span2 {
	width:16.6666666666%;
}

.span3 {
	width:25%;
}

.span4 {
	width:33.3333333333%;
}

.span5 {
	width:41.6666666666%;
}

.span6 {
	width:50%;
}

.span7 {
	width:58.3333333333%;
}

.span8 {
	width:66.6666666666%;
}

.span9 {
	width:75%;
}

.span10 {
	width:83.3333333333%;
}

.span11 {
	width:91.6666666666%;
}

.span12 {
	width:100%;
}

[class^="span"] {
	min-height:0.1em;
}

.row {
	display:flex;
}

.col {
	display:flex;
	flex-direction:column;
}

.d_span {
	float:left;
	box-sizing:border-box;
	padding:0px;
}

/* Form elements start
------------------------------------------------------------ */
.contactElement {
	/*width:150px;*/
	width:50%;
	height:30px;
	padding-left:5px;
	padding-right:5px;
	margin-bottom:0px;
	font-family:'Roboto', Arial, 'Montserrat', Tahoma, sans-serif;
	font-size:0.9em;
	border-radius:7.5px;
	border-style:solid;
	border-color:#000;
	border-width:thin;
}

.contactElementShort {
	/*width:150px;*/
	width:20%;
	height:35px;
	padding-left:5px;
	padding-right:5px;
	margin-bottom:0px;
	font-family:'Roboto', Arial, 'Montserrat', Tahoma, sans-serif;
	font-size:0.9em;
	border-radius:7.5px;
	border-style:solid;
	border-color:#000;
	border-width:thin;
}

.contactElementSmall {
	width:43%;
	height:20px;
	padding-left:5px;
	padding-right:5px;
	margin-bottom:0px;
	font-family:'Roboto', Arial, 'Montserrat', Tahoma, sans-serif;
	font-size:0.9em;
	border-radius:7.5px;
	border-style:solid;
	border-color:#000;
	border-width:thin;
}

.contactElementSelect {
	/*width:162px;*/
	width:50%;
	height:35px;
	padding-left:5px;
	padding-right:5px;
	margin-bottom:0px;
	font-family:'Roboto', Arial, 'Montserrat', Tahoma, sans-serif;
	font-size:0.9em;
	border-radius:7.5px;
	border-style:solid;
	border-color:#000;
	border-width:thin;
}

.contactElementSelectSmall {
	width:50%;
	height:22px;
	padding-left:5px;
	padding-right:5px;
	margin-bottom:0px;
	font-family:'Roboto', Arial, 'Montserrat', Tahoma, sans-serif;
	font-size:0.9em;
	border-radius:7.5px;
	border-style:solid;
	border-color:#000;
	border-width:thin;
}

.contactElementTextarea {
	/*width:153px;*/
	width:50%;
	height:100px;
	padding-right:5px;
	padding-left:5px;
	font-family:'Roboto', Arial, 'Montserrat', Tahoma, sans-serif;
	font-size:0.9em;
	border-radius:7.5px;
	border-style:solid;
	border-color:#000;
	border-width:thin;
	resize:none;
}

.formInput {
	width:80%;
	padding-left:15px;
	padding-top:0.2em;
	padding-bottom:0.2em;
	/*float:left;*/
}

.formInputSmall {
	/*width:80%;*/
	padding-left:5px;
	padding-top:0.2em;
	padding-bottom:0.2em;
	/*float:left;*/
}

.formInputNoPad {
	width:100%;
	padding-top:0.2em;
	padding-bottom:0.2em;
	/*float:left;*/
}

.FormHeadline {
	line-height:1;
}

.button {
	width:60px;
	height:25px;
	font-family:'Roboto', Tahoma, sans-serif;
	background-color: gainsboro;
	border-radius:7.5px;
	border-style:solid;
	border-color:#000;
	border-width:thin;
}

.button:hover {
	width:60px;
	height:25px;
	font-family:'Roboto', Tahoma, sans-serif;
	color: white;
	background-color: black;
	border-radius:7.5px;
	border-style:solid;
	border-color:#fff;
	border-width:thin;
}

.captcha {
	height:40px;
	width:150px;
}



/* Backgrounds start
------------------------------------------------------------ */

.bg-main {
	background-color:/*#CFCFCF*/#000;
	color:/*#000*/#FFF;
}

.bg-header {
	background-color:#CFCFCF;
	color:#000;
}

.bg-logo {
	margin-top:10px;
	margin-right:15px;
	margin-bottom:10px;
	margin-left:15px;
	background:url(images/83ecda_5802d489cd8d45849b815f26dada040e.png);
	background-position:right;
	background-size:contain;
	background-repeat:no-repeat;
}

.bg-menu {
	background:linear-gradient(#979797 15%, #2C2C2C 85%);
}



/* Fonts start
------------------------------------------------------------ */

html {
	height:100%;
	width:100%;
	font-size:1em;
	overflow-y:scroll;
}

body, p {
	font-family:'Roboto', Arial, 'Montserrat', Arial, sans-serif;
	font-weight:400;
	font-size:1em;
	line-height:1.5em;
}

h1, h2, h3, h4, h5, h6 {
	font-family:'Roboto', Arial, 'Montserrat', Tahoma, sans-serif;
	font-weight:400;
}

h1 {
	font-size:3em;
}

h2 {
	font-size:1.5em;
	line-height:1.5em;
}

h3 {
	font-size:1.2em;
	line-height:1.5em;
}

h4 {
	font-size:1.8em;
}

h5 {
	font-size:1.4em;
}

h6 {
	font-size:1em;
}

a {
	text-decoration:none;
	color:black;
}

.header {
	font-weight:600;
	font-size:2em;
}

.footer {
	font-size:0.9em;
}

/* Icons start
------------------------------------------------------------ */

/*[class^="fa-"] {
	font-family:'Roboto', Arial, FontAwesome;
	font-weight:normal;
	font-style:normal;
	vertical-align:middle;
}*/

/*i.far {
	font-size:0.85em;
	border-radius:50%;
	background-color:black;
	color:white;
	line-height:1.8em;
	width:1.8em;
	height:1.8em;
	text-align:center;
	display:inline-block;
}*/

/*i.fas {
	font-size:0.85em;
	border-radius:50%;
	background-color:black;
	color:white;
	line-height:1.8em;
	width:1.8em;
	height:1.8em;
	text-align:center;
	display:inline-block;
}*/

/*i.fa {
	font-size:0.85em;
	border-radius:50%;
	background-color:black;
	color:white;
	line-height:1.8em;
	width:1.8em;
	height:1.8em;
	text-align:center;
	display:inline-block;
}*/

.icons-colored.standard {
	background:red;
}

.menuicon i {
	padding-top:5px;
	padding-bottom:5px;
	display:block;
	font-size:1.2rem;
	color:#00B0F0;
}


/* Positions and aligments start
------------------------------------------------------------ */

.aligncenter {
	text-align:center;
}

.alignleft {
	text-align:left;
}

.alignright {
	text-align:right;
}

.marginSV {
	margin:0px 0;
}

.clearcontainer {
	width:100%;
}

.pad50 {
	padding:20px;
}



/* Instagram feed start
------------------------------------------------------------ */

#insta-wrap {
	height:auto;
}

/* Thumbnails and coverbox
------------------------------------------------------------ */

.clean {
	all:unset;
}

.extended {
	position:absolute;
	z-index:500;
	background-color:white;
}

.thumb {
	opacity:1;
	display:block;
	height:auto;
	transition:.5s ease;
	backface-visibility:hidden;
}


.coverBox {
	transition:.5s ease;
	display:none;
	position:absolute;
	top:0px;
	left:0px;
	padding-top:1em;
	padding-left:2em;
	padding-bottom:1em;
	width:100%;
	height:auto;
	z-index:5;
	/*transform:translate(-50%, -50%);*/
	text-align:left;
}

.coverBox12 {
	transition:.5s ease;
	padding:20px;
	display:block;
	position:absolute;
	top:0px;
	left:0px;
	width:100%;
	height:100%;
	/*transform:translate(-50%, -50%);*/
	opacity:0.7;
}

.coverBoxText {
	transition:.5s ease;
	display:none;
}
/*.container:hover .thumb {
  opacity: 1;
}*/

.span12:hover .coverBox {
	position:absolute;
	top:0;
	bottom:0;
	right:0;
	left:0;
	height:auto;
	width:100%;
	margin-bottom:6px;
	
	display:block;
	opacity:0.7;
	color:#FFF;
	background-color:black;
}

#thumbBox {
	display:block;
	transition:.5s ease;
	height:100%;
	width:100%;
}

#mpBox {
	display:none;
	transition:.5s ease;
	height:100%;
	width:100%;
}


/* Menu start
------------------------------------------------------------ */

.menu {
	display:block;
	transition:.5s ease;
	color:black;
	line-height:1.2em;
	font-size:1em;
	padding-left:10px;
	padding-right:10px;
	float:right;
}

.menu:hover {
	color:white;
	background-color:black;
	cursor:pointer;
}

#MobileTopmenu {
	height:auto;
	padding-left:10px;
	border-top-style:solid;
	border-bottom-style:solid;
	border-color:#000;
	border-top-width:thin;
	border-bottom-width:thin;
	color:#000;
}

#Topmenu a {
	display:block;
	padding-top:10px;
	padding-left:20px;
	padding-bottom:10px;
	padding-right:20px;
}

#Topmenu a:hover {
	/*background:linear-gradient(#80DDFF 15%,#00B0F0 85%);*/
	background:#000;
	color:#FFF;
	transition:all 0.7s ease-in-out;
}

.topmenu {
	list-style-type:none;
	line-height:1;
	margin:0px 0;
}

.mtopmenu {
	list-style-type:none;
	line-height:1.5;
	margin:0px 0;
}

.mtopmenu a {
	color:#000;
}

#Topmenu li {
	float:left;
}

#Topmenu ul ul {
	display:none;
	padding:0px 0;
	position:absolute;
}

#Topmenu ul li:hover > ul {
	display:block;
	background:#6A6A6A;
}

#Topmenu ul ul li {
	float:none;
	list-style-type:none;
	margin:0px 0;
}

#hiddenMobileMenu {
	display:none;
	float:none;
	padding-left:5px;
}

#MobileTopmenu:hover {
	float:none;
}

[id^=phase] {
	border-top:solid black 1px;
	
}

[id^=subphase] {
	border-top:solid black 1px;
	font-size:1em;
}

[id$=phase1] {
	background:rgba(27,97,86,0.10);
}

[id^=phase1] {
	background:rgba(27,97,86,0.30);
}

[id$=phase2] {
	background:rgba(27,97,86,0.20);
}

[id^=phase2] {
	background:rgba(27,97,86,0.50);
}

[id$=phase3] {
	background:rgba(0,95,160,0.10);
}

[id^=phase3] {
	background:rgba(0,95,160,0.30);
}

[id$=phase4] {
	background:rgba(0,95,160,0.50);
}

[id$=phase5] {
	background:rgba(200,223,191,0.15);
}

[id^=phase5] {
	background:rgba(200,223,191,0.50);
}

[id$=phase6] {
	background:rgba(200,223,191,0.75);
	border-bottom:solid black 1px;
}

.extrain {
	padding-left:1.5em;
	font-size:0.9em;
}

.overviewContainer {
	overflow-x:scroll;
	white-space:nowrap;
}

.projects {
	display:block;
	float:left;
	width:100%;
}

.pshort {
	display:block;
	float:left;
	white-space:normal;
}

.stage1Bar {
	position:absolute;
	line-height:15px;
	height:15px;
	z-index:10;
	background:rgba(27,97,86,1.00);
	top:20px;
	font-size:0.8em;
}

.bpBar {
	position:absolute;
	line-height:10px;
	height:10px;
	z-index:6;
	background:rgba(27,97,86,0.50);
	top:37px;
	font-size:0.8em;
}

.dfBar {
	position:absolute;
	line-height:10px;
	height:10px;
	z-index:5;
	background:rgba(27,97,86,0.75);
	top:49px;
	font-size:0.8em;
}

.stage2Bar {
	position:absolute;
	line-height:15px;
	height:15px;
	z-index:10;
	background:rgba(0,95,160,1.00);
	top:20px;
	font-size:0.8em;
}

.pfBar {
	position:absolute;
	line-height:10px;
	height:10px;
	z-index:4;
	background:rgba(0,95,160,0.50);
	top:37px;
	font-size:0.8em;
}

.mpBar {
	position:absolute;
	line-height:10px;
	height:10px;
	z-index:3;
	background:rgba(0,95,160,0.75);
	top:49px;
	font-size:0.8em;
}

.stage3Bar {
	position:absolute;
	line-height:15px;
	height:15px;
	z-index:10;
	background:rgba(200,223,191,1.00);
	top:20px;
	font-size:0.8em;
}

.hpBar {
	position:absolute;
	line-height:10px;
	height:10px;
	z-index:2;
	background:rgba(200,223,191,0.50);
	top:37px;
	font-size:0.8em;
}

.exBar {
	position:absolute;
	line-height:10px;
	height:10px;
	z-index:1;
	background:rgba(200,223,191,0.75);
	top:49px;
	font-size:0.8em;
}

[class$="Bar"] {
	color:black;
	font-weight:700;
}

.barArea {
	height:90px;
	display:block;
	position:relative;
	border-bottom:solid black 1px;
}

.barAreaLower {
	height:inherit;
	display:block;
	position:relative;
	border-bottom:solid black 1px;
}

.stamdata {
	background:rgba(128,128,128,1.00);
	color:white;
}

.economy {
	background:rgba(47,117,181,1.00);
	color:white;
	margin-top:2.5em;
}

.economySmall {
	background:rgba(47,117,181,1.00);
	color:white;
}

.agreements {
	background:rgba(131,60,12,1.00);
	color:white;
	margin-top:2.5em;
}

.agreementsSmall {
	background:rgba(131,60,12,1.00);
	color:white;
}

.dateLocked {
	color:grey;
}

.oddMonthsFull {
	height:89px;
	background:rgba(189,186,214,1.00);
	float:left;
	border-right:solid black 1px;
	font-weight:700;
	color:black;
	font-size:0.8em;
}

.oddMonths {
	height:89px;
	background:rgba(189,186,214,1.00);
	float:left;
	font-weight:700;
	color:black;
	font-size:0.8em;
}

.evenMonthsFull {
	height:89px;
	background:rgba(207,205,225,1.00);
	float:left;
	border-right:solid black 1px;
	font-weight:700;
	color:black;
	font-size:0.8em;
}

.evenMonths {
	height:89px;
	background:rgba(207,205,225,1.00);
	float:left;
	font-weight:700;
	color:black;
	font-size:0.8em;
}

/* Overlay start
------------------------------------------------------------ */

#overlay_task {
	width:100%;
	height:100%;
	background:#868686;
	position:fixed;
	top:0;
	right:0;
	bottom:0;
	left:0;
	opacity:0.7;
	z-index:1000;
	display:none;
}

#overlay_container {
	padding-top:20px;
	padding-right:50px;
	padding-bottom:50px;
	padding-left:50px;
	overflow-y:auto;
	position:fixed;
	top:0;
	left:15%;
	bottom:5%;
	right:15%;
	background:#FFF;
	opacity:1;
	z-index:1500;
	display:none;
}

#overlay_dialog {
	padding-top:20px;
	padding-right:50px;
	padding-bottom:50px;
	padding-left:50px;
	overflow-y:auto;
	position:fixed;
	top:20%;
	left:20%;
	bottom:20%;
	right:20%;
	background:#FFF;
	opacity:1;
	z-index:1500;
	display:none;
}

.cellwrap {
	padding-right:5px;
	border-left:solid black 1px;
}

/* Overflow start
------------------------------------------------------------ */

.overflow-wrapper {
	overflow-y: auto;
	overflow-x: hidden;
	transform: rotate(-90deg);
	transform-origin: right top;
	transform:rotate(-90deg) translateY(-100px);
}

.overflow-wrapper > div {
	width:100px;
	transform: rotate(90deg);
	transform-origin: right top;
}

.rotate{
	-moz-transition: all 1s linear;
	-webkit-transition: all 1s linear;
	transition: all 1s linear;
}

.rotate.down{
	-moz-transform:rotate(180deg);
	-webkit-transform:rotate(180deg);
	transform:rotate(180deg);
}