body * {
    font-family: 'PT Sans', sans-serif;
    color:#353535;
    -moz-hyphens: none;
  	-ms-hyphens: none;
  	-webkit-hyphens: none;
  	hyphens: none;

    /*font-family: 'Lato', sans-serif;   */
}

/* Hides bxslider images until JS has fully loaded */

#siteslides{visibility: hidden;}

.txtcenter{
	text-align: center;
}
.txtright{
	text-align: right;
}
.green{background: #24a93a;}
.red{background: #92192a;}
.blue{background: #1c84ba;}


.twocols{width:49%; margin-right: 2%;float: left;margin-bottom: 20px;}
.twocols:nth-child(2n+2){margin-right: 0%;}
.twocols:last-child{margin-right: 0%;}
.threecols{width:32%; margin-right: 2%;float: left;margin-bottom: 20px;}
.threecols:nth-child(3n+3){margin-right: 0%;}
.threecols:last-child{margin-right: 0%;}
.threecolstwo{width: 65%;margin-right: 0%;float: left;margin-bottom: 20px;}
.fourcols{width:23.5%; margin-right: 2%;float: left;}
.fourcols:nth-child(4n+4){margin-right: 0%;}
.fourcols:last-child{margin-right: 0%;}
.screenreader {position: absolute; top:0; left:-9999px}
.fade { opacity: 1 !important;}


 /* Clearfix

  ===========================================*/

  .cf:after,
  .grid-container:after{
    content:" ";
    display: table;
    clear: both;
  }

  input[type="submit"]

 /* Custom Grid Elements

  ===========================================*/

 .grid-logo {
  	width:100%;
  }
  .grid-nav {
  	width:100%;
  }

/* ==========  GENERIC STYLES ========== */



/* LINKS */

a:hover,
a:active,
.entry-content a:hover, .comment-content a:hover {
	color:#353535;
}
.entry-content a:hover, .comment-content a:hover,
.topbar a:hover, .topbar a:active {
	color:#595a5f;
}

a.circle {
	background-color: #696b6a;
	border-radius: 100px;
	color:white;
	width:18px;
	height: 18px;
	display: inline-block;
	text-align: center;
}
.entry-title a:hover {
	text-decoration: none;
	color:#353535;
}
.entry-title,

.home h2 {
	font-weight: normal;
	border-bottom: 2px solid #595a5f;	
	margin-bottom: 15px;
	padding-bottom: 8px;
}
.archive-title {
	border-bottom: 0;
	background: #efefef;
	border-left: 4px solid #595a5f;
	padding-left: 20px;
	padding-bottom:30px;
	padding-top:30px;
	margin-bottom: 0;
	margin-top: 10px;
}
.entry-content {
	clear: both;
}
.entry-content p:first-child {
	font-weight: bold;
}
/* IMAGES */
/* Use image wrap to surround images that shouldn't adapt their height or width */

.image-wrap {
	position: relative;
  	width: 100%;
  	overflow: hidden;
  	position: relative;  	  	
}

/* Overwrite the responsive image styles for images within image-wrap - don't forget to set height on image-wrap element due to position absolute used below */

.image-wrap img {
	width:150%;
	max-width:none;
	position: absolute;
	right: 0;
	top:0;
}
.page-banner {
	height: 100px; 
}
/* BUTTONS */
.btn,

input[type="submit"] {
	background-color: #c0c1c5;
	padding: 10px 24px 8px 24px;
	color: #000;
}

.btn:hover,

input[type="submit"]:hover {
	background-color: #443e3e;
	text-decoration: none;
}
.btn:active,
.btn:focus,
input[type="submit"]:active,
input[type="submit"]:hover {
	background-color: #443e3e;
}

input[type="submit"].button-grey {
	background-color: #353535;
}
input[type="submit"].button-grey:hover {
	background:#494848;
}
input[type="submit"].button-grey:active,
input[type="submit"].button-grey:focus  {
	background:#262626;
}
.btn-small {
	padding:4px 19px 3px 19px;
	color: #000;
}

/* Tables */
.entry-content table,
.entry-content table tr {
	border-left:1px solid #cfcfcf;
	border-top:1px solid #cfcfcf;
}
.entry-content table tr td,
.entry-content table tr th {
	border-right:1px solid #cfcfcf;
	border-bottom:1px solid #cfcfcf;
	padding:1px 8px;
}
.entry-content table thead td,
.entry-content table thead th {
	background: #595a5f;
	color: white;
	font-weight: normal;
	border:1px solid #595a5f;
}
/* ========== TOPBAR ========== */
.topbar {
	background:#f1f1f1;
	padding:8px 0;
	font-size: 0.75em;
	text-transform: uppercase;
	text-align: center;
	line-height: 2;	
}
.login-area a {
	font-weight: bold;		
}
.site-contact a {
	display: inline-block;
	margin-right: 5px;
	position: relative;
	top:3px;
}
.site-contact a.circle i{
	color: white;
	position: relative;
	top:-2px;
}
.site-contact .contact-tel {
	margin-left: 15px;
}

/* ==========  HEADER ========== */

.home-link {
	display: block;	
	text-align: center;
	margin-top: 28px;
	margin-bottom: 28px;
}
.home-link h1 {
	padding: 0;
	margin: 0;
	display: inline;
}
.site-title img {
	width: 250px;
}
/* ========== NAVIGATION ========== */
.navbar {
	background-color: #595a5f;
	margin-left: 0;
	margin-right: 0;
	text-transform: uppercase;
	font-family: 'Open Sans', sans-serif;
}
.nav-menu {
	background: #cfcfcf;
	text-align: center;
}
.menu-toggle {
	width:100%;
}
.toggled-on .nav-menu > li a:hover, 
.toggled-on .nav-menu > ul a:hover {
	background: #afafaf;
	color:#353535;
}
.nav-menu .current_page_item > a, 
.nav-menu .current_page_ancestor > a, 
.nav-menu .current-menu-item > a, 
.nav-menu .current-menu-ancestor > a {
	font-style: normal;
	font-weight: bold;
	color:#353535;
}
.toggled-on .nav-menu > li a:focus, 
.toggled-on .nav-menu > ul a:focus {
	background: #666;
}

/* ========== CALLOUT BOXES ========= */

.callout-services {	
	margin-left: 20px;
	margin-right: 20px;
	border-bottom: 5px solid #efefef;
	padding-bottom: 10px;
}
.callout-services h2 {
	margin-bottom: 5px;
	border-bottom: 0;
	font-size: 1.8em;
}
.icon-outer {
	border:2px solid #595a5f;
	border-radius: 100%;
	display: inline-block;
	width:32px;
	height: 32px;
}
.callout-services .fa {
	color:#595a5f;
	font-size: 20px;
	position: relative;	
}
.callout-corporate .fa 	{ top:-5px; left:3px; font-size: 20px; }
.callout-personal .fa 	{ top:-6px; left:6px; font-size: 22px;}
.callout-fxcalc .fa 	{ top:-3px; left:8px; font-size: 27px; font-weight:bold;}
.callout-excrt .fa 		{ top:-6px; left:4px; font-size: 18px;}

.callout-services .callout-title {	
	display: inline-block;
	font-size: 0.8em;
	font-weight: normal;
	position: relative;
	top:-8px;
}
/* ========== INTERNALS ========== */
.site-content {
	border-bottom: 5px solid #efefef;
}
.hentry {
	padding-top: 25px;
}

/* ========== SIDEBAR ========== */

.sidebar-page {
	margin-bottom: 40px;
}

/* Sidebar - intro page */

.intro-contact-dets {	
	margin-bottom:15px;
}
.intro-contact-dets p {
	margin-bottom: 5px;
}
.sidebar-intro p i.fa {
	top:0;
	left: 0;
	margin-right: 8px;
}
/* ========== NEWSLETTER SIGNUP ========== */

.part-newsletter {	
	background:#efefef;
	text-align: center;
	padding:40px 20px;	
}
.part-newsletter p {
	font-size: 1.2em;
}

.part-newsletter input[type="text"],
.part-newsletter input[type="email"] {
	width:100%;
	margin-bottom: 12px;
	border:0;
	padding:8px 12px;
}
/* ========== FOOTER ========== */

.site-footer {
	background: #353535;		
}
.site-footer * {
	color: white;
	font-size: 1em;
}
.footer-widget {	
	border-bottom:1px solid #707070;
	padding-top: 20px;	
}

.footer-widget .widget-title {
	letter-spacing: 1px;
	text-transform: uppercase;
	margin-top: 0;
	margin-bottom: 10px;
}
.footer-widgets a {
	color:white;
}
.footer-widgets ul {
	padding:0;
	list-style-type: none;
	margin-top:0;
}
.footer-map .widget-title {
	display: none;
}
.footer-map .footer-widget{
	padding:0;
	border-bottom: 0;
}
.site-info {
	padding:20px;
}
.site-info * {
	color:#9c9c9c;
}
.site-info p {
	margin: 0 0 5px 0
}
.site-info a {
	color:white;
	text-decoration: underline;
}
.ftr-legal {
	margin-bottom: 15px;
}

/* ======= BX SLIDER ========== */

ul.bxslider {
	position: relative;
	list-style-type: none;
}
.home-testimonials .bx-viewport {
	clear: both;
}
.home-banner {
	height: 310px;
}
.home-banner img {
	width: auto;
	max-width: none;
	opacity: 0.8;
}
.slidecaption-container {
	position: absolute;
	top:0;
	left:0;
	z-index: 1001;
	padding-left:20px;
	padding-right:20px;	
	text-align: center;		
}
.slidecaption {
}
.slidecaption h1 {
	text-transform: uppercase;
	font-weight: normal;
	border-bottom: 2px solid #595a5f;
	margin-bottom: 25px;
	font-size: 1.3em;
	text-align: center;
}
.slidecaption p {
	background:rgba(255,255,255,0.5);
	padding:10px 10px 15px 10px;
	color:black;
	text-transform: capitalize;
}
.slidecaption h1 span {
	color:#595a5f;
}

/* Front Page */

.home .site-content {
	border-bottom:2px solid #595a5f;
	margin-bottom: 25px;
	margin-left: 20px;
	margin-right: 20px;
}
.home h2 {
	font-weight: normal;
}
.home p {
	clear: left;
}
.callout-container {
	margin-bottom: 15px;
}

/* ========== TESTIMONIALS & LATEST NEWS =========== */

.testimonials-news-content {	
	padding-left: 20px;
	padding-right: 20px;
}
.home-testimonials {
	margin-bottom: 15px;
}
.home-testimonials h2 {
	text-align: center;		
	float: none;
}
.home-testimonials li {
	margin-left: 0;
}
.home-testimonials li blockquote {
	margin:0;		
}
.home-testimonials blockquote p.testimonial-quote:before {
	content: '"';
}
.home-testimonials blockquote p.testimonial-quote:after {
	content: '".';
}
.home-testimonials blockquote p.testimonial-source {
	color:#595a5f;
	font-style: normal;
	font-weight: bold;
	line-height: 1.3;
}
.home-latestnews {
	margin-bottom: 25px;
}
.home-latestnews .latestnews-content {
	clear: both;
	margin-bottom: 25px;
}
.home-latestnews .news-listing-title {
	border: 0;
	font-weight: bold;
	font-size: 1.4em;
	margin-top: 0;
	margin-bottom: 0;
}
.home-latestnews .news-excerpt {
	/*border:1px solid red;*/
	overflow: hidden;	
	text-overflow: ellipsis;
}
.home .news-article {
	border: 0;
}

/* ========== NEWS SIDEBAR ========= */

.sidebar-news .sidebar-widget {
	background: #f1f1f1;
	border-bottom: 5px solid #595a5f;
	margin-left:20px;
	margin-right: 20px;	
}
.news-widget-area {
	margin-bottom: 40px;
}
.sidebar-news .sidebar-widget ul {
	list-style-type: none;
	padding:0;
	margin-left: 20px;
	margin-right: 20px;
	margin-top: 5px;
}
.sidebar-news .sidebar-widget .widget-title {
	color:#595a5f;
	padding-left:20px;
	padding-right: 20px;
	padding-top: 10px;
	margin-bottom: 5px;
}

/* ========== NEWS INDEX PAGE ========== */

.post-date {
	display: block;
	font-size: 0.875em;
  	font-style: italic;
  	margin-top: 0;
  	margin-bottom: 15px;
}
.news-excerpt, .post-date {
	clear: left;
}
.news-article {
	border-bottom:5px solid #efefef;
}
.news-listing-title {
	margin-bottom: 0;
}

/* ========== WP PAGENAVI =========== */

.wp-pagenavi {
	margin-bottom: 25px;
	border-top:5px solid #efefef;
	padding-top:25px;
	padding-left:20px;
}
.wp-pagenavi span.current {
	background: #595a5f;
	color: white;
	border-color:#595a5f;
}
.wp-pagenavi .pages {
	border: 0;
}

/* ========== FORM ELEMENTS ========== */

.page-template-page-contact .entry-content input[type="text"],
.page-template-page-contact .entry-content input[type="email"],
.page-template-page-contact .entry-content input[type="password"],
.page-template-page-contact .entry-content textarea {
	background: #efefef;
	border-radius: 8px;
	border:0;
	padding:10px 15px;
	width:100%;
}

/* ========== CONTACT PAGES ========== */

#secondary .entry-content {
	padding-left: 20px;
  	padding-right: 20px;
}
.sidebar-contact h2 {
	margin-bottom: 10px;
	font-size: 1.6em;
	color:#353535;
}
.sidebar-contact ul {
	list-style-type: none;
	padding: 0;
}
.map-wrap {
	height: 240px;
}
.textwidget iframe {
	width:100%;
	height: 120px;
	border:0;
}
















































/************************************************************************************
Larger than 200
*************************************************************************************/

@media screen and (min-width: 200px) {

	/* disable webkit text size adjust (for iPhone) */

	html {

		-webkit-text-size-adjust: none;

	}
}

/************************************************************************************
Larger than 480
*************************************************************************************/

@media screen and (min-width: 480px) {
}

/************************************************************************************
Larger than 600
*************************************************************************************/

@media screen and (min-width: 600px) {	

		.topbar {
			text-align: left;
		}
		.login-area {
			width:300px;
			float:left;		
			margin-left: 1%;
		}
		.site-contact {
			width:270px;
			float: right;		
			margin-right: 1%;
			text-align: right;
		}
}

/************************************************************************************
Larger than 643
*************************************************************************************/

@media screen and (min-width: 643px) {	


	.entry-title, .home h2 {	
		font-size: 2em;
	}
	.nav-menu {
		background: white;
	}

	.nav-menu .current_page_item > a,
	.nav-menu .current_page_ancestor > a,
	.nav-menu .current-menu-item > a,
	.nav-menu .current-menu-ancestor > a {
		border-bottom:2px solid #595a5f;
	}
	.nav-menu li a {
		padding-left:0;
		padding-right: 0;
		margin-left: 20px;
		margin-right: 20px;
		padding-bottom: 18px;
		transition: border-color 1s ease, margin-left 0.5s ease, margin-right 0.5s ease;
		border-color:white;
	}
	.nav-menu li:hover > a, 
	.nav-menu li a:hover, 
	.nav-menu li:focus > a, 
	.nav-menu li a:focus,
	.nav-menu li.current_page_item a,
	.nav-menu li.current_page_parent a
	 {
		background: white;
		border-bottom:2px solid #595a5f;
		color:#353535;
	}
	.nav-menu li.current_page_item a,
	.nav-menu li.current_page_parent a
	 {
		font-weight: bold;
	}
	.news-article {
		margin-left: 0;
		margin-right: 0;
	}
}

/************************************************************************************
Larger than 660
************************************************************************************/

@media screen and (min-width: 660px) {	

	.entry-title, .home h2 {
		float:left;
		font-size: 1.6em;
	}
	.archive-title {
		margin-bottom: 25px;
	}
	.navbar {
		margin-bottom: 35px;
	}
	.navbar, .nav-menu {
		background: white;
	}
	/* SIDEBAR */
	.sidebar-page {
		border-left: 5px solid #efefef;	
		margin-top: 5px;		
	}

	/* IMAGES */

	/* Use image wrap to surround images that shouldn't adapt their height or width */
	.image-wrap {
		position: relative;
	  	width: 100%;
	  	overflow: hidden;
	  	position: relative;  	
	  	text-align: right;
	}
	/* Overwrite the responsive image styles for images within image-wrap - don't forget to set height on image-wrap element due to position absolute used below */
	.image-wrap img {
		width:auto;
		max-width:none;
		position: absolute;
		right: 0;
		top:0; 	
	}
	.page-banner {
		height: 310px; /* Set Height specific to page-banner element */
	}
	/* INTERNALS */
	.site-content {
		border: 0;
	}
	/* NEWSLETTER */
	.part-newsletter p, 
	.part-newsletter input[type="email"], 
	.part-newsletter input[type="text"], 
	.part-newsletter input[type="submit"],
	.part-newsletter form,
	.part-newsletter .site-mc-form {
		display: inline-block;		
		width: auto;
	}
	.part-newsletter input[type="email"], 
	.part-newsletter input[type="text"], 
	.part-newsletter input[type="submit"] {
		margin-left: 15px;
	}
	.part-newsletter .grid-4,
	.part-newsletter .grid-8 {
		float: none;
	}

	/* FOOTER */
	.footer-widgets-content {
		border-bottom: 1px solid #707070;
	}
	.footer-widget {
		border: 0;
		text-align: left;
	}
	.footer-map .textwidget {
		margin-top: 23px;
	}
	.site-info {
		padding-left:0;
		padding-right:0;
	}
	.ftr-legal {
		text-align: left;
	}
	.ftr-copyright {
		text-align: right;
	}
	.ftr-legal {
		margin-bottom: 0;
	}

	/* BX SLIDER */

	.slidecaption-container {		
	    left:0;
	    right:0;
	    margin-left:auto;
	    margin-right:auto;
	    max-width: 660px;
	}
	.slidecaption h1 {
		font-size: 3em;
	}

	/* CALLOUT BOXES */

	.callout-container {
		padding:0 1%;
		clear:both;		
	}
	.home .grid-callout {
		float:left;
		width:46%;
		border-bottom: 0;
		margin-right: 0;
		margin-right: 0;
	}
	.home .callout-services h2 {
		border-bottom: 0;
	}

}

/************************************************************************************
Larger than 820
*************************************************************************************/

@media screen and (min-width: 820px) {	


  	.grid-container .grid-logo {
	  	width:27.333%;
	  	text-align: left;
	  	margin-left: 1%;
	  	padding-left: 0;
  	}
  	.grid-container.site-header > [class^="grid-"]:first-child {
  		margin-left: 1%;
  	}
  	.grid-nav {
  		width:70.667%;	  	
  		margin-right: 1%;
  	}

	/* Navigation */

	.navbar {
		background-color: transparent;
		position: relative;
		top:40px;
	}	
	.nav-menu {
		text-align: right;
	}
	.nav-menu li a {
		margin-left: 20px;
		margin-right: 0;
	}

	/* BX SLIDER */

	.slidecaption-container {
		max-width:1140px; 
		width:100%;
		padding-left:1%;
		text-align: left;
		margin-top: 25px;
	}
	.slidecaption {		
		width: 410px;		
	}
	.slidecaption h1, 
	.slidecaption p {
		text-align: left;
	}
	.slidecaption h1 {
		font-size: 2.1em;
	}
	/* CALLOUTS */
	.home .grid-callout { 
		width:22.0%;
		text-align: center;
	}
	.home .grid-callout h2 {
		width:100%;
		text-align: left;
	}
	.home .grid-callout .icon-outer {
		  display: block;		  
		  margin-left: auto;
		  margin-right: auto;
		  margin-bottom: 12px;
	}
	.home .callout-title,
	.home .callout-services p {
		width:100%;
		text-align: center;
	}

}
/************************************************************************************
Larger than 960
*************************************************************************************/
@media screen and (min-width: 960px) {

	.nav-menu li a {
		margin-left: 45px;  	
	}

}
/************************************************************************************
Larger than 1080
*************************************************************************************/
@media screen and (min-width: 1080px) {	



}

/************************************************************************************
Larger than 1120
*************************************************************************************/
@media screen and (min-width: 1120px) {	

	
	.home .site-content {
		margin-left: 0;
		margin-right: 0;
	}
		/* CALLOUTS */
	.home .grid-callout h2 {
		width:auto;
	}
	.home .grid-callout .icon-outer {
		  display: inline-block;		  
		  margin-left: auto;
		  margin-right: auto;
		  margin-bottom: 12px;
	}
	.home .callout-title,
	.home .callout-services p {
		width:auto;
		text-align: left;
	}
	.home .grid-callout {
		margin-left:0;
		padding-left:1%;
		padding-right:1%;
		width:25%;
		text-align: left;
	}
	/* NEWSLETTER */
	.part-newsletter {
		text-align: left;
	}
	.part-newsletter p {
		margin-bottom: 0;
		font-size: 1.6em;
		/*position: relative;
		top:3px;*/
	}
	.part-newsletter .grid-4 {
		width:33.333%;
		text-align: left;
		float: left;
	}
	.part-newsletter .grid-8 {
		width:66.667%;
		text-align: right;
		float: left;
	}
	.part-newsletter input[type="text"], 
	.part-newsletter input[type="email"] {
		width: 275px; /* 275 / 800 */
		margin-bottom: 0;
	}

}













