.expanded_width{
	width:100%;
	margin-left:-0.5em;
	
	width: -webkit-calc( 100% + 1em );
	width: -moz-calc( 100% + 1em );
	width: calc( 100% + 1em );
}
.expanded_width:before,
.expanded_width:after{
	content:" ";
	display:table;
}
.expanded_width:after{
	clear:both;
}

.float_box{
	width:50%;
	float:left;
	min-height:1em;
	display:block;
	padding:0.5em 1em;
	
	box-sizing:border-box;
}
.practitioner_box,
.practitioner_row {
	cursor:pointer;
}
.practitioner_row:hover td{
    text-decoration:underline;
}
.practitioner_box.one_quarter{
	width:25%;
	width:calc( 25% - 1em );
}
.practitioner_box.one_third{
	width:33.333%;
	width:calc( 33.333% - 1em );
}
.practitioner_box.one_half{
	width:50%;
	
	width:calc( 50% - 1em );
}

.prac_readmore{
	margin-top:1em;
	opacity:0.8;
	font-style: italic;
}
.practitioner_box:hover .prac_readmore{
	color:#7c5f95;
}
.prac_active .prac_readmore{
	display:none;
}

#featured_practitioners{
	display: flex;
	flex-wrap: wrap;
}

#normal_practitioners .practitioner_box{
	cursor:pointer;
	clear:left;
}

#normal_practitioners .practitioner_box:hover .practitioner_title>h3{
	color:#7c5f95;
}

.practitioner_box p,
#normal_practitioners p{
	margin:0 !important;
}

.practitioner_box.prac_active,
#featured_practitioners .practitioner_box {
	background-color:#f5f5f5;
    padding:1em;
    margin:0.5em;
	clear:none;
}
.practitioner_inner{
    white-space:normal;
    text-align:center;
}
.practitioner_top{
    display:flex;
    width:100%;
}
.practitioner_image_box{
	display:none;
}
.prac_active .practitioner_image_box,
#featured_practitioners .practitioner_image_box{
	display:block;
	width:35%;
    padding:10px;
	background-color:#fff;
    align-items: center;
}
.prac_active .practitioner_right,
#featured_practitioners .practitioner_right{
	display:block;
	width:65%;
	padding:1em;
}
.practitioner_image{
	width:100%;
	height:100%;
	position:relative;
	vertical-align:top;
    
	background-size:100%;
	background-size:contain;
    background-position:center center;
    background-repeat: no-repeat;
}

.practitioner_title h3{
	margin:0;
	font-size:1.4em;
}
.practitioner_terms{
	display:inline-block;
}
.practitioner_title,
.practitioner_title>*,
.prac_active .practitioner_terms{
	display:inline-block;
	margin-right:0.5em;
}
.prac_active .practitioner_title,
.prac_active .practitioner_title>*,
#featured_practitioners .practitioner_title,
#featured_practitioners .practitioner_title>*{
	display:block;
	margin-right:0;
}

.practitioner_state{
	display:inline-block;
}
.prac_state{
	font-size:0.8em;
	font-style:italic;
	text-transform:uppercase;
	margin-right: 4px;
}
.prac_active .practitioner_state,
#featured_practitioners .practitioner_state{
	display:none;
}

.practitioner_terms{
	display:none;
}
.prac_active .practitioner_terms,
#featured_practitioners .practitioner_terms{
	display:block;
	margin:0.5em 0;
}

.prac_active .disc_tag,
#featured_practitioners .disc_tag{
	font-size:0.8em;
	font-style:italic;
	display:inline-block;
	margin: 0 0 0 0.5em;
	border: 1px solid #7c5f95;
	padding: 1px 6px;
	color: #7c5f95;
	border-radius:3px;
}
.disc_tag:first-child{
	margin-left:0;
}

.prac_address{
	display:none;
}
.prac_active .prac_address,
#featured_practitioners .prac_address{
	display:block;
}

.practitioner_bottom{
	display:none;
}

.prac_active .practitioner_bottom{
	display:block;
    margin:1em 0 0 0;
}
.practitioner_desc{
	min-height:100px;
}
.practitioner_buttons{
    margin-top:1em;
    display:flex;
    justify-content:space-around;
}
.practitioner_buttons .btn{
    margin-bottom:0;
}

.prac_banner{
	width:100%;
	height:auto;
}


/* ACCORDION */
.wb_accordion{
	position: relative;
	background-color: #ffffff;
	color: #313335;
	
	border-radius:3px;
	
}
.accordion-head {
	position: relative;
	line-height: 52px;
	min-height: 56px;
	vertical-align: middle;
	border-radius: 2px 2px 0 0;
	cursor:pointer;
	
	background: #f5f5f5;
	color:#737373;
	max-width:400px;
	margin-left:auto;
}
.accordion-head header {
	display: inline-block;
	padding: 11px 24px;
	vertical-align: middle;
	line-height: 17px;
	font-size: 20px;
	
	max-width:90%;
	max-width:-webkit-calc( 100% - 56px );
	max-width:-moz-calc( 100% - 56px );
	max-width:calc( 100% - 56px );
	background: #f5f5f5;
	color:#737373;
}
.accordion-head > div {
	display: inline-block;
}
.accordion-head .accord_collapse{
	-webkit-transform:rotate(-180deg);
	-moz-transform:rotate(-180deg);
	transform:rotate(-180deg);
	
	-webkit-transition: transform 0.4s ease;
	-moz-transition: transform 0.4s ease;
	transition: transform 0.4s ease;
	
	width:15px;
	height:0;
    position:absolute;
    top:27px;
    right:20px;
}
.accordion-collapsed .accordion-head .accord_collapse{
	-webkit-transform:rotate(0deg);
	-moz-transform:rotate(0deg);
	transform:rotate(0deg);
}

.accordion-head .accord_collapse:before,
.accordion-head .accord_collapse:after{
    content:"";
    background:#777777;
	width:10px;
	height:3px;
    position:absolute;
    top:0;
    right:5px;
	
    -webkit-transform:rotate(45deg);
    -moz-transform:rotate(45deg);
    transform:rotate(45deg);
}
.accordion-head .accord_collapse:before{
    top:0;
    right:0;
	
    -webkit-transform:rotate(-45deg);
    -moz-transform:rotate(-45deg);
    transform:rotate(-45deg);
}

.accordion-body {
	padding: 24px;
	position: relative;
	
	border:2px solid #dfdfdf;
	border-radius:3px;
	border-top-left-radius: 0;
	border-top-right-radius: 0;
}

/* Filter checkboxes */
/* Customize the label (the container) */
.checkbox_container {
  display: block;
  margin-bottom: 12px;
  cursor: pointer;
  font-size: 16px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
/* checkboxes */
.checkbox_container [type="checkbox"]:not(:checked),
.checkbox_container [type="checkbox"]:checked {
  position: absolute;
  left: -9999px;
}
.checkbox_container [type="checkbox"]:not(:checked) + span,
.checkbox_container [type="checkbox"]:checked + span {
  position: relative;
  padding-left: 1.95em;
  cursor: pointer;
}
.checkbox_container [type="checkbox"]:not(:checked) + span:before,
.checkbox_container [type="checkbox"]:checked + span:before {
  content: '';
  position: absolute;
  left: 0; top: 0;
  width: 1.25em; height: 1.25em;
  border-left: 2px solid #333;
}
/* checked mark */
.checkbox_container [type="checkbox"]:not(:checked) + span:after,
.checkbox_container [type="checkbox"]:checked + span:after {
  content:'';
  position:absolute;
  left: 9px;
  top: 2px;
  width: 5px;
  height: 10px;
  border: solid #333;
  border-width: 0 3px 3px 0;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}
.checkbox_container [type="checkbox"]:not(:checked) + span:after {
  opacity: 0;
}
.checkbox_container [type="checkbox"]:checked + span:after {
  opacity: 1;
}
/* disabled checkbox */
.checkbox_container [type="checkbox"]:disabled:not(:checked) + span:before,
.checkbox_container [type="checkbox"]:disabled:checked + span:before {
  box-shadow: none;
  border-color: #bbb;
  background-color: #ddd;
}
.checkbox_container [type="checkbox"]:disabled:checked + span:after {
  color: #999;
}
.checkbox_container [type="checkbox"]:disabled + span {
  color: #aaa;
}

.filter_checkbox_wrapper.depth_1{
	padding-left:15px;
}
.filter_checkbox_wrapper.depth_2{
	padding-left:30px;
}

.wb_accordion.filter_accordion .filter_button{
	background:transparent;
	border: 1px solid #7c5f95;
	color: #7c5f95;
	font-family: 'Open Sans', sans-serif;
	font-weight: 600;
	line-height: 1em;
	position: relative;
	padding: .6em 1.3em;
	text-align: center;
	text-decoration: none;
	white-space: normal;
	border-radius: 3px;
	margin-top:1em;
	cursor:pointer;
}
.wb_accordion.filter_accordion .filter_button:hover{
	background:#7c5f95;
	color:#fff;
}
.filter_accordion .accordion-body .filters_inner{
	display: flex;
	flex-wrap: wrap;
	flex-flow: space-between;
	align-items: flex-start;
	align-content: flex-start;
}
.filter_accordion .filter_container{
	width: 33.3%;
	flex: 33.3%;
	min-width: 250px;
	max-width: 400px;
	vertical-align:top;
}
