.widget {
	margin-bottom: 40px;

	&:last-child {
		margin-bottom: 0;
	}

	.widget-title {
		font-size: 24px;
		font-weight: 700;
		margin-bottom: 35px;
		margin-top: 0;
		padding-bottom: 15px;
		color: @primary-color;
		position: relative;

		&:after {
			content: '';
			position: absolute;
			width: 70px;
			height: 2px;
			bottom: 0;
			left: 0;
			background-color: @secondary-color;
		}
	}

	ul {
		margin: 0;
		padding: 0;

		li {
			list-style: none;
		}
	}

	table,
	select {
		width: 100%;
	}

	select {
		color: #9e9e9e;
		border: 1px solid #f7f7f7;
		height: 50px;
		padding-left: 15px;
		background-color: transparent;

		&:focus {
			outline: none;
		}

		option {
			color: @gray;
		}
	}

	table {
		text-align: left;
		width: 100%;

		caption {
			border: 1px solid #f7f7f7;
			border-bottom-width: 0;
			text-align: center;
		}

		tr {
			border: 1px solid #f7f7f7;
			border-bottom-width: 0;
			padding: 3px 0;

			td,
			th {
				padding: 0 5px;
				border-bottom: 1px solid #f7f7f7;
				border-left: 1px solid #f7f7f7;
			}
		}
	}
}

.widget_calendar {
	line-height: 26px;
}

.widget_categories,
.widget_recent_comments,
.widget_rss,
.widget_pages,
.widget_archive,
.widget_nav_menu,
.widget_recent_entries,
.widget_meta,
ul.service-menu {
	.widget-title {
		margin-bottom: 20px;
	}

	li {
		border-bottom: solid 1px #f7f7f7;
		padding: 15px 15px 15px 0;
		position: relative;
		transition: all 0.5s;

		& > a {
			color: #9f9f9f;
			padding-left: 20px;
			position: relative;
			transition: all 0.5s;

			&:before {
				color: #9f9f9f;
				content: '\f105';
				position: absolute;
				top: -4px;
				left: 0;
				font-size: 18px;
				font-family: FontAweSome;
				transition: all 0.5s;
			}
		}

		&:before {
			content: '\f14a';
			position: absolute;
			top: 20px;
			right: 0;
			color: @secondary-color;
			font-size: 12px;
			font-family: FontAweSome;
			opacity: 0;
			transition: all 0.5s;
		}

		&:after {
			content: '';
			position: absolute;
			top: 23px;
			right: 0;
			width: 10px;
			height: 10px;
			border: 1px solid #eaeaea;
			transition: all 0.5s;
		}

		&:hover {
			color: @secondary-color;

			&:before {
				opacity: 1;
			}

			&:after {
				border-color: transparent;
			}

			a {
				color: @secondary-color;

				&:before {
					color: @secondary-color;
				}
			}
		}
	}

	.children {
		border-top: 1px solid #f7f7f7;
		margin-top: 15px;
		margin-left: 15px;

		li {
			&:first-child {
				padding-top: 15px;
			}

			&:last-child {
				padding-bottom: 0;
				border-bottom: none;
			}
		}
	}
}

.widget_tag_cloud {
	a {
		margin-bottom: 5px;
		margin-right: 20px;
		display: inline-block;
		font-size: 16px !important;
		font-weight: 400;
		border-bottom: 1px solid transparent;
		color: @text-color;

		&:hover{
			color: @secondary-color;
			text-decoration: none;
			border-color: @secondary-color;
		}

		&:nth-child(even) {
			font-size: 18px !important;
		}
	}
}

.popular-posts-widget {
	.popular-post {
		margin-bottom: 30px;
		border: 0;
		padding: 0;
	}

	.widget-thumb {
		float: left;
	}

	.mini-widget-title {
		margin-left: 100px;

		h4 {
			font-size: 16px;
			font-weight: 400;
			line-height: 26px;
			text-transform: capitalize;
			margin: 0;
		}
	}

	span a {
		color: @text-color;
		padding-left: 5px;
		text-transform: capitalize;
	}
}

.widget-about {
	img {
		margin-bottom: 25px;
	}

	a {
		font-size: 14px;
		font-weight: 700;
		text-transform: uppercase;
		display: block;
		margin-top: 20px;

		.fa {
			padding-left: 5px;
		}

		&:hover {
			color: @secondary-color;
		}
	}
}

.tabs-widget {
	.tabs-nav {
		li {
			width: 33%;
			border-bottom: none;
			padding-bottom: 0;

			&:last-child {
				width: 34%;
			}

			&:before {
				display: none;
			}

			a {
				background: @gray;
				border: 1px solid @gray-light;
				color: #646464;
				padding: 8px 0;
				text-align: center;
				text-transform: uppercase;
				font-size: 12px;
				font-weight: 700;
				font-family: @font-family-secondary;

				&.active {
					color: @light;
					text-decoration: none;
					border-color: transparent;
					background: @secondary-color;
				}

				&:hover {
					text-decoration: none;
				}
			}
		}
	}

	.tabs-panel {
		margin-top: -1px;
		padding: 15px 0 20px;
	}

	.tab-comments {
		.comment {
			border-bottom: solid 1px @gray-light;
			padding: 10px 0;
			overflow: hidden;
		}

		.comment-summary {
			font-style: italic;
			margin-bottom: 5px;
		}
	}
}

.recent-post,
.popular-post {
	border-bottom: solid 1px @gray-light;
	padding: 10px 0;
	overflow: hidden;

	&:last-child {
		border-bottom: none;
		padding-bottom: 0;
	}

	.widget-thumb {
		float: left;
		//width: 60px;
	}

	.post-text {
		margin-left: 75px;
		margin-top: 5px;

		.post-title {
			display: block;
			padding-bottom: 5px;
			font-weight: 700;
		}

		.post-date {
			color: @gray-light;
			font-size: 12px;
		}

		.post-comments {
			display: block;
			color: @gray-light;
		}

		.read-more {
			line-height: 2;
		}
	}

	&.no-thumbnail {
		.post-text {
			margin-left: 0;
			margin-top: 0;
		}
	}
}

.widget-recent-comments {
	li {
		padding: 20px 0;
		color: @gray-light;

		a,
		p {
			color: @gray;
		}
	}
}

.widget_search {
	.search-field {
		background-color: transparent;
		font-weight: 400;
		border-width: 0;
	}

	.search-form {
		font-size: 16px;
		position: relative;
		color: @primary-color;
		padding: 0 5px;
		border: 1px solid #f7f7f7;

		&:before {
			content: '\f002';
			position: absolute;
			top: 50%;
			right: 16px;
			color: @light;
			font-family: FontAwesome;
			font-size: 14px;
			z-index: 99;
			transform: translateY(-50%);
		}

		&:after {
			content: '';
			position: absolute;
			top: -1px;
			right: -1px;
			width: 50px;
			height: 52px;
			background-color: @secondary-color;
			border: 1px solid @secondary-color;
			z-index: 9;
		}

		.screen-reader-text {
			display: none;
		}

		::-webkit-input-placeholder {
			color: #9e9e9e;
		}

		:-moz-placeholder {
			color: #9e9e9e;
		}

		::-moz-placeholder {
			color: #9e9e9e;
		}

		:-ms-input-placeholder {
			color: #9e9e9e;
		}

		.search-submit {
			position: absolute;
			top: 0;
			right: 0;
			width: 50px;
			height: 50px;
			opacity: 0;
			z-index: 9999;
		}

		label {
			width: 100%;
			margin-bottom: 0;
			input {
				height: 50px;
				line-height: 50px;
				width: 100%;
				padding: 0 0 0 15px;

				&:focus {
					outline: none;
				}
			}
		}
	}
}

.service-sidebar {
	.services-menu-widget {
		li {
			margin-bottom: 5px;
			border: 0;
			background-color: #f7f7f7;
			padding: 15px 30px;
			position: relative;
			transition: 0.5s;

			&:before {
				content: '';
				position: absolute;
				bottom: 0;
				left: 0;
				top: auto;
				width: 0;
				height: 0;
				border-left: 9px solid @primary-color;
				border-right: 9px solid transparent;
				border-bottom: 9px solid @primary-color;
				border-top: 9px solid transparent;
				opacity: 0;
				transition: 0.5s;
			}

			&:after {
				display: none;
			}

			a {
				display: block;
				color: @primary-color;
				font-family: @font-family-secondary;
				font-size: 16px;
				padding-left: 0;
				position: relative;
				transition: 0.5s;

				&:after {
					content: '\f0da';
					color: @light;
					position: absolute;
					top: 50%;
					right: -10px;
					transform: translateY(-50%);
					font-size: 18px;
					font-family: FontAweSome;
					opacity: 0;
					transition: 0.5s;
				}

				&:before {
					display: none;
				}
			}

			&:hover,
			&.current-menu-item {
				background-color: @secondary-color;

				&:before {
					opacity: 1;
				}

				a {
					color: @light;

					&:after {
						opacity: 1;
					}
				}
			}
		}
	}

	.download {
		.item-download {
			padding: 10px;
			color: @primary-color;
			font-family: @font-family-secondary;
			background-color: #f7f7f7;
			margin-bottom: 5px;
			position: relative;
			transition: 0.5s;

			.fa {
				color: @primary-color;
				position: absolute;
				font-size: 16px;
				top: 50%;
				right: 15px;
				transform: translateY(-50%);
				transition: 0.5s;
			}

			span {
				display: inline-block;
				font-size: 14px;
				font-weight: 700;
				text-transform: uppercase;
				color: @light;
				font-family: @font-family-primary;
				background-color: @secondary-color;
				padding: 5px;
				margin-right: 15px;
				transition: 0.5s;
			}

			&:hover {
				background-color: @secondary-color;

				a,.fa {
					color: @light;
				}

				span {
					background-color: @light;
					color: @secondary-color;
				}
			}
		}
	}

	.business {
		padding: 20px;
		background-color: #f7f7f7;

		.information {
			border-bottom: 1px solid #eaeaea;
			padding: 20px 0;

			&:first-child {
				padding-top: 0;
			}
		}

		h3 {
			font-size: 16px;
			font-weight: 400;
			margin-bottom: 10px;
			margin-top: 0;
		}

		img {
			float: left;
		}

		span {
			font-size: 14px;
			display: block;
			margin-left: 85px;
			line-height: 1;
			margin-bottom: 10px;

			.fa {
				color: @secondary-color;
				font-size: 14px;
				padding-right: 5px;
				float: left;
			}

			&.name {
				font-size: 16px;
				color: @secondary-color;
				font-weight: 700;
			}

			&.email {
				margin-bottom: 0;
			}
		}
	}
}
