

#responsive-back-button{
	display:none;
}





#available_times{
    margin-top: 13px;
}

#available_times ul {
    list-style: none;
    padding: 0;
    float:left;
    width:33.333%;
}
#available_times ul lh {
    list-style: none;
    color: #000000;
    display: block;
    margin-bottom:10px;
    font-size:13px;
}

#available_times ul li a {
    color: #222222;
    display: block;
    font-size: 13px;
    margin-top: -1px;
    padding: 6px 6px;
    text-decoration: none;
}

#available_times ul li a:hover {
	background-color: #eeeeee;
}

#available_times li
{
	list-style-type: none;
}


.datepicker_alert
{
    display: none;
    font-size:1.2em;

}

#datepicker_alert_text
{
	display: inline-block;
}

/************************
MOBILE ONLY
************************/

@media only screen and (max-width:46em){

	#mobile-nav-button{
		display:block;
		/* make sure the menu button is on top */
		z-index: 1001;
	}

	#nav {
      margin: 0;
      position: absolute;
      top: 0;
      right: 0;
      left: 0;
      z-index: 1000;
    }

    #nav li{
    	list-style:none;
    	width:100%;
	}

    #nav a {
      overflow: hidden;
      display:none;
      padding: 0 1em;
    }

	#nav:target {
		/* unless it's showing */
		z-index: 1001;
	}


	#back {
		/* establish a positioning context for the closer */
		position: relative;

	}

	#nav #back a {
		/* turn the link into a ghost */
		background: transparent;
		border: 0;
		text-indent: -999em;  /* make it fill the screen */
		position: absolute;
		top: -101em;
		bottom: -101em;
		left: 0;  right: 0;
		/* ensure it sits behind the other links */  z-index: 0;
	}


    #nav:target a, .js-nav #nav a {
      line-height: 2em;
      display:block;
		/* make nav links sit up a level */
		position: relative;
		z-index: 1;
		-moz-transition: height .25s, line-height .25s;
		-ms-transition: height .25s, line-height .25s;
		-o-transition: height .25s, line-height .25s;
		-webkit-transition: height .25s, line-height .25s;
		transition: height .25s, line-height .25s;
    }

    .js-ready #nav{
    	left: -70%;
    	width:70%;
    	height:100%;
    	background:#000;
	}

	.js-ready #nav #back a{
		background-color: #000;
	}

	#client-inner-wrapper{
		position:relative;
	}

	.js-ready #client-inner-wrapper{
		left:0;
	}
    .js-nav #client-inner-wrapper{
    	left:70%;
	}

	.js-nav #responsive-back-button{
		display:inline-block;
	}

	#datepicker_container{
		margin:0 auto;
		width:20em;
	}

}


/*******************
TABLET AND LARGER
*******************/

@media only screen and (min-width: 46em){
	#clientnav li a{
		display:inline-block;
		float:left;
	}
	a#mobile-nav-button{
		display:none;
	}
	li#back{
		display:none;
	}


	#datepicker_container {
		margin: 10px 0 0 0;
		float: left;
	}

	#available_times{
	    position: relative;
	    margin-left: 280px;
	}

	.datepicker_alert
	{
	    display: none;
	    padding-left: 20px;
	    float:right;
	    width:300px;
   }

	 #client-waiting-list-link{
	 	float:right;
	 	width:300px;
	}

	#login-wrapper{
		width: 70em;
		margin:0 auto;
	}


	#existing_user_login{
		float:left;
		width:100%;
	}

	#existing_user_login_form, fieldset#new_user_login{
		width: 100%;
	}

	#new_user_login_form{
		float:right;
		width:45%;
		padding-left:5%;

	}

	div#existing-login-wrapper {
		float:left;
		width: 45%;
		padding-right:5%;
	}

	#finalize_form{
		width:100%;
		max-width:800px;
	}

	#your_request{
		float:left;
		width:45%;
	}

	#submission_panel{
		float:right;
		width:45%;
		margin-top:2em;
	}

	div#your_details{
		clear:both;
		width:45%;
		float:left;
	}
}

}

/*------------------------------------------*/


@media only screen and (min-width: 50em){

}



@media only screen and (min-width: 73em){

}

html, body
{
	background-color: transparent;
	box-shadow:none;
}

body
{
}

#main_container {
	background-color: transparent;
	height:100%;
    z-index:1;
    position: relative;
    /* only ie will see this width - firefox sees it as invalid property */
    width:100%;
}


#nav_container
{
	background-color: #222;
   -moz-box-shadow:    inset 0 0 20px #000;
   -webkit-box-shadow: inset 0 0 20px #000;
   box-shadow:         inset 0 0 20px #000;
   position:relative;
   z-index: 100;
}

#clientnav div{
}

#clientnav  {
	font-size: 12px;
}



#clientnav ul{
	list-style-type: none;
	margin:0;
	width: 100%;
}

#clientnav li{
	list-style-type: none;
	margin: 0;
}

#clientnav a{
	padding: 11px 0 11px 11px;
	text-decoration: none;
	color: #ffffff;
	background-color: #000000;

	font-weight: bold;
}

#clientnav a:hover
{
	color: #ccc;
}

/* active nav item*/
#active a{

	background-image: none;
	font-weight: bold;
	color: #cccccc;
	margin: 0 0 0px 0px;
}

#client_container {
	padding:20px;
	background: transparent;
	height: auto;
	min-height: 100%;
	text-align:center;
	margin-left:auto;
	margin-right:auto;
}

#client_inner_container{
	max-width:800px;
	margin:0 auto;
	width:100%;
}

.other-month
{
	color: #fff !IMPORTANT;
	background-color: #fff !IMPORTANT;
	background-image: none !IMPORTANT;
	border: 1px solid #fff !IMPORTANT;
}


#client_header
{
	background-color: #EEE3CF;
	width: 100%;
	font-size: 2.1em;
	font-weight: bold;
	letter-spacing:0.1em;
}

#neutral_page_top
{
	background-color: #efefef;
	border-bottom: 1px solid #ccc !important;
}

#login_container
{
	padding:5px 10px 2px 2px;
	font-size:12px;
}

a.login_btn:link, a.login_btn:visited
{
	color: #ccc !important;
	text-decoration: none;
	border: 1px solid #000;
	padding: 5px 7px 5px 7px !important;
	margin-left: 5px;
	-moz-border-radius:5px;
	-webkit-border-radius:5px;
	-o-border-radius:5px;
	border-radius:5px;
	font-weight:normal !important;
	display:inline-block;
}

a.login_btn:hover
{
	border-color: #000;
	color: #fff !important;
}

a.login_btn:active
{
	background-color: #333;
}


#client_outer
{
	background-color: #666;
	min-height:100%;
	background-attachment: fixed;
	background-image: url('../images/backgrounds/white_linen.png');
}

#client_inner
{
	display: block;
	margin-left:auto;
	margin-right:auto;
	min-height:100%;
	background-color: white;
	
}

#select_service {
	margin: 0px;
	margin-left: auto;
	margin-right: auto;
	padding:0px;
	text-align: left;
}





#pick_appointment_stylist a{
    padding: 10px 12px;
}

.pick_appointment {
	padding-bottom:20px;
}

#legend-link{
	color: #157efb;
	font-size:.9em;
	cursor: pointer;

}

#datepicker_legend{
	display:none;
}

#datepicker_legend td{
	padding: 5px;
	text-align:center;
	font-size:15px;
}

#datepicker_legend td.legend-text{
	font-size:.9em;
	text-align:left;
}



.today_date, .selected_date{
	padding:5px;
	width:15px;
	height:15px;
	border:2px solid;
}

.availability_list {
	display:none;
}

#select_service  {
    width:100%;
}
#select_service ul lh {
    list-style: none;
    padding: 12px 10px;
    color: #666666;
    display: block;
    font-weight: bold;
    background-color: #cccccc;
}

#select_service ul li{
	list-style-type: none;
}

#select_service ul li a {
    color: #222222;
    display: block;
    margin-bottom: 0px;
    text-decoration: none;
	clear: left;
	font-size:1.6em;
	font-weight:300;
	border-bottom:1px solid #eee;
}

#select_service ul li a:hover{
	background-color: #eee;
}

#select_service .ui-accordion .ui-accordion-header .ui-accordion-header-icon {
	position: absolute;
	right: 1em;
	top: 50%;
	left:auto;
	margin-top: -8px;
}

#select_lists .ui-accordion .ui-accordion-content{
	padding: 0;
}

#select_lists .ui-accordion .ui-accordion-icons{
	padding: 1em;
}

#select_service .ui-accordion-header a{
    color: #222;
    background-color: #eee;
    line-height: 42px;
    display: block;
    font-size: 12pt;
    width: 100%;

}


#select_service .ui-accordion-header{
	background: #333;
	font-size:1.5em;
	font-weight:300;
	font-family:'Open Sans', helvetica, verdena, arial;
	border-radius: 0;
	border:0px;
	color: #fff;
}
#select_service .ui-accordion-header:hover{
	background: #666;
}

#select_service ul li ul li a {
    background-color: #fff;
    color: #222222;
    display: block;
    font-weight: 300;
    border-top: 1px solid #eee;
    text-decoration: none;
	clear: left;
	font-size:1.4em;
}

#select_service ul li ul li a:hover {
	background-color: #eee;
}

#select_service li a {display:inline-block;}
#select_service li a {display:block;}




#select_stylist
{
	text-align: center;
}

#select_stylist ul
{
	display:inline;
}

#select_stylist li
{
	display:inline;
}

#select_stylist li a
{
	display:inline-block;
	width:200px;
	text-align: center;
	height:310px;
	border: 1px solid #ddd;
	vertical-align: middle;
	margin-left: 10px;
	margin-right:10px;
	text-decoration: none;
	color:#777;
	font-size:20px;
	-moz-box-shadow:   0 0 10px #ccc;
	-webkit-box-shadow:  0 0 10px #ccc;
	box-shadow:  0 0 10px #ccc;
	line-height:1.4em;
	margin-bottom: 20px;
	background-color: #fff;
}

#select_stylist li a:hover
{
	opacity:0.6;
	filter:alpha(opacity=60); /* For IE8 and earlier */
}

#select_stylist .ui-state-hover{
	color: #31A7F0 !important;
}

.stylist_name
{
	margin-top:100px;
	font-weight: 300;
}

.stylist_picture_name
{
	display:block;
	margin-top:10px;
	font-weight: 300;
}

.services_stylist_name{
	font-size: 2.5em;
	display:block;
	font-weight:300;
	font-family:'Open Sans', helvetica, verdena, arial;
	margin-top:.4em;
	color: #333;
}

.services_stylist_title{
	font-size:1.3em;
	color: #333;
	margin-top:.5em;
	display:block;
}

#your_details {
	padding: 10px;
	display:block;
	width:100%;
	font-size:1.1em;
	color:#666;
	line-height:1.4em;
}


#new_user_login label.error{
	font-size: 10pt;
	color: #ff0000;
	margin-bottom: 7px;
	width: 300px;
}

#new_user_login button, #existing_user_login_form button{
	width:100%;
}

#existing-login-wrapper {
	width: 275px;
	text-align: left;
	padding: 0px 0 10px 0;
	margin:0 auto;
}

#existing_user_login h2, #new_user_login_form h2{
	font-size:1.8em;
}

.recessed_box
{
	background-color: #f5f5f5;
	height: auto;
	padding: 20px 0px 10px 20px;
	width: 22em;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	-moz-box-shadow:    inset 0 0 4px #ccc;
	-webkit-box-shadow: inset 0 0 4px #ccc;
	box-shadow:         inset 0 0 4px #ccc;

}

#new_user_login input, #existing_user_login input{
	width:100%;
	margin-left:0;
	box-sizing: border-box;
}

#new_user_login h2, #existing_user_login h2{
	text-align:center;
}


#new_user_login {
	text-align: left;
	min-height: 11em;
	height: auto;
	width: 255px;
	margin: 0 auto;
}

#existing_user_login label{
}

#new_user_login label{

}

#existing_user_login label.error{
	font-size: 10pt;
	color: #ff0000;
	margin-bottom: 7px;
	width: 300px;
}

#your_request {
	font-size:1.2em;
}




#your_notes{
	display:block;
	width:40%;
	float:left;

}

#finalize_form textarea{
	padding: 3px;
	margin-left: 0px;
	width:100%;
}

.book_it
{
	font-size:20px;
	font-weight: bold;
	padding-left: 40px;
	padding-right: 40px;
	padding-top: 10px;
	padding-bottom: 10px;
}
.book_it:hover{
}

.submitBtn{
	background-color: #333;
	border:0px;
	-moz-border-radius:5px;
	-webkit-border-radius:5px;
	-o-border-radius:5px;
	border-radius:5px;
	color: #fff;
	font-weight: bold;
	padding: 10px 20px;
}

.submitBtn:hover{
	background-color: #ccc;
	color: #222;
}

#client_profile_form{
	width: 400px;
	margin-left:auto;
	margin-right:auto;
}

#client_profile_form legend{
	margin-bottom:15px;
	margin-top:10px;
}

#client_profile_form input[type="text"]{
	width:250px;
}

.pretty_button, button.pretty_button {
		font-size:1.2em;
		text-decoration:none;
		padding:5px 8px 6px 8px;
		border:1px solid #ddd;
		text-align:center;
		color: #999;
		background-color: #ddd;
		-moz-border-radius:4px;
		-webkit-border-radius:4px;
		-o-border-radius:4px;
		border-radius:4px;
		background:#ddd;
		-moz-border-radius:5px;
		-webkit-border-radius:5px;
		-o-border-radius:5px;
		border-radius:5px;
}



.pretty_button:hover {
		color:#3278BE !important;
		border-color:#3278BE;
		-moz-box-shadow:    inset 0 0 3px #7cb0e5;
		-webkit-box-shadow: inset 0 0 3px #7cb0e5;
		box-shadow:         inset 0 0 3px #7cb0e5;
	}


.primary_button{
	background: #333 !important;
	color: #fff !important;
	border: 2px solid #333;
}

.primary_button:hover{
	background-color: #eee !important;
	color: #ff0000;
}


#my_previous_appointments table, my_upcoming_appointments table{
	background-color: #eee;
}



#my_previous_appointments td{
	background-color: #fff;
	padding: 10px;
	color: #666666;
	text-align:left;
	vertical-align: top;

}


#my_upcoming_appointments th, #my_previous_appointments th{
	margin: 0px;
	padding:5px;
	font-size: 1.4em;
	background-color: #fff;
}

.separated_row {

}

#my_upcoming_appointments td{
	margin: 2px;
	padding: 10px 5px;
	vertical-align: top;
	text-align:left;
    background-color: #ffffff;

}

#my_upcoming_appointments td.my_appointments_cancel{
    background-color: #ffffff;

	border-bottom: 0px solid #fff !important;
}

.my_appointments_notes{
	background-color: #fff;
	font-size: 10pt;
}

.my_appointments_date{
	background-color: #fff;
	width: 9em;
	font-weight: bold;
}

.my_appointments_service{
	background-color: #fff;
	width: 8em;
}

.my_appointments_time{
	background-color: #fff;
	width: 6em;
}

.my_appointments_stylist{
	background-color: #fff;
	width: 10em;
}

.my_appointments_status{
	background-color: #fff;
	width: 5em;
}

.my_appointments_notes{
	width: 13em;
}

#client_container.help_page{
	text-align:left;
	max-width:800px;
	font-size:16px;
	line-height: 1.5em;
}

.client_body .log_in_info{
	color:#fff;
}


.ui-datepicker-inline{
	border: 0px;
}

#client_container .ui-datepicker a {
	border:0px;
	width:25px;
	height:25px;
	text-align: center;
	background: transparent;
	line-height:25px;
	margin: 2px;
	border: 2px solid #fff;
}

#client_container .ui-datepicker .ui-state-hover {
	background: #ccc;
	-moz-border-radius:50%;
	-webkit-border-radius:50%;
	-o-border-radius:50%;
	border-radius:50%;
}

#client_container .ui-datepicker-current-day a{
	background: #333 !important;
	color: #fff !important;

	-moz-border-radius:50%;
	-webkit-border-radius:50%;
	-o-border-radius:50%;
	border-radius:50%;
}

#client_container .ui-datepicker-today span, #client_container .ui-datepicker-today a{
	background: #fff;
	border: 2px solid #999 !important;
	-moz-border-radius:50%;
	-webkit-border-radius:50%;
	-o-border-radius:50%;
	border-radius:50%;
}

#client_container .ui-datepicker-unselectable .ui-state-default{
	border:0px;
	text-align: center;
	width:25px;
	height:25px;
	line-height:25px;
	margin: 2px;
}

#client_container .ui-datepicker th{
	font-weight: normal;
	color: #ccc;
}

#client_container #datepicker_container{
	font-size: 1.2em;
}

#client_container .ui-datepicker-title{
	font-weight: normal;
}

label.error{
	width:auto;
	float:none;
	text-align:left;
}

.service_item{
	line-height:1.3em;
	font-size:1.2em;
	font-weight:300;
	font-family:'Open Sans', helvetica, verdena, arial;
}

.service_description{
	color: #888;
}

.card_container
{
	display: inline-block;
	background-color: #eee;
	padding:20px;
	vertical-align: middle;
	width:100%;
	box-sizing:border-box;
}

.card{
	padding:20px;
	background-color: #fff;
	box-shadow: 1px 1px 3px #c5c5c5;
	-moz-box-shadow: 1px 1px 3px #c5c5c5;
	-webkit-box-shadow: 1px 1px 3px #c5c5c5;
	border:1px solid #f6f6f6;
}

.cant-complete{
	width:50%;
	margin:30px auto;
	text-align:center;
	font-size:1.5em;
}

.large-phone{
	font-size:2em;
	color: #999;
	font-weight:300;
}

span.my_appointments_cancel.smaller_text{
	margin: 30px 0 10px 0;
}

@media only screen and (max-width:480px){
	.salonLogo{
		max-width: 80%;
	}
}

#fb-button{
	text-align: center;
}

#booking_login_container{
    width: 570px;
    vertical-align: top;
    margin:0 auto;
}

#sm-social-media-links{
	text-align:center;
	vertical-align:middle;
}

#sm-social-media-links a{
	color: #000;
	text-decoration:none;
}

#sm-social-media-links a:hover{
	color: #ccc;
	text-decoration:none;
}

#sm-social-media-links i{
	font-size:2em;
	padding: 0 10px;
}

#salon-header-logo{
	max-height:300px;
	max-width:90%;
}

#contact_form{
	display:block;
}

#s2id_my-country{
	width:262px;
}