/* Generic Template / Section for woocommerce */
.generic-section {
	background: #fff;
	position: relative;
	overflow: hidden;
	padding: 75px 0 45px;
}
.generic-section .holder {
	margin: 0 auto;
	max-width: 850px;
	position: relative;
	z-index: 5;
}
@media only screen and (max-width: 767px) {
	.generic-section {
		padding: 2em 10px 2em;
	}
}





/* Woocommerce - cart */
.woocommerce #content input.button, .woocommerce #respond input#submit, .woocommerce a.button, .woocommerce button.button, .woocommerce input.button, .woocommerce-page #content input.button, .woocommerce-page #respond input#submit, .woocommerce-page a.button, .woocommerce-page button.button, .woocommerce-page input.button
{
	background: #000 !important;
	background-color:#000 !important;
	color:white !important;
	text-shadow: transparent !important;
	box-shadow: none !important;
	border-color:#000 !important;
    border-radius:0 !important;
    font-weight: normal !important;
    text-transform: uppercase;
    border: 2px solid black;
    letter-spacing: 0 !important;
    line-height: 1.2 !important;
}
.checkout-button {
    font-size: 20px !important;
    padding: 15px 30px 10px !important;  
}
.woocommerce #content input.button.alt:hover, .woocommerce #respond input#submit.alt:hover, .woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover, .woocommerce input.button.alt:hover, .woocommerce-page #content input.button.alt:hover, .woocommerce-page #respond input#submit.alt:hover, .woocommerce-page a.button.alt:hover, .woocommerce-page button.button.alt:hover, .woocommerce-page input.button.alt:hover,
.woocommerce #content input.button:hover, .woocommerce #respond input#submit:hover, .woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce input.button:hover, .woocommerce-page #content input.button:hover, .woocommerce-page #respond input#submit:hover, .woocommerce-page a.button:hover, .woocommerce-page button.button:hover, .woocommerce-page input.button:hover,
.woocommerce #content input.button.alt:hover, .woocommerce #respond input#submit.alt:hover, .woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover, .woocommerce input.button.alt:hover, .woocommerce-page #content input.button.alt:hover, .woocommerce-page #respond input#submit.alt:hover, .woocommerce-page a.button.alt:hover, .woocommerce-page button.button.alt:hover, .woocommerce-page input.button.alt:hover
{
	background: #FFF !important;
	background-color:#FFF !important;
	color: #000 !important;
	text-shadow: transparent !important;
	box-shadow: none !important;
	border-color:#000 !important;
	  text-transform: uppercase !important;
}
.woocommerce-product-details__short-description {
    margin-bottom: 40px;
}
.woocommerce td.product-name .wc-item-meta .wc-item-meta-label, .woocommerce td.product-name .wc-item-meta dt, .woocommerce td.product-name dl.variation .wc-item-meta-label, .woocommerce td.product-name dl.variation dt {
  text-transform: uppercase;
}
.woocommerce td.product-name .wc-item-meta, .woocommerce td.product-name dl.variation {
    font-size: 11px;
    line-height:15px;
}
.woocommerce td.product-name .wc-item-meta p, .woocommerce td.product-name dl.variation p {
    line-height:15px;
}
.woocommerce ul.order_details li {
  clear:none !important; 
  margin-bottom: 5px !important;
  padding-right: 2em !important;
}
.woocommerce ul.order_details .email {
  width:auto !important;
  text-align: left  !important;
}
.woocommerce ul.order_details {
    margin: 0 0 2em 0 !important;
    list-style: none;
}



/* Woocommerce - generic form overrides, to compensate for aggressive css in website */
.woocommerce form input[type="text"], 
.woocommerce form input[type="tel"], 
.woocommerce form input[type="email"], 
.woocommerce form input[type="url"], 
.woocommerce form input[type="password"], 
.woocommerce form input[type="search"], 
.woocommerce form textarea {
	border: 1px solid #999;
    padding: 14px 14px;
    min-height: 30px;
    font-size: 15px;
}
.woocommerce fieldset {
	margin: 20px 0;
}
.woocommerce-Address {
	margin: 0 0 40px 0;
}  
.woocommerce fieldset legend {
	font-weight: 700;
	text-transform: uppercase;
	margin: 0 0 6px;
	padding:0;
}
.woocommerce form .form-row {
    padding: 3px 0;
    margin: 0 0 6px;
}
.woocommerce .select2-container .select2-selection--single {
	height:38px;
}
.woocommerce .select2-container--default .select2-selection--single .select2-selection__rendered {
	line-height:38px;
	padding-left: 14px;
} 
.woocommerce .select2-container--default .select2-selection--single .select2-selection__arrow {
	height:36px;
}
.woocommerce form .form-row .required {
  text-decoration: none;
}
.woocommerce-billing-fields {
 	margin-bottom: 50px;
}
.woocommerce-additional-fields {
 	margin-bottom: 50px;
}
.woocommerce table.shop_table td {
	padding: 17px 14px;
}
.woocommerce table.shop_table th {
	font-weight: 700;
	padding: 13px 14px 10px 14px;
	line-height:1;
	text-transform: uppercase;
}
.woocommerce-MyAccount-navigation {
	margin-bottom: 40px !important;
}
.woocommerce-MyAccount-navigation li {
	padding: 5px 0 !important;
	text-transform: uppercase;
}
.woocommerce-message .button {
 	display:none; 
}


/* Woocommerce - Request Appointment Product (.postid-4202) */
.postid-4202 .woocommerce-product-gallery {
	display: none !important;
}
.postid-4202 .sidebar {
	display:none;
}
.postid-4202 .product_meta {
	display:none;
}
.postid-4202 .summary {
	width: 100% !important;
	float: none !important;
    max-width: 663px;
    margin: 0 auto; 
}
.postid-4202 h1 {
  text-align:center;
}
.postid-4202 .price {
  text-align:center;
  font-size:22px;
  display:none;
}
.postid-4202 .tm-epo-required {
  display:none;
}
.postid-4202 form.cart {
 	border-top: 1px solid black;
	padding-top: 70px;
	position: relative;
    text-align: center;
}
.postid-4202 form.cart:before {
	content: "i" !important;
	font: 32px/1 "barney-martin";
	position: absolute;
	top: -16px;
	left: 50%;
	margin-left: -28px;
	background: white;
	width: 58px;
	height: 58px;
	text-align: center;
	display: block !important;
}
.postid-4202 .tm-extra-product-options .tm-cell {
	margin-bottom: 20px;
}
.postid-4202 .tm-extra-product-options ul.tmcp-ul-wrap li.tmcp-field-wrap label.tm-error, 
.postid-4202 .tm-extra-product-options ul.tmcp-ul-wrap+.tm-error {
	margin-bottom: 0 !important;
}
.postid-4202 .woocommerce-error {
	margin-bottom: 30px !important;
	padding: 15px 0 10px 0 !important;
}
.postid-4202 .woocommerce-error:before {
	left: 10px;
	top: 10px;
}
.postid-4202 .woocommerce-error li {
	margin-bottom: 5px !important;
	padding-left: 30px !important;
}


/* Pick your salon */
.postid-4202 .formchoice-div {
    margin-bottom: 0px;
}
.postid-4202 .formchoice-div label.tm-epo-field-label {
	text-align: center;
	font: normal normal 28px/1 'HelveticaNeueLTStd-Cn';
	text-transform: uppercase;
	text-decoration: none;
    margin-bottom: 20px;
}
.postid-4202 .formchoice-div label.tm-has-required:after {
	content: ': *';
}
.postid-4202 .formchoice-div ul li {
	padding: 0 !important;
}
.postid-4202 .formchoice-div ul li label {
	display: block !important;
	cursor: pointer;
	color: black;
	background: white;
	border: 1px solid black;
	margin-right: 6%;
	font: 25px/1 "HelveticaNeueLTStd-BdCn";
	text-transform: uppercase;
	text-align: center;
	padding: 20px;
	border-radius: 14px;
}
.postid-4202 .formchoice-div ul li label:before {
	content: "\6d";
	font: 32px/1 "barney-martin";
	display: block;
	text-align: center;
	text-transform: none;
	margin-bottom: 15px;
}
.postid-4202 .formchoice-div ul li label:hover {
	color: #999;
}
.postid-4202 .formchoice-div ul li.tc-active label:hover {
	color: white;
	background-color: black;
}
.postid-4202 .formchoice-div ul li:nth-child(even) label {
	margin-right: 0;
	margin-left: 6%;
}
.postid-4202 .formchoice-div ul li.tc-active label {
	color: white;
	background-color: black;
}
.postid-4202 .formchoice-div ul li input[type=radio] {
  position: absolute;
  visibility: hidden;
}
.postid-4202 .formchoice-div .tm-error {
    clear: both;
    float: left;
    letter-spacing: 0 !important;
}
@media only screen and (max-width: 767px) {
	.postid-4202 .formchoice-div label.tm-epo-field-label {
		font-size: 24px;
	}
	.postid-4202 .formchoice-div ul li label {
		font-size: 18px;
		padding: 10px;
	}
	.postid-4202 .formchoice-div ul li label:before {
		font-size: 26px;
		margin-bottom: 10px;
	}
}


/* Divline */
.postid-4202 .divline-product-div {
	margin-bottom: 0;
}
.postid-4202 .divline-product {
    padding: 0;
    margin: 10px auto;
    max-width: 100%;
    border: 1px dotted black;
    border-style: none none dotted;
}
@media only screen and (max-width: 767px) {
	.postid-4202 .divline-product {
	    margin: 0 auto 0 auto;
	}
}


/* Label */
.tm-extra-product-options .tm-epo-field-label {
	font-weight: normal;
}

/* Disabled Label */
.tm-extra-product-options .tm-epo-field-label.tm-disable {
	margin: 0;
	padding: 0;
	font-size: 0;
	line-height: 0;
	font-weight: normal;
}
.tm-extra-product-options ul.tmcp-elements li.tmcp-field-wrap {
	padding: 0 !important;
}


/* Name */
.postid-4202 .formname-div {
	text-align: left;
}
.postid-4202 .formname-div:before {
    content: "\6e";
    font: 25px/1 "barney-martin";
    position: absolute;
    z-index: 1;
    top: 23px;
    left: 24px;
}
.postid-4202 .formname-div:after {
    content: "";
    position: absolute;
    top: 15px;
    left: 70px;
    display: block;
    width: 1px;
    height: 40px;
    background-color: black;
}
.postid-4202 .formname-div input[type=text] {
    font-size: 23px;
    line-height: 1;
    padding: 25px 20px 15px 90px;
    border: 1px solid black;
}
@media only screen and (max-width: 767px) {
	.postid-4202 .formname-div:before {
	    font: 20px/1 "barney-martin";
		top: 15px;
		left: 12px;
	}
	.postid-4202 .formname-div:after {
	    top: 12px;
	    left: 40px;
	    height: 26px;
	}
	.postid-4202 .formname-div input[type=text] {
    	font-size: 16px;
    	padding: 18px 15px 10px 50px;
	}
}


/* Date */
.postid-4202 .formdate-div {
	padding-right: 3% !important;	
	text-align: left;
}
.postid-4202 .formdate-div:before {
    content: "\6f";
    font: 25px/1 "barney-martin";
    position: absolute;
    z-index: 1;
    top: 22px;
    left: 24px;
}
.postid-4202 .formdate-div:after {
    content: "";
    position: absolute;
    top: 15px;
    left: 70px;
    display: block;
    width: 1px;
    height: 40px;
    background-color: black;
}
.postid-4202 .formdate-div label {
	width: 100%;
}
.postid-4202 .formdate-div input[type=text] {
	width: 100% !important;
    font-size: 23px;
    line-height: 1;
    padding: 25px 20px 15px 90px;
    border: 1px solid black;	
}
.postid-4202 .formdate-div button {
	position: absolute;
    left: 0px;
    top: 0px;
    height: 100%;
    width: 70px;
    padding: 0;
    margin: 0;
    border: 0;
    opacity: 0;
}
@media only screen and (max-width: 767px) {
	.postid-4202 .formdate-div {
		padding-right: 0% !important;	
	}	
	.postid-4202 .formdate-div:before {
	    font: 20px/1 "barney-martin";
		top: 15px;
		left: 12px;
	}
	.postid-4202 .formdate-div:after {
	    top: 12px;
	    left: 40px;
	    height: 26px;
	}
	.postid-4202 .formdate-div input[type=text] {
    	font-size: 16px;
    	padding: 18px 15px 10px 50px;
	}
	.postid-4202 .formdate-div button {
		width: 40px;
	}
}


/* Time */
.postid-4202 .formtime-div {
	padding-left: 3% !important;	
	text-align: left;
}
.postid-4202 .formtime-div:before {
    content: "\6a";
    font: 25px/1 "barney-martin";
    position: absolute;
    z-index: 1;
    top: 22px;
    left: calc(24px + 6%);
}
.postid-4202 .formtime-div:after {
    content: "";
    position: absolute;
    top: 15px;
    left: calc(70px + 6%);
    display: block;
    width: 1px;
    height: 40px;
    background-color: black;
}
.postid-4202 .formtime-div label {
	width: 100%;
}
.postid-4202 .formtime-div input[type=text] {
	width: 100% !important;
    font-size: 23px;
    line-height: 1;
    padding: 25px 20px 15px 90px;
    border: 1px solid black;	
}
.postid-4202 .formtime-div button {
	position: absolute;
    left: 0px;
    top: 0px;
    height: 100%;
    width: 70px;
    padding: 0;
    margin: 0;
    border: 0;
    opacity: 0;
}
@media only screen and (max-width: 767px) {
	.postid-4202 .formtime-div {
		padding-left: 0% !important;	
	}
	.postid-4202 .formtime-div:before {
	    font: 20px/1 "barney-martin";
		top: 15px;
		left: 12px;
	}
	.postid-4202 .formtime-div:after {
	    top: 12px;
        left: 40px;
	    height: 26px;
	}
	.postid-4202 .formtime-div input[type=text] {
    	font-size: 16px;
    	padding: 18px 15px 10px 50px;
	}
	.postid-4202 .formtime-div button {
		width: 40px;
	}
}


/* Are you looking for */
.postid-4202 .formlookingfor-div {
    display: block;
    clear: both;
    width: 100%;
    padding: 1.25em 0 2em !important;
    margin: 0 !important;
    text-align: left;
}
.postid-4202 .formlookingfor-div .tm-epo-field-label {
    max-width: 100%;
    font-size: 23px;
    line-height: 1.3;
    vertical-align: middle;
    text-transform: uppercase;
}
.postid-4202 .tm-extra-product-options .formlookingfor-div ul.tmcp-ul-wrap li.tmcp-field-wrap label.tm-error, 
.postid-4202 .tm-extra-product-options .formlookingfor-div ul.tmcp-ul-wrap + .tm-error {
	padding-top: 7px !important;
	margin: 0 !important;
    line-height: 2;
}
.postid-4202 .formlookingfor-div .tm-epo-field-label.tm-has-required:after {
	content: ': *';
}
.postid-4202 .formlookingfor-div ul li {
	width: auto !important;
    text-transform: uppercase;
}
.postid-4202 .formlookingfor-div ul li input {
	position: absolute !important;
	visibility: hidden;
}
.postid-4202 .formlookingfor-div ul li label {
	position: relative;
	z-index: 1;
	cursor: pointer;
    font-size: 23px;
    text-align: left;
    line-height: 1.3;
	margin: 0;
    padding: 0;
}
.postid-4202 .formlookingfor-div .tm-epo-field-label.tm-left + .tm-extra-product-options-container, 
.postid-4202 .formlookingfor-div .tm-epo-field-label.tm-right + .tm-extra-product-options-container {
	
}
.postid-4202 .formlookingfor-div ul.tmcp-ul-wrap.tm-extra-product-options-checkbox li.tmcp-field-wrap .tm-label, 
.postid-4202 .formlookingfor-div ul.tmcp-ul-wrap.tm-extra-product-options-radio li.tmcp-field-wrap .tm-label, 
.postid-4202 .formlookingfor-div ul.tmcp-ul-wrap.tm-extra-product-options-variations li.tmcp-field-wrap .tm-label {
    line-height: 1.3 !important;
	margin: 0 !important;
    padding: 0 30px 0 40px !important;
}
.postid-4202 .formlookingfor-div ul li label:before {
	/*content: "?";*/
	content: "";
	font-size: 30px;
	line-height: 30px;
	/*color: white;*/
	display: inline-block;
	padding: 3px 6px;
	width: 28px;
	height: 28px;
	border: 1px solid black;
	border-radius: 30px;
	vertical-align: middle;
	margin-right: 10px;
    position: absolute;
    top: -2px;	
}
.postid-4202 .formlookingfor-div ul li.tc-active label:before {
	/*color: black;*/
	background-color: black;
}
@media only screen and (max-width: 767px) {
	.postid-4202 .formlookingfor-div {
	    padding: 0 0 10px !important;
	}
	.postid-4202 .formlookingfor-div .tm-epo-field-label {
	    font-size: 15px;
		width: 100%;
		text-align: center;	    
		padding-bottom: 5px;
	}
	.postid-4202 .formlookingfor-div ul {
		text-align: center;
		float: none !important;
	}
	.postid-4202 .formlookingfor-div ul li {
		display: inline-block;
		float: none !important;
	}
	.postid-4202 .formlookingfor-div .tm-epo-field-label.tm-left + .tm-extra-product-options-container, 
	.postid-4202 .formlookingfor-div .tm-epo-field-label.tm-right + .tm-extra-product-options-container {
		float: none;
		max-width: 100%;
	}
	.postid-4202 .formlookingfor-div ul.tmcp-ul-wrap.tm-extra-product-options-checkbox li.tmcp-field-wrap .tm-label, 
	.postid-4202 .formlookingfor-div ul.tmcp-ul-wrap.tm-extra-product-options-radio li.tmcp-field-wrap .tm-label, 
	.postid-4202 .formlookingfor-div ul.tmcp-ul-wrap.tm-extra-product-options-variations li.tmcp-field-wrap .tm-label {
	    padding: 0 0 0 25px !important;
	}	
	.postid-4202 .formlookingfor-div ul li label {
		margin: 0 5px;
		display: inline-block;
	    font-size: 15px;
	}
	.postid-4202 .formlookingfor-div ul li label:before {
		font-size: 20px;
		line-height: 20px;
		padding: 3px 6px;
		width: 18px;
		height: 18px;
		border-radius: 20px;
	}	
}


/* Contact Number */
.postid-4202 .formcontactnumber-div {
	text-align: left;
}
.postid-4202 .formcontactnumber-div:before {
	content: "f";
	font: 25px/1 "barney-martin";
	position: absolute;
	z-index: 1;
	top: 22px;
	left: 24px;
}
.postid-4202 .formcontactnumber-div:after {
    content: "";
    position: absolute;
    top: 15px;
    left: 70px;
    display: block;
    width: 1px;
    height: 40px;
    background-color: black;
}
.postid-4202 .formcontactnumber-div input[type=text] {
    font-size: 23px;
    line-height: 1;
    padding: 25px 20px 15px 90px;
    border: 1px solid black;
}
@media only screen and (max-width: 767px) {
	.postid-4202 .formcontactnumber-div:before {
		font: 20px/1 "barney-martin";
		top: 15px;
		left: 12px;
	}
	.postid-4202 .formcontactnumber-div:after {
	    top: 12px;
	    left: 40px;
	    height: 26px;
	}
	.postid-4202 .formcontactnumber-div input[type=text] {
    	font-size: 16px;
    	padding: 18px 15px 10px 50px;
	}
}


/* Email */
.postid-4202 .formemail-div {
	text-align: left;
}
.postid-4202 .formemail-div:before {
	content: "g";
	font: 25px/1 "barney-martin";
	position: absolute;
	z-index: 1;
	top: 22px;
	left: 24px;
}
.postid-4202 .formemail-div:after {
    content: "";
    position: absolute;
    top: 15px;
    left: 70px;
    display: block;
    width: 1px;
    height: 40px;
    background-color: black;
}
.postid-4202 .formemail-div input[type=text] {
    font-size: 23px;
    line-height: 1;
    padding: 25px 20px 15px 90px;
    border: 1px solid black;
}
@media only screen and (max-width: 767px) {
	.postid-4202 .formemail-div:before {
		content: "g";
		font: 20px/1 "barney-martin";
		position: absolute;
		z-index: 1;
		top: 15px;
		left: 12px;
	}
}


/* Comments */
.postid-4202 .formmessage-div {
	font-size: 23px;
	border: 1px solid black;
	padding: 10px;
}
.postid-4202 .formmessage-div textarea {
    font-size: 23px;
    line-height: 1;
    padding: 20px 20px 20px 20px;
    border: none;
}
@media only screen and (max-width: 767px) {
	.postid-4202 .formmessage-div {
		font-size: 16px;
	}
	.postid-4202 .formmessage-div textarea {
		font-size: 16px;
	    line-height: 1;
	    padding: 10px;
	   
	}	
}


/* Submit */
.submit-wrap {
	text-align: center;
	margin-bottom: 0 !important;
}
.postid-4202 div.product form.cart .button {
	float: none !important;
	text-align: center !important;
	margin: 0 auto 60px auto !important;
}


