/* layout container-full */
.container-full {
    padding-inline: 0;
}

/* links */
a {
	color: inherit;
	text-decoration: none;
}

/* Paragraphs */
p, .section-title p {
    font-size: 15px;
    line-height: 22px;
    letter-spacing: 1.1px;
	color: #6e6e6e;
	margin: 0 0 9.5px;
}

ul li {
    color: #6e6e6e;
}

/* project thumbnails: 1 per row */
@media screen and (max-width: 480px) {
	.project-index-thumbs .portfolio-item {
    	padding-left: 0 !important;
		padding-right: 0 !important;
	}
	
	.project-index-thumbs .portfolio-item {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
}

@media screen and (min-width: 768px) and (max-width: 992px) {
	.thumbnail-climatehouse {
		display: none !important;
	}
}

@media screen and (min-width: 480px) {	
	.thumbnail-title a, .portfolio-item__title a {		
		font-size: 18px !important;
		line-height: 18px !important;		
	}
}

/* General */
.hide {
	display: none !important;
}

.row, .vc_row {
	margin-left: 0 !important;
	margin-right: 0 !important;
}

.row-36-36 {
	padding-left: 36px !important;
	padding-right: 36px !important;
}


.row-46-46 {
	padding-left: 46px !important;
	padding-right: 46px !important;
}

.row-0-46 {
	padding-left: 0 !important;
	padding-right: 46px !important;
}

.row-46-36 {
	padding-left: 46px !important;
	padding-right: 36px !important;
}

.col-4p-4p {
	padding-left: 4% !important;
	padding-right: 4% !important;
	padding-top: 30px !important;
}

.vc_column_container>.vc_column-inner {
	padding-left: 0 !important;
	padding-right: 0 !important;
}

/*
.vc_row.vc_column-gap-20>.vc_column_container:first-child {
    padding-left: 0 !important;
}
*/

.vc_row.vc_column-gap-20>.vc_column_container:last-child {
    padding-right: 0 !important;
}

.vc_row.vc_column-gap-20 {
	margin-left: 0 !important;
	margin-right: 0 !important;
}

.ml-36 {
	margin-left: 36px !important;
}

.mr-36 {
	margin-right: 36px !important;
}

.ml-46 {
	margin-left: 46px !important;
}

.mr-46 {
	margin-right: 46px !important;
}

.ml-7p {
	margin-left: 7% !important;
}

.mr-7p {
	margin-right: 7% !important;
}

.pr-30 {
	padding-right: 30px !important;
}

/* main image */
.vc_row.vc_column-gap-20>.vc_column_container {
    padding-top: 0;
}

.pt-36 {
	padding-top: 36px !important;	
}

.pl-0 {
	padding-left: 0 !important;
}

.pl-10 {
	padding-left: 10px !important;
}

.pl-36 {
	padding-left: 36px !important;	
}

.pl-46 {
	padding-left: 46px !important;	
}

.pl-66 {
	padding-left: 66px !important;	
}

.plr-36 {
	padding-left: 36px !important;
	padding-right: 36px !important;	
}

.pr-4p {
	padding-right: 4% !important;
}

.pr-0 {
	padding-right: 0 !important;
}

.pr-36 {
	padding-right: 36px !important;
}

.pr-46 {
	padding-right: 46px !important;
}

.pt-5p {
	padding-top: 5% !important;
}

.ml--10 {
	margin-left: -10px !important;
}

.mr-0 {
	margin-right: 0 !important;
}

/* get rid of horizontal scrollbar */
.widget-area.widgets--columned-layout {
    margin: 0;
}

.widget-area .widget li a {
	color: #6e6e6e !important;
}

.vc_row {
	margin-left: 0;
	margin-right: 0;
}

/* Grundsätze */
.heading-center {
	margin-top: 60px !important;
	margin-bottom: 40px !important;
	text-align: center;
	font-family: Bulldog Std;
	line-height: 48px;
	letter-spacing: 1.1px;
	color: #1d1d1b !important;
}

.heading-center h1 {
	font-size: 60px !important;
	margin-bottom: 50px;
}

.heading-center p {
	padding-top: 10px;
	text-align: center;
	font-family: Bulldog Std;
	font-size: 30px;
	line-height: 36px;
	letter-spacing: 1.05px;
}

/* title after breadcrumb */
.wpb_wrapper .section-title>h2 {
    margin-top: 0;
}

/* Image caption */
.vc_figure-caption {
	margin-top: 25px !important;
	font-family: Bulldog Std;
	font-size: 16px !important;
	line-height: 22px;
	letter-spacing: 1.1px;
	color: #6e6e6e;
}


/* Breadcrumbs */
.breadcrumb {
	margin-bottom: 0;
}

.breadcrumb-text, .breadcrumb {
	font-family: Bulldog Std;
	font-size: 12px;
	line-height: 22px;
	letter-spacing: 1.1px;
	color: #6e6e6e !important;
	text-transform: uppercase;
}

.breadcrumb-projects, .breadcrumb-project-category {	
	text-transform: uppercase !important;
	color: #1d1d1b !important;
}

.breadcrumb-container {
	margin-top: 150px;
	text-align: center;
}

.lab-breadcrumb {
	margin-block-end: 0 !important;
}

.lab-breadcrumb .home > .breadcrumb-text {
	font-family: Bulldog Medium Std;
	color: #1d1d1b;
}

.breadcrumb__row>span {
	padding-left: 9px;
	padding-bottom: 12px;
}

/* Buttons */
.button-black, .button-black-download {
	display: flex !important;
    justify-content: flex-end;	
	align-items: center;
	margin-bottom: 0 !important;
}

.button-black button {	
	margin-bottom: 12px !important;
	background-color: #1d1d1b !important;
}

.button-black a {
	text-align: center;
	font-family: Bulldog Medium Std;
	font-size: 16px !important;
	line-height: 22px !important;
	letter-spacing: 1.1px;
	padding-left: 20px !important;
	color: #fff !important;
	background-color: #1d1d1b !important;
}

.button-black-download button, .button-black-download a {	
	font-family: Bulldog Medium Std;
	font-size: 16px !important;
	line-height: 22px !important;
	letter-spacing: 1.1px;
	color: #fff !important;
	margin-bottom: 0 !important;
	background-color: #1d1d1b !important;
}

.button-black-download a {
	text-align: center !important;
	width: 150px;
	padding-left:  0 !important;
	padding-right: 0 !important;
}


.button-black button, .button-black-download button {
	padding-right: 45px !important;	
}


/* Bootstrap gutter */
.col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-sm-1, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-xs-1, .col-xs-10, .col-xs-11, .col-xs-12, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9 {
	padding-left: 10px;
	padding-right: 10px;
}

/* Main container */
.container {
	padding-left: 0;
	margin-left: 0;
	padding-right: 0;
	margin-right: 0;
}

.container:before {
  content: "";
  position: fixed;
  top: -10px;
  left: 0;
  width: 100%;
  height: 10px;
  z-index: 100;
}

/* Header */
.header-block {
	padding-top: 30px !important;
	padding-bottom: 30px !important;
}

.header-block__row-container {
	margin-left: 0;
	padding-left: 0;
}

/*
.header-block__column {
	padding-right: 28px;
}
*/

.header-bottom-border .header-block {
   border-bottom: 8px solid #f1f1ef;
}

.site-header.fullwidth-header .container {
    padding-left: 0;
    padding-right: 34px;
}

/* Main menu - Home page */
.standard-menu .menu {
	padding-top: 0;
}

.nav-container-main-menu {
	padding-left: 15px;
	padding-right: 14px;
}

body.home .nav-container-main-menu ul.menu>li>a {
	color: #1d1d1b !important;	
}

/* Main menu - All pages */
.nav-container-main-menu ul.menu>li>a {
	font-family: Bulldog Medium Std;
	color: #6e6e6e  !important;
	font-size: 18px;
	line-height: normal;
	letter-spacing: 1.1px;
	padding: 15px 25px;
	transition: none !important;	
}

/* Main menu - language switcher */
.nav-container-main-menu ul.menu>li.wpml-ls-menu-item .sub-menu {
	min-width: 50px !important;
	width:50px;
	padding: 15px 18px !important;	
	left: 13px;
}

.nav-container-main-menu ul.menu>li.wpml-ls-menu-item>a {
	padding-right: 0;
}

/* Main menu - Home page - link hover */
body.home .nav-container-main-menu ul.menu>li>a:hover {
    color: #fff !important;
}

/* Main menu - Other pages - link hover */
.nav-container-main-menu ul.menu>li>a:hover {
    color: #fcbf00 !important;
}

/* Main menu - Home page - Current menu item */
body.home .nav-container-main-menu ul.menu>li.current-menu-item>a {
	color: #fff !important;
	border-color: #fff;	
}

/* Main menu - Other pages - Current menu item */
.nav-container-main-menu ul.menu>li.current-menu-item>a {
	color: #1d1d1b !important;
	border-color: #999;
	border-top: 3px solid #6e6e6e;
    border-bottom: 3px solid #6e6e6e;
}

.nav-container-main-menu ul.menu>li>a:after {
	display: none !important;
}

.nav-container-main-menu ul.menu>li.current-menu-item>a:after {
	display: none;
}

/* remove underline */
.link-style .menu .menu-item:is(.current-menu-item,.current-menu-parent,.current_page_item,.current-menu-ancestor,.current_page_ancestor)>a .link, .link-style .menu .menu-item:is(.hover,:hover)>a .link {
    --k-ls-hovered: none;
}





/*
div.site-header--sticky-active-style .nav-container-main-menu ul.menu>li>a.link-hover {
	color: #fcbf00 !important;
}

div.site-header--sticky-active-style .nav-container-main-menu ul.menu>li.current-menu-item>a {
	color: #1d1d1b !important;
	border-top: 3px solid #999;
	border-bottom: 3px solid #999;
	padding: 15px 25px;	
}
*/

/* Main menu - margin between menu items */
.nav-container-main-menu ul.menu>li+li {
	margin-left: 0;
}

/* Sub menu */
.nav-container-main-menu .sub-menu {	
	margin-top: 32px !important;
	padding: 15px 22px !important;	
	min-width: 250px !important;
	background-color: rgb(0,0,0) !important; /* Fallback color */
  	background-color: rgba(0,0,0,0.8) !important; /* Black w/ opacity */
}

.nav-container-main-menu .sub-menu li {
	font-family: Bulldog Std;
	color: #f1f1ef !important;
	font-size: 16px;
	line-height: 1;
	letter-spacing: 1.05px;
}

.nav-container-main-menu .sub-menu li+li {
	margin-top: 5px !important;
}

.nav-container-main-menu .sub-menu a {
	white-space: pre-wrap !important;
}

.nav-container-main-menu .sub-menu li a:hover, .nav-container-main-menu .sub-menu li.current_page_item a {
	color: #fcbf00 !important;
}

.nav-container-main-menu .sub-menu li a:after {
	display: none;
}


/**************************/
/* Footer - General       */
/**************************/

.site-footer .footer-widgets {
	margin-top: 0;
	margin-bottom: 0;
	letter-spacing: 1.1px;
}

.footer-widgets a {
	color: #6e6e6e !important;	
}

.footer-widgets a.link-hover:after {
	display: none;
}

.site-footer .widget {
	margin-bottom: 0;
	padding-bottom: 35px;
	font-size: 15px !important;
}

.footer-h1, thumbnail-h1 {
	font-family: Bulldog Medium Std;
	font-size: 24px;
	line-height: 36px;
	letter-spacing: 1.1px;
}

.footer-hr {
	border-top: 3px solid #1d1d1b;
	width: 45px;
	margin-top: 20px !important;
	margin-bottom: 50px !important;
	opacity: 1;
}

/**************************/
/* Footer - Other         */
/**************************/



/* Footer - left widget */
#block-11 {
	padding-top: 50px;
	padding-left: 112px;
	font-family: Bulldog Medium Std !important;
}

/* Footer - right widget */
#block-13 {
	margin-top: 0;
	padding-top: 50px;
	border-left: solid 1px #ccc; 
	padding-left: 112px;	
}

/* Footer Widget - Contact */
.footer-contact-left {
	padding-bottom: 20px;
	font-size: 28px;
	color: #1d1d1b !important;	
}

.footer-contact-center {
	vertical-align: top;
	padding-left: 30px;
	padding-bottom: 20px;
	font-family: Bulldog Medium Std;
	color: #1d1d1b !important;
	font-weight: 700;	
}

.footer-contact-right {
	vertical-align: top;
	padding-left: 15px;
	padding-bottom: 20px;
	font-family: Bulldog Medium Std;
	line-height: 1.33;
	color: #6e6e6e;
}

.footer-phone .footer-contact-right {
	margin-left: 23px;
}

.footer-mail .footer-contact-right {
	margin-left: 32px;
}

/* Footer - Social Media Icons */
.fab {
	font-size: 30px;
	margin-right: 13px;
}

/* Footer - Copyright */
.copyright {
	font-family: Bulldog Medium Std;
	padding-top: 50px;
	padding-bottom: 70px;	
}

/* remove hr above copyright */
.footer-widgets + hr {
	display: none;
}

/* Footer Widget - Legal */
.footer-legal-left {
	font-family: Bulldog Medium Std;
	color: #1d1d1b;
}

.footer-legal-right {
	font-family: Bulldog Medium Std;
	color: #6e6e6e;
	padding-left: 25px;	
}

/* Footer Menu */
#block-13 .menu {
	font-family: Bulldog Medium Std;	
}

#block-13 .menu li:first-child {	
	color: #1d1d1b;
}

.menu-footer-menu-container .menu li {
	padding: 2px 0 !important;
}

/************************ Homepage ************************/
.header-bottom-border .header-block {
	border-bottom: 0 !important;
}

/* Homepage slider */
.slider-black {
	font-family: Bulldog Std !important;
}

.slider-white {
	font-family: Bulldog Medium Std !important;
}

/* Realized Projects */
.realized_projects .lab-portfolio-items {
	margin-bottom: 0;
} 

.realized_projects .portfolio-title-holder {
	display: none;
} 

.realized_projects > div {
	padding-bottom: 0 !important;
}

.realized-projects-text {
	padding: 20px !important;
}

/*Kalium 4*/
.realized_projects .portfolio-items .portfolio-item {
	padding: 10px;
}

.realized_projects .portfolio-items .portfolio-item img {
	aspect-ratio: 1.6;
	object-fit: cover;
}

/******************/
/* Page: About Us */
/******************/
.swiper-button-next, .swiper-button-prev {
	color: #fff !important;
}

.swiper-slide img {    
    aspect-ratio: 16 / 10;    
}

/*
.swiper-scrollbar-drag {   
    background: var(--swiper-scrollbar-drag-bg-color, rgba(255, 255, 255, .85)) !important;
}
*/

.vc_images_carousel .vc_carousel-control {
	opacity: 1 !important;
}

.vc_images_carousel .vc_carousel-control .icon-next, .vc_images_carousel .vc_carousel-control .icon-prev {
	color: #fff;
}

.vc_images_carousel .vc_carousel-slideline-inner .vc_inner img {
	aspect-ratio: 16 / 10;	
	object-fit: cover;
}

.vc_images_carousel .vc_carousel-indicators {
	bottom: -30px !important;
}

.vc_images_carousel .vc_active .vc_inner {
	margin-left: 0 !important;
}

.vc_images_carousel .vc_active~div:nth-of-type(4) .vc_inner {
	margin-right: 0 !important;
}


.about-us-image {
	margin-bottom: 0 !important;
}

.team-holder .member {
	margin-bottom: 20px;
}

.team-holder img {
  -webkit-filter: grayscale(100%); /* Safari 6.0 - 9.0 */
  filter: grayscale(100%);
}

.thumb_team {
	z-index: 40;
}

.thumb_team img {
	aspect-ratio: 1 !important;
	object-fit: cover !important;
}

/* set transition for team member thumb*/
.thumb_team .image-placeholder {
	opacity: 1;
	transition: all .5s ease-in-out;
}

/* hide alternative image */
.thumb_team .image-placeholder:nth-child(3) {
	display: none;
	opacity: 1;	
	transition: all .5s ease-in-out;
}

.team-hamburger-container {
	display: flex;
	justify-content: flex-end;
}

.team-hamburger {
	width: 35px;
    height: 35px;
    margin-top: -56px;
    margin-right: 20px;
    text-align: center;
    padding-top: 8px;
	font-size: 16px;
    background-color: #fcbf00;
	opacity: 0.7;
    z-index: 30;	
}

/* team member yellow overlay */
.member .hover-state {
	margin: 5%;
}

.hover-state.padding {
	padding: 9% !important;
}

.hover-state .social {
	position: absolute;
    bottom: 15%;
}

.team-name {
	font-family: Bulldog Medium Std;
	font-size: 24px;
	line-height: 24px;
	letter-spacing: 1.05px;
	color: #1d1d1b;
}

.team-title {
	font-family: Bulldog Std;
	font-size: 18px;
	line-height: 24px;
	letter-spacing: 1.05px;
	color: #1d1d1b;
}

.team-email {
	margin-top: 15px;
	font-family: Bulldog Medium Std;
	font-size: 18px;
	line-height: 24px;
	letter-spacing: 1.05px;
	color: #1d1d1b !important;
	padding-bottom: 10px;
}

.team-email a {
	color: #1d1d1b !important;
}

.team-email a:after {
	background: #1d1d1b !important;
}

.open_cv_modal {
	margin-top: 10px;
	padding: 14px 20px !important;
	font-family: Bulldog Medium Std;
	font-size: 16px;
	line-height: 22px;
	letter-spacing: 1.1px;
	background-color: #1d1d1b;
	color: #fff;
}

/* former team */

.former-team-left-col {
	padding-right: 15px;
	padding-bottom: 35px;
}

.former-team-second-col .vc_column-inner {
	padding-left: 0;	
}


.former-team-right-col-container, .right-col-container {	
	padding-left: 10px;
}

.former-team-last-col .vc_column-inner {
	padding-right: 0;	
}


.former-team-heading, .left-heading {
	font-family: Bulldog Std;
	font-size: 42px;
	line-height: 44px;
	letter-spacing: 1.1px;	
	color: #1d1d1b;
	text-align: center;
	padding-left: 20px;
	padding-right: 20px;
}

.left-heading h1 {
	font-family: Bulldog Std;
	font-size: 42px;
	line-height: 44px;
	letter-spacing: 1.1px;	
	color: #1d1d1b;
	text-align: center;
}

.former-team-container {
    box-sizing: content-box;    
    padding-top: 30px;
    padding-bottom: 30px;
    border: 0;
	border-top: 4px solid #f1f1ef;
}

.former-team-last {
	border-bottom: 4px solid #f1f1ef;
}

.former-team-year {
	font-family: Bulldog Std;
	font-size: 18px;
	line-height: 24px;
	letter-spacing: 1.1px;
	color: #6e6e6e;
}

.former-team-name {
	font-family: Bulldog Medium Std;
	font-size: 18px;
	line-height: 24px;
	letter-spacing: 1.1px;
	color: #000000;
}

.former-team-name.plus-1 {
	padding-bottom: 24px;
}

.former-team-name.plus-2 {
	padding-bottom: 48px;
}

.former-team-name.plus-4 {
	padding-bottom: 96px;
}

#project-idea {
	background-color: #1d1d1b;
	margin: 46px !important;
}

.projectidea-heading {
	margin-top: 50px;
	margin-bottom: 50px;
	text-align: center;
	font-family: Bulldog Std;
	font-size: 60px;
	line-height: 1.1;
	letter-spacing: 6px;
	color: #fff;	
}

.projectidea-text {
	margin-bottom: 45px;
	text-align: center;
	font-family: Bulldog Std;
	font-size: 32px;
	line-height: 32px;
	letter-spacing: 1.1px;
	color: #fff;
}

.contact-button .vc_btn3.vc_btn3-size-lg {
	padding-left: 25px;
	padding-right: 25px;
	font-family: Bulldog Medium Std;
	font-size: 18px !important;
	letter-spacing: 2px;
	color: #fff;
	border-color: #fff !important;
	border-width: 1px;
}

.contact-text .vc_cta3-content p {
	font-size: 18px !important;
}

.prot_email a {
	max-width: 100%;
}

#button-routeplanner {
	display: flex;
    justify-content: flex-end;	
	margin-top: -125px;
	margin-bottom: 60px;
	padding-right: 20px;
}

#button-routeplanner a {
	z-index: 499;	
}

/* map marker */
i.fa-building {
	font-size: 24px;
	top: 57% !important;
}

div.leaflet-zoom-animated.leaflet-interactive {
	width: 40px !important;
}

/* Curriculum Modal Windows */
.cv_modal {
  display: none; /* Hidden by default */
  position: fixed; /* Stay in place */
  z-index: 50; /* Sit on top */
  left: 0;
  top: 0;
  width: 100%; /* Full width */
  height: 100%; /* Full height */
  overflow: auto; /* Enable scroll if needed */
  background-color: rgb(0,0,0); /* Fallback color */
  background-color: rgba(0,0,0,0.4); /* Black w/ opacity */
}

/* Modal Content/Box */
.modal-content {
  background-color: #fefefe;
  margin: 15% auto; /* 15% from the top and centered */
  padding: 20px;
  border: 1px solid #888;
  width: 80%; /* Could be more or less, depending on screen size */
}

/* The Close Button */
.close {
  color: #1d1d1b;
  float: right;
  font-size: 28px;
  font-weight: bold;
}

.close:hover,
.close:focus {
  color: black;
  text-decoration: none;
  cursor: pointer;
}

/* News alert */
.news-alert-container {
	overflow: hidden;
}

.news-alert, .projectidea {
	text-align: center;
	overflow: hidden;
	padding-left: 25px;
	padding-right: 25px;
	padding-bottom: 40px;
}

.news-heading {
	display: inline;	
	font-family: Bulldog Std;
	font-size: 80px;
	letter-spacing: 2px;
	color: #1d1d1b;	
}

.news-quotes {
	display: inline;	
	font-family: Bulldog Medium Std;
	font-size: 120px;
	letter-spacing: 6px;
	line-height: 1;
	color: #1d1d1b;	
}

.news-overlay {
	text-align: center;
	font-family: Bulldog Std;	
	letter-spacing: 12px;
	line-height: 1;
	color: #fcc947;
}

/* Contact Page */
form.contact-form {
	font-family: Bulldog Std;
	font-size: 18px;
	line-height: 22px;
	padding: 30px;
	border: solid 2px #f1f1ef;
}
.contact-form label, .contact-form input {
	border-color: #f1f1ef;
	border-width: 3px;
}

:is(input,select,textarea):where(:not([type=checkbox],[type=radio],[type=submit],[type=button],[class*=labeled-input])) {
	border-color: #f1f1ef;
	border-width: 3px;
}

input[type=checkbox] {
	margin-top: 0.1em;
}

.contact-form .labeled-textarea-row {	
	border: solid 3px #f1f1ef;
	padding: 10px;
}

.contact-form .labeled-textarea-row textarea {
	padding: 0;
}

.contact-form .labeled-textarea-row label {
	border: none;
}

.contact-form button {	
	width: 100%;
	font-family: Bulldog Medium Std;
	font-size: 18px !important;
	line-height: 35px !important;
	letter-spacing: 1.1px;
	color: #fff !important;
	background-color: #1d1d1b !important;
}

.contact-form button span:after {
	padding-left: 7px;	
	font-family: "Font Awesome 5 Free"; 
	font-weight: 900;
    content: "\f1d8";
}

/* Courses */
/* remove margin from accordion */
.vc_tta-container {
	margin-bottom: 0 !important;
}

.course-section {
	background-color: #fff !important;
	box-sizing: content-box;    
    padding-top: 30px;
    padding-bottom: 30px;
    border: 0;
	border-top: 4px solid #f1f1ef;
}

.course-section-last {
	background-color: #fff !important;
	box-sizing: content-box;    
    padding-top: 30px;
    padding-bottom: 30px;
    border: 0;
	border-top: 4px solid #f1f1ef;
	border-bottom: 4px solid #f1f1ef;
}

.course-section .vc_tta-title-text, .course-section-last .vc_tta-title-text {
	font-size: 18px;
	line-height: 22px !important;
	letter-spacing: 1.1px;
}

.courses-heading > div {
	background-color: #f1f1ef !important;
}

.courses-archive-container {
	padding-right: 10px;
}

/* Home Page */
body.home .header-bottom-border .header-block {
	border-bottom-color: #fcbf00;
}

.image-square {
	margin-bottom: 0 !important;
}

.image-square > figure > div > img {
	aspect-ratio: 1 / 1;
	object-fit: cover;
}

/* Project Type Pages */
.portfolio-item__thumbnail img {
	aspect-ratio: 1.6 !important;
	object-fit: cover;
}

.grid.masonry-container>* {
	margin-top: 0;
}



/* Project Page */
.single-portfolio {
	color: #1d1d1b;
	line-height: 1.333;
}

.mm-masonry {
	--_gap: 10px !important;
	grid-auto-rows: auto !important;  
}

.mm-masonry__item {
	grid-auto-rows: auto !important;  
}

.single-portfolio .mm-masonry__img {
	aspect-ratio: 1.6;
	object-fit: cover;
	max-width: 100%;
}

@media screen and (max-width: 768px) {
	.single-portfolio .mm-masonry__img {
		padding-bottom: 10px;
	}
}



.portfolio-item-entry {
	padding-bottom: 10px !important;
}


.thumb_16 img {
	aspect-ratio: 1.6 !important;
	object-fit: fill;
}

.project-meta {
	margin-top: 18px;
}

/* gallery overlay project title */
.gallery-project-title > div {
	margin: 0 !important;
}

#project-button-gallery a, #project-button-press a {
	min-width: 195px;
}

.project-index-main-text {
	padding-top: 5% !important;
	padding-left: 20px !important;
	padding-right: 20px !important;
}

.project-index-main-img {
	padding-left: 20px !important;
}

.project-index-thumbs {
	padding-left: 0 !important;
	padding-right: 0 !important;
}

.wpb_wrapper .lab-portfolio-items {
	margin-bottom: 0 !important;
}



.project-main-image-container {
	padding-right: 3px !important;
	padding-top: 0 !important;
	padding-left: 0 !important;
}

.project-main-image-container div {
	padding-left: 0 !important;
}

.project-main-text-container {
	margin-top: 0;
	padding-right: 46px !important;
}


.project_main_image img, .project_highlight_image img {
	max-height: 950px;
}

.project_main_image, .project_highlight_image {	
	margin-bottom: 0;
}

.project_main_image img, .project_highlight_image img {
	aspect-ratio: 1;
	object-fit: cover;
}

.project_meta_title {
	font-family: Bulldog Medium Std;
	color: #6e6e6e;
	font-size: 15px !important;
	line-height: 22px !important;
	letter-spacing: 1.1px;	
}

.project_meta_value {
	padding-left: 15px;
}

/* image gallery left margin */
.project-gallery {
	margin-left: 36px;
	margin-right: 36px;
}

.highlight-image-left img {
	padding-left: 36px;
	padding-right: 16px;
}

.highlight-image-right img {
	padding-right: 46px;
}

/* image gallery gap */
.project-gallery .isotope-item img {
	padding: 10px;	
}

.highlight-text-section {
	margin-left: 8%;
	margin-right: 8%;
}

/*
.highlight-text-columns {
	margin-left: -10px !important;	
}
*/

@media screen and (min-width: 768px) {
	.similar_projects .wpb_wrapper {
		margin-top: 70px;
	}
}

/* masonry overlay */
.portfolio-items .portfolio-item__hover-overlay {
	transition: none;
}

.vc_grid-item-mini.vc_is-hover .vc_gitem-zone.vc_gitem-zone-b {
	color: #1d1d1b !important;
	background-color: #fcbf00 !important;
    margin: 20px !important;
    opacity: 0.9 !important;
}

/* masonry gallery image size */
.vc_masonry_media_grid img {
	aspect-ratio: 655 / 409;
}

/* light gallery */
.lg-sub-html h3 {
	color: #ddd;
}

.lg-sub-html p {
	color: #ccc;
}

.lg-outer .lg-thumb-outer.lg-grab .lg-thumb-item {
	border: none;
}

.lg-outer .lg-thumb-outer.lg-grabbing .lg-thumb-item {
	border: none;
}

.lg-outer .lg-thumb-item {
	border-radius: 0 !important;
	opacity: .7;
}

.lg-outer .lg-thumb-item.active {
	border: 2px solid #FFF !important;
}

.lg-outer .lg-thumb-item.active {
	opacity: 1;
}

.lg-outer .lg-thumb-item:hover {
	opacity: .85;
}

/***************************/
/* project - press & media */
/***************************/

/* only show press if there are any */
#press_and_media {
	display: none;
}

#press_and_media:has(> .press-right-col div div div) {
	display: flex;
}

.press-left-col div {	
	background-color: #f1f1ef !important;
}

.press-left-col .left-heading, .courses-heading div div div {
	padding: 20px 0;
	margin-bottom: 0 !important;
}

.press-right-col > .vc_column-inner > .wpb_wrapper > div {
	border-top: 4px solid #f1f1ef;
}

.press-right-col > .vc_column-inner > .wpb_wrapper > div:last-child {
	border-top: 4px solid #f1f1ef;
	border-bottom: 4px solid #f1f1ef;
}

.press-download-wrapper {
    display: flex; 
    justify-content: end;
}

/* date and title column */
.press-title-block {
	margin-bottom: 0 !important;
}

.press-title-container {
    box-sizing: content-box;    
    padding-top: 25px;
    padding-bottom: 25px;
    border: 0;
}

.press-date {
	font-family: Bulldog Std;
	font-size: 18px;
	line-height: 24px;
	letter-spacing: 1.1px;
	color: #6e6e6e;
}

.press-title {
	font-family: Bulldog Medium Std;
	font-size: 18px;
	line-height: 24px;
	letter-spacing: 1.1px;
	color: #000000;
}

/* download button column */
.press-download-block {
	margin-bottom: 0 !important;
}

.press-download-size-div {
	font-family: Bulldog Std;
	font-size: 18px;	
	letter-spacing: 1.1px;
	color: #6e6e6e;	
	margin-top: 20px;
	margin-bottom: 20px !important;
}

.press-download-size {		
	margin-right: 20px;
}

.press-download-button {
	padding-left: 30px !important;
	padding-right: 30px !important;
}

.press-link-button {
	padding-left: 52px !important;
	padding-right: 53px !important;
}

/* project thumbnail */

.thumb .hover-state, .portfolio-item .portfolio-item__hover-overlay {
	background: #fcbf00;
	opacity: .9;
	padding: 5%;
}

div.hover-state.info.thumbnail-title, div.hover-state .info .thumbnail-title a, div.hover-state .info, .portfolio-item__title a, .portfolio-item__details .thumbnail-title a {
	font-family: Bulldog Medium Std;
	font-size: 24px;
	line-height: 24px;
	letter-spacing: 1.05px;
	color: #1d1d1b !important;
}

.thumbnail-description {
	font-family: Bulldog Std;
	font-size: 18px;
	line-height: 20px;
	letter-spacing: 1.05px;
	color: #1d1d1b;
}

.portfolio-holder .item-box .info {
	padding: 5% !important;
}

/*****************************/
/* project index page images */
/*****************************/
/* square image */
div.square>div>div>div>figure>a>img {
	aspect-ratio: 1 / 1;
	object-fit: cover;
}

/* project thumbnails */
.portfolio-item .thumb {
	aspect-ratio: 655 /409;
}

.portfolio-item .thumb .image-placeholder img {
	object-fit: cover;
}

.project-index-heading, .project-index-right-col {
	padding-left: 20px !important;
	padding-top: 5% !important;
}

.project-index-heading div {
	-webkit-box-pack: start !important;
    -webkit-justify-content: flex-start !important;
    -ms-flex-pack: start !important;
    justify-content: flex-start !important;
}

.portfolio-main-image {
	padding-right: 0 !important;
}

.portfolio-main-image>div>div>div {
	margin-bottom: 0 !important;
}

.subportfolio-row {
	margin-left: 46px !important;	
	margin-right: 46px !important;
}

.subportfolio-container {
	padding-left: 0 !important;
	padding-right: 0 !important;	
}

/********************
 * Mobile Menu
 *******************/
.mobile-menu {
	padding: 0;
}

.toggle-bars__bar-line {
	background-color: #6e6e6e;
	height: 2px;
}

.home .toggle-bars__bar-line {
	background-color: #1d1d1b;
	height: 3px;
}

.mobile-menu .list-nav-menu {
	width: 100%;
}

.mobile-menu .menu .children {
	padding-inline: 30px;
	padding-top: 10px;
}	

.mobile-menu-close {
	width: 45px;
	height: 45px;
	padding: 0;
}

.nav-container-mobile-menu ul.menu>li>a {
	font-family: Bulldog Medium Std;
	font-size: 24px;
	line-height: 24px;
	text-transform: none;
	color: #9c9a9a;
	padding: 10px 10px;
	border-bottom: 3px solid #f1f1ef;
}

/* darker colour for first menu item */
.nav-container-mobile-menu ul.menu>li.menu-item:first-child>a {
	color: #1d1d1b !important;
}

/* caret after projects */
.nav-container-mobile-menu ul.menu li.menu-item-has-children>a:after {
	 font-size: 35px;
	 margin-left: 20px;
	 top: 2px;
}

/**************************/
/* WPML Language Selector */
/**************************/

.kalium-wpml-language-switcher ul.menu li.menu-item a {	
	font-size: 18px;
	color: #6e6e6e !important;		
}

/* selector background */
.kalium-wpml-language-switcher ul.sub-menu {		
	background: none !important;
	margin-top: -11px;
	row-gap: 4px;
	left: -15px;
}

.kalium-wpml-language-switcher ul.sub-menu li.menu-item {
	padding-top = 0;
}

/* hide wpml language switcher below width 1390px */
.header-block__item--type-wpml-language-switcher {
    display: none !important;
	padding-left: 15px;
	padding-right: 15px;
}

.header-logo.logo-image {
	display: flex;
	align-items: center;
}


@media screen and (min-width: 1390px) {
	/* hide wpml menu except in hamburger menu 	
	.wpml-ls-slot-326 {
		display: none !important;
	} */
		
	.header-block__item--type-wpml-language-switcher {
		display: flex !important;
	}
	
	/* font-size it, en */
	.kalium-wpml-language-switcher ul.menu li.menu-item a {
		font-family: Bulldog Medium Std !important;
		font-size: 18px !important;
	}

	.kalium-wpml-language-switcher ul.menu li.menu-item a:hover {
		color: #1d1d1b !important;
	}
	
	body.home .kalium-wpml-language-switcher ul.menu li.menu-item a {
		color: #1d1d1b !important;
	}
	
	body.home .kalium-wpml-language-switcher ul.sub-menu li.menu-item a {
		color: #1d1d1b !important;
	}

	body.home .kalium-wpml-language-switcher ul.sub-menu li.menu-item a:hover {
		color: #fff !important;
	}
}

@media screen and (max-width: 1390px) {
	/* Mobile Sub Menu */
	ul.sub-menu {		
		min-width: 250px !important;
		background-color: #1d1d1b !important;
		font-family: Bulldog Std;
		color: #f1f1ef !important;
		font-size: 16px;
		line-height: 1;
		letter-spacing: 1.05px;
		padding: 0 22px !important;	
		min-width: 250px !important;
	}
	
	ul.sub-menu>li>a {
		font-family: Bulldog Std;
		color: #9c9a9a !important;
		font-size: 24px !important;
		line-height: 1;
		letter-spacing: 1.05px;
		padding: 2px 22px !important;
	}
	
	ul.sub-menu>li:first-child {
		padding-top: 20px;
	}

	/* WPML */
	.kalium-wpml-language-switcher, .kalium-wpml-language-switcher.hover {
		position: fixed;
		bottom: 0;
		height: 70px !important;
		width: 100%;
		margin: 0 !important;
	}
	
	.kalium-wpml-language-switcher ul.sub-menu {
		background: none !important;
	}
	
	.kalium-wpml-language-switcher languages-list a,
	.kalium-wpml-language-switcher:hover .languages-list a.language-entry {
		width: 33.33%;
		margin-left: auto;
		font-size: 24px;
		color: #fff;
		background-color: #1d1d1b !important;
	}
	
	.kalium-wpml-language-switcher.hover .languages-list .language-entry .language-title {
		font-size: 24px;
	}
	
	.kalium-wpml-language-switcher .languages-list .language-entry {	
		color: #fff !important;		
	}
	
	.kalium-wpml-language-switcher .languages-list .language-entry.current-language {	
		color: #1d1d1b !important;		
	}
	
	.mobile-menu-container .kalium-wpml-language-switcher .languages-list a span {
		text-align: center !important;
	}

	/* de */
	.kalium-wpml-language-switcher .languages-list a:first-child,
	.kalium-wpml-language-switcher:hover .languages-list a:first-child
	{
		background-color: #fcbf00 !important;
		margin-left: 0;
	}
	
	.mobile-menu-container .kalium-wpml-language-switcher .languages-list a:last-child {
		border-left: 1px solid #9c9a9a;		
	}
	
	
	.kalium-wpml-language-switcher .languages-list .language-entry,
	.kalium-wpml-language-switcher.hover,
	.kalium-wpml-language-switcher .languages-list .language-entry:hover {
		visibility: visible !important;
		opacity: 1  !important;		
	}
	
	.kalium-wpml-language-switcher .languages-list .language-entry .language-title {
		padding: 10px 16px;
	}	
	
	.languages-list a {
		font-family: Bulldog Std Medium;
		font-size: 52px;
		color: #9c9a9a;
	}
	
	.languages-list a.current-language {	
		color: #1d1d1b;	
	}
	
	/* distance between languages */
	.kalium-wpml-language-switcher .languages-list .language-entry {
		height: 70px;		
	}
	
	.nav-container-mobile-menu {
		padding-top: 0;
	}
		
	.mobile-menu-header {
		display: flex !important;
		margin-bottom: 20px;
		border-bottom: 8px solid #f1f1ef;
	}
	
	.mobile-menu-logo {
		padding: 20px 0 !important;		
	}
	
/*	.mobile-menu-x, .kalium-icon-remove {
		width: 99px;
		font-size: 32px;
		padding-top: 31px;
		text-align: center;
		justify-content: flex-end;
		margin-left: auto;
		background-color: #fcbf00;
	} */

	.mobile-menu-close {
	    background-color: #fcbf00;		
	}

	.kalium-icon-remove:before {
		font-weight: 900;
	}
}

@media screen and (max-width: 600px) {
	.mobile-menu-logo, .mobile-menu-logo img {
		max-width: 75% !important;		
	}
	
	.mobile-menu-x {
		width: 89px;		
	}
	
	.header-block__column.header-block__logo.header-block--auto-grow {
		max-width: 75% !important;		
	}
	
	/* hamburger 
	.header-block__item--type-menu-main-menu.header-block__item--mobile-menu-toggle {
		margin-top: -8px;
	}*/
}

@media screen and (max-width: 480px) {
	.mobile-menu-logo, .mobile-menu-logo img {
		max-width: 50% !important;
		padding-bottom: 0;		
	}
	
	.mobile-menu-x {
		width: 79px;
	}
}


/* hide mobile-menu-header unless screen size < 992px */
.mobile-menu-header {
	display: none !important;
}

/* News page */
.news-breadcrumb-column .breadcrumb-container {
	margin-top: 46px;
	margin-bottom: 46px;
}