/* General styles */

.row {
  	max-width: 90rem;
  }
  
h1, h2, h3, h4, h5, h6 {
/* 	font-family: 'Merriweather', serif; */
	font-family: 'DM Sans', sans-serif;
	font-weight:700;
}


body, p, ul, li, ol {
	font-family: 'Source Sans Pro', sans-serif;	
}

body {
	background: white;
	color:#222222;
	letter-spacing: 0.02rem;
}

p, li {
	font-size: 1.3rem;
	line-height: 2.2rem;
	font-weight:300;
}

a, a:link, a:visited, a:active {
	text-decoration: none;
	color:#251bf4;
	border-bottom:1px dashed #251bf4;
	transition: all 0.6s ease;		
}

a:hover {
	text-decoration: none;
	color:#222222;
	border-bottom:1px dashed #222222;
}

h4 {
	line-height: 2.5rem !important;
}

.row {
	padding-left:4rem;
	padding-right:4rem;
}




/* Custom styles  */


nav.navigation {
	padding-top:3.7rem;
	background:transparent;
	width:100%;
}

nav.navigation a.logo img {
	width:40px;
	margin-top:0.7rem;
	display: block;
	float:left;
	text-decoration: none;
	border-bottom:none;
	padding-bottom:1rem;
	opacity:1;
	transition: all 0.6s ease;				
}

nav.navigation a:hover.logo img {
	opacity:0.3;
}

nav.navigation a.logo span {
	display:none;
}

nav.navigation a:hover.logo span {
	color:#222222;
	display:none;
}

nav.navigation ul {	
	text-align:right;
	text-decoration: none;
	display:inline-block;
	list-style:none;
	width:100%;
	margin:0;
}

nav.navigation li {
	font-family: 'DM Sans', sans-serif;
	font-weight:400;
	text-align:right;
	text-decoration: none;
	display:inline-block;
	list-style:none;
	font-size: 1.1rem;
}

nav.navigation li a:after {
	display:block;
	content: '';
	border-bottom:1px solid #222222;
	transform: scaleX(0);  
	transition: transform 250ms ease-in-out;
	transform-origin:  0% 50%;
}

nav.navigation li a:hover:after { transform: scaleX(1); }

nav.navigation li a {
	text-align:right;
	text-decoration: none;
	margin-left:2rem;
	display:block;
	color:#222222;
	border-bottom:1px solid transparent;
	padding-top:1.1rem;
	padding-bottom:0.7rem;
	font-weight:400;
}

nav.navigation li a:hover {
	color:#222222;
}

nav.navigation li a.active {
	color:#222222;
	border-bottom:1px solid transparent;
	font-weight: 700;
}


.hero {
	margin:6rem 0 6rem 0;
	border-left:0.5rem solid white;
}

.hero .row {
	padding-left:3.5rem;		
}

.hero h1 {
	font-family: 'Source Sans Pro', sans-serif;
	font-size:1.5rem;
	font-weight: 300;
	letter-spacing: 0.06rem;
	padding-left:0.3rem;
}

/*
.hero h3 {
	font-size:4rem;
	line-height:5rem;
	font-weight: 600;
	letter-spacing: -0.15rem;	
	margin-bottom: 1.5rem;
}
*/

.hero h3 {
	font-size:5.5rem;
	line-height:6rem;
	font-weight: 600;
	letter-spacing: -0.3rem;	
	margin-bottom: 1.5rem;
}


.final-cta h3 {
	font-size:2.3rem;
	line-height:3.5rem;
	font-weight: 900;
	letter-spacing: -0.04rem;
	margin-bottom: 0rem;
}

.hero .button {
	margin-bottom:0px !important;
}

.hero p {
	margin-bottom:0;
}

.case-study {
	margin:0 0 6rem 0;
	padding-top:8rem;
	padding-bottom:8rem;
	  display: block;
	  position: relative;	
}

.case-studies {
	margin:0 !important;
	padding-top:0rem !important;
	padding-bottom:0rem !important;
	  display: inherit;
	  position: inherit;	
}

.case-study small {
	font-size:0.9rem;
	color:#222222;
	text-transform: uppercase;
	font-weight: 500;
	letter-spacing:0.2rem;
}

.case-study h2 {
	font-size:2.3rem;
	font-weight: 600;
	letter-spacing: -0.06rem;
}

.case-studies h2 {
	font-size:1.4rem;
	margin:1.5rem 0 5rem 0;
	font-weight: 700;
	letter-spacing: -0.01rem;
}

.case-study h2 a, .case-study h2 a:link, .case-study h2 a:visited, .case-study h2 a:active,
.case-studies h2 a, .case-studies h2 a:link, .case-studies h2 a:visited, .case-studies h2 a:active,
.hero h1 a, .hero h1 a:link, .hero h1 a:visited, .hero h1 a:active {
	text-decoration: none;
	color:#222222;
	border-bottom:1px solid white;
	transition: all 0.4s ease;		
}

.case-study h2 a:hover,
.case-studies h2 a:hover,
.hero h1 a:hover {
	text-decoration: none;
	color:#222222;
	border-bottom:1px solid #222222;
}

.case-study img,
.case-studies img {
	-webkit-box-shadow: 0px 14px 85px 0px rgba(0,0,0,0.27);
	-moz-box-shadow: 0px 14px 85px 0px rgba(0,0,0,0.27);
	box-shadow: 0px 14px 85px 0px rgba(0,0,0,0.27);
	background:white;
}

.cs-blocks h2 {
	min-height: 120px !important;
}



.case-study .grow, .case-studies .grow { transition: all .2s ease-in-out; }

.case-study .grow:hover { transform: scale(1.1); }

.case-studies:hover .grow { transform: none; }

.case-studies .grow:hover { transform: scale(1.1); }

.case-study img:hover, .case-studies img:hover {
	-webkit-box-shadow: 0px 14px 85px 0px rgba(0,0,0,0.5);
	-moz-box-shadow: 0px 14px 85px 0px rgba(0,0,0,0.5);
	box-shadow: 0px 14px 85px 0px rgba(0,0,0,0.5);
}

.pic-right::after {
	background-position: right top;
	background-repeat: no-repeat;
	background-size: 500px;
}

.pic-left::after {
	background-position: left top;
	background-repeat: no-repeat;
	background-size: 500px;
}

.case-study::after {
	content: "";
	opacity: 1;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	position: absolute;
	z-index: -1;  
	background-color: white;	
}

.stripes::after {
	background-image: url('../img/stripes-bg.gif');	
}

.circles::after {
	background-image: url('../img/circles-bg.gif');	
}

.hexagons::after {
	background-image: url('../img/hexagons-2.gif');		
}

.diamonds::after {
	background-image: url('../img/diamonds-bg.gif');	
}

.triangles::after {
	background-image: url('../img/triangles4.gif');	
}

.cubes::after {
	background-image: url('../img/cubes-bg.gif');	
}

.dots::after {
	background-image: url('../img/dots-bg.gif');	
}

.cs-lwc::after {
	background-image: url('../img/stripes-bg-col.gif');	
}

.cs-gaach::after {
	background-image: url('../img/diamonds-bg-col.gif');	
}

.cs-ai::after {
	background-image: url('../img/cubes-bg-col.gif');		
}

.cs-lata::after {
	background-image: url('../img/circles-bg-col.gif');	
}

.cs-mu::after {
	background-image: url('../img/diamonds-bg-col-mu.gif');	
}

.cs-aa::after {
	background-image: url('../img/stripes-bg-aa.gif');	
}


.final-cta {
	padding:5rem 0 5rem 0;
	background:#f6f6f6;		
}


footer {
	padding:5rem 0 5rem 0;	
}

footer p {
	font-size:1rem;
	color:#222222;
	line-height: 1.7rem;
}

footer a {
	color:#222222 !important;
	border-bottom:1px solid #bcbcbc !important;
}

.button {
    border-radius: 3px;
    border-style: solid !important;
    border-width: 1px;
	font-family: 'Source Sans Pro', sans-serif;
    font-weight: 700;
    line-height: normal;
    margin: 0 0 1.25rem;
    position: relative;
    text-align: center;
    text-decoration: none;
    display: inline-block;
    padding: 1rem 2rem 1.0625rem 2rem;
    font-size: 1rem;
    background-color: transparent;
    border-color: #251bf4 !important;
    color: #251bf4;
    transition: background-color 300ms ease-out;
}

.button:hover {
    border-radius: 3px;
    border-style: solid !important;
    border-width: 1px;
    background-color: #251bf4;
    border-color: #251bf4 !important;
    color: white;
	-webkit-box-shadow: 0px 5px 50px 0px rgba(0,0,0,0.27);
	-moz-box-shadow: 0px 5px 50px 0px rgba(0,0,0,0.27);
	box-shadow: 0px 5px 50px 0px rgba(0,0,0,0.27);    
}


.big-number {
	font-size:9rem;
	font-weight: 100;
	display:block;
	float:right;
	color:#e4f3ee;
	position:absolute;
	z-index:10;
	text-align:right;
	right:4rem;
	top:0;
	margin-top:-5rem;
}


.case-study-detail {
	background-image:url('../img/stripes-light.gif');
	background-position: right top;
	background-repeat: no-repeat;
	background-size: 600px;		
	text-align: center;
	color:#9a9a9a !important;
}


.gaach-right {
	background-image:url('../img/gaach-bg.jpg');
	background-position: right top;
	background-repeat: no-repeat;
	background-size: 375px;		
	text-align: center;
	color:#9a9a9a !important;
}

.gaach-left {
	background-image:url('../img/gaach-left-bg.jpg');
	background-position: left top;
	background-repeat: no-repeat;
	background-size: 600px;		
	text-align: center;
	color:#9a9a9a !important;
}

.lata-bg {
	background-image:url('../img/lata-bg.jpg');
	background-position: right top;
	background-repeat: no-repeat;
	background-size: 375px;		
	text-align: center;
	color:#9a9a9a !important;	
}

.detail-page p, .detail-page h2, .detail-page h3, .detail-page h4, .detail-page h5, .detail-page ul, .detail-page ol, .detail-page hr {
	max-width:700px;
	margin-left:auto;
	margin-right:auto;
	margin-bottom:3rem;
	margin-top:3rem;
	text-align:left;
	color:#222222 !important;
}

.detail-page ul {
  	padding-left:1.5rem;
}

.detail-page img {
	margin-left:auto;
	margin-right:auto;
	margin-bottom:3rem;
}

.light-stripes {
	background-image:url('../img/stripes-light.gif');
	background-position: right top;
	background-repeat: no-repeat;
	background-size: 500px;		
}

.light-dots {
	background-image:url('../img/dots-light.gif');
	background-position: right top;
	background-repeat: no-repeat;
	background-size: 500px;		
}

.light-circles {
	background-image:url('../img/circles-light.gif');
	background-position: right top;
	background-repeat: no-repeat;
	background-size: 500px;		
}


.light-cubes {
	background-image: url('../img/cubes-light.gif');
	background-position: left top;
	background-repeat: no-repeat;
	background-size: 500px;		
}

.light-dots {
	background-image: url('../img/dots-light.gif');	
	background-position: right top;
	background-repeat: no-repeat;
	background-size: 500px;		
}

ul.timeline {
	border-top:1px solid #e8e8e8;
	border-bottom:1px solid #e8e8e8;	
	padding-left:0;
}


ul.timeline li {
	list-style: none; /* Remove default bullets */
	background-image: url('../img/timeline-bg.gif');
	background-position: left center;
	background-repeat: repeat-y;
	padding-left: 37px;
	padding-top:1.5rem;
	padding-bottom:1.5rem;
	margin:0px;
}

ul.timeline li::before {
  content: "\2022"; 
  color: #251bf4;
  font-weight: bold;
  display: inline-block; /* Needed to add space between the bullet and the text */ 
  width: 1em; /* Also needed for space (tweak if needed) */
  margin-left: -1em; /* Also needed for space (tweak if needed) */
}

img.me-pic {
	width:100%;
	max-width:420px;
	margin:0 auto !important;
}

.final-cs {
	text-align:center !important; 
	padding-bottom:3rem !important;
}

.shadow-img {
	-webkit-box-shadow: 0px 0px 60px 0px rgba(0,0,0,0.15);
	-moz-box-shadow: 0px 0px 60px 0px rgba(0,0,0,0.15);
	box-shadow: 0px 0px 60px 0px rgba(0,0,0,0.15);	
}


.hero-tagline {
    bottom: auto;
    top: 150px;
    z-index: 10;
    height: 40px;
    text-align: right;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-flow: column nowrap;
    flex-flow: column nowrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: absolute;
    right: 0;
    -webkit-transform-origin: right bottom;
    transform-origin: right bottom;
    -webkit-transform: rotate(-90deg);
    transform: rotate(-90deg);
}


.hero-tagline-span {
    font-size: .625rem;
    letter-spacing: .2em;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
    display: block;
    padding-right: 50px;
    text-transform: uppercase;
    font-weight: 500;
    color:#a4a4a4;
	background-image:url('/img/strap-line2.png');
	background-repeat: no-repeat;
	background-position: right center;
}

.hero-tagline-span a {
    font-weight: 900;
	text-decoration: none !important;
	border-bottom: none !important;
	color:#a4a4a4;
}	

.hero-tagline-span a:hover {
	color:#251bf4;
}	

.medium-img {
	max-width:1000px;
	width:100%;
}


p.cs-topics {
	color:#979797;
    font-size: 1.1rem;
	margin-top: -0.9rem;    
}


/* Quick tweak for mobile size */
@media screen and (max-width:601px) { ul.timeline li { padding-left: 35px; } }

.list-heading {
	margin-bottom:1rem !important;	
}

ul.standard-bullet-list {
	margin-top:0rem !important;
}

ul.standard-bullet-list li {
	list-style: none; /* Remove default bullets */	
}

ul.standard-bullet-list li::before {
  content: "\2022"; 
  color: #251bf4;
  font-weight: bold;
  display: inline-block; /* Needed to add space between the bullet and the text */ 
  width: 1em; /* Also needed for space (tweak if needed) */
  margin-left: -1em; /* Also needed for space (tweak if needed) */
}




@media screen and (max-width:1300px) {
	nav.navigation {
		padding-top:2rem;
	}
	.case-study {
		padding-top:6rem;
		padding-bottom:6rem;
	}
	.hero-tagline {
    top: 110px;
    }			
}

@media screen and (max-width:1130px) {
	.case-studies .columns {
		min-height:450px; 
	}
}

@media screen and (max-width:1024px) {

	.case-studies .columns {
		min-height:auto; 
	}

	.hero h3 {
/*
		font-size:2.5rem;
		line-height:3.4rem;	
		letter-spacing:-0.09rem;	
*/
		font-size:3.5rem;
		line-height:4.5rem;	
		letter-spacing:-0.2rem;	
	}
		
	nav.navigation {
		padding-top:1rem;
	}	
	
		
	.case-study {
		padding-top:4rem;
		padding-bottom:2rem;
	}
		
	.case-study .grow {
		margin-bottom:8rem;
	}
	
	.case-study:hover .grow { 
		transform:none; 
	}
	
	
	.fb-video {
		display:none;
	}
	
	.detail-page {
		background-size: 240px;		
	}	
	
	.pic-right::after {
		background-position: right top;
		background-repeat: no-repeat;
		background-size: 45%;
	}
	
	.pic-left::after {
		background-position: left top;
		background-repeat: no-repeat;
		background-size: 45%;
	}	



}


@media screen and (max-width:600px) {
	.row {
		padding-left:1rem;
		padding-right:1rem;
	}

	.hero {
		border-left:0.3rem solid white;
		margin:3rem 0 3rem 0;
	}

	.hero .row {
		padding-left:0.7rem;		
	}
	
	.hero h1 {
		font-size:0.9rem;
	}
	
	.hero h3, .final-cta h3 {
		font-size:3rem;
		line-height:3rem;
		margin-bottom: 1rem;
		letter-spacing:-0.09rem;		
	}	
	
	nav.navigation {
		padding-top:1rem;
	}	
	
	nav.navigation li {
		font-size: 0.8rem;
	}
	
	nav.navigation li a {
		margin-left:1rem;
		padding-top:1.2rem;
		padding-bottom:0.4rem;
	}
	
	p, li {
		font-size: 1.1rem;
		line-height: 1.8rem;
		font-weight:500;
	}	
		
	.case-study {
		margin:0;		
		padding-top:2rem;
		padding-bottom:2rem;
	}
		
	.case-study .grow {
		margin-bottom:4rem;
	}
	
	.case-study:hover .grow { 
		transform:none; 
	}
	
	.case-study h2 {
		font-size:1.8rem;
	}	
	
	.case-study small {
		font-size:0.7rem;
	}	
	
	.case-study p {
		font-size:1.1rem;
	}	
	
	.final-cta {
		padding:3rem 0 3rem 0;
	}


	footer {
		padding:1.7rem 0 1rem 0;	
		text-align: left !important;
	}	
	
	footer .row .columns {
		text-align: left !important;
	}		

	footer p {
		clear:both;
		text-align: left;
		font-size:0.8rem;
		line-height: 1.5rem;
	}

	footer img {
		width:30px;
		margin:0 auto 0 auto !important;
		padding-top:5px;
		opacity: 1;
		display: none;
	}	
	
	.fb-video {
		display:none;
	}
	
	.detail-page {
		background-size: 240px;		
	}	
	
	.pic-right::after {
		background-position: right top;
		background-repeat: no-repeat;
		background-size: 47%;
	}
	
	.pic-left::after {
		background-position: left top;
		background-repeat: no-repeat;
		background-size: 47%;
	}	
	
	img.service-icon {
		float:none;
		clear:both;
	}
	
	.gaach-right {
		background-image:url('../img/gaach-bg.jpg');
		background-position: right top;
		background-size: 100px;		
	}
	
	.gaach-left {
		background-image:url('../img/gaach-left-bg.jpg');
		background-position: left -30px;
		background-size: 150px;		
	}
	
	
	
}