@import url('https://fonts.googleapis.com/css?family=Montserrat:300,400,400i,500,500i,600,600i,700');
@import url('//netdna.bootstrapcdn.com/font-awesome/3.2.1/css/font-awesome.css');
@import './normalize.css';
@import './webflow.css';
@import './bluerepublic.webflow.css';
@import './bootstrap_select.css';

/*Hide recaptcha*/
.grecaptcha-badge {display: none !important;}

/** 0. GENERAL **/
.w-display-tiny {
    display:none;
}

.blurred{
    -webkit-filter: blur(15px) !important; /* Safari 6.0 - 9.0 */
    filter: blur(15px) !important;
}

body{
    padding-top:60px;
}

body.overflow-hidden {
    overflow:hidden !important;
}

.text-center{
    text-align:center !important;
}

.text-right{
    text-align:right !important;
}

.float-right{
    float:right;
}

.disabled,
:disabled{
    opacity:0.6;
    cursor:not-allowed;
}

.acf-button,
.button.acf-add-checkbox{
    display: inline-block;
    padding: 9px 15px;
    background-color: #3898EC;
    color: white;
    border: 0;
    line-height: inherit;
    text-decoration: none;
    cursor: pointer;
    border-radius: 0;
    text-transform: capitalize;
}

.acf-button.button-primary,
.button.acf-add-checkbox{
    border-radius: 0px;
    background-image: -webkit-linear-gradient(270deg, #2a9fb6, #2a9fb6);
    background-image: linear-gradient(180deg, #2a9fb6, #2a9fb6);
    font-weight: 700;
    text-align: center;
    cursor: pointer;
}

.acf-button.button-primary:hover,
.button.acf-add-checkbox:hover{
    background-image: -webkit-linear-gradient(270deg, #0bb492, #0bb492);
    background-image: linear-gradient(180deg, #0bb492, #0bb492);
}

.acf-switch.-on {
    background: #2a9fb6 !important;
    border-color: #2a9fb6 !important;
}

.w-button.ghost-button {
    border:1px solid #3898EC;
    background-color:transparent !important;
    background-image:none !important;
    color:#3898EC;
}

.w-button.ghost-button:hover{
    color:#0bb492;
    border-color:#0bb492;
}

.flex{
    display:flex;
}

.no-padding-right{
    padding-right: 0 !important;
}

.no-padding-left{
    padding-left: 0 !important;
}

.w-table-headers{
    padding:12px 0;
    border-bottom:2px solid #999;
    font-weight:500;
}

.w-table{
    font-weight: 300;
}

.w-table a{
    text-decoration: none;
    font-weight:500;
    color:#2a9fb6;
}

.w-table a:hover{
    text-decoration:underline;
}

.small-link{
    font-size:12px;
}

dd .w-table{
    display:flex;
    align-items: center;
    border-bottom:1px solid #ccc;
    padding:5px;
}

dd.in-table.active{
    box-shadow:0 1px 5px rgba(0,0,0,0.4) inset;
    background-color:rgb(250,250,250);
}

.modal-close{
    font-size:36px;
    float:right;
    cursor:pointer;
}

.acf-row-handle.ui-sortable-handle{
    vertical-align: top !important;
}

.acf-row-handle.remove .acf-icon.-minus{
    display:block !important;
    left:1px !important;
    background-color:red !important;
}

.acf-icon.-minus:before{
    font-family: FontAwesome !important;
    content:"\f014" !important;
    color:#FFF !important;
}

.simple-page-content{
    padding: 15px;
}

.simple-page-content p {
    width: 100%;
    margin-bottom: 25px;
}

.simple-page-content > .w-container {
    padding:0 20px;
    background-color:#fff;
}

.simple-link{
    color: #2a9fb6;
    text-decoration: none !important;
}

/* =WordPress Core
-------------------------------------------------------------- */
.alignnone {
    margin: 5px 20px 20px 0;
}

.aligncenter,
div.aligncenter {
    display: block;
    margin: 5px auto 5px auto;
}

.alignright {
    float:right;
    margin: 5px 0 20px 20px;
}

.alignleft {
    float: left;
    margin: 5px 20px 20px 0;
}

a img.alignright {
    float: right;
    margin: 5px 0 20px 20px;
}

a img.alignnone {
    margin: 5px 20px 20px 0;
}

a img.alignleft {
    float: left;
    margin: 5px 20px 20px 0;
}

a img.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.wp-caption {
    background: #fff;
    border: 1px solid #f0f0f0;
    max-width: 96%; /* Image does not overflow the content area */
    padding: 5px 3px 10px;
    text-align: center;
}

.wp-caption.alignnone {
    margin: 5px 20px 20px 0;
}

.wp-caption.alignleft {
    margin: 5px 20px 20px 0;
}

.wp-caption.alignright {
    margin: 5px 0 20px 20px;
}

.wp-caption img {
    border: 0 none;
    height: auto;
    margin: 0;
    max-width: 98.5%;
    padding: 0;
    width: auto;
}

.wp-caption p.wp-caption-text {
    font-size: 11px;
    line-height: 17px;
    margin: 0;
    padding: 0 4px 5px;
}

/* Text meant only for screen readers. */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important; /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}

.screen-reader-text:focus {
	background-color: #eee;
	clip: auto !important;
	clip-path: none;
	color: #444;
	display: block;
	font-size: 1em;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
	/* Above WP toolbar. */
}


img.alignright {float:right; margin:0 0 1em 1em}
img.alignleft {float:left; margin:0 1em 1em 0}
img.aligncenter {display: block; margin-left: auto; margin-right: auto}
a img.alignright {float:right; margin:0 0 1em 1em}
a img.alignleft {float:left; margin:0 1em 1em 0}
a img.aligncenter {display: block; margin-left: auto; margin-right: auto}

/** 1. HEADER **/
.header-section{
    position:fixed;
    top:0;
    left:0;
    width:100%;
    z-index: 4;
    box-shadow:0 0 6px rgba(0,0,0,0.2);
}

.header-section .nav-link {
    text-transform: uppercase;
}

/** 2. HOMEPAGE **/
@media(min-width: 992px) {
    .hero-subtext{
        margin-top:45px;
    }
}

.people-img {
    overflow: hidden;
}

.people-img::after{
    content:"";
    display:block;
    height:1px;
    background:#999;
    width:30px;
    position:absolute;
    bottom:-33px;
    left:50%;
    transform:translateX(-50%);
    -webkit-transform:translateX(-50%);
}

.people-img > div {
    position:absolute;
    width:100%;
    height:100%;
    top:0;
    left:0;
    background-repeat:no-repeat;
    background-size:cover;
    background-position:center top;
}

.people-img > div.blurred{
    -webkit-filter: blur(15px); /* Safari 6.0 - 9.0 */
    filter: blur(15px);
}

.activities-section img.activity-image {
    width:100%;
}

.people-section .columns-2{
    justify-content: center;
}

.service-icon .dashicons{
    font-size:30px;
    width:30px;
    height:30px;
}

/** 3. ACTIVITY DETAIL **/

.organizer-picture{
    background-image:none !important;
    position:relative;
}

.organizer-picture > div {
    position:absolute;
    width:100%;
    height:100%;
    top:0;
    left:0;
    background-repeat:no-repeat;
    background-size:cover;
    background-position:center top;
    border-radius: 100px;
}

.organizer-picture > div.blurred{
    -webkit-filter: blur(15px); /* Safari 6.0 - 9.0 */
    filter: blur(15px);
}

.organizer-link{
    margin-bottom:14px;
}

.acf-map img {
    max-width: inherit !important;
}

.rangebox {
    width: 100%;
    margin-top: 14px;
}
output {
    display: inline-block;
    font-size: 2em;
}

@media(max-width:767px) {
    .single-activity .acf-map {
        height:350px;
    }
}

.rangeslider,
.rangeslider__fill {
    display: block;
    -moz-box-shadow: inset 0px 1px 3px rgba(0, 0, 0, 0.3);
    -webkit-box-shadow: inset 0px 1px 3px rgba(0, 0, 0, 0.3);
    box-shadow: inset 0px 1px 3px rgba(0, 0, 0, 0.3);
    -moz-border-radius: 10px;
    -webkit-border-radius: 10px;
    border-radius: 10px;
}
.rangeslider {
    background: #e6e6e6;
    position: relative;
}
.rangeslider--horizontal {
    height: 10px;
    width: 100%;
}
.rangeslider--vertical {
    width: 10px;
    min-height: 150px;
    max-height: 100%;
}
.rangeslider--disabled {
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=40);
    opacity: 0.4;
}
.rangeslider__fill {
    background: -webkit-linear-gradient(left, #abe0ed, #46b7d5);
    background: -o-linear-gradient(right, #abe0ed, #46b7d5);
    background: -moz-linear-gradient(right, #abe0ed, #46b7d5);
    background: linear-gradient(to right, #abe0ed, #46b7d5);
    position: absolute;
}
.rangeslider--horizontal .rangeslider__fill {
    top: 0;
    height: 100%;
}
.rangeslider--vertical .rangeslider__fill {
    bottom: 0;
    width: 100%;
}
.rangeslider__handle {
    background: white;
    color: #2a9fb6;
    font-weight: bold;
    font-size: 14px;
    border: 1px solid #ccc;
    cursor: pointer;
    display: inline-block;
    width: 80px;
    height: 30px;
    line-height: 28px;
    text-align: center;
    position: absolute;
    background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2ZmZmZmZiIgc3RvcC1vcGFjaXR5PSIwLjAiLz48c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMwMDAwMDAiIHN0b3Atb3BhY2l0eT0iMC4xIi8+PC9saW5lYXJHcmFkaWVudD48L2RlZnM+PHJlY3QgeD0iMCIgeT0iMCIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgZmlsbD0idXJsKCNncmFkKSIgLz48L3N2Zz4g");
    background-size: 100%;
    background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, rgba(255, 255, 255, 0)), color-stop(100%, rgba(0, 0, 0, 0.1)));
    background-image: -moz-linear-gradient(rgba(255, 255, 255, 0), rgba(0, 0, 0, 0.1));
    background-image: -webkit-linear-gradient(rgba(255, 255, 255, 0), rgba(0, 0, 0, 0.1));
    background-image: linear-gradient(rgba(255, 255, 255, 0), rgba(0, 0, 0, 0.1));
    -moz-box-shadow: 0 0 8px rgba(0, 0, 0, 0.3);
    -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.3);
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.3);
    -moz-border-radius: 22px;
    -webkit-border-radius: 22px;
    border-radius: 22px;
}
.rangeslider__handle:active {
    background-img: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJvYmplY3RCb3VuZGluZ0JveCIgeDE9IjAuNSIgeTE9IjAuMCIgeDI9IjAuNSIgeTI9IjEuMCI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzAwMDAwMCIgc3RvcC1vcGFjaXR5PSIwLjEiLz48c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMwMDAwMDAiIHN0b3Atb3BhY2l0eT0iMC4xMiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA==");
    background-size: 100%;
    background-image: -webkit-gradient(linear, 50% 0%, 50% 100%, color-stop(0%, rgba(0, 0, 0, 0.1)), color-stop(100%, rgba(0, 0, 0, 0.12)));
    background-image: -moz-linear-gradient(rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.12));
    background-image: -webkit-linear-gradient(rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.12));
    background-image: linear-gradient(rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.12));
}
.rangeslider--horizontal .rangeslider__handle {
    top: -10px;
    touch-action: pan-y;
    -ms-touch-action: pan-y;
}
.rangeslider--vertical .rangeslider__handle {
    left: -10px;
    touch-action: pan-x;
    -ms-touch-action: pan-x;
}
input[type="range"]:focus + .rangeslider .rangeslider__handle {
    -moz-box-shadow: 0 0 8px rgba(255, 0, 255, 0.9);
    -webkit-box-shadow: 0 0 8px rgba(255, 0, 255, 0.9);
    box-shadow: 0 0 8px rgba(255, 0, 255, 0.9);
}
fieldset, label { margin: 0; padding: 0; }

.dates-selector-wrapper{
    border:1px solid #ccc;
    margin-top:25px;
    max-height:260px;
    overflow-y:auto;
}

.dates-selector-wrapper .date-selector{
    border-bottom:1px solid #ccc;
    position:relative;
}

.dates-selector-wrapper .date-selector .date-selector-box {
    display:flex;
    align-items:center;
    cursor:pointer;
}

.dates-selector-wrapper .date-selector input{
    position:absolute;
    top:0;
    right:0;
    opacity:0;
}

.dates-selector-wrapper .date-selector .date-box{
    background-color:#f5f5f5;
    color:#262626;
    padding:6px;
    width:60px;
}

.dates-selector-wrapper .weekday,
.dates-selector-wrapper .month{
    display:block;
    text-align:center;
    font-size:14px;
    font-weight:normal;
}

.dates-selector-wrapper .date{
    display:block;
    text-align:center;
    font-size:20px;
    margin:5px 0;
    font-weight:normal;
}

.dates-selector-wrapper .details-box{
    padding: 0 20px;
    font-size:18px;
    font-weight:normal;
}

.dates-selector-wrapper .details-box span{
    font-size:15px;
    opacity:0.5;
}

.dates-selector-wrapper .date-selector input:checked ~ .date-selector-box, 
.dates-selector-wrapper .date-selector input:checked ~ .date-selector-box .date-box{
    background-color:#37b7d1;
    color:#FFF;
}

.dates-selector-wrapper .date-selector input:checked ~ .date-selector-box .date-box {
    background-color:#2a9fb6;
    color:#FFF;
}

.join-action-box{
    text-align:center;
    display:none;
}

.join-action-box p{
    padding: 50px 0;
}

img.activity-image-main.blurred,
.w-slide img.blurred{
    -webkit-filter: blur(15px); /* Safari 6.0 - 9.0 */
    filter: blur(15px);
}

.new-date-box{
    display:block;
    padding:0;
    margin:0;
}

.new-date-box li{
    display:block;
    padding:5px 0;
    border-top:1px solid #ccc;
}

.new-date-selector-box{
    display:flex;
    justify-content:space-between;
    align-items:center;
}

.new-date-selector-box .date-box{
    display:inline-block;
    font-size:18px;
    font-weight:600;
    color:#2a9fb6;
}

.new-details-box{
    display:inline-block;
    padding: 5px 0 0;
    font-size:16px;
    font-weight:normal;
}

.new-details-box span{
    font-size:14px;
    opacity:0.5;
    padding-top:5px;
}

.recurring-join-button{
    display:inline-block;
    width:auto;
}

.filter-plus-activities{
    margin:15px 0;
    text-align:center;
}

.filter-plus-activities span{
    cursor:pointer;
}

.calendar-box{
    flex:none;
    position:relative;
    margin-right:5px;
}

.calendar-box .main-view{
    font-size:18px;
    font-weight:600;
    letter-spacing: -0.05em;
    padding:10px;
    border-top:1px solid #ccc;
    border-bottom:1px solid #ccc;
}

.calendar-box .year-view,
.calendar-box .time-view {
    font-size:13px;
    padding:0 8px;
    background-color:#FFF;
    position:absolute;
    top:-10px;
    left:50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
}

.calendar-box .time-view {
    top: initial;
    bottom: -10px;
}

/****** Style Star Rating Widget *****/
.rating { 
    border: none;
    display:inline-block;
}
.rating > input { display: none; } 
.rating > label:before { 
    margin: 5px 5px 0 0;
    font-size: 1.25em;
    font-family: FontAwesome;
    display: inline-block;
    content: "\f005";
}
@media(max-width:991px){
    .rating > label:before { 
        margin: 5px 2px 0 0;
        font-size: 1em;
    }
}
.rating > .half:before { 
    content: "\f089";
    position: absolute;
}
.rating > label { 
    color: #ddd; 
    float: right; 
}
/***** CSS Magic to Highlight Stars on Hover *****/
.rating > input:checked ~ label { color: #FFD700;  } 

.rating > label {
    display:inline-block;
}
.rating.hover-rating > input:checked ~ label, /* show gold star when clicked */
.rating.hover-rating:not(:checked) > label:hover, /* hover current star */
.rating.hover-rating:not(:checked) > label:hover ~ label { color: #FFD700;  } /* hover previous stars in list */
.rating.hover-rating > input:checked + label:hover, /* hover current star when changing rating */
.rating.hover-rating > input:checked ~ label:hover,
.rating.hover-rating > label:hover ~ input:checked ~ label, /* lighten current selection */
.rating.hover-rating > input:checked ~ label:hover ~ label { color: #FFED85;  }

.profile-main-tag::before {
    content:"";
    display:block;
    width:4px;
    height:100%;
    position:absolute;
    top:0;
    left:0;
    background-color:#2a9fb6;
}

.accordion > dd {
    display:none;
}

.accordion dt {
    padding:4px 0;
    border-bottom:1px dotted #f5f5f5;
    margin-bottom:4px;
    font-weight:500;
}

.accordion dt i {
    float:right;
    font-size:18px;
}

.accordion dt a {
    display:block;
    color:#2a9fb6;
    text-decoration:none !important;
}

.accordion dd {
    margin:0;
    padding:5px 10px 15px 25px;
}

.activity-hero {
    width:100%;
    display:block;
    position:relative;
    height:350px;
    background-color:#222;
    background-repeat:no-repeat;
    background-size:cover;
    background-position:center;
}

.activity-hero::after{
    content:"";
    display:block;
    width:100%;
    height:100%;
    position:absolute;
    top:0;
    left:0;
    background-color:rgba(0,0,0,0.6);
}

.activity-hero-text{
    width:90%;
    max-width:600px;
    position:absolute;
    top:50%;
    left:50%;
    transform:translate(-50%, -50%);
    z-index:2;
}

.activity-hero-text .profile-title,
.activity-hero-text .profile-subtitle {
    color:#fff;
    text-align:center;
}

.profile-section .negative-margins{
    margin-top:-50px;
}

.profile-section .profile-slider {
    height:600px;
}

/* 4. USER PROFILE DETAIL */

.acf-field[data-name="user_interests"] select{
    height:150px !important;
}

.colcade-grid {
    display: flex;
    padding: .5rem .5rem 0 .5rem;
}

.colcade-grid .grid-col {
    flex-grow: 1;
    width:50%;
    padding:0 1%;
}

.colcade-grid .grid-col:nth-child(2), 
.colcade-grid .grid-col:nth-child(3),
.colcade-grid .grid-col:nth-child(4) { display: none }

@media ( min-width: 992px ) {
    .colcade-grid .grid-col:nth-child(4) { display: block; } /* show column 2 */
}

.profile-main-tag-txt{
    text-transform: uppercase;
}

.w-slider-arrow-left.with-gradient{
    background: -moz-linear-gradient(left, rgba(0,0,0,0.65) 0%, rgba(0,0,0,0) 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(left, rgba(0,0,0,0.65) 0%,rgba(0,0,0,0) 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to right, rgba(0,0,0,0.65) 0%,rgba(0,0,0,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#a6000000', endColorstr='#00000000',GradientType=1 ); /* IE6-9 */
}

.w-slider-arrow-right.with-gradient{
    background: -moz-linear-gradient(left, rgba(0,0,0,0) 0%, rgba(0,0,0,0.65) 100%); /* FF3.6-15 */
    background: -webkit-linear-gradient(left, rgba(0,0,0,0) 0%,rgba(0,0,0,0.65) 100%); /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to right, rgba(0,0,0,0) 0%,rgba(0,0,0,0.65) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#a6000000',GradientType=1 ); /* IE6-9 */
}

.poke-button,
.fake-poke-button{
    position: relative;
    display: inline-block;
    padding: 10px 15px;
    background: #2a9fb6;
    font-size: 16px;
    line-height: 16px;
    font-weight: 600;
    text-transform:uppercase;
    color:#FFF;
}

.poke-button:hover,
.fake-poke-button:hover{
    background-color:#0bb492;
}

/* 5. LEAVE REVIEW */

.rating-embed{
    width:120px !important;
}

#review-modal .rating > label:before {
    font-size: 4.2em;
}

#review-modal .rating{
    margin:20px 0;
}

/* 6. MODAL */
.modal-overlay {
    display:none;
    top:0;
    left:0;
    position:fixed;
    width:100%;
    height:100vh;
    overflow:auto;
    z-index: 99999;
    background-color:rgba(200, 200, 200, 0.8);
}

.modal-overlay .modal-dialog {
    width:100%;
    max-width:600px;
    position: absolute;
    top:50%;
    left:50%;
    transform:translate(-50%, -50%);
    -webkit-transform:translate(-50%, -50%);
    background-color:#FFFFFF;
}

.modal-overlay .modal-dialog .modal-box {
    position:relative;
    padding:35px 40px 30px;
}

.modal-overlay .modal-dialog .close-modal {
    font-size:55px;
    font-weight: 300;
    color:#666;
    position:absolute;
    line-height:32px;
    top:15px;
    right:15px;
    cursor:pointer;
}

.modal-overlay .modal-dialog .modal-title {
    margin-top:0;
    margin-bottom:20px;
    font-weight:500;
    text-align:center;
}

/* 7. ACF FORM */
.acf-form label {
    font-weight:400;
}

.acf-form textarea{
    display: block;
    width: 100%;
    height: 80px;
    padding: 8px 12px;
    margin-bottom: 10px;
    font-size: 14px;
    line-height: 1.42857143;
    color: #333333;
    vertical-align: middle;
    background-color: #ffffff;
    border: 1px solid #cccccc;
    resize:none;
}

/** 8. GENERAL NOTICE **/
.general-notice {
    position:fixed;
    top:0;
    left:0;
    width:100%;
    padding:35px;
    text-align:center;
    z-index:1001;
    background-color:#3898EC;
    color:#FFF;
}

.general-notice.notice-success{
    background-color:#0bb492;
}

.general-notice .dismiss-notice{
    color:#FFF;
    font-size:35px;
    line-height:15px;
    position: absolute;
    top:10px;
    right:10px;
    cursor:pointer;
}

.general-notice p{
    margin:0;
    font-size:16px;
}

.skill-endorsed{
    font-family: FontAwesome;
}

/** 9. Dashboard **/
.pro-member-tag{
    display:block;
    width:300px;
    text-align:center;
    border:2px solid #000;
    background-color:coral;
    color:white;
    text-transform:uppercase;
    font-size:18px;
    padding:5px 0;
    position:absolute;
    z-index: 2;
    transform:rotate(-45deg);
    top: 30px;
    left: -105px;
}

.dashboard-sidebar-wrapper{
    background-color:#262626;
    overflow:hidden;
}

.dashboard-sidebar{
    position:fixed;
    top:61px;
    left:0px;
    width: 16.66666667%;
}

.sidebar-logo{
    padding:10px 10px 15px;
    border-bottom:1px solid #000;
    text-align:center;
}

.sidebar-logo img{
    width:100%;
    max-width:180px;
    margin:0;
    opacity:0.5;
}

.dashboard-sidebar .sidebar-nav {
    list-style-type: none;
    margin:0;
    padding:0;
    display:block;
}

.dashboard-sidebar .sidebar-nav li{
    display:block;
    width:100%;
    opacity:0.5;
}

.dashboard-sidebar .sidebar-nav li.subitem{
    padding-left:15px;
    background-color:rgba(200, 200, 200, 0.1);
}

.dashboard-sidebar .sidebar-nav li.active,
.dashboard-sidebar .sidebar-nav li:hover{
    background-color:#000;
}

.dashboard-sidebar .sidebar-nav li.active a,
.dashboard-sidebar .sidebar-nav li:hover a{
    color:#2a9fb6;
}

.dashboard-sidebar .sidebar-nav li.active svg path,
.dashboard-sidebar .sidebar-nav li:hover svg path{
    fill:#2a9fb6;
}

.dashboard-sidebar .sidebar-nav li a{
    color:#FFF;
    text-decoration:none;
    padding:14px 20px;
    display:block;
    font-weight:500;
}

.dashboard-sidebar .sidebar-nav li a img,
.dashboard-sidebar .sidebar-nav li a svg{
    height:22px;
    width:22px;
    margin-right:10px;
}

.dashboard-sidebar .sidebar-nav li a span,
.dashboard-sidebar .sidebar-nav li a img,
.dashboard-sidebar .sidebar-nav li a svg{
    display:inline-block;
    vertical-align:middle;
}

.blr_lng_selector {
    position: absolute;
    z-index: 2;
    right: 10px;
    top: 10px;
}

.profile-hero{
    height: 150px;
    position:relative;
    overflow:hidden;
    background-color:#444;
}

.profile-hero .bg-image{
    height: 300px;
    width:125%;
    position:absolute;
    background-repeat:no-repeat;
    background-position:center;
    background-size:cover;
    filter: blur(20px);
    -webkit-filter: blur(20px);
    top:50%;
    left:50%;
    transform:translate(-50%, -50%);
    -webkit-transform:translate(-50%, -50%);
}

.profile-fields{
    position:relative;
    padding:90px 35px 0;
}

.profile-avatar{
    width:150px;
    height:150px;
    position:absolute;
    top:-75px;
    left:50%;
    transform:translateX(-50%);
    border-radius:150px;
    -webkit-border-radius:150px;
    background-color:#FFF;
    border:5px solid #f5f5f5;
}

.profile-avatar img{
    border-radius:150px;
    -webkit-border-radius:150px;
}

.profile-avatar .acf-icon.dark {
    background-color:#F8F8F8 !important;
    color:#222;
}

.profile-avatar .hide-if-value{
    font-size:12px;
    color:#222;
    text-align:center;
    margin-top:50px;
}

.page-template-page-profile .w-col .w-col {
    padding-left: 10px;
    padding-right: 10px;
}

.page-template-page-profile .acf-label,
.page-template-page-profile #message.updated{
    display:none !important;
}

.page-template-page-profile .profile-avatar .acf-fields > .acf-field{
    padding:0 !important;
}

.page-template-page-profile .acf-fields > .acf-field{
    width:100% !important;
}

.page-template-page-profile .acf-fields.-border{
    border:none !important;
}

.profile-name{
    margin-bottom:5px;
}

.profile-name a{
    font-size:0.9rem;
    text-decoration: none;
    font-weight:400;
    letter-spacing: -0.05em;
}

.profile-nickname{
    width: 100%;
    margin-bottom: 5px;
    -webkit-box-flex: 0;
    -webkit-flex: 0 auto;
    -ms-flex: 0 auto;
    flex: 0 auto;
    color: #333;
    font-weight: 400;
    text-align: center;
    text-transform: none;
}

.profile-roles{
    font-weight: 500;
    font-size:16px;
    text-transform:capitalize;
    text-align:center;
    margin-bottom:10px;
}

.profile-section-title{
    font-size:18px;
}

.profile-edit-fields {
    border:1px solid #ccc;
    background-color:#FFFFFF;
    padding:15px;
    margin-bottom:25px;
}

.profile-edit-fields .acf-label{
    display:block !important;
    margin-bottom:4px !important;
}

.profile-edit-fields .acf-field .acf-label label{
    color:#444;
    font-size:12px;
}

.profile-edit-fields .acf-field {
    padding:0 !important;
    margin-top:15px !important;
    padding-top:15px !important;
    border-color:#ccc !important;
}

.profile-edit-fields .acf-field:first-child {
    margin-top:0 !important;
    padding-top:0 !important;
}

.profile-edit-fields .acf-field.not-first {
    padding:0 !important;
    margin-top:15px !important;
    padding-top:15px !important;
    border-top:1px solid #ccc !important;
}

.profile-edit-fields input[type="text"],
.profile-edit-fields input[type="email"],
.profile-edit-fields input[type="phone"],
.profile-edit-fields input[type="number"],
.profile-edit-fields input[type="password"],
.profile-edit-fields textarea,
.profile-edit-fields select {
    display: block;
    width: 100% !important;
    height: 38px !important;
    padding: 8px 12px !important;
    margin-bottom: 10px !important;
    font-size: 14px !important;
    line-height: 1.428571429;
    color: #333333;
    vertical-align: middle;
    background-color: #ffffff;
    border: 1px solid #cccccc;
}

.profile-edit-fields textarea {
    height:auto !important;
    resize: vertical !important;
}

.profile-section.user-profile-edit{
    padding-bottom:0 !important;
}

.action-box{
    margin-bottom:25px;
}

#password-strength-meter {
    margin: 0 auto 1em;
    width: 100%;
    /* Applicable only to Firefox */
    background: none;
    background-color: rgba(0, 0, 0, 0.1);
}

#password-strength-text{
    color:#FFF;
    text-align:center;
    padding:10px 20px;
}
  
#password-strength-meter[score-value="0"] { background: red; }
#password-strength-meter[score-value="1"] { background: red; }
#password-strength-meter[score-value="2"] { background: yellow; }
#password-strength-meter[score-value="3"] { background: orange; }
#password-strength-meter[score-value="4"] { background: green; }

#password-strength-meter[score-value="2"] #password-strength-text,
#password-strength-meter[score-value="3"] #password-strength-text{
    color:#333;
}

.avatar-wrapper{
    overflow:hidden;
    position:relative;
}

.mobile-toggle-wrapper {
    display:inherit;
    width:40px;
    position:fixed;
    top:240px;
    left:0;
    z-index: 2;
    transition:left 0.2s ease;
    flex-direction: column;
}

.mobile-toggle-dashboard,
.mobile-profile-save,
.mobile-profile-cancel {
    display:inherit;
    width:40px;
    padding:10px;
    text-align:center;
    background-color:#3898EC;
    color:#FFF;
    font-size:24px;
    height: 48px;
    cursor:pointer;
    text-decoration:none;
}

.mobile-profile-save{
    background-color:#0bb492;
}

.mobile-profile-cancel{
    background-color:coral;
}

.mobile-toggle-dashboard .icon-double-angle-left{
    display:none;
}

.mobile-toggle-wrapper.active{
    left:280px;
}

.mobile-toggle-dashboard.active .icon-double-angle-left{
    display:inherit;
}

.mobile-toggle-dashboard.active .icon-double-angle-right{
    display:none;
}

/** 10. ACTIVITY EDIT / ADD **/
.page-template-page-edit-activity .w-col .w-col {
    padding-left: 10px;
    padding-right: 10px;
}

.page-template-page-edit-activity #message.updated{
    display:none !important;
}

.page-template-page-edit-activity .profile-avatar .acf-fields > .acf-field{
    padding:0 !important;
}

.page-template-page-edit-activity .acf-fields > .acf-field{
    width:100% !important;
}

.page-template-page-edit-activity .acf-fields.-border{
    border:none !important;
}

.user-activity-edit{
    padding-bottom:0;
}

.user-activity-edit > .w-row.flex{
    min-height:calc(100vh - 60px);
}

.activity-fields{
    position: relative;
    padding: 35px 35px 0;
}

.activity-fields h2 {
    font-weight:500;
    letter-spacing: -0.05em;
}

.payment_modal_wrapper{
    display:none;
    position:fixed;
    z-index:9999999;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background-color:rgba(255,255,255,0.8);
}

.payment_modal_wrapper .payment_modal_container {
    width:100%;
    max-width:500px;
    margin: 100px auto 0;
    background-color:#FFF;
    padding:30px;
    border:1px solid #ccc;
}

/** 11. Activities List **/
.activity-list svg,
.activity-list img{
    width:20px;
    height:20px;
}

.activity-list svg path{
    fill:#2a9fb6;
}

.activity-list {
    padding:10px 0 5px;
    border-bottom:1px solid #ccc;
}

.activity-list:nth-child(even){
    background-color:rgba(100, 100, 100, 0.1);
}

/** 12. Service edit **/
.page-template-page-edit-service .w-col .w-col {
    padding-left: 10px;
    padding-right: 10px;
}

.page-template-page-edit-service #message.updated{
    display:none !important;
}

.page-template-page-edit-service .profile-avatar .acf-fields > .acf-field{
    padding:0 !important;
}

.page-template-page-edit-service .acf-fields > .acf-field{
    width:100% !important;
}

.page-template-page-edit-service .acf-fields.-border{
    border:none !important;
}

/** 13. Payment Boxes **/
.plan-box{
    width:90%;
    max-width:400px;
    padding: 25px;
    border:1px solid #262626;
    margin:25px auto;
    border-radius:10px;
}

.plan-box .plan-name{
    font-size:24px;
    font-weight:500;
    margin-bottom:20px;
    text-align:center;
}

.plan-box .plan-features{
    margin-bottom:20px;
}

.plan-box .trial-period {
    color:#999;
    font-weight:bold;
    font-size:12px;
    text-align: center;
}

.plan-box .trial-period strong {
    color:#262626;
}

.plan-periods {
    margin-top:25px;
    display:flex;
    justify-content:space-between;
}

.plan-periods label{
    width:40%;
    cursor:pointer;
}

.plan-periods label .monthly,
.plan-periods label .yearly{
    padding: 15px;
    background-color:#ccc;
    border-radius:6px;
    opacity:0.8;
    position:relative;
}

.plan-periods label .monthly::after,
.plan-periods label .yearly::after{
    content:"";
    display:block;
    width:14px;
    height:14px;
    border-radius:15px;
    right:5px;
    top:5px;
    background-color:#aaa;
    position:absolute;
}

.plan-periods label input {
    opacity:0;
    visibility:none;
    position:absolute;
}

.plan-periods label input:checked ~ .monthly,
.plan-periods label input:checked ~ .yearly {
    background-color:#FFF;
}

.plan-periods label input:checked ~ .monthly::after,
.plan-periods label input:checked ~ .yearly::after{
    background-color:lime;
}

.plan-periods label .price {
    font-weight:300;
    font-size:24px;
    letter-spacing: -0.05em;
}

.plan-periods label .price .per{
    font-size:12px;
    font-weight:500;
    letter-spacing:normal;
    text-align:right;
}

.plan-periods label .description{
    font-weight:500;
    text-align:center;
}

.payment-options input[type="radio"] {
    visibility:hidden;
    opacity:0;
}

.payment-options .pricing-plans {
    display:flex;
    justify-content: center;
    align-content: center;
}

.payment-options .pricing-plans label{
    width:25%;
    display:flex;
    cursor:pointer;
}

.payment-options .pricing-plan{
    width:100%;
    padding:15px;
    background-color:#D7DADF;
    margin:15px;
}

.payment-options .pricing-plan .pricing-icon{
    text-align:center;
    margin-bottom:15px;
    margin-top:15px;
}

.payment-options .pricing-plan .pricing-icon img,
.payment-options .pricing-plan .pricing-icon svg{
    width:28%;
    margin: 0 auto;
}

.payment-options .pricing-plan .pricing-icon svg path{
    fill:#999;
}

.payment-options .pricing-plan .pricing-name {
    text-transform:uppercase;
    font-weight:normal;
    text-align:center;
    display:block;
    margin-bottom:20px;
    letter-spacing: 0.05em;
    font-size:18px;
}

.payment-options .pricing-plan .pricing-description {
    font-weight:500;
    text-align:center;
    display:block;
    margin-bottom:20px;
    letter-spacing: 0.02em;
    font-size:12px;
}

.payment-options .pricing-plan .pricing-trial {
    display:block;
    padding:6px;
    width:100%;
    max-width:200px;
    margin: 0 auto;
    text-align:center;
    text-transform: uppercase;
    border:1px solid #999;
}

.payment-options .pricing-plan .pricing-price {
    font-size:32px;
    text-align:center;
    letter-spacing: -0.05em;
    margin:20px 0 5px;
}

.payment-options .pricing-plan .pricing-cycle{
    font-size:14px;
    text-align:center;
    font-weight:normal;
}

.payment-options label input:checked ~ .pricing-plan {
    background-color:#0bb492;
    color:#FFF !important
}

.payment-options label input:checked ~ .pricing-plan .pricing-trial {
    border-color:#FFF
}
.payment-options label input:checked ~ .pricing-plan svg path {
    fill:#FFF;
}

/** 14. SEARCH PAGE **/
.map-wrapper,
.search-results-wrapper{
    height: calc(100vh - 60px);
}
.search-results-title::after{
    content:"";
    position:absolute;
    bottom:-20px;
    left:50%;
    height:1px;
    width:50px;
    background:#333;
    transform:translateX(-50%);
    -webkit-transform:translateX(-50%);
}

.search-results-wrapper .image-link .text-block-5 {
    transition:opacity 0.2s ease;
}

.search-results-wrapper .image-link:hover .text-block-5 {
    opacity:1;
}

.search-result-details-list.inline-list li.list-item{
    display:inline-block;
}

/* 15. Quick Contact Modal */
#quick_contact_modal .form-group.group-first-item{
    opacity:0;
    position:absolute;
    z-index:-5;
    top:-5000px;
    left: -5000px;
}

#open_contact_modal {
    margin-top:15px;
}

#quick_comments {
    resize:none;
}

.rangebox-mobile{
    display:block;
    /* display:none; */
    /* margin:30px 0; */
}

.rangebox-mobile label{
    vertical-align: middle;
    display:inline-block;
}

.rangebox-mobile input{
    width:130px;
    height:38px;
    text-align:center;
    border:1px solid #eee;
    font-size:14px;
    vertical-align: middle;
    display:inline-block;
}

.rangebox-mobile .minus-button,
.rangebox-mobile .plus-button {
    vertical-align: middle;
    display:inline-block;
    width:38px;
    height:38px;
    line-height:38px;
    font-size:32px;
    background-color:transparent;
    border:none;
    color:#2a9fb6;
    /* font-weight: bold; */
}

/* 16. My Payments */
.cancel-subscription-wrapper {
    display:none;
    padding: 20px;
    border:1px solid coral;
    margin: 15px 0;
    text-align:center;
}

.cancel-subscription-wrapper img,
.cancel-subscription-wrapper svg{
    width: 20px;
    height: 20px;
    vertical-align: text-top;
}

.cancel-subscription-wrapper .text-link {
    display:inline-block;
    padding:10px;
}

/***** MEDIA QUERIES *****/
@media(max-width: 1199px){
    .dashboard-sidebar{
        width: calc(25% - 23px);
    }
}

@media(max-width: 1024px) {
    .sidebar-logo{
        display:none !important;
    }

    .dashboard-sidebar .sidebar-nav li a{
        padding:10px 12px;
    }

    .activity-fields,
    .profile-fields {
        padding-left:5px !important;
        padding-right:5px !important;
    }

    .acf-repeater .acf-row-handle{
        width:26px !important;
    }

    .acf-icon.small, .acf-icon.-small {
        width: 26px !important;
        height: 26px !important;
        line-height: 25px !important;
    }
}

@media(max-width: 991px){
    .dashboard-sidebar{
        width: 100%;
        position:static;
        top:0;
    }

    .dashboard-sidebar-wrapper{
        position:fixed;
        top:61px;
        left:0px;
        width:280px;
        z-index:4;
        height:100%;
        padding:0;
        transform:translateX(-300px);
        transition:transform 0.2s ease;
    }

    .dashboard-sidebar-wrapper.active{
        transform:translateX(0);
    }

    .dashboard-sidebar .sidebar-nav li a img,
    .dashboard-sidebar .sidebar-nav li a svg{
        width:18px;
        height: 18px;
    }

    .payment-options .pricing-plans label{
        width:50%;
    }

    .search-results-wrapper{
        height:auto !important;
        overflow:auto !important;
    }
}

@media(max-width:767px){
    .new-date-box li{
        padding:15px 0;
    }

    .new-details-box{
        font-size: 14px;
        letter-spacing: -0.05em;
    }
    
    .new-details-box span{
        display:block;
        font-size:13px;
        letter-spacing: -0.05em;
    }

    .payment-options .pricing-plans {
        display: block;
        flex:none;
    }

    .payment-options .pricing-plans label{
        width:100%;
    }

    .rangebox{
        margin-bottom:25px;
        margin-top:20px;
    }

    .rangebox-mobile{
        margin:30px 0;
    }

    .rangebox-mobile label {
        display:block;
    }

    .rangebox-mobile input{
        width:130px;
        height:60px;
        text-align:center;
        border:1px solid #eee;
        font-size:24px;
        vertical-align: top;
        display:inline-block;
    }
    
    .rangebox-mobile .minus-button,
    .rangebox-mobile .plus-button {
        vertical-align: top;
        display:inline-block;
        width:60px;
        height:60px;
        line-height:60px;
        font-size:42px;
        background-color:transparent;
        border:none;
        color:#2a9fb6;
        /* font-weight: bold; */
    }

    .rangeslider__handle{
        height:40px;
        top:-16px !important;
        line-height:38px;
    }

    .rangebox{
        display:none;
    }

    .rangebox-mobile{
        display:block;
    }

    .w-display-tiny{
        display:inline;
    }

    .w-table{
        flex:none !important;
        display:block !important;
    }

    .activity-fields h2{
        font-size:24px;
    }

    .activity-hero{
        height:100vh;
    }

    .profile-section .negative-margins{
        margin-top:0px;
    }
}