/* Generic CSS */
html, body, form {
	height: 100%;
}

body {
	overflow-y: scroll;
	-webkit-overflow-scrolling: touch;
}

.wrapper {
	min-height: 100%;
	height: auto !important;
	height: 100%;
	margin: 0 auto;
	position: relative;
}

body {
	font-family: 'Lato', sans-serif;
	font-size: 62.5%;
	font-weight: 400;
	color: #333;
}

.clear {
	clear: both;
	margin: 0;
	padding: 0;
}

.hr {
	background-color: #ccc;
	clear: both;
	display: inline-block;
	height: 1px;
	margin: 0;
	width: 100%;
}

h1.page-title {
	font-size: 3.2em;
	font-weight: 400;
	margin: 11px 0 0 0;
	color: #333;
}

h2.section-title {
	font-size: 3em;
}

.fb-like {
	width: 450px;
	height: 24px;
	float: left;
	display: inline;
	margin: 15px 0 0 71px;
}

/* Header CSS */
#header {
	background: #2b5068;
	width: 100%;
	height: 85px;
}

.header-container {
	margin: 0 auto;
	max-width: 980px;
}

a.logo {
	height: 50px;
	float: left;
	display: inline;
	margin: 11px 0 0 0;
}

.header-buttons-container {
	float: right; 
	display: inline;
	position: relative; 
	margin: 20px 0 0 0;
}

.header-button {
	float: left;
	display: inline;
	background: #3a759b;
	font-family: Lato;
	font-weight: 700;
	font-size: 1.7em;
	padding: 12px 12px 11px 12px;
	margin-right: 10px;
	border-radius: 2px;
	color: #fff;
	-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=90)";
	filter: alpha(opacity=90);
	opacity: 0.9;
	text-decoration: none;
}

.header-button.get-listed-orange {
	background: #ff751a;
}
	.header-button img {
		margin-right: 10px;
	}

	.header-button.last {
		margin-right: 49px;
	}

.cs-container {
	position: absolute;
	right: 0;
	background: #3a759b;
	padding: 10px 10px;
	border: none;
	border-radius: 2px;
	color: #333;
	-ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=90)";
	filter: alpha(opacity=90);
	opacity: 0.9;
}

	.cs-container:hover {
			background: #fff;
	}

.country-flag {
	float: left;
	display: inline;
}

.cs-container:hover div.cs-options {
	display: block;
}

.cs-options {
	display: none;
	float: left;
	margin-top: 7px;
}

.cs-options span {
	color: #333;
}

.cs-options div {
	padding-top: 6px;
}

.btn-mobile-menu {
    display: none;
}

.mobile-menu-option {
    display: none;
}

.navbar-container {
	background: #3a759b;
	height: 31px;
}

.navbar-container {
	font-size: 1.2em;
	color: #fff;
}

.navbar-container .navbar-center {
	margin: 0 auto;
	max-width: 980px;
}

.navbar-container a {
	color: #fff;
}

.navbar-container .breadcrumbs-container {
	float: left;
	margin-top: 8px;
}

.navbar-container .user-login-container {
	float: right;
	margin-top: 8px;
}

/* Main CSS*/
#main-container {
	width: 100%;
	margin-top: 20px;
}

#main {
	max-width: 980px;
  margin: 0 auto;
	overflow: hidden;
}

h1.category-name {
	font-size: 3.2em;
	float: left;
	display: inline;
}

.view-selector {
	float: right;
	display: inline;
	margin-top: 13px;
	border-left: 1px solid #dadada;
}

.view-selector img {
	float: left;
	display: inline;
	border-top: 1px solid #dadada;
	border-bottom: 1px solid #dadada;
	border-right: 1px solid #dadada;
}

.view-selector img.on {
	border-top: 1px solid #999;
	border-bottom: 1px solid #999;
}

/* Last Updated */
.page-last-updated {
	font-size: 1.4em;
	float: left;
	margin: 100px 0 0 15px;
	color: #999;
}

/* Footer CSS */
#footer {
	background: url("../images/generic/bg-50.gif");
	width: 100%;
	min-height: 150px;
	margin-top: -150px;
	position: relative;
}

/* Footer CSS */
.footer-container {
	max-width: 1220px;
	margin: 0 auto 0 auto;
	padding: 20px 0;
}

.footer-container h3 {
	font-size: 1.8em;
	font-weight: 700;
	color: #666;
}

.footer-container p {
	font-size: 1.3em;
	line-height: 1.5;
	color: #999;
	max-height: 999px;
}

.footer-container ul {
	list-style: none;
	float: left;
	display: inline;
}

.footer-container ul li {
	font-size: 1.3em;
	line-height: 1.5;
	color: #999;
}

.footer-about-us {
	max-width: 670px;
	float: left;
	display: inline;
}

    .footer-about-us p {
        margin-top: 20px;
    }

.footer-links {
	float: left;
	display: inline;
	margin-left: 30px;
}

.footer-links ul {
    margin-top: 20px;
}

.footer-links ul li {
	background: url("../images/icons/arrow-right.png") left center no-repeat;
	padding-left: 15px;
}

.footer-social {
	float: left;
	display: inline;
	margin-left: 30px;
}

.footer-social ul {
    margin-top: 20px;
}

.footer-social ul li img {
	float: left;
	display: inline;
	margin-right: 10px;
}

.footer-container a {
	text-decoration: none;
	color: #999;
}

.intelligence {
	font-size: 1.1em;
	float: left;
	margin-top: 20px;
}

.intelligence a {
	text-decoration: underline;
	color: #333;
}

/* Featured Tiles CSS */
.featured-tiles {
	margin-top: 20px;
}

.featured-tile {
	background: #336b93;
	width: 313px;
	height: 100px;
	float: left;
	display: inline;
	margin-left: 20px;
	color: #FFF;
	text-decoration: none;
}

.featured-tile:first-child {
	margin-left: 0;
}

.featured-tile span {
	font-size: 2em;
	float: right;
	display: inline;
	margin: 24px 20px 0 0;
	color: #fff;
	line-height: 1.2;
}

.featured-tile strong {
	font-weight: 700;
}

/* Company Tiles CSS */
.company-tile {
	width: 295px;
	float: left;
	display: inline;
	padding: 15px;
	border-bottom: 1px solid #ccc;
    position: relative;
}

.tile-middle {
	border-left: 1px solid #ccc;
	border-right: 1px solid #ccc;
}

.tile-bottom {
	border-bottom: none;
}

.tile-right {
	border-left: 1px solid #ccc;
}

.company-tile:hover {
	box-shadow: 1px 1px 8px #888888;
}

.company-tile img {
	float: left;
	display: inline;
	box-shadow: 2px 2px 5px #888888;
}

.company-tile-info {
	float: left;
	display: inline;
	height: 78px;
}

.company-tile-name {
	font-size: 2em;
	margin-left: 10px;
}

.company-tile-name a {
	color: #333;
	text-decoration: none;
}

.company-tile-service {
  font-size: 1.3em;
  font-weight: 700;
  margin-left: 11px;
  line-height: 1.8;
  color: #3a759b;
}

.company-tile-last-reviewed {
  font-size: 1.2em;
	margin-left: 11px;
}

.company-tile-last-reviewed a {
	color: #333;
}

.company-tile .review-results-container {
	margin: 10px 0 0 10px;
}

.company-tile .review-count a {
	color: #3a759b;
}

.company-tile .show-context-menu {
  background: url('/images/user/btn-favorite-off.png');
  display: inline;
  right: 10px; 
  cursor: pointer;
  width: 16px;
  height: 16px;
  position: absolute; 
}

/* Review Tiles CSS */
.review-tile {
	width: 295px;
	float: left;
	display: inline;
	padding: 15px 15px 15px 15px;
}

.review-tile-middle {
	border-left: 1px solid #ccc;
	border-right: 1px solid #ccc;
}

.review-tile-icon {
	float: left;
	display: inline;
	box-shadow: 2px 2px 5px #888888;
}

.review-tile-info {
	float: left;
	display: inline;
	margin: 0;
}

.review-tile-info h3 {
	font-size: 2em;
}

.review-tile-info h3 a {
	text-decoration: none;
	color: #333;
}

.review-tile-info span {
	font-size: 1.2em;
	font-weight: 700;
	line-height: 1.9;
	color: #3a759b;
}

.review-tile-text {
	font-size: 1.3em;
	min-height: 70px;
	margin-top: 5px;
	line-height: 1.8;
}

.review-tile-text a {
	color: #3a759b;
}

.review-results-container {
	margin-top: 6px;
}

.review-date {
	font-size: 0.9em;
	font-style: italic;
}



/* HTML Button CSS */
.btn {
  display: inline-block;
  *display: inline;
  /* IE7 inline-block hack */

  *zoom: 1;
  padding: 9px 20px 13px 20px;
  margin-bottom: 0;
  font-size: 2em;
  font-weight: 400;
  line-height: 18px;
  color: #ffffff;
  text-align: center;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
  vertical-align: middle;
  background-color: #5b93b5;
  background-image: -moz-linear-gradient(top, #5b93b5, #396f96);
  background-image: -ms-linear-gradient(top, #5b93b5, #396f96);
  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#5b93b5), to(#396f96));
  background-image: -webkit-linear-gradient(top, #5b93b5, #396f96);
  background-image: -o-linear-gradient(top, #5b93b5, #396f96);
  background-image: linear-gradient(top, #5b93b5, #396f96);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#5b93b5', endColorstr='#396f96', GradientType=0);
  filter: progid:dximagetransform.microsoft.gradient(enabled=false);
  border: 1px solid #cccccc;
  border-color: #222222 #222222 #000000;
  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
  -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
  -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
  cursor: pointer;
  *margin-left: .3em;
  text-decoration: none;
}

.btn:hover {
  color: #ffffff;
  text-decoration: none;
  background-color: #396f96;
  background-position: 0 -15px;
  -webkit-transition: background-position 0.1s linear;
  -moz-transition: background-position 0.1s linear;
  -ms-transition: background-position 0.1s linear;
  -o-transition: background-position 0.1s linear;
  transition: background-position 0.1s linear;
}

.btn-browse {
	float: left;
	padding: 5px 15px 8px;
	font-size: 1.4em;
}

.btn-facebook {
	width: 258px;
	margin: 20px 0 0 0;
	background-color: #5872A7;
  background-image: -moz-linear-gradient(top, #798EB9, #5872A7);
  background-image: -ms-linear-gradient(top, #798EB9, #5872A7);
  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#798EB9), to(#5872A7));
  background-image: -webkit-linear-gradient(top, #798EB9, #5872A7);
  background-image: -o-linear-gradient(top, #798EB9, #5872A7);
  background-image: linear-gradient(top, #798EB9, #5872A7);
  background-repeat: repeat-x;
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#798EB9', endColorstr='#5872A7', GradientType=0);
  filter: progid:dximagetransform.microsoft.gradient(enabled=false);
}

.btn-facebook:hover {
  color: #ffffff;
  text-decoration: none;
  background-color: #5872A7;
  background-position: 0 -15px;
  -webkit-transition: background-position 0.1s linear;
  -moz-transition: background-position 0.1s linear;
  -ms-transition: background-position 0.1s linear;
  -o-transition: background-position 0.1s linear;
  transition: background-position 0.1s linear;
}

/* Star System CSS */
.stars-container {
	width: 98px;
	height: 17px;
	float: left;
	display: inline;
	margin-top: 2px;
	position: relative;
}

.stars-container .stars {
	background: url("../images/generic/stars-off.png") no-repeat scroll left top transparent;
	width: 98px;
	height: 17px;
	position: absolute;
	top: 0;
	left: 0;
}

.stars-container .on {
	background: url("../images/generic/stars-on.png") no-repeat scroll left top transparent;
	z-index: 1;
}

.stars-small-container {
	width: 63px;
	height: 11px;
	float: left;
	display: inline;
	margin-top: 2px;
	position: relative;
}

.stars-small-container .stars {
	background: url("../images/generic/stars-small-off.png") no-repeat scroll left top transparent;
	width: 63px;
	height: 11px;
	position: absolute;
	top: 0;
	left: 0;
}

.stars-small-container .on {
	background: url("../images/generic/stars-small-on.png") no-repeat scroll left top transparent;
	z-index: 1;
}

p.reviews-overview {
    display: inline;
    float: left;
    font-size: 1.3em;
    margin: 5px 0 0 10px;
}

p.no-reviews-overview {
    display: inline;
    float: left;
    font-size: 1.3em;
    margin: 5px 0 0 0;
}

span.review-count {
	text-decoration: underline;
	color: #3a759b;
	cursor: pointer;
}

a.review-count {
	text-decoration: underline;
	color: #3a759b;
	cursor: pointer;
}


/* Pager CSS */
.pager-container {
	
}

.pager-location {
	font-size: 1.4em;
	float: left;
	display: inline;
	margin: 15px 0 0 10px;
}

.pager-location-center {
	font-size: 1.4em;
	margin: 15px 0 0 10px;
	text-align: center;
	color: #999;
}

.pager-controls {
	font-size: 1.4em;
	float: right;
	display: inline;
	margin: 15px 10px 0 0;
	height: 20px;
}

.pager-controls a, .pager-controls span {
	margin-left: 5px;
	color: #333;
}

.pager-controls a {
	text-decoration: underline;
}



/* JS Pager Controls CSS */
ul.js-pager {
	float: right;
	display: inline;
	margin: 17px 10px 0 0;
}

ul.js-pager li {
	background: url("../images/generic/dot-off.png") no-repeat scroll 0 0 transparent;
  cursor: pointer;
  display: inline-block;
  height: 6px;
  list-style: none outside none;
  margin: 0 2px;
  text-align: left;
  text-indent: -8000px;
  width: 6px;
}

ul.js-pager li.active {
	background: url("../images/generic/dot-on.png") no-repeat scroll 0 0 transparent;
}

.js-pager-controls {
	float: right;
	display: inline; 
	margin-top: 10px;
}

.js-pager-control-previous {
	float: left;
	display: inline;
	cursor: pointer;
}

.js-pager-control-next {
	float: left;
	display: inline;
	border-left: 1px solid #ccc;
	cursor: pointer;
}



/* Image Headers CSS */
.image-header {
	width: 980px;
	height: 161px;
	margin: 40px 0 0 0;
}

.image-header h1, .image-header h2 {
	font-size: 2.8em;
	font-weight: 400;
	float: left;
	display: inline;
	margin: 117px 0 0 15px;
	color: #FFF;
}



/* Get Listed Modal */
#simplemodal-overlay {background-color:#000;}
#simplemodal-container {background: #fff; border:8px solid #3a759b; padding: 40px 60px 40px 60px;}

#simplemodal-container a.modalCloseImg {
	background:url(/images/get-listed/x.png) no-repeat; /* adjust url as required */
	width:25px;
	height:29px;
	display:inline;
	z-index:3200;
	position:absolute;
	top:-15px;
	right:-18px;
	cursor:pointer;
}

#simplemodal-getlisted {
	display: none;
}

.modal {
	width: 300px;
	display: none;
}

.get-listed-modal, .buyer-login-modal {
	width: 300px;
	display: none;
}

.get-listed-left-container {
	width: 300px; 
	float: left; 
	display: inline;
}

.get-listed-right-container {
	width: 300px; 
	float: left; 
	display: inline;
}

.get-listed-split {
	background: #333; 
	height: 426px; 
	width: 1px; 
	float: left; 
	display: inline; 
	margin: 0 40px 0 40px;
}

.get-listed-section {
	padding-bottom: 0px;
}

.modal span.title, .get-listed-modal span.title {
	font-size: 2.8em;
	font-weight: 400;
	color: #333;
}

.get-listed-modal p, .buyer-login-modal p {
	font-size: 1.3em;
	font-weight: 400;
	margin: 10px 0 0 0;
	line-height: 1.2;
}

.buyer-login-modal h3 {
  font-size: 2em;
  text-align: center;
}

.buyer-login-modal .why-use-facebook {
  margin: 10px 0 0 10px;
}

.buyer-login-modal .why-use-facebook span.question {
  font-size: 1.3em;
  color: #333;
  text-decoration: underline;
  cursor: pointer;
}

.modal span.label, .get-listed-modal span.label, .buyer-login-modal span.label {
	font-size: 1.4em;
	font-weight: 400;
	color: #333;
	line-height: 1.2;
}

.modal .formfield-container, .get-listed-modal .formfield-container, .buyer-login-modal .formfield-container {
	position: relative;
}

.get-listed-modal select {
	background: #f4f1e2;
	font-family: 'Lato', sans-serif;
	font-size: 1.3em;
	width: 300px;
	padding: 4px 2px;
	border: 1px solid #999;
}

.modal input.formfield, .get-listed-modal input, .buyer-login-modal input {
	background: #f4f1e2;
	font-family: 'Lato', sans-serif;
	font-size: 1.3em;
	width: 290px;
	padding: 4px;
	border: 1px solid #999;
}

.get-listed-modal input.formfield-half {
	width: 135px;
}

.get-listed-modal input.formfield-website-url {
	width: 290px;
	color: green;
}

.get-listed-modal input.formfield-website-url::-webkit-input-placeholder {
	color: #666;
}

.get-listed-modal input.formfield-website-url:-moz-placeholder {
	color: #666;
}

.get-listed-modal textarea {
	background: #f4f1e2;
	font-family: 'Lato', sans-serif;
	font-size: 1.3em;
	width: 290px;
	height: 69px;
	padding: 4px;
	border: 1px solid #999;
	resize: none;
	line-height: 1.3;
}

.get-listed-modal .charcount-container {
	float: right; 
	display: inline;
	margin-top: 3px;
}

.get-listed-modal #charcount {
	
}

.get-listed-modal .logo {
	float: right;
	display: inline;
	margin-top: 20px;
}

.modal .btn, .get-listed-modal .btn-get-listed {
	font-size: 2em;
	font-weight: 400;
	width: 258px;
	margin-top: 40px;
}

.get-listed-modal .mobile-close-button {
	display: none;
}


/* creates speech bubble */
.triangle-isosceles {
	background:#BD362F; /* default background for browsers without gradient support */
	font-size: 1.3em;
	font-weight: 700;
	position:absolute;
	width: 215px;
	top: 0;
	right: -265px;
	padding: 9px 15px 10px 15px;
	color:#FFF;
	line-height: 1.4;
	/* css3 */
	-webkit-border-radius:5px;
	-moz-border-radius:5px;
	border-radius:5px;
	z-index: 1;
}

.triangle-isosceles.left {
	margin-left:18px;
}

.triangle-isosceles.right {
	right: 0;
	left: -265px;
	margin-right:18px;
}

.triangle-isosceles.info {
	background:#3A87AD;
}

/* creates triangle */
.triangle-isosceles:after {
	content:"";
	position:absolute;
	border-style:solid;
    /* reduce the damage in FF3.0 */
    display:block; 
    width:0;
}

.triangle-isosceles.left:after {
	top:8px; /* controls vertical position */
	left:-13px; /* value = - border-left-width - border-right-width */
	bottom:auto;
	border-width:7px 13px 7px 0; /* change the height (thickness) of the triangle */
	border-color:transparent #BD362F;
}

.triangle-isosceles.right:after {
	top:8px; /* controls vertical position */
	right:-13px; /* value = - border-left-width - border-right-width */
	bottom:auto;
	border-width:7px 0 7px 13px; /* change the height (thickness) of the triangle */
	border-color:transparent #BD362F;
}

.triangle-isosceles.top:after {
	top:-13px; /* value = - border-top-width - border-bottom-width */
	left:20px; /* controls horizontal position */
	bottom:auto;
	left:auto;
	border-width:0 15px 15px; /* vary these values to change the angle of the vertex */
	border-color:#BD362F transparent;
}

.triangle-isosceles.info:after {
	border-color:transparent #3A87AD;
}

#tooltip-service {
	display: none;
}

#tooltip-company-name {
	display: none;
}

#tooltip-service-description {
	display: none;
}

#tooltip-website-url {
	display: none;
}

#tooltip-first-name {
	display: none;
}

#tooltip-last-name {
	display: none;
}

#tooltip-email-address {
	display: none;
}

#tooltip-twitter-handle {
	display: none;
}

/* Error Pages */
.error-container {
	width: 980px;
	text-align: center;
}

.error-container h3 {
	font-size: 2em;
	margin-top: 30px;
}

@media (max-width: 900px) {

	.header-buttons-container {
		display: none;
	}

	a.logo {
		margin: 11px 0 0 10px;
	}

	.btn-mobile-menu {
		background: #3a759b;
		float: right;
		display: inline;
		margin: 25px 10px 0 0;
		padding: 10px;
		border-radius: 2px;
		color: #fff;
	}

	.navbar-container {
		display: none;
		height: auto;
	}

		.navbar-container .navbar-center div {
			font-size: 1.5em;
			float: none;
			display: block;
			margin: 0;
			border-bottom: 1px solid #2b5068;
			color: #fff;
		}

			.navbar-container .navbar-center div.breadcrumbs-container {
				padding: 20px;
				line-height: 1.5;
			}

		.user-login-container a, .mobile-menu-option a {
			display: block;
			padding: 20px;
			text-decoration: none;
		}

}

/* Media Queries */
@media (max-width: 500px) {

    /* Main CSS */
    #main-container {
      margin-top: 10px;
    }

    #main {
        padding: 0 10px;
    }

    /* Company Tiles */
    .company-tile {
        padding: 15px 0;
        width: 100%;
    }

    .company-tile:hover {
	    box-shadow: none;
    }

    .tile-middle {
        border-left: 0;
        border-right: 0;
    }

    .tile-right {
        border-left: 0;
    }

    .tile-bottom {
        border-bottom: 1px solid #ccc;
    }

    .review-tile {
        width: 100%;
        padding: 15px 0;
        border-bottom: 1px solid #ccc;
    }

    /* Footer */
    .footer-about-us {
        padding: 0 10px 0 10px;
    }

        .footer-about-us p {
            margin-top: 10px;
        }

    .footer-links {
        margin: 20px 0 0 0;
        width: 50%;
    }

        .footer-links h3 {
            margin: 0 0 0 10px;
        }

        .footer-links ul {
            margin: 10px 0 0 10px;
        }  

    .footer-social {
        margin: 20px 0 0 0;
    }

        .footer-social h3 {
            margin: 0 0 0 10px;
        }

        .footer-social ul {
            margin: 10px 0 0 10px;
        }   

	#simplemodal-container {
		padding: 10px;
		margin: 0 10px;
	}

	.get-listed-modal { 
		width: 280px;
		margin: 0;
	}

		.get-listed-modal input {
			width: 270px;
		}

		.get-listed-modal textarea {
			width: 270px;
		}

		.get-listed-modal .btn-get-listed {
			width: 238px;
		}

}