/*
 Theme Name:     THIS IS MAIN
 Theme URI:      https://thisismain.nl
 Description:    Divi child theme
 Author:         THIS IS MAIN
 Author URI:     https://thisismain.nl
 Template:       Divi
 Version:        1.0.0
*/


/* ------------------------------------------------------- */

#header {
	position: fixed;
	top: 0;
	width: 100%;
	left: 0;
}

.admin-bar #header {
	top: 32px;
}

.tim-header-row .et_pb_column {
	display: flex;
	align-items: center;
}

.tim-header-row .et_pb_module {
	margin-bottom: 0 !important;
}

.tim-header-row .et_pb_module.et_pb_menu {
	flex: 1;
	margin: 0 30px;
}

.tim-header-row .et_pb_module.et_pb_menu .et_pb_menu__wrap {
	justify-content: flex-end;
}

.tim-header-row .et_pb_module.et_pb_menu li {
	padding: 0 10px;
}

.tim-header-row .et_pb_module.et_pb_menu li a {
	padding: 12px 10px;
	font-size: 15px;
	font-weight: 500;
	text-transform: uppercase;
	color: #000;
	text-decoration: none;
}

.tim-header-row .et_pb_module.et_pb_menu li.tim-menu-btn a {
	background-color: #f6f6f6;
}


@media (max-width: 980px) {
	.tim-header-row .et_pb_module.et_pb_menu {
		margin: 0;
	}

	.tim-header-row .et_mobile_nav_menu ul.et_mobile_menu {
			left: auto;
			right: 0;
			min-width: 400px;
			top: calc(100% + 20px);
			padding: 20px;
			max-height: calc(100dvh - 150px);
			overflow: scroll;
	}

	.tim-header-row .et_mobile_nav_menu ul.et_mobile_menu .menu-item-has-children a {
			background-color: transparent;
	}
}

@media (max-width: 550px) {
	.tim-header .et_mobile_nav_menu ul.et_mobile_menu {
			min-width: 90vw;
			width: 90vw;
			max-width: 90vw;

	}
}









.et_pb_module.et_pb_social_media_follow li {
	margin-bottom: 0;
}

.et_pb_module.et_pb_social_media_follow li a,
.et_pb_module.et_pb_social_media_follow li a::before {
	width: 40px !important;
	height: 40px !important;
}












#main-content {
	padding-top: 155px;
}





.tim-align-items {
	align-items: center;
}

.et_pb_button_module_wrapper {
	display: inline-block;
	margin-right: 30px;
}


#copyright a {
	color: #FFF;
}





.tim-opdrachtgevers {
	margin: 0 -20px;
}

.tim-opdrachtgever {
	background-color: #FFF;
	padding: 30px;
	margin: 0 20px;
}

.tim-opdrachtgever h4 {
	font-size: 17px;
	margin: 20px 0 0 0;
}






.tim-projecten {
	margin: 0 -10px;
}

.tim-projecten-slide-inner {
	display: flex;
	flex-wrap: wrap;
	
}

.tim-project {
	width: calc(25% - 20px);
	margin: 10px 10px 30px;
}

.tim-project:nth-of-type(4n+4) {
	margin-right: 0;
}

.tim-project .tim-imgcontainer {
	display: flex;
	justify-content: center;
	align-items: center;
	overflow: hidden;
	aspect-ratio: 1/1;
	margin-bottom: 20px;
}

.tim-project .tim-imgcontainer img {
	-o-object-fit: cover;
	object-fit: cover;
	max-width: 10000%;
	max-height: 10000%;
	width: 100%;
	height: 100%;
	min-width: 100%;
 	min-height: 100%;
}

@media (max-width: 980px) {
	.tim-project {
		width: calc(50% - 20px);
	}
}

@media (max-width: 550px) {
	.tim-project {
		width: calc(100% - 20px);
	}
}







.slick-dots {
	position: relative;
}

.slick-dots li button {
	border-radius: 100%;
	border: 1px solid #8c424a;
	transition: all .3s;
}

.slick-dots li button::before {
	display: none !important;
}

.slick-dots li.slick-active button {
	background-color: #8c424a;
}













.nf-form-cont h3 {
	font-size: 28px;
	margin-bottom: 30px;
}

.nf-form-cont .ninja-forms-req-symbol {
	color: #8c424a;
}

.nf-form-cont .nf-error-msg,
.nf-form-cont .nf-error .nf-error-msg {
	color: #8c424a;
	font-weight: 400;
}

.nf-form-cont #ninja_forms_required_items,
.nf-form-cont .nf-field-container:not(.submit-container) {
	margin-bottom: 20px;
}

.nf-form-cont .nf-error.field-wrap .nf-field-element:after {
	background: transparent;
	border-radius: 0;
	top: 0;
	height: 50px;
	bottom: 0;
	right: 0;
	transition: none;
	color: #8c424a;
	border: 1px solid #8c424a;
}

.nf-form-cont .nf-before-form-content .nf-form-fields-required {
	display: none;
}

.nf-form-cont .nf-form-content {
	padding: 0;
}

.nf-form-cont .nf-form-content .label-above .nf-field-label,
.nf-form-cont .nf-form-content .label-below .nf-field-label,
.nf-form-cont .nf-form-content .label-hidden .nf-field-label {
	margin-bottom: 14px;
}

.nf-form-cont .nf-form-content label {
	color: #000000;
	font-size: 18px;
	font-weight: 600;
	text-transform: uppercase;
}

.nf-form-cont .nf-form-content .checkbox-wrap .nf-field-label label,
.nf-form-cont .nf-form-content .checkbox-wrap .nf-field-element label,
.nf-form-cont .nf-form-content .listcheckbox-wrap .nf-field-label label,
.nf-form-cont .nf-form-content .listcheckbox-wrap .nf-field-element label {
	font-weight: 600;
	font-size: 17px;
	color: #8f8f8f;
	padding: 4px 0;
	border-radius: 0;
	text-transform: initial;
}

.nf-form-cont .nf-form-content .checkbox-wrap .nf-field-label label a,
.nf-form-cont .nf-form-content .checkbox-wrap .nf-field-element label a,
.nf-form-cont .nf-form-content .listcheckbox-wrap .nf-field-label label a,
.nf-form-cont .nf-form-content .listcheckbox-wrap .nf-field-element label a {
	color: inherit;
	text-decoration: underline;
}

.nf-form-cont .nf-form-content .checkbox-wrap .nf-field-label label::before,
.nf-form-cont .nf-form-content .checkbox-wrap .nf-field-element label::before,
.nf-form-cont .nf-form-content .listcheckbox-wrap .nf-field-label label::before,
.nf-form-cont .nf-form-content .listcheckbox-wrap .nf-field-element label::before {
	content: "";
	width: 17px;
	height: 17px;
	position: absolute;
	left: 0;
	top: 10px;
	background-color: #FFFFFF;
	border: 1px solid #000;
}

.nf-form-cont .nf-form-content .checkbox-wrap .nf-field-label label.nf-checked-label::before,
.nf-form-cont .nf-form-content .checkbox-wrap .nf-field-element label.nf-checked-label::before,
.nf-form-cont .nf-form-content .listcheckbox-wrap .nf-field-label label.nf-checked-label::before,
.nf-form-cont .nf-form-content .listcheckbox-wrap .nf-field-element label.nf-checked-label::before {
	background-color: #8c424a;
	border-color: #8c424a;
}

.nf-form-cont .nf-form-content .checkbox-wrap .nf-field-label label::after,
.nf-form-cont .nf-form-content .checkbox-wrap .nf-field-element label::after,
.nf-form-cont .nf-form-content .listcheckbox-wrap .nf-field-label label::after,
.nf-form-cont .nf-form-content .listcheckbox-wrap .nf-field-element label::after {
	border: none;
	border-radius: 4px;
	background: #8c424a;
	border: 1px solid #8c424a;
	top: 5px;
}

.nf-form-cont .nf-form-content .checkbox-wrap .nf-field-label input,
.nf-form-cont .nf-form-content .checkbox-wrap .nf-field-element input,
.nf-form-cont .nf-form-content .listcheckbox-wrap .nf-field-label input,
.nf-form-cont .nf-form-content .listcheckbox-wrap .nf-field-element input {
	display: none;
}

.nf-form-cont .nf-form-content .checkbox-wrap .nf-field-label input:checked,
.nf-form-cont .nf-form-content .checkbox-wrap .nf-field-element input:checked,
.nf-form-cont .nf-form-content .listcheckbox-wrap .nf-field-label input:checked,
.nf-form-cont .nf-form-content .listcheckbox-wrap .nf-field-element input:checked {
	background: #8c424a;
	border-color: #8c424a;
}

.nf-form-cont .nf-form-content .list-select-wrap .nf-field-element > div,
.nf-form-cont .nf-form-content input:not([type=button]),
.nf-form-cont .nf-form-content textarea,
.nf-form-cont .nf-form-content .list-select-wrap .nf-field-element > div:focus,
.nf-form-cont .nf-form-content input:not([type=button]):focus,
.nf-form-cont .nf-form-content textarea:focus,
.nf-form-cont .nf-form-content .list-select-wrap .nf-field-element > div:active,
.nf-form-cont .nf-form-content input:not([type=button]):active,
.nf-form-cont .nf-form-content textarea:active {
	background: #FFFFFF;
	border-radius: 0;
	font-size: 18px;
	border: 1px solid #f6f6f6;
	padding: 16px 16px;
	color: #000000;
}

.nf-form-cont .nf-form-content .listselect-wrap .nf-field-element {
	background: #FFFFFF;
	border-radius: 0;
	font-size: 18px;
	border: 1px solid #f6f6f6;
	padding: 10px 16px;
	color: #000000;
}

.nf-form-cont .nf-form-content .listselect-wrap .nf-field-element select {
	appearance: none;
	-webkit-appearance: none;
	box-shadow: none;
	border: none;
	color: #000000;
	background: #FFFFFF;
	font-size: 18px;
}

.nf-form-cont .nf-form-content button,
.nf-form-cont .nf-form-content input[type=button],
.nf-form-cont .nf-form-content input[type=submit] {
	background-color: #d5ca79;
	width: 100%;
	text-align: center;
	color: #000;
	font-weight: 600;
	transition: all 0.3s;
	border: 2px solid #d5ca79;
	font-size: 18px;
	border-radius: 0;
	cursor: pointer;
	text-transform: uppercase;
}

.nf-form-cont .nf-form-content button:hover,
.nf-form-cont .nf-form-content input[type=button]:hover,
.nf-form-cont .nf-form-content input[type=submit]:hover {
	background: #d5ca79;
	color: #000;
	opacity: .7;
}

.nf-form-cont .nf-form-content .nf-after-field {
	margin-bottom: 20px;
}

.nf-form-cont .nf-form-content .nf-field-container.submit-container {
	margin-bottom: 0;
	margin-top: 20px;
}









/*----- HEADER -----*/

/* Sticky mobile menu */
@media screen and (max-width: 980px) {
	.et_fixed_nav #main-header.et-fixed-header  {
        position: fixed;
        height: 80px;
        margin-top: -55px;
}
}

/*----- EXTRA -----*/



/*----- FOOTER -----*/

/* Divi footer */
#main-footer {
    display: none !important;
}

/*----- FORMS -----*/
