:root {
	--primary-colour: #2C9AD8;
	--light-blue: #EAF5FB;
	--dark-blue: #122947;
	--heading-font: 'Josefin Sans', Helvetica, Arial, Lucida, sans-serif;
}
body {
	overflow-x: hidden !important;
	color: var(--dark-blue);
	font-weight: 400;
}

ul li { margin-bottom: 8px; }
.no-link {
	cursor: not-allowed;
}
.no-link.menu-item>a { pointer-events:none; }
.primary-list-style ul {
	list-style: none;
}
.primary-list-style li,
.listing-modal ul li { 
	position:relative; 
	padding-left: 28px;
}
.primary-list-style li:not(:last-child) {
	margin-bottom: 24px;
}
.primary-list-style li:before,
.listing-modal ul li:before {
	content: '';
    height: 12px;
    width: 12px;
    background-color: #2C9AD8;
    display: block;
    position: absolute;
    left: 0;
    border-radius: 50%;
    top: 7px;
}
.listing-modal ul { margin-left: 16px; }
.listing-modal ul li {
	padding-left: 23px;	
    line-height: 1.5;
    font-size: 15px;
}
.listing-modal ul li:before {
	height: 9px;
    width: 9px;
    top: 7.5px;
}
.listing-modal ul li:not(:last-child) {
	    margin-bottom: 5px;
}

/* TYPOGRAPHY */
h1, h2, h3, h4, h5, h6 {
	line-height: 1.3;
	font-family: var(--heading-font);
	text-transform: uppercase;
	font-weight: 700;
	padding-bottom: 0;
}
.section-header.xlarge {  }
.section-header.large {
	font-size: 45px;
}
.section-header.small {
	font-size: 40px;
}
.section-header.xsmall {
	font-size: 28px;
}
.section-header.et_pb_heading {
	margin-bottom: 10px !important;
}
@media(max-width: 640px) {
	h3,
	.projects-listing--all-category h3 {
		font-size: 26px;
	}
	.section-heading.small .et_pb_module_heading { font-size:24px; }
	body { 
		line-height: 1.6;
	}
}
@media(min-width: 641px) and (max-width: 1023px) {
	h2 { font-size:30px; }
	h3 {
		font-size: 28px;
	}
}
@media(min-width: 1024px) {
	body {
		font-size: 20px;	
	}
	.section-heading.small .et_pb_module_heading { font-size:40px; }

}
@media(min-width: 1024px) and (max-width: 1599px){
	.section-heading.medium .et_pb_module_heading, h3 {
		font-size:32px;
	}
}
@media(min-width: 1600px) {
	.section-heading.medium .et_pb_module_heading, h3 { 
		font-size:45px;
	 }
	body.et_divi_theme { font-size:20px; }
}
/*********************************************************
 #GENERAL / #GLOBAL
 *******************************************************/
.hidden { display: none !important;
 }
a { transition: all .25s ease-in-out; }
a:hover {
	color: var(--primary-colour);
}
.contact-phone a, .contact-email a,
.contact-office p { position:relative; padding-left: 34px; }
.contact-phone a:before,
.contact-email a:before,
.contact-office p:before {
	font-family: ETmodules !important;
	font-weight: 400 !important;
	font-size: 20px;
	position: absolute;
	left: 0;
}
.contact-phone a:before {
	content: "\e090" !important;
}
.contact-email a:before {
	content: "\e010" !important;
}
.contact-office p:before {
	content: "\e081" !important;
}
.contacts { line-height:1.4; }
.contacts h5 {
	font-weight: 400;
    text-transform: capitalize;
    margin-bottom: 12px;
    font-family: 'Open Sans', Helvetica, Arial, Lucida, sans-serif;
}
.contacts .contact-office:first-child { margin-bottom:20px; }

.global-section-divider .et_pb_row,
.global-section-divider.et_pb_section {
	padding-bottom: 0 !important;
	padding-top: 0 !important;
}
.post-content p:not(.has-background):last-of-type {
	margin-bottom: 1em;
}
.image-position-top img { object-position: top; }

.background-position-top { background-position: top; }

@media(max-width: 640px) {
	body .et_pb_section .et_pb_row.row-header { margin-bottom: 24px !important; }
	
}
@media(min-width: 641px) and (max-width: 1023px) {
	body .et_pb_section .et_pb_row {
		padding-left: 54px !important;
		padding-right: 54px !important;
	}
	body .et_pb_section { 
		padding-top: 60px !important;
		padding-bottom: 60px !important;
	}
	.section-heading { margin-bottom:34px !important; }
	.et_pb_column.et-last-child .et_pb_module:last-child { margin-bottom:0 !important; }

}
@media(max-width: 1023px) {
	.section-divider.et_pb_section { padding-bottom:0 !important; padding-top:0 !important; }
	.section-divider {    margin-bottom: -20px;}
}
@media(min-width: 1024px) and (max-width: 1599px) {
	body .et_pb_section {
		padding-top: 70px !important;    
    	padding-bottom: 70px !important;
	}
	body .global-section-divider {
		padding-bottom: 0 !important;
		padding-top: 0 !important;
	}
}
/*********************************************************
 #HELPERS 
 *******************************************************/
.v-align-center {
	display: flex;
	flex-flow: row wrap;
	align-content: center;
}
.v-align-bottom {
	display: flex;
	flex-flow: row wrap;
	align-content: end;
}
.bg-overlay,
.with-white-overlay {
	position: relative;
}
.bg-overlay:before,
.with-white-overlay:before {
	content: "";
	height: 100%;
	width: 100%;
	display: block;
	position: absolute;
	top: 0px;
	left: 0px;
	background: rgb(0 0 0 / 50%);
	z-index: 1;
}
.with-white-overlay:before { background: rgba(255, 255, 255, 0.58); }
.text-blue { color: var(--primary-colour); }
.with-underline {
	position: relative;
	display: inline-block;
}
.block { display: block; }

.with-underline::before {
    content: "";
    position: absolute;
    width: 100%;
    background: url(images/graphic-blue-underline.svg) no-repeat;
    background-size: contain;
    display: block;
    height: 117px;
    bottom: -103px;
    left: 9px;
}

.header-two-column h2 { padding-bottom:0; }

.et_pb_module.et_pb_text { margin-bottom:28px !important; }

@media(max-width: 640px) {
	.header-two-column {
		text-align: center;
    	
	}
	.header-two-column .et_pb_column {
		margin-bottom: 14px;
	}

	body .et_pb_section .et_pb_row.header-two-column {  margin-bottom: 34px !important; }	
}
@media(min-width: 641px) and (max-width: 1023px) {
	.header-two-column .section-heading.medium .et_pb_module_heading { font-size:24px; }
}
@media(min-width: 641px) {
	.header-two-column {
		display: flex;
	    align-items: center;
	}
	.header-two-column .et-last-child {
		display: flex;
		justify-content: end;
	}
}

/*********************************************************
 #BUTTON 
 *******************************************************/
.button {
	border-radius: 15px;
    font-size: 14px;
    font-family: var(--heading-font);
    font-weight: 600 !important;
    text-transform: uppercase !important;
    background-color: #122947;
    color: #FFF;
    padding-top: 8px !important;
    padding-right: 24px !important;
    padding-bottom: 5px !important;
    padding-left: 24px !important;
    display: inline-block;
    text-align: center;
    line-height: 1.7;
    letter-spacing: 1.82px;
    transition: all 300ms ease 0ms;
}
body #page-container .et_pb_section .et_pb_button {
	letter-spacing: 1.82px;
}
.button.button-outline {
	background-color: transparent;
    color: var(--dark-blue);
    border: 1px solid;
    margin: -1px;
}
.button.button-outline.outline-white {
	border-color: #FFF;
	color: #FFF;
}
.button.button-outline.outline-white:hover {
	border-color: #2C9AD8;
}
.button:hover,
.button.button-outline:hover {
	background-color: #2C9AD8;
	color: #FFF;
}
.et_pb_button {
	text-align: center;
}   
.et_pb_button.button-link-style,
body #page-container .et_pb_section .et_pb_button.button-link-style { 
	padding-left: 0 !important; 
	padding-right: 0 !important; 
}
body #page-container .et_pb_section .et_pb_button.button-link-style:after {
	font-size: 32px !important;
    line-height: 1;
    transform: translate(0, -4px);
}
body #page-container .et_pb_section .et_pb_button.button-link-style:hover:after {
	transform: translate(10px, -4px);
}

.button-light {
	background-color: #FFF;
    font-size: 14px;
    padding: 8px 24px;
    border-radius: 20px;
    color: var(--dark-blue) !important;
}
.button-light:hover {
	color: #FFF !important;
}
.full-height-cta .et_pb_button,
.image-overlaps .button { min-width:165px; }

.group-button {
	display: flex;
    column-gap: 24px;
}
.tb-category-button::before {
  font-family: 'ETmodules' !important;
        content: "\23"; /* Divi left arrow */
        margin-right: 8px;
        font-size: 24px;
        vertical-align: middle;
        display: inline-block;
        color: currentColor; /* ensures arrow uses the same color as text */
         transition: .2s ease-in-out !important;
}
.button.button-text {
	color: #122947 !important;
    border-width: 0px !important;
    border-radius: 0px;
    letter-spacing: 2px;
    font-size: 16px;
    font-family: var(--heading-font);
    font-weight: 700 !important;
    text-transform: uppercase !important;
    padding: 0;
    background-color:transparent;
    transition: .2s ease-in-out !important;
}
.button.button-text:hover {
	color: #2C9AD8 !important;	
}
.button.button-text:hover:before {
	transform: translate(-10px, 0);
}
.btn-stack { display: flex; }
@media(max-width: 640px) {
	.group-button {
		flex-direction: column;
    	row-gap: 9px;
	}
	.btn-stack { 
		flex-direction: column;
    	row-gap: 15px;
    } 
    .btn-stack .et_pb_button { min-width:200px; }
    .et_pb_button {
    	line-height: 1.3 !important;
    }
}
@media(min-width: 641px) and (max-width: 1023px) {
	.btn-stack { column-gap: 20px; }
}
@media(min-width: 1024px) {
	.btn-stack .et_pb_button_module_wrapper:last-child {
		margin-left: 27px;
	}
}
/*********************************************************
 !BUTTON 
 *******************************************************/

.grid {
	display: grid;
	gap: 30px;
}


[data-grid-column="2"]>div {
	span: 6;
}

.text-bottom {
	display: flex;
	flex-flow: row wrap;
}

.lg-header-with-border.et_pb_equal_columns {
	align-items: flex-end;
}

.with-lg-line {
	position: relative;
}

.with-lg-line:after {
	content: "";
	display: block;
	height: 8px;
	background-color: var(--primary-colour);
	border-radius: 5px;
	width: 100%;
}
.uppercase {
	text-transform: uppercase;
}
.read-more {
	font-family: var(--heading-font);
	font-size: 14px;
	font-weight: 500;
	color: var(--dark-blue);
	text-decoration: none;
	position: relative;
	display: inline-block;
	padding-right: 30px;
	/* base space for arrow */
}

@media(max-width: 1023px) {
	.et_pb_row,.section-divider .et_pb_row {
		padding: 24px !important;
	}
	body .section-divider .et_pb_row {
		padding: 0 24px !important;
	}
}
@media(min-width: 641px) and (max-width: 1023px) {
	.grid {
		grid-template-columns: repeat(2, 1fr);
	}
}
@media(min-width: 1024px) {
	.grid.grid-col-4 {
	grid-template-columns: repeat(4, 1fr);
}
}
 
/* BACKGROUND ACCENT */

.primary-bg,
.primary-section {
	background-color: var(--dark-blue);	
}
body .primary-bg {
	color: #FFF;
}
.primary-bg,
.primary-bg a,
.primary-bg h1, 
.primary-bg h2, 
.primary-bg h3, 
.primary-bg h4, 
.primary-bg h5, 
.primary-bg h6 {
	color: #FFF;
}
.second-accent-bg {
	background-color: #EAF5FB;
}
.primary-bg a:hover,
.primary-bg .current-menu-item a {
	color: #2ea3f2;
}
.primary-bg a:hover path {
	fill: #2ea3f2;
}

/* Shaft */
.read-more::after {
	content: '';
	position: absolute;
	top: 50%;
	left: calc(100% - 20px);
	/* start just after text */
	height: 1.5px;
	width: 22px;
	/* initial length */
	background-color: var(--dark-blue);
	transform: translateY(-50%);
	transition: width 0.3s ease;
}

/* Arrow head */
.read-more::before {
	content: '';
	position: absolute;
	top: 50%;
	left: calc(100% - 7px);
	/* positioned at end of shaft */
	width: 9px;
	height: 9px;
	border-top: 1.5px solid var(--dark-blue);
	border-right: 1.5px solid var(--dark-blue);
	transform: translateY(-50%) rotate(45deg);
	transition: left 0.3s ease;
}

/* Hover effect: shaft grows and pushes head */
.read-more:hover::after {
	width: 36px;
}

.read-more:hover::before {
	left: calc(100% + 6px);
}
/* Arrow head */

/* Reset Divi row/column styles and enable Flexbox */
.use-flex.et_pb_row {
    display: flex !important;
    flex-wrap: wrap;
    margin: 0 !important;
    padding: 0 !important;
    column-gap: 28px;
    width: 100%;
}

/* Reset Divi columns inside the row */
.use-flex .et_pb_column {
    display: block;
    margin: 0 !important;
    padding: 0 !important;
    width: auto !important;
    float: none !important;
    max-width: none;
    flex: 0 0 auto; /* Don't stretch unless you want to */
}

/* Optional: full-width children if needed */
.use-flex.full-width .et_pb_column {
    flex: 1 1 100%;
}
@media(min-width: 641px) {
	.flex-horizontal-center {
		display: flex;
	    align-items: center;
	}
}

/*********************************************************
 * #SECTION HEADER
 ******************************************************/
@media(min-width: 1440px) and (max-width: 1729px) {
	.section-header.xlarge h2 {
		font-size: 75px;
	}
}
@media(min-width: 1730px){
	.section-header.xlarge h2 {
		font-size: 80px;
	}
}
/*********************************************************
 * #SLICK SLIDER
 ******************************************************
 */
/* Add a generic gap between Slick slides */
.slick-slide {
  margin: 0 16px; /* Adjust the 10px to your preferred gap */
  padding: 0 !important;
}
.slick-list {
  margin: 0 -10px; /* Negative margin matches .slick-slide margin */
}
.photo-slider-offset .slick-list {
	overflow: visible;
    padding-left: 220px;
    padding-right: 220px;
}
body .slick-dots { padding:0 !important; }
.slick-prev:before,
.slick-next:before {
  font-family: "Font Awesome 6 Free";
  font-weight: 900;
  color: #122947;
  background: none;
  border: none;
  z-index: 10;
  cursor: pointer;
  opacity: 1;
}
.slick-prev::before { content: "\f053"; } /* fa-chevron-left */
.slick-next::before { content: "\f054"; } /* fa-chevron-right */

.slick-dots li.slick-active button:before {
	color: var(--primary-colour);
}
.slick-dots li button {
    font-size: 0;
    line-height: 0;
    display: block;
    width: 20px;
    height: 20px;
    padding: 5px;
    cursor: pointer;
    color: transparent;
    border: 0;
    outline: 0;
    background: 0 0;
    border-radius: 50%;
}
.slick-dots li.slick-active button {
	border: 1px solid var(--primary-colour);
}
.slick-dots li button:before {
	font-size: 10px;
}
.slick-dots li.slick-active button:before,
.slick-dots li button:before {
	color: var(--primary-colour);
	opacity: 1;
}
.theme-section .slick-dots li.slick-active button:before {
  color: var(--primary-colour);
}
.mobile-slider.et_pb_row { z-index:1 !important; }

.listing-module.projects .swiper-button-prev:hover:after, 
.listing-module.projects .swiper-button-next:hover:after {
    color: #2c9ad8;
}
.blog-layout-slider .slick-arrow:before { transition: all .2s ease-in-out; }
.listing-module.post-listing .swiper-button-prev:after, 
.listing-module.post-listing .swiper-button-next:after,
.listing-module.projects .swiper-button-prev:after, 
.listing-module.projects .swiper-button-next:after,
.blog-layout-slider .slick-arrow:before {
    font-family: "ETmodules" !important;
    color: #132947;
    font-size: 40px;
}

.listing-module.post-listing .swiper-button-prev:after,
.listing-module.projects .swiper-button-prev:after,
.blog-layout-slider .slick-prev:before {
	content: "\23" !important;
}
.listing-module.post-listing .swiper-button-next:after,
.listing-module.projects .swiper-button-next:after,
.blog-layout-slider .slick-next:before {
	content: "\24" !important;
}
.listing-module.projects .swiper-button-next.swiper-button-disabled,
.listing-module.projects .swiper-button-prev.swiper-button-disabled,
.blog-layout-slider .slick-arrow.slick-disabled:before {
	opacity: 0;
}

.slick-slider.has-custom-arrow .slick-arrow:before {
	font-family: "ETmodules" !important;
	color: #000;
	font-weight: 300;
	transition: all .2s ease-in-out;
}
.slick-slider.has-custom-arrow .slick-arrow.slick-disabled {
	opacity: 0;
	pointer-events: none;
}
.slick-slider.has-custom-arrow .slick-prev:before {
	content: "\23" !important;
}
.slick-slider.has-custom-arrow .slick-next:before {
	content: "\24" !important;
}

@media(max-width: 640px) {

	.slick-dots li {
		margin: 0 1px;
	}
	
	/*.mobile-slider .et_pb_column { width:380px !important; }*/

	.mobile-slider .et_pb_column {
	  width: auto !important;
	  float: none !important;
	  display: inline-block !important;
	  vertical-align: top;
	}
	.mobile-slider .swiper-slide {
	  width: 100% !important;
	  box-sizing: border-box;
	}
	.slick-prev { left: -24px; }
	.slick-next { right: -24px; }
	.slick-prev:before, .slick-next:before {
		font-size: 20px;
	}
}

@media(min-width: 641px) and (max-width: 1023px) {
	.slick-prev { left: -44px; }
	.slick-next { right: -44px; }
}
@media(max-width: 1023px) {
}
@media(min-width: 1024px) {
	.slick-prev { left: -40px; }
	.slick-next { right: -40px; }
	.slick-prev:before,
	.slick-next:before {
		font-size: 30px;
	}
}
/*********************************************************
 * SLICK SLIDER
 ******************************************************
 */
.custom-box-text {
	max-width: 936px;
    margin: 0 auto;
}
.custom-box-text .et_pb_blurb_content {
	padding: 45px 90px;
    border: 5px solid #2C9AD8;
    border-radius: 20px;
}
.custom-box-text .et_pb_blurb_container {
	text-align: center !important;
}
.custom-box-text .et_pb_module_header {
	display: table;
    margin: -64px auto 20px auto;
    background-color: #FFF;
    padding-left: 24px;
    padding-right: 24px;
    font-size: 45px;
}
.custom-box-text .et_pb_blurb_description {
	font-size: 24px;
    line-height: 1.8;
    font-weight: 400;
}
/*********************************************************
 * #Image Overlay
 ******************************************************
 */
.image-overlay-content .et_pb_blurb_content:before {
	content: '';
    position: absolute;
    height: 100%;
    width: 100%;
    background-color: rgb(0 0 0 / 30%);
    left: 0;
    transition: all .25s ease-in-out;
}
.image-overlay-content.rounded-image .et_pb_blurb_content {
    overflow: hidden;
    border-radius: 30px;
}
.image-overlay-content .et_pb_blurb_container {
	position: absolute;
    bottom: 9px;
    width: 100%;
    padding: 34px;
    transition: all .25s ease-in-out;
}
.image-overlay-content .et_pb_module_header { color:#FFF; line-height:1.2; padding-bottom:0; }
.image-overlay-content .et_pb_main_blurb_image { margin-bottom: 0 !important; display: block; }
.image-overlay-content .et_pb_main_blurb_image img { 
	object-fit: cover;
	height: 486px;
 }
.image-overlay-content:hover .et_pb_blurb_content:before {
	background-color: rgb(234 245 251 / 60%);
}
.image-overlay-content:hover .et_pb_module_header {
	color: #122947;
}
.image-overlay-content:hover .et_pb_blurb_container {
	bottom: 79px;
}

 @media(min-width: 1024px) {
 	.image-overlay-content .et_pb_module_header { 
 		font-size:30px; 
 		transition: all .2s ease-in-out;
 	}
 }
/*********************************************************
 * #Header
 ******************************************************
 */
.header-menu-area {
	display: flex;
	align-items: center;
	justify-content: end;
}
.header-menu-area .et_pb_module { margin-right: 51px;}
.menu-container {
	display: flex;
	justify-content: flex-end;
	padding: 10px 0px 10px 10px;
}
.main-header,
.main-header .header-nav-area { display: flex; }
.main-header .header-nav-area { justify-content: flex-end; }
.main-header .header-nav-area .et_pb_module {
	margin-bottom:0 !important; 
}
.openmenu .header-nav-area .et_pb_module { z-index:2;}
.openmenu .header-nav-area .et_pb_module svg path {  fill: var(--dark-blue); }
.openmenu .header-nav-area .et_pb_module:last-child { z-index:1; }
.burger.floating {
	display: flex;
    align-items: center;
    position: fixed;
    top: 78px !important;
    right: 30px !important;
    z-index: 99;
    height: 27px;
}
.burger.floating span {
	width: 85%;
    z-index: 1;
}
.burger.floating:before {
	background-color: #2c9ad8;
    border-radius: 50%;
    height: 70px;
    width: 70px;
    content: '';
    display: block;
    position: absolute;
    top: -22px;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.3);
}
.openmenu .burger.floating span:nth-child(1) {
	transform: rotate(45deg) translate(9px, 7px);
}
.openmenu .burger.floating span:nth-child(3) {
    transform: rotate(-45deg) translate(9px, -8px);
}
.openmenu .burger.floating span {
    background-color: #FFF;
}
.main-menu.floating {
	box-shadow: -1px 0 22px 8px rgba(0, 0, 0, 0.1);
}
.custom-header.et_pb_section_0_tb_header { 
	padding: 0 !important; 	
} 

@media(max-width: 640px) {	
	.custom-header .logo {  max-width: 110px; }
	.custom-header .cta-lets-talk { display:none; }
	
	.main-header .header-nav-area .et_pb_module:not(:last-child) { margin-right: 6px; }
}
@media(max-width: 1023px) {
	.custom-header .burger {
		width: 48px;
    	height: 25px;
	}
	.header-nav-area {
		display: flex;
    	align-items: center;
	}	
	.custom-header .et_pb_column { margin-bottom:0 !important; }	
}
/* Target Tablet only screen */
@media(min-width: 641px) and (max-width: 1023px) {
	.custom-header .logo {  max-width: 120px; }
	.header-nav-area { column-gap: 24px; }
	.custom-header .cta-lets-talk { font-size: 12px !important; }
	.header-nav-area .social-media svg {
		width: 40px;
	}
}
/* Target Tablet Landscape and Small Desktop Screens */
@media(min-width: 1024px) {
	.main-header .header-nav-area {  align-items:center; column-gap: 24px; }
	.main-header { align-items:center; }
	header .et_pb_section_0_tb_header { padding:0 80px !important; }
	.main-header .header-nav-area .et_pb_module:not(:last-child) {
		margin-right: 15px;
	}
}
@media(min-width: 1024px) and (max-width: 1279px) {
	body .main-menu {
		    padding-top: 13%;
	}
}
@media(min-width: 1440px) {
	.main-header.et_pb_row {
		padding-left: 100px;
    	padding-right: 100px;
	}
}
/*********************************************************
 * Menu
 ******************************************************
 */

body.openmenu {
	overflow: hidden;
}

.main-menu {
	position: fixed;
	background: #FFF;
	top: 0;
	right: 0;
	height: 100VH;
	width: 70%;
	display: flex;
	align-items: flex-end;
	padding-bottom: 70px;
	transform: translateX(100%);
	padding-left: 50px;
	transition: transform 0.4s ease-in-out; /* <-- add this */
}

.main-menu a {
	font-family: var(--heading-font);
	color: var(--dark-blue);
	text-transform: uppercase;
	    font-size: 20px;
    line-height: 144%;
}

.main-menu ul {
	list-style: none;
	width: 80%;
}

.main-menu .sub-menu {
	display: none;
	padding-left: 2px;
    padding-top: 8px;
    padding-bottom: 16px;
}
.main-menu .sub-menu li { margin-bottom:0; }

.main-menu>ul>li>a {
	font-size: 20px;
	font-weight: 800;
	display: block;
	padding: 20px 0 0;
}
/* Chevron after parent links */
.primary-menu {
	max-height: 600px;
}
.primary-menu.toggle-open {
	overflow: scroll;
}
.primary-menu .dropdown-toggle {
	font-size: 38px;
    height: 30px;
    width: 44px;
    display: inline-block;
    margin-left: -3px;
    text-align: center;    
    transform: translate(0, 4px);
    cursor: pointer;
}
.primary-menu .menu-item-has-children > .dropdown-toggle:after {
	content: "\f078";
    font-family: "Font Awesome 6 Free";
    font-weight: 600;
    display: inline-block;    
    transition: transform 0.2s ease;
    border: none;
}
.main-menu>ul>li.menu-item-has-children>a { display:inline-block; }
.primary-menu .menu-item-has-children > .dropdown-toggle:after {
    content: "\f078";
    font-family: "Font Awesome 6 Free";
    font-weight: 600;
    display: inline-block;
    margin-left: 6px;
    transition: transform 0.2s ease;
    border: none;
    font-size: 42px;
}
.main-menu>ul>li { border-bottom: 1px solid var(--primary-colour); }
.openmenu .main-menu { transform: translateX(0%); }

.openmenu .header-menu-area .et_pb_icon,
.openmenu .header-menu-area .et_pb_button_module_wrapper { z-index: 200; }

/*body.openmenu #page-container a.et_pb_button_0_tb_header.cta-lets-talk {
	background-color: var(--dark-blue) !important;
	color: #FFF !important;
}*/
body.openmenu.et-db #page-container #et-boc .et-l .et_pb_section .et_pb_button_0_tb_header.cta-lets-talk {
	color: #FFF !important;
	background-color: var(--dark-blue) !important;
}
body.openmenu.et-db #page-container #et-boc .et-l .et_pb_section .et_pb_button_0_tb_header.cta-lets-talk:hover {
	background-color: #2C9AD8 !important;
}

body.openmenu #page-container .et_pb_icon_0_tb_header .et_pb_icon_wrap .et-pb-icon { color: var(--dark-blue) !important; }
.burger {
	width: 75px;
	height: 30px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	background: transparent;
	border: none;
	cursor: pointer;
	padding: 0;
	z-index: 10;
}

.burger span {
	display: block;
	height: 3px;
	background-color: #fff;
	border-radius: 2px;
	transition: 0.3s ease;
	width: 100%;
}

.openmenu .burger span {
	background-color: var(--dark-blue);
}

/* Transform to X */
.openmenu .burger span:nth-child(1) {
	transform: rotate(45deg) translate(11px, 5px);
}

.openmenu .burger span:nth-child(2) {
	opacity: 0;
}

.openmenu .burger span:nth-child(3) {
	transform: rotate(-45deg) translate(13px, -8px);
}
@media(max-width: 1023px) {
	.main-menu {
		width: 85%;
		padding-left: 28px;
		padding-top: 95px;
		align-items: flex-start;
	}
	.main-menu ul {
		width: 90%;
		padding-left: 0;
		padding-bottom: 0;
	}
	.main-menu > ul > li > a {
		font-size: 28px;
	}
	.primary-menu .menu-item-has-children > .dropdown-toggle::after {
		font-size: 20px;
		transform: translate(2px, -2px);
		margin-left: -3px;
	}
	.main-menu a {
		font-size: 20px;
	}
	.openmenu .burger span:nth-child(1) {
		transform: rotate(45deg) translate(11px, 8px);
	}
	.openmenu .burger span:nth-child(3) {
		transform: rotate(-45deg) translate(7px, -5px);
	}
}


/*********************************************************
 * stacking-cards
 ******************************************************
 */
.stacking-cards {
	position: relative;
}
@media(max-width: 1023px) {
	.stacking-cards__item .et_pb_column {
		padding-left: 24px;
		padding-right: 24px;
        padding-top: 30px;
        margin-bottom: 0;
        padding-bottom: 0;
        position: initial;
	}	
	.stacking-cards__item .et_pb_module_header { font-size: 28px !important; }
	.stacking-cards__item {  border-radius: 30px 30px 0 0 !important; flex-flow: column;}
	.stacking-cards__item .et-last-child {
		display: block;
    	border-radius: 15px 15px 0 0 !important;
    	z-index: 1;
	}
	.stacking-cards__item .et_pb_button_module_wrapper {
		position: absolute;
	    bottom: 28px;
	    right: 0;
	    left: 0;	    
	    margin: 0 auto;
	    text-align: center;
	}
}
@media(max-width: 640px) {
	.stacking-cards__item .et-last-child {		
    	height: 210px;
	}
	.stacking-cards__item .et_pb_module_header { margin-bottom:12px; }
	.stacking-cards__item .et_pb_blurb_description {
		font-size: 14px;
    	line-height: 1.6;
	}
}
@media(min-width: 641px) and (max-width: 1023px) {
	.stacking-cards__item .et-last-child {
    	height: 280px;    
	}
	.stacking-cards__item .et_pb_button_module_wrapper {
		bottom: 16px;
	}
	.stacking-cards__item .et_pb_column {
		padding-top: 50px;
	}
}
@media(min-width: 1024px) and (max-width: 1599px) {
	.division-cards.et_pb_section { padding-top:0 !important; padding-bottom: 0 !important; }
	.stacking-cards__item .et_pb_column {
		padding-top: 50px !important;
    	padding-left: 50px !important;
    	padding-bottom: 0 !important;
	}
	.stacking-cards__item .et_pb_blurb_content h4 {
		font-size: 34px !important;
    	margin-bottom: 16px;
	}
	.stacking-cards__item .et_pb_blurb_description {
		font-size: 16px;
    	line-height: 1.6;
	}
}

/*********************************************************
 #TESTIMONIALS
 ******************************************************
 */
body .testimonials.et_pb_row { padding-bottom: 0 !important; }
.testimonial-category>span {
    display: inline-block;
    margin: 6px 12px 6px 0px;
    background-color: var(--primary-colour);
    color: #FFF;
    border-radius: 8px;
    text-transform: uppercase;
    font-size: 13px;
    padding: 7px 9px 3px;
    font-family: var(--heading-font);
    line-height: 111%;
}
.testimonial-position {
	font-family: var(--heading-font);
	color: var(--dark-blue);
	font-size: 24px;
	font-weight: 600;
	margin-bottom: 0px;
}
.testimonial-title {
	font-family: var(--heading-font);
	color: var(--dark-blue);	
	font-weight: bold;
	margin-bottom: 10px;
	padding: 0;
}
.testimonial-content {   
    line-height: 165%;
    margin-top: 25px;
    color: var(--dark-blue);
}
@media(max-width: 640px) {
	body .testimonials.et_pb_row {
		padding: 60px 24px 0 24px !important;
	}	
	.testimonials .slick-prev { left:-28px; }
	.testimonials .slick-next { right:-28px; }
	.testimonial-position { font-size:18px; }
	.testimonial-title { 
		font-size: 24px;
	}
	.testimonials.slider {
		width: 90%;
    	margin: 0 auto;
	}
	.testimonial-row .et_pb_module.et_pb_code { width:100% !important; }
}
@media(min-width: 641px) and (max-width: 1023px) {
	.testimonial-position { font-size: 18px; }	
}
@media(max-width: 1023px) {
	.home-hero-blurbs .slick-arrow { display:none !important }
}
@media(min-width: 1024px) {
	.testimonial-title { 
		font-size: 28px;
	}
}
@media(max-width: 1279px) {
	.testimonial-content { font-size: 16px;	}
}
@media(min-width: 1280px) {
	.testimonial-content { font-size: 18px; }
	.testimonial-content {
		font-size: 24px;
		line-height: 187%;		
	}
	.home-hero-blurbs.et_pb_row {
		column-gap: 120px;
	
	}
}
@media(min-width: 1440px) {
	.testimonials.slider .testimonial-item { margin: 0 50px; }	
}
/*********************************************************
 * #HERO SECTION
 *******************************************************/
.home-hero-blurbs.et_pb_row>.et_pb_column {
	width: 100%;
	display: flex;
	height: 230px;
	align-items: center;
}
.home-hero-blurbs.et_pb_row>.et_pb_column>.et_pb_module { width: 100%; }

/*Small Phone Screen*/
@media(max-width: 390px) {
	.home-hero-blurbs .content-on-show {
		font-size: 14px;
	}
	.home-banner h1.with-underline::before {
		height: 93px;
    	bottom: -78px;
	}
	.home-banner .header-row .et_pb_module.et_pb_text { margin-bottom:0 !important; }
}
@media(max-width: 640px) {
	.home-banner.v-align-bottom.et_pb_section_video { align-content: center !important; }
	.home-banner .header-row { margin-top: 95px; }
	body .home-banner .et_pb_row.home-hero-blurbs { margin-top: 45px !important; }	
}
@media(min-width: 641px) {
	.home-hero-blurbs .content-on-show { 
		line-height: 1.5;
	}
}
@media(max-width: 1023px) {
	.home-hero-blurbs .info-widget {
		background-color: rgb(255 255 255 / 85%);
	}
	.home-hero-blurbs .info-widget.et_pb_blurb {
		color: #122947 !important;
	}
	.home-hero-blurbs .content-on-show { margin-bottom:16px; }

	.home-hero-blurbs .slick-dots {
		bottom: -41px;
	    left: 0;
	    padding-left: 0;
	    padding-bottom: 0;
	}
}
@media(min-width: 641px) and (max-width: 1023px) {
	.home-banner {
		padding-bottom: 50px !important;
	}
	.home-banner .home-hero-blurbs.et_pb_row { margin-top: 64px !important; }	
	.home-banner .header-row h1 {
		font-size: 52px;
	}
	.home-hero-blurbs .content-on-show { 
        font-size: 14px;
        min-height: 84px;
	}
	.home-banner.et_pb_section { padding-bottom: 80px !important; }
}
@media(max-width: 389px) {
	.et_pb_text_0 h1 {  font-size: 38px !important; }
	.home-banner .home-hero-blurbs {
		margin-top: 8px;
	}
	.custom-header .logo { max-width: 94px; }
}
@media(min-width: 1024px) {
	.home-hero-blurbs.et_pb_row {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		column-gap: 30px;
	}
	.home-hero-blurbs.et_pb_row {
		column-gap: 30px;
		padding-bottom: 0;
	}
	.home-banner .header-row {margin-bottom: 60px;}
	.home-banner .et_pb_blurb.info-widget { padding: 32px 36px !important; }
	.home-banner  .info-widget .et_pb_module_header { margin: 0 0 32px 0; }
	.home-banner.et_pb_section_0.et_pb_section {
		padding-left: 60px;
		padding-right: 60px;
	}

}
/*********************************************************
 * STANDARD BANNER
 ******************************************************
 */
.standard-banner .et_pb_row {
	height: 100%;
    display: flex;
    justify-content: center;
    align-items: end;
    color: #FFF;    
    padding-bottom: 80px;
}
.standard-banner .et_pb_text { font-size:25px; }
.standard-banner h1 {
	padding-bottom: 0;
	line-height: 1;
}
.standard-banner .et_pb_heading {
	margin-bottom: 0;
}
@media(min-width: 1440px) {
	.standard-banner h1 {
		font-size: 80px;
	    font-weight: 700;
	}
	.standard-banner .banner-sub-heading { font-size:25px; }
	/*.standard-banner .et_pb_row {
		padding-bottom: 170px !important;
	}*/
}
/* Home page */


/*********************************************************
 * #IMPACT NUMBER
 ******************************************************
 */
.impact-numbers {
	font-weight: 700;
    text-transform: uppercase; 
    color: #2c9ad8 !important;
    line-height: 1;
    margin-bottom: 10px;
}

.impact-numbers-row {
 	justify-content: center;
    display: flex;
}
.impact-numbers-row .et_pb_column {
	flex: 1;
	margin-right: 0 !important;
}
@media(max-width: 640px) {
	.impact-numbers {
		font-size: 60px;
	}
	.impact-item {
		font-size: 16px !important;
	}
	.impact-numbers-row .et_pb_column {
		flex: 0 0 50%;
	}	
	.impact-numbers-row {
		row-gap: 24px;	
	}
	.impact-number-section .et_pb_blurb_content {
		padding: 0 16px;
	}
}
@media(min-width: 641px) and (max-width: 1023px) {
	.impact-numbers-row {
		row-gap: 24px;
	}
	.impact-numbers-row .et_pb_column {
		flex: 0 1 calc(33.333% - 20px);
	}
	.impact-item .et_pb_blurb_content { font-size:18px; }
	.impact-numbers {
		font-size: 58px;
	}
	body .et_pb_section.impact-number-section .section-header {
		margin-bottom: 34px !important;
	}
}
@media(min-width: 1024px) {
	.impact-numbers {
		font-size: 70px;
	}
}
/* Impact Number */ 

/*********************************************************
 #FULL HEIGHT BANNER 
 *******************************************************/

.full-height-split-banner {
  display: flex;
  flex-direction: column;
}
.full-height-split-banner .et_pb_row:last-child {
  max-height: 40%;
  min-height: 40%;
  flex: 0 0 auto; /* Don't let it grow */
}
.full-height-split-banner .banner-image {
    align-items: end;
    flex: 1 1 auto;
}
.full-height-split-banner .banner-image .group-button { justify-content:center; }
.full-height-split-banner .banner-image,
.full-height-split-banner .bottom-content {
	display: flex;
}
.full-height-split-banner .banner-image .et_pb_column {
	max-width: 1170px;
    margin-left: auto;
    margin-right: auto !important;
}
.full-height-split-banner .banner-image .et_pb_column,
.full-height-split-banner .banner-image .et_pb_text {
    text-align: center;
}
.full-height-split-banner .banner-image .et_pb_heading,
.full-height-split-banner .banner-image .banner-heading { margin-bottom:0 !important; }

.full-height-split-banner .banner-image .et_pb_module_heading,
.full-height-split-banner .banner-image .et_pb_text {
    color: #FFF;
}
.full-height-split-banner .banner-image h1 {
	padding-bottom: 0;
	color: #FFF;
}
.full-height-split-banner .banner-image h1 span { color: #2C9AD8; }
.full-height-split-banner .bottom-content .et_pb_image { height:100%; }
.full-height-split-banner .bottom-content .et_pb_text {	
	margin-bottom: 4px !important;
}
.full-height-split-banner .bottom-content .et_pb_column:first-child {
	display: flex;
    flex-flow: column;    
    margin-right: 0 !important;
    margin-left: auto !important;
}
.full-height-split-banner .bottom-content .et_pb_column:last-child .et_pb_text {	
    max-height: 100%;
}
.full-height-split-banner .main-blurb {
	font-size: 22px;
	font-weight: 600;
}
.full-height-split-banner .main-blurb span {
	color: #2C9AD8;
}
.full-height-split-banner .bottom-content h2 {
	color: #FFF;
}
.full-height-split-banner .et_pb_image {
	position: relative;
    width: 100%;
}
.full-height-split-banner .et_pb_image .et_pb_image_wrap {
	position: absolute;
    top: 0;
    height: 100%;
    width: 60%;
    left: 0;
    right: 0;
    margin: 0 auto;
    border-radius: 20px;
    overflow: hidden;
}
.full-height-split-banner .et_pb_image img {
	object-fit: cover;
	height: 100%;
	width: 100%;
}
.full-height-split-banner.et_pb_section {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}
.full-height-split-banner .contact.social-media a {
	text-decoration: underline;	
}
.full-height-split-banner .banner-image .projects-attachment-cta {
	justify-content: center;
}
.full-height-split-banner .contacts {
	display: grid;
    	row-gap: 18px;
	}
@media(max-width: 640px) {
	.full-height-split-banner { height:auto !important; }	
	.full-height-split-banner .bottom-content h2 {
			font-size: 24px;
	}
	.full-height-split-banner .banner-image h1 { font-size:34px; }
	.full-height-split-banner .banner-image {	 	 
	    padding-bottom: 60px;
	}
	.full-height-split-banner .bottom-content {
		flex-flow: column;
	}
	.full-height-split-banner .bottom-content .et_pb_text {
		font-size: 14px;
		line-height: 1.4;
	}
	.full-height-split-banner .banner-image .et_pb_text { font-size: 18px; }
	.full-height-split-banner .bottom-content {
		padding: 44px 34px;
	}
	.full-height-split-banner .bottom-content .et_pb_image {
       height: 250px; 
	}
	.full-height-split-banner .bottom-content .et_pb_image img {
       height: 100% !important; 
		border-radius:20px !important;
	}
	.full-height-split-banner .et_pb_image .et_pb_image_wrap{
		height:100% !important;
	}
	.full-height-split-banner .et_pb_image .et_pb_image_wrap {
		width: 100%;
	}
}
@media(min-width: 641px) and (max-width: 1023px) {	
	.full-height-split-banner .banner-image h1 { font-size:42px; }	
	.full-height-split-banner .banner-image { padding-bottom:42px; }
	.full-height-split-banner .bottom-content { column-gap:24px; }
	.full-height-split-banner .bottom-content .et_pb_column:last-child .et_pb_text {  font-size: 15px; }
	.full-height-split-banner .bottom-content .et_pb_column:first-child {
	    border-bottom: 5px solid #009AD8;
	    padding-bottom: 12px;
	    justify-content: end;
	    margin-bottom: 0;
	}
	.full-height-split-banner .banner-image .et_pb_text { font-size: 20px; }

	.full-height-split-banner .et_pb_image .et_pb_image_wrap { 		
		width: 90%;
        height: 80%;
        bottom: 0;
        margin: auto;
	}

}

@media(max-width: 1023px) {
	.full-height-split-banner .banner-image { 
		height: 550px;
	}
	.full-height-split-banner .et_pb_column {
		padding-left: 24px;
		padding-right: 24px;
	}
}
@media(min-width: 641px) {
	.full-height-split-banner {
	  height: 100vh;
	}
}
@media(min-width: 1024px) {	
	.full-height-split-banner .bottom-content .et_pb_column:first-child {
	    border-bottom: 8px solid #009AD8;
	    padding-bottom: 28px;
	    justify-content: end;
	    margin-bottom: 0;
	}	
	.full-height-split-banner .banner-image .et_pb_text {
		font-size: 22px;
	}
	.full-height-split-banner .contacts {
		font-size: 22px;
    	display: flex;
    	flex-flow: column;
    	row-gap: 24px;
	}
	.full-height-split-banner .contact.social-media svg {
		width: 35px;
		margin-right: 17px;
	}
	.full-height-split-banner .contact:not(.social-media) a {
		padding-left: 58px;
	}
	.full-height-split-banner .contact a:before {
    	top: -4px;
    	font-size: 32px;
	}
	.full-height-split-banner .bottom-content .et_pb_column:last-child .et_pb_module.et_pb_text {
		height: 100%;
    	align-items: center;
    	display: flex;
	}
}
@media(min-width: 1024px) and (max-width: 1279px){	
	.full-height-split-banner .bottom-content .et_pb_blurb {
		font-size: 14px;
	}
	.full-height-split-banner .contact a:before {
    	top: -4px;
    	font-size: 26px;
	}
	.full-height-split-banner .contact:not(.social-media) a {
		padding-left: 49px;
	}
	.full-height-split-banner .contacts {
		font-size: 18px;
        row-gap: 20px;
	}
	.full-height-split-banner .bottom-content {
		font-size: 14px;
    	line-height: 1.6;
	}
	.full-height-split-banner .bottom-content .et_pb_column:last-child { padding-right:24px; }
	.full-height-split-banner .et_pb_image .et_pb_image_wrap {
		    width: 65%;
	}

}
@media(min-width: 1024px) and (max-width: 1399px){	
	.full-height-split-banner .bottom-content .button { font-size:11px; }
	.full-height-split-banner .bottom-content { padding: 24px; }
	.full-height-split-banner .bottom-content .et_pb_column:last-child { 
	padding-left:28px; }
}

@media(min-width: 1440px) {
	.full-height-split-banner .bottom-content {
		padding: 32px 100px;		
	}
	.full-height-split-banner .bottom-content {
		font-size: 17px;
		line-height: 1.7;
	}
	.full-height-split-banner .bottom-content .et_pb_column:first-child { 
	    max-width: 590px;
	    min-width: 590px;
	    margin-right: 80px !important;
	}
	.full-height-split-banner .banner-image h1 {
		font-size: 53px;
	}
	.full-height-split-banner .banner-image .et_pb_text {
		font-size: 25px;
	}
	.full-height-split-banner .banner-image {	 	 
	    padding-bottom: 60px;
	}
	.full-height-split-banner .bottom-content h2 {		
		font-size: 45px !important;
	}
	.full-height-split-banner .bottom-content .et_pb_column:last-child .et_pb_text {		    
	    line-height: 1.7;
	    font-size: 17px;
	    padding-right: 60px;
	}
	.full-height-split-banner .et_pb_column:last-child .et_pb_image .et_pb_image_wrap {
    	left: 80px;
    	right: auto;
	}
	
}

@media(min-width: 1680px) {
	.full-height-split-banner .et_pb_image .et_pb_image_wrap { width:55%; }
}



/*********************************************************
 #FULL HEIGHT BANNER 
 *******************************************************/
/*********************************************************
 #INFO WIDGET
 *******************************************************/
.info-widget-show-body-onhover:hover {
	background-color: rgb(255 255 255 / 85%);
}
.info-widget-show-body-onhover .et_pb_module_header {
	background: var(--primary-colour);
	border-radius: 10px;
	margin: 0 0 16px 0;
	padding: 14px 8px 7px;
	line-height: 100%;
}
.info-widget-show-body-onhover .btn {
	display: block;
	background: #FFF;
	border: 1px solid var(--dark-blue);
	letter-spacing: 1.56px;
    font-size: 12px;
    padding-bottom: 4px;
    font-family: 'Josefin Sans', Helvetica, Arial, Lucida, sans-serif;
    text-transform: uppercase;
}
.info-widget-show-body-onhover .btn:hover {
	background-color: var(--dark-blue);
	color: #FFF;
}
@media(max-width: 1023px) {
	.info-widget-show-body-onhover .et_pb_module_header { font-size: 26px !important; }	
}

@media(min-width: 1024px) {
	.info-widget-show-body-onhover .content-on-show {
		max-height: 0;
		overflow: hidden;
		transition: max-height 0.25s ease-in-out;
		font-size: 16px;
		margin-top: -16px;
		line-height: 1.5;
	}

	.info-widget-show-body-onhover:hover .content-on-show {
		max-height: 500px;
		color: var(--dark-blue) !important;		
		margin-bottom: 20px;
	}
}
@media(min-width: 1024px) and (max-width: 1279px) {
	.info-widget-show-body-onhover .btn {
		letter-spacing: 1.2px;
    	font-size: 11px;
	}
	.home-banner .et_pb_blurb.info-widget {
		padding: 20px !important;
	}
}

/*.info-widget-show-body-onhover .btn span {
	transition: all .25s ease-in-out;
}*/
/*.info-widget-show-body-onhover .btn:hover span {
	display: none;
}*/

/* project showcases */
.latest-project-tab {
	padding-bottom: 60px;
}
.project-showcase h3 {
	font-family: var(--heading-font);
	text-transform: uppercase;
	font-weight: bold;
	line-height: 135%;
}

.project-showcase .projects h3 {
	padding: 0px;
	margin-bottom: 3px;
}
.project-showcase .projects .project-card-wrap .bg-helper:before {
	transition: all .25s ease-in-out;
}
.project-showcase .projects .project-card-wrap:hover .bg-helper:before {
	opacity: 0;
}
.project-showcase .projects .button-wrap {
	margin-top: 7px;
}

.project-showcase.grid {
	gap: 30px;
	margin-top: 30px;
	grid-template-columns: repeat(1, 1fr);
}

.project-showcase .featured-image {
	display: block;
	background: no-repeat center;
	width: 100%;
	height: 174px;
	background-size: cover;
	border-radius: 15px;
}

.project-showcase .featured .featured-image {
	height: 270px;
}

.project-showcase-content {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	flex-flow: row wrap;
	font-size: 16px;
	line-height: 1.3;
}
.project-showcase .projects {
	max-height: 425px;
    justify-content: space-between;
    display: flex;
    flex-flow: column;
}
.project-showcase .projects .project-card-wrap {
	display: flex;
	flex-flow: row wrap;
}

.project-showcase .projects .project-card-wrap .featured-image {
	width: 40%;
}

.project-showcase .projects .project-card-wrap .project-showcase-content {
	width: 60%;
}
.projects .project-showcase-content {
	padding: 10px 10px 10px 28px;
	justify-content: left;
	flex-flow: row wrap;
	align-content: center;
}
.projects .project-showcase-content .blurb {
	max-height: 0;
	overflow: hidden;
	transition: max-height 0.5s ease-out;
}

.projects .project-card-wrap:hover .project-showcase-content .blurb {
	max-height: 200px;
}

.projects .with-white-overlay::after {
	transition: 0.3s ease;
}

.projects .project-card-wrap:hover .with-white-overlay:after {
	background: rgba(255, 255, 255, 0);
}

.projects .project-card-wrap:hover .with-white-overlay:after {
	background: rgba(255, 255, 255, 0);
}
.latest-project-tab .featured .project-showcase-content {
	margin-top: 24px;    
    column-gap: 27px;
}
.latest-project-tab .featured .button-wrap {
	flex: 0 0 auto;
    min-width: 102px;
}
/* Tabs */
.latest-project-tab.et_pb_tabs_0.et_pb_tabs .et_pb_tabs_controls li a {
	padding: 18px 10px 10px;
	text-align: center;
}

.latest-project-tab .et_pb_tab_0 {
	border-radius: 14px 0 0 14px;
}
.latest-project-tab .et_pb_tab_2 { border-radius: 0px 14px 14px 0px; }
.latest-project-tab .et_pb_tabs_controls .et_pb_tab_active { background-color: var(--dark-blue) !important; }
.latest-project-tab .et_pb_tabs_controls li { border-right: 8px solid #ffffff; }
ul.et_pb_tabs_controls {
	background: transparent !important;
	display: flex;
	align-items: initial;
	justify-content: space-around;
}

ul.et_pb_tabs_controls li {

	width: 33.33%;
}


ul.et_pb_tabs_controls:after {
	opacity: 0;
	display: none;
}

@media(min-width: 1024px) {
	.latest-project-tab .featured .project-showcase-content {
		flex-flow: row;
		align-items: start;
	}
}

/* Custom Accordion */

.custom-accordion-dropdown-effect .et_pb_accordion_item {
	position: relative;
	background-color: var(--light-blue) !important;
	margin-bottom: 20px !important;
}

/*.custom-accordion-dropdown-effect .et_pb_toggle_content {
	//position: absolute !important;
	left: 0;
	background-color: var(--light-blue) !important;
	padding: 5px 22px 14px;
	width: 100%;
	margin-top: 4px;
}*/

/* Make toggle relative so overlay works */
.et_pb_toggle {
    position: relative;
    overflow: visible;
}

/* Toggle content overlay */
.et_pb_toggle_content {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    display: none; /* hidden by default */
    z-index: 10;
    background: #fff;
    box-shadow: 0 4px 10px rgba(0,0,0,0.1);
}

/* Keep arrow visible above overlay */
.et_pb_toggle_title {
    position: relative;
    z-index: 20;
}
/* #ACCORDION */
.rev-custom-accordion {
	overflow: scroll;
}
 .rev-custom-accordion .accordion-title {
  cursor: pointer;
  padding: 12px 18px;
  position: relative;
  transition: background 0.3s ease;
  font-size: 16px;
  font-weight: 600;
}
.rev-custom-accordion .accordion-title,
.rev-custom-accordion .accordion-content {
	background-color: var(--light-blue) !important;
}

.rev-custom-accordion .accordion-title::after {
	font-family: ETmodules !important;
	font-weight: 400 !important;
	content: "\33" !important;
	position: absolute;
	right: 8px;
    top: 0;
    bottom: 0;
    margin: auto;
    height: 17px;
    line-height: 17px;
	transition: transform 0.3s ease;
	font-size: 30px;
}
.rev-custom-accordion .accordion-title.active::after {
	content: "\4b" !important;
}
.rev-custom-accordion {
  position: relative;
}
.accordion-item {
  border: none;
  position: relative;
  margin-bottom: 20px;
}
.rev-custom-accordion .accordion-content {
  display: none;
  width: 100%;
  background: #fff;
  z-index: 99;
  padding: 0 54px 16px 18px;
  font-size: 15px;
	line-height: 1.7;
	border-bottom: 1px solid #ddd;
}
.rev-custom-accordion .accordion-item:last-child { margin-bottom:0; }

@media(max-width: 640px) {
	.rev-custom-accordion .accordion-title {	  
	  	padding: 12px 45px 12px 18px;
	}
	.rev-custom-accordion .accordion-title {
		line-height: 1.4;
	}
	.rev-custom-accordion .accordion-content {
	  padding: 0 42px 16px 18px;
	}
}



body .et_pb_accordion_item.et_pb_toggle_open .et_pb_toggle_title:before {
    display: block !important;
}

/* Custom Gallery */

.custom-gallery .et_pb_gallery_item {
	width: auto !important;
	margin: 0 !important;
}
.custom-gallery .et_pb_gallery_items .et_pb_gallery_image img {
	width: 100%;
	object-fit: cover;
	object-position: center;
	width: 100%;
}
@media(max-width: 640px) {
	.custom-gallery .et_pb_gallery_items {
		gap: 18px;
	}
	.custom-gallery .et_pb_gallery_items .et_pb_gallery_image img {
		height: 146px !important;
	}
	.custom-gallery .et_pb_gallery_items {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: 28px;
	}

	.custom-gallery .et_pb_gallery_items .et_pb_gallery_image img {
		height: 122px !important;
		width: 100%;
		object-fit: cover;
		object-position: center;
	}

	.custom-gallery.gallery-1-2 .et_pb_gallery_items .et_pb_gallery_item:first-child .et_pb_gallery_image img {
		height: 185px !important;
	}

	.custom-gallery.gallery-1-2 :first-child {
		grid-column: 1 / -1;
	}
	.custom-gallery.gallery-2-1 .et_pb_gallery_items .et_pb_gallery_item_1_2 .et_pb_gallery_image img {
		height: 185px !important;
	}

	.custom-gallery.gallery-2-1 :last-child {
		grid-column: 1 / -1;
	}
}

@media(min-width: 641px) and (max-width: 1023px) {
	.custom-gallery .et_pb_gallery_item { width:100% !important; }
	.custom-gallery .et_pb_gallery_items .et_pb_gallery_image img { height:190px !important; }
	.custom-gallery .et_pb_gallery_items {
		display: grid;
    	row-gap: 24px;
	}
}

@media(min-width: 1024px) {
	.custom-gallery .et_pb_gallery_items {
		gap: 18px;
	}
	.custom-gallery .et_pb_gallery_items .et_pb_gallery_image img {
		height: 146px !important;
	}
	.custom-gallery .et_pb_gallery_items {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: 28px;
	}

	.custom-gallery .et_pb_gallery_items .et_pb_gallery_image img {
		height: 122px !important;
		width: 100%;
		object-fit: cover;
		object-position: center;
	}

	.custom-gallery.gallery-1-2 .et_pb_gallery_items .et_pb_gallery_item:first-child .et_pb_gallery_image img {
		height: 185px !important;
	}

	.custom-gallery.gallery-1-2 :first-child {
		grid-column: 1 / -1;
	}
	.custom-gallery.gallery-2-1 .et_pb_gallery_items .et_pb_gallery_item_1_2 .et_pb_gallery_image img {
		height: 185px !important;
	}

	.custom-gallery.gallery-2-1 :last-child {
		grid-column: 1 / -1;
	}
}
/*********************************************************
 * Gallery Slider
 ******************************************************
 */
.simple-gallery-slider {
	padding-left: 0 !important;
    padding-right: 0 !important;
}
.simple-gallery-slider .et_pb_row {
	max-width: 100%;
    display: flex;
}
.simple-gallery-slider .et_pb_column {
	margin-right: 0 !important;
    flex: 1;
    display: flex;
    flex-flow: column;
    justify-content: center;
}
.simple-gallery-slider.slider-right .et_pb_column:last-child,
.simple-gallery-slider.slider-left .et_pb_column:first-child {
	width: 55%;
}
.slider-left .photo-slider {
  direction: rtl; /* Flip layout */
}
.slider-left .slick-slide {
  direction: ltr; /* Keep slide content normal */
}
.photo-slider img {
    object-fit: cover;
    border-radius: 10px;
    width: 100%;
}
.photo-slider .slick-slide { margin: 0 20px; }
.photo-slider .slick-list { margin: 0 -20px !important; }

@media(max-width: 640px) {
	.photo-slider img { height: 340px; }
	.photo-slider .slick-list {
		margin: 0 -26px !important;
		padding-left: 14px;
        padding-right: 14px;
	}
	.photo-slider .slick-slide {
		margin: 0 14px;
	}
}
@media(min-width: 641px) and (max-width: 1023px) {

	.photo-slider img { height: 380px; }
	.simple-gallery-slider.slider-right .et_pb_row { padding-right: 0 !important; }
	.simple-gallery-slider.slider-left .et_pb_row { padding-left: 0 !important; }
	.simple-gallery-slider { font-size:14px; }
	.simple-gallery-slider .et_pb_column { margin-bottom:0 !important; }
	.simple-gallery-slider .photo-slider .slick-slide { margin: 0 16px; }
	.simple-gallery-slider.slider-right .photo-slider { padding-left:34px; }
	.simple-gallery-slider.slider-left .photo-slider { padding-right:34px; }
	.simple-gallery-slider .et_pb_module_heading { padding-bottom: 0;}
	.division-gallery-slider.et_pb_section { padding-bottom: 20px !important; }

}

@media(min-width: 1024px) {
	.simple-gallery-slider.slider-right .et_pb_column:first-child {
		padding-right: 80px;
	}

	
	.division-gallery-slider.et_pb_section { padding-bottom: 0 !important; }
	.simple-gallery-slider.slider-right .et_pb_row,
	.simple-gallery-slider.slider-left .et_pb_row {
		width: 100% !important;
	}
}

@media(min-width: 1024px) and (max-width: 1599px) {
.simple-gallery-slider.slider-right, 
	.simple-gallery-slider.slider-left {
		    font-size: 14px;
    	line-height: 1.6;
}
}
@media(min-width: 1024px) and (max-width: 1599px) {
	.simple-gallery-slider.slider-right .et_pb_column:first-child {
		padding-left: 54px;
	}
	.simple-gallery-slider.slider-left .et_pb_column:first-child,
	.simple-gallery-slider.slider-left .et_pb_column:last-child {
		padding-right: 54px;
	}
	.simple-gallery-slider.slider-right .photo-slider img, 
	.simple-gallery-slider.slider-left .photo-slider img {
		height: 360px;
	}
	.photo-slider .slick-slide {
		margin: 0 10px;
	}
}
@media(min-width: 1600px) {
	.photo-slider img {
		height: 544px;	    
	}
	.simple-gallery-slider.slider-right .et_pb_column:first-child {
		padding-left: 200px;
	}
	.simple-gallery-slider.slider-left .et_pb_column:last-child {
		padding-right: 200px;
	}
	.simple-gallery-slider.slider-left .et_pb_column:last-child {
		padding-left: 80px;
	}
}
/*********************************************************
 * Photo Slider
 *******************************************************/

/*********************************************************
 * Photo Overlap
 ******************************************************
 */
.image-overlaps .et_pb_row {
	display: flex;
}
.image-overlaps .et_pb_image_wrap {
	max-height: 840px;
	width: 100%;
}
.image-overlaps .et_pb_module,
.image-overlaps .et_pb_image_wrap,
.image-overlaps .et_pb_image img {
	height: 100%;
	width: 100% !important;
}
.image-overlaps .et_pb_image img {
	object-fit: cover;
}
.image-overlaps .et_pb_column:last-child {
	display: flex;
    flex-flow: column;
    justify-content: center;
    background-color: #EAF5FB;    
    border-radius: 43px;
}

@media(max-width: 640px) {
	.image-overlaps .et_pb_column:first-child {
		order: 2;
    	margin-top: 24px;
    	margin-bottom: 0;
	}
	.image-overlaps .et_pb_image img {
		height: 420px;
	}
	  .image-overlaps .et_pb_column:last-child {
        padding: 44px 34px !important;
    } 
    .image-overlaps .et_pb_column:last-child {
		padding: 24px;
	}
}
@media(max-width: 1023px) {
	.image-overlaps .et_pb_column:first-child {
		order: 2;
    	margin-right: 0 !important;
    	margin-top: 24px;
	}
	.image-overlaps .et_pb_row {
    	display: flex;
    	flex-direction: column;
	}
	
}
@media(min-width: 641px) and (max-width: 1023px) {
	.image-overlaps .et_pb_image img {
		height: 375px;    	
	}
	.image-overlaps .et_pb_column:last-child {
		padding: 54px;
	}
	.image-overlaps .et_pb_module.section-heading {
		margin-bottom: 14px !important;
	}

}
@media(min-width: 1024px) {
	.image-overlaps .et_pb_row {
		max-width: 1350px;
	}
	.image-overlaps .et_pb_column:last-child {
        padding: 80px 50px 80px 80px;
        border-radius: 43px;
        margin: 100px 0 100px -200px;
        min-width: 681px;
        justify-content: flex-start;
        align-items: flex-start;
	}
	.image-overlaps .group-button {
		margin-top: 34px;
	}
	.image-overlaps .et_pb_column:first-child {
		width: 964px;
	}
	.image-overlaps .et_pb_module.section-heading {
		margin-bottom: 16px !important;
    	height: auto;
	}
}
/*********************************************************
 * Photo Overlap
 *******************************************************/

/*********************************************************
 * Section Below Banner
 ******************************************************
 */
.section-below-banner .et_pb_row,
.section-below-banner .et_pb_column { display:flex; }
.section-below-banner .et_pb_column:first-child { align-items:end; justify-content: flex-end; }
.section-below-banner .et_pb_blurb {
	min-width: 584px;
	border-bottom: 8px solid #2C9AD8;
	padding-bottom: 28px;
}
.section-below-banner h3.et_pb_module_header {
    font-size: 45px;
}
.section-below-banner .et_pb_column:last-child .et_pb_module {
	margin-bottom: 0 !important;
}
/*********************************************************
 * Section Below Banner
 *******************************************************/
/*********************************************************
 * *CUSTOM MENU
 ******************************************************/
.custom-menu {
	list-style: none !important;
	padding-left: 0 !important;
}
/*********************************************************
 #LOGO DISPLAY
 ******************************************************
 */

.rev-logo-display img {
	height: 145px;
	object-fit: contain;
	width: 100%;
}
.rev-logo-item {
justify-content: center;
    padding: 24px;
    display: flex;
    align-items: center;
    min-height: 165px;
    width: 100%;
}
@media(min-width: 1024px) {
	.rev-logo-display {
	display: grid;
	gap: 24px;
	grid-template-columns: repeat(5, 1fr);
    justify-items: center;
}
}
/*********************************************************
 !LOGO DISPLAY
 ******************************************************
 */

/*********************************************************
 #GRAVITY FORM START
 ******************************************************
 */

/*********************************************************
 #GRAVITY FORM END
 *******************************************************/
.gform_wrapper.gravity-theme .gform_validation_errors { display:none !important; }
body .gform_wrapper.gravity-theme .gform_footer, 
body .gform_wrapper.gravity-theme .gform_page_footer {
	padding-bottom: 0;
}
body .gform_wrapper.gravity-theme .gform_footer input {
	margin-bottom: 0 !important;
}
body .gform_wrapper.gravity-theme .gfield_error [aria-invalid=true] { border-top:none; border-left:none; border-right:none; }
body .gform_wrapper.gravity-theme .gfield_validation_message, 
body .gform_wrapper.gravity-theme .validation_message {
	background-color: transparent;
    border: none;
    padding: 0 !important;
    font-size: 14px;
    font-style: italic;
    margin-left: 8px;
    font-weight: 500;
    margin-top: -2px !important;
}
/* Style all Gravity Forms input fields */
body .gform_wrapper .gform_body input[type="text"],
body .gform_wrapper .gform_body input[type="email"],
body .gform_wrapper .gform_body input[type="url"],
body .gform_wrapper .gform_body input[type="tel"],
body .gform_wrapper .gform_body input[type="number"],
body .gform_wrapper .gform_body input[type="password"],
body .gform_wrapper .gform_body textarea,
body .gform_wrapper .gform_body select {
  background-color: transparent;
  border-left: none;
  border-right: none;
  border-top: none;
  height: 44px; 
  border-bottom: 1px solid var(--dark-blue); /* only bottom border */
  color: var(--dark-blue);
  border-radius: 0; /* remove rounded corners */
  box-shadow: none; /* remove shadows if any */
  padding-left: 0;
  padding-right: 0;
}
.gform_wrapper.gravity-theme .gfield--type-select{
	border-bottom: 1px solid var(--dark-blue);
}
body .gform_wrapper.gravity-theme .gfield textarea.small {
  height: 44px;
}
/* Placeholder text */
body .gform_wrapper .gform_body input::placeholder,
body .gform_wrapper .gform_body textarea::placeholder {
  color: var(--dark-blue);
  opacity: 1; /* make sure it's not faded */
}
/* Gravity Forms button styling */
body .gform_wrapper .gform_footer input[type="submit"],
body .gform_wrapper .gform_page_footer input[type="button"],
body .gform_wrapper .gform_page_footer input[type="submit"] {
  min-width: 200px;
  min-height: 44px !important;
  background-color: var(--dark-blue);
  color: #fff;
  border: none;
  border-radius: 15px;
  padding: 0 20px;
  font-size: 16px;
  cursor: pointer;
  transition: background-color 0.3s ease;
  font-family: 'Josefin Sans', Helvetica, Arial, Lucida, sans-serif;
  letter-spacing: 1.82px;
  text-transform: uppercase;
}
body .gform_wrapper .gform_footer input[type="submit"]:hover,
body .gform_wrapper .gform_footer button:hover {
  background-color: #2C9AD8;
}
/* Target specifically the consent checkbox */
.gform_wrapper.gravity-theme .gfield--type-consent input[type="checkbox"] {
  /* hide native checkbox */
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

/* Consent label styling */
body .gform_wrapper.gravity-theme .gfield_consent_label {
  position: relative;
  padding-left: 44px; /* room for custom box */
  cursor: pointer;
  font-size: 14px;
  color: var(--dark-blue);
  display: inline-flex;
  align-items: center;
  line-height: 1.6;
}

/* Custom box */
body .gform_wrapper.gravity-theme .gfield_consent_label::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 24px;
  height: 24px;
  border: 1.4px solid var(--dark-blue);
  border-radius: 6px;
  background: transparent;
  box-sizing: border-box;
}

/* Checked state with Font Awesome icon */
body .gform_wrapper.gravity-theme .gfield--type-consent input[type="checkbox"]:checked + .gfield_consent_label::before {
  content: "\f00c"; /* Font Awesome checkmark */
  font-family: "Font Awesome 6 Free"; /* use "Font Awesome 5 Free" if you’re on FA5 */
  font-weight: 900; /* solid style */
  font-size: 16px;
  color: var(--dark-blue);
  text-align: center;
  line-height: 22px;
}
/* Force remove native arrow across browsers */
body .gform_wrapper.gravity-theme select {
  appearance: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
}

/* Hide IE's stubborn arrow */
body .gform_wrapper.gravity-theme select::-ms-expand {
  display: none;
}
/* Wrapper to position arrow */
body .gform_wrapper.gravity-theme .gfield select {
  background-image: url("data:image/svg+xml;charset=US-ASCII,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23122947' stroke-width='1' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: 99% 12px;
    background-size: 28px;
    width: auto !important;
    padding-right: 36px;
    border-bottom: none;
}
@media(max-width: 640px) {
	
	body .gform_wrapper.gravity-theme .gfield_consent_label::before {
		top: 16px;
		width: 22px;
		height: 22px;
	}
	body .gform_wrapper.gravity-theme .gfield_consent_label {
		padding-left: 40px;
	}
}
@media(max-width: 1023px) {
/* Style all Gravity Forms input fields */
	body .gform_wrapper .gform_body input[type="text"],
	body .gform_wrapper .gform_body input[type="email"],
	body .gform_wrapper .gform_body input[type="url"],
	body .gform_wrapper .gform_body input[type="tel"],
	body .gform_wrapper .gform_body input[type="number"],
	body .gform_wrapper .gform_body input[type="password"],
	body .gform_wrapper .gform_body textarea,
	body .gform_wrapper .gform_body select {
	  font-size: 14px;
	}
	body .gform_wrapper.gravity-theme .gfield select {
		    background-position: 99% 11px;
    background-size: 24px;
	}
}
@media(min-width: 1024px) {
	/* Style all Gravity Forms input fields */
	body .gform_wrapper .gform_body input[type="text"],
	body .gform_wrapper .gform_body input[type="email"],
	body .gform_wrapper .gform_body input[type="url"],
	body .gform_wrapper .gform_body input[type="tel"],
	body .gform_wrapper .gform_body input[type="number"],
	body .gform_wrapper .gform_body input[type="password"],
	body .gform_wrapper .gform_body textarea,
	body .gform_wrapper .gform_body select {
	  font-size: 16px;
	}
}
/*********************************************************
 #GLOBAL CONTACT FORM - START
 ******************************************************
 */
.form-container {
	padding: 38px 24px;
    border-radius: 30px;
    background-color: #DCEDF9;
}
.form-container .et_pb_blurb { margin-bottom:0 !important; }

@media(min-width: 1024px) {
	.form-container {
		padding: 60px;
	}
}

.global-contact-form .et_pb_module_header {
	padding-bottom: 16px;
}
.global-contact-form .et_pb_blurb {
	max-width: 625px;    
}
.global-contact-form .gform-footer {
	display: flex !important;
    justify-content: center;
    margin-top: 34px !important;
    padding-bottom: 0 !important;
}
.global-contact-form .gform-footer .gform_button { margin-bottom: 0 !important; }
.global-contact-form .inner-container {		
	border-radius: 30px;
}
@media(max-width: 640px) {
	.global-contact-form .inner-container {
		padding: 38px 24px;
    	border-radius: 30px;
	}
	.global-contact-form .et_pb_blurb { margin: 0 auto 28px auto; }
}
@media(min-width: 641px) {
	.global-contact-form .et_pb_blurb {
	    margin: 0 auto 44px auto;
	}
	.global-contact-form .inner-container {
		padding: 54px 38px;
	}
}
@media(min-width: 641px) and (max-width: 1023px ){
	.global-contact-form .et_pb_blurb {
		max-width: 525px;    
	}
}
@media(min-width: 1024px) {
	.global-contact-form .et_pb_row {
		max-width: 1295px !important;
	}
	.global-contact-form .inner-container {
		padding: 80px;
	}
	.global-contact-form .et_pb_module_header {
		padding-bottom: 20px;
	}
	.global-contact-form .et_pb_blurb {
        margin: 0 auto 54px auto !important;
    }
}
@media(min-width: 1024px) and (max-width: 1599px) {
	.global-contact-form.et_pb_section { padding-top:0 !important; }
}
/*********************************************************
 !GLOBAL CONTACT FORM - END
 *******************************************************/
/*********************************************************
 #STANDARD CONTACT FORM - START
 *******************************************************/
.standard-contact-form .the-form .et_pb_module_header { font-size:28px; }
.standard-contact-form .form-container { max-width: 653px; }
.standard-contact-form .content-column { margin-top: 44px; }
@media(max-width: 1023px) {
	.standard-contact-form .content-column { margin-top: 0; }
}
/*********************************************************
 !STANDARD CONTACT FORM - END
 *******************************************************/
/*********************************************************
 #LISTING ELEMENT - START
 ******************************************************
 */
.listing-element.layout-grid {
	display: grid;
}
.listing-element.layout-grid.column-3 {
    grid-template-columns: repeat(3, 1fr);
    gap: 34px;
}
/********************************************
* LISTING MODULE
********************************************/
.listing-module {
    --gap: 35px;
    --columns: 5;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    gap: var(--gap);    
    border-top: 1px solid #122947;
    border-bottom: 1px solid #122947;
    padding-top: 50px;
    padding-bottom: 50px;
}
.listing-module.swiper-initialized {
	overflow: hidden;
	gap: 0;
	position: relative;
}
.listing-module.swiper-initialized .swiper-wrapper {
	align-items: stretch;
}
.listing-container[data-show-filter="false"] .listing-module {
    border-top: none;
    border-bottom: none;
    padding-top: 0;
    padding-bottom: 0;
}
.listing-item {
    overflow: hidden;
    -webkit-box-flex: 0;
    -ms-flex: 0 0 calc((100% / var(--columns)) - var(--gap) + (var(--gap) / var(--columns)));
    flex: 0 0 calc((100% / var(--columns)) - var(--gap) + (var(--gap) / var(--columns)));
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-flow: column;
    flex-flow: column;
    text-align: left;
    background: transparent;
}

.listing-item.swiper-slide {
	-webkit-box-flex: 0;
	    -ms-flex: 0 0 auto;
	        flex: 0 0 auto;
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	height: auto;
}
.listing-image-container {
	border-radius: 15px;
	overflow: hidden;
}
.listing-item .listing-image {
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: 15px;
    background-position: center;	
	transition: all .25s ease-in-out;
}
.listing-item .listing-image:before {
    content: "";
    display: block;
    padding-top: 49%;
}
.listing-item .listing-content {
    margin-top: 25px;
    /* background: #EAF5FB;
    padding: 26px 17px; */
    text-align: left;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-flow: column;
    flex-flow: column;
    width: 100%;
    gap: 10px;
}
.listing-item .listing-title {
    font: normal normal bold 16px/25px Josefin Sans;
    letter-spacing: 0px;
    color: #122947;
    text-transform: uppercase;
    transition: all .25s ease-in-out;
}
.listing-item .item-description {
    font: normal normal normal 14px/25px Open Sans;
    letter-spacing: 0px;
    color: #122947;
    line-height: 1.5;
    margin-top: 6px;
}
.listing-item .item-actions {
    margin: auto 0 0;
}
.listing-item .item-actions .listing-button {    
    border: 0;
}
.listing-item:hover .listing-image {
	transform: scale(1.2);
}
.listing-item .listing-title:hover {
	color: var(--primary-colour);
}
@media(max-width: 640px) {
	.listing-filters {
		gap: 15px !important;
		margin-bottom: 24px !important;
	}
	.listing-module {
		    padding-top: 44px;
	}
}
@media(min-width: 641px) and (max-width: 1023px) {
	.listing-item .listing-image:before {
		padding-top: 60%;
	}
}

@media(max-width: 1023px) {
	.listing-module .swiper-pagination { display:none !important; }
}
@media(min-width: 1024px) {
	.listing-item .listing-image:before {	
	    padding-top: 59.5%;
	}
}
/********************************************
* PAGINATION
********************************************/
.swiper-button-next,
.swiper-button-prev {
	font-size: 16px;
	width: 2em;
	height: 2em;
	background: rgba(18, 41, 71, 0.8 );
	border-radius: 0.2em;
}
.swiper-button-next:after, 
.swiper-button-prev:after {
	font-size: inherit;
	color: #fff;
}
.listing-pagination {
    margin-top: 18px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
;
    gap: 6px;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.listing-pagination .listing-page, 
.listing-pagination .prev-button, 
.listing-pagination .next-button {
    line-height: 1em;
    font-size: 14px;
}

.listing-pagination .listing-page {
    padding: 0.5em;
    border: 1px solid #EAF5FB;
    background: #EAF5FB;
    border-radius: 6px;
    min-width: 2.5em;
    min-height: 2.5em;
}
.listing-pagination .listing-page.is-active {
    background: #122947;
    color: #fff;
    border-color: #122947;
}
.listing-pagination .prev-button, 
.listing-pagination .next-button {
    border: none;
    background-color: transparent;
}
.swiper-pagination-progressbar,
.swiper-pagination-bullet{
	background: #EAF5FB;
    -webkit-box-shadow: 0 0 2px rgba(18, 41, 71, 1);
            box-shadow: 0 0 2px rgba(18, 41, 71, 1);
    opacity: 1;
}
.swiper-pagination-progressbar .swiper-pagination-progressbar-fill,
.swiper-pagination-bullet.swiper-pagination-bullet-active {
	background: #122947;
}
/*****************************************
 * MODAL
 * **************************************/
.listing-modal-overlay {
	position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.7);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    z-index: 99999;
}
.listing-modal {
	background: #fff;
    border-radius: 8px;
    max-width: 1172px;
    padding: 45px;
    width: 92%;
    max-height: 85vh;
    /*overflow-y: auto;*/
    position: relative;
    -webkit-box-shadow: 0 10px 30px rgba(0, 0, 0, .2);
    box-shadow: 0 10px 30px rgba(0, 0, 0, .2);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row;
    flex-flow: row;
    gap: 30px;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.listing-modal .listing-modal-close {
	position: absolute;
    top: 10px;
    right: 10px;
    border: none;
    background: transparent;
    color: #122947;
    width: 32px;
    height: 32px;
    line-height: 32px;
    border-radius: 16px;
    cursor: pointer;
    font-size: 32px;
}
.listing-modal .modal-inner{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-flow: row;
    flex-flow: row;
    gap: 50px;
    max-height: 100%;
    /*overflow-x: auto;*/
	width: 100%;
}
.listing-modal .modal-inner > .left-content-wrap {
	-webkit-box-flex: 1;
    -ms-flex: 1 1 40%;
    flex: 1 1 40%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	    -ms-flex-flow: column;
	        flex-flow: column;
}
.listing-modal .modal-inner > .left-content-wrap > .listing-modal-image {
	background-size: cover;
	background-position: center;
	border-radius: 20px;
	margin-bottom: 16px;
}
.listing-modal .modal-inner > .left-content-wrap > .listing-modal-image:before {
	content: "";
	display: block;
	padding-top: 90%;
}
.listing-modal .modal-inner > .right-content-wrap {
	-webkit-box-flex: 1;
    -ms-flex: 1 1 60%;
    flex: 1 1 60%;		
	padding-top: 24px;
} 
@media screen and ( max-width: 767px ) {
	.listing-modal .modal-inner > .left-content-wrap,
	.listing-modal .modal-inner > .right-content-wrap {
		flex: 0 0 100%;
	}
}
.listing-modal .listing-modal-title {
	font: normal normal bold 28px/35px Josefin Sans;
	letter-spacing: 0px;
	color: #122947;
	text-transform: uppercase;
}
.listing-modal .listing-meta-label{
	font: italic normal 600 16px/25px Open Sans;
	letter-spacing: 0px;
	color: #2C9AD8;
	text-transform: none;
	margin-bottom: 4px;
}
.listing-modal .listing-meta-value{
	font: normal normal bold 20px/25px Josefin Sans;
	letter-spacing: 0px;
	color: #122947;
	text-transform: uppercase;
}
.listing-modal-meta-wrap {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row;
            flex-flow: row;
	gap: 16px;
	margin: auto 0 0;
}
.listing-modal-meta-wrap > * {
	-webkit-box-flex: 0;
	    -ms-flex: 0 0 50%;
	        flex: 0 0 50%;
	-webkit-box-flex: 1;
	    -ms-flex-positive: 1;
	        flex-grow: 1;
} 
.listing-content-inner {
	font: normal normal normal 16px/28px Open Sans;
	letter-spacing: 0px;
	color: #122947;	

}
.listing-modal .listing-content-inner {
	display: flex;
	row-gap: 20px;
}

.listing-modal.listing-modal-project {
	max-height: 90vh;
	min-height: 85vh;
}

.listing-modal.listing-modal-project .modal-inner > .left-content-wrap > .listing-modal-image:before {
	padding-top: 70%;
}
.project-client-group {
	border-bottom: 1px solid #122947;
    padding-bottom: 16px;
}
.listing-modal-project .value-group {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
}
.listing-modal-project .value-group .meta-item { display:grid; gap:12px; }
.listing-modal-project .value-group .listing-meta-value {
	    font-size: 17px;
    line-height: 1.3;
}

.listing-modal.listing-modal-project  .modal-inner > .left-content-wrap {
	    display: grid;
}
	.listing-modal-project .project-client {
		margin-bottom: 6px;
	}

/* END MODAL */
@media(max-width: 640px) {

	
	.listing-modal {
		padding: 42px 24px 24px;
	}
	.listing-modal .modal-inner > .left-content-wrap {
		flex: 1;
	}
	.listing-modal .modal-inner {
		flex-flow: column;
    	overflow: scroll;
    	gap: 8px;    	
	}	
	.listing-item .listing-image:before {
		padding-top: 55%;
	}
	.listing-modal-image {
		margin-bottom: 20px;
	}
	.listing-modal .value-group {
		border-bottom: 1px solid #122947;
    	padding-bottom: 24px;
	}
	.listing-modal.listing-modal-project .modal-inner > .left-content-wrap > .listing-modal-image:before {
		padding-top: 66%;
	}
	.listing-modal-project.listing-modal .listing-modal-title {
		font: normal normal bold 22px / 30px Josefin Sans;
		    margin-bottom: 8px;
	}
	.listing-modal-project .right-content-wrap .listing-modal-title {
		display: none;
	}

}
@media(min-width: 641px) and (max-width: 1023px) {
	.listing-modal {
		width: 95%;
		padding: 24px;
	}
	.listing-modal .modal-inner {
		gap: 24px;
	}
	.listing-modal .listing-modal-title {
		font-size: 20px;
		line-height: 25px;
		margin-bottom: 8px;
	}
	.listing-modal-project .listing-content-inner { font-size:14px; }
	.project-client-group .listing-meta-value {
		font-size: 17px;
	}
}
@media(min-width: 641px) {
	.listing-modal-project .listing-content-inner {
		width: 100%;
		max-height: 80%;
	    overflow: scroll;	    
	    line-height: 1.6;
	}
	.listing-modal-project .left-content-wrap .listing-modal-title { display:none; }
	.listing-modal.listing-modal-project .modal-inner > .left-content-wrap {
		        align-content: start;
	}
	.listing-modal .modal-inner { overflow:hidden; }
}
@media(min-width: 1024px) {
	.listing-modal.listing-modal-project  .modal-inner > .left-content-wrap {
    align-content: start;
}
	.listing-modal .modal-inner > .right-content-wrap {
		padding-right: 16px;
	} 
	.listing-modal-project.listing-modal .listing-modal-title {
		margin-bottom: 24px;
	}
	.listing-modal-project .listing-content-inner {		
		max-height: 85%;	    
	    padding-right: 24px;	    
	}
	
}
/*********************************************************
 !LISTING ELEMENT - END
 *******************************************************/
/*********************************************************
 #LIFE AT LANDY START
 ******************************************************
 */
.life-at-landy .photo-slider-offset {
	margin-top: 54px;
}
.life-at-landy .photo-slider img { border-radius: 30px; width: 100%; height:399px; object-fit: cover; }

.life-at-landy .et_pb_module.et_pb_text {
	font-size: 21px;
	line-height: 1.9;
}
/*********************************************************
 !LIFE AT LANDY START
 *******************************************************/
.landy-community-gallery .swiper {
	width: 100%;
	height: 100%;
}

.landy-community-gallery .slider {
	width: 100%;
}
.landy-community-gallery .slider .inner {
	height: 225px;
	border-radius: 30px;
	overflow: hidden;
	background: center no-repeat rgb(233, 233, 233);
	background-size: cover;
	display: flex;
	align-items: flex-end;
	justify-content: center;
}

.landy-community-gallery .slider .inner h4 {
	font-family: var(--heading-font);
	background: var(--light-blue);
	font-weight: bold;
	width: 100%;
	display: flex;
	justify-content: center;
	text-align: center;
	align-items: center;
	line-height: 132%;
	opacity: 0;
	transition: opacity ease-in 0.5s;
}

/*.landy-community-gallery .slider .inner:hover h4 {
	opacity: 100%;
}*/
.landy-community-gallery {
	position: relative;
	width: 100%;
	margin-left: 0;
	z-index: 1;
}
.landy-swiper-clients .swiper-slide {
	height: auto;
}
.landy-swiper-clients .swiper-wrapper .inner {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
}
.landy-community-gallery .slick-arrow {
	top: auto;
	bottom: -54px;
}
.landy-community-gallery .slick-arrow:before {
	font-size: 55px;
}
.landy-community-gallery .slick-prev { 
	left: auto;
}
.landy-community-gallery .slick-current.slick-active h4 {
	opacity: 1;
}	
.community-gallery .image-overlay-content .et_pb_main_blurb_image img {
	height: 380px;
}
.community-gallery .image-overlay-content .et_pb_module_header {
	font-size: 24px;
}
.community-gallery .image-overlay-content .et_pb_blurb_container {
	padding: 26px;
	bottom: 0;
}
.community-gallery.et_pb_section { padding-bottom: 0 !important; }
@media(max-width: 640px) {
	.section-community.et_pb_section {
		padding-bottom: 54px !important;
	}
	.simple-gallery-slider .et_pb_row { flex-flow: column; }
	.section-community .landy-community-gallery h4 { 
		padding: 24px;			
	}
	.landy-community-gallery .slick-arrow {
		bottom: -36px;
	}
	.landy-community-gallery .slick-prev { 
		right: 85px;		
	}
	.landy-community-gallery .slick-next { 
		right: 30px;    	
	}
}
@media(max-width: 1023px) {
	.landy-community-gallery .slick-arrow:before {
    	font-size: 46px;
	}
}
@media(min-width: 641px) and (max-width: 1023px) {
	.section-community.et_pb_section {
		padding-top: 0 !important;
	} 
	.section-community .landy-community-gallery .slider .inner {
		height: 450px;
	}
	.section-community .et_pb_column:first-child {
		padding-right: 24px;
		flex: 0 0 320px;
	}
	.section-community h2.et_pb_module_heading { font-size:32px; }
	.section-community .et_pb_text {
		font-size: 15px;
	}
	.landy-community-gallery .slider .inner h4 {
		min-height: 90px;
		font-size: 22px;
	}
	.landy-community-gallery .slick-prev { 
		right: 168px;	
	}
	.landy-community-gallery .slick-next { 
		right: 102px;   	
	}
	.landy-community-gallery .slick-arrow {
		bottom: -43px;
	}
	.landy-community-gallery {
		margin-left: -24px;
	}
	.landy-community-gallery {
		width: 57vh;
	}
}
@media(min-width: 1024px) {
	.section-community.simple-gallery-slider { padding-top:0 !important; } 
	.landy-community-gallery .slick-list {
		margin: 0;
		margin-left: -19px;
	}
}
@media(min-width: 1024px) and (max-width: 1279px) {
	.section-community.simple-gallery-slider.slider-right .et_pb_column:first-child { padding-left: 60px; padding-right: 40px; }

	.section-community .landy-community-gallery .slider .inner {
		height: 436px;
	}
	.section-community .et_pb_module_heading { font-size:36px !important; }
	.section-community .landy-community-gallery h4 {
		padding: 20px !important;
    	font-size: 21px;
    	height: 110px;
	}
	.landy-community-gallery .slick-list {
		margin-right: -24px;
	}	   
}
@media(min-width: 1024px) and (max-width: 1440px) {
	.community-gallery .grid.grid-col-4 {
		grid-template-columns: repeat(3, 1fr);
	}
	

	.community-gallery .image-overlay-content .et_pb_main_blurb_image img {
		height: 340px;
	}
}

@media(min-width: 1280px) and (max-width: 1599px) {
.section-community .landy-community-gallery h4 {		
    	font-size: 24px;
    	padding: 20px !important;
    	font-size: 24px;
    	height: 120px;
	}
}
@media(min-width: 1024px) and (max-width: 1599px) {
	.community-gallery .image-overlay-content .et_pb_module_header { font-size:22px; }
	.landy-community-gallery .slick-arrow {
		bottom: -40px;
	}
	.landy-community-gallery .slick-prev { 
		right: 30%;
	}
	.landy-community-gallery .slick-next { 
		right: 21%;  	
	}
	.section-community .et_pb_column:first-child {
		padding-right: 64px !important;
        flex: 0 0 520px;
	}
	.landy-community-gallery .slick-arrow:before {
		font-size: 43px;
	}
}
@media(min-width: 1600px) {
	.section-community.simple-gallery-slider.slider-right .et_pb_column:first-child { padding-left: 120px; }
		.landy-community-gallery .slider .inner {
		height: 663px;
	}

	.landy-community-gallery .slider .inner h4 {	
		font-size: 36px;	
		height: 150px;	
		line-height: 1.2;
	}
	.landy-community-gallery .slick-prev { 
		right: 33%;		
	}
	.landy-community-gallery .slick-next { 
		right: 26%;
	}
}


/*********************************************************
 #DIVISION - START
 ******************************************************
 */

.division-highlights .et_pb_gallery_grid .et_pb_gallery_item { animation:none !important; }

.division-highlights .et_pb_gallery_image .et_overlay {
	background-color: rgb(234 245 251 / 60%) !important;
}
.division-highlights .et_pb_text h3 { font-size:22px; }
@media(max-width: 640px) {
	body .et_pb_section.division-team {padding-bottom: 70px !important;}
}
@media(min-width: 641px) {
	.division-highlights .row-body {
		display: flex;
	}
	.division-highlights .rev-custom-accordion {
		max-width: 75%;
	}
}
@media(min-width: 641px) and (max-width: 1023px) {
	.division-highlights { font-size:15px; }
	.division-highlights .section-heading {
		margin-bottom: 34px !important;
	}
	.division-highlights .row-body .et_pb_column:first-child {
		width: 60%;
		padding-right: 24px;
	}	
	.division-highlights .row-body .et_pb_column:last-child {
		width: 40%;
	}
	.division-highlights .rev-custom-accordion { max-width:85%; }
	.division-highlights .rev-custom-accordion .accordion-title {
		font-size: 13px;
	}
	.division-highlights .rev-custom-accordion .accordion-content { font-size:12.5px; }

	.division-highlights .et_pb_text h3,
	.division-highlights .row-body .et_pb_column .et_pb_text { text-align:left !important; }

	body .et_pb_section.division-highlights { padding-bottom: 0 !important; }

	.division-team.et_pb_section { padding-top:0 !important; }
	.division-team .slick-slide { margin:0 16px; }
}

@media(min-width: 1024px) {
	.division-highlights .row-body .et_pb_column:first-child {
		width: 45%;
	}	
	.division-highlights .row-body .et_pb_column:last-child {
		width: 55%;
	}	
	.division-team .team-card {
		max-width: 440px;
	}
	.division-team .team-list { justify-content:center; }

	.division-featured-projects .listing-image-container { height:100%; }
}

/*********************************************************
 !DIVISION - END
 *******************************************************/
/*********************************************************
 #CTA BUTTON GROUP
 ******************************************************
 */
.cta-button-group:not(.no-border) { 
	border-top: 1px solid var(--dark-blue);
	border-bottom: 1px solid var(--dark-blue);
}
.cta-button-group {
    padding: 80px 0 !important;
    margin-left: 100px;
    margin-right: 100px;
    text-align: center;
}
.cta-button-group .cta-header { margin-bottom:24px; }
.cta-button-group .et_pb_row {
	max-width: 610px;
	padding-bottom: 0;
    padding-top: 0;
}
.cta-button-group .row-buttons {
	 display: flex;
    justify-content: center;    
}
.cta-button-group .row-buttons .et_pb_column {
	    flex: 0 0 auto;
    width: auto;
    margin-right: 0 !important;
    padding-left: 16px;
    padding-right: 16px;
}
.cta-button-group .row-buttons .et_pb_button,
.cta-button-group .row-buttons .et_pb_button:hover {
	padding-left: 32px !important;
	padding-right: 32px !important;
}
.cta-button-group .et_pb_heading { margin-bottom:24px !important; }
@media(max-width: 640px) {
	.cta-button-group {
		margin-left: 24px;
    	margin-right: 24px;
	}
	.cta-button-group .row-buttons {
		flex-flow: column;
		row-gap: 16px;
	}
	.cta-button-group .et_pb_column {
		margin-bottom: 0 !important;
	}
}
@media(min-width: 641px) and (max-width: 1023px) {
	.cta-button-group {
		margin-left: 54px;
    	margin-right: 54px;
	}
	.cta-button-group .section-heading,
	.cta-button-group .row-buttons .et_pb_column { margin-bottom:0 !important; }
}
/*********************************************************
 !CTA BUTTON GROUP
 ******************************************************
 */

/*********************************************************
 #INSIGHTS
 ******************************************************
 */
@media(max-width: 1023px) {
	.post-listing .listing-item .listing-image:before {
		padding-top: 63%;
	}
}

/*********************************************************
 #SINGLE BLOG PAGE
 *******************************************************/
.single-post .et_pb_post_title .published {
    font-size: 16px;
    font-weight: 600;
    font-style: italic;
    color: #2c9ad8;
}
.single-post .post-content .et_pb_post_content {
	font-size: 16px;
    line-height: 1.6;
}
.single-post .post-content .et_pb_image img {
	object-fit: cover;
    height: 723px;
    width: 100%;
    border-radius: 20px;
}
.single-post .et_pb_image .et_pb_image_wrap {
	width: 100%;
}

.single-post.cat-case-studies .et_pb_post_content h4 { 
 	 font-size: 18px;
    font-weight: 600;
    font-style: italic;
    color: #2c9ad8;
    text-transform: none;
    font-family: 'Open Sans', Helvetica, Arial, Lucida, sans-serif;
    margin-bottom: 10px;
}
.single-post.cat-case-studies .et_pb_post_title .published { display: none; }
.et_pb_post_content ul {
	margin-left: 18px;
}
.case-studies-meta.post-meta {
  display: flex;
  justify-content: space-between;
  align-items: center; /* ensures vertical centering */
  width: 100%;
  gap: 1rem; /* optional: adds breathing space between items */
}

.case-studies-meta.post-meta > div {
  flex: 1; /* each section can grow/shrink evenly */
}

.case-studies-meta.post-meta strong {
  margin-right: 0.5em;
  font-weight: 600;
}

.post-meta label {
	    font-size: 16px;
    font-weight: 600;
    font-style: italic;
    color: #2c9ad8;
    display: block;
    text-transform: none;
    margin-bottom: 6px;
        font-family: 'Open Sans', Helvetica, Arial, Lucida, sans-serif;
}
.post-meta .meta {
	text-transform: uppercase;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.2;
	font-family: var(--heading-font);

}
.single-post .category-link.et_pb_section {
	padding: 16px 0 !important; 
}
.single-post .category-link .et_pb_row { padding-top:0 !important; }
.category-link .tb-category-button {
		    padding: 0 !important;
    font-size: 14px;
	}
@media(max-width: 640px) {	
	.single-post .post-content .et_pb_image img {
	    height: 358px;
	}
	.single-post .post-content .et_pb_column.et-last-child .featured-image, 
	.single-post .post-content .et_pb_column.et-last-child .case-study-meta { display:none; }
	.case-studies-meta.post-meta {
		flex-flow: column;
   		align-items: flex-start;
	}
	.case-studies-meta.post-meta .meta { font-size: 18px; }
	.single .et_pb_post_title .entry-title { font-size:25px !important; }
	
}
@media(min-width: 641px) {
	.single-post .post-content {
		padding-top: 0 !important;
		padding-bottom: 0 !important;
	}
	.single-post .full-height-split-banner .bottom-content {
		    padding-bottom: 36px;
	}
}

@media(min-width: 641px) and (max-width: 1023px){	
	.single-post .post-content .et_pb_image img {
		    height: 380px;
	}
	.single-post .post-content .et_pb_column:first-child {
		width: 100%;
		margin-right: 0;
	}
	.single-post .post-content .et_pb_column.et-last-child { display:none; }
	.single .et_pb_post_title .entry-title { font-size:22px !important; }
	.single-post .category-link.et_pb_section {
		margin-bottom: 24px;
	}
}
@media(min-width: 1024px) {
	.single-post.cat-case-studies .et_pb_row .et_pb_column:last-child {
		position: sticky;
    	top: 80px;
	}
	.single-post.cat-case-studies .post-content .et_pb_image img {
		    height: 553px;
	}
	
	.single-post .post-content .et_pb_column:first-child .featured-image, 
	.single-post .post-content .et_pb_column:first-child .case-study-meta { display:none; }
	.single .et_pb_post_title .entry-title { font-size:25px !important; }
}
@media(min-width: 1024px) and (max-width: 1399px) {
	.single-post.cat-case-studies .post-content .et_pb_image img {
        height: 350px;
    }
    .post-meta .meta {
    	font-size: 16px;
    }
}
@media(min-width: 1400px) {
 .post-meta .meta {
    	font-size: 24px;
    }
}
@media(min-width: 1024px) and (max-width: 1599px) {
	.et_pb_post img {
		height: 200px;
	}
	.et_pb_post .entry-title { font-size:16px; }
	.et_pb_post .post-content p {
		font-size: 14px !important;
	}
	.single-post .post-content .et_pb_column:first-child {		
	    padding-top: 24px;
	}
	.single-post .post-content .et_pb_image img {
	    height: 423px;
	}
}
@media(min-width: 1600px) {
	.single-post .post-content .et_pb_column:first-child {
		padding-left: 80px;
	    padding-top: 60px;
	}
	.single-post .post-content .et_pb_image img {
	    height: 723px;
	}
}
/*********************************************************
 !SINGLE BLOG PAGE
 *******************************************************/
/*********************************************************
 #CATEGORY BLOG PAGE
 ******************************************************
 */
.category-buttons .button-group {
	column-gap: 34px;
    display: flex;
    width: auto;
    justify-content: center;
}
.category-buttons .button-group .button,
.post-category-banner.full-height-split-banner .bottom-content .et_pb_button {	
    font-weight: 700 !important;
    border-radius: 29px !important;    
}

.single-post .full-height-split-banner .bottom-content.category-buttons .et_pb_column:first-child {
	max-width: 100%;
    border: none;
    min-width: 100%;
    width: 100%;
    margin: 0 auto !important;
    column-gap: 24px;
    justify-content: center;
    padding-bottom: 0;
}
.post-category-banner.full-height-split-banner .bottom-content .et_pb_column:first-child {
	border: none;
}
.post-category-banner.full-height-split-banner .bottom-content,
.single .full-height-split-banner .bottom-content,
.category .full-height-split-banner .bottom-content {
	min-height: auto;
    padding-top: 36px;
    align-items: center;
}
.category .full-height-split-banner .listing-filter {
	border-top: 1px solid;
    padding-top: 16px;
}
.category .listing-filter .filter-container {
	display: flex;
    justify-content: space-between;
}
.post-category-banner.full-height-split-banner .bottom-content {
	    justify-content: center;
    column-gap: 29px;
}
.post-category-banner.full-height-split-banner .bottom-content .et_pb_column {
	min-width: auto;
    max-width: 100%;
    flex: 0 0 auto;
    width: auto;
    margin: 0 !important;
    padding-bottom: 0;
}
.post-category-banner.full-height-split-banner {
	height: auto !important;
}

.full-height-split-banner .banner-image .et_pb_button_module_wrapper { margin-top:34px; }
	.post-category-banner.full-height-split-banner .bottom-content {
		padding-bottom: 36px !important;
	}
@media(min-width: 641px) {
	.section-post-filter .et_pb_row {
		border-top: 1px solid #FFF;
    	padding-top: 24px;
	}

}
@media(max-width: 640px) {
	.post-category-banner.full-height-split-banner .bottom-content .et_pb_button {
	    width: 100%;	    
	}
	.category-buttons .button-group {
		flex-flow: column;
    	row-gap: 16px;
	}
	.category-buttons .button-group .button,
	.post-category-banner.full-height-split-banner .bottom-content .et_pb_button {
		font-size: 16px !important;
	}
	.post-category-banner.full-height-split-banner .bottom-content {
		padding-bottom: 20px !important;
    	row-gap: 16px;
	}
	.section-post-filter.et_pb_section {
		padding-top: 20px !important;
    	padding-bottom: 8px !important;
	}
}
@media(min-width: 641px) and (max-width: 1023px) {
	.post-filters.listing-filters {
    	flex-flow: row;
	}
	.post-category-banner.full-height-split-banner .bottom-content {
		column-gap: 12px;
	}
	.post-category-banner.full-height-split-banner .bottom-content .et_pb_column {
		 padding-left: 0;
        padding-right: 0;
	}
	.section-post-filter.et_pb_section {
		padding-top: 24px !important;
	}
}
@media(min-width: 1024px) {
	
	.section-post-filter.et_pb_section {
		padding-top: 0 !important;
    	padding-bottom: 32px !important;
	}
	.section-post-filter.et_pb_section .et_pb_row {
		padding-bottom: 0;
	}
	.section-post-filter .et_pb_module { margin-bottom:0 !important; }
	.post-category-banner.full-height-split-banner .bottom-content:after { display:none; }
}
@media(min-width: 1024px) and (max-width: 1439px) {
	.post-category-banner .banner-image {
		height: 420px;
	}
	.post-category-banner.full-height-split-banner .bottom-content .et_pb_button {
		font-size: 16px !important;	 	    
	}
	.post-category-banner.full-height-split-banner .bottom-content {
		column-gap: 29px;
	}
	.post-category-banner.full-height-split-banner .bottom-content .et_pb_column:last-child {
		padding-left: 0;
		padding-right: 0;
	}
}
@media(min-width: 1440px) {
	.post-category-banner .banner-image {
		height: 480px;
	}
	.post-category-banner.full-height-split-banner .bottom-content .et_pb_button,
	.full-height-split-banner .category-buttons .button {
		font-size: 20px !important;	 
	    min-width: 288px;
	}

}
@media(min-width: 1600px) {
	.post-category-banner.full-height-split-banner .bottom-content,
	.category-buttons .button-group {
		    column-gap: 85px;
	}
}
/*********************************************************
 !CATEGORY BLOG PAGE 
 *******************************************************/

/*********************************************************
 #APPLICATION FORM 
 ******************************************************
 */
.standard-banner,
.standard-banner .et_pb_text {
	text-align: center;
}
.standard-banner h1 { color:#FFF; }
/*********************************************************
 !APPLICATION FORM 
 *******************************************************/
/*********************************************************
 #TWO COLUMN TEXT 
 *******************************************************/
.two-column-heading .et_pb_column:last-child .et_pb_text {
	font-weight: 600;
}

@media(max-width: 1023px) {
	.two-column-heading.et_pb_section { 
		padding-bottom:0 !important; 
		padding-left: 0 !important;
  		padding-right: 0 !important;
	}
	.two-column-heading .et_pb_column {
		margin-bottom: 0 !important;
	}
	.two-column-heading h2 {
		font-size: 34px;
	}
	.two-column-heading .et_pb_column:last-child .et_pb_text { font-size: 18px; line-height:1.5; }
}
@media(min-width: 641px) and (max-width: 1023px) {
	.two-column-heading .et-last-child .et_pb_text { margin-bottom:0 !important; }

}
@media(min-width: 1024px) {
	.two-column-heading .et_pb_row {
		display: flex;
    	align-items: center;
	}
	.two-column-heading .et_pb_column:first-child {
		width: 35%;
	}
	.two-column-heading .et_pb_column:last-child {
		width: 65%;
	}
	.two-column-heading .et_pb_column:last-child .et_pb_text {
		margin-bottom: 0 !important;
	}
	.two-column-heading h2 {
		font-size: 60px;
	}
	.two-column-heading .et_pb_module_heading {
		padding-bottom: 0;
	}
	.two-column-heading .et_pb_heading { margin-bottom:0 !important; }
}
@media(min-width: 1024px) and (max-width: 1399px) { 
	.two-column-heading .et_pb_module_heading {
		font-size: 38px !important;
	}
	.two-column-heading .et_pb_column:last-child .et_pb_text {
		font-size: 19px;	    
	    line-height: 38px;  
	}
}
@media(min-width: 1400px) {
	.two-column-heading .et_pb_column:last-child .et_pb_text {
		font-size: 28px;
	    padding-left: 44px;   
	}
}

/*********************************************************
!TWO COLUMN TEXT
 *******************************************************/
/*********************************************************
 #FULL HEIGHT CTA 
 ******************************************************
 */
.full-height-cta .row-buttons {
	padding-top: 0 !important;
	padding-bottom: 0 !important;
}
.full-height-cta .row-buttons .et_pb_button_module_wrapper {
	margin-bottom: 0 !important;
	margin-top: 0 !important;
}
.full-height-cta.has-black-linear {
	position: relative;
}
.full-height-cta.has-black-linear:before {
	content: '';
	position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
}
@media(max-width: 640px) {
	.full-height-cta {
		height: 680px !important;
	}
	.full-height-cta.has-black-linear:before {
		background: linear-gradient(270deg, rgba(255, 255, 255, 0) 0%, /* transparent white */ rgb(0 0 0 / 45%) 100% /* solid black */);
	}	
}

@media(min-width: 641px) and (max-width: 1023px) {
	.full-height-cta.has-black-linear:before {
		background: linear-gradient(270deg, rgba(255, 255, 255, 0) 0%, /* transparent white */ rgb(0 0 0 / 45%) 100% /* solid black */);
	}	
}
@media(min-width: 641px) {
	.full-height-cta .section-header {
		margin-bottom: 8px !important;
	}
}
@media(min-width: 1024px) {
	.full-height-cta.has-black-linear:before {
        background: linear-gradient(270deg, rgba(255, 255, 255, 0) 0%, /* transparent white */ rgb(0 0 0 / 55%) 100% /* solid black */);
        width: 761px;
	}	
}
    
/*********************************************************
 !FULL HEIGHT CTA 
 *******************************************************/

/*********************************************************
 #PROJECTS START
 *******************************************************/
.projects-listing--all-category .listing-item .item-actions {
	display: none !important;
}
.projects-listing--all-category .section-header h3 {
	padding-bottom: 0;
}
.projects-listing--all-category .section-header {
	margin-bottom: 20px !important;
}
.projects-listing--all-category .section-button {
	margin-top: 34px;
}

.listing-module.post-listing .swiper-button-next,
.listing-module.post-listing .swiper-button-prev,
.listing-module.projects .swiper-button-next,
.listing-module.projects .swiper-button-prev {
	background-color: transparent;
	transition: all .25s ease-in-out;
}
.projects-listing--all-category .listing-item .listing-content {
	justify-content: flex-start;
	margin-top: 12px;
}
.projects-listing--all-category .listing-module {
	border: none;
}
@media(max-width: 640px) {
	
	.projects-listing--all-category .listing-row {
		position: relative;
    	padding-bottom: 65px;
	}
	.projects-listing--all-category .listing-row .et_pb_column:first-child {
		position: initial;
    	margin-bottom: 0;
	}
	.projects-listing--all-category .listing-row .et_pb_button_module_wrapper {
		position: absolute;
	    bottom: 30px;
	    width: 100%;
	    text-align: center;
	    left: 0;
	}
	.projects-listing--all-category .listing-module {
    	padding-top: 0;
	}

}
@media(max-width: 1023px) {
	.listing-module.post-listing .swiper-button-next,
	.listing-module.post-listing .swiper-button-prev, 
	.listing-module.projects .swiper-button-next,
	.listing-module.projects .swiper-button-prev {
		bottom: 3px;
    	top: auto;
	}
	.listing-module.projects .swiper-button-prev   {
		bottom: 15px;
	    top: auto;
	    right: 52px;
	    left: auto;
	}
	.listing-module.post-listing .swiper-button-prev {
		right: 52px;
		left: auto;
	}
	body .projects-listing--all-category {
		padding-bottom: 0 !important;
	}
}
@media(min-width: 641px) and (max-width: 1023px) {
	.projects-listing--all-category .section-blurb { margin-bottom:0 !important; }
	.projects-listing--all-category .listing-module { padding-top:16px; padding-bottom: 80px; }
	.projects-listing--all-category .listing-item .listing-image:before { padding-top:60%; }
	.projects-listing--all-category .swiper-button-next,
	.projects-listing--all-category .swiper-button-prev {
		bottom: 23px;
	}
	.projects-listing--all-category .et_pb_divider { margin-bottom:20px !important; }	
	.projects-listing--all-category .et_pb_row:last-child { margin-top: 0 !important; }
	.projects-listing--all-category .et_pb_row:last-child .et_pb_divider { margin-bottom: 0 !important; }
}

@media(min-width: 1024px) {
	.projects-listing--all-category .listing-row {
		display: flex;
	}
	.projects-listing--all-category .section-header h3 {
		font-size: 30px;		
	}
}

.tax-projects .listing-module {
	    max-height: 965px;
    overflow: scroll;
    position: relative;
}
.tax-projects .listing-module:before {
	content: '';
	height: 25px;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	display: block;
	background-color: #FFF;
}
.what-we-did-content ul {
    padding-left: 32px;
    list-style: disc;
    margin-bottom: 24px;
}
.division-featured-projects .header-two-column {
	padding-bottom: 0;
} 
.division-featured-projects .listing-module { border-top:none; padding-top: 0; }



.listing-modal-project .right-content-wrap,
.listing-modal-project .listing-content-inner {	
	flex-flow: wrap;
}
.listing-modal-project .listing-content-inner > * {
	flex: 0 0 auto;
	width: 100%;
}
.listing-container.landy_project .listing-image,
.listing-container.landy_project .listing-title{
	cursor: pointer;
}
.listing-modal-project .outcome-wrap {
	margin-top: 16px;
}

.tax-projects.term-commercial .project-filters .search-box {
	display: none !important;
}
.tax-projects.term-commercial .listing-filters {
	justify-content: flex-start;
}
@media(max-width: 640px) {
	.tax-projects .project-section { padding-bottom:20px !important; }
}
@media(min-width: 1024px) {

	.division-featured-projects .listing-item:not(:first-child) .item-description { display:none; }

	.division-featured-projects .listing-item:not(:first-child) .listing-image {
		max-height: 290px;
	}

	.division-featured-projects .listing-item .item-actions {
		text-align: right;
		margin-top: 0;
	}

	.division-featured-projects .listing-module {
	    display: grid;
	    grid-template-columns: 1fr minmax(0, 662px);
	    grid-auto-rows: auto;
	    align-items: stretch;
	    column-gap: 85px;
        row-gap: 35px;
	}
	.division-featured-projects .listing-item:first-child {
		grid-row: span 2;
	}
	.division-featured-projects .listing-item:first-child .listing-image {
		height: 100%;
		max-height: 695px;
	}
	.division-featured-projects .listing-item .listing-title { font-size:25px; }
	.division-featured-projects .listing-item .listing-content {
		    display: flex;
	    flex-flow: row;
	    align-items: center;
	    justify-content: space-between;
	    margin-top: 24px;
	    align-items: start;
	}
	.division-featured-projects .listing-item .item-short-info {
		    max-width: 455px;
	}
	.division-featured-projects .listing-item .item-actions .listing-button{ font-size:14px;     padding-top: 15px; }

	.projects-listing--all-category .listing-module {
		padding-bottom: 60px !important;
		padding-top: 0;
		border: none;
	}
	.projects-listing--all-category .listing-module .swiper-button-prev,
	.projects-listing--all-category .listing-module .swiper-button-next {
		top: auto;
		bottom: 18px;
	}
	.projects-listing--all-category .listing-module .swiper-button-prev {
	    left: auto;
	    right: 64px;
	}
}
@media(min-width: 1024px) and (max-width: 1399px) {
	.division-featured-projects .listing-item .listing-title {
		font-size: 18px;
	}
	
}	
@media(min-width: 1024px) and (max-width: 1599px) {
	.listing-module {
	    --gap: 28px;
	}
	.division-featured-projects .listing-module {
		grid-template-columns: 534px minmax(auto, 2fr);
	}

}	
@media(min-width: 1440px) {
	.projects-listing--all-category .listing-row .et_pb_column:first-child {
		width: 40%;
	}
	.projects-listing--all-category .listing-row .et_pb_column:last-child {
		width: 60%;
	}	
	.projects-listing--all-category .listing-module .swiper-wrapper {
		height: auto !important;
	}
	.projects-listing--all-category .listing-item .listing-image:before {
		padding-top: 65%;
	}


    
}
@media(min-width: 1600px) {
	.listing-module {
	    --gap: 100px;
	}
	.division-featured-projects .listing-module {	    
	    grid-template-columns: 1fr minmax(0, 662px);
	}
}
/*********************************************************
 #PROJECTS END
 *******************************************************/
/*********************************************************
 #FEATURED PROJECTS TAB - START
 *******************************************************/

.latest-project-tab .listing-item:not(:first-child) .listing-button:after {	    
    font-family: ETmodules !important;
    font-weight: 400 !important;
    content: "\24" !important;
    font-size: 30px;
    line-height: 1;    
    display: inline-block;
    position: absolute;
    right: -38px;
    top: -8px;
} 
.latest-project-tab .listing-item:not(:first-child) .listing-image { height: 100%; transition: all .25s ease-in-out; }
.latest-project-tab .listing-item:not(:first-child):hover .listing-image {opacity: 1;}
.latest-project-tab .listing-item .listing-image { margin:0; }
.latest-project-tab .et_pb_tabs { border:none !important; }

.latest-project-tab .listing-item:first-child .listing-image { transition: all .2s ease-in-out; }
.latest-project-tab .listing-item:hover:first-child .listing-image {
	transform: scale(1.2);
}
.latest-project-tab .listing-item:hover:not(:first-child) .listing-image {
	transform: scale(1);
}

.latest-project-tab .listing-module { border:none; }
@media(min-width: 641px) and (max-width: 1023px) {
	.latest-project-tab .listing-module {
		padding-top: 16px;
	}
}
@media(min-width: 1024px) {
	.latest-project-tab .listing-item:not(:first-child) .listing-image { opacity: .6;}
	.latest-project-tab .listing-item:not(:first-child) .listing-button {
		background-color: transparent;
	    color: #122947;
	}
	.latest-project-tab .listing-item:not(:first-child) .listing-button {
		font-size: 14px;
		padding: 0 !important;
		line-height: 1;
		position: relative;
	}
	.latest-project-tab .listing-module {
		display: grid;
		grid-template-columns: 1fr minmax(0, 662px);
		grid-auto-rows: auto;
		align-items: stretch;
		column-gap: 84px;
		row-gap: 0;
	}
	.latest-project-tab .listing-item .listing-title {
		padding-bottom: 5px;
		font-size: 18px;
	}
	.listing-module.projects .listing-item:first-child .item-actions  .listing-button {
		justify-content: end;
	}
	
	.latest-project-tab .listing-item:first-child { grid-row: span 2; }
	.latest-project-tab .listing-item:first-child .listing-image {
	 	height: 100%; 
	    min-height: 493px;
        max-height: 493px;
	}
	.latest-project-tab .listing-item:not(:first-child) {
		gap: 24px;
    	display: grid;
    	grid-template-columns: 278px 1fr;
	}	
	
	.latest-project-tab .listing-item:first-child .listing-content {
	    grid-template-columns: 525px 1fr;
        display: grid;
	}

	.latest-project-tab .listing-item:not(:first-child) .listing-content {
	   	justify-content: center;
    	gap: 0;
    	margin-top: 0;
	}
	.latest-project-tab .listing-item .item-actions {
		margin: 0;
		justify-content: flex-end;
	}
 
	.latest-project-tab .listing-item:not(:first-child) .item-description {
		max-height: 0;
		overflow: hidden;
		transition: max-height 0.25s ease-in-out;
		line-height: 1.4;
	}
	.latest-project-tab .listing-item:not(:first-child):hover .item-description{
		max-height: 100px;	
		margin-bottom: 20px;
	}
	        
}
@media only screen and (max-width:1600px){ 
	  .latest-project-tab .listing-module {
        grid-template-columns: 1fr minmax(0, 500px);
        column-gap: 30px;

    }
}
@media(min-width: 1024px) and (max-width: 1599px) {
	.latest-project-tab .listing-item:not(:first-child) {
    	grid-template-columns: 220px 1fr;
	}
	.latest-project-tab .listing-item:not(:first-child) {		
		overflow: visible;
	}
	.latest-project-tab .listing-item:not(:first-child),
	.latest-project-tab .listing-item:not(:first-child) .listing-image-container {
		max-height: 170px;
	}
	.latest-project-tab .listing-item:not(:first-child) .listing-image-container { overflow:hidden; }
	.latest-project-tab .listing-item:first-child .listing-image {
		min-height: 420px;
        max-height: 420px;
	}
	.latest-project-tab .listing-module {
		grid-template-columns: 1fr minmax(0, 420px);   
		column-gap: 28px;     
	}
	.latest-project-sec.et_pb_section { padding-bottom:0 !important; }
}
@media(min-width: 1600px) {
	.latest-project-tab .listing-item:not(:first-child) {
    	grid-template-columns: 278px 1fr;
    	max-height: 194px; 
	}

}
/*********************************************************
 #FEATURED PROJECTS TAB - END
 *******************************************************/
/*********************************************************
 #PARTNERS 
 ******************************************************
 */

@media(min-width: 641px) and (max-width: 1023px) {
	.partners-element .et_pb_text { margin-bottom: 0 !important; }
	.partners-slider-wrapper { padding-top: 0 !important; }	
}
/*********************************************************
 #Division Simple Gallery 
 ******************************************************
 */
@media(max-width: 640px) {
	.simple-gallery-slider-developments {
		padding-top: 0 !important;
		padding-bottom: 0 !important;
	}
	.simple-gallery-slider-developments .et_pb_column:first-child {
		order: 2;
    	margin-top: 32px;
    	margin-bottom: 0;
	}
	.simple-gallery-slider-commercial {
		padding-bottom: 20px !important;		
	}
}
/*********************************************************
 #DivisionSimple Gallery 
 ******************************************************
 */
/*********************************************************
 #ABOUT PAGE CTA - START
 ******************************************************
 */
.about-page-cta.image-overlaps {
	padding-bottom: 10px !important;
}
@media(min-width: 1024px) and (max-width: 1440px) {
	.our-values-gallery .grid.grid-col-4 {
		grid-template-columns: repeat(3, 1fr);
	}	
	.our-values-gallery .image-overlay-content .et_pb_main_blurb_image img {
		height: 340px;
	}
}
@media(min-width: 1024px) and (max-width: 1599px) {
	.our-values-gallery .image-overlay-content .et_pb_module_header {
		font-size: 22px;
	}
	.our-values-gallery .image-overlay-content .et_pb_blurb_container {
		padding: 26px;
	}
}
/*********************************************************
#ABOUT PAGE CTA - END
 ******************************************************
 */
/*********************************************************
 #TEAM LISTING - START 
 *******************************************************/
.team-avatar-link { display:flex; }
.team-position { line-height:1.2 !important; }
.team-card .team-button {
	margin-top: 18px;
}
.career-count,.team-count { display:none; }
.team-error {
	text-align: center;
    font-weight: 500;
}
.team-category-option { cursor:pointer; }

.team-category-option:nth-child(2) { order:4; }


/* Category button radios */
.team-categories {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-flow: row wrap;
	flex-flow: row wrap;
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
	gap: 30px;
	margin-bottom: 50px;
}
.team-category-option {
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}
.team-category-option input[type="radio"] {
	display: none;
}
.team-category-option span {
	padding: 10px 30px;
	background: #EAF5FB;
	border-radius: 21px;
	font: normal normal normal 16px / 25px Open Sans;
	color: #122947;
	-webkit-transition: all .2s ease-in-out;
	-o-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
}
.team-category-option:hover span { background: #eee; }
.team-category-option input[type="radio"]:checked + span {
	background: #2C9AD8;
	color: #FFFFFF;
}

/* Grid / slider container */
.team-list {
	--gap: 35px;
	--columns: 5;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-flow: row wrap;
	flex-flow: row wrap;
	gap: var(--gap);	
}
/* Slick adjustments */
.slick-dots { margin-top: 10px; }

/* Card */

.column-3 #team-list-root .team-card .team-avatar {
	height: 331px;
}

.team-card.slick-slide {
	padding: 0;
}
@media(min-width: 1440px) {
	.column-3 #team-list-root .slick-slide {
		margin: 0 35px;
	}
	.column-3 .team-list:not(.slick-initialized) {
		display: flex;
	    flex-flow: row;
	    column-gap: 69px !important;
	    padding: 0 25px;
	}
	.column-3 .team-list .team-card {
		flex: 1;
	}
}
.team-card {
	border-radius: 15px;
	overflow: hidden;
	-webkit-box-flex: 0;
	-ms-flex: 0 0 calc((100% / var(--columns)) - var(--gap) + (var(--gap) / var(--columns)));
	flex: 0 0 calc((100% / var(--columns)) - var(--gap) + (var(--gap) / var(--columns)));
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-flow: column;
	flex-flow: column;
	text-align: center;
	background: transparent;
}
.team-card:hover .team-avatar {
	transform: scale(1.1);
}
.team-list .slick-track {
	display: flex;
	flex-flow: row;
	align-items: stretch;
}
.team-list .slick-track .team-card {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex: 0 0 auto;
	height: inherit;
}
.team-card .team-avatar {
	display: inline-block;
	height: 250px;
    object-fit: cover;
    width: 100%;
	transition: transform .25s ease-in-out;
	object-position: top center;
}
.team-card .skeleton:before {
	content: "";
	display: block;
}
.team-card .team-avatar.skeleton { 
	background: #eee;
	margin: 0;
}
.team-card .team-avatar.skeleton:before,
.team-card .team-avatar.skeleton:before {
	content: '';
	display: block;
	padding-top: 100%;
}
.team-card .team-body {
	background: #EAF5FB;
	padding: 26px 17px 84px 17px;
	text-align: center;
	-webkit-box-flex: 1;
	-ms-flex-positive: 1;
	flex-grow: 1;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-flow: column;
	flex-flow: column;
	width: 100%;
	gap: 2px;
	position:relative;
}
.team-card .team-name,
.team-card .team-position,
.team-modal .team-position {
	padding: 0;
}
.team-card .team-name { 
	font: normal normal bold 22px / 27px Josefin Sans;
	color: #122947;
	text-transform: uppercase;
	cursor: pointer;
}
.team-modal .team-position,
.team-card .team-position { 
	font: normal normal normal 16px / 30px Open Sans;
	color: #2C9AD8;
}
.team-modal .team-position{
	font: normal normal 600 16px/25px Open Sans;
}
.team-modal-contacts {    margin-left: 0 !important;}
.team-modal-contacts li:before { display:none !important; }
.team-modal ul.team-modal-contacts,
.team-modal ul.team-modal-contacts > li{
	list-style: none;
	padding: 0;
	text-align: left;
}
.team-modal ul.team-modal-contacts .team-modal-contact label{
	font: italic normal 600 16px/25px Open Sans;
	letter-spacing: 0px;
	color: #2C9AD8;
}
.team-modal ul.team-modal-contacts .team-modal-contact .contact{
	font: normal normal normal 16px/25px Open Sans;
	letter-spacing: 0px;
	color: #122947;
}
.team-modal .team-modal-details-wrap .team-about-title{
	font: italic normal 600 16px/25px Open Sans;
	letter-spacing: 0px;
	color: #2C9AD8;
}
.team-modal .team-modal-details-wrap .team-about-wrapper {
	margin-top: 38px;
}
.team-modal .team-modal-details-wrap .team-about-wrapper .team-content{
	max-height: 300px;
	overflow: auto;
	font: normal normal normal 16px/28px Open Sans;
	letter-spacing: 0px;
	color: #122947;
}
.team-card .team-button {
	width: 100%;
	background: #122947;
	border-radius: 10px;
	padding: 12px 24px;
	font: normal normal 600 10px / 13px Josefin Sans;
	letter-spacing: 1.3px;
	color: #FFFFFF;
	text-transform: uppercase;
	margin: auto 0 0;
	border: 0;
	cursor: pointer;
	position: absolute;
    bottom: 24px;
    max-width: 183px;
    left: 0;
    right: 0;
    margin-left: auto;
    margin-right: auto;
	min-height: 33px;
}

/* Pagination */
.team-pagination {
	margin-top: 18px; display: -webkit-box; display: -ms-flexbox; display: flex; gap: 6px; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center;
}
.team-pagination .team-page {
	padding: 0.5em;
	border: 1px solid #EAF5FB;
	background: #EAF5FB;
	border-radius: 6px;
	min-width: 2.5em;
	min-height: 2.5em;

}
.team-pagination .team-page.is-active {
	background: #122947; color: #fff; border-color: #122947;
}
.team-pagination .team-page,
.team-pagination .prev-button,
.team-pagination .next-button{
	line-height: 1em;
	font-size: 14px;	
}
.team-pagination .prev-button,
.team-pagination .next-button {
	border: none;
	background-color: transparent;
}
/* Skeleton loader */
.skeleton {
	background: -webkit-gradient(linear, left top, right top, color-stop(25%, #f0f0f0), color-stop(50%, #e6e6e6), color-stop(75%, #f0f0f0));
	background: -o-linear-gradient(left, #f0f0f0 25%, #e6e6e6 50%, #f0f0f0 75%);
	background: linear-gradient(90deg, #f0f0f0 25%, #e6e6e6 50%, #f0f0f0 75%);
	background-size: 200% 100%;
	-webkit-animation: shimmer 1.5s infinite;
	animation: shimmer 1.5s infinite;
	border-radius: 6px;
}
@-webkit-keyframes shimmer {
	0% { background-position: 200% 0; }
	100% { background-position: -200% 0; }
}
@keyframes shimmer {
	0% { background-position: 200% 0; }
	100% { background-position: -200% 0; }
}

/* Modal */
.team-modal-overlay {
	position: fixed;
	inset: 0;
	background: rgba(0,0,0,0.7);
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	z-index: 99999;
}
.team-modal .team-modal-inner {
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-flow: row;
	flex-flow: row;	
	max-height: 100%;
	overflow-x: auto;
}
.team-modal .team-modal-inner > .team-modal-details-wrap {
	-webkit-box-flex: 1;
	-ms-flex: 1 1 70%;
	flex: 1 1 70%;
}
.team-modal .team-modal-inner > .team-modal-data-wrap {
	-webkit-box-flex: 1;
	-ms-flex: 1 1 30%;
	flex: 1 1 30%;
}
.team-modal-data-wrap {
	text-align: center;
}
.team-modal {
	background: #fff;
	border-radius: 8px;
	max-width: 1172px;	
	width: 92%;
	max-height: 85vh;
	overflow-y: auto;
	position: relative;
	-webkit-box-shadow: 0 10px 30px rgba(0,0,0,.2);
	box-shadow: 0 10px 30px rgba(0,0,0,.2);
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-flow: row;
	flex-flow: row;
	gap: 30px;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}
@media(max-width: 640px) {
	.team-modal .left-content-wrap .team-modal-contacts { 
		display: none;
	}
	.team-modal .right-content-wrap .team-modal-contacts {
		margin-top: 16px;
	}
	.team-app .team-categories {
		display: grid;
  		grid-template-columns: 1fr 1fr;
  		gap: 12px;  		
	}
	.team-app .team-category-option span { 
	    font-size: 15px;
	    line-height: 1.4;
	    text-align: center;
		height: 100%;
        align-items: center;        
        display: flex;
	}
}
@media screen and ( max-width: 767px ) {
	.team-modal .team-modal-inner{
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-flow: row wrap;
		flex-flow: row wrap;
	}
	.team-modal .team-modal-details-wrap .team-about-wrapper .team-content {
		max-height: unset;
	}
}
.team-modal-avatar {
	width: 100%;
	height: auto;
	border-radius: 6px;
	margin-bottom: 15px;
	min-width: 200px;
}
.team-content {
	margin-top: 10px;
}
.team-close {
	position: absolute;
	top: 10px;
	right: 10px;
	border: none;
	background: transparent;
	color: #122947;
	width: 32px;
	height: 32px;
	line-height: 32px;
	border-radius: 16px;
	cursor: pointer;
	font-size: 32px;
}
.team-close:hover { color: #000; }

@media(min-width: 641px) {
	.team-category-option span { text-align:center; }
	.team-modal .right-content-wrap .team-modal-contacts { 
		display: none;
	}
	.team-modal .left-content-wrap .left-content-wrap { display:block; }
}
@media(max-width: 1023px) {
	.team-list .slick-dots {
		bottom: -50px;
    	padding: 0;
	}
	.team-list .slick-arrow { display:none !important; }
}
@media(min-width: 641px) and (max-width: 1023px) {
	.team-modal .team-modal-inner > .team-modal-data-wrap {
		flex: 1 1 38%;
	}
	.team-modal .team-modal-details-wrap .team-about-wrapper .team-content {
		font-size: 15px;
		padding-right: 8px;
		line-height: 1.6;
	}
	.team-category-option span { 
		font-size: 14px;
        padding: 8px 16px;
	} 
	.team-categories {
		    gap: 18px; 
		    justify-content: center;
	}
}

@media (max-width: 1023px) {
	.team-list { display: block; } /* slick handles layout */
}

@media (min-width: 1024px) {
	.team-category-option span { min-width: 191px; text-align:center; }
	.listing-modal .team-name { font-size: 30px; }
}




/*********************************************************
 #TEAM LISTING - END 
 *******************************************************/
/*********************************************************
 #PARTNERS AND TESTIMONIALS
 *******************************************************/
.partners-testimonials-section.et_pb_section {
	padding-bottom: 0 !important;
} 
.partners-testimonials-section .section-heading { text-align:center; }

@media(max-width: 1023px) {
	.partners-testimonials-section .section-heading { margin-bottom: 0; }
	.partners-testimonials-section .et_pb_module.et_pb_code { padding-top:0; }
}
/*********************************************************
 #COMMUNITY START  
 *******************************************************/
.landy-community-cta .et_pb_image_wrap,
.landy-community-cta .et_pb_image img {
	width: 100% !important;
}
.landy-community-cta .et_pb_image img {	
	object-fit: cover;
}
@media(min-width: 641px) and (max-width: 1023px) {
	.landy-community-cta.et_pb_section { padding-top:0 !important; }
	.landy-community-cta .et_pb_text {
		margin-bottom: 4px !important;
	}
	.landy-community-cta .section-heading br { display:none; }
}


/*********************************************************
 #COMMUNITY END 
 *******************************************************/
/*********************************************************
 #BLOG LISTING - START
 ******************************************************
 */
.blog-listing .et_pb_divider:before {
	border-top-color: #132947 !important;
}
.blog-layout-slider {
	position: relative;
    padding-bottom: 50px;
}
.blog-layout-slider .slick-arrow {
 	top: auto;
 	bottom: -45px;
}
.blog-layout-slider .slick-next {	
    right: 24px;
}
.blog-layout-slider .slick-prev {
	left: auto;
    right: 64px;
}


.post-listing.listing-module { border-top: none; padding-top: 0; }
@media(max-width: 640px) {
	.blog-listing.et_pb_section { padding-bottom:0 !important; }
	body .blog-listing .et_pb_row {
		padding-left: 24px !important;
		padding-right: 24px !important;
	}
	body .blog-listing .et_pb_row:not(:last-child) {
		margin-bottom: 16px;
	}
	.blog-listing .et_pb_row > .et_pb_column { 
		position: initial;
    	margin-bottom: 0;
	}
	.blog-listing .et_pb_button_module_wrapper {
		position: absolute;
	    bottom: 26px;
	    left: 0;
	    right: 0;
	    margin-left: auto;
	    margin-right: auto;
	    text-align: center;
	} 
	.blog-layout-slider {
		padding-bottom: 120px;
	}
	.blog-listing .et_pb_heading {
		margin-bottom: 12px;
	}
}
@media(max-width: 1023px) {
	.blog-listing article img {
		height: 220px;
	}
	.blog-listing .et_pb_heading h3 { font-size:26px; }

	body .blog-listing .et_pb_row:not(:last-child) {
		margin-bottom: 16px;
	}
}
@media(min-width: 641px) and (max-width: 1023px) {
	.blog-layout-slider {
		padding-bottom: 80px;
	}
}
@media(min-width: 1024px) {
	.blog-listing .et_pb_row {
		display: flex;
		align-items: center;
	}
	.blog-listing .et_pb_column:first-child  {
		padding-left: 50px;
	}
	.blog-listing .et_pb_column:first-child h3 { font-size:30px; }
}
/*********************************************************
 #BLOG LISTING - END
 ******************************************************
 */
/*********************************************************
 #CONTACT PAGE 
 ******************************************************
 */




@media(max-width: 640px) {
	.contact-map iframe {
		max-height: 350px;
	}
}
@media(min-width: 641px) and (max-width: 1399px) {
	.contact-map iframe {
		max-height: 450px;	
	}
}
@media(min-width: 1024px) and (max-width: 1399px) {
	.et_pb_section.contact-map { padding-top:0 !important; }	
}
/*********************************************************
 #CAREERS 
 ******************************************************
 */
.career-error .button { margin-top: 24px; }
/*********************************************************
 !CAREERS 
 *******************************************************/
/*********************************************************
 #404 Page - START
 ******************************************************
 */
.error404 .et_pb_section,
.error404 .et_pb_module_heading {
	color: #FFF;
}
.error404 .et_pb_row {	
    height: 100%;
    display: flex;
    align-items: center;        
}
body.error404 .main-section.et_pb_section .et_pb_row {
	max-width: 815px !important;
}
.error404 .main-section .et_pb_row,
.error404 .main-section .et_pb_text {
	text-align: center;
}
.error404 h1 { line-height:1; }
.error404 .bg-overlay:before {
	background: rgb(0 0 0 / 60%);
}
@media(max-width: 640px) {
	.error404 .main-section.et_pb_section { padding-top: 88px !important; }
}
@media(max-width: 1023px) {
	.error404 .main-section .et_pb_button_module_wrapper { margin-top:34px; }
	.error404 h1 { font-size: 120px !important; line-height: 80px; }
	.error404 .et_pb_text { font-size: 18px; line-height: 1.5; }	
}
@media(min-width: 641px) and (max-width: 1023px) {
	body.error404 .main-section.et_pb_section .et_pb_row { max-width: 550px !important; }	
	.error404 .main-section.et_pb_section { padding-top: 108px !important; }
}
@media(min-width: 1024px) {
	.error404 .main-section.et_pb_section { padding-top: 136px !important; }
}
@media(min-width: 1024px) and (max-width: 1279px) {
	.error404 h1 { font-size: 160px !important; line-height: 120px; }
	.error404 .et_pb_text { font-size: 20px;}
	.error404 .main-section .et_pb_button_module_wrapper { margin-top:34px; }
	body.error404 .main-section.et_pb_section .et_pb_row { max-width: 650px !important; }	
}
@media(min-width: 1280px) {
	.error404 h2 { font-size: 47px !important;}
	.error404 .et_pb_text { font-size: 25px;}
	.error404 h1 { font-size: 202px !important; line-height: 160px;}
	.error404 .main-section .et_pb_button_module_wrapper { margin-top:44px; }	
}
@media(min-width: 1600px) {
	.error404 h1 { font-size: 292px !important;}
	.error404 h1 { line-height: 216px; }    	
	.error404 .main-section .et_pb_button_module_wrapper { margin-top:54px; }
}
/*********************************************************
 #404 Page - END
 ******************************************************
 */
/*********************************************************
 #FOOTER 
 ******************************************************
 */
footer h4 {
	font-size: 16px !important;
	color: #2c9ad8 !important;
	line-height: 100%;
	border-bottom: 1px solid #2c9ad8;
    padding-bottom: 16px;
    margin-bottom: 28px;
}
footer .custom-menu {
	display: flex;
    flex-flow: column;
    font-size: 16px;
}
footer .et_pb_text {
	margin-bottom: 0 !important;
}
footer .location-blurb h4 {
	text-transform: none;
	border: none;
	margin-bottom: 0;
	font-weight: 400;
	font-family: Open Sans, Arial, sans-serif;
}
footer .logo-certifications h4 {
	color: #FFF !important;
	border: none;
	margin-bottom: 12px !important;
}
.logo-certificates {
	display: flex;
    column-gap: 12px;
}
 .et_pb_module.et_pb_text.et_pb_text_5_tb_footer.et_pb_text_align_left.et_pb_bg_layout_light {
	height: auto !important;
 }
.footer-menu .et_pb_menu__menu>nav>ul>li {
	flex-flow: row wrap;
	width: 100%;
}
.footer-menu.et_pb_menu .et_pb_menu__menu {
	display: block !important;
}

.footer-menu .et_mobile_nav_menu {
	display: none !important;
}
.footer-menu.et_pb_menu--style-left_aligned .et_pb_menu__wrap {
	justify-content: left !important;
}
.custom-footer .location-blurb .et_pb_blurb_description{
	position: relative;
}

.custom-footer .location-blurb .et_pb_blurb_description {
	padding-left: 20px;
}
.custom-footer .location-blurb .et_pb_blurb_description:before {
	content: "";
    display: block;
    left: 0;
    top: 4px;
    position: absolute;
    height: 15px;
    width: 11px;
	background: url('images/location-icon.svg') center no-repeat;
    background-size: contain;
}
.et_pb_column_6_tb_footer .et_pb_image { margin-right: 10px; }
.project-showcase .button,
.project-showcase .read-more { display:none; }
footer .custom-menu { padding-bottom: 0; }
 .footer-contacts .contact:not(:last-child) {
		margin-bottom: 16px;
	}
@media(max-width: 640px) {
	.et_pb_row_0_tb_footer {
		row-gap: 34px;
  		flex-flow: column;
	}
	.footer-logo { text-align:center !important; }
	.footer-logo img { width: 220px !important; }
	.et_pb_row_0_tb_footer:after { display:none !important }
	footer .logo-certifications h4 {
		line-height: 1.6;
	}
	footer .et_pb_row .et_pb_column, footer .quick-links { margin-bottom:0 !important; }
  
	
	footer .et_pb_column{
		width:100% !important
	}

}

@media (min-width: 768px) {


	.testimonial-category>span {	
		margin: 10px 12px 9px 0px;
		font-size: 15px;
		padding: 7px 10px 1px;	
	}

	.with-underline::after {	
		bottom: -65px;
		left: 29px;
	}

	.project-showcase .featured .featured-image {
		height: 425px;
	}

	.project-showcase.grid {
		gap: 90px;
		margin-top: 45px;
		grid-template-columns: repeat(2, 1fr);
	}
}
@media (min-width: 641px) and (max-width: 1023px) {
	body .testimonial-row.et_pb_row { padding-bottom: 40px !important; }

	body .et_pb_row_1_tb_footer.et_pb_row {
		flex-direction: column;
		row-gap: 44px;
		margin-bottom: -50px !important;
	}
	.footer-col-1.et_pb_column {
		margin-bottom: 44px !important;
	}
	.footer-col-2.et_pb_column,
	.footer-col-3.et_pb_column {
        display: grid !important;
        width: 100% !important;
        grid-template-columns: 1fr 1fr;
        column-gap: 54px;
        margin-right: 0 !important;
	}
	.footer-col-2 .et_pb_module,
	.footer-col-3 .et_pb_module {
		flex: 1;
	}
	.footer-col-4.et_pb_column { width:100% !important; }
	.footer-logo img {
    	width: 250px !important;
	}
	.et_pb_row_1_tb_footer .et_pb_code {
		margin-bottom: 0;
	}	
	footer .logo-certificates {
		column-gap: 24px;
	}
	footer .logo-certificates img {
		height: 72px;
	}
	.et_pb_module.colophon {
		margin-top: 34px;
	    font-size: 14px;
	    margin-bottom: 0 !important;
	}
	footer .contact-office {
		margin-bottom: 24px;
	}
}


/* Large */
@media (min-width: 1024px) {
	footer {
		font-size: 16px;
	}
	footer .et_pb_section {
		padding-top: 80px;
		padding-bottom: 80px;
	}

	footer .use-flex.et_pb_row { 
		column-gap: 50px;
        flex-wrap: nowrap;
	 }
	
	.et_pb_column_1_tb_footer {
		min-width: 568px;
    	max-width: 568px !important;
    	display: grid !important;
    	grid-template-columns: 1fr 1fr;
    	column-gap: 60px;
	}
	footer .logo-certifications {
		grid-column: 1 / -1;
	}
	.et_pb_column_2_tb_footer {
		max-width: 264px !important;
	}
	.custom-gallery .et_pb_gallery_items .et_pb_gallery_image img {
		height: 170px !important;
	}
	.custom-gallery.gallery-1-2 .et_pb_gallery_items .et_pb_gallery_item:first-child .et_pb_gallery_image img {
		height: 280px !important;
	}
	.logo-certificates img { width:208px; }
}
@media(min-width: 1280px) {
	footer .colophon { font-size:14px; }
}
@media(min-width: 1480px) {

	.custom-gallery .et_pb_gallery_items .et_pb_gallery_image img {
		height: 262px !important;
	}

	.custom-gallery.gallery-1-2 .et_pb_gallery_items .et_pb_gallery_item:first-child .et_pb_gallery_image img,
	.custom-gallery.gallery-2-1 .et_pb_gallery_items .et_pb_gallery_item:last-child .et_pb_gallery_image img {
		height: 355px !important;
	}
}
@media (min-width: 1024px) and (max-width: 1279px) {
	footer .colophon {
		font-size: 14px;
    	line-height: 1.5;
	}
	footer .logo-certifications h4 {
		margin-bottom: 0 !important;
	}
	.footer-contacts .contact {
		margin-bottom: 16px;
	}
	.footer-contacts .contact a:before {
		top: -2px;
	}
	.footer-contacts .social-media svg { width:36px; }
}
@media (min-width: 1024px) and (max-width: 1559px) {
	.et_pb_section_0_tb_footer { display:none !important; }
	body .footer-small-desktop .et_pb_row { padding:0 54px !important; }
	.footer-logo img {
		width: 260px !important;
	}
	.logo-certifications h4 { line-height:1.5; }

	.footer-small-desktop .et_pb_row,
	.footer-small-desktop .links-contacts .et_pb_code_inner,
	.footer-small-desktop .footer-menu,
	.footer-small-desktop .footer-contacts {
		display: grid;
	}
	.footer-small-desktop .et_pb_row {		
    	grid-template-columns: 260px auto;
    	align-items: start;
    	column-gap: 45px;
	}
	.footer-small-desktop .et_pb_row .et_pb_column {
		width: 100%;
    	float: none;
    	margin-right: 0;
	}
	.footer-small-desktop .links-contacts .et_pb_code_inner {		
    	row-gap: 40px;
	}
	.footer-small-desktop .footer-menu,
	.footer-small-desktop .footer-contacts {		
    	grid-template-columns: 1fr 1fr;
    	gap: 28px;
	}
	.footer-small-desktop .logo-certificates {
		flex-direction: row;
	}
	.footer-small-desktop { font-size: 16px; }  

	.footer-small-desktop .contact-office.brisbane { margin-bottom:22px; }
}
@media (min-width: 1400px) and (max-width: 1559px) {
	.footer-small-desktop .et_pb_row {		
            grid-template-columns: 320px auto;
	}
	footer .colophon { font-size:16px; }
}
@media (min-width: 1300px) and (max-width: 1679px) {
	.footer-small-desktop .footer-menu, .footer-small-desktop .footer-contacts {
		gap: 55px;
	}
}
@media (min-width: 1560px) and (max-width: 1659px) {
	footer { font-size:16px; }


}
@media (min-width: 1560px) {
	.footer-small-desktop { display:none; }
	footer .et_pb_row {
		display: grid;
        grid-template-columns: 255px repeat(3, 1fr);
        column-gap: 55px;
        padding: 0 !important;
	}
	footer .et_pb_row .et_pb_column {
		width: 100%;
    	float: none !important;
    	margin-right: 0;
	}
	footer .et_pb_row .et_pb_column:not(:first-child) {
		margin-top: 24px;
	}
	footer .colophon.et_pb_module.et_pb_text { margin-bottom:0 !important }
	footer .et_pb_section_0_tb_footer { padding-bottom:70px !important; }

	footer .social-media { margin-top:20px; }

	footer .contact-phone { margin-bottom: 12px; }
	footer .et_pb_row {
		grid-template-columns: 280px repeat(3, 1fr);
	}
}
@media (min-width: 1480px) and (max-width: 1719px){
	.footer-logo img {
		width: 300px !important;
	}
}	

/* Temporary */

@media(min-width: 1024px) {
	.hide-slick-dots .slick-dots { display:none !important; }
}
.et_pb_post:hover .entry-featured-image-url img {
	transform: scale(1.2);
}
.et_pb_post .entry-featured-image-url {
	 border-radius: 30px;
	 overflow: hidden;
}
.et_pb_post img {
	height: 300px;
	width: 100%;
    object-fit: cover;
    border-radius: 30px;
    transition: all .25s ease-in-out;
}
.et_pb_post .entry-title { font-size:20px; line-height: 1.4; }

.et_pb_post .post-content p {
	font-size: 16px !important;
	line-height: 1.6;
}

.et_pb_blog_grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
}
.et_pb_post .button {
	margin-top: 16px;
}




.row-header.center {
	text-align: center;
}

.landy-swiper-testimonials .swiper-button-prev,
.landy-swiper-testimonials .swiper-button-next {
  color: #000; /* arrow color */
  font-size: 24px;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  border-radius: 50%;
  box-shadow: 0 2px 6px rgba(0,0,0,0.15);
}

.landy-swiper-testimonials .swiper-button-prev i,
.landy-swiper-testimonials .swiper-button-next i {
  font-size: 18px;
}

.landy-swiper-testimonials .swiper-button-prev {
  left: -50px; /* adjust as needed */
}

.landy-swiper-testimonials .swiper-button-next {
  right: -50px; /* adjust as needed */
}

/* #MODAL */
/* 1) Theme variables you can tweak once */
:root {
  --sb-size: 3px;
  --sb-radius: 999px;

  --sb-thumb: #122947;   /* thumb color */
  --sb-thumb-hover: #8a93a1;
  --sb-track: rgba( 0, 0, 0, 0.03 );   /* track color */
  --sb-corner: transparent;
}

/* Optional dark mode */
/* @media (prefers-color-scheme: dark) {
  :root {
    --sb-thumb: #5b6370;
    --sb-thumb-hover: #6b7482;
    --sb-track: #1e2126;
  }
} */

/* 2) GLOBAL: style scrollbars on the whole page */
html {
  /* Firefox */
  scrollbar-width: thin;                           /* auto | thin | none */
  scrollbar-color: var(--sb-thumb) var(--sb-track);/* thumb track */
}

/* WebKit (Chrome, Edge, Safari, Opera) */
* {
  scrollbar-width: thin; /* Firefox also honors on elements */
}
*::-webkit-scrollbar {
  width: var(--sb-size);
  height: var(--sb-size);
}
*::-webkit-scrollbar-thumb {
  background: var(--sb-thumb);
  border-radius: var(--sb-radius);
  /* creates a gap between thumb & track edges (looks nicer) */
  border: 2px solid var(--sb-track);
}
*::-webkit-scrollbar-thumb:hover {
  background: var(--sb-thumb-hover);
}
*::-webkit-scrollbar-track {
  background: var(--sb-track);
  border-radius: var(--sb-radius);
}
*::-webkit-scrollbar-corner {
  background: var(--sb-corner);
}

/* 3) OPTIONAL: a utility class for scrollable containers */
.scrollable {
  overflow: auto;
  max-height: 320px;
}

/* Make a slightly thicker thumb on hover (WebKit only) */
.scrollable:hover::-webkit-scrollbar-thumb {
  border-width: 1px;
}

/* 4) OPTIONAL: hide scrollbars but keep scroll (e.g., carousels) */
.scroll-hidden {
  overflow: auto;
  scrollbar-width: none;            /* Firefox */
}
.scroll-hidden::-webkit-scrollbar { /* WebKit */
  display: none;
}
/* Skeleton loader */
.skeleton {
	background: -webkit-gradient(linear, left top, right top, color-stop(25%, #f0f0f0), color-stop(50%, #e6e6e6), color-stop(75%, #f0f0f0));
	background: -o-linear-gradient(left, #f0f0f0 25%, #e6e6e6 50%, #f0f0f0 75%);
	background: linear-gradient(90deg, #f0f0f0 25%, #e6e6e6 50%, #f0f0f0 75%);
	background-size: 200% 100%;
	-webkit-animation: shimmer 1.5s infinite;
	        animation: shimmer 1.5s infinite;
	border-radius: 6px;
}
@-webkit-keyframes shimmer {
	0% { background-position: 200% 0; }
	100% { background-position: -200% 0; }
}
@keyframes shimmer {
	0% { background-position: 200% 0; }
	100% { background-position: -200% 0; }
}
/**career filters**/
.post-filters-wrap .listing-filters {
	margin-bottom: 0;
}
.listing-filters {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	    -ms-flex-flow: row wrap;
	        flex-flow: row wrap;
	-webkit-box-align: stretch;
	    -ms-flex-align: stretch;
	        align-items: stretch;
	-webkit-box-pack: end;
	    -ms-flex-pack: end;
	        justify-content: flex-end;
	gap: 30px;
	margin-bottom: 50px;
}
.listing-filters .search-box {
	position: relative;
	width: 560px;
	max-width: 50%;
	justify-self: flex-start;
	margin: 0 auto 0 0;
}
@media all and ( max-width: 1023px ) {
	.listing-filters .search-box {
		max-width: 100%;
	}
	.listing-filters .stylish-dopdown-wrap {
		width: 100%
	}
}
.listing-filters .search-box,
.listing-filters button{
	border: none !important;
}
.listing-filters .search-box,
.listing-filters button{
	background: #EAF5FB 0% 0% no-repeat padding-box;
	border-radius: 21px; 
	outline: none;
}
.listing-filters .search-box input {
	width: 100%;
	padding: 10px 35px 10px 25px;
	border: none;
	border-radius: 20px;
	font-size: 14px;
	height: 100%;
	min-height: 1.2em;
	background-color: transparent;
}

.search-box .icon {
	position: absolute;
	right: 10px;
	top: 50%;
	-webkit-transform: translateY(-50%);
	    -ms-transform: translateY(-50%);
	        transform: translateY(-50%);
	font-size: 16px;
	color: #666;
	pointer-events: none;
}
.listing-filters .search-box input::-webkit-input-placeholder {
	font: normal normal normal 16px/25px Open Sans;
	letter-spacing: 0px;
	color: #122947;
}
.listing-filters .search-box input::-moz-placeholder {
	font: normal normal normal 16px/25px Open Sans;
	letter-spacing: 0px;
	color: #122947;
}
.listing-filters .search-box input:-ms-input-placeholder {
	font: normal normal normal 16px/25px Open Sans;
	letter-spacing: 0px;
	color: #122947;
}
.listing-filters .search-box input::-ms-input-placeholder {
	font: normal normal normal 16px/25px Open Sans;
	letter-spacing: 0px;
	color: #122947;
}
.listing-filters .search-box input::placeholder,
.listing-filter .stylish-dopdown {
	font: normal normal normal 16px/25px Open Sans;
	letter-spacing: 0px;
	color: #122947;
}
.stylish-dopdown .selected-text {
	font-size: 0.8em;
    padding: 0.4em 1em;
    line-height: 1;
    border-radius: 1em;
    background: rgba(0, 0, 0, 0.2);
    color: #fff;
}
.stylish-dopdown {
	width: 100%;
	padding: 10px 25px;
}
.stylish-dopdown + .stylish-dopdown-box {
	min-width: 250px;
	z-index: 99;
}
.stylish-dopdown input.radio-as-checkbox[type="radio"] {
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	width: 1em;
	height: 1em;
	border: 1px solid #ccc;
	border-radius: 4px; /* square like checkbox */
	display: inline-block;
	position: relative;
	cursor: pointer;
	line-height: 1em;
}

.stylish-dopdown input.radio-as-checkbox[type="radio"]:checked {
	background-color: #2563eb; /* blue like Tailwind's primary */
	border-color: #2563eb;
}

.stylish-dopdown input.radio-as-checkbox[type="radio"]:checked::after {
	content: "✓";
	color: white;
	font-size: 12px;
	position: absolute;
	top: 0;
	left: 3px;
}
.listing-filters button.stylish-dopdown > div:first-child:before {
	content: "Filter: ";
	display: inline;
}
/* multi select */

.flex {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}
.justify-between {
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}
.relative {
	position: relative;	
} 
.absolute {
	position: absolute;
}
.inline-block {
	display: inline-block
}
.multiselect {
	display:inline-block;
	position:relative;
	min-width:220px;
}

.multiselect__button{
	width:100%;
	text-align:left;
	padding:8px 12px;
	border:1px solid var(--border);
	border-radius:var(--radius);
	background:var(--bg);
	cursor:pointer;
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-align:center;
	    -ms-flex-align:center;
	        align-items:center;
	-webkit-box-pack:justify;
	    -ms-flex-pack:justify;
	        justify-content:space-between;
	-webkit-box-shadow: none;
	        box-shadow: none;
}

.multiselect__summary{
	display:-webkit-inline-box;
	display:-ms-inline-flexbox;
	display:inline-flex;
	gap:6px;
	-ms-flex-wrap:wrap;
	    flex-wrap:wrap;
	-webkit-box-align:center;
	    -ms-flex-align:center;
	        align-items:center;
	max-width: 70%;
	font-size:14px;
	color:var(--muted);
}

.tag {
	background:#f1f5f9;
	padding:3px 8px;
	border-radius:999px;
	font-size:12px;
	color:#111827;
}

.caret{ margin-left:12px; opacity:.7; }

.multiselect__panel{
	position:absolute;
	left:0;
	right:0;
	margin-top:8px;
	padding:8px;
	border-radius:8px;
	background:var(--bg);
	border:1px solid var(--border);
	-webkit-box-shadow:var(--shadow);
	        box-shadow:var(--shadow);
	z-index:100;
	max-height:220px;
	overflow:auto;
	display:none;
}

.multiselect__panel[aria-hidden="false"]{ display:block; }

.option{
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-align:center;
	    -ms-flex-align:center;
	        align-items:center;
	gap:8px;
	padding:6px 8px;
	border-radius:6px;
	cursor:pointer;
}
.option:focus{ outline:2px solid rgba(37,99,235,0.12); }
.option:hover{ background:#fbfdff; }

.controls{
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	gap:8px;
	padding:6px 8px;
	border-bottom:1px dashed var(--border);
	margin-bottom:6px;
}
.btn{
	padding:6px 8px;
	font-size:13px;
	border-radius:6px;
	border:1px solid var(--border);
	background:#fff;
	cursor:pointer;
}
.btn--primary{
	border-color:var(--accent);
	color:var(--accent);
	font-weight:600;
}

/* tiny accessibility helpers */
.sr-only{ position:absolute; width:1px; height:1px; padding:0; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }


/*** css by sri**/
.medium-heading h2{
    font-size: 45px !important;  
}
.images-overlap-custom .et_pb_module{
    height:auto !important;
}
.image-overlaps-custom .et_pb_column:last-child{
    justify-content:center !important;
}
.flex-verticle-center-row{
    display: flex;
    align-items: center;
}
.bg-img-top{
    background-position: 0 30% !important;
}
.custom-gallery .et_pb_gallery_items .et_pb_gallery_image img{
    object-position: 0 30% !important;
}
.image-overlay-content .et_pb_main_blurb_image img {
    object-position: center 10% !important;
}
.full-height-split-banner .et_pb_image img {
    object-position: 0 25%;
}

.full-height-split-banner{
    height: auto !important;
}

.full-height-split-banner .banner-image{
    height: 650px;
}

.full-height-split-banner .et_pb_image .et_pb_image_wrap{
	position:unset;
	    height: 300px;
	margin-left:4%;
}
.images-overlap-custom .et_pb_row{
    width:80%;
    max-width:100% !important;
    margin: 0 auto !important;
}

/*** page banner **/
.custom-banner-bottom .et_pb_row{
    width:70% !important;
    margin: 0 auto !important;
    padding:30px 0 !important;
}
.custom-banner-bottom {
    background: #122a47;
}

.custom-banner-bottom .et_pb_column{
    margin: 0 !important;
    width: 50% !important;
}
.full-height-split-banner.custom-banner-bottom .et_pb_column:first-child{
	width:45% !important;
	max-width:100% !important;
	min-width:45% !important;
	margin-right:5% !important;
}
.full-height-split-banner.custom-banner-bottom  .et_pb_column:last-child .et_pb_image .et_pb_image_wrap{
	width:500px !important;
}
.division-highlights .et_pb_row{
    width:80% !important;
    max-width:100% !important;
}
.simple-gallery-slider .slide.slick-slide img {
    object-position: 0 20%;
}
.copyright-sec p {
    font-size: 12px;
    line-height: 19px;
}


.division-cards {
  position: relative;
  overflow: visible;
}

/* each "card" row */
.stacking-cards__item {
  position: sticky;
  top: 100px; /* point where cards start stacking */
  margin-bottom: 120px;
  transition: transform 0.8s cubic-bezier(0.25, 0.1, 0.25, 1),
              box-shadow 0.6s ease,
              filter 0.6s ease;
  box-shadow: 0 10px 25px rgba(0, 0, 0, 0.25);
  border-top-left-radius: 50px;
  border-top-right-radius: 50px;
  background: #fff;
  z-index: 3;
  will-change: transform, box-shadow, filter;
}

/* Z-index layering for visual stacking */
.stacking-cards__item:nth-child(1) {
  z-index: 3;
}
.stacking-cards__item:nth-child(2) {
  z-index: 2;
}
.stacking-cards__item:nth-child(3) {
  z-index: 1;
}

/* stacked position spacing */
.stacking-cards .stacking-cards__item.stacked-1 {
  transform: translateY(100px);
	padding-bottom:60px !important;
}
.stacking-cards .stacking-cards__item.stacked-2 {
  transform: translateY(95px);
		padding-bottom:45px !important;
}
.stacking-cards .stacking-cards__item.stacked-3 {
  transform: translateY(93px);
		padding-bottom:50px !important;
}

/* shadow overlay when stacked (gives the 'cover below' effect) */
.stacking-cards__item::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  border-top-left-radius: 40px;
  border-top-right-radius: 40px;
  background: rgba(0, 0, 0, 0); /* start transparent */
  transition: background 0.6s ease;
  pointer-events: none;
  z-index: 5;
}

/* when card is stacked, make overlay darker */
.stacking-cards__item.stacked-1::after,
.stacking-cards__item.stacked-2::after,
.stacking-cards__item.stacked-3::after {
  background: rgba(0, 0, 0, 0.30); /* subtle shadow overlay */
  backdrop-filter: blur(1px); /* smooth blend effect */
}


.gform_confirmation_message {
    text-align: center;
    font-weight: bolder;
}



/* .listing-modal-project .listing-content-inner{
	max-height:100% !important;
}
 */
/* Optional: for a nicer scroll experience */
/**** responisve by sri ***/

.swiper-commercial .swiper-wrapper {
	justify-content:center;
}
.et_pb_tabs {
   border:0
}
.header-two-column .et_pb_module {
	margin-bottom:0 !important;
}

.listing-module.projects .listing-item:first-child .item-actions {    
    display: flex;
    align-items: flex-start;
}
	
.latest-project-tab.et_pb_tabs_0.et_pb_tabs .et_pb_tabs_controls li a {
    padding: 18px 10px 10px;
    text-align: center;
    text-align: center;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
}
.listing-module.projects .listing-item:first-child .item-actions  .listing-button{
	margin-top:0 !important;
}
.latest-project-tab {
    padding-bottom: 0px;
}
.impact-numbers-row div {
   font-size: 21px;
    line-height: 29px;

}
.impact-numbers-row .impact-numbers {
        font-size: 70px;
	line-height:80px;
    }

.main-menu li>a:hover,
.dropdown-toggle:hover,
.main-menu .primary-menu>li.current-menu-item>a,
.main-menu .sub-menu li.current-menu-item>a {
	color: var(--primary-colour);
}
.main-menu .primary-menu>li.open .dropdown-toggle:after {
	transform: rotate(-180deg);
	color: var(--primary-colour);
}
.main-menu>ul>li>a {
        font-size: 24px;
 }
.primary-menu .menu-item-has-children > .dropdown-toggle:after {
    font-size: 22px;
}
.main-menu a {
    font-size: 19px;
    line-height: 133%;
}
.burger {
    width: 42px;
    height: 30px;
	
}

/** about us **/
    .full-height-split-banner .banner-image h1 {
        font-size: 70px;
    }
 .bottom-content .et_pb_column:first-child {     
        padding-bottom: 28px;
        justify-content: end;
        margin-bottom: 0;
	    display: flex;
	    flex-flow: column;
	    margin-right: 0 !important;
	    margin-left: auto !important;
    }
@media(max-width: 640px) {
	.latest-project-sec {

	}
}

@media(min-width: 1024px) {
	.bottom-content .et_pb_column:first-child {
		border-bottom: 8px solid #009AD8;
	}
	.main-menu {
		width:600px;
		align-items: flex-start;
		padding-top: 7%;
		padding-left:2%;	
	}  
	.stacking-cards.et_pb_section .et_pb_row{
        width: 100% !important;  
    }
	
	/** popup sri **/
	.listing-modal.listing-modal-project{
	    height: 700px;
    min-height: 700px;
    max-height: 700px;
}


.listing-modal {
  display: flex;
  flex-wrap: wrap;
  max-height: 100vh; 
  overflow: hidden;
}

.right-content-wrap {
  flex: 1;
  min-width: 300px;
  max-height: 100vh;
  overflow-y: auto;  
  padding: 20px;
  box-sizing: border-box;
}

.right-content-wrap::-webkit-scrollbar {
  width: 8px;
}

.right-content-wrap::-webkit-scrollbar-thumb {
  background-color: #ccc;
  border-radius: 4px;
}

.left-content-wrap {
  flex: 1;
  min-width: 300px;
  overflow: hidden;
}

}
@media only screen and (max-width:2400px){
	h2{
		font-size: 55px !important;
	}
	
	}
@media only screen and (max-width:2000px){
	h1{
		    font-size: 70px !important;
	}
	    .home-banner .info-widget .et_pb_module_header {
        
        font-size: 23px !important;
    }
	  .two-column-heading h2 {
        font-size: 44px;
    }
	h2,
	   .latest-project-sec h2 {
        font-size: 45px !important;
    }
	
	}
@media only screen and (max-width:1800px){
	body .et_pb_section .et_pb_row {
	width: 90% !important;
	padding-left: 0 !important;
	padding-right:0 !important;
	margin: 0 auto !important;
}
	.et_pb_section{
		padding-left:0 !important;
		padding-right:0 !important;
	}
	.et_pb_section .et_pb_row.section-no-padding-1400 {
		padding-left:0 !important;
		padding-right:0 !important;
	}
	.latest-project-tab.et_pb_tabs .et_pb_tabs_controls li a {
       font-size: 19px !important;
 
}
	.et_pb_tab {
     padding-left:0;
	padding-right:0;
}
	    .impact-numbers {
        font-size: 50px;
    }
	   /* .section-community.simple-gallery-slider.slider-right .et_pb_column:first-child {
        padding-left: 0px;
    }*/
	    .landy-community-gallery .slider .inner {
        height: 550px;
    }
	/** about **/
	    body .et_pb_section .et_pb_row.nowidth-row,
	    .full-height-split-banner.et_pb_section .et_pb_row,	   
	    body .standard-banner .et_pb_row {
        width: 100% !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        margin: 0 auto !important;
    }
	.full-height-split-banner .banner-image{
    height: 600px;
}
	 .custom-banner-bottom .et_pb_row{
    width:80% !important;
    margin: 0 auto !important;
}
	.full-height-split-banner.et_pb_section.custom-banner-bottom .et_pb_row{
		width:80% !important;
		margin:0 auto !important;
	}
	
}
@media only screen and (max-width:1600px){
		h1{
		    font-size: 60px !important;
	}
	   .latest-project-sec h2 {
        font-size: 40px !important;
    }
	    .latest-project-tab .listing-item:first-child .listing-content {
        grid-template-columns: repeat(1, 2fr 1fr);
    }
	.impact-numbers-row .impact-numbers {
    font-size: 51px;
    line-height: 80px;
}
	.full-height-split-banner .banner-image{
    height: 550px;
}
	   .full-height-split-banner .et_pb_image .et_pb_image_wrap {
        width: 70%;
    }
	
	    .full-height-split-banner.et_pb_section.custom-banner-bottom .et_pb_row {
        width: 90% !important;
        margin: 0 auto !important;
    }
/* 		.listing-modal.listing-modal-project {
    height: 650px;
    min-height: 650px;
    max-height: 650px;
}
	.listing-modal .listing-meta-value{
		font-size:16px !important;
	}
	 */
	
	}
@media only screen and (max-width:1400px){
	    .latest-project-tab .listing-item .listing-title {
   
        font-size: 16px;
        line-height: 22px !important;
    }
	.testimonial-position {
    font-size: 19px;
		line-height:24px;
	}
	    .landy-community-gallery .slider .inner {

        height: 450px;
    }
	.full-height-split-banner .banner-image{
    height: 500px;
}
	.full-height-split-banner .et_pb_image .et_pb_image_wrap {
    position: unset;
    height: 260px;
}
	.full-height-split-banner.et_pb_section.custom-banner-bottom .et_pb_row{
		width:90% !important;
	}
	.full-height-split-banner.custom-banner-bottom .et_pb_column:last-child .et_pb_image .et_pb_image_wrap {
    width: 400px !important;
}

	}
@media only screen and (max-width:1200px){
	    h2 {
        font-size: 42px !important;
    }
	.image-overlaps .et_pb_column:last-child {
        padding: 3%;
	}
	    .full-height-split-banner .banner-image {
        height: 450px;
    }
    
	}
@media only screen and (max-width:1024px){
.et_pb_column.btn-stack {
    margin-top: 20px;
}
	    body .testimonial-row.et_pb_row {
        padding-bottom: 0px !important;
    }
	.image-overlaps .et_pb_row .et_pb_column{
		width:100% !important;
	}
	.medium-heading h2 {
    font-size: 39px !important;
    line-height: 45px !important;
}
	.et_pb_row.bottom-content.primary-bg {
    padding: 24px !important;
}
	.full-height-split-banner .et_pb_column{
		padding-left:0;
	}
	    .full-height-split-banner .et_pb_image .et_pb_image_wrap {
        height: auto;
        width: 100%;
    }
}

@media only screen and (max-width:980px){
		h1{
		    font-size: 40px !important;
	}
	.latest-project-sec .et_pb_column{
		margin-bottom:0 !important;
	}
	    .latest-project-sec h2 {
        font-size: 29px !important;
    }
	.et_pb_module.latest-project-tab {
    margin-top: 20px;
}
	.listing-module.projects .listing-item:first-child .item-actions {
    justify-content: flex-start;
	}
	.listing-module.swiper-initialized .swiper-wrapper {
    height: auto !important;
}
	.et_pb_row.impact-numbers-row{
    margin-top: 20px !important;
}
	 body .et_pb_section {
        padding-top: 50px !important;
        padding-bottom: 50px !important;
    }
	.et_pb_section.latest-project-sec{
		padding-bottom:0 !important;
	}
	.testimonial-position {
    font-size: 14px;
		line-height:20px;
	}
	    .testimonial-category>span {
        margin: 10px 12px 9px 0px;
        font-size: 11px;
        padding: 7px 10px 4px;
    }
	.flex-verticle-center-row {
    display: block;
}
	}
@media (min-width: 641px) and (max-width: 1023px) {
    body .et_pb_section {
        padding-top: 50px !important;
        padding-bottom: 50px !important;
    }
	.et_pb_section.latest-project-sec{
		padding-bottom:0 !important;
	}
	.full-height-cta .row-buttons{
		padding-top:30px !important;
	}
}

@media only screen and (max-width:768px){
	    h2 {
        font-size: 32px !important;
        line-height: 40px !important;
    }
	    .latest-project-sec .header-two-column .et_pb_column:first-child {
   
        width: 70% !important;
    }
	   .latest-project-sec .header-two-column .et_pb_column:last-child {
   
        width: 30% !important;
    }
	    .latest-project-sec h2 {
                font-size: 21px !important;
        line-height: 30px !important;
    }
	    .latest-project-tab.et_pb_tabs .et_pb_tabs_controls li a {
        font-size: 14px !important;
        padding-left: 5px !important;
        padding-right: 5px !important;
    }
	.impact-numbers-row div {
    font-size: 17px;
    line-height: 23px;
}
	    .impact-numbers-row .impact-numbers {
        font-size: 45px;
        line-height: 57px;
    }
	    body .et_pb_section {
        padding-top: 40px !important;
        padding-bottom: 40px !important;
    }
	.partners-slider-wrapper{
		padding-top:0 !important;
	}
	.simple-gallery-slider.slider-right .et_pb_column:last-child, .simple-gallery-slider.slider-left .et_pb_column:first-child {
    width: 100%;
}
	 .landy-community-gallery .slider .inner {

        height: 360px;
    }
	.et_pb_section.simple-gallery-slide.slider-right{
		padding-top:0 !important;
	}
	    .medium-heading h2 {
        font-size: 30px !important;
        line-height: 39px !important;
    }
	    .full-height-split-banner.et_pb_section.custom-banner-bottom .et_pb_row {
        display: block !important;
    }
	.custom-banner-bottom .et_pb_column{
		width:100% !important;
	}
	.full-height-split-banner.custom-banner-bottom .et_pb_column:first-child{
		border-bottom:0 !important;
	}
	.full-height-split-banner.custom-banner-bottom .et_pb_column:first-child{
		width:100% !important;
		        padding-right: 0;
	}
	    .full-height-split-banner.custom-banner-bottom .et_pb_column:last-child .et_pb_image .et_pb_image_wrap {
        width: 80% !important;
        margin-left: 0 !important;
    }
	.full-height-split-banner .et_pb_column{
		padding-right:0 !important;
	}
	.group-button {
    width: 95%;
    margin: 0 auto;
}
	.bg-img-top {
    background-position: center;
}

	
	/*** popup css **/
	    .listing-modal .modal-inner {
        display: block !important;
        overflow: scroll;
    }
	
	
	}
@media only screen and (max-width:480px){
	    .latest-project-tab.et_pb_tabs .et_pb_tabs_controls li a {
        font-size: 11px !important;
        padding-left: 5px !important;
        padding-right: 5px !important;
        padding: 10px 5px !important;
    }
	   .full-height-split-banner.custom-banner-bottom .et_pb_column:last-child .et_pb_image .et_pb_image_wrap {
        width: 100% !important;
        
	}
	    h1 {
        font-size: 34px !important;
    }
}


.division {
  position: relative;
}



.two-column-heading.unstick {
  position: relative !important;
  top: auto !important;
  z-index: auto !important;
}
.division-cards {
  position: relative;
  z-index: 2;
}

.division-cards .stacking-cards__item {
  position: sticky;
  top: 368px;
  margin-bottom: 100vh;
}
.division-cards .stacking-cards__item:nth-child(2) {
  top: 388px; /* 368 + 20 */
}

.division-cards .stacking-cards__item:nth-child(3) {
  top: 408px; /* 368 + 40 */
}

@media(max-width: 1023px) {
	/*.division-cards .stacking-cards__item {	  
	  top: 308px;	  
	}
	.division-cards .stacking-cards__item:nth-child(2) {
	  top: 328px; /* 368 + 20 
	}*/

	.division-cards .stacking-cards__item:nth-child(3) {
	  top: 438px; /* 368 + 40 */
	}
	.division-cards h4.et_pb_module_header { font-size:23px !important;  }

	.division-cards .division-card-item {
		background-color: #FFF;
    	padding-top: 24px;
    	border-radius: 30px;
    	overflow: hidden;
    	position: relative;
	}
	.division-cards.et_pb_section { padding-top:0 !important; }
	.division-cards .et_pb_blurb_description { font-size:15px; line-height:1.4; }

	.division-cards img {
    height: 240px;
    object-fit: cover;
    width: 100%;
	    border-top-left-radius: 20px;
	    border-top-right-radius: 20px;
	}
	.division-cards .et_pb_blurb,
	.division-cards .et_pb_button_module_wrapper {
		padding-left: 24px;
		padding-right: 24px;
	}
	.division-cards .et_pb_blurb {
		padding-bottom: 24px;	
	    padding-top: 24px;
	    min-height: 274px;
	}
    

	.division-cards .et_pb_button_module_wrapper{
	    position: absolute;
	    bottom: 24px;
	    z-index: 1;
	    left: 0;
	    right: 0;
	    margin: auto;
	    text-align: center;
	}	
	/* Reset slick's inline height and make slides flexible */
.division-card-slider .slick-slide {
  display: flex !important;
  height: auto !important;
          flex-flow: column;
}

/* Make your custom item fill the height */
.division-card-slider .slider-item {
  flex: 1 1 auto;
  height: 100%;
  box-sizing: border-box;
}
    .division-cards.et_pb_section {
    	padding-bottom: 86px !important;
    }

    .division-card-slider .slick-dots {
    	    bottom: -40px;
    }
/* 	.contact.social-media svg {
    width: 23px;

} */
	
	    .full-height-split-banner .contact.social-media svg {
        width: 27px;
        margin-right: 7px;
	}
}


@media(min-width: 641px) and (max-width: 1023px) {
.division-cards .stacking-cards__item {
	  top: 260px;	  
	}
	.division-cards .stacking-cards__item:nth-child(2) {
	  top: 270px; /* 368 + 20 */
	}

	.division-cards .stacking-cards__item:nth-child(3) {
	  top: 280px; /* 368 + 40 */
	}
	body .et_pb_section .et_pb_row.division-card-slider { padding-top:44px; }
	.division-cards h4.et_pb_module_header {
		font-size: 22px !important;
        margin-bottom: 8px;
	}
	.division-cards .et_pb_blurb_description { font-size:14px; }
}
@media(min-width: 1024px) {
	.two-column-heading.sticky {
	  position: sticky;
	  top: 0;
	  z-index: 3;
	  transition: all .18s ease-in-out;
	}
	.division-cards {
	  margin-bottom: 70px;
	}
	.et_pb_section.division-cards {
	padding-bottom: 0 !important;
}
}
@media(min-width: 1024px) and (max-width: 1599px) {
	.two-column-heading.sticky {
		padding-bottom: 30px !important;
	}
	.division-cards .stacking-cards__item {
	  position: sticky;
	  top: 250px;
	  margin-bottom: 100vh;
	}
	.division-cards .stacking-cards__item:nth-child(2) {
	  top: 280px; /* 368 + 20 */
	}

	.division-cards .stacking-cards__item:nth-child(3) {
	  top: 300px; /* 368 + 40 */
	}
}
@media(min-width: 1600px) {
	.division-cards .stacking-cards__item {
	  top: 368px;	  
	}
	.division-cards .stacking-cards__item:nth-child(2) {
	  top: 388px; /* 368 + 20 */
	}

	.division-cards .stacking-cards__item:nth-child(3) {
	  top: 408px; /* 368 + 40 */
	}
}

@media(max-width: 1023px) {
	.community-gallery.et_pb_section {
	padding-bottom: 50px !important;
}

}


@media(min-width: 641px) and (max-width: 1023px) {
	.our-values-gallery .layout-slider h3 {
		font-size: 26px
	}	
}