/**
 * BxSlider v4.1.2 - Fully loaded, responsive content slider
 * http://bxslider.com
 *
 * Written by: Steven Wanderski, 2014
 * http://stevenwanderski.com
 * (while drinking Belgian ales and listening to jazz)
 *
 * CEO and founder of bxCreative, LTD
 * http://bxcreative.com
 */


/** RESET AND LAYOUT
===================================*/

.bx-wrapper {
	position: relative;
	padding: 0;
	*zoom: 1;
}
.bx-wrapper {
	margin:0;
}
.bx-wrapper ul {
	margin:0;
}

.wrap-project-photo-slider .bx-wrapper {
	margin:0 !important;
}

.bx-wrapper img {
	width: 100%;
	display: block;
}

/** THEME
===================================*/

.bx-wrapper .bx-viewport {
	left: 0px;	
	/*fix other elements on the page moving (on Chrome)*/
	-webkit-transform: translatez(0);
	-moz-transform: translatez(0);
    	-ms-transform: translatez(0);
    	-o-transform: translatez(0);
    	transform: translatez(0);
}

.bx-wrapper .bx-pager,
.bx-wrapper .bx-controls-auto {
	position: absolute;
	bottom: -32px;
	width: 100%;
}

.main-slides .bx-has-pager {
	position: absolute;
	width: 1180px;
	height: 0;
	left: 50%;
	top:50%;
	margin-left: -590px;
	text-align: right;
}
.main-slides .bx-wrapper .bx-pager {
	bottom: auto;
	right: 0;
	top:0;
	width: 25px;
	transform: translateY(-50%);
	margin-top: 60px;
}

.wrap-activity-photo-slider .bx-controls-direction {
	position: absolute;
	right: 0;
	top:-44px;
}
/* LOADER */

.bx-wrapper .bx-loading {
	min-height: 50px;
	background: url(../images/bx-slider/bx_loader.gif) center center no-repeat #fff;
	height: 100%;
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2000;
}

/* PAGER */

.bx-wrapper .bx-pager {
	text-align: center;
	font-size: .85em;
	font-family: Arial;
	font-weight: bold;
	color: #666;
}

.bx-wrapper .bx-pager .bx-pager-item,
.bx-wrapper .bx-controls-auto .bx-controls-auto-item {
	display: inline-block;
	*zoom: 1;
	*display: inline;
}

.bx-wrapper .bx-pager.bx-default-pager a {
	background-color: #ebebe3;
	text-indent: -9999px;
	display: block;
	width: 16px;
	height: 16px;
	border-radius:50%;
	margin: 0 5px;
	outline: 0;
	transition:background 0.3s;
}

.bx-wrapper .bx-pager.bx-default-pager a:hover,
.bx-wrapper .bx-pager.bx-default-pager a.active {
	background-color: #d33960;
}

.main-slides .bx-wrapper .bx-pager.bx-default-pager a {
	position: relative;
	background-color: transparent !important;
	margin: 5px 0;
	width: 25px;
	height: 29px;
	border-radius:0;
	transition: none;
}

/* DIRECTION CONTROLS (NEXT / PREV) */

.bx-wrapper .bx-prev {
	left: 0;
}

.wrap-project-photo-slider .gl-thumbs .bx-wrapper .bx-prev {
	display: none;
}

.bx-wrapper .bx-next {
	right: 0;
}


.bx-wrapper .bx-prev:after,
.bx-wrapper .bx-next:after {
	content:'';
	width:14px;
	height:39px;
	position:absolute;
	top:30px;
	left:16px;
}
.bx-wrapper .bx-next:after {
	left:20px;
}

.bx-wrapper .bx-controls-direction a {
	position: absolute;
	top: 50%;
	margin-top: -50px;
	outline: 0;
	width: 50px;
	height: 100px;
	text-indent: -9999px;
	z-index: 3000;
	background-color:#fff;
	background:rgba(255, 255, 255, 0.8);
}

.wrap-activity-photo-slider .bx-wrapper .bx-controls-direction a {
	background-color: transparent;
	top:0;
	width: 25px;
	height: 29px;
	margin: 0;
}
.wrap-activity-photo-slider .bx-wrapper .bx-prev {
	right: 30px;
	left: auto;
}
.wrap-activity-photo-slider .bx-wrapper .bx-prev:after,
.wrap-activity-photo-slider .bx-wrapper .bx-next:after {
	content:'';
	width: 25px;
	height: 29px;
	position:absolute;
	top:0;
	left:0;
	transition:opacity 0.3s;
}

.bx-wrapper .bx-controls-direction a.disabled {
	display: none;
}

.wrap-activity-photo-slider .bx-wrapper .bx-controls-direction a.disabled {
	display: block;
}
.wrap-activity-photo-slider .bx-wrapper .bx-prev.disabled:after,
.wrap-activity-photo-slider .bx-wrapper .bx-next.disabled:after {
	opacity: 0;
}

/* AUTO CONTROLS (START / STOP) */

.bx-wrapper .bx-controls-auto {
	text-align: center;
}

.bx-wrapper .bx-controls-auto .bx-start {
	display: block;
	text-indent: -9999px;
	width: 10px;
	height: 11px;
	outline: 0;
	background: url(../images/bx-slider/controls.png) -86px -11px no-repeat;
	margin: 0 3px;
}

.bx-wrapper .bx-controls-auto .bx-start:hover,
.bx-wrapper .bx-controls-auto .bx-start.active {
	background-position: -86px 0;
}

.bx-wrapper .bx-controls-auto .bx-stop {
	display: block;
	text-indent: -9999px;
	width: 9px;
	height: 11px;
	outline: 0;
	background: url(../images/bx-slider/controls.png) -86px -44px no-repeat;
	margin: 0 3px;
}

.bx-wrapper .bx-controls-auto .bx-stop:hover,
.bx-wrapper .bx-controls-auto .bx-stop.active {
	background-position: -86px -33px;
}

/* PAGER WITH AUTO-CONTROLS HYBRID LAYOUT */

.bx-wrapper .bx-controls.bx-has-controls-auto.bx-has-pager .bx-pager {
	text-align: left;
	width: 80%;
}

.bx-wrapper .bx-controls.bx-has-controls-auto.bx-has-pager .bx-controls-auto {
	right: 0;
	width: 35px;
}

/* IMAGE CAPTIONS */

.bx-wrapper .bx-caption {
	position: absolute;
	bottom: 0;
	left: 0;
	background: #666\9;
	background: rgba(80, 80, 80, 0.75);
	width: 100%;
}

.bx-wrapper .bx-caption span {
	color: #fff;
	font-family: Arial;
	display: block;
	font-size: .85em;
	padding: 10px;
}

/*--- 1. Fancybox ---*/
/*! fancyBox v2.1.5 fancyapps.com | fancyapps.com/fancybox/#license */
.fancybox-wrap,
.fancybox-skin,
.fancybox-outer,
.fancybox-inner,
.fancybox-image,
.fancybox-wrap iframe,
.fancybox-wrap object,
.fancybox-nav,
.fancybox-nav span,
.fancybox-tmp
{
	padding: 0;
	margin: 0;
	border: 0;
	outline: none;
	vertical-align: top;
}

.fancybox-wrap {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 8020;
}

.fancybox-skin {
	position: relative;
	background: #f3f4f4;
	color: #444;
	text-shadow: none;
}

.fancybox-opened {
	z-index: 8030;
}

.fancybox-opened .fancybox-skin {
	-webkit-box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
	   -moz-box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
	        box-shadow: 0 10px 25px rgba(0, 0, 0, 0.5);
}

.fancybox-outer, .fancybox-inner {
	position: relative;
}

.fancybox-inner {
	overflow: hidden;
}

.fancybox-type-iframe .fancybox-inner {
	-webkit-overflow-scrolling: touch;
}

.fancybox-error {
	color: #444;
	font: 14px/20px "Helvetica Neue",Helvetica,Arial,sans-serif;
	margin: 0;
	padding: 15px;
	white-space: nowrap;
}

.fancybox-image, .fancybox-iframe {
	display: block;
	width: 100%;
	height: 100%;
}

.fancybox-image {
	max-width: 100%;
	max-height: 100%;
}

#fancybox-loading, .fancybox-close, .fancybox-prev span, .fancybox-next span {
	background-image: url('../images/sp-icons.png');
}

#fancybox-loading {
	position: fixed;
	top: 50%;
	left: 50%;
	margin-top: -22px;
	margin-left: -22px;
	background-image: url('../images/fancybox/fancybox_sprite.png');
	background-position: 0 -108px;
	opacity: 0.8;
	cursor: pointer;
	z-index: 8060;
}

#fancybox-loading div {
	width: 44px;
	height: 44px;
	background: url('../images/fancybox/fancybox_loading.gif') center center no-repeat;
}

.fancybox-close {
	background-image: url('../images/fancybox/fancybox_sprite.png');
	position: absolute;
	top: -18px;
	right: -18px;
	width: 36px;
	height: 36px;
	cursor: pointer;
	z-index: 8040;
}


.fancybox-nav {
	position: absolute;
	top: 0;
	width: 40%;
	height: 100%;
	cursor: pointer;
	text-decoration: none;
	background: transparent url('../images/fancybox/blank.gif'); /* helps IE */
	-webkit-tap-highlight-color: rgba(0,0,0,0);
	z-index: 8040;
}

.fancybox-prev {
	left: 0;
}

.fancybox-next {
	right: 0;
}


.fancybox-nav span {
	position: absolute;
	top: 50%;
	margin-top: -50px;
	outline: 0;
	width: 50px;
	height: 100px;
	cursor: pointer;
	z-index: 8040;
	visibility: hidden;
	background:rgba(255, 255, 255, 0.8);
}


.fancybox-prev span {
	left: 0;
}

.fancybox-next span {
	right: 0;
}

.fancybox-prev span:after,
.fancybox-next span:after {
	content:'';
	width:14px;
	height:39px;
	position:absolute;
	top:30px;
	left:16px;
}
.fancybox-next span:after {
	left:20px;
}


.fancybox-nav:hover span {
	visibility: visible;
}

.fancybox-tmp {
	position: absolute;
	top: -99999px;
	left: -99999px;
	visibility: hidden;
	max-width: 99999px;
	max-height: 99999px;
	overflow: visible !important;
}

/* Overlay helper */

.fancybox-lock {
	width: auto;
}

.fancybox-overlay {
	position: absolute;
	top: 0;
	left: 0;
	overflow: hidden;
	display: none;
	z-index: 8010;
	background: url('../images/fancybox/fancybox_overlay.png');
}

.fancybox-overlay-fixed {
	position: fixed;
	bottom: 0;
	right: 0;
}

/* Title helper */

.fancybox-title {
	visibility: hidden;
	font: normal 13px/20px "Helvetica Neue",Helvetica,Arial,sans-serif;
	position: relative;
	text-shadow: none;
	z-index: 8050;
}

.fancybox-opened .fancybox-title {
	visibility: visible;
}

.fancybox-title-float-wrap {
	position: absolute;
	bottom: 0;
	right: 50%;
	margin-bottom: -35px;
	z-index: 8050;
	text-align: center;
}

.fancybox-title-float-wrap .child {
	display: inline-block;
	margin-right: -100%;
	padding: 2px 20px;
	background: transparent; /* Fallback for web browsers that doesn't support RGBa */
	background: rgba(0, 0, 0, 0.8);
	-webkit-border-radius: 15px;
	   -moz-border-radius: 15px;
	        border-radius: 15px;
	text-shadow: 0 1px 2px #222;
	color: #FFF;
	font-weight: bold;
	line-height: 24px;
	white-space: nowrap;
}

.fancybox-title-outside-wrap {
	position: relative;
	margin-top: 10px;
	color: #fff;
}

.fancybox-title-inside-wrap {
	padding-top: 10px;
}

.fancybox-title-over-wrap {
	position: absolute;
	bottom: 0;
	left: 0;
	color: #fff;
	padding: 10px;
	background: #000;
	background: rgba(0, 0, 0, .8);
}

/*Retina graphics!*/
@media only screen and (-webkit-min-device-pixel-ratio: 1.5),
	   only screen and (min--moz-device-pixel-ratio: 1.5),
	   only screen and (min-device-pixel-ratio: 1.5){

	#fancybox-loading {
		background-image: url('../images/fancybox/fancybox_sprite@2x.png');
		background-size: 44px 152px; /*The size of the normal image, half the size of the hi-res image*/
	}

	#fancybox-loading div {
		background-image: url('../images/fancybox/fancybox_loading@2x.gif');
		background-size: 24px 24px; /*The size of the normal image, half the size of the hi-res image*/
	}
}
/*--- 1. Fancybox End ---*/

/*--------------------------- 3. multiselect ------------------------------*/
/* jquery multiselect core */
.ui-multiselect { padding:2px 0 2px 4px; text-align:left }
.ui-multiselect span.ui-icon { float:right }
.ui-multiselect-single .ui-multiselect-checkboxes input { position:absolute !important; top: auto !important; left:-9999px; }
.ui-multiselect-single .ui-multiselect-checkboxes label { padding:5px; }

.ui-multiselect-header { margin-bottom:3px; padding:3px 0 3px 4px }
.ui-multiselect-header ul { font-size:0.9em }
.ui-multiselect-header ul li { float:left; padding:0 10px 0 0 }
.ui-multiselect-header a { text-decoration:none }
.ui-multiselect-header a:hover { text-decoration:underline }
.ui-multiselect-header span.ui-icon { float:left }
.ui-multiselect-header li.ui-multiselect-close { float:right; text-align:right; padding-right:0 }

.ui-multiselect-menu { display:none; padding:3px; position:absolute; z-index:10000; text-align: left }
.ui-multiselect-checkboxes { position:relative /* fixes bug in IE6/7 */; overflow-y:scroll }
.ui-multiselect-checkboxes label { cursor:default; display:block; border:1px solid transparent; padding:3px 1px }
.ui-multiselect-checkboxes label input { position:relative; top:1px }
.ui-multiselect-checkboxes li { clear:both; font-size:0.9em; padding-right:3px }
.ui-multiselect-checkboxes li.ui-multiselect-optgroup-label { text-align:center; font-weight:bold; border-bottom:1px solid }
.ui-multiselect-checkboxes li.ui-multiselect-optgroup-label a { display:block; padding:3px; margin:1px 0; text-decoration:none }

/* remove label borders in IE6 because IE6 does not support transparency */
* html .ui-multiselect-checkboxes label { border:none }
/* jquery multiselect core end */

/* jquery multiselect style */
/* multiselect button */
button.cselect {
	display:block;
	position:relative;
	zoom:1;
	padding:0;
	margin:0;
	line-height:1.2;
	border:none;
	background:#f9fafa;
}
button.cselect .select-inner {
	display:block;
	padding:5px 35px 5px 15px;
	position:relative;
	line-height:1.2;
}
button.cselect .ui-icon {
	position:absolute;
	right:0;
	top:0;
	height:100%;
	width:30px;
	display:block;
	background-color:#c5c5c5;
}
button.cselect .select-text {
	display:block;
	overflow:hidden;
	text-overflow: ellipsis;
	white-space:nowrap;
}
/* multiselect button end */

/* multiselect menu */
div.cselect.ui-multiselect-menu {
	padding:0;
	margin:0;
}
div.cselect.search-select.ui-multiselect-menu{margin:-1px 0 0;}
div.cselect .ui-multiselect-checkboxes {
	padding:0;
	margin:0;
	list-style-type:none;
	height: auto !important;
	max-height:200px;
	overflow:auto;
	background-color:#9f9e9e;
}
div.cselect .ui-multiselect-checkboxes li {padding:0;}
div.cselect .ui-multiselect-checkboxes label input {
	position:absolute;
	left:-9999px;
}
div.cselect .ui-multiselect-checkboxes label {
	display:block;
	cursor:pointer;
	color:#EEE;
	padding:5px 35px 5px 15px;
	line-height:1.2;
}
div.cselect .ui-multiselect-checkboxes label:hover,
div.cselect .ui-multiselect-checkboxes label.ui-state-active {
	background-color:#761538;
	color:#fff;
}

div.cselect.multi-select .ui-multiselect-checkboxes label input {
	position:relative;
	left:0;
	top:-1px;
	margin-right:9px;
}
div.cselect.multi-select .ui-multiselect-checkboxes .jquery-checkbox {
	top:-1px;
	margin-right:9px;
	position:relative;
}

/* multiselect menu end */

/* gray-select */
button.cselect .select-inner {
	color:#666666;
	padding:9px 26px 9px 13px;
	font-size:14px;
	line-height:16px;
	width: 100%;
	border:1px solid #f2e0d2;
}
button.cselect .ui-icon {
	position:absolute;
	right:12px;
	top:16px;
	height:5px;
	width:7px;
	display:block;
	background:url(../images/sp-icons.png) no-repeat 0 -748px;
}
div.cselect .ui-multiselect-checkboxes {
	height: auto !important;
	max-height:270px;
	background-color:#f1ebeb;
	padding:0;
	box-shadow:0 10px 10px rgba(0,0,0,0.25);
	top: -1px;
}
div.cselect .ui-multiselect-checkboxes label {
	color:#761538;
	padding:8px 23px 7px 28px;
	font-size:14px;
	font-weight:700;
	transition: 0.4s;
	white-space:nowrap;
}
/* gray-select end */

/* city-select */
button.city-select .ui-icon {
	right:9px;
	top:14px;
}
button.city-select .select-inner {
	background-color: transparent;
	color: #761538;
	height: 34px;
	padding: 8px 24px 0 27px;
	border: 1px solid #e3dddd;
	font-size:14px;
	font-weight:bold;
	position:relative;
}
button.city-select .select-inner:after {
	content:'';
	position:absolute;
	left:9px;
	top:8px;
}
button.city-select .select-text {
	display:inline-block;
	position:relative;
	overflow:visible;
}
button.city-select .select-text:after {
	position:absolute;
	top:5px;
	right:-15px;
	content:'';
}
button.city-select .ui-icon {
	display:none;
}
/* city-select end */


/* jquery multiselect style end */
/*--------------------------- 3. multiselect end ------------------------------*/


/*
 * CSS Styles that are needed by jScrollPane for it to operate correctly.
 *
 * Include this stylesheet in your site or copy and paste the styles below into your stylesheet - jScrollPane
 * may not operate correctly without them.
 */

.jspContainer
{
	overflow: hidden;
	position: relative;
}

.jspPane
{
	position: absolute;
}

.jspVerticalBar
{
	position: absolute;
	top: 0;
	right: 0;
	width: 8px;
	height: 100%;
}

.jspHorizontalBar
{
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 8px;
}

.jspCap
{
	display: none;
}

.jspHorizontalBar .jspCap
{
	float: left;
}

.jspTrack
{
	background: #fff5f3;
	position: relative;
	border-radius: 4px;
}

.jspDrag
{
	background: #fa9a75;
	position: relative;
	top: 0;
	left: 0;
	cursor: pointer;
	border-radius: 4px;
}

.jspHorizontalBar .jspTrack,
.jspHorizontalBar .jspDrag
{
	float: left;
	height: 100%;
}

.jspArrow
{
	background: #50506d;
	text-indent: -20000px;
	display: block;
	cursor: pointer;
	padding: 0;
	margin: 0;
}

.jspArrow.jspDisabled
{
	cursor: default;
	background: #80808d;
}

.jspVerticalBar .jspArrow
{
	height: 16px;
}

.jspHorizontalBar .jspArrow
{
	width: 16px;
	float: left;
	height: 100%;
}

.jspVerticalBar .jspArrow:focus
{
	outline: none;
}

.jspCorner
{
	background: #eeeef4;
	float: left;
	height: 100%;
}

/* Yuk! CSS Hack for IE6 3 pixel bug :( */
* html .jspCorner
{
	margin: 0 -3px 0 0;
}

/* Slider */
.slick-slider
{
    position: relative;

    display: block;
    box-sizing: border-box;

    -webkit-user-select: none;
       -moz-user-select: none;
        -ms-user-select: none;
            user-select: none;

    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
        touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list
{
    position: relative;

    display: block;
    overflow: hidden;

    margin: 0;
    padding: 0;
}
.slick-list:focus
{
    outline: none;
}
.slick-list.dragging
{
    cursor: pointer;
}

.slick-slider .slick-track,
.slick-slider .slick-list
{
    -webkit-transform: translate3d(0, 0, 0);
       -moz-transform: translate3d(0, 0, 0);
        -ms-transform: translate3d(0, 0, 0);
         -o-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
}

.slick-track
{
    position: relative;
    top: 0;
    left: 0;

    display: block;
    margin-left: auto;
    margin-right: auto;
}
.slick-track:before,
.slick-track:after
{
    display: table;

    content: '';
}
.slick-track:after
{
    clear: both;
}
.slick-loading .slick-track
{
    visibility: hidden;
}

.slick-slide
{
    display: none;
    float: left;

    height: 100%;
    min-height: 1px;
}
[dir='rtl'] .slick-slide
{
    float: right;
}
.slick-slide img
{
    display: block;
}
.slick-slide.slick-loading img
{
    display: none;
}
.slick-slide.dragging img
{
    pointer-events: none;
}
.slick-initialized .slick-slide
{
    display: block;
}
.slick-loading .slick-slide
{
    visibility: hidden;
}
.slick-vertical .slick-slide
{
    display: block;

    height: auto;

    border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
    display: none;
}


.jq-checkbox,
.jq-radio {
	position: relative;
	display: inline-block;
	overflow: hidden;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}
.jq-checkbox input,
.jq-radio input {
	position: absolute;
	z-index: -1;
	margin: 0;
	padding: 0;
	opacity: 0;
}
.jq-file {
	position: relative;
	display: inline-block;
	overflow: hidden;
}
.jq-file input {
	position: absolute;
	top: 0;
	right: 0;
	height: auto;
	margin: 0;
	padding: 0;
	opacity: 0;
	font-size: 100px;
	line-height: 1em;
}
.jq-file__name {
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}

.jq-checkbox,
.jq-radio {
	vertical-align: -4px;
	width: 1.4286em;
	height: 1.4286em;
	margin: 0 0.4286em 0 0;
	border: 1px solid #b4b4b4;
	cursor: pointer;
	transition: border 0.3s;
}
.jq-checkbox.focused,
.jq-radio.focused {
	border: 1px solid #155a9e;
}
.jq-checkbox.disabled,
.jq-radio.disabled {
	opacity: .55;
}
.jq-checkbox.checked .jq-checkbox__div {
	width: 0.8571em;
	height: 0.6429em;
	margin: 0.3571em auto 0;
	background: url('../images/icon-check.svg') no-repeat;
    background-size: 100% 100%; 
}

