.difference-image{max-width:250px; max-height:250px;}
body{color:#1c1d28;}

.bim-blue{background: #1c1d28 !important;}
.bim-light-blue{background: #31323d !important;}
.bim-red{background: #af1e3e !important;}

.text-bim-blue{color: #1c1d28 !important;}
.text-bim-light-blue{color: #31323d !important;}
.text-bim-red{color: #af1e3e !important;}

.button-covid-more{
	color:#1c1d28;
	padding: 6px 12px;
	float:left;
}

.button-covid-dismiss{
	float:right;
	background: #af1e3e;
	padding: 6px 12px;
	color:#fff;
	border-radius: 2px;
	text-decoration:none;
}

.button-covid-dismiss:hover{
  color:#fff; 
  background:#941632;
}
a{color:#7c7e83; cursor:pointer;}
a:hover{color:#b0b3bb;}

.slide-top-align{ position: absolute; top: 0; left: 15%; width: 70%;}
.stores .row{ padding: 2rem 0;}
footer h6{color:#fff; font-size:1.15rem; font-weight: 300;}
.font-bim-blue{color: #1c1d28 !important;}
section h2{text-transform:uppercase; font-weight:600; margin-bottom:5rem; letter-spacing: 0.2rem;}
section h2.make-booking{margin: 0 0 1rem; font-size: 2.5rem; line-height:2rem;}
section h4{ font-size: 1.4rem; font-weight: bold; }

section.page-content h1{text-transform: uppercase; font-weight: 600; margin: 0; letter-spacing: 0.2rem; font-size: 3.4rem;}
section.page-content h2{font-weight: 300; text-transform:none; font-size:2.2rem; margin:2rem 0 0 0; letter-spacing:0;}
section.page-content h3{font-size: 1.6rem; font-weight: 300;}
		
section.page-content ol{list-style-position: outside;}
section.page-content li{list-style-position: outside;}
section.page-content ul:not(.select-dropdown), section.page-content ul:not(.select-dropdown) li{list-style-type:disc;}

section.page-content ul:not(.select-dropdown), section.page-content ol:not(.select-dropdown){ padding-left:20px;}

#nav-section li, #nav_categories li{list-style-type:none;}

section.page-content .col > h1+h2{margin-top:0;}
section.page-content .col > h1+p{margin-top:2rem;}
section.page-content.padding-medium{padding: 4rem 0 4rem 0;}
section.page-content a:not(.grey-btn){text-decoration: underline;}

.top-links{ z-index:2; height: 22px; letter-spacing: 0.05rem; font-size: 0.8rem; line-height:1.5rem; font-weight:300;}
.top-links a{color:rgba(255, 255, 255, 0.75); margin-right:10px;}
.top-links a:hover{text-decoration:underline; }

.clear:after{display:table; content:''; clear:both;}

.top-hideable{display:none; position:relative;}
		
.header-wrapper {position:relative; overflow:hidden;}
.header-wrapper:after {content:''; display: table; clear:both;}
.header-wrapper-contents {line-height: 0;}

.header-wrapper .title, 
.header-wrapper .top-links,
.banner-buttons,
.header-wrapper .image-overlay{ position:absolute; top:0; left:0;	width:100%;	height:100%; z-index: 2;}

.header-wrapper .image-overlay{background:#000; opacity:0.3;}
.header-wrapper .title{z-index:2;}

#burger-menu{position:fixed; top:0; height:100%; width:100%; overflow-y:auto; background:#1c1d28; z-index:8; display:none;}
#burger-menu .link-area{margin-top:5px; text-align:center;}
#burger-menu a:not(.menu-button){display:block; color:#fff; padding: 3px 0; font-size: 1.2rem; letter-spacing: 0.1rem; font-weight: 100;}
#burger-menu p{ margin: 40px 0 5px; font-size: 1.2rem; letter-spacing: 0.1rem; color:#bbb;}
#burger-menu .social{margin: 10px 0; text-align:center; padding:10px;}
#burger-menu .social a{display: inline-block; margin:0 5px; padding: 7px 0px; font-size: 20px; border-radius: 500px; background: #1c1d28; width: 42px; height: 42px; text-align: center;}
#burger-menu .logo-wrapper{position:static;}
#burger-menu .logo-wrapper:after{display:none;}
#burger-menu .parent-site-links a{font-size: 1rem; color: #aaa; padding:1px 0px;}
		
#map_canvas #content p{margin:0;}
#map_canvas #content h5{margin-bottom:5px;}
.phone strong, .fax strong{display:inline-block; width:15px;}	

.no-margin{margin:0;}

header:after{display:table; content:''; clear:both}
.banner-image-wrapper{position: relative; list-style: none; width: 100%; padding: 0; margin: 0; left: 50%; min-width: 450px; z-index:1; }
.banner-image-inner-wrapper{display: block; float: left; position: relative; opacity: 1; z-index: 2; left: -50%; height: auto; width:100%; }
.banner-image-wrapper img{ width: 100%;}
.practice-title-normal{font-size:2.5rem; line-height: 3.6rem; display:block; font-weight:300;}
.practice-title-large{font-size: 4.5rem; line-height: 4.6rem; display:block; font-weight:500;}
.main-banner-title{margin-top: 6rem;}
.full-width{width:100%;} 

.big-menu{background:#1c1d28; padding:6px 0; line-height: 0; z-index:2; width:100%;}

.no-bottom-margin{margin-bottom:0;}
.arrow-down{width: 0; height: 0; border-left: 5px solid rgba(0, 0, 0, 0); border-right: 5px solid rgba(0, 0, 0, 0); border-top: 5px solid #fff; position: relative; top: 2rem; margin-left: 0.5rem;}

a.btn-large:hover, a.btn:hover{color:#fff;}
.btn-large{ font-size:1rem; font-weight: 600; height:60px; line-height:60px;}
.btn-xlarge{font-size: 1.8rem; font-weight: 600; height: 80px; line-height: 82px; padding: 0 3rem; letter-spacing: 0.3rem;}

.margin-top-1rem{margin-top:1rem;}
.margin-top-2rem{margin-top:2rem;}
.margin-top-3rem{margin-top:3rem;}
.margin-top-4rem{margin-top:4rem;}
.margin-top-5rem{margin-top:5rem;}
.margin-top-6rem{margin-top:6rem;}
.margin-top-7rem{margin-top:7rem;}
.margin-top-8rem{margin-top:8rem;}
.margin-top-9rem{margin-top:9rem;}
.margin-top-10rem{margin-top:10rem;}

.margin-top-5p{margin-top:5%;}
.margin-top-8p{margin-top:8%;}
.margin-top-10p{margin-top:10%;}

.padding-large{padding:5rem 0 6rem 0;}
.padding-medium{padding:2rem 0 2rem 0;}
.padding-small{padding-top:1rem; padding-bottom:1rem;}

nav{height: auto;}
nav:after{display:table; content:''; clear:both;}
nav ul a{font-size: 1rem; font-weight: 500; text-transform:uppercase; letter-spacing: 0.05rem;}
nav ul a:hover{color:#fff; background-color: rgba(0,0,0,0.2); }

.logo-wrapper{ height: auto; line-height: initial;}
.logo{padding:1rem 0 !important; display: inline-block;line-height: 0; }

footer{margin: 0 auto; overflow: hidden; position: relative; padding: 0; width: 100%; color: #7c7e83;}
.relative{position:relative;}
.arrow-up{width: 0; height: 0; border-left: 5px solid rgba(0, 0, 0, 0); border-right: 5px solid rgba(0, 0, 0, 0); border-bottom: 5px solid #1c1d28;}
.arrow-up.medium{width: 0; height: 0; border-left: 15px solid rgba(0, 0, 0, 0); border-right: 15px solid rgba(0, 0, 0, 0); border-bottom: 15px solid #1c1d28;}
.arrows{position:absolute; bottom:50px; width: 100%;}

body > #call-to-action {line-height: 0;}
#call-to-action .img-wrapper{float:left;}
#call-to-action .valign-wrapper, #testimonials .valign-wrapper{height: 100%;}
#call-to-action .text-overlay a {color:rgba(255,255,255,0.75); font-weight:300;}

footer a { color: #7c7e83; }

footer .phone-list a { color: #fff; text-decoration: none !important; }
footer .phone-list.social a { color: #7c7e83; text-decoration: none !important; }
footer .phone-list .description { font-size: 15px; padding-left: 15%; display: block;}
footer .phone-list .icon { color: #fff; font-size: 28px; float: left; }
footer .phone-list .number { color: #fff; font-size: 25px; padding-left: 15%; display: block; margin-top: 9px; line-height: 22px;}
		
.fa-stack-2x { font-size: 2em; }
.fa-stack-1x { font-size: 1em; }

.grey-btn{padding: 10px; background: #efefef; color: #000; display: inline-block; margin: 0 0.4rem 0.4rem 0; cursor:pointer;}
.grey-btn:hover{background:#DDD; color:#333;}
.grey-btn.active, .grey-btn:active{background:#1c1d28; color:#fff;}

.timetable-tabs .grey-btn {margin-right:0; font-size:0.9rem; position:relative;}
.timetable-tabs .grey-btn.active:before{
    content: '';
    width: 10px;
    left: 50%;
    position: absolute;
    margin-left: -10px;
    height: 8px;
    bottom: -7px;
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-top: 8px solid #1c1d28;
}

.menu-title, .menu-desc{display:block;}
.menu-title{font-size:1.2rem;}
.menu-desc{font-size:0.9rem; line-height:1.2rem; min-height: 2.4rem;}
.menu-service-item{display:block;}
.menu-service-item a{display:block; min-height:81px;}

.shadow-bottom:before{
	background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0,0,0,0.05) 100%);
	height:30px;
	width:100%;
	position:absolute;
	bottom:0; 
	left:0; 
	content:'';
}
.top-hideable h2{margin:0 0 1.5rem 0;}

.figure_a{margin:0;}
.figure_a img, .figure_b img, .figure_c img{width:100%;overflow:hidden;}
.figure_b{float:left;padding:0 20px 20px 0;overflow:hidden;}
.figure_c{float:right;margin:0 0 20px 20px;overflow:hidden;}

.page-content img, .entry-content img{max-width: 100%; height:auto !important;}

.w100{width:100%;}
.w90{width:90%;}
.w80{width:80%;}
.w70{width:70%;}
.w60{width:60%;}
.w50{width:50%;}
.w40{width:40%;}
.w30{width:30%;}
.w20{width:20%;}
.w10{width:10%;}

.google-maps{position: relative; padding-bottom: 40%; height: 0; overflow: hidden;}
.google-maps #map_canvas { position: absolute; top: 0; left: 0; width: 100% !important; height: 100% !important;}
	
.opening-hours .day{margin:0; width:250px; display:inline-block;}
.opening-hours .day .name{float: left;}
.opening-hours .day .time{display: block; padding-left: 100px;}

section.page-content .stores h3{margin:0 0 0.5rem; font-weight: 500 !important; font-size: 1.3rem !important; letter-spacing: 0.05rem;}
section.page-content .stores h3 a{text-decoration:none;}
section.page-content .stores h3 a:hover{text-decoration:underline;}
.practice-details p{margin:0;}
.stores{margin-top: 2rem;}
.buttons:after{content:''; display:table; clear:both;}

.hidden{display:none !important;}

.mosaic-bg{ background-color:#af1e3e !important; background-image: url(/assets/images/practice/mosaic-form.jpg) !important; background-size:cover !important;}

#contact-widget{width:6.5%;max-width:60px;color:#fff;font-size:20px;position:fixed;top:150px;right:0px;z-index:8;border-top-left-radius:4px;border-bottom-left-radius:4px;background:#363641;}
#contact-popup{position:fixed; z-index:8; top:202px; right:75px; display:none; background:#fff; width:180px; float:left; border-radius:4px; -webkit-box-shadow:1px 1px 1px 0px rgba(50, 50, 50, 0.3); -moz-box-shadow:1px 1px 1px 0px rgba(50, 50, 50, 0.3); box-shadow:1px 1px 1px 0px rgba(50, 50, 50, 0.3);}
#contact-popup .arrow{position:absolute;top:15px;right:-13px;}
#contact-popup .row{border-bottom:1px solid #ebebeb;padding:12px 0 10px 0;margin:0;}
#contact-popup .row:last-child{border-bottom:none;}
#contact-popup .number{font-size:18px;text-align:center;display:block;}
#contact-popup .number a{color:#98002E;}
#contact-popup .desc{text-align:center;font-size:12px;color:#464646;display:block;text-transform:uppercase;font-family:'open_sanssemibold', sans-serif;}
#contact-widget a{color:#fff;}
#contact-widget i{display:block;padding:15px 10px;border-bottom:1px solid rgba(0,0,0,0.75);cursor:pointer;}
#contact-widget a:last-child i{border-bottom:none;}
#contact-widget i:hover{background:rgba(0,0,0,0.25);}
#contact-widget i:active{background:rgba(0,0,0,0.25);color:#484958;}
#contact-widget i.fa-fw{width:auto !important;}

.entry-index{list-style-type:none;margin:0;padding:0;}
.entry-index > li{border-top:1px solid #dddddd;overflow:auto;padding:30px 0;}
.entry-index > li .content{padding:0 0 0 35%;}
.entry-index > li .image{float:left;width:35%;padding-right:40px;}
.entry-index > li:first-child{border:none;}
.entry-index > li.no-results{padding-left:0;}
.entry-index > li h3, .search-results h4, #ja-jobs-widget h2{margin:0 0 8px 0; font-weight: 500 !important; font-size: 1.3rem !important; letter-spacing: 0.05rem;} 
.entry-index > li h3 a, .search-results h4 a, #ja-jobs-widget h2 a{text-decoration:none !important; color:#1c1d28 !important;}
.entry-index > li p{margin:0;}
.entry-index > li img{width:100%;}
.entry-index.connect li{border-bottom:0;}
.entry-index.connect li h3{font-size:1em;}

.job{padding:1rem 0;}
input:not([type]):focus:not([readonly]), input[type=text]:not(.browser-default):focus:not([readonly]), input[type=password]:not(.browser-default):focus:not([readonly]), input[type=email]:not(.browser-default):focus:not([readonly]), input[type=url]:not(.browser-default):focus:not([readonly]), input[type=time]:not(.browser-default):focus:not([readonly]), input[type=date]:not(.browser-default):focus:not([readonly]), input[type=datetime]:not(.browser-default):focus:not([readonly]), input[type=datetime-local]:not(.browser-default):focus:not([readonly]), input[type=tel]:not(.browser-default):focus:not([readonly]), input[type=number]:not(.browser-default):focus:not([readonly]), input[type=search]:not(.browser-default):focus:not([readonly]), textarea.materialize-textarea:focus:not([readonly]){
	border-bottom: 1px solid #1c1d28;
	-webkit-box-shadow: 0 1px 0 0 #1c1d28;
	box-shadow: 0 1px 0 0 #1c1d28;
}

.coming-soon{
    text-transform: uppercase;
    font-size: 0.9rem;
    background: #1c1d28;
    padding: 4px 8px;
    border-radius: 100px;
    color: #fff;
    margin-left: 10px;
}
.coming-soon:after{
    content:'Coming soon!';
}

input:not([type]):focus:not([readonly])+label, input[type=text]:focus:not([readonly])+label, input[type=password]:focus:not([readonly])+label, input[type=email]:focus:not([readonly])+label, input[type=url]:focus:not([readonly])+label, input[type=time]:focus:not([readonly])+label, input[type=date]:focus:not([readonly])+label, input[type=datetime]:focus:not([readonly])+label, input[type=datetime-local]:focus:not([readonly])+label, input[type=tel]:focus:not([readonly])+label, input[type=number]:focus:not([readonly])+label, input[type=search]:focus:not([readonly])+label, textarea.materialize-textarea:focus:not([readonly])+label{
	color: #1c1d28;
}
.picker__date-display, .picker__day--selected, .picker__day--selected:hover, .picker--focused .picker__day--selected{background: #1c1d28;}
.picker__nav--prev:hover, .picker__nav--next:hover{background:#aaabb6;}
.picker__day.picker__day--today, .picker__close, .picker__today{color:#1c1d28;}
select:focus{border:1px solid #1c1d28;}

button.picker__today:focus, button.picker__clear:focus, button.picker__close:focus{background-color: #aaabb6;}

@media (max-width: 600px){
	#call-to-action h3{font-size: 2.5rem;}
}

@media (max-width: 934px){
	footer .phone-list .number, footer .phone-list .description { padding-left: 75px;	}
	footer .phone-list.social .description { margin-top: 17px !important; }
}

@media only screen and (min-width: 993px){
	.container {
		width: 71% !important;
	}
}

@media (max-width: 1750px){
	nav ul a { font-size: 1rem; letter-spacing: 0;}
}

@media (max-width: 1700px){
	nav ul a { padding: 0 10px;}
}

@media (max-width: 1600px){
	nav ul a { padding: 0 5px;}
}

@media (max-width: 1550px){
	.logo {
		padding: 24px 0 !important;
	}

	.logo img{
		 height: 45px !important;
	 }
}
@media (max-width: 992px){
.arrows { bottom: 20px; }
	}

@media (max-width: 1400px){
	nav ul a { font-size: 0.95rem; }
}

@media (max-width: 1350px){
	nav ul a { font-size: 0.90rem; }
}

@media (max-width: 1300px){
	nav ul a { font-size: 0.85rem; }
}

@media only screen and (max-width: 1250px) {
	#booking:not(.practice-booking):not(.valign-wrapper){
		display:none;
	}
}
@media only screen and (max-width: 1100px) {
	#find_a_practice{
		display:none;
	}
}

header ul.left
{
	padding-left: 10px;
}

.no-results{
	height: 40vh;
	vertical-align: middle;
	text-align: center;
	display: block;
	padding-top: 15vh;
	width: 100%;
	font-weight: 600;
}


/* @media only screen and (max-width: 1210px) and (min-width: 990px){
} */


/* @media only screen and (max-width: 1512px) and (min-width: 990px){
	nav ul a{
		font-size: 12px !important;
	}
} */

.material-icons::before {
  content: attr(data-icon);
}