/* GCA - Layout */


/* Margins / paddings */


.m-t-0 {
  margin-top: 0;
}

.m-t-1 {
  margin-top: 1rem;
}

.m-t-2 {
  margin-top: 2rem;
}

.m-t-3 {
  margin-top: 3rem;
}

.m-t-4 {
  margin-top: 4rem;
}

.m-t-5 {
  margin-top: 5rem;
}

.m-t-6 {
  margin-top: 6rem;
}

.m-t-10 {
  margin-top: 10rem;
}

.m-t-15 {
  margin-top: 15rem;
}

.m-t-18 {
  margin-top: 18rem;
}

.m-t-20 {
  margin-top: 20rem;
}

@media (max-width: 767px) {
		
	.m-t-2 {
	  margin-top: 1.5rem;
	}
	
	.m-t-3 {
	  margin-top: 2rem;
	}
	
	.m-t-4 {
	  margin-top: 2.5rem;
	}
	
	.m-t-5 {
	  margin-top: 3rem;
	}
	
	.m-t-6 {
	  margin-top: 3.5rem;
	}
	
	.m-t-10 {
	  margin-top: 5rem;
	}
	
	.m-t-15 {
	  margin-top: 7.5rem;
	}
	
	.m-t-18 {
	  margin-top: 9rem;
	}
	
	.m-t-20 {
	  margin-top: 10rem;
	}
	
}


.m-b-0 {
  margin-bottom: 0;
}

.m-b-1 {
  margin-bottom: 1rem;
}

.m-b-2 {
  margin-bottom: 2rem;
}

.m-b-3 {
  margin-bottom: 3rem;
}

.m-b-4 {
  margin-bottom: 4rem;
}

.m-b-5 {
  margin-bottom: 5rem;
}

.m-b-6 {
  margin-bottom: 6rem;
}

.m-b-10 {
  margin-bottom: 10rem;
}

.m-b-15 {
  margin-bottom: 15rem;
}

.m-b-18 {
  margin-bottom: 18rem;
}

.m-b-20 {
  margin-bottom: 20rem;
}

.m-l-2 {
  margin-left: 2rem;
}

.m-r-2 {
  margin-right: 2rem;
}

@media (max-width: 767px) {

	.m-b-2 {
	  margin-bottom: 1.5rem;
	}
	
	.m-b-3 {
	  margin-bottom: 2rem;
	}
	
	.m-b-4 {
	  margin-bottom: 2.5rem;
	}
	
	.m-b-5 {
	  margin-bottom: 3rem;
	}
	
	.m-b-6 {
	  margin-bottom: 3.5rem;
	}
	
	.m-b-10 {
	  margin-bottom: 5rem;
	}
	
	.m-b-15 {
	  margin-bottom: 7.5rem;
	}
	
	.m-b-18 {
	  margin-bottom: 9rem;
	}
	
	.m-b-20 {
	  margin-bottom: 10rem;
	}
		
}


.p-b-1 {
  padding-bottom: 1rem;
}

.p-b-2 {
  padding-bottom: 2rem;
}

.p-b-3 {
  padding-bottom: 3rem;
}

.p-b-4 {
  padding-bottom: 4rem;
}

.p-b-5 {
  padding-bottom: 5rem;
}

.p-b-10 {
  padding-bottom: 10rem;
}

.p-b-15 {
  padding-bottom: 15rem;
}

.p-b-18 {
  padding-bottom: 18rem;
}

.p-b-20 {
  padding-bottom: 20rem;
}

@media (max-width: 767px) {

	.p-b-2 {
	  padding-bottom: 1.5rem;
	}
	
	.p-b-3 {
	  padding-bottom: 2rem;
	}
	
	.p-b-4 {
	  padding-bottom: 2.5rem;
	}
	
	.p-b-5 {
	  padding-bottom: 3rem;
	}
	
	.p-b-10 {
	  padding-bottom: 5rem;
	}
	
	.p-b-15 {
	  padding-bottom: 7.5rem;
	}
	
	.p-b-18 {
	  padding-bottom: 9rem;
	}
	
	.p-b-20 {
	  padding-bottom: 10rem;
	}
		
}


.p-t-0 {
  padding-top: 0!important;
}

.p-t-1 {
  padding-top: 1rem;
}

.p-t-2 {
  padding-top: 2rem;
}

.p-t-3 {
  padding-top: 3rem;
}

.p-t-4 {
  padding-top: 4rem;
}

.p-t-5 {
  padding-top: 5rem;
}

.p-t-10 {
  padding-top: 10rem;
}

.p-t-15 {
  padding-top: 15rem;
}

.p-t-18 {
  padding-top: 18rem;
}

.p-t-20 {
  padding-top: 20rem;
}

@media (max-width: 767px) {

	.p-t-2 {
	  padding-top: 1.5rem;
	}
	
	.p-t-3 {
	  padding-top: 2rem;
	}
	
	.p-t-4 {
	  padding-top: 2.5rem;
	}
	
	.p-t-5 {
	  padding-top: 3rem;
	}
	
	.p-t-10 {
	  padding-top: 5rem;
	}
	
	.p-t-15 {
	  padding-top: 7.5rem;
	}
	
	.p-t-18 {
	  padding-top: 9rem;
	}
	
	.p-t-20 {
	  padding-top: 10rem;
	}
		
}


/* Top bar */

nav.navigation {
	margin-top: 1.5rem;
}

nav.navigation + .text-right {
	margin-top: 1.5rem;
}

/* Responsive menu */

@media (max-width: 767px) {
	.top-bar .container {
		padding: 2rem 1.5rem 1.5rem !important;
	}
}

.navigation--menu {
	display: none !important;
}

.navigation--menu a,
.navigation--menu a:hover,
.navigation--menu a:focus,
.navigation--menu a:active {
	cursor: pointer;
	color: #2C3137;
	text-transform: uppercase;
	font-size: 2rem;
	font-weight: 300;
}

.navigation > ul {
	transition: opacity 0.2s;
}

@media (max-width: 767px) {
	nav.navigation {
		margin-top: 1rem;
	}
	
	.navigation--menu {
		display: block !important;
	}
	.navigation > ul {
		opacity: 0;
		position: absolute;
		top: -99rem;
		margin-left: -15px;
		background: #fff;
		width: 100%;
		z-index: -9999 !important;
		padding: 14rem 5rem 5rem;
		-webkit-box-shadow: 0px 10px 40px 0px rgba(0,0,0,0.3);
		-moz-box-shadow: 0px 10px 40px 0px rgba(0,0,0,0.3);
		box-shadow: 0px 10px 40px 0px rgba(0,0,0,0.3);
	}
	.navigation--link {
		display: block !important;
		position: relative;
		padding: 1rem 0;
		font-size: 2rem;
	}
}

nav.responsive > ul {
	opacity: 1;
	top: -6rem;
}

.section {
  background-size: cover;
  background-position: center;
}

a { transition: all 0.2s; }
img { max-width: 100%; }
body blockquote { margin: 44px 0 44px 42px; border-left: 5px solid #eceeeb; padding-left: 42px; font-style: italic; font-family: Merriweather, Georgia, "Times New Roman", Times, serif; color: #616161; font-size: 18px; line-height: 1.55556; }
body blockquote p:last-child { margin: 0; }

.bg-light { background-color: #f5f6f7; }

.p-0 { padding: 0!important; }
.pt-0 { padding-top: 0!important; }
.pb-0 { padding-bottom: 0!important; }
.py-0 { padding-top: 0!important; padding-bottom: 0!important; }
.mt-auto { margin-top: auto; }
.h-100 { height: 100%; }

.section { padding: 100px 0; }

.section-cta { }
.section-cta .section-body { max-width: 780px; margin: 0 auto; }
.section-cta h1,
.section-cta h2,
.section-cta h3,
.section-cta h4 { margin-bottom: 40px; }
.section-cta .btn { display: inline-block; margin-top: 20px; }
.section-cta p:last-child { margin-bottom: 0; }

.d-flex { display: flex; }
.flex-column { flex-direction: column; }
.justify-content-center { flex-direction: column; }
.align-items-center { align-items: center; }

.text-white { color: #fff; }
.text-white h1,
.text-white h2,
.text-white h3,
.text-white h4,
.text-white h5,
.text-white h6 { color: #fff; }

.text-lg { font-size: 2.2rem; font-weight: 300; }

.section-services .services { max-width: 970px; margin: 0 auto; }
@media (max-width: 991px) {
  .section-services .services { max-width: 477px; }
}
.section-services .services .row { margin-left: -11px; margin-right: -11px; }
.section-services .services .row > div { padding-left: 11px; padding-right: 11px; }

.service-block { max-width: 226px; margin: 0 auto 30px; font-size: 15px; line-height: 1.66667; }
.service-block p { margin-bottom: 20px; }
.service-block p:last-child { margin-bottom: 0; }
.service-block .service-title { letter-spacing: -0.04em; font-size: 18px; color: #2c3137; margin: 18px 0 10px; font-weight: normal; }
.service-block .service-image { border-bottom: 4px solid; }
.service-block .service-image img { width: 100%; }
.service-block .service-more { font-weight: 500; color: #2c3137; }

.services-vertical .row > div { clear: both; float: none; width: 100%; }
.services-vertical .service-block { overflow: hidden; max-width: none; margin-bottom: 20px; }
.services-vertical .service-image { border: none; border-right: 4px solid; float: left; }
.services-vertical .service-body { margin-left: 262px; }

.testimonial-photos img { width: 320px; border-radius: 50%; border-top-right-radius: 0.3rem !important; border-bottom-left-radius: 50% !important; }
.testimonial-content-image .testimonial-photos img { border-radius: 50%; border-bottom-left-radius: 0.3rem !important; border-top-right-radius: 50% !important; }
.testimonial-images-content .testimonial-photos-wrapper { margin-left: -15px; margin-right: -15px; }
.testimonial-images-content .testimonial-photos { padding-left: 15px; padding-right: 15px; float: left; width: 50%; overflow: hidden; margin-bottom: 40px; }
.testimonial-images-content .testimonial-photos:nth-child(even) img { border-bottom-left-radius: 0.3rem !important; border-top-right-radius: 50% !important; }

.testimonial-content-image .row { display: flex; flex-flow: row-reverse wrap; }
.testimonial-images-content .row > div { float: none; width: auto; }

.section-title h2 { font-size: 30px; line-height: 1.5; font-family: "Work Sans", "Helvetica Neue", Helvetica, Arial, sans-serif; margin: 0 auto; font-weight: 400; max-width: 965px;}

.section-contact p { margin-bottom: 16px; }
.section-contact .contact-details .pull-left > div { margin-top: 0!important; }
.section-contact .contact-details li:first-child a { font-size: 28px; }

.section-content .section-body { color: #616161; font-size: 15px; line-height: 1.66667; }
.section-content .section-body > p { margin-bottom: 20px; }
.section-content .section-body > p:first-child { color: #2c3137; font-size: 19px; line-height: 1.642; margin-bottom: 40px; }
.section-content .quote { max-width: 292px; margin: 0 auto; font-size: 22px; line-height: 1.4545; letter-spacing: 1px; color: #333; font-style: italic; font-family: Merriweather, Georgia, "Times New Roman", Times, serif; }
.section-content .quote:before { content: ''; display: block; width: 30px; height: 30px; background: #333; margin: 0 0 10px; border-radius: 50% 50% 50% 0; }

.video-body { font-size: 15px; line-height: 1.66667; background: #fff; padding: 70px 50px; }
.video-body .video-title { margin-top: 0; font-style: italic; font-family: Merriweather, Georgia, "Times New Roman", Times, serif; font-size: 18px; line-height: 1.55556; margin-bottom: 30px; }
.video-body .video-content > p { margin-bottom: 20px; }
.video-body .video-content > p:first-child { font-size: 19px; line-height: 1.642; margin-bottom: 20px; }
.video-body .video-more { color: #2c3137; }

.video-holder { position: relative; height: 0; padding-top: 67.779%; }
.video-holder iframe { position: absolute; top: 0; left: 0; bottom: 0; right: 0; }

.section-icon-row { color: #616161; }
.section-icon-row .section-body { max-width: 965px; margin: 50px auto 72px; font-size: 15px; line-height: 1.66667; }
.icon-block { margin-bottom: 30px; }
.icon-block .icon { width: 160px; margin: 0 auto 20px; }
.icon-block .icon-title { color: #2c3137; font-weight: 400; margin: 0 0 20px; }

.gform_wrapper.gform_wrapper .top_label .gfield_label { 
  display: inline-block;
  max-width: 100%;
  margin-bottom: 1rem;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: .1rem;
  font-size: 1.2rem;
  line-height: 1;
  color: #B5C2DC;
}
.gform_wrapper.gform_wrapper .gfield_required {
  color: #B5C2DC;
}

body .gform_wrapper label.gfield_label + div.ginput_container { margin: 0!important; }
body .gform_wrapper ul li.gfield { margin-bottom: 15px; }

.gform_wrapper.gform_wrapper input[type=email], 
.gform_wrapper.gform_wrapper input[type=number], 
.gform_wrapper.gform_wrapper input[type=password], 
.gform_wrapper.gform_wrapper input[type=tel], 
.gform_wrapper.gform_wrapper input[type=text], 
.gform_wrapper.gform_wrapper input[type=url],
.gform_wrapper.gform_wrapper textarea {
  font-size: 1.6rem;
  line-height: 1.42857143;
  color: #838689;
  display: block;
  width: 100%!important;
  height: 5rem;
  padding: 6px 12px;
  background-color: #fff;
  background-image: none;
  border-width: 2px!important;
  border: 2px solid #B5C2DC;
  border-radius: 0;
  -webkit-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
  -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
  transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
  -webkit-appearance: none;
}
.gform_wrapper.gform_wrapper textarea { height: auto; }

.gform_wrapper .gform_footer input.button, 
.gform_wrapper .gform_footer input[type=submit] {
  padding: 1.5rem 3.2rem;
  letter-spacing: 0.1rem;
  text-transform: uppercase;
  color: #fff;
  border: #0000;
  border-radius: 2.5rem;
  background: #00BCF2;
  font-weight: 600;
  font-size: 1.6rem;
}

body .gform_wrapper div.validation_error {
  padding: 10px;
  border-radius: 3px;
  width: auto;
  font-size: 15px;
  font-weight: normal;
  color: #721c24;
  background-color: #f8d7da;
  border: 2px solid #f5c6cb;
}
.gform_wrapper.gform_wrapper li.gfield.gfield_error.gfield_contains_required div.ginput_container, 
.gform_wrapper li.gfield_html {
  max-width: none;
}
.gform_wrapper.gform_wrapper li.gfield.gfield_error.gfield_contains_required div.gfield_description {
  max-width: none;
  padding: 0;
  font-weight: normal;
}
.gform_wrapper.gform_wrapper li.gfield.gfield_error.gfield_contains_required div.ginput_container,
.gform_wrapper.gform_wrapper li.gfield.gfield_error.gfield_contains_required label.gfield_label {
  margin-top: 0;
  margin-left: 0;
}
.gform_wrapper.gform_wrapper li.gfield.gfield_error.gfield_contains_required {
  margin: 0 0 15px!important;
  border: none;
  padding: 0;
  background: none;
  width: 100%;
}

/* Hero */

p { margin: 0 0 20px; }

.hero {
  position: relative;
	overflow: hidden;
  width: 100%;
  min-height: 375px;
  display: flex;
  justify-content: center;
  flex-direction: column;
}

.hero .hero--content {
  
}

.arrow--container {
	position: absolute;
	z-index: 999;
	bottom: 0;
	left: 0;

	width: 100%;
}

.arrow--container > .row {
	position: relative;
}

.hero--content .photo {
	/*transform: translateY(-25%);*/
}


/* Main */


/* Personas */

.persona {
  padding: 0 !important;
}

.persona--photo,
.persona--details,
.team--member--photo,
.team--member--details {
  float: left;
  width: 50%;
  padding: 0 15px;
}

.persona:nth-child(odd) .persona--photo,
.team--member.big:nth-child(even) .team--member--photo {
  float: right;
}

@media (max-width: 767px) {
	.persona--photo,
	.persona--details,
	.team--member--photo,
	.team--member--details {
	  width: 100%;
	  float: none;
	  text-align: center;
	}
	.persona:nth-child(odd) .persona--photo,
	.team--member.big:nth-child(even) .team--member--photo {
	  float: none;
	  text-align: center;
	}
}

.small .team--member--photo {
  width: 40%;
}

.small .team--member--details {
  width: 60%;
}

@media (min-width: 768px) and (max-width: 991px) {
	.small .team--member--photo {
	  width: 30%;
	}
	.small .team--member--details {
	  width: 70%;
	}
}

@media (max-width: 767px) {
	.small .team--member--photo,
	.small .team--member--details {
	  width: 100%;
	}
}

.team--member.small:nth-child(odd) {
	clear: left;
}


/* Blog */

.post-listing .post {
	margin-top: 2rem;
	margin-bottom: 2rem;
	padding: 0;
	border-radius: 0.5rem;
}

.post-listing .post > .left-col {
	padding: 8rem 4rem 10rem 10rem;
}

.post-listing .post > .right-col {
	padding: 8rem 4rem 10rem 4rem;
}

@media (max-width: 767px) {
	.post-listing .post {
		margin-left: 15px;
		margin-right: 15px;
	}
	.post-listing .post > .left-col {
		padding: 3rem 2rem !important;
	}
	.post-listing .post > .right-col {
		padding: 2rem 2rem 3rem !important;
	}
	.post-listing .post .btn {
		display: block;
		text-align: center;
	}
	.post-nav {
		margin-left: 15px;
		margin-right: 15px;
	}
}

.post > .left-col a, .post > .left-col  div, .post > .left-col  p, .post > .left-col h2 {
	z-index: 99;
	position: relative;
}

.hero.blog {
  height: auto;
	margin-top: 10.6rem;
	padding-top: 8rem;
	margin-bottom: 5.6rem;
	height: auto;
	min-height: auto;
}

@media (max-width: 767px) {
	.hero.blog {
		margin-top: 7.2rem;
		padding-top: 4rem;
		margin-bottom: 3.2rem;
	}
}

.hero.has-image {
	padding-bottom: 8rem;
}

.hero.blog .container {
  position: relative;
  top: auto;
	z-index: 99;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

.hero.blog .hero-image {
	top:0;
}

.wpcf7-response-output {
	display: none !important;
}

.wpcf7-not-valid {
	border: 2px solid red !important;
}

.ssba img {
	padding-left: 0 !important;
}

@media (max-width: 991px) {
	.footer--contacts {
		margin-top: 4rem;
	}	
}

@media (max-width: 767px) {
	.footer--nav li {
		display: block !important;
		margin-bottom: 1rem;
	}
	.footer--contacts {
		text-align: left !important;
		float: none !important;
		margin-bottom: 4rem;
	}
}

.persona--section {
	overflow: hidden;
}

@media (max-width: 767px) {
	ul.categories {
		padding-top: 1.5rem;
		padding-bottom: 3.5rem;
	}
	.categories--item {
		display: block !important;
		margin-bottom: 0 !important;	
	}
	.categories--item a {
		font-size: 1.6rem !important;
		padding-bottom: 0.5rem;
	}
}

@media (max-width: 991px) {
	.contact-details {
		text-align: center;
	}
	.contact-details .pull-left {
		float: none !important;
	}
	.contact-details .icon-round {
		display: block;		
		margin: auto;
	}
}

@media (max-width: 767px) {
	.contact-details {
		margin-top: 4rem;
	}
	.wpcf7 .btn {
		display: block;
		text-align: center;
		width: 100%;
	}
}

.download--confirm {
	position: relative;
	min-height: 60rem !important;
	height: 100%;	
}
