:root
{
	--default_red: #C71200;
	--default_dark: #2B2E34;
	--default_grey: #F4F4F4;
	--default_grey_med: #B1B1B1;
	--default_grey_dark: #37393F;
	--default_grey_darker: #2B2E34;
}

h1
{
	font-size: 2.0rem;
}

h3
{
	font-size: 1.5rem;
}

	body
	{
		overflow-x: hidden;
		font-family: Roboto-Light;
		color: #2B2E34;
		font-size: 16px;
		line-height: 1.2;
	}
	a,
	a:hover,
	a:active,
	a:focus
	{
		text-decoration: none;
		color: var(--default_grey_dark);
	}

	#desktopBannerFullMenu a:hover, .mainNavWrap > div:hover
	{
		color: var(--default_grey_dark);
	}

	.mainNavWrap > div:hover .subMenuCaretIcon
	{
		color: var(--default_grey_dark);
	}

	p
	{
		margin: 0 0 17px;
	}

	.form-control
	{
		font-size: inherit;
		height: auto;
	}

	.defaultContentWrapInner a
	{
		/*color: #337ab7;
		border-bottom: 1px solid #337ab7;*/
	}

	.text-primary {
	  color: #37393F !important;
	}

	.fixed-top
	{
		position: absolute;
		top: 15px;
		left: 0;
		right: 0;
		z-index: 998;
	}

	h1,
	h2,
	h3,
	h4,
	h5,
	h6 {
	  font-weight: 700;
	}
/*
	.articleHome_home
	{
		padding-top:90px;
	}
*/
	.homeContent > article > .aDivWrap
	{
		/*align-items: flex-start;*/
	}
	.pageTitleWrap_all h1, .defaultContentWrapInner h1
	{
		color: #000;
	}
	#homePageContent
	{
		display:flex;
		flex-direction:row;
		min-height:640px;
	}
	#homePageContent > div:first-child
	{
		position:relative;
		width:50%;
	}
	#homePageContent > div:first-child > div:first-child
	{
		position:absolute;
	}
	#homePageContent > div:nth-child(2)
	{
		width:50%;
	}
	#homePageContent > div:nth-child(2)
	{
		padding-left:60px;
	}
	#homePageContent > div > div
	{
		top:-149px;
		right:60px;
	}
	#homePageContent h1
	{
		font-size:22px;
		margin-bottom:40px;
	}
	#homePageContentLinks
	{
		display:flex;
		flex-direction:column;
	}
	#homePageContentLinks div:first-child
	{
		margin-top:5px;
		margin-bottom:5px;
	}
	#homePageContentLinks > a > div
	{
		display:flex;
		flex-direction:row;
		align-items:center;
	}
	#homePageContentLinks > a:first-child > div:first-child > div
	{
		color:#FBAC18;
	}
	#homePageContentLinks > a:nth-child(2) > div:first-child > div
	{
		color:#41586E;
	}
	#homePageContentLinks > a > div > div:nth-child(2)
	{
		font-size:30px;
		font-weight:bold;
		margin-left:30px;
	}

	section {
	  padding: 100px 0;
	}

	.reducePaddingAboveMainContent
	{
		padding-top:50px;
	}

	section h2.section-heading {
	  font-size: 40px;
	  margin-top: 0;
	  margin-bottom: 15px;
	}

	section h3.section-subheading {
	  font-size: 16px;
	  font-weight: 400;
	  font-style: italic;
	  margin-bottom: 75px;
	  text-transform: none;
	}
/*
	.headerClientLoginWrap_mobile
	{
		display:none;
	}
	.headerClientLoginWrap
	{
		display: inline-flex;
		float:right;
	}
	.headerClientLoginWrap > a > div,.headerClientLoginWrap_mobile > div
	{
		display:inline;
	}
	.headerClientLoginWrap img,.headerClientLoginWrap_mobile img
	{
		max-height:52px;
		width:auto;
	}
*/
	/*
	.headerClientLoginWrap > a > div
	{
		padding: 11px 19px;
		margin-top: -5px;
		color:#048dc5;
		border:1pt solid #048dc5;
		font-weight:bold;
	}

	.headerPhoneNumberWrap
	{
		display:inline-block;
		float:right;
		margin-right:25px;
		padding-top: 17px;
		padding-right: 20px;
		padding-left: 20px;
	}*/

	#mainPageContentTitle
	{
		margin-bottom:50px;
	}

	#mainPageContentTitle > h1 > span.BGcolorShamrock_greenLight_with_padding
	{
		margin-bottom:10px;
		font-size:27px;
		padding-left:20px;
		padding-right:20px;
	}


	#mainPageContentTitle > h1 > span.BGcolorShamrock_greenDark_with_padding
	{
		margin-bottom:10px;
		font-size:36px;
		padding-left:20px;
		padding-right:20px;
	}

	#homePageSplit
	{
		display:flex;
		flex-direction:row;
		align-items: center;
	}
	#homePageSplit > div
	{
		width:50%;
	}
	#homePageSplit > div:nth-child(1)
	{
		margin-right:30px;
	}
	#homePageSplit > div:nth-child(2)
	{
		margin-left:30px;
	}
	#homeImageSlideOuter
	{
		position:relative;
	}
	#homeImageSlideOuter > div
	{
		/*position:absolute;*/
	}
	#homeImageSlideOuter > div:nth-child(2)
	{
		opacity:0;
	}


	#expertiseImageSlideOuter
	{
		position:relative;
		text-align:center;
		padding-bottom:80px;
		padding-top:20px;
	}
	#expertiseImageSlideOuter > div
	{
		position:absolute;
		width: 100%;
	}
	#expertiseImageSlideOuter > div:last-child
	{
		position:relative;
		opacity:0;
	}
	#expertiseImageSlideOuter > div:nth-last-child(2)
	{
		opacity:0;
	}
	#expertiseImageSlideOuter > div img
	{
		width: 100%;
		max-width: 970px;
		height: auto;
	}

/*************
 GET IN TOUCH
**************/

	#getInTouch
	{
		height:250px;
		background-image:url('/images/library/get_in_touch.png');
		background-size:cover;
		background-repeat:no-repeat;
		display:flex;
		flex-direction:row;
		justify-content: center;
		align-items: center;
		border-top:4px solid #FFF;
	}
	#getInTouch > div:nth-child(1)
	{
		width:50%;
		color:#FFF;
		text-align:center;
		font-size:30px;
		font-weight:bold;
	}
	#getInTouch > div:nth-child(2)
	{
		width:50%;
		background-image:url('/images/library/get_in_touch_red_overlay.png');
		background-position:center left;
		background-repeat:no-repeat;
		background-size:cover;
		height:100%;
	}
	#getInTouch > div:nth-child(1)
	{
		display:flex;
		flex-direction:row;
		justify-content: flex-end;
		align-items: center;
	}
	#btnGetInTouch
	{
		margin-left:55px;
		background-color:#A9212E;
		border-radius:5px;
		padding:10px 22px;
		text-align:center;
		color:#FFF;
		display:inline-block;
		font-size:18px;
		font-weight:normal;
	}

/**************
 CLIENTS START
**************/

	#clientsOuter
	{
		margin-top:30px;
		display:flex;
		flex-direction:row;
		flex-wrap: wrap;
		justify-content:space-between;
		align-items:center;
	}
	#clientsOuter > div
	{
		width:31%;
		margin-bottom:40px;
		display:flex;
		align-items:center;
		justify-content:center;

		position: relative;
		padding: 25px;

		background: #fff;
		box-shadow: 1px 1px 5px #ccc;
	}

	#clientsOuter > div img
	{
		width:auto;
		max-width:100%;
		max-height: 100%;
	}

	.clientItemOverLay
	{
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: rgba(36, 51, 77, 0.8);

		display: flex;
		justify-content: center;
		align-items: center;
	}

	.clientItemOverLay_outer
	{
		display: none;
		text-align: center;
	}

	.clientsItem:hover .clientItemOverLay_outer
	{
		display: block;
	}

	.clientItemOverLay h3
	{
		font-size: 20px; 
		font-family:Roboto-Bold;
	}



/**************
 CLIENTS END
**************/

/*************
 BOTTOM BLOCKS
**************/


/**********
  CAREERS
**********/

	#careerPageContent button
	{
		background:none;
		border:1pt solid #FFB95C;
		color:#FFB95C;
		padding:10px 20px;
		font-weight:bold;
	}
	#careerPageContent button:hover
	{
		background:#FFB95C;
		color:#FFF;
	}
	#careerPageContent
	{
		display:flex;
		flex-direction:row;
	}
	#careerPageContent h2
	{
		color:#FFB95C;
		font-size:18px;
		margin-bottom:10px;
		margin-top: 50px;
	}
	#careerPageContent .jobTitle > div
	{
		display:inline;
	}
	#careerPageContent .jobBrief
	{
		margin-top:10px;
	}
	#careerPageContent .jobBrief p
	{
		text-align:justify;
	}
	#careerPageContent .jobTitle > div:first-child,
	#careerPageContent .jobBrief > p > span:first-child
	{
		color:#FFB95C;
		margin-right:10px;
	}
	#careerPageContent > div:first-child
	{
		width:40%
	}
	#careerPageContent > div:last-child
	{
		width:60%;
		position: relative;
	}
	#careerPageContent > div:last-child > div
	{
	    position: absolute;
		width: calc(100vw - 440px);
	    overflow-x: hidden;
		left: 50px;
		background-image:url(/images/library/careerImage.png);
		height:800px;
		background-repeat: no-repeat;
		background-position:120px top;
		width: calc(100vw - 440px);
	}
	#careerPageContent > div:last-child > div > img
	{
		margin-left:80px;
	}
	.careerItemOuter
	{
		border-bottom:1px solid #41586E;
		padding-top:30px;
		padding-bottom:30px;
	}
	.jobListOuter > div:first-child
	{
		padding-top:10px;
	}
	.jobListOuter > div:last-child
	{
		border-bottom:0;
	}
	.jobDate
	{
		text-align:right;
		color:#FFB95C;
	}
	.careerItemOuter > div:first-child
	{
		display:flex;
		flex-direction:row;
		padding-bottom:15px;
	}
	.careerItemOuter > div:first-child > div:first-child
	{
		width:75%;
	}
	#careerPageContent h3
	{
		color:#FFB95C;
		font-size:16px;
		margin:0;
	}

/**************
  CAREERS END
**************/

/***********
	ABOUT
***********/

#pageContent_2 h2
{
	font-size:16px;
}
#pageContent_2 .aDivWrap
{
	margin-top:50px;
	align-items: center;
}
#pageContent_2 .aDivWrap .aDivWrap_right p
{
	margin: 0;
}
#pageContent_2 .aDivWrap .aDivWrap_left
{
	width:15%;
}
#pageContent_2 .aDivWrap div {
	width: 100%;
}

	.navbar-collapse.collapse {
		display: block;
		height: auto!important;
		padding-bottom: 0;
		overflow: visible!important;
	}

	.headerMenuAndLogoWrap {
		display: flex;
		display: -webkit-flex;
		-webkit-justify-content: space-between;
		justify-content: space-between;
		align-items: center;
		-webkit-align-items: center;
		width: 100%;
	}

	.navbar-nav {
		display: flex;
		display: -webkit-flex;
		align-items: flex-end;
		-webkit-align-items: flex-end;

		-ms-flex-direction: row;
    flex-direction: row;
	}

	.navbar-toggle {
		display: none !important;
	}

	.navbar-nav>li>a {
    padding: 0;
    margin: 0;
    width: auto;
    display: flex;
    display: -webkit-flex;
	color: #fff !important;
	justify-content: flex-end;
}

.navbar-nav>li {
    float: left;
    margin-right: 30px;
    cursor: pointer;
	padding: 10px 0;
}

.caret_custom img
{
    width: 10px;
}

.menuOpenLineFR:before
{
	content: '';
	position: absolute;
	left: 0;
	top: 50%;
	width: 100%;
	height: 1px;
	background: #fff;
	z-index: 4;
}

.menuTextFR
{
	background: var(--default_dark);
	position: relative;
	z-index: 5;
	display: inline-block;
	padding-left: 10px;
}

.arrowStraight_menu {
    display: none;
}

.navbar-nav > li > .dropdown-menu {
    -webkit-border-radius: 0;
    -moz-border-radius: 0;
    border-radius: 0;
    background: var(--default_red);
    color: #000;
    overflow: hidden;
	padding: 20px;
	margin-top: -8px;
}

.menuListFloatRight > .dropdown-menu 
{
	margin-top: -50px !important;
}

.dropdown-menu {
    position: absolute !important;
    top: 100%;
    left: unset !important;
	right: 0;
    z-index: 1000;
    display: none;
    float: left;
    min-width: 160px;
    padding: 5px 0;
    margin: 2px 0 0;
    font-size: 14px;
    text-align: left;
    list-style: none;
    background-color: #fff;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    border: 1px solid #ccc;
    border: 1px solid rgba(0,0,0,.15);
    border-radius: 4px;
    -webkit-box-shadow: 0 6px 12px rgba(0,0,0,.175);
    box-shadow: 0 6px 12px rgba(0,0,0,.175);
}

/*.menuFloatRight_inner .dropdown-menu
{
	left: 0 !important;
	right: unset !important;
}*/

.dropdown-menu > li {
    /*border-bottom: 1px solid rgba(255, 255, 255, 0.31);*/
    padding: 12px 10px;
    text-align: left;
    display: flex;
    display: -webkit-flex;
	justify-content: flex-end;
}
.dropdown-menu > li:nth-child(1)
{
	/*padding-top:0;*/
}
.dropdown-menu > li a{
	color:#FFF;
	white-space: nowrap;
}
.dropdown-menu > li a:hover
{
	color:#fff;
}

.navbar
{
	padding: 0;
}


/**********
  BANNER
**********/

	.homeBanner_navAndInfo
	{
		width:100%;
		clear:both;
	}
	.bannerText
	{
		/*width:1170px;*/
		font-size:36px;
		font-family:Roboto-Bold;
	    padding-bottom:75px;
		position: relative;
		z-index: 11;
	}
	.bannerMiniUnderline
	{
		height:4px;
		width:37px;
		background-color:#FFF;
		margin-top:-14px;
	}

	.scrollDownBtn, .scrollDownBtn_project 
	{
		border:none;
		background-color:transparent;
		font-size:25px !important;
		cursor:pointer;
		color:#FFF;
	}
	.scrollDownBtn:hover,
	.scrollDownBtn:visited,
	.scrollDownBtn_project:hover,
	.scrollDownBtn_project:visited
	{
		color:#FFF;
	}

	.scrollDownBtn
	{
		padding-left: 0;
		padding-right: 0;
	}

	.tempHide
	{
		opacity:0;
	}
	#statsOuter
	{
		background-color:#F2F2F2;
	}
	#statsOuter > div:first-child
	{
		max-width:1170px;
		margin:0 auto;
		display:flex;
		flex-direction:row;
		justify-content:center;
		align-items:center;
		min-height:200px;
	}
	#statsOuter > div:first-child > div
	{
		width:25%;
		font-weight:bold;
		text-align:center;
	}
	#statsOuter > div:first-child > div > div:nth-child(2)
	{
		color:#A9212E;
		font-size:40px;
		margin-bottom:15px;
	}
	.homeBannerLogoOverlay
	{
		position:absolute;
		/*opacity:0;*/
		background-image:url('/images/library/homeBannerLogoOverlay.png');
		background-repeat:no-repeat;
		background-position:bottom right;
		width:100%;
		height:100%;
	}
	.homeBannerExtraTextOuter,
	#homeBannerNav
	{
		position:absolute;
		opacity:0;
		width:100%;
		height:100%;
		z-index:10;
	}
	#homeBannerNav
	{
		z-index:20;
	}
	#homeBannerNav > div
	{
		width:100%;
		display:flex;
		flex-direction:column;
		justify-content:flex-end;
		height:100%;
		color:#FFF;
		width: 1170px;
		margin: 0 auto;
	}
	#homeBannerNav > div > div
	{
		display:flex;
		flex-direction:row;
	    margin-bottom: 20px;
	}
	#homeBannerNav > div > div > div
	{
		font-size:25px;
	}
	#homeBannerNav > div > div > div:nth-child(2)
	{
		margin-left:15px;
	}
	.homeBannerExtraText
	{
		width:100%;
		display:flex;
		flex-direction:column;
		justify-content:flex-end;
		height: calc(100% - 70px);
		width: 1170px;
		margin: 0 auto;
	}
	.homeBannerExtraText > div:nth-child(1)
	{
		font-family:Roboto-Bold;
		font-size:40px;
		text-decoration:underline;
		-webkit-text-underline-position: under;
		-ms-text-underline-position: below;
		text-underline-position: under;
	}
	.homeBannerExtraText > div:nth-child(2)
	{
		font-size:15px;
		margin-top:15px;
	}

	.homePageBannerOuter:before
	{
		content: '';
		position: absolute;
		left: 0;
		top: 0;
		width: 100%;
		height: 100%;
		background: rgba(21, 21, 21, 0.30);
		z-index: 8;
	}

	#banner_outer
	{
		height:100vh;
		display: flex;
		justify-content: center;
		-webkit-justify-content: center;
		align-items: flex-end;
		-webkit-align-items: flex-end;
		color:#FFF;
	    background-size: cover;
		background-position: center;
		position: relative;
	}

	.notHomePageBanner
	{
		display: block !important;
		height:50vh !important;
	}

	.notHomePageBanner:before
	{
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-image: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.7) -4%, rgba(255, 255, 255, 0.2) 43%, rgba(250, 250, 250, 0.2) 48%, rgba(10, 10, 10, 0.7) 100%);
	}

	.notHomePageBanner_detail
	{
		height: 100vh !important;
	}

	.projectBannerTextWrap
	{
		height: 100vh;
	}

	.projectBannerText 
	{
		position: absolute;
		bottom: 60px;
		text-align: left;
		color: #fff;
		padding-bottom: 0;
	}

	.projectBannerText h1
	{
		font-size: 42px;
	}

	.projectBannerText
	{
		font-family:Roboto-Bold;
	}

	.notFullBannerHeight
	{
		height:45vh !important;
	}

	#hero
	{
		height:100vh;
	}
	#id > div
	{
		height: 70vh;
	}
	.homeBanner_left,.homeBanner_right
	{
		width:50%;
		height:70vh;
		background-repeat:no-repeat;
		background-position:center center;
		background-size:cover;
	}
	.homeBanner_right
	{
		background-size:cover;
	}
	.homeBanner_left
	{
		border-left:1pt solid #DADADA;
		border-bottom:1pt solid #DADADA;
		border-top:1pt solid #DADADA;
	}
	.homeBanner_right
	{
		border-right:1pt solid #DADADA;
		border-bottom:1pt solid #DADADA;
		border-top:1pt solid #DADADA;
		padding-right:1pt;
	}
	/*
	.slick-initialized .slick-slide
	{
		display: flex;
		flex-flow: row wrap;
	}*/


	header.masthead {
	  text-align: center;
	  color: white;
	  background-image: url("/images/library/banner_home.jpg");
	  background-repeat: no-repeat;
	  background-attachment: scroll;
	  background-position: center center;
	  -webkit-background-size: cover;
	  -moz-background-size: cover;
	  -o-background-size: cover;
	  background-size: cover;
	  height: 100vh;
	}

	header.masthead .intro-text {
	  padding-top: 150px;
	  padding-bottom: 100px;
	  color: #414b4d;
	}

	header.masthead .intro-text .intro-lead-in {
	  font-size: 22px;
	  line-height: 22px;
	  margin-bottom: 25px;

	}

	header.masthead .intro-text .intro-heading {
	  font-size: 50px;
	  font-weight: 700;
	  line-height: 50px;
	  margin-bottom: 25px;

	}

/**************************
  PAGE BOTTOM BLOCKS START
**************************/

	#pageBottomBlocks
	{
		height:400px;
		display:flex;
		flex-direction:row;
		align-items:center;
	}
	#pageBottomBlocks > div
	{
		position:relative;
		width:50%;
		background-size:cover;
		background-repeat:no-repeat;
		color:#FFF;
		font-size:30px;
		display:flex;
		flex-direction:row;
		align-items:center;
		height:100%;
		justify-content: center;
		cursor:pointer;
	}
	#pageBottomBlocks > div > a
	{
		width:100%;
		height:100%;
	}
	#pageBottomBlocks > div:nth-child(1)
	{
		background-image:url('/images/library/pageBottomBlock_stonemasonry.png');
	}
	#pageBottomBlocks > div:nth-child(2)
	{
		background-image:url('/images/library/pageBottomBlock_heritageBuildingRestoration.png');
	}
	#pageBottomBlocks > div
	{
		border-right:2px solid #FFF;
	}
	#pageBottomBlocks > div
	{
		border-left:2px solid #FFF;
	}
	#pageBottomBlocks > div:nth-child(1) > a > div > div:nth-child(1),
	#pageBottomBlocks > div:nth-child(2) > a > div > div:nth-child(2)
	{
		position:absolute;
	}
	#pageBottomBlocks > div > a > div:nth-child(1)
	{
		/*background-color: rgba(255,0,0,0.5);*/
		left: 0;
		width: 100%;
		height: 100%;
		position: absolute;
		z-index:10;
	}
	#pageBottomBlocks > div > div:nth-child(2)
	{
		/*background-color: rgba(0,255,0,0.5);*/
		left: 0;
		width: 100%;
		height: 100%;
		position: absolute;
		z-index:5;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		text-align:center;
	}
	#pageBottomBlocks > div > div > div
	{
		font-size:28px;
		font-family:Roboto-Bold;
	}
	#pageBottomBlocks > div > div > div > div:nth-child(2)
	{
		border-bottom:3px solid #FFF;
		height:3px;
		width:40px;
		padding-top:15px;
		margin: 0 auto;
	}

	#pageBottomBlocks > div > div > div > div:nth-child(3)
	{
		position:absolute;
		font-size:18px;
		text-decoration:underline;
		margin-top:25px;
		display:none;
		text-align:center;
		width: 100%;
		left: 0;
	}

/************************
  PAGE BOTTOM BLOCKS END
*************************/

	#desktopBannerFullMenu
	{
		width:100%;
		position:absolute;
		/*height:100vh;
		right:0;*/
		background-color:#24334D;
		z-index:99;
	}

	.desktopBannerFullMenuInner
	{
		/*padding:100px 30px 40px 80px;
		position: absolute;
		left: 0;
		right: 0;
		bottom: 0;
		height: 100%;*/
	}

	.mainMenuSplitWrap
	{
		display: flex;
		justify-content: flex-end;
	}

	#desktopBannerFullMenu > div > div
	{
		color:#FFF;
		font-size:33px;
		text-align: right;
		height: 100%;
		width: 100%;
	}
	#desktopBannerFullMenu a
	{
		color:#FFF;
		text-decoration:none;
		font-family: Roboto-Bold;
	}

	.topOfMenuSpacer
	{
		border-bottom:none;
		max-height:3px;
		background-color:#41586E;
		border-top:none;
		border-left:none;
		border-right:none;
		font-size:1px;
		padding:5px !important;
		margin:0;
	}

/*****************************
  EXPERTISE PAGES OUTER START
*****************************/

	#servicesPageOuter
	{
		display:flex;
		flex-direction:row;
		justify-content: flex-start;
	}
	#servicesPageOuter ul
	{
		padding-left: 17px;
	}
	#servicesPageOuter > div
	{
		width:50%;
	}
	#servicesPageOuter > div:nth-child(1)
	{
		/*border-right:1px solid grey;
		border-bottom:1px solid grey;*/
		box-shadow: 0 5px 20px rgba(0, 0, 0, 0.3);
		padding:50px 20px 20px 25px;
		/*margin-top: -150px;*/
		background-color: #FFF;
	}
	#servicesPageOuter > div:nth-child(2)
	{
		padding-left:50px;
	}
	#servicesPageOuter > div:nth-child(1) > div
	{
		max-width:550px;
		margin-left: auto;
	}

/*****************************
  SERVICES PAGES OUTER END
*****************************/

	.articleHome
	{
		display: -webkit-box;      /* OLD - iOS 6-, Safari 3.1-6 */
	  display: -moz-box;         /* OLD - Firefox 19- (buggy but mostly works) */
	  display: -ms-flexbox;      /* TWEENER - IE 10 */
	  display: -webkit-flex;     /* NEW - Chrome */
	  display: flex;
	}

	.aDivWrap
	{
		display: flex;
		display: -webkit-flex;
		width: 100%;
		position: relative;
		align-items: center;
	}

	.expertPageContentExpertise .aDivWrap
	{
		/*margin-top: 90px;*/
	}	

	.aDivWrap img
	{
		/*width: 100%;*/
		max-width: 100%;
	}

	.aDivWrap > .aDivWrap_left
	{
		margin-right: 60px;
	}

	.articleHome_inner
	{
		width: 100% !important;
	}

	.contentSideImgWrap
	{
		width: 50% !important;
		margin-left: 30px;
	}

	.contentSideImgWrap img
	{
		width: 100%;
		margin-top: 70px;
	}

	.container
	{
		padding-left:0;
		padding-right:0;
	}
	.NOTcontainer
	{
		width:unset !important;
	}

	.submitYourIdeaForm, .submitYourIdeaForm_submitBtn_wrap
	{
		display: -webkit-box;      /* OLD - iOS 6-, Safari 3.1-6 */
	  display: -moz-box;         /* OLD - Firefox 19- (buggy but mostly works) */
	  display: -ms-flexbox;      /* TWEENER - IE 10 */
	  display: -webkit-flex;     /* NEW - Chrome */
	  display: flex;
	}

	.submitYourIdeaForm > div:first-child
	{
		margin-right: 50px;
	}

	.submitYourIdeaForm > div
	{
		width: 50%;
	}

	.submitYourIdeaForm input, .submitYourIdeaForm textarea
	{
		border-radius: 0;
		margin-bottom: 30px;
		padding: 10px;
		height: auto;
		font-size: 16px;
		resize: none;
	}

	.submitYourIdeaFormWrap_overlay
	{
		background: #ac1127;
		height: 100%;
	}

	.submitYourIdeaFormWrap
	{
		color: #fff;
	}

	.submitYourIdeaFormWrap_header
	{
		text-align: center;
		margin-bottom: 40px;
	}

	.submitYourIdeaRedLine
	{
		display: inline-block;
		height: 10px;
		position: relative;
		width: 177px;
		background: #bb2a25;
	}

	.container_custom table
	{
		width: 100%;
	}

	.blocksWrap
	{
		display: -webkit-box;      /* OLD - iOS 6-, Safari 3.1-6 */
	  display: -moz-box;         /* OLD - Firefox 19- (buggy but mostly works) */
	  display: -ms-flexbox;      /* TWEENER - IE 10 */
	  display: -webkit-flex;     /* NEW - Chrome */
	  display: flex;

		position: relative;
		z-index: 999;
	}

	.blockWrap
	{
		background-repeat: no-repeat;
		background-position: center;
		background-size: cover;

		text-align: center;
		width: 33.33%;
		padding: 80px 40px;

		cursor: pointer;

		min-height: 320px;
	}

	#homePageIcons:after
	{
		content: '';
		position: absolute;
		width: 100%;
		height: 100%;
		left: 0;
		top: 0;
		/*background: rgba(0, 0, 0, 0.5);*/
		z-index: 9;
	}

	.homePageGetStartedHeader
	{
		text-align: center;
		color: #fff;
		position: relative;
		z-index: 10;
	}

	.homePageGetStartedHeader h1
	{
		display: inline-block;
		border-bottom: 5px solid #f00;
	}

	.homeBlockBriefWrap h1
	{
		color: #fff;
	}

	.blockWrap_subPage
	{
		background-repeat: no-repeat;
		background-position: center;
		background-size: cover;
		box-shadow: none;
		padding: 110px 40px;
		color: #fff;
		position: relative;

		border: 10px solid #fff;
		box-shadow: 1px 1px 5px 1px #a5a1a1;
	}

	.blockWrap_subPage > div
	{
		position: relative;
		z-index: 999;
	}

	.blockWrap_subPage > div:nth-child(2)
	{
		position: absolute;
		left: 0;
		right: 0;
		bottom: 65px;
	}

	.blockWrap_subPage:hover:after, .galleryImageLink:hover:after
	{
		content: '';
		background: rgba(0, 97, 152, 0.8);
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		z-index: 88;
	}

	.blockWrap_subPage:before
	{
		content: '';
		background: rgba(0, 97, 152, 0.8);
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		z-index: 8;
	}

	.blockWrap_subPage_null
	{
		background: none;
	}
/*
	.servicesMainPage_subPagesWrap
	{
		background-image: url("/images/library/submitIdeaBg.jpg");
		background-repeat: no-repeat;
		background-position: center;
		background-size: cover;

		padding: 50px 0;

		position: relative;
	}

	.galleryText
	{
		color: #000;
		z-index: 999;
	}

	.galleryText h3
	{
		color: #005487;
		font-weight: 400;
		font-size: 20px;
	}

	.galleryText h4
	{
		color: #636363;
		font-weight: 400;
		font-size: 15px;
	}
	.slick-slide img
	{
		width: 100%;
	}
*/

	.testimonialsWrap
	{
		margin-top: 20px;
		margin-bottom: 40px;
	}

	.testimonials_indeWrap
	{
		margin-bottom: 60px;
		position: relative;
	}

	.testimonialsHeaderWrap
	{
		margin-top: 40px;
	}

	.contactPage_contactDetailsWrap, .contactUsFormLeft, .bookingFormFirst, .contactUsFormBottom
	{
		display: -webkit-box;      /* OLD - iOS 6-, Safari 3.1-6 */
		display: -moz-box;         /* OLD - Firefox 19- (buggy but mostly works) */
		display: -ms-flexbox;      /* TWEENER - IE 10 */
		display: -webkit-flex;     /* NEW - Chrome */
		display: flex;

		justify-content: space-between;
		-webkit-justify-content: space-between;
	}

	.submitBtn_submitYourIdeaWrap
	{
		text-align: center;
	}

	.submitBtn_submitYourIdeaWrap
	{
		margin-top: 15px;
	}

	.contactPage_contactDetailsWrap iframe
	{
		width: 50vw;
		height: 400px;
	}

	.contactFormCheckboxOptions > div
	{
		width:47%;
		float:left;
		margin-bottom:15px;
	}

	.contactFormCheckboxOptions > div:nth-child(even)
	{
		margin-left:5%;
	}
/*
	.contactFormCheckboxOptions > div input[type='checkbox']
	{
		transform:scale(1.6,1.6);
		background-color:none;
	}

	.contactFormCheckboxOptions > div input[type='checkbox']:checked
	{

	}
*/
	.contactFormCheckbox
	{
		height:16px;
		width:16px;
		border:1pt solid #FFF;
	}
	.contactFormCheckboxOptions > div div
	{
		display:inline-block;
	}
	.contactFormCheckboxOptions > div div:nth-child(2)
	{
		margin-left:10px;
		padding-bottom:3px;
	}

	.contactUsForm textarea, .contactUsForm input[type=text], .contactUsForm select,
	.bookingForm textarea, .bookingForm input[type=text], .bookingForm select
	{
		width: 100%;
		margin-bottom: 20px;
		border-radius: 5px;
		height: auto;
		font-size: 16px;
		background: none !important;
		-webkit-appearance: none;
		border-color: #fff;
		outline: none;
		color: #fff;
		box-shadow: none;
	}

	.contactUsForm input
	{
		/*border-left: none;
		border-top: none;
		border-right: none;*/
	}

	.contactUsForm textarea, .bookingForm textarea
	{
		height: 210px;
		padding: 10px;
		resize: none;
		margin-bottom: 15px;
	}

	.contactUsFormLeft > div, .bookingFormFirst > div, .contactUsFormBottom > div
	{
		width: 50%;
	}

	.contactUsFormLeft > div:first-child, .bookingFormFirst > div:first-child, .contactUsFormBottom > div:first-child
	{
		margin-right: 50px;
	}

	.bookingFormWrap
	{
		background-image: url("/images/library/contactUsBg.jpg");
		background-repeat: no-repeat;
		background-position: center;
		background-size: cover;

		/*padding: 0 0 50px 0;
		background: rgba(255, 255, 255, 0.67);*/
		position: relative;

		background-attachment: fixed;
	  -webkit-background-size: 100% auto;
	  -moz-background-size: 100% auto;
	  -ms-background-size: 100% auto;
	  -o-background-size: 100% auto;
	  background-size: 100% auto;
	}

	.bookingFormFirst
	{
		color: #fff;
	}

/********
  CONTACT FORM
*********/

	.contactPageContactFormHeaderWrap h1
	{
		color:#FFF;
		text-align:left;
	}
	.contactPageContactFormWrap .container
	{
		background: #2a2735;
	}
	.contactPageContactFormWrap > div
	{
		min-height:485px;
	}

	.bookingFormWrap:after
	{
		content: '';
		position: absolute;
		left: 0;
		top: 0;
		width: 100%;
		height: 100%;
		background: rgba(0, 84, 135, 0.71);
		z-index: 8;
	}

	.bookingSection
	{
		padding: 0;
	}

	.bookingFormWrap
	{
		padding: 60px 0;
	}

	.bookingFormWrap .container
	{
		position: relative;
		z-index: 9;
	}

	.contactPageContactFormWrap_outer, .contactPageContactFormWrap .container
	{
		position: relative;
	}

	.contactPageContactFormWrap .container
	{
		z-index: 9;
	}


	.bookingForm input,.contactUsForm input
	{
		border:none !important;
		border-bottom: 1px solid #fff !important;
		font-size: 16px;
		padding: 14px 0;
		border-radius:0 !important;
	}
	.bookingForm textarea.contactUsForm textarea,#message_contactPage
	{
		border:none !important;
		border: 1px solid #fff !important;
		font-size: 16px;
		padding: 14px;
		border-radius:0 !important;
	}

	.arrowOnTheBannerWrap
	{
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		text-align: center;
		z-index: 999;
	}

	.contactPageContactFormHeaderWrap
	{
		text-align: left;
	}

	.nav-link
	{
		color: #ac1127;
	}

	.nav-link span:hover
	{
		color: #fff;
	}

	.nav .open>a, .nav .open>a:focus, .nav .open>a:hover
	{
		background: none;
	}

	.navbar-brand
	{
		height: auto;
		padding: 0;
	}

	.navbar-brand > img
	{
		/*max-height:60px;*/
		max-width: 300px;
	}

	/* CREATE CUSTOM HEADER - START */

	.showPreview_customHeader_wrap_outer
	{
	  width: 100%;
	  height: 150px;
	  border: 1px solid #cccccc;
	  position: relative;
	  overflow-y: scroll;
	}

	#showPreview_customWaterMark
	{
	  position: absolute;
	  cursor: move;
	  top: 0;
	}

	#showPreview_customHeader
	{
	  height: 150px;
	  text-align: center;

		display: -webkit-box;      /* OLD - iOS 6-, Safari 3.1-6 */
	  display: -moz-box;         /* OLD - Firefox 19- (buggy but mostly works) */
	  display: -ms-flexbox;      /* TWEENER - IE 10 */
	  display: -webkit-flex;     /* NEW - Chrome */
	  display: flex;

	  justify-content: center;
	  -webkit-justify-content: center;
	  align-items: center;
	  -webkit-align-items: center;
	}

	/* CREATE CUSTOM HEADER - START */

	.processWrap_outer
	{
		padding-bottom: 165px;
		padding-top: 165px;
		background: #ededed;
	}

	.whatToExpectContentWrap_inner
	{
	  display: -webkit-box;      /* OLD - iOS 6-, Safari 3.1-6 */
	  display: -moz-box;         /* OLD - Firefox 19- (buggy but mostly works) */
	  display: -ms-flexbox;      /* TWEENER - IE 10 */
	  display: -webkit-flex;     /* NEW - Chrome */
	  display: flex;

	  flex-wrap: wrap;
	  -webkit-flex-wrap: wrap;
	  justify-content: space-between;
	  -webkit-justify-content: space-between;
	  align-items: center;
	  -webkit-align-items: center;
	}

	.whatToExpectContentWrap_inner > div
	{
	  width: 50%;
	}

	.whatToExpectContentWrap_inner > div > div
	{
	  width: 60%;
	  margin: 0 auto;
	}

	.whatToExpectHeaderWrap
	{
	  text-align: center;
	}

	.navbar-toggle .icon-bar
	{
	  background: #fff;
	}

	.pageTitleWrap_all
	{
	  position: relative;
	  z-index: 999;
	}

	.pageTitleWaterMark_all
	{
	  position: absolute;
	  z-index: 99;
	  right: 0;
	  opacity: 0.1;
	  font-size: 162px;
	  line-height: 60px;
	}

	.headerNews .pageTitleWaterMark_all
	{
		right: auto;
	}

	.pageTitleWrapInner_all
	{
	  display: -webkit-box;      /* OLD - iOS 6-, Safari 3.1-6 */
	  display: -moz-box;         /* OLD - Firefox 19- (buggy but mostly works) */
	  display: -ms-flexbox;      /* TWEENER - IE 10 */
	  display: -webkit-flex;     /* NEW - Chrome */
	  display: flex;

	  justify-content: center;
	  -webkit-justify-content: center;
	  align-items: center;
	  -webkit-align-items: center;
	  position: relative;
	  line-height: 1;
	  min-height: 75px;
	}

	.alignHeaderInCenter
	{
		justify-content: center;
	  -webkit-justify-content: center;
	  align-items: center;
	  -webkit-align-items: center;
	}

	.alignHeaderInCenter aside
	{
		margin-right: 0 !important;
	}

	.pageTitleWrapInner_all h1
	{
		margin: 0;
		white-space: nowrap;
	}

	.headerMenuWrap
	{
		display: flex;
		flex-direction: row;
		float: right;
		position: relative;
		z-index: 999999999;
	}

	#ideaAttacment, #contactAttachment_contactPage
	{
	  display: none;
	}

	.contactPageActionBtnWrap
	{
	  color: #fff;
	}


	.caret_custom
	{
		display: block;
		text-align: center;
		position: relative;
		padding-left: 5px;
	}

	.menuListFloatRight .caret_custom
	{
		display: block;
		text-align: center;
		position: relative;
		padding-right: 5px;
	}

	.lg-item
	{
		position: relative;
		width: 80% !important;
		margin: auto;
		height: 80% !important;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
	}
/*
	.gallery_images_Wrap .slick-slide
	{
		margin: 15px;
	}
*/
	.homeBlockHeader
	{
		position: relative;

		 /*display: -webkit-box;      OLD - iOS 6-, Safari 3.1-6 */
	  display: -moz-box;         /* OLD - Firefox 19- (buggy but mostly works) */
	  display: -ms-flexbox;      /* TWEENER - IE 10 */
	  display: -webkit-flex;     /* NEW - Chrome */
	  display: flex;

		justify-content: center;
		-webkit-justify-content: center;

		align-items: center;
		-webkit-align-items: center;

		z-index: 999;
		margin-bottom: 40px;
	}

	.homeBlock_watermark
	{
		font-size: 140px;
		position: absolute;
		z-index: 99;
		opacity: 0.1;
		line-height: 50px;
		left: 0;
		right: 0;
		top: 0;
	}

	.homeBlockBriefWrap
	{
		margin-bottom: 30px;
	}

	.homeBlockHeader_head > div:first-child
	{
		font-size: 20px;
	}

	.homeBlockHeader_head > div:last-child
	{
		font-size: 30px;
	}

	.homeBlock_readMoreBtn:hover
	{
		background: #b72d1f;
		color: #fff;
	}

	.nav-link:hover
	{
		background: none !important;
		color: #fff;
	}

	.submitYourIdea_comments
	{
		height: 142px !important;
	}

	.submitYourIdeaForm_submitBtn_wrap
	{
		margin-top: 20px;
	}

	.submitYourIdeaForm_submitBtn_wrap > div:first-child
	{
		margin-right: 50px;
	}

	.submitYourIdeaRedLineWrap
	{
		margin-bottom: 20px;
		margin-top: 5px;
	}
	.bannerOverlay
	{
		position:absolute;
		background-color:rgba(255,255,255, 0);
		z-index:9999999;
		width:100%;
		height:calc(100% - 50px);
		background-repeat:no-repeat;
		background-position:center center;
	    background-size: 100% auto;
		background-image:none;
	}
	.homeBannerButtonLink
	{
		position:relative;
		white-space: nowrap;
		width: 100%;
		display: none;
	}
	.homeBannerButtonLink .btn-default
	{
		background:none !important;
		display: inline-block;
		cursor:pointer;
	}
	.homeBannerButtonLink > div:hover
	{
		color:#000;
		border:1pt solid #000;
	}
	.bannerOverlay:hover
	{
		display:flex;
		align-items: center;
		background-image:url('/images/library/homeBannerOverlay.png');
		/*display:inline !important;*/
		background-color:rgba(255,255,255, 0.75);
	}
	.bannerOverlay:hover .homeBannerButtonLink
	{
		display:inline-block;
		text-align: center;
	}

	.bannerHeight100VH
	{
		height: 75vh;
		background-position: center left;
		background-size: cover;
		background-repeat: no-repeat;
	}

	.bannerHeight40VH
	{
		height: 50vh;
		background-position: center;
		background-size: cover;
		background-repeat: no-repeat;
	}

	#banner_outer_mobile
	{
		display: none;
	}
/*
	.clientImagesWrap .slick-list, .gallery_images_Wrap .slick-list
	{
		margin: 0 45px;
	}

	.goBackBtnWrap
	{
		text-align: center;
	}*/

/*************
  NEWS START
*************/

#newsArticleListing
{
	display:flex;
	flex-direction:row;
	justify-content:space-between;
	align-items:center;
	padding-bottom:20px;
}
#newsArticleListing > div
{
	width:45%;
}
.newIndexItem
{
	display:flex;
	flex-direction:column;
}
.newIndexItem > div:nth-child(1) > div
{
	background-color:#A9212E;
	color:#FFF;
	width:40%;
	padding:7px 12px;
}
.newIndexItem > div:nth-child(2) > div
{
	background-repeat:no-repeat;
	background-size:cover;
	height:330px;
	width:100%;
}
.newIndexItem > div:nth-child(3) > div
{
	margin:20px 0;
}
.newIndexItem > div:nth-child(4) a
{
	text-decoration:underline !important;
}
.newsDateNav
{
	display:flex;
	flex-direction:row;
	margin-top:20px;
	justify-content: center;
}
.newsSectionWrap h1
{
	display:inline-block;
}
.newsDateNav > div
{
	margin-left:20px;
}

.newsPulldownYears
{
	margin-left: 0 !important;
}

.newsDateNav .nice-select
{
	border-radius:0;
	border:none;
	background-color:#f2f2f2;
	color:#24334D;
}
.newsDateNav .nice-select:after
{
	border-bottom:2px solid var(--default_red);
	border-right:2px solid var(--default_red);
	width: 9px;
	height: 9px;
	margin-top: -8px;
}

.newsDate_details
{
	font-family:Roboto-Bold;
	margin-bottom:10px;
}

.newsTitle_details h1
{
	font-family: 'Roboto-Medium';
    letter-spacing: 5px;
}


/*************
  NEWS END
*************/

	.findoutMoreBtnBannerWrap
	{
		/*position: absolute;
		top: 120px;
		left: 5px;*/
	}

	.findoutMoreBtnBannerWrap a
	{
		font-size: 30px;
		color: #fff;
		/*border-color: #fff;*/
	}
/*
	.slick-slide
	{
		background-size: cover;
		position: relative;
	  padding-right: 1px;
	}
*/
	.bannerTextWrap {
		display: -webkit-box;      /* OLD - iOS 6-, Safari 3.1-6 */
	  display: -moz-box;         /* OLD - Firefox 19- (buggy but mostly works) */
	  display: -ms-flexbox;      /* TWEENER - IE 10 */
	  display: -webkit-flex;     /* NEW - Chrome */
	  display: flex;

		height: 100%;
		justify-content: flex-start;
		-webkit-justify-content: flex-start;
		align-items: center;
		-webkit-align-items: center;
		text-align: left;

		position: absolute;
		left: 0;
		right: 0;
		padding-bottom: 73px;
	}

	.bannerTextLine
	{
		/*margin: 5px;*/
		font-size: 45px;
		color: #fff;
		line-height: 0.8;
	}

	.bannerTextLine_home
	{
		position: relative;
	}

	.bannerTextLine_home
	{
		line-height: 1;
	}

	.bannerTextWrap > div
	{
		position: relative;
	}

	.bannerTextWrap > div
	{
		/*margin-top: 75px;*/
	}

	.nav-link
	{
		font-size: 16px;
		/*font-weight:bold;*/
	}

	/* CIRCLE ANIMATION - START */

	.process_middle_img img
	{
		-webkit-animation:spin 16s linear infinite;
		-moz-animation:spin 16s linear infinite;
		animation:spin 16s linear infinite;
	}
	@-moz-keyframes spin { 100% { -moz-transform: rotate(360deg); } }
	@-webkit-keyframes spin { 100% { -webkit-transform: rotate(360deg); } }
	@keyframes spin { 100% { -webkit-transform: rotate(360deg); transform:rotate(360deg); } }

	/* CIRCLE ANIMATION - END */


	figure
	{
	position: relative;
	background-color: #fff;

		display: -webkit-box;      /* OLD - iOS 6-, Safari 3.1-6 */
	  display: -moz-box;         /* OLD - Firefox 19- (buggy but mostly works) */
	  display: -ms-flexbox;      /* TWEENER - IE 10 */
	  display: -webkit-flex;     /* NEW - Chrome */
	  display: flex;

	  justify-content: center;
	  -webkit-justify-content: center;
		align-items: flex-start;
		-webkit-align-items: flex-start;
	}

	figcaption {
		position: relative;
		top: 0;
		right: 0;
		width: 500px;
		height: 100%;
	}

	img.mfp-img
	{
		padding: 0;
	}

	.mfp-image-holder .mfp-close, .mfp-iframe-holder .mfp-close
	{
		top: -55px;
		opacity: 1;
	}

	.mfp-bottom-bar
	{
		color: #000;
		margin: 0;
		padding: 30px 40px;
	}

	.mfp-counter
	{
		display: none;
	}

	.mfp-title
	{
		padding: 0;
		color: #000;
	}

	.mfp-bottom-bar
	{
		position: relative;
	}
	.downloadCapabilityStatement
	{
		position: absolute;
		top: -65px;
		right: 0;
	}

	.come-in {
	  transform: translateY(200px);
	  animation: come-in 1s ease forwards;
	}
	.come-in:nth-child(odd) {
	  animation-duration: 1s; /* So they look staggered */
	}

	.already-visible {
	  transform: translateY(0);
	  animation: none;
	}

	@keyframes come-in {
	  to { transform: translateY(0); }
	}

	.mfp-arrow-left
	{
		background:url(/images/library/lightbox_prev.png) no-Repeat top left !important;
	}

	.mfp-arrow-right
	{
		background:url(/images/library/lightbox_next.png) no-Repeat top left !important;
	}

	.mfp-arrow:before, .mfp-arrow:after
	{
		display: none;
	}

	.galleryText_team
	{
		display: none;
	}

	.subPageExtraBtn
	{
		border: 1px solid #b72d1f;
		color: #b72d1f;
		padding: 10px	;
	}

	.subPageExtraBtn:hover
	{
		border-color: #b72d1f;
		background: #b72d1f;
		color: #fff;
	}

	.blockWrap_home
	{
		position: relative;
	}

	.whatToExpectContentWrap_inner > div
	{
		margin-bottom: 30px;
	}

	/* Prelaoder */
	#preloader {
	  position: fixed;
	  left: 0;
	  top: 0;
	  z-index: 9999999;
	  width: 100%;
	  height: 100%;
	  overflow: visible;
	  background: #fff url("/images/preloader.svg") no-repeat center center;
	}

	.whatToExpectHeaderWrap h4
	{
		font-size: 26px;
		font-weight: 400;
	}

	.whatToExpectHeaderWrap strong
	{
		display: block;
		margin-top: 5px;
	}

	.processHeaderWrap
	{
		font-size: 24px;
	}

	.process_headerUnderLine
	{
		margin: 10px 0;
	}

	.process_middle_text_header, .process_middle_text_mobile_header
	{
		position: relative;
		font-size: 26px;
		font-weight: 400;
			margin-bottom: 35px;
	}

	.process_middle_text_header b, .process_middle_text_mobile_header b
	{


	}

	.process_middle_text_header span, .process_middle_text_mobile_header span
	{
		position: relative;
		z-index: 9;
	}

	.process_middle_text_mobile_header_watermark
	{
		position: absolute !important;
		top: -40px;
		left: 0;
		right: 0;
		bottom: 0;
		font-size: 120px;
		z-index: 8 !important;
		color: rgba(99, 99, 99, 0.15);
		text-align: center;
	}

	.blockWrap_subPage_null
	{
		cursor: auto;
	}

	.blockWrap_subPage_null:after
	{
		background: none !important;
	}

	.lb-data .lb-close
	{
		margin-bottom: 10px;
	}

	.goBackBtnWrap a:hover
	{
		background:none;
	}

	.alignWaterMarkInCenter
	{
		right: 0;
		left: 0;
		text-align: center;
	}

	.testimonials_author
	{
		color: #f00;
		font-weight: bold;
	}

	.navbar-brand_mobile
	{
		display: none;
	}

	.headerContactNoDesktop p, .headerContactNoDesktop a
	{
		color: #414b4d;
	}

	.headerNews .pageTitleWrap_all
	{
		display: -webkit-box;      /* OLD - iOS 6-, Safari 3.1-6 */
	  display: -moz-box;         /* OLD - Firefox 19- (buggy but mostly works) */
	  display: -ms-flexbox;      /* TWEENER - IE 10 */
	  display: -webkit-flex;     /* NEW - Chrome */
	  display: flex;

		justify-content: center;
		-webkit-justify-content: center;
		align-items: center;
		-webkit-align-items: center;
	}

	.headerNews .pageTitleWrapInner_all
	{
		position: relative;
	}

	.headerNews .pageTitleWrapInner_all .pageTitleWaterMark_all
	{
		left: -10px;
		right: 0;
	}

	.timeLine_header
	{


	}

	.mfp-close
	{
		top: -18px !important;
		width: auto !important;
		right: -4px !important;
	}

	.form-control
	{
		color: #000;
	}

	#introFormOne input, #introFormTwo input
	{
		padding: 6px 12px;
		font-size: 14px;
	}

	.formMarginLeft
	{
		margin-left: 15px !important;
	}

	.researchAndDevelopmentWrap
	{
		position: absolute !important;
		top: -80px;
		text-align: center;
	}

	.researchAndDevelopmentWrap div
	{
		font-size: 26px;
		font-weight: 400;

	}

	.bannerArrowDown {
		position: absolute;
		color: #fff;
		font-size: 30px;
		text-align: center;
		left: 0;
		right: 0;
		bottom: -25px;

		display: flex;
		display: -webkit-flex;
		justify-content: center;
		-webkit-justify-content: center;

		z-index: 99999999;
	}

	.bannerArrowDown img
	{
		width: auto;
	}

	.headerMenuAndLogoWrap
	{
		/*display: flex;
		display: -webkit-flex;
		-webkit-justify-content: space-between;
		justify-content: space-between;*/
		align-items: center;
		-webkit-align-items: center;
	}

	.popover
	{
		max-width: initial;
	}

	.menuTitleOnBanner
	{
		position: absolute;
		left: 0;
		right: 0;
		text-align: center;
		color: #fff;

		top:50%;

		-ms-transform: translateY(-50%); /* IE 9 */
		-webkit-transform: translateY(-50%); /* Safari 3-8 */
		transform: translateY(-50%);
	}

	.menuTitleOnBanner h1
	{
		color: #fff;
		font-size: 40px;
		text-transform: uppercase;

	}

	.contactPageHeaderWrap, #faqs,
	.connectWithUs_contactPage .aDivWrap,
	.subPagesOthers,
	.clientImagesWrap
	{
		display: flex;
		display: -webkit-flex;
		justify-content: space-between;
		-webkit-justify-content: space-between;
	}

	.contactPageHeaderWrap,
	.connectWithUs_contactPage .aDivWrap,
	.navbar-header,
	.contactFormQuestionairs > div
	{
		align-items: center;
		-webkit-align-items: center;
	}
	.navbar-header,
	.homePageContentServicesWrap,
	.contactFormQuestionairs > div
	{
		display: flex;
		display: -webkit-flex;
	}

	.contactPageInfoBtnsWrap
	{
		text-align: center;
		margin-top: 20px;
	}

	.contactPageHeaderWrap
	{
		margin-bottom: 10px;
	}

	.contactPageInfoBtnsWrap a:first-child
	{
		margin-right: 10px;
	}

	.contactPage_contactDetailsWrap
	{
		width: 100%;
	}

	.contactFormQuestionairs > div
	{
		margin-top: 10px;
	}

	.contactFormQuestionairs input
	{
		text-align: center;
	}

	.contactUsForm,
	.contactPageUnderBoookForm
	{
		color: #fff !important;
	}

	.contactPageUnderBoookForm
	{
		text-align: center;
	}

	.contactPageUnderBoookForm hr
	{
		width: 100px;
	}
	.subMenuBGwhite
	{
		background: #FFF;
		border:none;
	}

	.contactPageInfoBtnsWrap a:hover
	{
		color: #fff;
	}

	.contactPageHeaderWrap a
	{
		background: #ac1127;
		color: #fff !important;
	}

	.contactPageHeaderWrap a:hover
	{
		background: #fff;
		color: #ac1127 !important;
	}

	.popover
	{
		opacity: 0.9 !important;
		border-radius: 0;
	}

	.nice-select:after
	{
		width: 10px;
		height: 10px;
	}
	#nav-icon1, #nav-icon2, #nav-icon3, #nav-icon4-desktop
	{
		width: 28px;
		height: 23px;
		position: relative;
		-webkit-transform: rotate(0deg);
		-moz-transform: rotate(0deg);
		-o-transform: rotate(0deg);
		transform: rotate(0deg);
		-webkit-transition: .5s ease-in-out;
		-moz-transition: .5s ease-in-out;
		-o-transition: .5s ease-in-out;
		transition: .5s ease-in-out;
		cursor: pointer;
		float: right;
		margin: 0;
	}

	#nav-icon1 span, #nav-icon3 span, #nav-icon4-desktop span {
		display: block;
		position: absolute;
		height: 2px;
		width: 100%;
		background: #fff;
		/* border-radius: 9px; */
		opacity: 1;
		right: 0;
		-webkit-transform: rotate(0deg);
		-moz-transform: rotate(0deg);
		-o-transform: rotate(0deg);
		transform: rotate(0deg);
		-webkit-transition: .25s ease-in-out;
		-moz-transition: .25s ease-in-out;
		-o-transition: .25s ease-in-out;
		transition: .25s ease-in-out;
	}

	#nav-icon4-desktop span:nth-child(1) {
		top: 0px;
		-webkit-transform-origin: left center;
		-moz-transform-origin: left center;
		-o-transform-origin: left center;
		transform-origin: left center;
		width: 80%;
	}

	#nav-icon4-desktop span:nth-child(2) {
		top: 9px;
		-webkit-transform-origin: left center;
		-moz-transform-origin: left center;
		-o-transform-origin: left center;
		transform-origin: left center;
	}

	#nav-icon4-desktop span:nth-child(3) {
		top: 18px;
		-webkit-transform-origin: left center;
		-moz-transform-origin: left center;
		-o-transform-origin: left center;
		transform-origin: left center;
		width: 80%;
	}

	#nav-icon4-desktop.open span
	{
		left: 0;
		right: unset;
		width: 100% !important;
	}

	#nav-icon4-desktop.open span:nth-child(1) {
		  -webkit-transform: rotate(45deg);
		  -moz-transform: rotate(45deg);
		  -o-transform: rotate(45deg);
		  transform: rotate(45deg);
		  top: -1.5px;
		  left: 4.45px;
		  background: #fff;
		}

		#nav-icon4-desktop.open span:nth-child(2) {
		  width: 0%;
		  opacity: 0;
		}

		#nav-icon4-desktop.open span:nth-child(3) {
		  -webkit-transform: rotate(-45deg);
		  -moz-transform: rotate(-45deg);
		  -o-transform: rotate(-45deg);
		  transform: rotate(-45deg);
		  top: 18.5px;
		  left: 4px;
		  background: #fff;
		}

	
	#faqs > div
	{
		width: 100%;
	}

/***********
  SERVICES
***********/

#servicesIndexContainer
{
	display:flex;
	flex-direction:row;
	flex-wrap: wrap;
	margin-top:90px;
	font-weight:bold;
}
#servicesIndexContainer > div > h2
{
	color:#FBAC18;
	font-size:20px;
	margin-bottom:35px;
}
#servicesDetailMainContentContainer
{
	display:flex;
	flex-direction:row;
}
#servicesDetailMainContentContainer > div:first-child
{
	width:60%;
}
#servicesDetailMainContentContainer > div:nth-child(2)
{
	width:40%;
	text-align:right;
}
#servicesIndexContainer > a
{
	width:50%;
	color:#41586E;
}
#servicesIndexContainer > a:hover
{
	color:#FBAC18;
}
#servicesIndexContainer > a > div
{
	display:flex;
	flex-direction:row;
	align-items:center;
	padding-bottom:15px;
	font-size:16px;
}
#servicesIndexContainer > a > div > div:first-child
{
	padding-right:20px;
}
#servicesDetailMainImage
{
	margin:90px 0 30px 0;
}
#servicesDetailMainImage img
{
	width:100%;
}

	.readMoreBtnWrap
	{
		text-align: center;
		z-index: 999;
	}

	.homePageContentTop_text
	{
	  width: 600px;
	  background: #ac1127;
	  padding: 30px;
	  color: #ffffff;
	  position: absolute;
	  top: -300px;
	  left: -500px;
	  text-align: left;
	}

	.homePageContentTop_img
	{
	  width: 100%;
	  text-align: right;
	  position: relative;
	}

	.homePageContentTop_img > div
	{
	  width: 500px;
	  display: inline-block;
	  position: relative;
	}

	.homePageContentTop_img img
	{
	  width: 100%;
	}

	.homePageContentDesignWrap
	{
	  position: relative;
	  margin-top: 100px;
	  margin-bottom: 80px;
	}

	.homePageContentBottomBox
	{
	  width: 600px;
	  height: 500px;
	  /*border-top: 1px solid #000000;
	  border-right: 1px solid #000000;*/
	  position: absolute;
	  bottom: -330px;
	  right: 0;
	  z-index: 8;
	}

	.homePageContentLeftBox
	{
	  width: 100%;
	  height: 100%;
	  /*border-top: 1px solid #000000;
	  border-bottom: 1px solid #000000;
	  border-left: 1px solid #000000;*/
	  position: absolute;
	  top: 80px;
	  /*left: -40px;*/
	  z-index: 8;
	}

	.homePageContentTopWrap, .homePageContentServicesWrap
	{
	  position: relative;
	  z-index: 9;
	}

	.defaultContentWrapInner
	{
		text-align: left;
	}

	.contactFormQuestionairs_label
	{
		/*margin-left: 20px;*/
	}

	.contactPageContactFormHeaderWrap hr, .contactUsForm hr
	{
		border-color: #ac1127;
	}

	.contactPageContactFormHeaderWrap hr
	{
		width: 150px;
		border-width: 2px;
	}

	::-webkit-input-placeholder { /* Chrome/Opera/Safari */
	  color: var(--default_grey_med) !important;
	}
	::-moz-placeholder { /* Firefox 19+ */
	  color: var(--default_grey_med) !important;
	}
	:-ms-input-placeholder { /* IE 10+ */
	  color: var(--default_grey_med) !important;
	}
	:-moz-placeholder { /* Firefox 18- */
	  color: var(--default_grey_med) !important;
	}

	.services_div_home_wrap
	{
		color: #fff;
		position: absolute;
		bottom: 10px;
		left: 10px;
	}
	.defaultPageTitle hr
	{
		border-width: 2px;
		border-color: #ac1127;
		width: 100px;
	}
	.extraMarginAboveMainContent
	{
		margin-top:80px;
	}
	.bannerHeight40VH .bannerTextWrap
	{
		/*justify-content: center;
		-webkit-justify-content: center;*/
			padding-left: 0;
	}

	.bannerHeight100VH
	{
		height: 100%;
	}

	.bannerWrapWithBgImg
	{
		background-repeat:no-repeat;
		background-position:left;
	}

	.logoOnHeader img
	{
	    /*height: 65px;*/
		width:auto;
	}

	.logoOnHeaderHide
	{
		display: none;
	}


	.servicesSectionWrap
	{
		/*background-image: url('/images/library/serviceParallaxImg.jpg');
		background-position: center;
		background-size: cover;
		background-attachment: fixed;

		background-repeat: no-repeat;

		-webkit-background-size: 100% auto;
		-moz-background-size: 100% auto;
		-ms-background-size: 100% auto;
		-o-background-size: 100% auto;
		background-size: 100% auto;*/

		position: relative;
	}
	/*
	.servicesSectionWrap:before
	{
		content: '';
		position: absolute;
		left: 0;
		top: 0;
		width: 100%;
		height: 100%;
		background: rgba(255, 255, 255, 0.85);
		z-index: 8;
	}*/

	.servicesSectionWrap .container
	{
		position: relative;
		z-index: 9;
	}

	.services_div_home_wrap h1
	{

		font-weight: 400;
	}

	.defaultPageTitle hr
	{
		margin-top: 10px;
		margin-bottom: 20px;
	}

	.defaultPageTitle img
	{
		margin-bottom: 30px;
	}

	.defaultPageTitle h1
	{
		font-size: 30px;
		margin-bottom: 30px;
		background-image:url('/images/library/lineUnderMainHeadings.png');
		background-repeat:no-repeat;
		background-position:left bottom;
		padding-bottom:25px;
		font-weight:100;
		margin-top:0;
	}

	.btn-default-reverse
	{
		color: #FFF;
		border-color: #FFF;
		border-radius:0;
		border: 1pt solid #FFF;
		padding:8px 30px;
		display:inline-block;
		white-space: nowrap;
		cursor:pointer;
	}
	.btn-default-reverse:hover
	{
		color: #FFF;
		border-color: #000;
		border-radius:0;
		border: 1pt solid #000;
		padding:8px 30px;
		display:inline-block;
		white-space: nowrap;
		cursor:pointer;
		background-color:#000 !important;
	}
	#in_the_media_outer .btn-default
	{
	    display: inline;
	}
	#aboutPageOuter > div > img
	{
		margin-bottom:35px;
	}
	.btn-default_reverse
	{
		color:#FFF;
		border-color:#FFF;
		border-radius:0;
		background-color:transparent;
		padding:8px 30px;
		border: 1pt solid #FFF;
		white-space: nowrap;
		display:inline-block;
	}
	/*
	.hideBrief_services
	{
		display: none;
	}*/

	.readMoreBtnWrap button
	{
		border-color: #fff;
		color: #fff;
		border-width: 2px;
		padding: 6px 30px;
	}

	.btn
	{
		font-size: 18px;
		border-radius: 0;
	}

	.goBackBtnWrap a
	{
		border-width: 2px;
	}

	.contactPage
	{
		text-align: left;
	}

	.contactPage hr
	{
		width: 150px;
		border-width: 2px;
		border-color: #ac1127;
		margin-left: 0;
		margin-right: 0;
	}

	.btn-default:hover
	{
		color:#FFF !important;
		background-color:#000 !important;
		border:1pt solid #000 !important;
	}
/*


	.lb-nav a.lb-prev, .lb-nav a.lb-next
	{
		background-size: 20%;
		width: 150px;
	}

	.nice-select
	{
		font-size: 16px;
	}

	.pretty .state label:before
	{
		border-color: #fff;
	}

	.pretty.p-default input:checked ~ .state label:after {
		background-color: #fff !important;
	}

	.homePageContentLeftBoxSVG
	{
		width: 100%;
		height: 120%;
	}

	.homePageContentLeftBoxSVG2
	{
		width: 560px;
		height: 510px;
		position: absolute;
		right: 0;
	}
	.whatTypeHeader_contact h4, .contactFormQuestionairs h4, .contactUsFormLeft span
	{
		margin: 0;
		font-weight: 400;
	}

	.contactUsFormLeft span
	{
		display: block;
		margin-bottom: 3px;
	}

	.findoutMoreBtnBannerWrap a:hover
	{
		background: #fff;
		color: #ac1127;
		border-color: #fff;
	}
	.findoutMoreBtnBannerWrap a
	{
		font-size: 17px;
		outline: none;
	}

	.bannerWrapWithBgImg
	{
		cursor: auto;
	}
*/
	.aDivWrap > div
	{
		width: 50%;
	}

	.faqHeader h1
	{
		font-weight: 400;
	}


	.headerPhoneNumberWrap a
	{
		color: #ac1127 !important;
		font-weight: bold;
		font-size: 24px;
		cursor: auto !important;
	}

	.homePageBlockLinksOuterWrap
	{
		display: flex;
		display: -webkit-flex;
		justify-content: center;
		-webkit-justify-content: center;

		background-image: url('/images/library/homeImage_LinkBg.jpg');
		background-size: cover;
		background-position: center;
		background-repeat: no-repeat;
		position: relative;

		background-attachment: fixed;
	  -webkit-background-size: 100% auto;
	  -moz-background-size: 100% auto;
	  -ms-background-size: 100% auto;
	  -o-background-size: 100% auto;
	  background-size: 100% auto;
	}

	.homePageClientWrapOuter, .homePageClientWrapOuterExternal
	{
		display: flex;
		display: -webkit-flex;
		justify-content: center;
		-webkit-justify-content: center;
	}

	.homePageClientWrapOuterExternal
	{
		flex-direction: column;
		-webkit-flex-direction: column;
		text-align: center;
	}

	.homePageBlockLinksOuterWrap:after
	{
		content: '';
		position: absolute;
		width: 100%;
		height: 100%;
		left: 0;
		right: 0;
		background: rgba(0, 84, 135, 0.85);
		z-index: 1;
	}

	.homePageBlockLinksOuterWrap > div
	{
		padding: 110px 0;
		position: relative;
		z-index: 2;
	}

	.homePageBlockLinksWrap, .homePageClientWrap
	{
		display: flex;
		display: -webkit-flex;
		justify-content: space-between;
		-webkit-justify-content: space-between;
	}

	.homePageClientWrap
	{
		align-items: center;
		-webkit-align-items: center;
		width: 80%;
	}

	.homePageClientWrap > div
	{
		width: 33.33%;
	}

	.homePageClientWrap img
	{
		max-width: 80%;
		max-height: 150px;
	}

	.homePageClientWrap > div:nth-child(2n+2)
	{
		margin: 0 15px;
	}

	.homePageBlockLinksWrap > a
	{
		display: flex;
		display: -webkit-flex;
		flex-direction: column;
		-webkit-flex-direction: column;
		justify-content: center;
		-webkit-justify-content: center;
		align-items: center;
		-webkit-align-items: center;
		color: #fff;
	}

	.homePageBlockLinksHeaderBlurb
	{
		color: #fff;
		text-align: center;
	}

	.homePageBlockLinksHeaderBlurbWrap
	{
		margin-bottom: 60px;
	}

	.homePageImageAndTextWrap
	{
		/*margin-bottom: 60px;*/
		padding-top: 50px;
		/*padding-bottom: 50px;*/
	}

	.homePageImageAndTextInnerWrap
	{
		display: flex;
		display: -webkit-flex;
		justify-content: center;
		-webkit-justify-content: center;
		align-items: center;
		-webkit-align-items: center;
	}

	.homePageImageAndTextInnerImgWrap img
	{
		margin-left: -400px;
	}

	.contactPageContactFormWrap > .container
	{
		padding: 45px;
		/*box-shadow: 0 7px 10px -1px #525252;*/
	}

	.contactPageContactFormWrap_outer
	{
		position: relative;
		top: 60px;
		z-index: 5;
	}

	.contactPageMapWrap
	{
		position: relative;
		z-index: 4;
	}

	.contactFormSection
	{
		padding-top: 0;
		/*margin-top: -150px;*/
	}

	.bookingFormAlternativeText
	{
		margin-top: 40px;
	}

	.bookingFormAlternativeText h1
	{
		color: #fff;
		text-align: center;
		font-size: 20px;
	}

	.homePageImageAndTextInnerTextWrap_rotate
	{
		display: block;
		float: left;
		transform: rotate(8deg);
		-webkit-shape-outside: polygon( 0 0, 100% 0%, -8% 100%, -106% 100%);
		shape-outside: polygon( 0 0, 100% 0%, -8% 100%, -106% 100%);
		width: 50px;
		height: 400px;
	}

	.testimonialsWrapOuter
	{
		background-image: url('/images/library/testimonialBg.jpg');
		background-repeat: no-repeat;
		background-size: cover;
		background-position: center;

		padding: 60px 0;
		position: relative;

		background-attachment: fixed;
	  -webkit-background-size: 100% auto;
	  -moz-background-size: 100% auto;
	  -ms-background-size: 100% auto;
	  -o-background-size: 100% auto;
	  background-size: 100% auto;
	}

	.testimonialsWrapOuter:before
	{
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: rgba(0, 84, 135, 0.88);
		z-index: 4;
	}

	.testimonialsWrap
	{
		position: relative;
		z-index: 5;
	}

	.testimonialsInnerWrap_inde
	{
		display: flex;
		display: -webkit-flex;
		flex-direction: column;
		-webkit-flex-direction: column;
		justify-content: center;
		-webkit-justify-content: center;
		align-items: center;
		-webkit-align-items: center;
		text-align: center;
		color: #fff;
		width: 80%;
		margin: 0 auto;
		position: relative;
		z-index: 5;
	}

	.testimonialSectionWrap
	{
		padding-bottom: 0 !important;
	}

	.testimonialAuthorTitleWrap h3
	{
		margin-top: 0;
		font-size: 19px;
	}

	.testimonialAuthorNameWrap h3
	{
		margin-bottom: 0;
		font-size: 19px;
	}

	.subDifferencesWrap, .subDifferencesWrap > a
	{
		display: flex;
		display: -webkit-flex;
	}

	.subDifferencesWrap > a
	{
		flex-direction: column;
		-webkit-flex-direction: column;
		justify-content: center;
		-webkit-justify-content: center;
		align-items: center;
		-webkit-align-items: center;
	}

	.subDifferencesWrap img
	{
		min-height: 80px;
	}

	.subDifferencesWrap > a:first-child
	{
		margin-right: 60px;
	}

	.serviceIndeWrap
	{
		margin-bottom: 30px;
	}

	.serviceIndeWrap:after
	{
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		/*background: rgba(0, 84, 135, 0.88);*/
		z-index: 4;
	}

	.serviceIndeWrap div
	{
		position: relative;
		z-index: 5;

		display: flex;
		display: -webkit-flex;

		align-items: center;
		-webkit-align-items: center;
		justify-content: space-between;
		-webkit-justify-content: space-between;

		width: 100%;
	}

	.bannerBtn_differnce
	{
		border-radius: 0;
		background: #ac1127;
		color: #fff;
		padding: 8px 35px 11px 35px !important;
		border-color: #ac1127;
		border-radius: 15px;
	}

	.serviceIndeWrap_subPage_wrap
	{
		display: flex;
		display: -webkit-flex;
		flex-wrap: wrap;
		-webkit-flex-wrap: wrap;
	}

	.serviceIndeWrap_subPage_wrap > a
	{
		width:25%;
	}
	.serviceIndeWrap_subPage_wrap > a > div
	{
		width: 100%;
		/*padding: 20px;*/
		display: flex;
		display: -webkit-flex;
		background-size:100% auto;
		background-repeat:no-repeat;
		min-height:200px;
		background-position: center;

	}
	.serviceIndeWrap_subPage_wrap > a
	{
		margin-right: 12.5%;
	}

	.serviceIndeWrap_subPage_wrap > a:nth-child(3n+3)
	{
		margin-right: 0;
	}

	.mobileMenuBgHeight
	{
	  height: initial !important;
	}

	.articleHome_inner p img
	{
		max-width: 100%;
	}

	.showTextField_textarea_wrap
	{
		padding-left: 35px;
	}

	.showTextField_textarea_wrap input
	{
		width: 300px !important;
		text-align: left;
	}

	.bannerTextLine p
	{
		display: flex;
		display: -webkit-flex;
		line-height:1.1;
	}

	.ourClients_ourWork
	{
		margin-bottom: 60px;
	}

	.alsoSee_complianceNswLegislation_more_header_wrap h1
	{
		margin: 30px 0;
	}

	.homePageBlockLinksWrap h2
	{
		margin-bottom: 0;
	}

	.clientsLogosWrapHomePage
	{
		padding-top: 50px;
		padding-bottom: 50px;
	}

	.bookingForm span
	{
		display: block;
		margin-bottom: 3px;
	}

	.bannerTextLine strong
	{
		display: flex;
		display: -webkit-flex;
		align-items: center;
		-webkit-align-items: center;
	}

	.bannerTextLine img
	{
		margin-right: 10px;
		position: relative;
		top: -5px;
	}

	.subDifferencesWrap a
	{
		color: #005487;
	}

	.subDifferencesWrap h3
	{
		font-size: 16px;
	}

	.pretty .state label:before, .pretty .state label:after
	{
		border-radius: 5px;
	}

	.servicesSectionWrap
	{
		padding-top: 0;
	}

	#servicesLogoHeader
	{
		padding-bottom:65px;
	}
	#servicesLogoHeader img
	{
		/*min-height:80px;*/
	}

	.serviceIndeTitleWrap h4 *
	{
		font-size: 18px !important;
	}

	.serviceIndeTitleWrap p
	{
		padding: 0 !important;
		margin: 0 !important;
	}

	.servicesOthersSection
	{
	  padding-top: 0 !important;
	  padding-bottom: 15px !important;
	}

	.serviceIndeWrap
	{
	  cursor: pointer;
	}

	.loaderInnerWrap
	{
	  display: flex;
	  display: -webkit-flex;
	  justify-content: center;
	  -webkit-justify-content: center;
	  align-items: center;
	  -webkit-align-items: center;
	  width: 100%;
	  height: 100%;
	  position: absolute;
	  top: 0;
	  left: 0;
	}

	.loaderWrap
	{
	  position: fixed;
	  background: rgba(0, 0, 0, 0.7);
	  width: 100%;
	  height: 100%;
	  left: 0;
	  top: 0;
	  color: #fff;
	  z-index: 999;
	  display: none;
	}

	#servicesExtraBannerTextContainer_outer,#servicesExtraBannerTextText_outer,#servicesExtraBannerTextTextHeading_outer
	{
		position:absolute;
		width:100%;
	}
	#servicesExtraBannerTextTextHeading_outer
	{
		max-width:1170px;
		position:relative;
		margin:0 auto;
		height:10px;
	}
	#servicesExtraBannerTextTextHeading
	{
		position:relative;
		z-index: 997;
		top: -105px;
		background: #ac1127;
		color:#FFF;
		min-height:10px;
		display:inline-block;
		white-space: nowrap;
		padding:5px 15px;
		max-width:1170px;
	}
	#servicesExtraBannerTextText_outer
	{
		display:inline-flex;
		justify-content: center;
		align-items: center;
		min-height:180px;
	}
	#servicesExtraBannerText_inner
	{
		position:relative;
		z-index: 997;
		top: -90px;
		color:#FFF;
		width:1170px;
		margin:0 auto;
		display:inline-block;
		vertical-align: middle;
		left:-20vw;
		width:calc(1170px - 45vw);
		min-width:300px;
	}
	#servicesExtraBannerText_inner p
	{
		white-space: nowrap;
	}
	#servicesExtraBannerText_inner p:nth-child(3)
	{
		margin-top:25px;
	}
	#servicesExtraBannerText_slantBackground
	{
		/*background-color:#004c7e;*/
		min-height:200px;
		width:44vw;
		position:relative;
		z-index: 997;
		top: -90px;
		color:#FFF;
	}
	#servicesExtraBannerText_slantBackground:before
	{
		content:"";
		position:absolute;
		top:0;
		bottom:0;
		left:-35px;
		width:100%;
		background:#004c7e;
		transform:skew(-20deg);
	}
	#servicesExtraBannerTextTextHeading_outer
	{
		max-width: 1100px;
	}

/**********
  BUTTONS
**********/

.btn-std
{
	border-radius: 0;
	background: #FFF;
    color: #000;
    padding: 8px 35px 11px 35px !important;
	border-color: #000;
	white-space: nowrap;
    border: 1pt solid #000;
}
.btn-std-red
{
	border-radius: 0;
	background: #FFF;
    color: #a0213a;
    padding: 8px 35px 11px 35px !important;
	border-color: #a0213a;
}
.btn-std-red a
{
	color:#a0213a;
	text-decoration:none;
	border-bottom:none;
}
.btn-std-red_inverse
{
	border-radius: 0;
	background: #a0213a;
    color: #FFF;
    padding: 8px 35px 11px 35px !important;
	border-color: #a0213a;
}
.btn-std-red_inverse a
{
	color:#FFF;
	text-decoration:none;
	border-bottom:none;
}
.btn-std-yellow
{
	border-radius: 0;
	background: #FFF;
    color: #ffb95c;
    padding: 8px 35px 11px 35px !important;
	border-color: #FFF;
}
.btn-std-yellow a
{
	color:#ffb95c;
	text-decoration:none;
	border-bottom:none;
}
.btn-std-yellow_inverse
{
	border-radius: 0;
	background: #ffb95c;
    color: #FFF;
    padding: 8px 35px 11px 35px !important;
	border-color: #ffb95c;
}
.btn-std-yellow_inverse a
{
	color:#FFF;
	text-decoration:none;
	border-bottom:none;
}
.btn-std-blue
{
	border-radius: 0;
	background: #FFF;
    color: #125a9a;
    padding: 8px 35px 11px 35px !important;
	border-color: #FFF;
}
.btn-std-blue a
{
	color:#125a9a;
	text-decoration:none;
	border-bottom:none;
}
.btn-std-blue_inverse
{
	border-radius: 0;
	background: #125a9a;
    color: #FFF;
    padding: 8px 35px 11px 35px !important;
	border-color: #125a9a;
}
.btn-std-blue_inverse a
{
	color:#FFF;
	text-decoration:none;
	border-bottom:none;
}



			.toggleSubSubMenuDisplayBlock
			{
				display:none !important;
			}
			.iWouldLikeTo .nice-select
			{
				min-width: 280px !important;
				margin-left:10px;
				border-radius:0;
				border:1pt solid #000;
			}
			.iWouldLikeTo
			{
				width:100%;
				font-size:24px;
				font-weight:normal;
				display: flex;
				align-items: center;
				padding-top:20px;
				/*justify-content: center;*/
			}
			.iWouldLikeTo > div
			{

			}
			#homePageContent,#expertPageContent
			{
				display:flex;
			}
			#expertPageContent
			{
				align-items: center;
			}
			.expertPageContent > .aDivWrap
			{
				align-items: flex-start;
			}
			#homePageContent_leftText,#expertPageContent_leftText
			{
				width:50%;
			    padding-right: 45px;
			}
			#homePageContent_rightImage,#expertPageContent_rightImage
			{
				width:50%;
				background-image:url('/images/library/homePage.png');
				background-size:cover;
				background-position:center center;
				min-height: 35vw;
			}
			#expertPageContent_rightImage
			{
				background-image:url('/images/library/expertisePage.png');
			}
	#headerSocialMedia
	{
		position:absolute;
		text-align: right;
		width: 100%;
		float: right;
		top:75px;
	    z-index: 9;
	}
	#headerSocialMedia div
	{
		display:inline-block;
	}

	.titleLineUnder
	{
		position:absolute;
		width:60px;
		height:10px;
		-ms-transform: skewY(8deg); /* IE 9 */
		-webkit-transform: skewY(8deg); /* Safari 3-8 */
		transform: skewY(8deg);
	}
	.titleLineUnder_outer
	{
		padding-top:14px;
		padding-bottom:50px;
	}
	.expertPageContent_main_subContentTitle
	{

	}
	#expertPageContent_main,#expertPageDetailContent,#contactPageContent
	{
		display: flex;
		flex-direction: row;
		justify-content: center;
		-webkit-justify-content: center;
		align-items: center;
		-webkit-align-items: center;
		padding-top:100px;
	}
	#expertPageDetailContent
	{
		padding-top:0;
	}
	#expertPageDetailContent_leftText,#contactPageDetailContent_leftText
	{
		width:40%;
		padding-right:40px;
	}
	#expertPageDetailContent_rightImage,#expertPageContent_main_leftImage,#contactPageDetailContent_rightImage
	{
		width:60%;
		min-height:35vw;
		background-size:cover;
		background-position:bottom right;
		background-repeat:no-repeat;
	}
	#expertPageContent_main_rightText,#expertPageContent_main_leftImage
	{
		width:50%;
	}
	#expertPageContent_main_rightText
	{
		padding-left:60px;
	}
	#expertPageContent_main_btnContact_mobile
	{
		display:none;
	}

/***************
  HOME BLOCKS
**************/

	#homeBlocks_outer
	{
		flex-wrap: wrap;
		display: flex;
		flex-direction: row;
		margin-top:100px;
		font-size:18px;
	}
	#homeBlocks_outer > div
	{
		width:31.3%;
		margin-right: 3%;
	    border: 1pt solid #EDEDED;
		margin-bottom: 30px;
		cursor:pointer;
	}
	.grow:hover
	{
		transform: scale(1.1);
	}
	.grow
	{
		transition: all 0.5s ease-in-out;
	}
	#homeBlocks_outer > div:last-child
	{
		margin-right:0;
	}
	#homeBlocks_outer > div > div:first-child
	{
		width:100%;
		height:250px;
	}
	#homeBlocks_outer > div > div:nth-child(2)
	{
		width:100%;
		height:80px;
		padding:30px 15px 25px 15px;
		color:#333;
		font-weight:bold;
	}
	#homeBlocks_outer > div > div
	{
		background-size:cover;
		background-position:center center;
		background-repeat:no-repeat;
	}
	div#homeBlocks_outer div:first-child:hover > div:nth-child(2)
	{
		background-color:#538D67;
		color:#FFF !important;
	}
	div#homeBlocks_outer div:nth-child(2):hover > div:nth-child(2)
	{
		background-color:#FFB95C;
		color:#FFF !important;
	}
	div#homeBlocks_outer div:nth-child(3):hover > div:nth-child(2)
	{
		background-color:#A0213A;
		color:#FFF !important;
	}

	.bgBlue
	{
		background-color:#125A9A !important;
	}

	.bgGreen
	{
		background-color:#538D67 !important;
	}

	.bgYellow
	{
		background-color:#FFB95C !important;
	}

	.bgRed
	{
		background-color:#A0213A !important;
	}
	.textWhite
	{
		color:#FFF !important;
	}


.hideDesktop
{
	display:none;
}

/*************
  OUR VISION
**************/

	#ourVision_outer
	{
		background-color:#DCD7D5;
		padding-top:50px;
		padding-bottom:50px;
	}
	#ourVisionPageContent
	{
		display: flex;
		flex-direction: row;
		justify-content: center;
		-webkit-justify-content: center;
		align-items: center;
		-webkit-align-items: center;
	}
	#ourVisionPageContent_leftImage
	{
		width:40%;
	}
	#ourVisionPageContent_leftImage img
	{
		width:100%;
		height:auto;
	}
	#ourVisionPageContent_rightText
	{
		width: 60%;
	    padding-left: 45px;
	}
	#ourVisionPageContent_rightText img
	{
		height:60px;
	}
	#ourVisionPageContent_rightText p:first-child
	{
		font-size:30px;
	}

/*************
  PRESS START
*************/

	#pressOuter
	{
		display:flex;
		flex-direction:row;
		flex-wrap:wrap;
		justify-content: space-between;
		margin-top:70px;
	}
	#pressOuter > div
	{
		width:30%;
		margin-bottom:50px;
	}
	#pressOuter > div > div:nth-child(1)
	{
		height:180px;
		background-size:cover;
	}
	#pressOuter > div > div:nth-child(2),
	#pressOuter > div > div:nth-child(3),
	#pressOuter > div > div:nth-child(5)
	{
		color:#A9212E;
	}
	#pressOuter > div > div:nth-child(2)
	{
		margin-top:20px;
	}
	#pressOuter > div > div:nth-child(3)
	{
		margin-top:10px;
		font-family:Roboto-Bold;
		font-size:15px;
	}
	#pressOuter > div > div:nth-child(4)
	{
		margin-top:18px;
		margin-bottom:10px;
	}
	#pressOuter > div > div:nth-child(5),
	#pressOuter > div > div:nth-child(5) a
	{
		height:20px;
		color:#A9212E;
	}

/************
  PRESS END
*************/


	/* BOTTOM STRIP */

	#bottomExpertiseStrip_outer
	{
		background-color:#DCD7D5;
		padding-top:80px;
		padding-bottom:60px;
	}
	#bottomExpertiseStrip
	{
		display: flex;
		flex-direction: row;
		justify-content: center;
		-webkit-justify-content: center;
		align-items: center;
		-webkit-align-items: center;
		cursor:pointer;
	}
	.bottomExpertiseStripItem
	{
		width:30%;
		margin-right:2%;
	}
	.bottomExpertiseStripItem:last-child
	{
		margin-right:0;
	}
	.bottomExpertiseStripItemImage
	{
		background-size:cover;
		background-position:center center;
		background-repeat:no-repeat;
		min-height:190px;
	}
	.bottomExpertiseStripItemText
	{
		padding-top:10px;
		padding-bottom:10px;
		text-align:center;
		font-size:18px;
	}


/******
AWARDS
*******/
	#awardsOuter
	{
		display: flex;
		flex-wrap: wrap;
		display:flex;
		flex-direction:row;
		margin-bottom:50px;
	}
	.awardsImage
	{
		min-height:200px;
	}
	.awardsImage img
	{
		width:100%;
		height:auto;
	}
	.awardsContainer
	{
		width:31.3333%;
		margin-right: 3%;
		border:1pt solid #EDEDED;
		margin-bottom:30px;
	}
	#awardsOuter > div:nth-child(3n+3)
	{
		margin-right:0;
	}
	.awardsText
	{
		padding:20px;
		text-align:center;
		font-size:14px;
	}
	.awardsText p
	{
		margin:0;
	}

/***********
Testimonials
*************/
	#testimonialsOuter
	{
		margin-bottom:50px;
	}
	.testimonialsContainer
	{
		display: flex;
		align-items: center;
		justify-content: center;
		flex-wrap: wrap;
		flex-direction:row;
		margin-bottom:30px;
		border:1px solid #EDEDED;
	}
	.testimonialsImage
	{
		min-height:300px;
		background-repeat:no-repeat;
		background-size:cover;
		background-position:center center;
	}
	.testimonialsImage,.testimonialsText
	{
		width:50%;
	}
	.testimonialsText
	{
		padding:25px;
		/*border-top:1px solid #EDEDED;
		border-bottom:1px solid #EDEDED;
		border-right:1px solid #EDEDED;*/
	}

/****************
  PROJECT START
****************/
	#portfolioIndexOuter
	{
		display:flex;
		flex-direction:row;
	    flex-flow: wrap;
		justify-content:center;
		margin-bottom:40px;
	}
	#portfolioIndexOuter > div
	{
		width:40%;
		min-height:450px;
		cursor:pointer;
		margin-bottom:30px;
	}
	#portfolioIndexOuter > div:hover > a > div:first-child
	{
		-webkit-filter: grayscale(100%); /* Safari 6.0 - 9.0 */
		filter: grayscale(100%);
	}
	#portfolioIndexOuter > div:hover > a > .portfolioIndexItemImage > div
	{
		display:block;
	}
	#portfolioIndexOuter > div:nth-child(odd)
	{
		margin-right:5%;
	}
	#portfolioIndexOuter > div:nth-child(even)
	{
		margin-left:5%;
	}
	#portfolioIndexOuter > div > a > div:nth-child(2) > h2
	{
		color:#A9212E;
		font-size:26px !important;
	}
	#portfolioIndexOuter > div > a
	{
		color:#37393F;
	}
	.portfolioIndexItemImage
	{
		background-size:cover;
		height:300px;
		display:flex;
		align-items: center;
		justify-content: center;
	}
	.portfolioIndexItemImage > div
	{
		display:none;
		color:#FFF;
		text-decoration:underline;
	}
	#portfolioDetailDataOuter
	{
		position:relative;
		width:50%;
		box-shadow: 0 5px 20px rgba(0, 0, 0, 0.3);
		margin-top: -300px;
		float:left;
		background-color: #FFF;
	}
	#portfolioDetailDataInner
	{
		max-width:585px;
		float:right;
		position:relative;
		padding: 40px 40px 40px 0;
		background-color: #FFF;
	}
	#portfolioDetailDataInner h1
	{
		color:#A9212E;
		margin-bottom:20px;
	}
	.projectBannerText
	{
		/*margin-top:-300px;*/
	}
	.projectGallerySection
	{
		display:flex;
		flex-direction:row;
		align-items: center;
	    margin-top: 30px;
	    margin-bottom: 50px;
	}
	.projectGallerySection > div:first-child		/* NAV LINKS */
	{
		width:20px;
	}
	.projectGallerySection > div:last-child			/* GALLERY THUMBNAIL ICONS */
	{
		/*width:100% !important;*/
	}
	.projectGalleryRow
	{
		display:flex;
		flex-direction:row;
		width:100%;
	}
	.projectGalleryRow > a > div:nth-child(1)
	{
		margin:0 3%;
		background-repeat:no-repeat;
		background-size:cover;
		background-position:center center;
		position: relative;
	}
	.projectGalleryRow > div:first-child
	{
		margin:0 3% 0 0;
	}
	.projectGalleryRow > div:last-child
	{
		margin:0 0 0 3%;
	}
	.projectGallery_outer
	{
		padding-left:40px;
		padding-top:0;
		margin-top:0;
	}

	#projectIndexScrollerOuter
	{
		margin-top:5px;
		height:300px;
	}
	.projectIndexScrollerItem
	{
		height:300px;
		display:flex !important;
		flex-direction:row;
		justify-content:center;
		width:80% !important;
		max-width:970px !important;
		border-left:2px solid #FFF;
		border-right:2px solid #FFF;
	}
	#projectGalleryScrollerOuter
	{
		margin-bottom:60px;
	}
	.projectGalleryScrollerItem
	{
		height:330px;
		width:483px !important;
		max-width:483px !important;
		border-left:2px solid #FFF;
		border-right:2px solid #FFF;
		background-size:cover;
		background-position:center center;
		background-repeat:no-repeat;
	}
	.projectGalleryScrollerItemDoubleContainer
	{
		display:flex !important;
		flex-direction:row;
		width:970px !important;
		max-width:970px !important;
	}
	.projectIndexScrollerItem > div
	{
		width:50%;
	}
	.projectIndexScrollerItem > div:nth-child(1)
	{
		background-size:cover;
		background-position:center center;
		background-repeat:no-repeat;
	}
	.projectIndexScrollerItem > div:nth-child(2)
	{
		background-color:#A9212E;
		color:#FFF;
		padding:30px;
		display:flex !important;
		flex-direction:column;
	}
	.projectIndexScrollerItem > div > div:nth-child(3)
	{
		bottom:0;
		text-decoration:underline;
	}
	.projectIndexScrollerItem > div > div:nth-child(3) a
	{
		color:#FFF;
	}
	.projectIndexScrollerItem > div > div:nth-child(3) i
	{
		font-size:11px;
		margin-left:8px;
	}
	.projectIndexScrollerItem > div:nth-child(2) > div:nth-child(2)
	{
		margin-top:16px;
		height:100%;
	}
	.projectIndexScrollerItem > div:nth-child(2) > div:nth-child(2) > div:nth-child(1)
	{
		font-family:Roboto-Bold;
		font-size:25px;
	}
	.projectIndexScrollerItem > div:nth-child(2) > div:nth-child(2) > div:nth-child(2)
	{
		margin-top:5px;
	}
	.projectIndexScrollerItem > div:nth-child(2) > div:nth-child(2) > div:nth-child(3)
	{
		margin-top:5px;
	}
	.projectIndexScrollerNavArrows,
	.projectGalleryScrollerNavArrows
	{
		display:flex;
		flex-direction:row;
		justify-content:flex-end;
		max-width:970px;
	}
	.projectIndexScrollerNavArrows > div,
	.projectGalleryScrollerNavArrows > div
	{
		font-size:25px;
		color:rgba(169,33,46,1);
		margin-left:10px;
		font-family:Roboto-Regular;
		font-weight:normal;
		cursor:pointer;
	}
	.backToProject
	{
		text-align:center;
		margin-bottom:60px;
	}
	.backToProject i
	{
		margin-right:10px;
	}
	.backToProject a
	{
		text-decoration:underline;
		font-family:Roboto-Bold;
	}
	.lightboxOverlay
	{
		opacity:0.9;
	}
	.lb-nav a.lb-prev,
	.lb-nav a.lb-next
	{
		opacity:1;
		position:absolute;
	    background-size: 25px;
	}
	.lb-nav a.lb-prev
	{
	    left: -65px;
	}
	.lb-nav a.lb-next
	{
	    right: -65px;
	}
	.lb-data .lb-close
	{
		background-image:none;
		color:#FFF;
	    font-size: 20px;
		opacity:1;
	}
	.lb-data .lb-details
	{
		width:100%;
		float:unset;
		text-align:center;
		margin-top:20px;
		color:#FFF;
		max-width:80vw;
	}
	.lightbox .lb-image
	{
		border:none;
		border-radius:0;
		max-width:70vw;
	}
	.lb-data .lb-number
	{
		display:none !important;
	}
	.lb-closeContainer
	{
		top: 0;
		position: absolute !important;
		right:calc((100vw - 1170px) / 2);
		text-align: right;
	}
	.lb-outerContainer
	{
		max-width: 70vw;
		max-height: 70vw;
	}

/****************
  PROJECT END
****************/

	.btnMain
	{
		border: 2px solid orange;
		color: orange;
		padding: 10px 20px;
		font-weight: bold;
	}

	.btnMain:hover
	{
		background-color: orange;
		color: #fff;
	}

	.overlay
	{
		position: relative;
		z-index:999;
	}
	.overlay:before
	{
		position: absolute;
		content:" ";
		top:0;
		left:0;
		width:100%;
		height:100%;
		display: none;
		z-index:0;
		background-color:rgba(251,172,24,0.7);
	}
	.overlay:hover:before
	{
		display: block;
	}

/*
		.overlayWatermark
		{
			position: relative;
			z-index:999;
		}
		.overlayWatermark:before
		{
			position: absolute;
			content:" ";
			top:0;
			left:0;
			width:100%;
			height:100%;
			display: none;
			z-index:0;
			background-color:rgba(251,172,24,0.7);
			background-image:url('/images/library/watermark.png');
			background-size: auto 100%;
			background-position:right center;
			background-repeat:no-repeat;
		}
		.overlayWatermark:hover:before
		{
			display: block;
		}
		.overlayWatermark:hover .projectIndexTitle
		{
			color: #42576B;
		}
*/

/***************
  CONTACT PAGE
****************/

	.contactPageTitle h1
	{
		font-weight:normal;
	}
	.contactPageDetail_officeDetails
	{
		width:100%;
		display: flex;
		flex-direction: row;
		justify-content: center;
	}
	.contactPageDetail_SydneyOffice,.contactPageDetail_NewcastleOffice
	{
		width:50%;
	}
	.contactPageDetail_SydneyOffice div:first-child,.contactPageDetail_NewcastleOffice div:first-child
	{
		text-decoration:underline;
		margin-bottom:20px;
		font-weight:bold;
	}
	.contactPageDetail_SydneyOffice div:last-child,.contactPageDetail_NewcastleOffice div:last-child
	{
		margin-top:20px;
	}
	.contactPageDetail_emailAddress
	{
		font-size:20px;
		font-weight:bold;
		margin-bottom:40px;
	}
	.contactPageDetail_bottomSection
	{
		display: flex;
		align-items: flex-end;
		margin-top:60px;
	}
	.contactPageDetail_bottomSection > div
	{
		display:table-cell;
		vertical-align:bottom;
	}
	.contactPageDetail_bottomSection > div:first-child
	{
		width:50%;
		float:left;
	}
	.contactPageDetail_bottomSection > div:last-child
	{
		width:50%;
		float:right;
	}
	.contactPageDetail_socialMedia div
	{
		display:inline;
		margin-right:15px;
	}
	.contactPageDetail_bottomSection div:nth-child(2) div:nth-child(1)
	{
		font-weight:bold;
		font-size:20px;
		margin-bottom:15px;
	}
	.contactPageDetail_socialMedia div img
	{
		height:35px;
	}
	.contactPageDetail_bottomSection .btn-default
	{
		padding-left:14px;
		padding-right:14px;
		cursor:pointer;
	}
	#contactPageDetailContent_rightImage
	{
		min-height:500px;
	}

	.contactPageContactFormHeaderWrap
	{
		margin: 0 0 20px 0;
		color: #fff !important;
		text-align: center;
	}

	.contactFormSection
	{
		padding-bottom: 0;
	}

	.contactPageContactFormHeaderWrap h1
	{
		font-size: 28px;
		font-weight:normal;
		margin-top: 0;
	}
	.contactPageContactFormHeaderWrap
	{
		display: flex;
	    flex-direction: row;
	    align-items: center;
	}
	.contactPageContactFormHeaderWrap > div:first-child
	{
		margin-right:15px;
	}
	.contactPageContactFormHeaderWrap > div:first-child > img
	{
		height:65px;
		padding-bottom:5px;
	}
	.contactUsFormLeft > div:first-child > div
	{
		width:49.5%;
		display: inline-block;
		padding-right:15px;
	}
	.contactUsFormLeft > div:first-child > div:nth-child(3)
	{
		width:100%;
	}
	.contactUsFormLeft > div:first-child > div:last-child
	{
		width:100%;
		display: inline-block;
		padding-right:15px;
	}
	.checkboxSelected
	{
		background-color:#FFF;
	}


#danCustomLightbox_overlay
{
	display:none;
    position:fixed;
    height: 100%;
    width: 100%;
    z-index: 999999999;
    background-color: rgba(42, 39, 53,1);
}
#danCustomLightbox
{
	position:absolute;
	top: 0;
	left: 0;
	padding:20px;
	display:none;
	/*height:100vh;*/
	width:100vw;
	z-index:99999999999;
	background-color: rgba(42, 39, 53,1);
}
#danCustomLightbox .stepImg_lightbox
{
	text-align:center;
	padding:10px;
}
#danCustomLightbox h1
{
	text-align:center;
	padding-bottom:20px;
	font-size:24px !important;
	margin-top:0;
	margin-bottom:5px;
}
#danCustomLightbox p
{
	text-align:justify;
}
/*
#danCustomLightbox .stepLightboxContainer p:first-child,#danCustomLightbox .stepLightboxContainer p:nth-child(2)
{
	text-align:center;
	margin-bottom:20px;
	font-size:20px;
}
#danCustomLightbox .stepLightboxContainer p:first-child span
{
	font-size:20px !important;
}*/
.expertiseLightboxStepTitle
{
	font-size:20px !important;
	text-align:center;
	margin-bottom:30px;
}
#danCustomLightbox .squareButton
{
    background-color: transparent;
}
#danCustomLightbox .stepLightboxContainer p:nth-child(2) img
{
    width: 17vw;
    height: auto;
    margin-left: 100px;
    margin-right: 100px;
    margin-bottom: 40px;
}

#closeDanCustomLightbox {
	position: relative;
	float:right;
	right: 8px;
	top: 4px;
	width: 32px;
	height: 32px;
	color:#FFF !important;
	font-size:34px;
	font-weight:normal;
}

@media (min-width: 500px)
{
	.subMenuHasSubSubMenu:hover > .subSubMenu
	{
		display:block;
	}
}


#siteBy
{
	font-size:9px;
    text-align: right;
    padding-right: 10px;
}
.showServiceSubMenu
{
	display:block !important;
	    z-index: 99999999;
}

/***************
  SWEET ALERT
***************/

.swal2-popup
{
	width:40em;
	justify-content:unset;
	font-size:14px !important;
}
.swal2-content ul
{
	list-style: none;
    margin: 0;
    padding: 0;
}

.scrollDownBtnWrap
{
	position: absolute;
	bottom: 20px;
	z-index: 11;
	left: 0;
	right: 0;
}

.scrollDownBtnWrap_project
{
	position: absolute;
	bottom: 20px;
	font-size: 30px;
}

.clientMenuWrap_home ul
{
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	padding-left: 0;
	justify-content: space-between;
}

.clientMenuWrap_home ul > li > a
{
	display: block;
	width: 100%;
}

.clientMenuWrap_home ul > li
{
	width: 26%;
	margin-bottom: 20px;
	padding-left:20px;
	padding-right:20px;
}

.clientMenuWrap_home ul > li img
{
	width: 100%;
}

.installerIndeWrap hr
{
	border-color: #ccc;
}

.mt10
{
	margin-top: 10px;
}

.mb10
{
	margin-bottom: 10px;
}

.mt20
{
	margin-top: 20px;
}

.mb20
{
	margin-bottom: 20px;
}

.mt30
{
	margin-top: 30px;
}

.mb30
{
	margin-bottom: 30px;
}

.mt40
{
	margin-top: 40px;
}

.mb40
{
	margin-bottom: 40px;
}

.mb60
{
	margin-bottom: 60px;
}

.mt60
{
	margin-top: 60px;
}

.mt90
{
	margin-top: 90px;
}

.mb90
{
	margin-bottom: 90px;
}

.mt120
{
	margin-top: 120px;
}

.mb120
{
	margin-bottom: 120px;
}

.mt0
{
	margin-top: 0px;
}

.mb0
{
	margin-top: 0px;
}

.pb0
{
	padding-bottom: 0px;
}

.pt0
{
	padding-top: 0px;
}

.pt30
{
	padding-top: 30px;
}

.pb30
{
	padding-bottom: 30px;
}

.pt60
{
	padding-top: 60px;
}

.pb60
{
	padding-bottom: 60px;
}

.customFullStop
{
	display: inline-block;
	width: 10px;
	height: 10px;
	background: #174C60;
	border-radius: 100%;
}

.floatingHeaderSubPage
{
	position: absolute;
	bottom: 30px;
}

.floatingHeaderSubPage > div
{
	margin-bottom: 0 !important;
}

#homeImageSlideOuter img
{
	max-width: 100%;
}

.nav-tabs>li.active>a, .nav-tabs>li.active>a:focus, .nav-tabs>li.active>a:hover
{
	background: transparent;
	color: #fff;
	border: none;
	font-family:Roboto-Bold;
}

.ourExpertiseHome h1
{
	font-family:Roboto-Bold;
	margin-bottom: 30px;
}

.nav-tabs>li.active>a:after
{
	content: '';
	width: 45px;
	height: 6px;
	background: #174C60;
	position: absolute;
	bottom: -7px;
	left: 50%;
	transform: translate(-50%, 0);
}

.nav-tabs {
    border-bottom: none;
}

.nav>li>a
{
    padding-left: 0;
    padding-right: 0;
	font-family:Roboto-Medium;
	font-size: 20px !important;
	text-transform: uppercase;
}

.menuListFloatRight a
{
	text-transform: capitalize !important;
}

.nav-tabs
{
	display: flex;
	flex: 1;
	justify-content: space-between;
}

.nav-tabs:before, .nav-tabs:after
{
	display: none;
}

.homePageTabContentWrap
{
	display: flex;
	justify-content: flex-end;
	color: #fff;
}

.homePageTabContentWrap:before, .homePageTabContentWrap:after
{
	display: none;
}

.homePageTabContentWrap img
{
	max-width: 690px;
}

.ourExpertiseHome
{
	padding: 60px 0;
}

.homeExpertiseBrief
{
    min-height: 350px;
}
.homeExpertiseBrief > div:nth-child(1)
{
	width:50%;
	padding-left: 15px;
}
.homeExpertiseBrief > div:nth-child(2)
{
	width:50%;
	    background-repeat: no-repeat;
    background-size: cover;
    background-position: left center;
}
.homeExpertiseBrief > div:nth-child(1)
{
	display:flex;
    align-items: center;
	max-width:585px;
	padding-right:100px;
}
.aboutPageBlockMenu, .aboutPageBlockMenuInde_title
{
	display: flex;
	justify-content: space-between;
}

.aboutPageBlockMenuInde
{
	width: 31%;
	height: 500px;
	position: relative;
	background-position: center !important;
}

.aboutPageBlockMenuInde i.fa-chevron-right
{
	color:#FFF;
	font-size:25px;
}

.aboutPageBlockMenuInde_title
{
	align-items: center;
	position: absolute;
	bottom: 0;
	width: 100%;
	padding: 20px 15px;
	z-index: 99;
}

.onHover_about
{
	/*display: none;*/
	position: absolute;
	bottom: 0;
	width: 100%;
	top: 0;
	left: 0;
	z-index: 9;
	opacity: 0;
  transition: 0.8s;
}

.aboutPageBlockMenuInde:hover .onHover_about
{
	/*display: block;*/
	opacity: 1;
}

.aboutPageBlockMenuInde:hover .aboutPageBlockMenuInde_title
{
	background: transparent !important;
}

.aboutPageBlockMenuInde_title h1
{
	margin-top: 0;
	margin-bottom: 0;
	font-family:Roboto-Bold;
	font-size: 30px;
	margin-bottom: 10px;
}

.nav-tabs>li>a:hover
{
	border-color: transparent;
}

.nav>li>a:focus, .nav>li>a:hover
{
	background-color: transparent;
}

.footerMenu ul
{
    display: -ms-flexbox;           /* IE 10 */
    display: -webkit-flex;          /* Safari 6.1+. iOS 7.1+ */
    display: flex;
    -webkit-flex-flow: wrap column; /* Safari 6.1+ */
    flex-flow: wrap column;
    max-height: 200px;

	padding-left: 0;
}

.footerMenu ul li
{
	list-style: none;
	margin-bottom: 15px;
	margin-right: 40px;
}

.footerContainer:before, .footerContainer:after
{
	display: none;
}
#footerCertification
{
	margin-top:40px;
}
#footerCertification img
{
	height:65px;
}
#footerSocialMedia,#footerCertification
{
	display:flex;
	flex-direction:row;
	justify-content: flex-end;
}
#footerSocialMedia > div
{
	margin-right:10px;
}
#footerCertification > div
{
	margin-right:30px;
}
#footerSocialMedia img
{
	height:30px;
}
#footerSocialMedia > div:last-child,#footerCertification > div:last-child
{
	margin-right:0;
}
.footerLogo img
{
	width: 300px;
}
.expertisePageContent > section div > .aDivWrap
{
	margin-bottom:30px;
}
.expertisePageContent > section > div:first-child > div:first-child > .aDivWrap:first-child .aDivWrap_left
{
	width:60px !important;
	margin-right:15px;
}
.expertisePageContent > section > div:first-child > div:first-child > .aDivWrap:first-child .aDivWrap_left img
{
	max-width:unset;
}
.featureProjectHeadingWrap_expertise
{
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.featureProjectHeading_expertise
{
	/*padding: 15px;*/
}

.featureProjectHeading_expertise h1
{
	padding: 0;
	margin: 0;
	font-family:Roboto-Bold;
}

.projects_expertise_wrap
{
	display: flex;
	flex-wrap: wrap;

	margin-top: 30px;
}

.projectDetailPage_projects .projects_expertise_wrap
{
	display: block;
}

.projectDetailPage_projects .projects_expertise_wrap .projects_expertise_inner_wrap
{
	display: block;
	width: auto;
	margin: 30px;
}

.projectDetailPage_projectsWrap
{
	position: relative;
}

.projects_expertise_outer_wrap:last-child
{
	margin-bottom: 0 !important;
}

.leftArrowProjectPageScroll, .rightArrowProjectPageScroll
{
	position: absolute;
	top: 50%;
	cursor: pointer;
}

.rightArrowProjectPageScroll
{
	right: 0;
}

.leftArrowProjectPageScroll
{
	left: 0;
}

.projects_expertise_outer_wrap
{
	width: 100%;
}

.projectDetailPage_projects
{
	margin-left: 20px;
	margin-right: 20px;
}

.projectDetailPage_projects .projects_expertise_outer_wrap
{
	width: 100%;
}

.projects_projectPage .projects_expertise_outer_wrap
{
	margin-bottom: 50px;
}

.projectSection .projects_expertise_outer_wrap:nth-child(3n+3)
{
	margin-right:0;
}


.projects_expertise_inner_wrap
{
	display: block;
	width: 100%;
	cursor:pointer;
	height: 390px;
	position: relative;

	background-repeat: no-repeat !important;
    background-size: cover !important;
	background-position: center !important;
}

.projectBlockHeaders_expertise
{
	position: absolute;
	bottom: 0;
	left: 0;
	padding: 25px;
	width: 100%;
	z-index: 9999;
}

.projects_expertise_inner_wrap:hover:after
{
	content: '';
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	background: rgba(23, 76, 96, 0.8);
	z-index: 999;
}

.projects_expertise_inner_wrap:hover .projectOverlay_description_type_wrap
{
	display: block;
}

.projectBlockHeaders_expertise h4
{
	padding-bottom: 0;
	margin-bottom: 0;
	font-family:Roboto-Bold;
	font-size: 16px;
}

.projectBlockHeaders_expertise h3
{
	padding-top: 0;
	margin-top: 5px;
	font-size: 20px;
	font-family:Roboto-Bold;
	font-size: 18px;
}

.projectSection .nice-select
{
	float: none !important;
	width: auto;
	border-radius: 0;
	min-width: 185px;
}

.projectSection_btnWrap
{
	font-family:Roboto-Bold;
}

.projectSection_details
{
	padding-top: 0;
}

.projectFilterWrap
{
	display: flex;
	align-items: center;
}

.projectFilterWrap h3
{
	padding: 0;
	margin-top: 0;
	margin-bottom: 0;
	margin-right: 10px;
	font-size: 20px;
}

.newDetailImage img
{
	max-width: 100%;
	width: 100%;
}

.newsPulldownYears, .newsPulldownMonths
{
	display: flex;
	align-items: center;
}

.newsPulldownYears h3, .newsPulldownMonths h3
{
	margin-top: 0;
	margin-bottom: 0;
	margin-right: 10px;
	font-size: 20px;
	font-family:Roboto-Bold;
}

.newsPulldownYears .nice-select, .newsPulldownMonths .nice-select
{
	border: 1px solid #ccc;
	background: none;
	color: #1B273B;
	font-size: 18px;
	border-top: none;
	border-right: none;
	border-bottom: none;
}

.newsListTitleWrap h6
{
	font-family:Roboto-Bold;
}

.newsListTitleWrap h5
{
	font-family:Roboto-Bold;
}


.newsListWrap
{
	display: flex;
	justify-content: space-between;
	position: relative;
	flex-wrap: wrap;
}

.newsListWrap > div
{
	width: 43%;
	margin-bottom: 6.33%;

	background-repeat: no-repeat !important;
    background-size: cover !important;
	background-position: center !important;

	position: relative;
	display: block;
}

.newsListTitleWrap h3, .newsListTitleWrap h4
{
	font-family:Roboto-Bold;
}

.mainSubNavMobile
{
	display: none;
}

.footerContainerMobileWrap
{
	display: none;
}

.nice-select .list
{
	z-index: 99999999 !important;
}

.projectDetailPage_projectsWrap .projects_expertise_wrap > div
{
	margin-right: 0 !important;
}

.projects_expertise_wrap > div:nth-child(3n+3)
{
	margin-right: 0;
}

.projects_projectPage
{
	position: relative;
}

.projects_projectPage:before
{
	content: '';
	position: absolute;
	left: 0;

}

.contactPageMapMobile
{
	display: none;
}

.menuDarkColor
{
	color: #1B273B;
}

.ourExpertiseHome .customFullStop
{
	margin-left: 2px;
}

.floatTopRight
{
	position: absolute;
	top: -125px;
    right: -55px;
    z-index: -1;
}

.floatBottomLeft
{
	position: absolute;
	bottom: -125px;
    left: -55px;
    z-index: -1;
}


hr
{
	border-width: 2px;
}

.installerIndeWrap
{
	color: #24334D;
	font-family:Roboto-Bold;
}

.expertiseSection_btnWrap a
{
	font-family:Roboto-Bold;
}

#submitButtonOuter input
{
	background: #7DCD89;
	font-family:Roboto-Bold;
}

.projectTypeHeader
{
	font-family:Roboto-Bold;
	font-size: 30px;
}

.prettyList 
{
	list-style: none;
	padding-left: 0;
}

.prettyList li
{
	position: relative;
	padding-bottom: 20px;
	padding-left: 20px;
}

.prettyList li:before
{
	content: '';
	position: absolute;
	width: 12px;
	height: 12px;
	border-radius: 100%;
	background: #174C60;
	left: 0;
	top: 5px;
}

.prettyList li:after
{
	content: '';
	position: absolute;
	width: 1px;
	height: 100%;
	background: #174C60;
	left: 6px;
	top: 5px;
}

.prettyList li:last-child:after
{
	display: none;
}

.installerIndeWrap h3
{
	color: #24334D;
}

.thankYouMsgContactWrap
{
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
}

.projectDetailSectionWrap .aDivWrap
{
	align-items: unset;
}

.homePageDifferenceSection img
{
	max-width: 100%;
}

.projectsIndeInnerWrap_homePage
{
	height: 500px;
	position: relative;
	background-position: center;
}

.projectTitleWrap_home
{
	position: absolute;
	bottom: 50px;
}

textarea
{
	-webkit-appearance: none;
	outline: none !important;
	border-radius: 0;
	box-shadow: none;
	resize: none;
	border-color: #C71200;
}

input[type="text"]
{
	-webkit-appearance: none;
	border-top: none;
	border-left: none;
	border-right: none;
	border-color: #C71200;
	border-radius: 0;
	outline: none;
	padding-left: 0;
	padding-right: 0;
}

input[type="text"]:focus
{
	box-shadow: unset;
}

.contactPageMap
{
	padding: 0;
}

.contactPageMap iframe
{
	max-width: 100%;
	/*height: 340px;*/
	display: block;
}

.contactPageWrap
{
	position: relative;
}

.btn-success
{
	border-color: #A9D468;
	background: #A9D468;
	font-family:Roboto-Bold;
	font-size: 20px;
}

.btn-success:hover
{
	border-color: #A9D468;
	background: #A9D468;
}

.expertiseBlockWithImgWrap
{
	flex-wrap: nowrap;
	padding: 0;
	margin: 0;
	margin-bottom: 30px;
}

.expertiseBlockWithImgWrap > div
{
	flex: 0 0 32%;
	height: 500px;
	background-size: cover !important;
}

.expertiseBlockWithImgWrap > div > a
{
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
}

.expertiseBlockWithImg
{
	padding: 0;
}

.projectSectionWrap_expertPage_scroll
{
	width: 60%;
	position: relative;
}

.projectSectionWrap_expertPage_scroll .projectArrowRight
{
	right: 100px;
}

.expertPageProjectIndeWrapInner
{
	width: 100%;
	padding-top: 100%;
	background-repeat: no-repeat !important;
	background-size: cover;
	position: relative;
	background-position: center !important;
}

.projectsWrapScroll .projects_expertise_wrap
{
	display: block !important;
}

.projectTitleWrap_expertise
{
	margin: 34px;
	bottom: 0;
}

.projectSectionWrap_expertPage
{
	position: relative;
}

.projectSectionWrap_expertPage_description
{
	display: flex;
	width: 520px;
	height: 520px;
	align-items: center;
	justify-content: center;
	position: absolute;
	top: 50%;
    right: 0;
    transform: translate(0, -50%);
	padding: 40px;
}

.teamImageWrap
{
	padding-top: 80%;
	width: 100%;
	background-position: center;
	background-repeat: no-repeat !important;
	background-size: cover;
}

.teamWrap
{
	display: flex;
	flex-wrap: wrap;
	margin-top: 60px;
}

.teamIndeWrap
{
	width: 22%;
	margin-bottom: 50px;
	margin-right: 45px;
}

.teamIndeWrap:nth-child(4n+4)
{
	margin-right: 0;
}

.filterLinks_projects
{
	display: flex;
}

.filterLinks_projects > a
{
	display: inline-block;
	margin-right: 15px;
	margin-left: 15px;
	font-family:Roboto-Bold;
	font-size: 20px;
}

.teamTitleWrap_about h4
{
	font-size: 20px;
}

.teamTitleWrap_about h5
{
	font-size: 16px;
	font-family:Roboto-Light;
	font-weight: 400;
}

.selected
{
	color: #A9D468;
}

.specializedBlock:hover
{
	border-color: #A9D468;
}

.specializedBlock:hover:after
{
	content: '';
	position: absolute;
	top: 0;
	left:  0;
	width: 100%;
	height: 100%;
	background:#A9D468;
	z-index: 8;
}

.specializedBlockHeaderTextWrap
{
	position: relative;
}

.expertiseBlockWithImgWrap .specializedBlock:hover:after
{
	background:rgba(169, 212, 104, 0.7) !important;
}

.specializedBlock:hover h4
{
	color: #174C60;
}

.specializedBlockText
{
	position: relative;
	z-index: 9;
}

.hoverAfterImg
{
	display: none;
}

.specializedBlock:hover .hoverAfterImg
{
	display: inline-block;
}

.specializedBlock:hover .hoverBeforeImg
{
	display: none;
}

.specializedBlockBGimageWrapOuter
{
	position: relative;
}

.specializedBlock
{
	display: block;
	position: relative;
}

.specializedBlockBGimage
{
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-repeat: no-repeat !important;
	background-size: cover;
	background-position: center;
	/*display: none;*/
	opacity: 0;
}

.specializedBlockBGimage:before
{
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background: rgba(23, 76, 96, 0.7); 
}

.showBgSpecialized
{
	visibility: visible;
  opacity: 1;
  transition: opacity 1.5s linear;
}

.hideBgSpecialized
{
	visibility: hidden;
  opacity: 0;
  transition: visibility 0s 1.5s, opacity 1.5s linear;
}


.projectsIndeInnerWrap_homePage:before, .specializedBlock:before, .expertPageProjectIndeWrapInner:before, .projects_expertise_inner_wrap:before
{
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-image: -webkit-linear-gradient(top, rgba(103, 42, 238, 0) 9%, rgba(23, 75, 94, 0.6) 69%);
}

.banner_inner_gallery:before
{
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-image: -webkit-linear-gradient(top, rgba(23, 76, 96, 0.7) -4%, rgba(255, 255, 255, 0.2) 43%, rgba(250, 250, 250, 0.2) 48%, rgba(23, 76, 96, 0.7) 100%);
}

.spcializedBlockWrap_home .specializedBlock:before
{
	background-image: unset;
}

.navbar-nav .nav-link, .dropdown-menu > li, .menuByItSelf_footer a
{
	font-size: 16px;
}

.projectsWrap_homePage_outer, .banner_inner_gallery
{
	position: relative;
}

.banner_inner_gallery
{
	background-repeat: no-repeat;
    background-size: cover;
	background-position: center;
}

.projectArrowLeft, .projectArrowRight
{
	position: absolute;
	font-size: 30px;
	z-index: 99;
	top: 50%;
	color: #fff;
	cursor: pointer;
	transform: translate(0, -50%);
}

.projectArrowLeft
{
	left: 25px;
}

.projectArrowRight
{
	right: 25px;
}

.projectBannerText
{
	line-height: 1;
}

.capabilityStatement
{
	position: absolute;
	bottom: 30px;
	left: 50%;
    transform: translate(-50%, 10px);
}

.clientImage_expertPage_inde_wrap
{
	margin: 5px;
}

.clientImage_expertPage_inde_wrap img
{
	max-width: 100%;
}

.clientsInExpertisePageWrap
{
	position: relative;
	width: 70%;
	padding: 0 30px;
	margin-top: 40px;
}

.clientsInExpertisePageWrap .projectArrowLeft
{
	left: 0;
	color: #174C60;
}

.clientsInExpertisePageWrap .projectArrowRight
{
	right: 0;
	color: #174C60;
}

.banner_outer_gallery_wrap
{
	position: relative;
}

.homeMenuTop
{
	display: none;
}

.capabilityStatement a br
{
	display: none;
}

.aDivWrap_flexi
{
	display: flex;
	align-items: center;
}

.aDivWrap_flexi h1
{
	margin-bottom: 0;
	padding-bottom: 0;
}

.aDivWrap_flexi > .aDivWrap_left
{
	margin-right: 30px;
}

.projectDetailSectionWrap ul {
  list-style: none;
  margin-left: -1em;
}

.projectDetailSectionWrap ul li::before {
  content: "";
  display: inline-block;
  width: 10px;
  height: 10px;
  background: #a9d468;
  border-radius: 100%;
  margin-left: -1.5em;
  margin-right: 1em;
}

.projectDetailSectionWrap ul li
{
	margin-bottom: 12px;
}

.projectDetailSectionWrap
{
	padding-bottom: 60px;
}

.projectDetailBackBtnWrap
{
	padding-bottom: 70px;
}

.projectDetails_header_types
{
	padding: 60px 0;
}

.projectOverlay_description_type_wrap
{
	display: none;
}

.projectOverlay_description_type
{
	display: flex;
}

.projectOverlay_description_type > div
{
	padding-right: 10px;
	margin-right: 10px;
	border-right: 1px solid #A9D468;
}

.projectOverlay_description_type > div:last-child
{
	border-right: none;
	padding-right: 0;
	margin-right: 0;
}

.careerSection .aDivWrap
{
	/*align-items: flex-start;*/
}

.careerSection .aDivWrap_flexi .aDivWrap_left
{
	margin-right: 10px;
}

.aboutSection, .teamSection_about
{
	padding: 90px 0;
}

.expertiseSectionWrap
{
	position: relative;
	background-position: 190% 126%;
    background-size: 65% 75%;
}

.greyScale
{
  -webkit-filter: grayscale(100%); /* Safari 6.0 - 9.0 */
  filter: grayscale(100%);
}

.opacityFadeIn
{
	opacity:1 !important;
	-webkit-transition: all 2s ease;
	transition: all 2s ease;
	transition-timing-function: linear;
	-moz-transition-timing-function: linear;
	-webkit-transition-timing-function: linear;
	o-transition-timing-function: linear;
}
.opacityFadeOut
{
	opacity:0 !important;
	-webkit-transition: all 2s ease;
	transition: all 2s ease;
	transition-timing-function: linear;
	-moz-transition-timing-function: linear;
	-webkit-transition-timing-function: linear;
	o-transition-timing-function: linear;
}
.greyScaleImage
{
   -webkit-filter: grayscale(100%);
   -moz-filter: grayscale(100%);
   filter: grayscale(100%);
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
	transition-timing-function: linear;
	-moz-transition-timing-function: linear;
	-webkit-transition-timing-function: linear;
	o-transition-timing-function: linear;
}
.colorScaleImage
{
   -webkit-filter: grayscale(0);
   -moz-filter: grayscale(0);
   filter: grayscale(0);
	-webkit-transition: all 0.5s ease;
	transition: all 0.5s ease;
	transition-timing-function: linear;
	-moz-transition-timing-function: linear;
	-webkit-transition-timing-function: linear;
	o-transition-timing-function: linear;
}
.greyScaleImageSmooth
{
	z-index:1 !important;
   -webkit-filter: grayscale(100%);
   -moz-filter: grayscale(100%);
   filter: grayscale(100%);
	-webkit-transition: all 2s ease;
	transition: all 2s ease;
	transition-timing-function: linear;
	-moz-transition-timing-function: linear;
	-webkit-transition-timing-function: linear;
	o-transition-timing-function: linear;
}
.colorImageSmooth
{
	z-index:2 !important;
   -webkit-filter: grayscale(0%);
   -moz-filter: grayscale(0%);
   filter: grayscale(0%);
   transition-timing-function: linear;
   -moz-transition-timing-function: linear;
   -webkit-transition-timing-function: linear;
   o-transition-timing-function: linear;
	-webkit-transition: all 2s ease;
	transition: all 2s ease;
}

.specializedBlockHeaderTextWrap h1 br
{
	display: none;
}

.hide 
{
	display: none !important;
}

.spcializedBlockWrap_home .specializedBlock, .specializedBlockBGimageWrapOuter .specializedBlock
{
	border: 1px solid #fff;
}

.clientsInExpertisePage  .slick-track {
  display: flex;
}

.clientsInExpertisePage .slick-track .slick-slide {
  display: flex;
  height: auto;
  align-items: center;
  justify-content: center;
  margin: 10px;
}

.clientImage_expertPage_inde_wrap img
{
	max-width: 150px;
	max-height: 85px;
}

.filterLinks_projects_mobile
{
	display: none;
}

.homePageDifferenceSection .justify-content-between
{
	align-items: center;
}

.projectDetailSectionWrap ul li li::before
{
	background: #174C60;
	border-radius: 0;
}

.slick-slide
{
	position: relative;
}

.scrollDownBtnWrap_project
{
	text-align: left;
}

.scrollDownBtnWrap_project button
{
	padding-left: 0;
}

footer
{
	background-color: var(--default_dark);
}

.text-white,
.text-white a
{
	color: #fff !important;
}

.border-white
{
	border-color: #fff;
}

.menuFloatRight
{
	display: none;
	position: absolute;
	height: 100vh;
	right: 0;
	top: 0;
	z-index: 999999;
	width: 100%;
	overflow: hidden;
	padding-right:20px;
	padding-left:75vw;
}

.menuFloatRight .navbar-nav
{
	flex-direction: column;
}

.menuFloatRightWrap
{
	height: 100vh;
	background-color: var(--default_dark);
	position: relative;
	width: 100%;
}

.menuFloatRight ul li
{
	margin-right: 0;
	width: 100%;
}

.menuFloatRightBg
{
	position: absolute;
	height: 100vh;
	background-color: var(--default_dark);
	width: 500%;
    left: 0;
	z-index: 5;
}

.menuFloatRight_menu
{
	position: relative;
	z-index: 9;
	display: flex;
    height: 100vh;
    flex-direction: column;
    justify-content: space-between;
}

.hideFloatingMenuWrap
{
	padding: 30px 0;
	margin-top: 15px;
}

.menuFloatRightMenuContainer
{
	position: relative;
	z-index: 6;
}

.default_grey_bg
{
	background-color: var(--default_grey) !important;
	padding-top: 30px;
	padding-bottom: 30px;
}

.default_dark_bg
{
	background-color: var(--default_dark) !important;
}

.bg-danger
{
	background-color: var(--default_red) !important;
}

.text-danger
{
	color: var(--default_red) !important;
}

.text-grey
{
	color: var(--default_grey_dark);
}

.fw-bold
{
	font-weight: bold;
	font-family:Roboto-Bold;
}

.border-danger
{
	border-color: var(--default_red) !important;
}

.list-noStyle
{
	list-style: none;
}

.w100
{
	width: 100%;
}

.contactOptionSelection 
{
	display: flex;
	align-items: flex-start;
}

.contactOptionSelection label
{
	margin-bottom: 0;
	margin-left: 5px;
	line-height: 1;
}

.btn-default
{
	border: 1px solid #000;
	border-radius: 20px;
	color: #000;
	padding-right: 20px;
    padding-left: 20px;
}

.btn-default:hover
{
	background-color: unset !important;
    border: 1px solid #000 !important;
	color: #000 !important;
}

.contactUsBtn:hover,
.contactUsBtn:focus,
.contactUsBtn:active
{
	background-color: #fff !important;
	border-color: #fff !important;
	color: var(--default_red) !important;
	box-shadow: none !important;
}

#faqs ol
{
	list-style: none;
}

.bg-none
{
	background: none;
}

.expertImage_rotate
{
	position: relative;
}

.expertImage_rotate:after, .expertiseImageSlide:after
{
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	background-image: -webkit-linear-gradient(top, rgba(169, 142, 49, 0) 12%, rgba(0, 0, 0, 0.6) 67%);
	z-index: 4;
}

.expertImage_rotate_title
{
	position: absolute;
	bottom: 10px;
	left: 10px;
	z-index: 5;
}

.expertiseIndeGallery_image
{
	height: 400px;
	background-position: center !important;
	background-size: cover !important;
}

.bannerText_subPage
{
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	overflow: hidden;
	height: 150px;
}

.bannerText_subPage .bannerText
{
	padding-bottom: 0;
	position: absolute;
    left: 0;
    right: 0;
    bottom: 20px;
}

.bannerText_subPage .bannerText p
{
	padding: 0;
	margin: 0;
	border-left: 1px solid #fff;
	padding-left: 20px;
	padding-top: 9px;
	padding-bottom: 10px;
}

.bannerText h3
{
	font-family:Roboto-Light;
	font-weight: 300;
}

.bannerText h1
{
	font-size: 2.5rem;
}

/* Overrides the sitewide h2{letter-spacing:5px} rule (see further down this
   file) just for banner headings -- that spacing reads fine on short all-caps
   labels elsewhere but was stretching the home banner's full heading
   ("An International Fire Engineering Consultancy") noticeably wide. */
.bannerText h2
{
	letter-spacing: normal;
}

.bannerText_subPage_outer
{
	overflow: hidden;
}

.bannerText_subPage_outer:after
{
	content: '';
	position: absolute;
	left: -56px;
    right: 0;
	background: rgba(199, 18, 0, 0.75);
	height: 300px;
    transform: rotate(4deg);
	width: 175%;
	bottom: -235px;
}

.homePageBannerOuter
{
	overflow: hidden;
}

.homePageBannerOuter:after
{
	content: '';
	position: absolute;
	left: -56px;
    right: 0;
	background: rgba(199, 18, 0, 1);
	height: 300px;
    transform: rotate(-7deg);
	width: 175%;
	bottom: -230px;
	z-index: 9;
}

.borderLeft
{
	border-left: 1px solid #fff;
	padding-left: 20px;
}

/* Sub-page CMS sections: background runs across the full window width,
   with the content kept at the container's width. .industryPageContent is
   industry.php's equivalent of .expertiseSubPageContent -- a page-builder
   section (e.g. a duplicated "What is a Fire Engineering Report") needs the
   same full-bleed background there too.

   The standard width:100vw / margin-left:calc((100vw - 100%)/-2) breakout only
   centres correctly when its parent's own left/right insets are symmetric.
   .expertiseSubPageContent is NOT symmetric -- further down this file it has
   padding-left: 15px !important but padding-right: 0 !important, kept
   deliberately (it lines the body text up with the title area). Run the
   numbers through and that 15px asymmetry leaves this breakout exactly 7.5px
   (half the asymmetry) short of the true left edge -- a persistent white gap,
   present at every width, not just one breakpoint, which is why an earlier
   fix that only added a mobile copy of the same unmodified formula didn't
   actually close it. .industryPageContent carries no such asymmetric padding,
   so it keeps the textbook formula unchanged.

   Separately: this block used to start at min-width:1200px, leaving a second,
   wider gap at 768-1199px (Bootstrap's .container already has a capped
   max-width from 768px up, e.g. 720px, so the band needs breaking out there
   too) where NEITHER this rule nor the max-width:767px one below applied --
   the band just sat at its plain contained width with no breakout math run
   at all. Widened to min-width:768px so the two blocks hand off at exactly
   the same point the mobile rule below starts, with no uncovered range
   between them. */
@media (min-width: 768px)
{
	/* Measured with a real headless browser (2026-10-14): this rule's own
	   margin-left NEVER actually applied, at any constant -- .pageBody
	   .pageContentSection below is a DIFFERENT, equal-specificity selector
	   (two classes each) that also matches (.pageContentSection's real
	   parent is .pageBody, grandparent .expertiseSubPageContent), and being
	   later in the source it always won the cascade regardless of what this
	   rule said. Fixed by chaining through .pageBody too, so this selector
	   has three classes against .pageBody .pageContentSection's two and
	   wins outright.

	   The original -7.5px-adjusted formula (restored here) is actually
	   correct -- confirmed by re-deriving it from measured geometry at both
	   a mobile (fluid-container) and desktop (fixed-max-width, centred
	   container) viewport and getting the exact needed margin-left both
	   times. A same-day attempt to "fix the math" alongside the specificity
	   (calc(100% - 100vw), no halving) was wrong: it only matches at mobile
	   by coincidence (no centring gap there, just the 15px padding), and
	   broke desktop (sections sat 60-135px off on a 1440px-wide page) --
	   the halved (100vw - 100%)/-2 term is doing real work on desktop,
	   covering the auto-margin centring gap a fixed-width Bootstrap
	   container adds that a fluid one doesn't. */
	.expertiseSubPageContent .pageBody .pageContentSection
	{
		width: 100vw;
		margin-left: calc(((100vw - 100%) / -2) - 7.5px);
		box-sizing: border-box;
	}

	.industryPageContent .pageContentSection
	{
		width: 100vw;
		margin-left: calc((100vw - 100%) / -2);
		box-sizing: border-box;
	}

	/* .pageBody is the generic page-builder wrapper used by every page that
	   isn't Expertise/Industries (Home, Reviews, FAQs, Contact, ...) -- same
	   full-bleed need, no asymmetric-padding ancestor to compensate for here,
	   so the plain textbook formula applies. */
	.pageBody .pageContentSection
	{
		width: 100vw;
		margin-left: calc((100vw - 100%) / -2);
		box-sizing: border-box;
	}
}

@media (max-width: 767px)
{
	/* Same fix as the min-width:768px copy of this rule above -- .pageBody
	   chained in for specificity, original -7.5px-adjusted formula restored.
	   See the comment there for why. */
	.expertiseSubPageContent .pageBody .pageContentSection
	{
		width: 100vw;
		margin-left: calc(((100vw - 100%) / -2) - 7.5px);
		box-sizing: border-box;
	}

	.industryPageContent .pageContentSection
	{
		width: 100vw;
		margin-left: calc((100vw - 100%) / -2);
		box-sizing: border-box;
	}

	.pageBody .pageContentSection
	{
		width: 100vw;
		margin-left: calc((100vw - 100%) / -2);
		box-sizing: border-box;
	}
}

/* Expertise sub-page title area (the "EXPERTISE" eyebrow row + title/tagline
   row, split out of the page's own page-builder content array and rendered
   through renderPageContent() like any other section -- see
   includes/expertise.php) is its own .pageBody, same as the body-content
   below it, so the generic .pageBody .pageContentSection rule above matches
   it too -- pulling the title row out to width:100vw with nowhere near
   enough negative margin-left to compensate (it sits inside the page's own
   .container, classed subpage-<slug>, not inside .expertiseSubPageContent),
   so it renders flush against the screen edge with no left padding at all
   and overshoots the viewport on the right, causing the page to scroll
   horizontally. The title area was never meant to be full-bleed -- undo it
   unconditionally (applies at every width, matching both media blocks above). */
.container[class*="subpage-"] .pageContentSection
{
	width: auto;
	margin-left: 0;
}

/* /industries/developers_and_construction "HOW WE SUPPORT..." bullet list --
   the browser/Bootstrap default ul padding was indenting it further right
   than the paragraph above it */
.industryPageContent .content ul
{
	list-style: none;
	padding-left: 0;
	margin-left: 0;
}

/* Native list markers don't expose a cross-browser way to tune the bullet-to-text
   gap, so draw the bullet ourselves with an explicit, halvable margin instead of
   the browser's default list-style-position:inside spacing (~0.5em).
   Positioned (not flex) on purpose: some of these <li> contain a link followed by
   trailing sentence text (e.g. Strata/Legal/Mining/Government "HOW WE SUPPORT"
   lists) -- display:flex was splitting the link and the trailing text into two
   separate flex items/columns instead of letting them wrap as one sentence. */
.industryPageContent .content ul li
{
	position: relative;
	padding-left: 1em;
}

.industryPageContent .content ul li::before
{
	content: "\2022";
	position: absolute;
	left: 0.25em;
}

/* Industries sub-pages (Strata/Legal/Mining/Government): the first content image
   is a plain TinyMCE-inserted <img> at its native 698x550 size, with no width
   constraint of its own -- it was overflowing its column on narrower layouts. */
.prettyText .content img
{
	max-width: 100%;
	height: auto;
}

/* Sub-page title row: keeps the brochure button on one line, right-aligned,
   whatever width the title/tagline block next to it ends up being */
.expIndePageTitleWrap .downloadBrocherWrap
{
	flex-shrink: 0;
}

.expIndePageTitleWrap .downloadBrocher
{
	white-space: nowrap;
}

/* Vertically centres a row's content: enter "vCenterRow" in the CMS Custom Class field of the row */
.pageContentSectionContent.vCenterRow
{
	display: flex;
	flex-direction: column;
	justify-content: center;
}

/* Red-line heading: enter "redLineHeading" in the CMS Custom Class field of a section or row.
   Markup: <h1><span>FIRE ENGINEERING</span><br><span>SERVICES</span></h1> */
.redLineHeading :is(h1, h2)
{
	font-size: 36px;
	letter-spacing: 5px;
}

.redLineHeading :is(h1, h2) > span:first-of-type
{
	display: flex;
	align-items: center;
	font-family: Roboto-Medium;
	color: var(--default_red);
}

.redLineHeading :is(h1, h2) > span:first-of-type::after
{
	content: '';
	flex: 1;
	height: 2px;
	margin-left: 60px;
	background: var(--default_red);
}

.redLineHeading :is(h1, h2) > span:last-of-type
{
	font-family: Roboto-Light;
}

/* Expertise landing slider runs to the right edge of the window on desktop.
   :not(.col-sm-6) matters here -- this same class is reused by the "related
   expertise" slider on expertise sub-pages (includes/expertiseSlide.php),
   where it sits inside a normal Bootstrap column instead of full-bleed. Without
   the exclusion, that instance also got forced to 50vw wide regardless of its
   actual (narrower, inset) column, overflowing the page horizontally. */
@media (min-width: 992px)
{
	.expertiseImageSlideImageWrap:not(.col-sm-6)
	{
		width: calc(50vw - 8px);
		margin-top: -17px; /* lines the image up with the top of the first paragraph */
	}
}

/* Expertise slider text runs to the right edge of the container */
@media (min-width: 1200px)
{
	.expertiseImageSlideImageWrap:not(.col-sm-6) .expertiseImageSlideText
	{
		width: 625px;
	}

	.expertiseImageSlideImageWrap:not(.col-sm-6) .expertiseImageSlideText h2
	{
		margin-bottom: 18px;
	}

	.expertiseImageSlideImageWrap:not(.col-sm-6) .expertiseImageSlideText > div:first-child p:last-child
	{
		margin-bottom: 0;
	}

	.expertiseImageSlideImageWrap:not(.col-sm-6) .expertiseImageSlideText > div:last-child
	{
		margin-top: 28px;
	}
}

@media (min-width: 992px) and (max-width: 1199px)
{
	.expertiseImageSlideImageWrap:not(.col-sm-6) .expertiseImageSlideText
	{
		width: 472px;
	}
}

/* Page builder settings (set per section / row in the CMS) */
.pageContentSection
{
	background-color: var(--background);
	padding-top: var(--paddingTop, 0);
	padding-bottom: var(--paddingBottom, 0);
	margin-top: var(--marginTop, 0);
	margin-right: var(--marginRight, 0);
	margin-bottom: var(--marginBottom, 0);
	margin-left: var(--marginLeft, 0);
}

.pageContentSectionContent
{
	background-color: var(--background);
	color: var(--color);
	padding-top: var(--paddingTop, 0);
	padding-right: var(--paddingRight, 0);
	padding-bottom: var(--paddingBottom, 0);
	padding-left: var(--paddingLeft, 0);
}

@media (max-width: 767px)
{
	.pageContentSection
	{
		background-color: var(--background_mb);
		padding-top: var(--paddingTop_mb, 0);
		padding-right: var(--paddingRight_mb, 0);
		padding-bottom: var(--paddingBottom_mb, 0);
		padding-left: var(--paddingLeft_mb, 0);
		margin-top: var(--marginTop_mb, 0);
		margin-right: var(--marginRight_mb, 0);
		margin-bottom: var(--marginBottom_mb, 0);
		margin-left: var(--marginLeft_mb, 0);
	}

	.pageContentSectionContent
	{
		background-color: var(--background_mb);
		color: var(--color_mb);
		padding-top: var(--paddingTop_mb, 0);
		padding-right: var(--paddingRight_mb, 0);
		padding-bottom: var(--paddingBottom_mb, 0);
		padding-left: var(--paddingLeft_mb, 0);
	}
}

.homeContent .aDivWrap_right.borderLeft
{
	padding-left: 15px;
}

.homeContent .aDivWrap > .aDivWrap_left
{
	margin-right: 0;
}

@media (min-width: 992px)
{
	.homeContent .aDivWrap_left img
	{
		height: 476px;
		object-fit: cover;
	}
}

.scrollDownBtnWrap
{
	padding-left: 20px;
}

.lineLeft
{
	position: relative;
}

.lineLeft span
{
	background: #fff;
	position: relative;
	z-index: 5;
	padding-left: 15px;
}

.default_grey_bg .lineLeft span
{
	background: var(--default_grey);
}

.lineLeft:after 
{
    position: absolute;
    content: '';
    width: 100%;
    height: 2px;
    background: var(--default_red);
    left: 0;
    top: 55%;
	z-index: 4;
}

.lineLeftFixed
{
	display: inline-block;
	width: 120px;
    height: 2px;
    background: var(--default_red);
}

.homeScrollContentTitle p
{
	margin-bottom: 0;
}

.roateImageTitleWrap
{
	display: block;
    position: relative;
    top: 0;
    height: 105px;
    overflow: hidden;
    z-index: 5;
    /*background: #fff;*/
}

/*.roateImageTitleWrap:before
{
	position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 32px;
    background: #fff;
    content: "";
    z-index: 15;
}*/

/*.roateImageTitleWrap:after
{
	position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 32px;
    background: linear-gradient(180deg,hsla(0, 0%, 96%, 0.99),#f4f4f4 50%,#f4f4f4);
    content: "";
    z-index: 15;
}*/

.swiper-pagination-bullet
{
	width: 100%;
	background: none;
	height: unset;
	font-size: 21px;
	outline: none !important;
	opacity: 1;
	color:#9F9E9E;
}

.roateImageTitleWrap .swiper-pagination-bullet-active, .roateImageTitleSlideInnerWrap_exp .swiper-pagination-bullet-active
{
	color: var(--default_red);
	font-family: Roboto-Bold;
}

.roateImageTitleSlideInnerWrap_exp .swiper-pagination-bullet-active
{
	position: relative;
	padding-left: 60px;
}

.roateImageTitleSlideInnerWrap_exp .swiper-pagination-bullet-active:before
{
	content: '';
	position: absolute;
	width: 50px;
	height: 2px;
	background: var(--default_red);
	top: 50%;
	left: 0;
	transform: translate(0, -50%);
}

.roateImageTitleSlideInnerWrap 
{
	position: absolute;
}

.pageTitle
{
	margin-bottom: 0;
}

.pageTitleLine
{
	position: relative;
	width: 100%;
	height: 2px;
	background: var(--default_red);
	top: 50%;
	transform: translate(0, -50%);
	margin-left: 30px;
}

p
{
	line-height: 21px;
}

h2
{
	font-size: 32px;
	letter-spacing: 5px;
}

.homeHeroHeading
{
	font-family: Roboto-Medium;
	font-size: 32px;
}

.homeSectionHeading
{
	font-family: Roboto-Medium;
	font-size: 29px;
}

.servicesLineRight
{
	flex: 1;
	height: 2px;
	background: var(--default_red);
	margin-left: 25px;
}

.homeServicesBrief
{
	margin-top: 20px;
}

.industriesSubHomePage li a p
{
	display: none;
	font-size: 14px;
	margin: 8px 0 0;
}

.industriesSubHomePage li a:hover p
{
	display: block;
}

.smallContainer
{
	max-width: 555px;
}

.expertiseImageSlide
{
	height: 600px;
	width: 100%;
	background-size: cover !important;
	background-position: center !important;
	background-repeat: no-repeat !important;
}

.expertiseImageSlideText
{
	position: absolute;
	bottom: 30px;
	left: 0;
	z-index: 5;
	padding-left: 30px;
	width: 350px;
}

.industriesSubHomePage li a
{
	position: relative;
}

.industriesSubHomePage li a
{
	padding: 30px;
}

.industriesSubHomePage li a:hover
{
	background-color: var(--default_red) !important;
	padding-left: 100px !important;
}

.industriesSubHomePage li a:hover:after
{
	content: '';
	position: absolute;
	width: 50px;
	height: 2px;
	background: #fff;
	top: 50%;
	left: 30px;
	transform: translate(0, -50%);
}

.industriesSubHomePage li a:hover i
{
	display: none;
}

.diff_category
{
	width: 100%;
	height: 300px;
	overflow: hidden;
	position: relative;
	display: block;
	background-repeat: no-repeat !important;
	background-position: center !important;
	background-size: cover !important;
}

.diff_category_text
{
	position: absolute;
	bottom: 20px;
	left: 20px;
	color: #fff;
	margin-bottom: 0;
	z-index: 5;
}

.diff_category:before
{
	content: '';
    position: absolute;
    left: -134px;
    right: 0;
    background: rgba(199, 18, 0, 0.75);
    height: 300px;
    transform: rotate(15deg);
    width: 113%;
    bottom: -250px;
}

.diff_category:hover:after
{
	content: '';
    position: absolute;
    left: 0;
    right: 0;
    background: rgba(199, 18, 0, 0.75);
    height: 100%;
    width: 100%;
    bottom: 0;
	z-index: 4;
}

.diff_category:hover:before
{
	display: none;
}

/* !important: content using these classes sometimes also carries its own inline
   display style (e.g. display: flex), which would otherwise win over this rule
   regardless of selector specificity and silently defeat the hide/show */
.hideInDesktop
{
	display: none !important;
}

.hideInMobile
{
	display: block !important;
}

/* Red-line section headings (FAQ, etc.) wrap themselves in .hideInMobile but also
   carry their own inline display:flex, needed for the .servicesLineRight line's
   flex:1 sizing -- the block !important above otherwise collapses that flex
   context and the line disappears. Restore flex only where the element declared
   it itself. */
.hideInMobile[style*="display: flex"]
{
	display: flex !important;
}

.footerContainerMobileWrap hr
{
	border-color: var(--default_grey_dark);
}

.subs_industry > a
{
	border-right: 1px solid #fff;
	padding-top: 10px;
	padding-bottom: 10px;
	width: 100%;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
	letter-spacing: 4.2px;
	font-family:Roboto-Light;
	font-size: 16px;
}

.subs_industry > a:last-child
{
	justify-content: flex-end;
	border-right: none;
}

.subs_industry_section
{
	padding-top: 40px;
	padding-bottom: 40px;
}

.careerSection .card-header
{
	border-bottom: none !important;
	padding: 15px 25px 15px 20px !important;
	background-color: var(--default_grey) !important;
	margin-bottom: 10px;
}

.careerSection .card-header button
{
	width: 100%;
	justify-content: space-between;
	align-items: center;
	text-decoration: none !important;
}

.careerSection .card-header button:hover, .careerSection .card-header button:focus
{
	text-decoration: none !important;
}

.careerSection .card-header h5
{
	margin-bottom: 0;
	color: #125a9a;
	margin-right: 5px;
}

.careerSection .card-body
{
	background: none;
}

#accordion .card-header button:after {
    content: url('/images/library/arrowUp_red.webp');
}
#accordion .card-header button.collapsed:after {
    /* symbol for "collapsed" panels */
    content: url('/images/library/arrowDown_red.webp');
}

#faqs li
{
	font-family:Roboto-Bold;
	font-size: 20px;
	position: relative;
}

#faqs li:hover .redLineFaqs
{
	display: block;
}

#faqs li:hover a
{
	color: var(--default_red);
}

.redLineFaqs
{
	width: 40px;
	height: 2px;
	background: var(--default_red);
	position: relative;
	top: 12px;
	margin-right: 10px;
	display: none;
}

.expImageHomePage
{
	width: 100%;
	aspect-ratio: 1 / 1;
	background-size: cover !important;
	background-position: center !important;
	background-repeat: no-repeat !important;
}

.pageTitleIndustries
{
	font-family:Roboto-Regular;
	font-weight: 300;
	letter-spacing: 4.2px;
}

.downloadBrocher
{
	border-radius: 30px;
	padding-left: 20px;
	padding-right: 20px;
	background: var(--default_red);
}

.pageTitle_exp
{
	letter-spacing: 4.2px;
}


/* FONTS START */
.Roboto-Black
{
	font-family:Roboto-Black;
}

.Roboto-BlackItalic
{
	font-family:Roboto-BlackItalic;
}

.Roboto-Bold
{
	font-family:Roboto-Bold;
}

.Roboto-BoldItalic
{
	font-family:Roboto-BoldItalic;
}

.Roboto-Regular
{
	font-family:Roboto-Regular;
}

.Roboto-Medium
{
	font-family:Roboto-Medium;
}

.Roboto-Light
{
	font-family:Roboto-Light;
}

/* FONTS END */

.menuFloatRight_inner
{
	margin-top: 30px;
	margin-bottom: 30px;
}

.menuFloatRight_inner .dropDownMenu_sub
{
	/*right: 369px !important;*/
}

.swiper-button-next:after, .swiper-button-prev:after
{
	display: none;
}

.swiper-button-next, .swiper-button-prev
{
	font-size: 35px;
	color: #fff;
}

.swiper-slide
{
	/*width: 100% !important;*/
}

.expertiseImageSlideText .btn:hover, .expBtnHomePage .btn:hover
{
	color: #fff !important;
	border-color: #fff !important;
}

.expertiseSection
{
	padding: 120px 0 !important;
}

.expertiseSubPageContent .aDivWrap, .industriesContent .aDivWrap, .differnceContent, .aDivWrap
{
	align-items: flex-start !important;
}

.spaceOut
{
	letter-spacing: 4.2px
}

#faqs hr
{
	border-width: 1px;	
}

#frmContact h5
{
	font-family:Roboto-Light;
	font-weight: 400;
	font-size: 1rem;
}

.icheckbox_square-red, .iradio_square-red {
	background-position: 0;
	background-image: none;
}

.icheckbox_square-red.checked, .iradio_square-red.checked
{
	background: #C71200;
}

.icheckbox_square-red.hover, .iradio_square-red:hover
{
	background-position: 0 0 !important;
}

.icheckbox_square-red.checked:before, .iradio_square-red.checked:before
{
	/* background-position: -48px 0; */
	position: absolute;
	content: '\2713';
	color: #fff;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
}

.expertiseImageSlideText h2
{
	font-family:Roboto-Bold;
	letter-spacing: 0;
}

/* Same heading, mobile version -- the slider's .hideInDesktop sibling block
   (title + brief + Learn More, under the slide image instead of over it).
   Both inherit the sitewide h2 { letter-spacing: 5px } rule by default. */
#expertiseImageSlideImage .hideInDesktop h2
{
	letter-spacing: 0;
}

.expertiseSubPageContent
{
	padding-top: 0 !important;
	padding-right: 0 !important;
	padding-left: 15px !important;
	margin-top: 0 !important;
}

/* renderPageContent() wraps the body content in its own nested Bootstrap
   .container (12px left padding) and .row > * gutter (8px, via .g-3) -- the
   rule above only zeroes this element's own padding, not that inner one, so
   the paragraph text was still sitting ~20px right of where the title area
   (fixed separately, per page) now lines up */
.expertiseSubPageContent .container,
.expertiseSubPageContent .row > *
{
	padding-left: 0 !important;
}

/* ...except the .container nested inside a .pageContentSection: that outer
   section is itself pulled out to width:100vw (see the full-bleed-background
   rule above) and so is no longer sitting inset inside .expertiseSubPageContent's
   own 15px padding at all -- zeroing this nested .container's padding too meant
   its content (images, headings, body copy) rendered flush against the true
   screen edge instead of staying readably inset. Bootstrap's .container is
   fluid (no max-width) below the 1200px breakpoint, so this was only visibly a
   problem on mobile; a fixed max-width happened to mask it on desktop. Restore
   the same 15px the title area and this element's own padding already use. */
.expertiseSubPageContent .pageContentSection .container
{
	padding-left: 15px !important;
}

/* Same bug, Industries sub-pages' equivalent: .industryPageContent .container
   is zeroed unconditionally above (768.css), with no carve-out for the
   .pageContentSection case -- so any industries page-builder section using
   the full-bleed breakout (also above, min-width:768px and max-width:767px
   blocks) renders its content flush against the true screen edge instead of
   staying inset. .industryPageContent has no asymmetric padding to account
   for (see the comment on the full-bleed rule), so this is the plain 15px
   restore, not .expertiseSubPageContent's offset one. */
.industryPageContent .pageContentSection .container
{
	/*padding-left: 15px !important;*/
}

/* .row itself carries a matching negative margin-left (-.5 * the .g-3 gutter)
   that exists specifically to offset its columns' padding-left above -- without
   zeroing this too, the content overshoots past the edge by that same amount
   instead of landing flush at it */
.expertiseSubPageContent .row
{
	margin-left: 0 !important;
}

/* Shared styling for the body-section H2s on Expertise sub-pages (FER, When Do
   You Need, Industries We Serve, Why Choose, FAQ, etc.) -- was repeated inline
   on every one of these headings in the CMS content; color/margin/white-space
   still vary per-heading and stay inline. Also used on the About ("Difference")
   page's H2s (Over 20 Years, Independent And Impartial, etc.), and the Industries
   sub-pages' H2s (How We Support..., Why..., FAQ, etc.) -- without this, those
   fall back to .redLineHeading's larger 36px/5px sizing, which makes the
   white-space:nowrap "FREQUENTLY ASKED QUESTIONS" heading wide enough to
   squeeze its flex:1 red line (.servicesLineRight) down to zero width. */
.expertiseSubPageContent h2,
.differnceContent h2,
.industryPageContent h2
{
	font-size: 32px;
	letter-spacing: 3px;
	line-height: 1.25;
}

/* Fire Engineering page, "Fire Engineering For New And Existing Buildings" section's
   right-hand column -- was an inline-styled padding-left on this one div */
.fireEngNewExistingCol
{
	padding-left: 15px;
}

/* Fire & Arson Investigations only: the page-builder's row/col grid adds its own
   gutter (Bootstrap .g-3) on top of the container, so the EXPERTISE eyebrow and
   title sit noticeably off the left edge compared to the gallery/body content
   below, which don't have that extra inset. renderPageContent() also wraps each
   section in its own Bootstrap .container (separate from the one this class is
   on), which adds a second, bigger left inset of its own -- both need covering. */
.noTitleGutter .row > *,
.noTitleGutter .container
{
	padding-left: 0 !important;
}

/* ...but keep a single, standard container margin on the outermost wrapper
   itself (matches .expertiseSubPageContent's own 15px) rather than running the
   title flush to the true screen edge */
.noTitleGutter.container
{
	padding-left: 15px !important;
}

/* .row's own matching negative margin-left needs zeroing too, same reason as
   the .expertiseSubPageContent .row rule above */
.noTitleGutter .row
{
	margin-left: 0 !important;
}

/* No gap between the last sub-page section and the footer */
.expertiseSubPageSection
{
	padding-bottom: 0 !important;
	margin-top: -75px;
}

.homeContent .aDivWrap
{
	align-items: center !important;
}

/* BS -5 -start */
.row {
	--bs-gutter-x: 1.5rem;
	--bs-gutter-y: 0;
	display: flex;
	flex-wrap: wrap;
	margin-top: calc(var(--bs-gutter-y) * -1);
	margin-right: calc(var(--bs-gutter-x) * -.5);
	margin-left: calc(var(--bs-gutter-x) * -.5);
}
.row > * {
	flex-shrink: 0;
	width: 100%;
	max-width: 100%;
	padding-right: calc(var(--bs-gutter-x) * .5);
	padding-left: calc(var(--bs-gutter-x) * .5);
	margin-top: var(--bs-gutter-y);
}

.col {
	flex: 1 0 0%;
}

.row-cols-auto > * {
	flex: 0 0 auto;
	width: auto;
}

.row-cols-1 > * {
	flex: 0 0 auto;
	width: 100%;
}

.row-cols-2 > * {
	flex: 0 0 auto;
	width: 50%;
}

.row-cols-3 > * {
	flex: 0 0 auto;
	width: 33.3333333333%;
}

.row-cols-4 > * {
	flex: 0 0 auto;
	width: 25%;
}

.row-cols-5 > * {
	flex: 0 0 auto;
	width: 20%;
}

.row-cols-6 > * {
	flex: 0 0 auto;
	width: 16.6666666667%;
}

@media (min-width: 576px) {
	.col-sm {
		flex: 1 0 0%;
	}

	.row-cols-sm-auto > * {
		flex: 0 0 auto;
		width: auto;
	}

	.row-cols-sm-1 > * {
		flex: 0 0 auto;
		width: 100%;
	}

	.row-cols-sm-2 > * {
		flex: 0 0 auto;
		width: 50%;
	}

	.row-cols-sm-3 > * {
		flex: 0 0 auto;
		width: 33.3333333333%;
	}

	.row-cols-sm-4 > * {
		flex: 0 0 auto;
		width: 25%;
	}

	.row-cols-sm-5 > * {
		flex: 0 0 auto;
		width: 20%;
	}

	.row-cols-sm-6 > * {
		flex: 0 0 auto;
		width: 16.6666666667%;
	}
}
@media (min-width: 768px) {
	.col-md {
		flex: 1 0 0%;
	}

	.row-cols-md-auto > * {
		flex: 0 0 auto;
		width: auto;
	}

	.row-cols-md-1 > * {
		flex: 0 0 auto;
		width: 100%;
	}

	.row-cols-md-2 > * {
		flex: 0 0 auto;
		width: 50%;
	}

	.row-cols-md-3 > * {
		flex: 0 0 auto;
		width: 33.3333333333%;
	}

	.row-cols-md-4 > * {
		flex: 0 0 auto;
		width: 25%;
	}

	.row-cols-md-5 > * {
		flex: 0 0 auto;
		width: 20%;
	}

	.row-cols-md-6 > * {
		flex: 0 0 auto;
		width: 16.6666666667%;
	}
}
@media (min-width: 992px) {
	.col-lg {
		flex: 1 0 0%;
	}

	.row-cols-lg-auto > * {
		flex: 0 0 auto;
		width: auto;
	}

	.row-cols-lg-1 > * {
		flex: 0 0 auto;
		width: 100%;
	}

	.row-cols-lg-2 > * {
		flex: 0 0 auto;
		width: 50%;
	}

	.row-cols-lg-3 > * {
		flex: 0 0 auto;
		width: 33.3333333333%;
	}

	.row-cols-lg-4 > * {
		flex: 0 0 auto;
		width: 25%;
	}

	.row-cols-lg-5 > * {
		flex: 0 0 auto;
		width: 20%;
	}

	.row-cols-lg-6 > * {
		flex: 0 0 auto;
		width: 16.6666666667%;
	}
}
@media (min-width: 1200px) {
	.col-xl {
		flex: 1 0 0%;
	}

	.row-cols-xl-auto > * {
		flex: 0 0 auto;
		width: auto;
	}

	.row-cols-xl-1 > * {
		flex: 0 0 auto;
		width: 100%;
	}

	.row-cols-xl-2 > * {
		flex: 0 0 auto;
		width: 50%;
	}

	.row-cols-xl-3 > * {
		flex: 0 0 auto;
		width: 33.3333333333%;
	}

	.row-cols-xl-4 > * {
		flex: 0 0 auto;
		width: 25%;
	}

	.row-cols-xl-5 > * {
		flex: 0 0 auto;
		width: 20%;
	}

	.row-cols-xl-6 > * {
		flex: 0 0 auto;
		width: 16.6666666667%;
	}
}
@media (min-width: 1400px) {
	.col-xxl {
		flex: 1 0 0%;
	}

	.row-cols-xxl-auto > * {
		flex: 0 0 auto;
		width: auto;
	}

	.row-cols-xxl-1 > * {
		flex: 0 0 auto;
		width: 100%;
	}

	.row-cols-xxl-2 > * {
		flex: 0 0 auto;
		width: 50%;
	}

	.row-cols-xxl-3 > * {
		flex: 0 0 auto;
		width: 33.3333333333%;
	}

	.row-cols-xxl-4 > * {
		flex: 0 0 auto;
		width: 25%;
	}

	.row-cols-xxl-5 > * {
		flex: 0 0 auto;
		width: 20%;
	}

	.row-cols-xxl-6 > * {
		flex: 0 0 auto;
		width: 16.6666666667%;
	}
}
.col-auto {
	flex: 0 0 auto;
	width: auto;
}

.col-1 {
	flex: 0 0 auto;
	width: 8.33333333%;
}

.col-2 {
	flex: 0 0 auto;
	width: 16.66666667%;
}

.col-3 {
	flex: 0 0 auto;
	width: 25%;
}

.col-4 {
	flex: 0 0 auto;
	width: 33.33333333%;
}

.col-5 {
	flex: 0 0 auto;
	width: 41.66666667%;
}

.col-6 {
	flex: 0 0 auto;
	width: 50%;
}

.col-7 {
	flex: 0 0 auto;
	width: 58.33333333%;
}

.col-8 {
	flex: 0 0 auto;
	width: 66.66666667%;
}

.col-9 {
	flex: 0 0 auto;
	width: 75%;
}

.col-10 {
	flex: 0 0 auto;
	width: 83.33333333%;
}

.col-11 {
	flex: 0 0 auto;
	width: 91.66666667%;
}

.col-12 {
	flex: 0 0 auto;
	width: 100%;
}

.offset-1 {
	margin-left: 8.33333333%;
}

.offset-2 {
	margin-left: 16.66666667%;
}

.offset-3 {
	margin-left: 25%;
}

.offset-4 {
	margin-left: 33.33333333%;
}

.offset-5 {
	margin-left: 41.66666667%;
}

.offset-6 {
	margin-left: 50%;
}

.offset-7 {
	margin-left: 58.33333333%;
}

.offset-8 {
	margin-left: 66.66666667%;
}

.offset-9 {
	margin-left: 75%;
}

.offset-10 {
	margin-left: 83.33333333%;
}

.offset-11 {
	margin-left: 91.66666667%;
}

.g-0,
.gx-0 {
	--bs-gutter-x: 0;
}

.g-0,
.gy-0 {
	--bs-gutter-y: 0;
}

.g-1,
.gx-1 {
	--bs-gutter-x: 0.25rem;
}

.g-1,
.gy-1 {
	--bs-gutter-y: 0.25rem;
}

.g-2,
.gx-2 {
	--bs-gutter-x: 0.5rem;
}

.g-2,
.gy-2 {
	--bs-gutter-y: 0.5rem;
}

.g-3,
.gx-3 {
	--bs-gutter-x: 1rem;
}

.g-3,
.gy-3 {
	--bs-gutter-y: 1rem;
}

.g-4,
.gx-4 {
	--bs-gutter-x: 1.5rem;
}

.g-4,
.gy-4 {
	--bs-gutter-y: 1.5rem;
}

.g-5,
.gx-5 {
	--bs-gutter-x: 3rem;
}

.g-5,
.gy-5 {
	--bs-gutter-y: 3rem;
}

@media (min-width: 576px) {
	.col-sm-auto {
		flex: 0 0 auto;
		width: auto;
	}

	.col-sm-1 {
		flex: 0 0 auto;
		width: 8.33333333%;
	}

	.col-sm-2 {
		flex: 0 0 auto;
		width: 16.66666667%;
	}

	.col-sm-3 {
		flex: 0 0 auto;
		width: 25%;
	}

	.col-sm-4 {
		flex: 0 0 auto;
		width: 33.33333333%;
	}

	.col-sm-5 {
		flex: 0 0 auto;
		width: 41.66666667%;
	}

	.col-sm-6 {
		flex: 0 0 auto;
		width: 50%;
	}

	.col-sm-7 {
		flex: 0 0 auto;
		width: 58.33333333%;
	}

	.col-sm-8 {
		flex: 0 0 auto;
		width: 66.66666667%;
	}

	.col-sm-9 {
		flex: 0 0 auto;
		width: 75%;
	}

	.col-sm-10 {
		flex: 0 0 auto;
		width: 83.33333333%;
	}

	.col-sm-11 {
		flex: 0 0 auto;
		width: 91.66666667%;
	}

	.col-sm-12 {
		flex: 0 0 auto;
		width: 100%;
	}

	.offset-sm-0 {
		margin-left: 0;
	}

	.offset-sm-1 {
		margin-left: 8.33333333%;
	}

	.offset-sm-2 {
		margin-left: 16.66666667%;
	}

	.offset-sm-3 {
		margin-left: 25%;
	}

	.offset-sm-4 {
		margin-left: 33.33333333%;
	}

	.offset-sm-5 {
		margin-left: 41.66666667%;
	}

	.offset-sm-6 {
		margin-left: 50%;
	}

	.offset-sm-7 {
		margin-left: 58.33333333%;
	}

	.offset-sm-8 {
		margin-left: 66.66666667%;
	}

	.offset-sm-9 {
		margin-left: 75%;
	}

	.offset-sm-10 {
		margin-left: 83.33333333%;
	}

	.offset-sm-11 {
		margin-left: 91.66666667%;
	}

	.g-sm-0,
	.gx-sm-0 {
		--bs-gutter-x: 0;
	}

	.g-sm-0,
	.gy-sm-0 {
		--bs-gutter-y: 0;
	}

	.g-sm-1,
	.gx-sm-1 {
		--bs-gutter-x: 0.25rem;
	}

	.g-sm-1,
	.gy-sm-1 {
		--bs-gutter-y: 0.25rem;
	}

	.g-sm-2,
	.gx-sm-2 {
		--bs-gutter-x: 0.5rem;
	}

	.g-sm-2,
	.gy-sm-2 {
		--bs-gutter-y: 0.5rem;
	}

	.g-sm-3,
	.gx-sm-3 {
		--bs-gutter-x: 1rem;
	}

	.g-sm-3,
	.gy-sm-3 {
		--bs-gutter-y: 1rem;
	}

	.g-sm-4,
	.gx-sm-4 {
		--bs-gutter-x: 1.5rem;
	}

	.g-sm-4,
	.gy-sm-4 {
		--bs-gutter-y: 1.5rem;
	}

	.g-sm-5,
	.gx-sm-5 {
		--bs-gutter-x: 3rem;
	}

	.g-sm-5,
	.gy-sm-5 {
		--bs-gutter-y: 3rem;
	}
}
@media (min-width: 768px) {
	.col-md-auto {
		flex: 0 0 auto;
		width: auto;
	}

	.col-md-1 {
		flex: 0 0 auto;
		width: 8.33333333%;
	}

	.col-md-2 {
		flex: 0 0 auto;
		width: 16.66666667%;
	}

	.col-md-3 {
		flex: 0 0 auto;
		width: 25%;
	}

	.col-md-4 {
		flex: 0 0 auto;
		width: 33.33333333%;
	}

	.col-md-5 {
		flex: 0 0 auto;
		width: 41.66666667%;
	}

	.col-md-6 {
		flex: 0 0 auto;
		width: 50%;
	}

	.col-md-7 {
		flex: 0 0 auto;
		width: 58.33333333%;
	}

	.col-md-8 {
		flex: 0 0 auto;
		width: 66.66666667%;
	}

	.col-md-9 {
		flex: 0 0 auto;
		width: 75%;
	}

	.col-md-10 {
		flex: 0 0 auto;
		width: 83.33333333%;
	}

	.col-md-11 {
		flex: 0 0 auto;
		width: 91.66666667%;
	}

	.col-md-12 {
		flex: 0 0 auto;
		width: 100%;
	}

	.offset-md-0 {
		margin-left: 0;
	}

	.offset-md-1 {
		margin-left: 8.33333333%;
	}

	.offset-md-2 {
		margin-left: 16.66666667%;
	}

	.offset-md-3 {
		margin-left: 25%;
	}

	.offset-md-4 {
		margin-left: 33.33333333%;
	}

	.offset-md-5 {
		margin-left: 41.66666667%;
	}

	.offset-md-6 {
		margin-left: 50%;
	}

	.offset-md-7 {
		margin-left: 58.33333333%;
	}

	.offset-md-8 {
		margin-left: 66.66666667%;
	}

	.offset-md-9 {
		margin-left: 75%;
	}

	.offset-md-10 {
		margin-left: 83.33333333%;
	}

	.offset-md-11 {
		margin-left: 91.66666667%;
	}

	.g-md-0,
	.gx-md-0 {
		--bs-gutter-x: 0;
	}

	.g-md-0,
	.gy-md-0 {
		--bs-gutter-y: 0;
	}

	.g-md-1,
	.gx-md-1 {
		--bs-gutter-x: 0.25rem;
	}

	.g-md-1,
	.gy-md-1 {
		--bs-gutter-y: 0.25rem;
	}

	.g-md-2,
	.gx-md-2 {
		--bs-gutter-x: 0.5rem;
	}

	.g-md-2,
	.gy-md-2 {
		--bs-gutter-y: 0.5rem;
	}

	.g-md-3,
	.gx-md-3 {
		--bs-gutter-x: 1rem;
	}

	.g-md-3,
	.gy-md-3 {
		--bs-gutter-y: 1rem;
	}

	.g-md-4,
	.gx-md-4 {
		--bs-gutter-x: 1.5rem;
	}

	.g-md-4,
	.gy-md-4 {
		--bs-gutter-y: 1.5rem;
	}

	.g-md-5,
	.gx-md-5 {
		--bs-gutter-x: 3rem;
	}

	.g-md-5,
	.gy-md-5 {
		--bs-gutter-y: 3rem;
	}
}
@media (min-width: 992px) {
	.col-lg-auto {
		flex: 0 0 auto;
		width: auto;
	}

	.col-lg-1 {
		flex: 0 0 auto;
		width: 8.33333333%;
	}

	.col-lg-2 {
		flex: 0 0 auto;
		width: 16.66666667%;
	}

	.col-lg-3 {
		flex: 0 0 auto;
		width: 25%;
	}

	.col-lg-4 {
		flex: 0 0 auto;
		width: 33.33333333%;
	}

	.col-lg-5 {
		flex: 0 0 auto;
		width: 41.66666667%;
	}

	.col-lg-6 {
		flex: 0 0 auto;
		width: 50%;
	}

	.col-lg-7 {
		flex: 0 0 auto;
		width: 58.33333333%;
	}

	.col-lg-8 {
		flex: 0 0 auto;
		width: 66.66666667%;
	}

	.col-lg-9 {
		flex: 0 0 auto;
		width: 75%;
	}

	.col-lg-10 {
		flex: 0 0 auto;
		width: 83.33333333%;
	}

	.col-lg-11 {
		flex: 0 0 auto;
		width: 91.66666667%;
	}

	.col-lg-12 {
		flex: 0 0 auto;
		width: 100%;
	}

	.offset-lg-0 {
		margin-left: 0;
	}

	.offset-lg-1 {
		margin-left: 8.33333333%;
	}

	.offset-lg-2 {
		margin-left: 16.66666667%;
	}

	.offset-lg-3 {
		margin-left: 25%;
	}

	.offset-lg-4 {
		margin-left: 33.33333333%;
	}

	.offset-lg-5 {
		margin-left: 41.66666667%;
	}

	.offset-lg-6 {
		margin-left: 50%;
	}

	.offset-lg-7 {
		margin-left: 58.33333333%;
	}

	.offset-lg-8 {
		margin-left: 66.66666667%;
	}

	.offset-lg-9 {
		margin-left: 75%;
	}

	.offset-lg-10 {
		margin-left: 83.33333333%;
	}

	.offset-lg-11 {
		margin-left: 91.66666667%;
	}

	.g-lg-0,
	.gx-lg-0 {
		--bs-gutter-x: 0;
	}

	.g-lg-0,
	.gy-lg-0 {
		--bs-gutter-y: 0;
	}

	.g-lg-1,
	.gx-lg-1 {
		--bs-gutter-x: 0.25rem;
	}

	.g-lg-1,
	.gy-lg-1 {
		--bs-gutter-y: 0.25rem;
	}

	.g-lg-2,
	.gx-lg-2 {
		--bs-gutter-x: 0.5rem;
	}

	.g-lg-2,
	.gy-lg-2 {
		--bs-gutter-y: 0.5rem;
	}

	.g-lg-3,
	.gx-lg-3 {
		--bs-gutter-x: 1rem;
	}

	.g-lg-3,
	.gy-lg-3 {
		--bs-gutter-y: 1rem;
	}

	.g-lg-4,
	.gx-lg-4 {
		--bs-gutter-x: 1.5rem;
	}

	.g-lg-4,
	.gy-lg-4 {
		--bs-gutter-y: 1.5rem;
	}

	.g-lg-5,
	.gx-lg-5 {
		--bs-gutter-x: 3rem;
	}

	.g-lg-5,
	.gy-lg-5 {
		--bs-gutter-y: 3rem;
	}
}
@media (min-width: 1200px) {
	.col-xl-auto {
		flex: 0 0 auto;
		width: auto;
	}

	.col-xl-1 {
		flex: 0 0 auto;
		width: 8.33333333%;
	}

	.col-xl-2 {
		flex: 0 0 auto;
		width: 16.66666667%;
	}

	.col-xl-3 {
		flex: 0 0 auto;
		width: 25%;
	}

	.col-xl-4 {
		flex: 0 0 auto;
		width: 33.33333333%;
	}

	.col-xl-5 {
		flex: 0 0 auto;
		width: 41.66666667%;
	}

	.col-xl-6 {
		flex: 0 0 auto;
		width: 50%;
	}

	.col-xl-7 {
		flex: 0 0 auto;
		width: 58.33333333%;
	}

	.col-xl-8 {
		flex: 0 0 auto;
		width: 66.66666667%;
	}

	.col-xl-9 {
		flex: 0 0 auto;
		width: 75%;
	}

	.col-xl-10 {
		flex: 0 0 auto;
		width: 83.33333333%;
	}

	.col-xl-11 {
		flex: 0 0 auto;
		width: 91.66666667%;
	}

	.col-xl-12 {
		flex: 0 0 auto;
		width: 100%;
	}

	.offset-xl-0 {
		margin-left: 0;
	}

	.offset-xl-1 {
		margin-left: 8.33333333%;
	}

	.offset-xl-2 {
		margin-left: 16.66666667%;
	}

	.offset-xl-3 {
		margin-left: 25%;
	}

	.offset-xl-4 {
		margin-left: 33.33333333%;
	}

	.offset-xl-5 {
		margin-left: 41.66666667%;
	}

	.offset-xl-6 {
		margin-left: 50%;
	}

	.offset-xl-7 {
		margin-left: 58.33333333%;
	}

	.offset-xl-8 {
		margin-left: 66.66666667%;
	}

	.offset-xl-9 {
		margin-left: 75%;
	}

	.offset-xl-10 {
		margin-left: 83.33333333%;
	}

	.offset-xl-11 {
		margin-left: 91.66666667%;
	}

	.g-xl-0,
	.gx-xl-0 {
		--bs-gutter-x: 0;
	}

	.g-xl-0,
	.gy-xl-0 {
		--bs-gutter-y: 0;
	}

	.g-xl-1,
	.gx-xl-1 {
		--bs-gutter-x: 0.25rem;
	}

	.g-xl-1,
	.gy-xl-1 {
		--bs-gutter-y: 0.25rem;
	}

	.g-xl-2,
	.gx-xl-2 {
		--bs-gutter-x: 0.5rem;
	}

	.g-xl-2,
	.gy-xl-2 {
		--bs-gutter-y: 0.5rem;
	}

	.g-xl-3,
	.gx-xl-3 {
		--bs-gutter-x: 1rem;
	}

	.g-xl-3,
	.gy-xl-3 {
		--bs-gutter-y: 1rem;
	}

	.g-xl-4,
	.gx-xl-4 {
		--bs-gutter-x: 1.5rem;
	}

	.g-xl-4,
	.gy-xl-4 {
		--bs-gutter-y: 1.5rem;
	}

	.g-xl-5,
	.gx-xl-5 {
		--bs-gutter-x: 3rem;
	}

	.g-xl-5,
	.gy-xl-5 {
		--bs-gutter-y: 3rem;
	}
}
@media (min-width: 1400px) {
	.col-xxl-auto {
		flex: 0 0 auto;
		width: auto;
	}

	.col-xxl-1 {
		flex: 0 0 auto;
		width: 8.33333333%;
	}

	.col-xxl-2 {
		flex: 0 0 auto;
		width: 16.66666667%;
	}

	.col-xxl-3 {
		flex: 0 0 auto;
		width: 25%;
	}

	.col-xxl-4 {
		flex: 0 0 auto;
		width: 33.33333333%;
	}

	.col-xxl-5 {
		flex: 0 0 auto;
		width: 41.66666667%;
	}

	.col-xxl-6 {
		flex: 0 0 auto;
		width: 50%;
	}

	.col-xxl-7 {
		flex: 0 0 auto;
		width: 58.33333333%;
	}

	.col-xxl-8 {
		flex: 0 0 auto;
		width: 66.66666667%;
	}

	.col-xxl-9 {
		flex: 0 0 auto;
		width: 75%;
	}

	.col-xxl-10 {
		flex: 0 0 auto;
		width: 83.33333333%;
	}

	.col-xxl-11 {
		flex: 0 0 auto;
		width: 91.66666667%;
	}

	.col-xxl-12 {
		flex: 0 0 auto;
		width: 100%;
	}

	.offset-xxl-0 {
		margin-left: 0;
	}

	.offset-xxl-1 {
		margin-left: 8.33333333%;
	}

	.offset-xxl-2 {
		margin-left: 16.66666667%;
	}

	.offset-xxl-3 {
		margin-left: 25%;
	}

	.offset-xxl-4 {
		margin-left: 33.33333333%;
	}

	.offset-xxl-5 {
		margin-left: 41.66666667%;
	}

	.offset-xxl-6 {
		margin-left: 50%;
	}

	.offset-xxl-7 {
		margin-left: 58.33333333%;
	}

	.offset-xxl-8 {
		margin-left: 66.66666667%;
	}

	.offset-xxl-9 {
		margin-left: 75%;
	}

	.offset-xxl-10 {
		margin-left: 83.33333333%;
	}

	.offset-xxl-11 {
		margin-left: 91.66666667%;
	}

	.g-xxl-0,
	.gx-xxl-0 {
		--bs-gutter-x: 0;
	}

	.g-xxl-0,
	.gy-xxl-0 {
		--bs-gutter-y: 0;
	}

	.g-xxl-1,
	.gx-xxl-1 {
		--bs-gutter-x: 0.25rem;
	}

	.g-xxl-1,
	.gy-xxl-1 {
		--bs-gutter-y: 0.25rem;
	}

	.g-xxl-2,
	.gx-xxl-2 {
		--bs-gutter-x: 0.5rem;
	}

	.g-xxl-2,
	.gy-xxl-2 {
		--bs-gutter-y: 0.5rem;
	}

	.g-xxl-3,
	.gx-xxl-3 {
		--bs-gutter-x: 1rem;
	}

	.g-xxl-3,
	.gy-xxl-3 {
		--bs-gutter-y: 1rem;
	}

	.g-xxl-4,
	.gx-xxl-4 {
		--bs-gutter-x: 1.5rem;
	}

	.g-xxl-4,
	.gy-xxl-4 {
		--bs-gutter-y: 1.5rem;
	}

	.g-xxl-5,
	.gx-xxl-5 {
		--bs-gutter-x: 3rem;
	}

	.g-xxl-5,
	.gy-xxl-5 {
		--bs-gutter-y: 3rem;
	}
}

/* BS - 5 - end */

.mb-7
{
	margin-bottom: 5rem!important;
}

.mb-6
{
	margin-bottom: 4rem!important;
}

.cursor-pointer
{
	cursor: pointer;
}

.swiper-wrapper .row
{
	margin-left: 0;
	margin-right: 0;
}

b, strong
{
	font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";
}

.homePageSlider .swiper-pagination,
.roateImageTitleSlideInnerWrap_exp
{
	position: static;
	width: auto;
	text-align: left;
}

.homePageSlider .swiper-pagination-bullet
{
	padding-bottom: 5px;
}

.homeSliderBrief
{
	position: absolute;
	bottom: 20px;
	z-index: 9;
}

.expImageHomePageWrap:before
{
	content: '';
	position: absolute;
	background: rgba(0, 0, 0, 0.6);
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: 8;
}

footer a
{
	color: #fff !important;
	text-decoration: none;
}

.swiper-pagination-bullet
{
	color: var(--default_red) !important;
	font-weight: lighter;
	position: relative;
}

.swiper-pagination-bullet-active
{
	font-weight: bold;
	padding-left: 40px;
}

.swiper-pagination-bullet-active:before
{
	content: '';
	width: 30px;
	height: 2px;
	background: var(--default_red) !important;
	position: absolute;
	display: block;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}

.homeSliderBrief
{
	width: 350px;
}

.contactPageMap a
{
	white-space: nowrap;
}

/* !important: on pages where the review grid sits inside the standard CMS
   .prettyText .content wrapper (e.g. /reviews), the generic responsive-image
   rule .prettyText .content img { max-width: 100%; } is more specific than a
   single class and was winning, stretching this to the width of its flex
   container instead of staying a small fixed icon. */
.googleIcon_reviews {
	max-width: 20px !important;
	width: 20px !important;
	height: auto !important;
}

.googleReviewBlock {
	border-radius: 25px;
	box-shadow: 1px 1px 8px #dcdcdc;
	background: #f4f4f4;
}

.text-gold
{
	color: #ba1615;
}

.vLineRed
{
	width: 2px;
	height: 40px;
	background: #ba1615;
	margin: auto;
}

.hLineRed
{
	width: 200px;
	height: 2px;
	background: #ba1615;
	margin: auto;
}

.googleReviewBlock
{
	padding: 40px 30px;
}

.googleReviewsWrap.justify-content-center .googleReviewBlock
{
	width: 66.67%;
	margin: 0 auto;
}

.share_your_experience
{
	border-radius: 25px;
}

.btn-white, a.btn-white
{
	background: #fff;
	color: #ba1615 !important;
	border-radius: 25px;
	font-size: 16px;
	padding: 7px 20px;
}

.btn-white:hover
{
	border-color: #fff !important;
	background: none !important;
	color:  #fff !important;
}

/* Bootstrap-4-era spacing utility classes (pl-/pr-/ml-/mr-) are still used
   across several templates and CMS content (e.g. /faqs' <ol class="pl-0">),
   left over from before this site's Bootstrap upgrade to v5, which renamed
   them to the logical-property names ps-/pe-/ms-/me-. The old names are
   dead in Bootstrap 5's own CSS -- nothing defines them -- so every one of
   these currently does nothing, silently leaving the browser's default
   spacing (e.g. a UL/OL's default padding-left) in place instead. Values
   match Bootstrap's own spacer scale (0, .25rem, .5rem, 1rem, 1.5rem, 3rem),
   identical between v4 and v5 -- only the class prefix changed. */
.pl-0 { padding-left: 0 !important; }
.pl-1 { padding-left: .25rem !important; }
.pl-2 { padding-left: .5rem !important; }
.pl-3 { padding-left: 1rem !important; }
.pl-4 { padding-left: 1.5rem !important; }
.pl-5 { padding-left: 3rem !important; }

.pr-0 { padding-right: 0 !important; }
.pr-1 { padding-right: .25rem !important; }
.pr-2 { padding-right: .5rem !important; }
.pr-3 { padding-right: 1rem !important; }
.pr-4 { padding-right: 1.5rem !important; }
.pr-5 { padding-right: 3rem !important; }

.ml-0 { margin-left: 0 !important; }
.ml-1 { margin-left: .25rem !important; }
.ml-2 { margin-left: .5rem !important; }
.ml-3 { margin-left: 1rem !important; }
.ml-4 { margin-left: 1.5rem !important; }
.ml-5 { margin-left: 3rem !important; }

.mr-0 { margin-right: 0 !important; }
.mr-1 { margin-right: .25rem !important; }
.mr-2 { margin-right: .5rem !important; }
.mr-3 { margin-right: 1rem !important; }
.mr-4 { margin-right: 1.5rem !important; }
.mr-5 { margin-right: 3rem !important; }

/* Same Bootstrap-4-era dead-class issue as above, for text alignment --
   renamed text-right/text-left to text-end/text-start in v5. */
.text-right { text-align: right !important; }
.text-left { text-align: left !important; }

/* Contact page -- "Get in touch" panel (last of the 4 col-sm-6 cards in the
   Our Offices grid: Asia Pacific, Europe & Middle East, Americas, then this).
   2026-10-19: moved here from per-row CMS custom-CSS/custom-ID fields after
   a CMS save on this page silently reset those fields (and the inline styles
   in the row's own HTML) back to blank/default more than once -- the admin
   page-builder form resubmits the whole row on save, so anything set outside
   its own UI (including via a direct DB edit) doesn't survive the next save.
   Styling here is immune to that; only plain, unstyled markup remains in the
   CMS content itself: one wrapper <div> around 4 plain <p> tags. */
.contactPageCmsWrap .col-sm-6:last-of-type .pageContentSectionContent
{
	display: flex;
	flex-direction: column;
}

.contactPageCmsWrap .col-sm-6:last-of-type .content
{
	background: #f2f2f2;
	box-sizing: border-box;
	padding: 45px 50px;
	margin-top: 25px;
	margin-bottom: 7px;
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: left;
}

@media (min-width: 768px)
{
	.contactPageCmsWrap .col-sm-6:last-of-type .pageContentSectionContent
	{
		justify-content: flex-end;
	}

	.contactPageCmsWrap .col-sm-6:last-of-type .content
	{
		height: 450px; /* matches the Google Maps iframe's fixed height="450" in the card to its left */
		justify-content: center;
	}
}

@media (max-width: 767px)
{
	.contactPageCmsWrap .col-sm-6:last-of-type .content
	{
		padding-left: 0; /* desktop is 50px -- zero on mobile only, per Dan's request */
	}

	/* Dan found the right approach himself in the CMS: shift the TEXT block
	   (the wrapper div), not the box itself. The box stays full width (its
	   background has plenty of room either side of the centered text), so
	   this doesn't clip against the viewport edge the way moving the box
	   itself did (see WORKLOG / feedback_contact_getintouch_mobile_margin). */
	.contactPageCmsWrap .col-sm-6:last-of-type .content > div
	{
		margin-left: -120px;
	}
}

/* the single wrapper div inside .content -- keeps the paragraph group as one
   flex item so it centers as a block, instead of each <p> centering on its
   own (different) width */
.contactPageCmsWrap .col-sm-6:last-of-type .content > div > p:first-of-type
{
	margin-bottom: 0.5rem;
}

.contactPageCmsWrap .col-sm-6:last-of-type .content > div > p:last-of-type
{
	display: flex;
	align-items: flex-end;
	gap: 10px;
}

.contactPageCmsWrap .col-sm-6:last-of-type .content > div > p:last-of-type a
{
	display: block;
	line-height: 0;
	margin-bottom: 3px;
}

.contactPageCmsWrap .col-sm-6:last-of-type .content > div > p:last-of-type span
{
	line-height: 20px;
}