/*--------------------------------------------------------------
TABLE OF CONTENTS:
----------------------------------------------------------------
1.0 Typography
2.0 Layout
3.0 Navbar
	3.1 City Change Modal
4.0 Search Block
5.0 Sidebar
6.0 Footer
7.0 Contents
	7.1 Index Page
	7.2 List Items
	7.3 Single Item
	7.4 All Categories
	7.5 Edit Place, Add Place
	7.6 Public Profile
	7.7 Search Results
	7.8 Contact Page
	7.9 Select Plan
	7.10 Advanced Search
8.0 Pagination
9.0 Forms
10.0 Buttons
	10.1 Social Buttons
11.0 Tables
12.0 Font icons
13.0 Bootstrap Modal
14.0 Global Classes
--------------------------------------------------------------*/

/*--------------------------------------------------------------
1.0 Typography
--------------------------------------------------------------*/
html {
	font-size: 62.5%;
}
body,
button,
input,
select,
textarea {
	color: #636363;
	font-family: 'Roboto', sans-serif;
	font-size: 1.6rem;
	line-height: 1.5;
}

input[type="submit"] {
	color: #fff;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	color: #404040;
	font-weight: 700;
	margin-bottom: 24px;
	margin-top: 0;
}

h1 {
	font-size: 38px;
}

h2 {
	font-size: 20px;
}

h3 {
	font-size: 18px;
}

p {
	margin-top: 0;
	margin-bottom: 24px;
}

b,
strong {
	font-weight: bold;
}

dfn,
cite,
em,
i {
	font-style: italic;
}

blockquote {
	margin: 0 1.5em;
}

address {
	margin: 0;
}

pre {
	background: #edeef0;
	font-family: "Courier 10 Pitch", Courier, monospace;
	font-size: 15px;
	font-size: 1.5rem;
	line-height: 1.6;
	margin-bottom: 24px;
	max-width: 100%;
	overflow: auto;
	padding: 24px;
}

code,
kbd,
tt,
var {
	font-family: Monaco, Consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
	font-size: 15px;
	font-size: 1.5rem;
}

abbr,
acronym {
	border-bottom: 1px dotted #ddd;
	cursor: help;
}

mark,
ins {
	background: #fff;
	text-decoration: none;
}

small {
	font-size: 75%;
}

big {
	font-size: 125%;
}

ul {
	list-style-position: inside;
	margin-bottom: 24px;
}

a:link {
	color: #636363;
	text-decoration: none;
}

a:visited {
	color: #636363;
	text-decoration: none;
}

a:hover {
	color: #ff6300;
	text-decoration: none;
}

a:active {
	color: #ff6300;
	text-decoration: none;
}

p.sub-heading {
	position: relative;
	text-align: center;
}

p.sub-heading:before {
	content: '';
	position: absolute;
	top: -24px;
	bottom: auto;
	left: 50%;
	height: 3px;
	width: 30px;
	margin-left: -15px;
	display: block;
	background-color: #ddd;
}

.review-pubdate {
	color: #404040;
	font-size: 1.2rem;
	font-style: italic;
}

i {
	vertical-align: middle;
}

/*--------------------------------------------------------------
2.0 Layout
--------------------------------------------------------------*/
html {
	box-sizing: border-box;
}

*, *:before, *:after {
	box-sizing: inherit;
}

html, body {
	margin: 0;
	padding: 0;
}

body {
	background-color: #edeef0;
	padding: 0 10px 10px 10px;
	padding: 0;
}

.wrapper {
	max-width: 1152px;
	margin: auto;
	width: 100%;
	padding: 24px;
	position: relative;
}

.full-block {
	background-color: #fff;
	border-radius: 2px;
	padding: 24px;
	margin-bottom: 24px;
}

.content-col {
	float: left;
	width: calc(100% - 324px);
}

@media only screen and (max-width: 420px) {
	.wrapper {
		padding: 12px;
	}

	.full-block {
		padding: 12px;
	}
}

/*--------------------------------------------------------------
3.0 Navbar
--------------------------------------------------------------*/
.navbar {
	min-height: 50px;
	margin: 0;
}

.navbar-default {
	background-color: #edeef0;
	border: 0;
	border-bottom: 1px solid #ddd;
}

.navbar-inner {
	max-width: 1152px;
	margin: auto;
	padding: 6px 24px;
}

#logo {
	float: left;
	margin-right: 24px;
	margin-bottom: 0;
	width: 182px;
}

#logo img {
	vertical-align: text-top;
	width: 100%;
}

/* hamburger icon */
.navbar-toggle {
	position: relative;
	float: right;
	padding: 9px 10px;
	margin: 0;
	border-radius: 3px;
}

.navbar-default .navbar-toggle {
	border-color: #fff;
}

.navbar-default .navbar-toggle:focus, .navbar-default .navbar-toggle:hover {
	background-color: #edeef0;
}

.glyphicon-menu-hamburger {
	color: #404040;
}

.navbar-collapse {
	border: 0;
	padding: 0;
	max-height:auto;
}

.collapse-header {
	margin-bottom: 12px;
	margin-bottom: 0;
}

.right-block {
	float: left;
	width: calc(100% - 182px - 24px);
}

#main-menu a.btn {
	color: #404040;
}

#main-menu a.btn:hover {
	color: #ff6300;
}

.menu-link-mobile {
	display: none;
	float: none;
}

/* overwrite bootstrap rules */
.navbar-collapse.in {
	/* this prevent drop down creating scrollbars after clicking hamburger icon */
	overflow: visible;
}

.navbar-default .navbar-nav .open .dropdown-menu > li > a {
	color: #404040;
}

@media only screen and (max-width: 767px) {
	.navbar-nav {
		margin: 0;
	}

	.right-block {
		float: none;
		width: 100%;
		margin-top: 24px;
	}

	.navbar-nav li {
		float: left;
	}

	.navbar-nav .open .dropdown-menu {
		border-color: rgba(0, 0, 0, .15);
        border-style: solid;
		border-width: 1px;
	}

	.navbar-default .navbar-nav .open .dropdown-menu > li > a {
		color: #404040;
	}

	.navbar-nav .open .dropdown-menu {
		position: absolute;
		float: left;
		width: 160px;
		background-color: #fff;
		z-index: 1000;
	}
}

@media only screen and (max-width: 420px) {
	.navbar-inner {
		padding: 6px 12px;
	}
}

	/*--------------------------------------------------------------
	3.1 City Change Modal
	--------------------------------------------------------------*/
	.autocomplete-suggestions {
		border: 1px solid #999;
		background: #fff;
		cursor: default;
		overflow: auto;
		-webkit-box-shadow: 1px 4px 3px rgba(50, 50, 50, 0.64);
		-moz-box-shadow: 1px 4px 3px rgba(50, 50, 50, 0.64);
		box-shadow: 1px 4px 3px rgba(50, 50, 50, 0.64);
	}

	.autocomplete-suggestion {
		padding: 2px 5px;
		white-space: nowrap;
		overflow: hidden;
	}

	.autocomplete-no-suggestion {
		padding: 2px 5px;
	}

	.autocomplete-selected {
		background: #f7f7f7;
	}

	.autocomplete-suggestions strong {
		font-weight: bold; color: #000;
	}

	.autocomplete-group {
		padding: 2px 5px;
	}

	.autocomplete-group strong {
		font-weight: bold;
		font-size: 16px;
		color: #000;
		display: block;
		border-bottom: 1px solid #000;
	}

	#city-change {
		width: 300px;
	}

	#city-change-form .select2-container--default .select2-selection--single {
		border: 2px solid #ddd;
		border-radius: 2px;
		padding: 8px;
	}

	#city-change-form .select2-container .select2-selection--single {
		height: auto;
		width: 100%;
	}

	#city-change-form .select2-container--default .select2-selection--single .select2-selection__rendered {
		font-size: 1.6rem;
		line-height: 1.5;
	}

	#city-change-form .select2-container--default .select2-selection--single .select2-selection__arrow {
		height: 44px;
		position: absolute;
		top: 1px;
		right: 2px;
		width: 20px;
	}

	#city-change-form .select2-container--default .select2-selection--single .select2-selection__placeholder {
		color: #ddd;
	}

	#city-change-form button {
		padding: 8px;
		border: 2px solid #ff6300;
		width: 44px;
	}

/*--------------------------------------------------------------
4.0 Search Block
--------------------------------------------------------------*/
.search-block {
	background-color: #6c7478;
	padding: 24px 0;
}

.search-block-inner {
	max-width: 1152px;
	margin: auto;
	padding: 0 24px;
	position: relative;
}


#query-input {
	float: left;
	font-size: 16px;
	margin-right: 6px;
	padding: 8px;
	width: calc(50% - 28px); /* 6px + 6px + 44px */
}

#city-input-wrapper {
	float: left;
	margin-bottom: 12px;
	margin-bottom: 0;
	margin-right: 6px;
	width: calc(50% - 28px);
}

#city-input {
    height: 48px;
	width: 100%;
}

#main-search-form .select2-container--default .select2-selection--single {
	border: 2px solid #ddd;
	border-radius: 2px;
	padding: 8px;
}

#main-search-form .select2-container .select2-selection--single {
	height: auto;
}

#main-search-form .select2-container--default .select2-selection--single .select2-selection__rendered {
	font-size: 1.6rem;
	line-height: 1.5;
}

#main-search-form .select2-container--default .select2-selection--single .select2-selection__arrow {
    height: 44px;
    position: absolute;
    top: 1px;
    right: 2px;
    width: 20px;
}

#main-search-form .select2-container--default .select2-selection--single .select2-selection__placeholder {
    color: #ddd;
}

#main-search-form button {
	padding: 8px;
	border: 2px solid #ff6300;
	width: 44px;
}

@media only screen and (max-width: 420px) {
	.search-block {
		padding: 12px 0;
	}

	.search-block-inner {
		padding: 0 12px;
	}
}

/*--------------------------------------------------------------
5.0 Sidebar
--------------------------------------------------------------*/
.map-wrapper {
	width: 300px;
	height: 372px;
	border: 1px solid #ddd;
}

#map-canvas {
	height: 100%
}

.sidebar {
	float: right;
	width: 300px;
}

@media only screen and (max-width: 720px) {
	.content-col {
		float: none;
		width: 100%;
	}
	.sidebar {
		float: none;
		position: relative;
		width: 100%;
	}
	.map-wrapper {
		width: 100%;
	}
	#sticker {
		position: relative !important;
		top: 0 !important;
	}
}


/*--------------------------------------------------------------
6.0 Footer
--------------------------------------------------------------*/
#footer {
	border-top: 1px solid #ddd;
	margin-top: 24px;
	padding: 0;
}

#footer-inner {
	max-width: 1152px;
	margin: auto;
	width: 100%;
	padding: 24px;
	position: relative;
}

.footer-inner-left {
	float: left;
	width: 50%;
	padding: 0;
}

.footer-inner-right {
	float: right;
	width: 50%;
	padding: 0;
	text-align: right;
}

.footer-inner-right li {
	float: left;
	margin-left: 48px;
}

.footer-inner-right ul {
	display: inline-block;
	list-style-type: none;
	margin-bottom: 0;
}

@media only screen and (max-width: 600px) {
	.footer-inner-left {
		float: none;
		margin-bottom: 24px;
		width: 100%;
	}

	.footer-inner-right {
		float: none;
		width: 100%;
		text-align: left;
	}

	.footer-inner-right ul, .footer-inner-left ul {
		margin: 0;
		padding: 0;
	}

	.footer-inner-right li {
		margin-left: 0;
		margin-right: 24px;
	}
}

/*--------------------------------------------------------------
7.0 Contents
--------------------------------------------------------------*/

	/*--------------------------------------------------------------
	7.1 Index Page
	--------------------------------------------------------------*/
	.home-main-cats {
		background-color: #fff;
	}

	.main-cat-block {
		float: left;
		margin-bottom: 24px;
		text-align: center;
		width: 12.5%;
		height: 124px;
	}

	.main-cat-block a{
		color: #6c7478;
		font-weight: 400;
	}

	.main-cat-icon {
		border-radius: 5px;

	}

	.main-cat-icon a {
		color: #6c7478;
		font-size: 48px;
		text-decoration: none;
	}

	.main-cat-icon i {
		color: #6c7478;
		font-size: 16px;
		font-style: normal;
		font-weight: normal;
	}

	@media only screen and (max-width: 860px) {
		.main-cat-block {
			width: 25%;
		}
	}

	@media only screen and (max-width: 600px) {
		.main-cat-block {
			width: 33%;
		}
	}

	@media only screen and (max-width: 480px) {
		.main-cat-block {
			width: 50%;
		}
	}

	@media only screen and (max-width: 320px) {
		.main-cat-block {
			width: 100%;
		}
	}

	.featured-item {
		background-color: #fff;
		border-radius: 5px;
		float: left;
		margin-right: 24px;
		margin-bottom: 24px;
		position: relative;
		overflow: hidden;
		width: 30%;
		width: calc(20% - ((24px * 4) / 5));
		height: 288px;
	}

	.featured-item:nth-child(5n) {
		margin-right: 0;
	}

	.featured-item-pic {

	}

	.featured-item-pic img { /* requested thumb is 88x88 */
		border-top-left-radius: 5px;
		border-top-right-radius: 5px;
		opacity: 0.9;
		width: 100%;
		max-height: 190px;
	}

	.featured-item-rating {
		position: absolute;
		top: 24px;
		width: 100%;
		text-align: center;
	}

	.featured-item-rating img {
		-webkit-filter: drop-shadow(2px 2px 2px #000); filter: drop-shadow(2px 2px 2px #000);
	}

	.featured-item h3 {
		color: #fff;
		position: absolute;
		text-align: center;
		text-shadow: 2px 2px 3px #000;
		top: 48px;
		width: 100%;
	}

	.featured-item h3 a {
		color: #fff;
	}

	.user-card {
		position: relative;
		text-align: center;
	}

	.user-pic {
		position: absolute;
		top: -44px;
		text-align: center;
		width: 100%;
	}

	.user-pic img {
		border: 3px solid #fff;
		border-radius: 50%;
		background: #fff;
		width: 88px;
		height: 88px;
	}

	.user-name {
		padding-top: 68px;
		display: none;
	}

	.user-name h3 {
		margin: 0;
	}

	.featured-item-description {
		color: #636363;
		font-size: 1.4rem;
		padding: 48px 24px 24px 24px;
	}

	@media only screen and (max-width: 888px) {
		.featured-item {
			width: calc(25% - ((24px * 3) / 4));
		}

		.featured-item:nth-child(5n) {
			margin-right: 24px;
		}

		.featured-item:nth-child(4n) {
			margin-right: 0;
		}
	}

	@media only screen and (max-width: 820px) {
		.featured-item-rating {
			top: 20px;
		}

		.featured-item h2 {
			top: 60px;
		}
	}

	@media only screen and (max-width: 768px) {
		.featured-item {
			width: calc(33.3% - ((24px * 2) / 3));
		}

		.featured-item:nth-child(5n) {
			margin-right: 24px;
		}

		.featured-item:nth-child(4n) {
			margin-right: 24px;
		}

		.featured-item:nth-child(3n) {
			margin-right: 0;
		}
	}

	@media only screen and (max-width: 660px) {
		.featured-item h2 {
			font-size: 1.4rem;
		}
	}

	@media only screen and (max-width: 620px) {
		.user-pic {
			display: none;
		}
	}

	@media only screen and (max-width: 600px) {
		.featured-item {
			width: calc(50% - ((24px * 1) / 2));
		}

		.featured-item:nth-child(5n) {
			margin-right: 24px;
		}

		.featured-item:nth-child(4n) {
			margin-right: 24px;
		}

		.featured-item:nth-child(3n) {
			margin-right: 24px;
		}

		.featured-item:nth-child(2n) {
			margin-right: 0;
		}
	}

	.home-popular-cities {

	}

	.home-popular-cities ul {
		list-style-type: none;
		margin: 0;
		padding: 0;
	}

	.home-popular-cities li {
		float: left;
		width: 30%;
		margin-right: 5%;
		margin-bottom: 12px;
	}

	.home-popular-cities li:nth-child(3n) {
		margin-right: 0;
	}

	@media only screen and (max-width: 500px) {
		.home-popular-cities li {
			float: left;
			width: 47%;
			margin-right: 5%;
		}

		.home-popular-cities li:nth-child(2n) {
			margin-right: 0;
		}

		.home-popular-cities li:nth-child(2n + 1) {
			margin-right: 5%;
		}

		.home-popular-cities li a {
			font-weight: 700;
		}
	}

	/*--------------------------------------------------------------
	7.2 List Items
	--------------------------------------------------------------*/
	.scrollFix {
		line-height: 1.35;
		overflow: hidden;
		white-space: nowrap;
	}

	.featured-li {
		background-color: #fffce2;
		border-radius: 3px;
		padding: 12px;
	}

	.list-items {
		float: left;
		width: 100%;
	}

	.item-title-row {
		position: relative;
	}

	.item-counter {
		background-color: #2b9af3;
		border-radius: 50%;
		color: #fff;
		display: inline-block;
		height: 24px;
		margin-right: 6px;
		margin-top: -12px;
		position: absolute;
		top: 50%;
		width: 24px;
	}

	.item-counter-inner {
		font-size: 1.2rem;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
	}

	.item-title-row h2 {
		display: inline-block;
		font-size: 2rem;
		padding-left: 30px;
	}

	.item-title-row h2 a {
		color: #404040;
	}

	.results-count {
		background-color: #c2c9cc;
		border-radius: 3px;
		color: #000;
		font-weight: 700;
		padding: 3px;
	}

	.item {
		background-color: #fff;
		border-bottom: 1px solid #edeef0;
		margin-bottom: 24px;
		padding-bottom: 24px;
		width: 100%;
	}

	.item-pic {
		float: left;
		margin-right: 24px;
		position: relative;
		width: 88px;
	}

	.item-pic img { /* requested thumb is 88x88 */
		border-radius: 2px;
		width: 100%;
		max-width: 100px;
	}

	.item-description {
		float: left;
		width: calc(100% - 113px); /* should be 112 but being safe set to 113 */
	}

	.item-description h2 {
		margin-bottom: 0;
	}

	@media only screen and (max-width: 410px) {
		.tpl-list .item-pic {
			float: none;
			margin-bottom: 24px;
		}

		.tpl-list .item-description {
			float: none;
			width: 100%;
		}
	}

	@media only screen and (max-width: 432px) {
		.tpl-list .wrapper {
			padding: 0;
		}

		.tpl-list h1, .tpl-list .breadcrumbs {
			padding: 0 24px;
		}
	}

	@media only screen and (max-width: 384px) {
		.tpl-list .full-block {
			padding: 10px;
		}

		.tpl-list h1, .tpl-list .breadcrumbs {
			padding: 0 10px;
		}
	}

	/*--------------------------------------------------------------
	7.3 Single Item
	--------------------------------------------------------------*/
	.tpl-place .navbar {
		margin-bottom: 0;
	}

	#blur-wrapper {
		width: 100%;
		height: 250px;
		position: absolute;
		overflow:hidden;
	}

	h1.place-title {
		color: #fff;
		margin-bottom: 0;
		max-height: 135px;
		overflow: hidden;
	}

	.all-cats-line, .all-cats-line-empty {
		color: #f7f7f7;
		margin-bottom: 24px;
	}

	.all-cats-line a {
		color: #f7f7f7;
	}

	.all-cats-line-empty, .all-cats-line-empty a {
		color: #636363;
	}

	.breadcrumbs, .breadcrumbs-empty-blur {
		color: #fff;
		font-size: 1.4rem;
		margin-bottom: 24px;
	}

	.breadcrumbs-empty-blur {
		color: #636363;
	}

	.breadcrumbs a {
		color: #fff;
		font-size: 1.4rem;
	}

	.breadcrumbs-empty-blur a {
		color: #636363;
	}

	.tpl-list .breadcrumbs {
		color: #636363;
		font-size: 1.4rem;
		margin-bottom: 24px;
	}

	.tpl-list .breadcrumbs a {
		color: #636363;
		font-size: 1.4rem;
	}

	.info-block {
		margin-bottom: 24px;
	}

	.line-without-icon {
		padding-left: 25px;
	}

	.place-details-left {
		float: left;
		margin-right: 24px;
		margin-bottom: 24px;
		width: 50%
	}

	.social-button {
		background-color: #edeef0;
		border-radius: 50%;
		color: #fff;
		display: inline-block;
		height: 40px;
		line-height: 40px;
		margin-right: 24px;
		text-align: center;
		width: 40px;
	}

	.social-button a {
		color: #fff;
	}

	.social-button:hover {
		background-color: #009ee0;
	}

	.place-details-right {
		float: left;
		margin-bottom: 24px;
		width: calc(50% - 24px);
	}

	@media only screen and (max-width: 740px) {
		.place-details-left {
			float: none;
			margin-right: 0;
			width: 100%;
		}

		.place-details-right {
			float: none;
			margin-bottom: 24px;
			width: 100%;
		}
	}

	.hours-status {
		margin-bottom: 12px;
	}

	.hours-status .label {
		margin-right: 12px;
	}

	.timeframes-row {
		border-bottom: 1px solid #edeef0;
	}

	.timeframes-days {
		display: block;
		float: left;
	}

	.timeframes-hours {
		display: block;
		float: right;
		text-align: right;
	}

	@media only screen and (max-width: 840px) {
		.timeframes-days {
			float: none;
			font-weight: 700;
		}
		.timeframes-hours {
			float: none;
			text-align: left;
		}
	}

	#place-map-wrapper {
		margin-bottom: 24px;
	}

	#place-map-wrapper {
		width: 100%;
		height: 340px;
		border: 1px solid #ddd;
	}

	#place-map-canvas {
		height: 100%
	}

	.place-thumbs-wrapper {
		margin-bottom: 24px;
	}

	.place-thumb {
		display: inline-block;
		float: left;
		margin-bottom: 24px;
		margin-right: 24px;
		position: relative;
		width: calc(25% - 18px);
	}

	.place-thumb:nth-child(4n) {
		margin-right: 0;
	}

	.place-thumb .dummy {
		padding-top: 100%; /* the desired aspect ratio (see html code for explanation) */
	}

	.container-img {
		background-size: cover;
		background-repeat: no-repeat;
		background-position: 50% 50%;
	}​

	.list-reviews {
		margin-bottom: 24px;
	}

	.description {
		margin-bottom: 24px;
	}

	.tpl-place .review-item {
		margin-bottom: 24px;
		border-bottom: 1px solid #edeef0;
		padding-bottom: 24px;
	}

	.tpl-place .profile-pic {
		float: left;
		margin-right: 24px;
		position: relative;
		width: 64px;
	}

	.tpl-place .profile-pic .dummy {
		padding-top: 100%; /* the desired aspect ratio (see html code for explanation) */
	}

	.tpl-place .review-text {
		float: left;
		width: calc(100% - 88px);
	}

	.tpl-place .review-author-name {
		color: #404040;
		font-weight: 700;
	}

	@media only screen and (max-width: 800px) {
		.tpl-place textarea {
			width: 100%;
		}
	}

	@media only screen and (max-width: 400px) {
		.tpl-place .profile-pic {
			float: none;
			margin-right: 0;
			width: 100%;
		}

		.tpl-place .review-text {
			float: none;
			width: 100%;
		}
	}

	@media only screen and (max-width: 340px) {
		.tpl-place .wrapper {
			padding: 0;
		}

		.tpl-place .breadcrumbs,
		.tpl-place .breadcrumbs-empty-blur,
		.tpl-place h1.place-title,
		.tpl-place .item-rating,
		.tpl-place .all-cats-line {
			padding: 0 10px;
		}

		#blur-wrapper {
			height: 280px;
		}
	}

	/*--------------------------------------------------------------
	7.4 All Categories
	--------------------------------------------------------------*/
	ul.cat-main-parent {
		padding-left: 0;
		margin-bottom: 0;
	}

	.cat-tree {
		list-style-type: none;
	}

	.cat-tree a {
		color: #404040;
		text-decoration: none;
	}

	.cat-main-parent {
		-webkit-column-count: 3;
		-moz-column-count: 3;
		column-count: 3;
	}

	.cat-main-parent > li {
		margin-bottom: 24px;
	}

	@media only screen and (max-width: 740px) {
		.cat-main-parent {
			-webkit-column-count: 2;
			-moz-column-count: 2;
			column-count: 2;
		}
	}

	@media only screen and (max-width: 540px) {
		.cat-main-parent {
			-webkit-column-count: 1;
			-moz-column-count: 1;
			column-count: 1;
		}
	}

	/**
	 * The media queries below are used by the alternative all-categories template
	 *
	 */
	.cat-group {
		margin-bottom: 24px;
	}

	.cat-group a {
		color: #404040;
	}

	.cat-group a:hover {
		text-decoration: none;
	}

	.top-level-cat i:before {
		font-size: 32px;
		font-style: normal;
		font-weight: normal;
	}

	.top-level-cat i {
		display: inline-block;
		margin-right: 12px;
	}

	.top-level-cat {
		float: left;
		margin-bottom: 24px;
		padding-right: 24px;
		width: 25%;
	}

	.top-level-cat a {
		color: #404040;
		font-size: 16px;
		line-height: 32px;
	}

	.top-level-cat img {
		margin-right: 12px;
	}

	.cat-col {
		float: left;
		padding-right: 24px;
		width: 25%;
	}

	ul.children-cat {
		padding: 0;
		list-style-type: none;
	}

	ul.children-cat a {
		color: #404040;
	}

	a.dropdown-toggle {
		padding: 12px 12px 12px 6px;
		vertical-align: top;
	}

	a.dropdown-toggle i {
		padding: 12px 12px 12px 6px;
		vertical-align: top;
	}

	a.dropdown-toggle:hover {
		color: #2b9af3;

	}

	@media only screen and (max-width: 984px) {
		.top-level-cat {
			width: 33%;
		}
		.cat-group:nth-child(3n+1) .top-level-cat {
			clear: both;
		}
	}

	@media only screen and (max-width: 768px) {
		.cat-col {
			float: left;
			width: 48%;
		}

		.cat-col:nth-child(4) {
			clear: both;
		}
	}

	@media only screen and (max-width: 624px) {
		.cat-col {
			display: block;
			float: none;
			padding-right: 0;
			width: 100%;
		}

		ul.children-cat {
			margin-bottom: 0;
		}

		.top-level-cat {
			width: 50%;
		}

		.cat-group:nth-child(3n+1) .top-level-cat {
			clear: none;
		}

		.cat-group:nth-child(2n+1) .top-level-cat {
			clear: both;
		}
	}

	@media only screen and (max-width: 384px) {
		.top-level-cat {
			width: 100%;
			clear: both;
		}

		.cat-group:nth-child(3n+1) .top-level-cat {
			clear: both;
		}
	}

	/*--------------------------------------------------------------
	7.5 Edit Place, Add Place
	--------------------------------------------------------------*/
	.tpl-edit-place .select2-container--default .select2-selection--single,
	.tpl-add-place .select2-container--default .select2-selection--single {
		background-color: #fff;
		border: 1px solid #ddd;
		border-radius: 2px;
	}

	.tpl-edit-place .select2-container .select2-selection--single,
	.tpl-add-place .select2-container .select2-selection--single {
		height: 34px;
		padding: 4px;
	}

	.tpl-edit-place .select2-container--default .select2-selection--single .select2-selection__arrow,
	.tpl-add-place .select2-container--default .select2-selection--single .select2-selection__arrow {
		height: 34px;
	}

	.tpl-edit-place .select2-container--default .select2-selection--single .select2-selection__rendered,
	.tpl-add-place .select2-container--default .select2-selection--single .select2-selection__rendered {
		font-size: 1.6rem;
		padding-top: 0;
		line-height: 1.5;
	}

	.tpl-edit-place .select2-container--default .select2-selection--single,
	.tpl-add-place .select2-container--default .select2-selection--single {
		background-color: #fff;
		border: 1px solid #ddd;
		border-radius: 2px;
	}

	.thumbs, .thumbs-preloader {
		display: inline-block;
		margin-right: 12px;
		margin-bottom: 24px;
		position: relative;
	}

	.btn-delete-thumb {
		color: #fff;
		cursor: pointer;
		border-radius: 50%;
		background-color: rgba(0, 0, 0, 0.4);
		position: absolute;
		top: 5px;
		right: 5px;
		height: 24px;
		width: 24px;
		vertical-align: middle;
		text-align: center;
	}

	#map-wrapper {
		margin-bottom: 24px;
	}

	#map-wrapper {
		width: 100%;
		height: 340px;
		border: 1px solid #edeef0;
	}

	#map-canvas {
		height: 100%
	}

	.tpl-edit-place h3,
	.tpl-add-place h3 {
		border-bottom: 1px solid #ddd;
		padding: 12px 0;
	}

	.tpl-edit-place .dropdown-menu,
	.tpl-add-place .dropdown-menu {
		list-style-position: inside;
	}

	.tpl-edit-place .dropdown-menu li,
	.tpl-add-place .dropdown-menu li {
		margin-left: 36px;
	}

	.tpl-edit-place a.the-tooltip,
	.tpl-add-place a.the-tooltip {
		color: #636363;
	}

	.tpl-edit-place input[type="radio"]:last-child,
	.tpl-add-place input[type="radio"]:last-child {
		margin-left: 12px;
	}

	.tpl-edit-place .hours-control,
	.tpl-add-place .hours-control {
		width: 110px;
		height: 30px;
	}

	.tpl-edit-place select#city_id,
	.tpl-add-place select#city_id {
		width: 60%;
		border-color: #ddd;
	}

	#selected-hours {
		margin-bottom: 24px;
	}

	a.remove-hours:hover {
		cursor: pointer;
	}

	.phone-row label {
		display: inline-block;
	}

	.tpl-edit-place input#area,
	.tpl-add-place input#area {
		width: 50px;
	}

	.tpl-edit-place input[type=tel],
	.tpl-add-place input[type=tel] {
		width: calc(60% - 56px);
	}

	@media only screen and (max-width: 820px) {
		.tpl-edit-place input[type=text], .tpl-add-place input[type=text],
		.tpl-edit-place input[type=email], .tpl-add-place input[type=email],
		.tpl-edit-place input[type=url], .tpl-add-place input[type=url],
		.tpl-edit-place input[type=number], .tpl-add-place input[type=number],
		.tpl-edit-place input[type=password], .tpl-add-place input[type=password],
		.tpl-edit-place textarea, .tpl-add-place textarea,
		.tpl-edit-place select, .tpl-add-place select {
			width: 90%;
		}

		.tpl-edit-place input[type=tel],
		.tpl-add-place input[type=tel] {
			width: calc(90% - 56px);
		}

		.tpl-edit-place select#city_id,
		.tpl-add-place select#city_id {
			width: 90%;
		}
	}

	@media only screen and (max-width: 700px) {
		.tpl-edit-place .form-row-quarter,
		.tpl-add-place .form-row-quarter {
			width: calc(33% - 24px);
		}
	}

	@media only screen and (max-width: 580px) {
		.tpl-edit-place .form-row-half,
		.tpl-add-place .form-row-half {
			float: none;
			margin-bottom: 24px;
			width: 100%;
		}

		.tpl-edit-place .btn-hours-control,
		.tpl-add-place .btn-hours-control {
			display: block;
			margin-top: 12px;
		}
	}

	@media only screen and (max-width: 510px) {
		.tpl-edit-place .form-row-quarter,
		.tpl-add-place .form-row-quarter {
			width: calc(50% - 24px);
		}
	}

	@media only screen and (max-width: 460px) {
		.tpl-edit-place .hours-control,
		.tpl-add-place .hours-control {
			width: 70px;
			height: 30px;
			padding: 0;
		}

		.tpl-edit-place .form-row-third,
		.tpl-add-place .form-row-third {
			float: none;
			width: 100%;
			margin-bottom: 24px;
		}
	}

	@media only screen and (max-width: 420px) {
		.tpl-edit-place .form-row-quarter,
		.tpl-add-place .form-row-quarter {
			float: none;
			width: 100%;
		}
	}

	/*--------------------------------------------------------------
	7.6 Public Profile
	--------------------------------------------------------------*/
	.tpl-profile .profile-pic-col {
		float: left;
		margin-right: 24px;
		width: 180px;
	}

	.tpl-profile .profile-pic {
		display: inline-block;
		margin-bottom: 24px;
		margin-right: 24px;
		position: relative;
		width: 170px;
	}

	.tpl-profile .profile-pic-container-img {
		background-position: 50% 50%;
		background-repeat: no-repeat;
		background-size: cover;
		border-radius: 100%;
		padding-top: 100%; /* the desired aspect ratio (see html code for explanation) */
	}

	.tpl-profile .profile-details {
		float: left;
		text-align: left;
		width: calc(100% - 204px)
	}

	.tpl-profile h1.profile-name {
		margin-bottom: 4px;
	}

	.tpl-profile .profile-content-col {
		float: left;
		width: calc(100% - 284px);
		margin-left: 24px;
	}

	.tpl-profile .review-item {
		background-color: #fff;
		border-bottom: 1px solid #eee;
		margin-bottom: 24px;
		padding-bottom: 24px;
		padding-top: 24px;
	}

	.tpl-profile .review-item-pic {
		float: left;
		margin-right: 24px;
		position: relative;
		width: 88px;
	}

	.tpl-profile .review-item-pic img { /* requested thumb is 88x88 */
		border-radius: 2px;
		width: 100%;
		max-width: 100px;
	}

	.tpl-profile .review-item-description {
		float: left;
		width: calc(100% - 113px); /* should be 112 but being safe set to 113 */
	}

	.tpl-profile .review-item-description h2 {
		margin-bottom: 0;
	}

	.tpl-profile .review-item-info {
		margin-bottom: 24px;
	}

	@media only screen and (max-width: 410px) {
		.tpl-profile .review-item-pic {
			float: none;
			margin-bottom: 24px;
		}

		.tpl-profile .review-item-description {
			float: none;
			width: 100%;
		}
	}

	/*--------------------------------------------------------------
	7.7 Search Results
	--------------------------------------------------------------*/
	.scrollFix {
		/* defined in 7.2 */
	}

	.tpl-searchresults .breadcrumbs {
		color: #636363;
		font-size: 1.4rem;
		margin-bottom: 24px;
	}

	.tpl-searchresults .breadcrumbs a {
		color: #636363;
		font-size: 1.4rem;
	}

	/*--------------------------------------------------------------
	7.8 Contact Page
	--------------------------------------------------------------*/
	@media only screen and (max-width: 420px) {
		.tpl-contact input[type=text],
		.tpl-contact input[type=email],
		.tpl-contact textarea {
			width: 100%;
		}
	}

	/*--------------------------------------------------------------
	7.9 Select Plan
	--------------------------------------------------------------*/

	.tpl-select-plan .panel {
		border-radius: 2px;
	}

	.tpl-select-plan .panel-info>.panel-heading {
		background-color: #ddd;
		border-color: #ddd;
	}

	.tpl-select-plan .panel-heading h2 {

	}

	.tpl-select-plan .panel-info {
		border-color: #ddd;
	}

	/* each check mark */
	.tpl-select-plan .list-group i.fa-check {
		color: #2b80c5;
	}

	/* each cross mark */
	.tpl-select-plan .list-group i.fa-times {
		color: #ddd;
	}

	/* each feature row */
	.tpl-select-plan .list-group-item {
		padding: 12px 24px;
		margin-bottom: -1px;
		background-color: #fff;
		border: 1px solid #ddd;
	}

	/* each h2 */
	.tpl-select-plan .plan-box h2 {
		margin-bottom: 0;
	}

	/* heading */
	.tpl-select-plan .panel-heading {
		padding: 12px 24px;
	}

	/* each feature row */
	.tpl-select-plan .panel-body {
		padding: 24px;
	}

	.tpl-select-plan .lead {
		margin-bottom: 0;
	}

	.tpl-select-plan .panel-footer {
		padding: 12px 24px;
		background-color: #f7f7f7;
	}

	/*--------------------------------------------------------------
	7.10 Advanced Search
	--------------------------------------------------------------*/
	label.label {
		border: 0;
		color: #636363;
		font-size: 100%;
		padding: 0;
		white-space: normal;
		text-align: left;
	}

	input[type="checkbox"] {
	}

	#cat-checkboxes ul {
		list-style-type: none;
	}

	#cat-checkboxes label {
		font-weight: 400;
	}

	ul.no-margin {
		margin-left: 0;
		padding-left: 0;
		list-style-type: none;
	}

	.show-cats {
		-webkit-column-count: 2;
		-moz-column-count: 2;
		column-count: 2;
		-webkit-column-gap: 20px;
		column-gap: 20px;
		-moz-column-gap: 20px;
	}

/*--------------------------------------------------------------
8.0 Pagination
--------------------------------------------------------------*/
#pager {
	text-align: right;
}

.pagination li {
	display: inline-block;
	margin-bottom: 1rem;
	font-weight: 700;
}

.pagination li a {
	border-radius: 2px;
	padding: 5px 10px;
}

.pagination li span {
	padding: 5px 10px;
}

.pagination>li>a, .pagination>li>span {
	background-color: #edeef0;
	border: 0;
	color: #404040;
	line-height: 1.42857143;
	margin-left: -1px;
	margin-right: 6px;
	padding: 6px 12px;
	text-decoration: none;
}

.pagination>.active>a,
.pagination>.active>span,
.pagination>.active>a:hover,
.pagination>.active>span:hover,
.pagination>.active>a:focus,
.pagination>.active>span:focus {
	background-color: #c2c9cc;
}

.pagination>li>a, .pagination>li>span {
	color: #404040;
}

/*--------------------------------------------------------------
9.0 Forms
--------------------------------------------------------------*/
select {
	border: 1px solid #ddd;
	border-radius: 2px;
	padding: 4px;
}

label {
	color: #636363;
	display: block;
	font-weight: 700;
}

.label-col label {
	text-align: right;
}

button[type=submit],
input[type=submit] {
	font-weight: 700;
	padding: 4px 24px;
}

input[type=text],
input[type=email],
input[type=url],
input[type=tel],
input[type=number],
input[type=password],
textarea,
select {
	border-radius: 2px;
	border: 2px solid #ddd;
	padding: 4px 12px;
	width: 60%;
}

input[type=number] {
    -moz-appearance:textfield;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

textarea {
	width: 80%;
	height: auto;
	min-height: 200px;
}

input::-webkit-input-placeholder {
	color: #ddd !important;
}

input:-moz-placeholder { /* Firefox 18- */
	color: #ddd !important;
}

input::-moz-placeholder {  /* Firefox 19+ */
	color: #ddd !important;
}

input:-ms-input-placeholder {
	color: #ddd !important;
}

textarea::-webkit-input-placeholder {
	color: #ddd !important;
}

textarea:-moz-placeholder { /* Firefox 18- */
	color: #ddd !important;
}

textarea::-moz-placeholder {  /* Firefox 19+ */
	color: #ddd !important;
}

textarea:-ms-input-placeholder {
	color: #ddd !important;
}

.form-wrapper {
	padding: 24px 0;
}

.form-row {
	margin-bottom: 24px;
	width: 100%;
}

.form-row-half {
	float: left;
	width: calc(50% - 12px);
}

.form-row-half:first-child {
	margin-right: 24px;
}

.form-row-quarter {
	float: left;
	width: calc(25% - 24px);
	margin-right: 24px;
}

.form-row-third {
	float: left;
	width: calc(33% - 24px);
	margin-right: 24px;
}

.form-row-half:last-child {
	margin-right: 0;
}

.submit-row div {
	padding: 48px 0;
	text-align: center;
}

.label-col {
	float: left;
	width: 120px;
	margin-right: 24px;
	vertical-align: top;
}

.field-col {
	float: left;
	width: calc(100% - 144px);
	vertical-align: top;
}

.alert-bubble {
	background: #f55567;
	border-radius: 5px;
	color: #fff;
	display: none;
	margin: 24px 0 12px 0;
	padding: 6px;
	position: relative;
	width: 60%;
}

/* creates the triangle */
.alert-bubble:after {
	content: "";
	position: absolute;
	top: -29px;
	left: 50px;
	border: 15px solid transparent;
	border-bottom-color: #f55567;
	/* reduce the damage in FF3.0 */
	display: block;
	width: 0;
}

.input-group {
	width: 100%;
}

.input-group-addon {
	background-color: #fff;
	border-radius: 2px;
	border-right: 0;
	border: 1px solid #ddd;
	color: #555;
	font-size: 1.6rem;
	font-weight: 400;
	line-height: 1;
	padding: 6px 12px;
	text-align: center;
	width: 38px;
}

/*--------------------------------------------------------------
10.0 Buttons and Labels
--------------------------------------------------------------*/
.btn, .label {
	border-radius: 3px;
	display: inline-block;
	font-size: 1.6rem;
	line-height: 1.5;
	padding: 12px 24px;
	text-align: center;
	vertical-align: baseline;
}

.btn.focus, .btn:focus, .btn:hover {
    color: #fff;
    text-decoration: none;
}

.btn-less-padding, .label-less-padding {
	padding: 3px 6px;
}

.btn-even-less-padding, .label-even-less-padding {
	font-size: 1.2rem;
	padding: 3px 3px;
}

.btn-default, a.btn-default, input.btn-default[type="submit"] {
	background: #edeef0;
	color: #404040;
	transition: background 0.3s;
}

.btn-default:hover, a.btn-default:hover,
.btn-default:focus, a.btn-default:focus {
	color: #404040;
	background: #c2c9cc;
	transition: background 0.3s;
}

.btn-green, a.btn-green {
	background: #6aa74c;
	color: #fff;
	transition: all 150ms ease;
}

.btn-green:hover, a.btn-green:hover {
	background: #6aa74c;
	color: #fff;
}

.btn-red, a.btn-red {
	background: #f55567;
	color: #fff;
	transition: all 150ms ease;
}

.btn-red:hover, a.btn-red:hover {
	background: #f71a33;
	color: #fff;
}

.btn-blue, a.btn-blue {
	background: #2b9af3;
	color: #fff;
	transition: all 150ms ease;
}

.btn-blue:hover, a.btn-blue:hover {
	background: #2b80c5;
	color: #fff;
}

.btn-orange, a.btn-orange {
	background: #ff6300;
	color: #fff;
	transition: all 150ms ease;
}

.btn-orange:hover, a.btn-red:orange {
	background: #ff6300;
	color: #fff;
}

.btn-ghost, a.btn-ghost {
	border: 1px solid #edeef0;
	border-radius: 2px;
	color: #636363;
	transition: all 150ms ease;
}

.btn-ghost:hover, a.btn-ghost:hover {
	border: 1px solid #636363;
	color: #ff6300;
	transition: all 150ms ease;
}

.btn-ghost a {
	color: #636363;
}

.label-default {
	background-color: #edeef0;
	border: 1px solid #ccc;
	color: #404040;
}

.label-green {
	background: #6aa74c;
	border: 1px solid #6aa74c;
	color: #fff;
}

.label-blue {
	background-color: #2b9af3;
	border: 1px solid #2b9af3;
	color: #fff;
}

.label-ghost {
	border: 1px solid #edeef0;
	border-radius: 2px;
	color: #636363;
}


	/*--------------------------------------------------------------
	10.1 Social Buttons
	--------------------------------------------------------------*/
	.fb-like, .tweet, .googlebtn {
		float: left;
		margin-right: 24px;
	}

	/*--------------------------------------------------------------
	10.2 Old Bootstrap 2 button styles
	--------------------------------------------------------------*/


/*--------------------------------------------------------------
11.0 Tables
--------------------------------------------------------------*/
.table-wrapper {
	border: 1px solid #ddd;
	padding: 16px;
	margin-bottom: 24px;
}

table.zebra {
	width: 100%;
	border-spacing: 16px;
}

table.zebra th {
	font-weight: 700;
	padding: 8px;
	white-space: nowrap;
}

table.zebra tr:nth-child(2n) {
	background-color: #f7f7f7;
}

table.zebra td {
	padding: 8px;
	vertical-align: top;
}

table.zebra caption {
	font-size: 1.6rem;
	color: #ff6300;
}

table.zebra ul {
	padding: 0;
}

table.zebra td:first-child,
.zebra th:first-child {
	text-align: left;
}

table.zebra td,
.zebra th {
	text-align: left;
	vertical-align: top;
}

table.zebra td:last-child,
.zebra th:last-child {
	text-align: right;
}

/*--------------------------------------------------------------
12.0 Font icons
--------------------------------------------------------------*/
	/*
  	Flaticon icon font: Flaticon
  	Creation date: 04/05/2016 01:27
  	*/

@font-face {
  font-family: "Flaticon";
  src: url("./Flaticon.eot");
  src: url("./Flaticon.eot?#iefix") format("embedded-opentype"),
       url("./Flaticon.woff") format("woff"),
       url("./Flaticon.ttf") format("truetype"),
       url("./Flaticon.svg#Flaticon") format("svg");
  font-weight: normal;
  font-style: normal;
}

@media screen and (-webkit-min-device-pixel-ratio:0) {
  @font-face {
    font-family: "Flaticon";
    src: url("./Flaticon.svg#Flaticon") format("svg");
  }
}

[class^="flaticon-"]:before, [class*=" flaticon-"]:before,
[class^="flaticon-"]:after, [class*=" flaticon-"]:after {
	font-family: Flaticon;
	font-size: 48px;
	font-style: normal;
}

.flaticon-animals:before { content: "\f100"; }
.flaticon-bar-graph-with-dollar-sign:before { content: "\f101"; }
.flaticon-beauty:before { content: "\f102"; }
.flaticon-book:before { content: "\f103"; }
.flaticon-building:before { content: "\f104"; }
.flaticon-cogwheel:before { content: "\f105"; }
.flaticon-commerce:before { content: "\f106"; }
.flaticon-commerce-1:before { content: "\f107"; }
.flaticon-computer:before { content: "\f108"; }
.flaticon-heart-beats:before { content: "\f109"; }
.flaticon-home:before { content: "\f10a"; }
.flaticon-paint:before { content: "\f10b"; }
.flaticon-people:before { content: "\f10c"; }
.flaticon-restaurant:before { content: "\f10d"; }
.flaticon-shapes:before { content: "\f10e"; }
.flaticon-sports:before { content: "\f10f"; }
.flaticon-tickets:before { content: "\f110"; }
.flaticon-transport:before { content: "\f111"; }
.flaticon-transport-1:before { content: "\f112"; }
.flaticon-weights:before { content: "\f113"; }

/*--------------------------------------------------------------
13.0 Bootstrap Modal
--------------------------------------------------------------*/
.modal-content {
    border: 1px solid #999;
    border: 1px solid #0003;
    border-radius: 2px;
    -webkit-box-shadow: 0 3px 9px #00000080;
    box-shadow: 0 3px 9px #00000080;
}

/*--------------------------------------------------------------
14.0 Global Classes
--------------------------------------------------------------*/
.clear {
	clear: both;
}

.transparent {
	background-color: transparent;
}

.tip {
	background-color: #ff6300;
	border-radius: 3px;
	color: #fff;
	margin-bottom: 24px;
	padding: 12px;
}

.align-center {
	text-align: center;
}

.padding {
	padding: 24px;
}

.block {
	margin-bottom: 24px;
}

.label-danger {
	background-color: #f55567;
	color: #fff
}

.rounded {
	border-radius: 3px;
}

.break-all {
	word-break: break-all;
}

.reversed{
	-ms-transform: rotate(180deg);
	-webkit-transform: rotate(180deg);
	transform: rotate(180deg);
}