@font-face {
	font-family: 'fontawesome';
	src:url('../fonts/fontawesome.eot');
	src:url('../fonts/fontawesome.eot?#iefix') format('embedded-opentype'),
		url('../fonts/fontawesome.svg#fontawesome') format('svg'),
		url('../fonts/fontawesome.woff') format('woff'),
		url('../fonts/fontawesome.ttf') format('truetype');
	font-weight: normal;
	font-style: normal;
}

body, html { font-size: 100%; 	padding: 0; margin: 0;}

/* Reset */
*,
*:after,
*:before {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

/* Clearfix hack by Nicolas Gallagher: http://nicolasgallagher.com/micro-clearfix-hack/ */
.clearfix:before,
.clearfix:after {
	content: " ";
	display: table;
}

.clearfix:after {
	clear: both;
}

body {
    font-family: 'Lato', Calibri, Arial, sans-serif !important;
	font-weight:300;
    color: #333;
	background-color:#fff;

}

a {
	color: #333;
	background-color:#eee;
	padding:0.188em;
	text-decoration: none;
	-webkit-border-radius: 0.188em;
	-moz-border-radius: 0.188em;
	border-radius: 0.188em;
}

a:focus, *:focus {
    noFocusLine: expression(this.onFocus=this.blur());
}
a {
    _noFocusLine: expression(this.hideFocus=true); 
}
a {
   outline:0;
}

a:hover {
	color: #333;
	background:none;
	text-decoration: underline;
}

a.no-link {
	background:none;
	padding:0;
}

a.no-hover:hover {
	background:none;
	color: white !important;
	padding:0;
}

a.menu-icon {
	float:right;
	border:0;
	background:none;
	color:#333;
	font-size:1.8em;
	 padding:10px 20px 0 0;
	 cursor:pointer;
	 text-decoration:none;
}

.container a.vote-button {
	font-size:1.250em;
	color: #333;
	background:none;
	padding:0.500em;
	margin:0.500em;
	text-decoration: none;
	-webkit-border-radius: 0.188em;
	-moz-border-radius: 0.188em;
	border-radius: 0.188em;
	border:solid 1px #333;
}

.container a.vote-button:hover {
	color:#fff;
	background-color:#333;
	text-decoration: none;
}

.main,
.container > header {
	width: 100%;
	max-width: 60em;
	margin: 0 auto;
	text-align:center;
}

.container > header {
	padding: 2.875em 1.875em 3.750em;
}

.container > header img {
	width:60%;
	margin:2.875em 0;
}

@media screen and (max-width: 660px) {
	.container > header img {
		width:90%;
		margin-top: 0;
		margin-bottom: 0;
	}
}

.container > header h1 {
	font-size: 2.125em;
	line-height: 1.5;
	margin: 1.250em 0;
	font-weight: 300;
	display:none;
}

.container > header h2 {
	font-size: 2.125em;
	line-height: 1.5;
	margin: 0 0 0.750em 0;
	font-weight: 300;
	text-align:left;
}

.container > header span {
	font-size:1em;
	display: block;
	font-weight: 300;
	line-height: 1.75;
	margin: 1.250em 0;
	letter-spacing: 0.01em;
}

.container > header span.apply {
	font-weight: 700;
}

.container > header span.about {
	text-align:justify;
}

.less_pad_bottom{
	padding-bottom: 0.188em !important;
}
.no_pad_top{
	padding-top: 0em !important;
}
.no_padding{
	padding: 0 !important;
}
.no_pad_sides{
	padding-left: 0 !important;
	padding-right: 0 !important;
}

.less_pad_sides{
	padding-left: 1em !important;
	padding-right: 1em !important;
}

.container h3 {
	font-size: 1em;
	line-height: 1.3;
	margin: 0;
	float: left;
	font-weight: 700;
}

.container .featured-line {
	border-top:solid 1px #333;
	width:90%;
	margin:0 auto;
	opacity: 0.7;
    filter: alpha(opacity=70);
	text-align:center;
}

.container .featured-title {
	position:relative;
	background-color:#fff;
	border:solid 1px #333;
	font-size:0.8em;
	padding:8px;
    margin:0;
    top:-1.4em;
	text-align:center;
	white-space:nowrap;
	display:inline-block;
	text-transform:uppercase;
	text-align:center;
}

.container .featured-title:hover {
	background-color:#eee;
}

.container .featured-line .left {
    -webkit-border-top-left-radius: 0.250em;
    -webkit-border-bottom-left-radius: 0.250em;
    -moz-border-radius-topleft: 0.250em;
    -moz-border-radius-bottomleft: 0.250em;
    border-top-left-radius: 0.250em;
    border-bottom-left-radius: 0.250em;
    margin-right:-6px;
}

.container .featured-line .center {
    /*-webkit-border-top-left-radius: 0.250em;
    -webkit-border-bottom-left-radius: 0.250em;
    -moz-border-radius-topleft: 0.250em;
    -moz-border-radius-bottomleft: 0.250em;
    border-top-left-radius: 0.250em;
    border-bottom-left-radius: 0.250em;*/
    margin-right:-6px;
}

.container .featured-line .right {
    border-left;0;
    -webkit-border-top-right-radius: 0.250em;
    -webkit-border-bottom-right-radius: 0.250em;
    -moz-border-radius-topright: 0.250em;
    -moz-border-radius-bottomright: 0.250em;
    border-top-right-radius: 0.250em;
    border-bottom-right-radius: 0.250em;
}

.container .featured-title a {
	background:none;
    display:block;
    padding:0;
    font-weight:700;
}

.container .featured-title a:hover {
	text-decoration:none;
}

.option_selected{
	color: #fff !important;
	background-color: #333 !important;
}
.option_selected a{
	color: #fff !important;
}

.container .featured-note {
	width:100%;
	max-width: 60em;
	margin:0 auto;
	text-align:center;
	line-height: 1.75;
	letter-spacing: 0.01em;
	margin-bottom:8em;	
}

.container a.request-button {
	font-size:1.250em;
	color: #333;
	background:none;
	padding:0.500em;
	margin:1em 0;
	text-decoration: none;
	-webkit-border-radius: 0.188em;
	-moz-border-radius: 0.188em;
	border-radius: 0.188em;
	border:solid 1px #333;
}

.container a.request-button:hover {
	color:#fff;
	background-color:#333;
	text-decoration: none;
}

.container .join-box {
	width: 100%;
	max-width: 60em;
	margin: 0 auto;
	clear:both;
	text-align:center;
	padding: 3.750em 1.250em 0.250em;
}

.container .join-box-about {
	padding: 3.750em 1.250em 0.250em;
}

.container .join-box span {
	font-size:1em;
	display: block;
	font-weight: 300;
	line-height: 1.75;
	margin: 1.250em 0;
	letter-spacing: 0.01em;
}

.container .join-box span strong {
font-weight: bold;
}

.join-button.selected{
	background: #333;
	color: #fff;
}
.join-button_force.selected{
	background: #333;
	color: #fff;
}

.container .join-box a.join-button {
	font-size:1.500em;
	color: #333;
	background:none;
	padding:0.500em;
	margin:0.500em;
	text-decoration: none;
	-webkit-border-radius: 0.188em;
	-moz-border-radius: 0.188em;
	border-radius: 0.188em;
	border:solid 1px #333;
}

.container .join-box a.join-button:hover {
	color:#fff;
	background-color:#333;
	text-decoration: none;
}

@media screen and (max-width: 768px) {
	.container .join-box a.join-button {
		font-size:1em;
		color: #333;
		background:none;
		padding:0.500em;
		margin:0.500em;
	}
}

/* added for more flexible buttons */
.join-button_force {
	font-size:1.500em;
	color: #333;
	background:none;
	padding:0.500em;
	margin:0.500em;
	text-decoration: none;
	-webkit-border-radius: 0.188em;
	-moz-border-radius: 0.188em;
	border-radius: 0.188em;
	border:solid 1px #333;
	cursor: pointer;
	outline: 0;
}

.join-button_force_white {
	font-size:1.500em;
	color: #fff;
	background:none;
	padding:0.500em;
	margin:0.500em;
	text-decoration: none;
	-webkit-border-radius: 0.188em;
	-moz-border-radius: 0.188em;
	border-radius: 0.188em;
	border:solid 1px #fff;
	cursor: pointer;
	outline: 0;
}

.join-button.small {
	font-size:1em !important;
	padding:0.500em !important;
}
.join-button_force.small {
	font-size:1em !important;
	padding:0.500em !important;
}
.join-button_force_white.small {
	font-size:1em;
	padding:0.500em;
}

.join-button_force:hover {
	color:#fff;
	background-color:#333;
	text-decoration: none;
}
.join-button_force_white:hover {
	color:#fff;
	background-color:#333;
	text-decoration: none;
}

.main,
.container > footer {
	width: 100%;
	max-width: 60em;
	margin: 0 auto;
	clear:both;
	text-align:center;
	padding: 3.125em 3.125em 0;
}

.container > footer span {
	font-size:0.750em;
	display: block;
	font-weight: 300;
	line-height: 1.8;
	margin: 1.250em 0;
	letter-spacing: 0.01em;
}

.container > footer img {
	height:2.500em;
	margin:2.500em 0;
}

/* Map */

#map-wrapper {
	height:700px;
	overflow:hidden;
}

#map-canvas {
	height:730px;	
}


/*  - - - -  JOBS - - - -  */

.job_list{
	width: 100%;
	max-width: 60em;
	padding: 0 1em 0 1em;
	margin: auto;
}
.job_list li{
	width: 100%;
	list-style: none;
}
.job_container{
	width: 100%;/* was 80% */
	margin: 10px auto;
	box-sizing: border-box;
	display: -webkit-box;      /* OLD - iOS 6-, Safari 3.1-6 */
	display: -moz-box;         /* OLD - Firefox 19- (buggy but mostly works) */
	display: -ms-flexbox;      /* TWEENER - IE 10 */
	display: -webkit-flex;     /* NEW - Chrome */
	display: flex;
	border-radius: 8px;
}

.job_container .job_logo{
	width: 30%;
	position: relative;
}

.job_logo_mobile{
	display: none;
}

.job_container .job_description{
	width: 70%;
	padding: 2em;
}

.job_container .job_logo img{
	/*max-height: 90%;*/
	max-width: 100%;
	position: absolute;
	top: 0px;
	bottom: 0px;
	right: 0px;
	left: 0px;
	margin: auto;
}

@media screen and (min-width: 1200px) {
	.job_container .job_logo img{
		max-width: 250px;
	}
}

.job_description{
	line-height: 1.5;
}

.job_description .left{
	width: 50%;
	text-align: left;
	margin: 0;
	margin-bottom: 0.8em;
	box-sizing: border-box;
	float: left;
}
.job_description .right{
	width: 50%;
	text-align: right;
	margin: 0;
	margin-bottom: 0.8em;
	box-sizing: border-box;
	float: left;
}
.job_description .row{
	width: 100%;
	text-align: left;
	margin: 0;
	margin-bottom: 0.8em;
	box-sizing: border-box;
	float: left;
	line-height: 1.2;
}


.job_description .row.description{
	max-height: 80em;
	overflow: hidden;
}

.one_line_height{
	max-height: 1.3em !important;
}

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

	.job_list{
		padding: 0;
		margin: 0;
	}

	.job_container{
		width: 100%;
		margin: 10px auto;
		box-sizing: border-box;
		border-radius: 0px;
		font-size: 1.2em;
	}

	.job_container .job_logo{
		display: none;
	}

	.job_logo_mobile{
		display: block;
		position: relative;
		width: 100%;
		height: 160px;
		text-align: left;
		margin-bottom: -11px;
	}

	.job_logo_mobile img{
		max-height: 90%;
		max-width: 100%;
		position: absolute;
		top: 5px;
		bottom: 0px;
		right: 0px;
		left: 0px;
		margin: auto;
	}


	.job_container .job_description{
		width: 100%;
		padding: 0.5em;
	}

	.job_description{
		line-height: 1.5;
	}

	.job_description .left{
		width: 100%;
		text-align: left;
		margin: 0;
		margin-bottom: 0.8em;
		box-sizing: border-box;
		padding-left: 1em;
	}
	.job_description .right{
		width: 100%;
		text-align: left;
		margin: 0;
		margin-bottom: 0.8em;
		box-sizing: border-box;
		padding-left: 1em;
	}
	.job_description .right .join-button_force_white{
		float: right;
	}
	.job_description .right .join-button_force{
		float: right;
	}
	.job_description .row{
		width: 100%;
		text-align: left;
		margin: 0;
		margin-bottom: 0.8em;
		box-sizing: border-box;
		line-height: 1.2;
		padding-left: 1em;
	}
	.job_description .row.description{
	}

	.country_switch{
		width: 100%;
		text-align: center;
		margin-bottom: 10px;
	}

	#job_post_btn{
		font-size: 1.2em !important;
	}

}

/*  - - - -  tags - - - -  */
.bootstrap-tagsinput {
  background-color: #fff;
  border: 1px solid #ccc;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
  display: inline-block;
  padding: 4px 6px;
  color: #555;
  vertical-align: middle;
  border-radius: 4px;
  max-width: 100%;
  line-height: 22px;
  cursor: text;

  	/* override to look like .register-input */
  	display: block;
	max-width: 100%;
	height: 38px;
	margin-top: 2px;
	font-weight: 500;
	background: none;
	border: 0;
	border-bottom: 1px solid #d8d8d8;
	box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0);

}
.bootstrap-tagsinput input {
  border: none;
  box-shadow: none;
  outline: none;
  background-color: transparent;
  padding: 0 6px;
  margin: 0;
  width: 11em !important;
  max-width: inherit;
}
.bootstrap-tagsinput.form-control input::-moz-placeholder {
  color: #777;
  opacity: 1;
}
.bootstrap-tagsinput.form-control input:-ms-input-placeholder {
  color: #777;
}
.bootstrap-tagsinput.form-control input::-webkit-input-placeholder {
  color: #777;
}
.bootstrap-tagsinput input:focus {
  border: none;
  box-shadow: none;
}
.bootstrap-tagsinput .tag {
  margin-right: 2px;
  color: #fff;
  background-color: #333;
  padding: 3px;
  display: inline !important;
}
.bootstrap-tagsinput .tag [data-role="remove"] {
  margin-left: 8px;
  cursor: pointer;
  display: inline !important;
}
.bootstrap-tagsinput .tag [data-role="remove"]:after {
  content: "x";
  padding: 0px 2px;
  display: inline !important;
}
.bootstrap-tagsinput .tag [data-role="remove"]:hover {
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
}
.bootstrap-tagsinput .tag [data-role="remove"]:hover:active {
  box-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
}

/* locallist logo header */

.job_container{
    /*border: 2px solid white;*/
}

.logo_container {
    position: relative;
    min-height: 200px;
    line-height: 200px;
    font-size: 50px;
}

@media screen and (min-width: 769px) {
	
	#left_title{
		position: absolute;
	  	top: 0;
	  	bottom: 0;
	  	left: 0;
	  	text-align: right;
	  	width: 50%;
	  	height: 1.2em;
	  	margin: auto;
		ms-transform: translate(-75px, 0);
	    -webkit-transform: translate(-75px, 0);
	    transform: translate(-75px, 0);
	}
	#right_title{
		position: absolute;
	  	top: 0;
	  	bottom: 0;
	  	right:0;
	  	text-align: left;
	  	width: 50%;
	  	height: 1.2em;
	  	margin: auto;
		ms-transform: translate(75px, 0);
	    -webkit-transform: translate(75px, 0);
	    transform: translate(75px, 0);
	}

	.logo_container img{
		position: absolute;
		margin: auto !important;
		top: 0px;
		bottom: 0px;
		left: 0px;
		right: 0px;
	}

	.logo_container img{
		width: 150px !important;
		height: 150px;
		position: absolute;
		margin: auto;
		top: 0px;
		bottom: 0px;
		left: 0px;
		right: 0px;
	}

	/*.container > header img {
		margin: 0em 0;
	}*/

}

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

	#left_title{
		display: block;
		width: 100%;
		float: left;
	}
	#right_title{
		display: block;
		width: 100%;
		float: left;
		margin-top: 0px;
	}

	.logo_container img{
		width: 150px;
		margin: 0px;
	}

	.logo_container {
	    font-size: 40px;
	}

	/*.logo_container img{
		display: block;
		width: 100%;
		float: left;
	}

	.logo_container img{
		width: 150px;
		height: 150px;
		display: block;
		width: 100%;
		float: left;
	}*/
	.container > header img {
		margin: 0em 0;
	}

}



/* Custom / Utility styles */

.hidden{
	display: none;
}

.pointer{
	cursor: pointer;
	-webkit-user-select: none;  /* Chrome all / Safari all */
	-moz-user-select: none;     /* Firefox all */
	-ms-user-select: none;      /* IE 10+ */
	/* No support for these yet, use at own risk */
	-o-user-select: none;
	user-select: none;  
}

.inline{
	display: inline !important;
}

.text-center{
	text-align: center !important;
}

.overflow_ellipsis{
	white-space: nowrap; 
    overflow: hidden;
    text-overflow: ellipsis; 
}

.country_switch_container{
	/*width: 80%;*/
	/*max-width: 60em;*/
	max-width: 98%;
	margin: 2em auto;
	padding: 0 1em 0 1em;
	text-align: center;
}

.country_switch_container a{
	/*margin-left: 10px;*/
	width: auto !important;
	margin: auto !important;
}

.stats_sort li a{
	background-color: #fff;
}
.dropdown .dropdown-menu LI > A:hover, .dropdown .dropdown-menu LABEL:hover {
  background-color: #333 !important;
}

.country_switch{
	/*float: right;
	display: block;*/
	display: inline-block;
}

.scrollY{
	overflow-y: scroll;
}

.transition{
  -webkit-transition: all 0.5s ease-in-out;
  -moz-transition: all 0.5s ease-in-out;
  -o-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
}

.notification_error{
	color: red !important;
}

.error{
	color: red !important;
}

.capital{
	text-transform: uppercase !important;
}

/* ============ some mobile stuff ============== */

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

	.hide-for-mobile{
		display: none !important;
	}

}

/*targets ipad mini portrait*/
@media screen and (min-device-width : 768px) and (max-device-width : 1024px){

	.hide-for-medium{
		display: none !important;
	}

}








