/*
 Theme Name:     Tekspace 2
 Author:         Bart Wozniak
 Author URI:     http://iambart.com
 Version:        2.0

Table of Contents:

1. Global
2. Header
3. Content
4. Footer
5. UI + Forms
6. Viewports

*/

/* ============================ 
	1. GLOBAL
============================== */



html {
    height: 100%;	
    -webkit-font-smoothing: antialiased !important;
}

body {
	font-family: 'Open Sans', Helvetica, Arial, sans-serif;
	font-size: 16px;
	overflow-x: hidden;
	position: relative;
	background-color: #f7f7f7;
}

h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
	margin: 0 0 0.25em 0;
	padding: 0;
}

h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6,
.nav-main .navbar-nav>li>a,
footer .nav>li>a,
.calc .figures .hr,
.btn,
.nav-main .navbar-nav>li.menu-item-cta>a,
._submit,
.icon.number > span,
.subtitle,
._form-title,
.blog-post article .meta {
	font-family: 'Montserrat', Helvetica, Arial, sans-serif;
}


h1 span, h2 span, h3 span, h4 span, h5 span, h6 span {
	line-height: inherit;
}

p, li, span, p.lead, span.lead {
	line-height: 2em;
	letter-spacing: 0.02em;
}

p {
	margin-bottom: 1.5em;
}

b, strong {
	font-weight: 600;
}

ul, ol, li {
	padding: 0;
	margin: 0;
}

li {
	list-style-type: none;
}

p span {
	line-height: inherit;
}

blockquote {
	padding: 0;
	margin: 0;
	border: none;
	font-style: italic;
}

blockquote cite {
	display: block;
	font-weight: 600;
	font-style: normal;
}

.lead {
	font-weight: 400;
	font-size: 1.2em;
	display: inline-block;
	margin-bottom: 0;
}

.justify {
	text-align: justify;
}

.alignleft {
	float: left;
	margin-top: 10px;
	margin-right: 30px;
}

.alignright {
	float: right;
	top: 10px;
	margin-left: 30px;
}

.aligncenter {
	display: block;
	margin: 0 auto;
}

.centered {
	text-align: center;
}

.centered .ico {
	margin-left: auto;
	margin-right: auto;
}

.right {
	text-align: right;
}

.auto-valign {
	transition: padding-top 150ms ease;
}

.tekspace-navy {
	color: #2c3e50;
}
.tekspace-teal {
	color: #14d5c4;
}
.tekspace-teal-dk {
	color: #37bbab;
}
.tekspace-teal-lt {
	color: #defcf9;
}
.tekspace-pink {
	color: #f05c85;
}

/* ============================ 
	2. HEADER
============================== */

/* logo */

.nav-main {
	font-size: .95em;
}

.nav-main .navbar-brand:hover {

}
.nav-main .navbar-brand {
	height: 50px;
    padding: 0;
    margin: 36px 0 0 0;
	line-height: 0;
	width: 120px;
}
.nav-main .navbar-brand img {
	width: auto;
	height: 100%;
}

/* nav */

body {

}

.nav-main {
	height: 123px;
	background: #f7f7f7;
	border: none;
	padding: 0;
	margin: 0;
	z-index: 500;
	transition: background 200ms ease;
}

.nav-main .navbar-collapse {
	text-align: center;
}

.nav-main .navbar-nav.primary {
	float: none;
	display: inline-block;
}

.nav-main .navbar-nav>li>a {
	line-height: 120px;
	font-weight: 300;
	color: #6c7885;
}

.nav-main .navbar-nav>li>a:hover,
.nav-main .navbar-nav>li>a:active,
.nav-main .navbar-nav>li>a:focus {
	background: transparent;
	transition: opacity 200ms ease, border-color 200ms ease, background 200ms ease;
}

.nav-main .navbar-nav.primary>li>a {
	border-bottom: 3px solid rgba(255,255,255,0);
}

.nav-main .navbar-nav.primary>li>a:hover,
.nav-main .navbar-nav.primary>li>a:active,
.nav-main .navbar-nav.primary>li>a:focus {
	color: #2c3d50;
	border-bottom: 3px solid #2c3e50;
}

.nav-main .navbar-nav.cta>li.menu-item-phone>a {
	font-weight: 500;
	color: #37bbab;
}

.nav-main .navbar-nav.primary>li.current-menu-item a {
	font-weight: 400;
	color: #2c3e50;
}

.nav-main .navbar-nav.cta>li.menu-item-phone>a:hover,
.nav-main .navbar-nav.cta>li.menu-item-phone>a:active,
.nav-main .navbar-nav.cta>li.menu-item-phone>a:focus {
	color: #2c988b;
	background-color: transparent;
	border-color: #fff;
}

.nav-main .menu-item-cta {
	padding-top: 33px;
}

/* scroll */

body.scroll {
	padding-top: 60px;	
	transition: padding-top 300ms ease;
}

.scroll .nav-main {
	-webkit-box-shadow: 0px 0px 23px 0px rgba(0,0,0,0.17);
	-moz-box-shadow: 0px 0px 23px 0px rgba(0,0,0,0.17);
	box-shadow: 0px 0px 23px 0px rgba(0,0,0,0.17);
	transition: background-color 300ms ease;
	height: 60px;
	transition: height 300ms ease;
}

.scroll .nav-main .navbar-brand {
	height: 30px;
	margin: 15px 0 0 0;
}

.scroll .nav-main .menu-item-cta {
	padding-top: 8px;
}

.scroll .nav-main .navbar-nav>li>a {
	font-size: .9em;
	padding: 5px 30px 0;
	line-height: 52px;
	border-bottom: none;
}

.scroll .nav-main .navbar-nav>li.menu-item-cta>a {
	padding: 20px 25px;
}


/* mobile */

.navbar-toggle {
	position: relative;
	float: right;
	margin: 18px 0 0 0;
	border: none;
	border-radius: 0;
	padding: 0;
}

.navbar-toggle:active, 
.navbar-toggle:hover,
.navbar-toggle:focus {
	background-color: transparent;
	border: none;
	opacity: 0.8;
	transition: opacity 200ms ease;
}

.navbar-toggle .icon-bar+.icon-bar {
	margin-top: 6px;
}

.navbar-toggle .icon-bar {
	display: block;
	width: 34px;
	height: 4px;
	border-radius: 1px;
	background-color: #2c3e50;
}

/* ============================ 
	3. CONTENT
============================== */

/* STRUCTURE */

/* section framework padding */

.pad-t {
	padding-top: 120px;
}
.hero .pad-t {
	padding-top: 70px;
}
.pad-t-0 {
	padding-top: 0;
}
.pad-b,
.section.break .items .row {
	padding-bottom: 120px;
}
.hero .pad-b {
	padding-bottom: 70px;
}
.pad-b-0,
.section.break .items .row:last-child {
	padding-bottom: 0;
}
.margin-t {
	margin-top: 90px;
}
.margin-b {
	margin-bottom: 90px;
}

	/* section framework global */

.section, .article {
	position: relative;
}
.section .outer {
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
}
.section {
	background-repeat: no-repeat;
	background-size: cover;
	position: relative;
}

.title h1, .title h2, .title h3 {
	line-height: 1.5em;
	margin-bottom: 0.75em;
}
.title h1 {
	font-size: 2.375em; /* 38 / 16 = 2.375 */
	font-weight: 600;
	line-height: 1.4em;
}
.title h2 {
	font-size: 2.375em; /* 38 / 16 = 2.375 */
	font-weight: 600;
	line-height: 1.4em;
}
.title h3 {
	font-size: 1.5em; /* 24 / 16 = 1.5 */
	font-weight: 500;
	line-height: 1.3em;
}

.subtitle {
	display: inline-block;
	font-size: 0.9375em; /* 15 / 16 = 0.9375  */
	font-weight: 400;
	margin-bottom: .5em;
	text-transform: uppercase;
}

.intro {
	font-size: 1.125em; /* 18 / 16 = 1.125 */
	line-height: 1.55em; /* 28 / 18 = 1.555555555555556 */
}

.text ul, .text ol {
	margin-bottom: 1.5em;
}
.text li {
	margin-left: 2em;
}
.text ul li {
	list-style-type: disc;
}
.text ol li {
	list-style-type: decimal;
}
.text p:last-child, 
.text ul:last-child,
.text ol:last-child {
	margin-bottom: 0;
}
.content p:last-child,
.title p:last-child {
}

.image img,
img {
	max-width: 100%;
}

	/* blocks */

.block-row {
	margin-bottom: 3em;
}
.block-row:last-child,
.block-row:last-child .block:last-child {
	margin-bottom: 0;
}

.block article {
	margin-bottom: 3em;
}
.block article:last-child {
	margin-bottom: 0;
}

.block.ico-container {
	margin-bottom: 0;
}

.spacer > div {
	width: 100%;
}

.block blockquote .text p {
	line-height: 2em;
}

.block blockquote cite {
	margin-top: 1.5em;
	display: inline-block;
	vertical-align: middle;
}

.block blockquote cite .ico {
	margin-right: 10px;
	display: block;
	float: left;
	margin-bottom: 0;
}

.block blockquote cite .author {
	display: block;
	float: left;
	width: 320px;
	max-width: 100%;
	overflow: hidden;
    font-size: 0.8em;
    font-weight: 400;
    padding-top: 20px;
	line-height: 1.4em;
}

.tint {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,0);
	z-index: 20;
}

	/* Colours */

.section .container,
.section .container-fluid {
	position: relative;
	z-index: 30;
}
.section.full-width.white,
.section.white .outer {
	background-color: #fff;
}
.section.white .title {
	color: #2c3e50;
}
.section.white .text {
	color: #6c7884;
}
.section.full-width.navy,
.section.navy .outer {
	background-color: #2c3e50;
}
.section.full-width.teal-lt,
.section.teal-lt .outer {  }

.section.teal-lt .text {
	color: #437e7a;
}
.section.teal-lt .title {
	color: #2c3e50;
}
.section.teal-lt .title .subtitle {
	color: #437e7a;
}
.section.white .title .subtitle {
	color: #14d5c4;
}
.section.full-width.pink,
.section.pink .outer {
	background-color: #f05c85;
}
.section.pink .title,
.section.pink .text {
	color: #fff;
}
.section.pink .title h3,
.section.pink .block .subtitle {
	color: #7d213d;
}

.section .outline-pink .text {
	color: #dc2860;
}

	/* icons */

.ico {
	display: block;
}
.icon {
	display: block;
	width: 60px;
	height: 60px;
	margin-bottom: 1.25em;
}
.icon > span {
	width: 100%;
	display: block;
}

.icon.number {
	background-color: #fff;
	border-radius: 30px;
	-webkit-box-shadow: 0px 0px 23px 0px rgba(0,0,0,0.17);
	-moz-box-shadow: 0px 0px 23px 0px rgba(0,0,0,0.17);
	box-shadow: 0px 0px 23px 0px rgba(0,0,0,0.17);
}

.icon.ico > span {
	height: 100%;
	background-size: 100%!important;
	background-repeat: no-repeat;
	background-position: center;
}

.icon.number > span {
	line-height: 60px;
	display: block;
	text-align: center;
	font-weight: 400;
}

/* BANNERS */

.banner,
.bgimage {
	background-repeat: no-repeat;
	background-size: cover;
	background-position: top center;
}

.banner .bgimage {
	height: 300px;
	min-height: 300px;
}

.banner.hero .content {
	opacity: 0;
}

.banner.hero.visible .content {
	opacity: 1;
	transition: opacity 500ms ease-in-out;
}


/* BREAK */

.break .content.narrow .title {
	padding: 0 24%;
}

.break .content.narrow .text {
	padding: 0 32%;	
}


/* MULTI COL */

.multicol {
	background-position: center;
}

.multicol .block.narrow blockquote .text {
	color: #2c3e50;
}

/* CALCULATOR */

.calc .slider-container {
	padding-bottom: 80px;
}


.calc {
	min-height: 300px;
}

.calc .slider-container,
.calc .figures .block {
	opacity: 0;
}

.calc.visible .slider-container,
.calc.visible .figures .block {
	opacity: 1;
	transition: opacity 600ms ease-in-out;
}

.calc .slider-container {
	padding-top: 3%;
	width: 85%;
	max-width: 770px;
	margin: 0 auto;
}


.calc .ui-slider {
	border: none;
	height: 6px;
	width: 100%;
	position: relative;
	background-color: #eee;
}

.calc .ui-slider .ui-slider-inside {
	position: relative;
	display: block;
	height: 100%;
	width: auto;
	background-color: #3fd5cd;
	border-radius: 4px;
}

.calc .ui-slider-handle {
	margin-top: -8px;
	border: 5px solid #3fd5cd;
	background: #fff;
	width: 32px;
	height: 32px;
	border-radius: 32px;
	outline: none;
	cursor: pointer;
}

.calc .ui-slider-handle:hover .custom-handle.handle {
	position: relative;
	top: 1px;
	opacity: 0.85;
	transition: opacity 200ms ease-in-out;

}

.calc .ui-slider-handle:hover {
	border: 5px solid #3fd5cd;
	background: #ddfffd;
	box-shadow: 0px 0px 23px 0px rgba(63, 212, 203, 0.5);
	transition: box-shadow 200ms ease-in-out;
}

.calc .custom-handle.handle {
	width: 120px;
	padding: 10px;
    margin-left: -52px;
    margin-top: -80px;
	display: block;
	background-color: #fff;
	box-shadow: 0px 0px 23px 0px rgba(0,0,0,0.17);
	text-align: center;
	z-index: 9999;
	position: relative;
	font-weight: 500;
}

.calc .custom-handle.handle > span {
	font-weight: 600;
}

.calc .custom-handle.handle:after {
	content: " ";
	position: absolute;
	bottom: -12px;
    left: 50px;
	width: 0; 
	height: 0; 
	border-left: 12px solid transparent;
	border-right: 12px solid transparent;
	border-top: 12px solid #ddd;
}

.calc .block {

}

.calc .figures i {
	font-style: normal;
}

.calc .figures .hr {
	line-height: 1em;
	display: block;
	font-size: 2.1em;
	font-weight: 400;
	margin-bottom: .3em;
}

.calc .figures .lead {
	margin-bottom: .8em;
}

.calc .figures .detail {
	font-size: .9em;
}

.calc .detail strong {
	color: #3fd5cd;
	font-weight: 700;
}

.calc .custom-handle.handle.bounce {
}

/* CTA */

.cta article {
}

.cta .circle {
	width: 380px;
	height: 380px;
	border-radius: 190px;
	background-color: #fff;
	display: inline-block;
}

.cta .circle article {
	padding: 0 10%;
}

.cta h2 {
	font-size: 2.8em;
	font-weight: 500;
}

/* BLOG LISTING */

.blog-listing article > a {
	display: block;
	height: 100%;
	width: 100%;
}
.blog-listing article > a:hover {
	text-decoration: none;
	position: relative;
	top: 1px;
}
.blog-listing article > a:hover .image {
	opacity: 0.65;
	transition: opacity 200ms ease-in-out;
}

.blog-listing .blog-row article .title,
.blog-listing .blog-row article .text,
.blog-listing .related article .title, 
.blog-listing .related article .text {
	padding: 0 2%;
}

.blog-listing article .image {
	height: 200px;
	overflow: hidden;
	position: relative;
}

.blog-listing article .image .wrap {
	overflow: hidden;
	width: 300px;
	height: 300px;
	border-radius: 150px;
	margin: 0 auto;
}	

.blog-listing article .image .wrap img {
	width: 100%;
	height: 100%;
}

.blog-listing article .title {
	height: 68px;
	overflow: hidden;
}

.blog-listing article h3 {
	font-size: 1.25em;
	margin-top: 1.5em;
	margin-bottom: 1em;
}

.blog-listing article .meta {
	font-size: 0.9em;
}

.blog-listing article .meta .date {
	color: #2c3e50;
	padding-right: 0.5em;
}

.blog-listing .blog-row .block article {
	margin-bottom: 4em;
}

.blog-listing .blog-row .block {
	overflow: hidden;
}

/* BLOG ARTICLE */

.blog-post article .image {
	height: 340px;
	width: 100%;
	overflow: hidden;
	position: relative;
	margin-top: 40px;
	margin-bottom: 40px;
}

.blog-post article .image .wrap {
	overflow: hidden;
	width: 500px;
	height: 500px;
	border-radius: 250px;
	margin: 4% auto 0 auto;
}	

.blog-post article .image .wrap img {
	width: 100%;
	height: 100%;
}

.blog-post article .title .text {
	padding-right: 20%;
}

.blog-post article .meta {
	margin-bottom: 20px;
	text-transform: uppercase;
	color: #2c3d50;
}

.blog-post article .meta .date {
	padding-right: 0.5em;
}

.blog-post article .meta .read-time {
	padding-left: 0.5em;
}

.blog-post article .main {
	position: relative;
	font-size: 0.9em;
}

.blog-post article .main img {
	width: auto;
	max-width: 140%;
	height: auto;
}

.blog-post article img.indent-left {
	position: relative;
	margin-left: -20%;
	margin-top: 20px;
	margin-bottom: 20px;
}

.blog-post article .wp-caption img.indent-left {
	margin-bottom: 0;
}

.blog-post article .wp-caption {
	margin-bottom: 20px;
	font-style: italic;
	color: #2c3d50;
}

.blog-post article .wp-caption .wp-caption-text {
	margin-top: 10px;
}

.blog-post article .author-bio {
	margin-top: 50px;
}

.blog-post article .main h2, .blog-post article .main h3, .blog-post article .main h4 {
	color: #2c3e50;
	margin-bottom: 1em;
}

.blog-post article h2 {
	font-size: 2em;
}

.blog-post article h3 {
	font-size: 1.4em;
}

.blog-post article h4 {
	font-size: 1.1em;
}

.author-bio .photo {
	display: block;
	float: left;
	width: 85px;
}

.author-bio .author {
	float: left;
	width: 300px;
	padding: 15px 0 0 15px;
}

.author-bio .author p {
	font-size: 1.1em;
	color: #2c3d50;
}

.author-bio .author span {
	font-size: 0.95em;
}

.blog-post-outer .hr {
	border-bottom: 1px solid #d2d6d9;
	margin-left: 0;
	margin-right: 0;
}

/* CONTACT */
.support-cta {
	padding: 5px 0 5px 50px;
	font-size: 1.0625em; /* 17 / 16 = 1.0625 */
	font-weight: 600;
	color: #13c6b6;
	background: url('_css/_img/ico-support-call.png') no-repeat center left;
	display: block;
}

#map {
	height: 640px;
}

/* MANUAL OVERRIDES */

section#CoreAnalysis .outer {
	background-size: 100%;
	background-position-y: bottom;
	background-position-x: center;
}

section#CoreAnalysis2 .outer {
	background: rgb(229,87,128); /* Old browsers */
	background: -moz-linear-gradient(top, rgb(233, 90, 135) 1%, rgba(246,155,192,1) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top, rgb(233, 90, 135) 1%,rgba(246,155,192,1) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom, rgb(233, 90, 135) 1%,rgba(246,155,192,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e55780', endColorstr='#f69bc0',GradientType=0 ); /* IE6-9 */
}

.home section#CorePlatform .outer {
	background: rgb(220,252,250); /* Old browsers */
	background: -moz-linear-gradient(top, rgba(220,252,250,1) 0%, rgba(255,255,255,1) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top, rgba(220,252,250,1) 0%,rgba(255,255,255,1) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom, rgba(220,252,250,1) 0%,rgba(255,255,255,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#dcfcfa', endColorstr='#ffffff',GradientType=0 ); /* IE6-9 */
}

/* ============================ 
	4. FOOTER
============================== */

footer {
	background-color: #f7f7f7;
	font-size: .95em;
}

footer p {
	margin-bottom: 0;
}

footer .logo img {
	width: 90%;
	max-width: 256px;
}

footer .menu,
footer .social {
	padding-top: 20px;
}

footer .social ul {
	text-align: right;
	margin-top: -3px;
}

footer a:hover,
footer a:active,
footer a:focus {
	transition: all 200ms ease-in-out;
	top: 1px;
	position: relative;
	text-decoration: none;
}

footer .nav>li,
footer .nav>li>a {
	display: inline;
	font-weight: 300;
}

footer .nav>li>a {
	padding: 0 30px;
	color: #2c3e50;
}
footer .nav>li>a:first-child {
	padding-left: 0;
}

footer .nav>li>a:hover,
footer .nav>li>a:active,
footer .nav>li>a:focus {
	color: rgba(44, 62, 80, 0.8);
	background-color: transparent;
}

footer .contact {
	padding-top: 40px;
	opacity: 0.5;
	font-size: .9em;
}

.social .menu-item {
	display: inline-block;
	margin-right: 20px;
	margin-bottom: 10px;
}
.social .menu-item:last-child {
	margin-right: 0;
}

.social .menu-item a {
	display: block;
	padding-left: 38px;
	height: 30px;
	line-height: 30px;
	background-size: 30px;
	background-repeat: no-repeat;
	background-position-x: left;
	background-position-y: center;
}

.social .menu-item.menu-item-facebook a {
	background-image: url('_css/_img/ico-social-facebook.png');
	color: #4764b4;
}

.social .menu-item.menu-item-linkedin a {
	background-image: url('_css/_img/ico-social-linkedin.png');	
	color: #2173b3;
}


/* ============================ 
	5. UI + FORMS
============================== */

/* buttons */

.btn,
.nav-main .navbar-nav>li.menu-item-cta>a,
._submit {
	padding: 23px 30px;
	font-size: 15px;
	font-weight: 500;
	line-height: 0;
	background-color: transparent;
	border: 2px solid #2c3e50;
	color: #2c3e50;
	border-radius: 0;
	letter-spacing: 0.075em;
	text-transform: uppercase;
	position: relative;
	transition: color 200ms ease-in-out, background-color 200ms ease-in-out, border-color 200ms ease-in-out;
}

.btn:hover,
.btn:active,
.btn:focus,
.nav-main .navbar-nav>li.menu-item-cta>a:hover,
.nav-main .navbar-nav>li.menu-item-cta>a:active,
.nav-main .navbar-nav>li.menu-item-cta>a:focus,
._submit:hover,
._submit:active,
._submit:focus {
	transition: all 200ms ease;
	transition: color 200ms ease-in-out, background-color 200ms ease-in-out, border-color 200ms ease-in-out;
}

.nav-main .navbar-nav>li.menu-item-cta,
.btn-navy {
	color: #2c3e50;
	border-color: #2c3e50;
}

.btn-navy:hover,
.btn-navy:active,
.btn-navy:focus,
.nav-main .navbar-nav>li.menu-item-cta>a:hover,
.nav-main .navbar-nav>li.menu-item-cta>a:active,
.nav-main .navbar-nav>li.menu-item-cta>a:focus,
._submit:hover,
._submit:active,
._submit:focus {
	color: #fff;
	background-color: #2c3e50;
	border-color: transparent;
}

.btn-navy-solid {
	color: #FFFFFF;
	background-color: #2c3e50;
	border: none;
	box-shadow: 0 5px 10px rgba(0,0,0,0.3);
	transition: margin 0.3s ease;
}

.btn-navy-solid:hover,
.btn-navy-solid:active,
.btn-navy-solid:focus {
	color: #FFFFFF;
	margin: -3px 0 3px 0;
	transition: margin 0.3s ease;
}

.btn-pink {
	color: #f05c85;
	border-color: #f05c85;
}

.btn-pink:hover,
.btn-pink:active,
.btn-pink:focus {
	color: #fff;
	background-color: #f05c85;
	border-color: transparent;
}

.btn-pink-solid {
	color: #FFFFFF;
	background-color: #f05c85;
	border: none;
	transition: margin 0.3s ease;
}

.btn-pink-solid:hover,
.btn-pink-solid:active,
.btn-pink-solid:focus {
	color: #FFFFFF;
	margin: -3px 0 3px 0;
	transition: margin 0.3s ease;
}

.btn-teal {
	color: #14d5c4;
	border-color: #14d5c4;
}

.btn-teal:hover,
.btn-teal:active,
.btn-teal:focus {
	color: #fff;
	background-color: #14d5c4;
	border-color: transparent;
}

.btn-teal-solid {
	color: #FFFFFF;
	background-color: #14d5c4;
	border: none;
	transition: margin 0.3s ease;
}

.btn-teal-solid:hover,
.btn-teal-solid:active,
.btn-teal-solid:focus {
	color: #FFFFFF;
	margin: -3px 0 3px 0;
	transition: margin 0.3s ease;
}

/* Forms */

.form-col .form {

}

::-webkit-input-placeholder { color: #6c7885; }
::-moz-placeholder { color: #6c7885; }
:-ms-input-placeholder { color: #6c7885; }
:-moz-placeholder { color: #6c7885; }

._form ._form-content {
	padding-top: 1em;
}

._form ._form_element {
	margin-bottom: 2.25em;
	font-size: 16px;
}

._form ._form_element input[type=text],
._form ._form_element input[type=email],
._form ._form_element textarea {
	border: none;
	border-bottom: 2px solid #2c3e50;
	width: 100%;
}

.blog-post .side .subscribe form ._form-content {
	clear: both;
}

.blog-post .side .subscribe ._form-label {
	display: none;
}

.blog-post .side .subscribe ._form_element input[type=text] {
	width: 100%;
	border: none;
	background-color: #f7f7f7;
	padding: 13px;
}

.blog-post .side .subscribe ._form_element,
.blog-post .side .subscribe ._button-wrapper {
	display: block;
	float: left;
	margin: 0;
}

.blog-post .side .subscribe ._form_element {
	width: 75%;
}
.blog-post .side .subscribe ._button-wrapper {
	width: 25%;
}

.blog-post .side .subscribe ._submit {
	width: 100%;
	border: none;
	background-color: #2c3e50;
	color: #11ead7;
	padding: 24px 5px;
	display: block;
}

.modal-subscribe ._form ._form-label {
	display: none;
}

.modal-subscribe .modal-content {
	background-color: rgba(0,0,0,0);
}

.modal-subscribe ._form ._form_element input[type=text], 
.modal-subscribe ._form ._form_element input[type=email], 
.modal-subscribe ._form ._form_element textarea {
	background-color: rgba(0,0,0,0);
}

._form ._error {
	color: #d82c18;
}

._form-title {
	font-weight: 600;
	font-size: 2em;
}

._html-code,
._form-thank-you {
	color: #6c7885;
	font-weight: 600;
	font-size: 1.1em;
}

/* Modals */

.modal-backdrop {
	background-color: rgba(255,255,255,0.97);
}

.modal-backdrop.in {
    filter: alpha(opacity=100);
    opacity: 1;
}

.modal-dialog {
    margin: 7.5% auto 0 auto;
}

.modal-content {
    background-color: #fff;
    border: none;
    border-radius: 0;
    -webkit-box-shadow: none;
    box-shadow:none;
}

.modal-subscribe .modal-dialog {
    width: 480px;
    max-width: 90%;
    color: #2c3e50;
}

.modal-subscribe .modal-dialog p {
	color: #6c7885;	
}

.modal .close {
	float: none;
	position: absolute;
	top: -52px;
	right: -28px;
	font-size: 45px;
	line-height: 1;
	color: #000;
	filter: alpha(opacity=20);
	opacity: .2;
}

.modal-subscribe .link-close {
	margin-top: 1.5em;
}

.link-close {
	border: none;
	background: transparent;
	font-weight: 600;
	color: #37bbab;
	text-decoration: underline;
}

.link-close:hover {
	opacity: 0.5;
	transition: opacity 200ms ease;
}

._button-wrapper .link-close {
	padding-left: 1.5em;
}

/* ============================ 
	6. VIEWPORTS
============================== */

/* small mobile and down */
@media only screen and (max-width:500px) {

	body {
		font-size: 14px;
	}

	.pad-t,
	.items article {
		padding-top: 70px;
	}
	.items article:first-child {
		padding-top: 0;
	}
	.pad-b,
	.section.break .items .row {
		padding-bottom: 70px;
	}
	
	.margin-t {
		margin-top: 60px;
	}
	.margin-b {
		margin-bottom: 60px;
	}

	.break .content.narrow .title {
		padding: 0 5%;
	}
	.break .content.narrow .text {
		padding: 0 10%;	
	}

	.calc .block {
		padding-left: 10px;
		padding-right: 10px;
	}

	section#CoreAnalysis .outer {
		background-size: 200%;
	}

	.cta .circle {
		width: 340px;
		height: 340px;
		border-radius: 170px;
	}

	.modal-lightbox .modal-dialog {
		width: 100%;
	}

}

/* mobile and down */
@media only screen and (max-width:767px) {

	body {
		font-size: 15px;
	}

	.nav-main {
		font-size: 1em;
	}

	.nav-main .navbar-collapse {
		margin-left: -15px;
		margin-right: -15px;
	}

	.nav-main .navbar-collapse {
		background-color: #f7f7f7;
	}

	.nav-main .navbar-nav {
		margin-left: 0;
		margin-right: 0;
	}
	
	.nav-main .navbar-nav.primary {
	    display: block;
	}
	
	.nav-main .navbar-nav.primary>li {
		border-bottom: none;
	}

	.nav-main .navbar-nav.primary>li>a {
	    border-bottom: none;
	}
	
	.nav-main .navbar-nav.primary>li>a:hover, .nav-main .navbar-nav.primary>li>a:active, .nav-main .navbar-nav.primary>li>a:focus {
		border-bottom: none;
		background-color: #f6f6f6;
		color: rgba(44, 62, 80, 0.8);
	}
	
	.pad-t,
	.items article,
	.hero.banner .content {
		padding-top: 80px;
	}
	.items article:first-child {
		padding-top: 0;
	}
	.pad-b,
	.section.break .items .row,
	footer .col,
	.hero.banner .content {
		padding-bottom: 80px;
	}
	.hero .pad-t {
		padding-top: 40px;
	}
	.hero .pad-b {
		padding-bottom: 40px;
	}
	
	.margin-t {
		margin-top: 60px;
	}
	.margin-b {
		margin-bottom: 60px;
	}
	
	.container-fluid>.navbar-header,
	.container>.navbar-header {
		margin-left: 0;
		margin-right: 0;
	}

	.section.hero .outer {
		background-image: none!important;
		background-color: #c5eceb;
	}

	.subtitle,
	.multicol .block.narrow .text,
	.multicol .block.narrow .title {
		font-size: 1em;
	}

	.break .content.narrow .title {
		padding: 0 10%;
	}
	.break .content.narrow .text {
		padding: 0 15%;	
	}

	.multicol .col-xs-12.block,
	.blog-listing .col-xs-12.block {
		max-width: 440px;
	}

	.blog-post article img.indent-left {
		margin-left: 0;
		max-width: 100%;
	}	

	.blog-post article .main {
		font-size: 1em;
	}	

	.blog-post .side .subscribe {
		margin-top: 50px;
	}

	section#CoreAnalysis .outer {
		background-size: 150%;
	}

	.calc .slider-container {
		width: 75%;
		margin-top: 50px;
	}
	.calc .block {
		margin-bottom: 1em;
		width: 75%;
		margin-left: auto;
		margin-right: auto;
		float: none;
	}
	.calc .figures .lead {
		margin-bottom: .75em;
	}

	.blog-listing .block article {
		margin-bottom: 3em;
	}
	.blog-listing .block:last-child article {
		margin-bottom: 0;
	}
	
	footer .col:last-child {
		padding-bottom: 0;
	}
	footer .copyright {
		text-align: center;
	}
	
	footer .col {
		text-align: center;
		padding-bottom: 40px;
	}

	footer .nav>li>a {
		display: block;
		padding-top: 10px;
		padding-bottom: 10px;
	}
	footer .nav>li>a:first-child {
		padding-left: 15px;
	}
	footer .social ul {
		text-align: center;
	}
	
	.modal-lightbox .modal-dialog {
		width: 80%;
	}
	
	.modal .close {
		top: -56px;
		right: -3px;
	}
	
}

/* tablet and down */
@media only screen and (max-width:990px) {
	
	.nav-main {
	    height: 63px;
	}
	
	.nav-main .navbar-brand {
	    height: 38px;
	    margin: 12px 0 0 0;
	}
	
	.nav-main .menu-item-cta {
	    padding-top: 10px;
	}
	
	.nav-main .navbar-nav>li>a,
	.scroll .nav-main .navbar-nav>li>a {
		padding: 5px 10px 0 2px;
	}
	
	.nav-main .navbar-nav>li>a {
		line-height: 55px;
	}
	
	.nav-main .navbar-nav>li.menu-item-cta>a {
	    padding: 20px 25px;
	}

}

/* tablet only */
@media only screen and (min-width:768px) and (max-width:991px) {


	.section .outer .col-sm-1,
	.section .outer .col-sm-offset-1 {
		margin-left: 5.33333333%!important;
	}

	.nav-main .navbar-nav > li > a {
		padding-left: 15px;
		padding-right: 15px;
	}

	.lead {
		font-size: 1.1em;
		line-height: 1.5em;
	}

	.pad-t {
		padding-top: 90px;
	}
	.pad-b,
	.section.break .items .row {
		padding-bottom: 90px;
	}
	.hero .pad-t {
		padding-top: 50px;
	}
	.hero .pad-b {
		padding-bottom: 50px;
	}
	
	.margin-t {
		margin-top: 70px;
	}
	.margin-b {
		margin-bottom: 70px;
	}

	.title {
		font-size: .9em;
	}

	.icon {
		width: 50px;
		height: 50px;
	}
	.icon.number > span {
		line-height: 50px;
	}

	.break .content.narrow .title {
		padding: 0 15%;
	}

	.break .content.narrow .text {
		padding: 0 25%;	
	}

	.calc .figures .hr {
		font-size: 1.6em;
	}

	section#CoreAnalysis .outer {
		background-size: 140%;
	}
	#CoreAnalysis .block {
		margin-bottom: 15%;
	}

	footer .menu,
	footer .social {
		padding-top: 6px;
	}

	footer .nav>li>a {
		padding: 0 20px;
	}
	
}

/* small desktop and tablet */
@media only screen and (min-width:768px) and (max-width:1199px) {

	body {
		font-size: 15px;
	}

	.nav-main {
		font-size: 1em;
	}
	
}

/* Tablet and Up */
@media (min-width: 768px) {

	.navbar>.container .navbar-brand, 
	.navbar>.container-fluid .navbar-brand {
	    margin-left: 0;
	}
	
	.navbar-right {
	    margin-right: 0;
	}
	.nav-main .navbar-nav > li > a {
		padding-left: 4px;
		padding-right: 10px;
	}



}

/* small desktop only */
@media only screen and (min-width:991px) and (max-width:1199px) {

	.nav-main .col-md-10.col-md-offset-1,
	.section .outer .col-md-10.col-md-offset-1 {
		margin-left: 5.33333333%;
		width: 89.33333333%;
	}

	.nav-main .navbar-nav > li > a {
		padding-top: 0;
		padding-bottom: 0;
		padding-left: 15px;
		padding-right: 15px;
	}

	.lead {
		font-size: 1.2em;
		line-height: 1.5em;
	}

	.pad-t {
		padding-top: 100px;
	}
	.pad-b,
	.section.break .items .row {
		padding-bottom: 100px;
	}
	.hero .pad-t {
		padding-top: 60px;
	}
	.hero .pad-b {
		padding-bottom: 60px;
	}
	
	.margin-t {
		margin-top: 80px;
	}
	.margin-b {
		margin-bottom: 80px;
	}

	.icon {
		width: 55px;
		height: 55px;
	}
	.icon.number > span {
		line-height: 55px;
	}

	.break .content.narrow .title {
		padding: 0 22.5%;
	}

	.break .content.narrow .text {
		padding: 0 31%;	
	}

	footer .menu,
	footer .social {
		padding-top: 12px;
	}

	footer .nav>li>a {
		padding: 0 20px;
	}
	
}

/* large desktop */
@media only screen and (min-width:1200px) and (max-width:1500px) {

	.nav-main .col-lg-10.col-lg-offset-1,
	.nav-main .col-md-10.col-lg-offset-1,
	.section .outer.col-lg-10.col-lg-offset-1,
	.section .outer .col-md-10.col-md-offset-1 {
		margin-left: 5.33333333%;
		width: 89.33333333%;
	}
	
}

/* large desktop and up */
@media only screen and (min-width:1200px) {

	.nav-main .navbar-nav > li > a {
		padding-top: 0;
		padding-bottom: 0;
		padding-left: 15px;
		padding-right: 15px;
	}

}

/* extra large desktop and up */
@media only screen and (min-width:1500px) {

	body {
		font-size: 16px;
	}

	.nav-main .navbar-nav > li > a {
		padding-top: 0;
		padding-bottom: 0;
		padding-left: 25px;
		padding-right: 25px;
	}

	.break .content.narrow .title {
		padding: 0 29%;
	}

	.break .content.narrow .text {
		padding: 0 35%;	
	}

	.title h1 {
		font-size: 2.5em; /* 40 / 16 = 2.5 */
		padding-right: 10%;
	}
	.hero .text {
		padding-right: 30%;
	}
		.home .hero .text {
			padding-right: 15%;
		}

	.calc .figures .hr {
		font-size: 2.45em;
	}

}