@import "animate";

@import "mixins";
@import "mixins-transform";
@import "grid/variables";
@import "grid/mixins";

@import "responsive";

@import "modules/taxonomy";
@import "modules/accordion";
@import "modules/audio";
@import "modules/bar-counters";
@import "modules/blog";
@import "modules/blurb";
@import "modules/button";
@import "modules/call-to-action";
@import "modules/carousel";
@import "modules/circle-counter";
@import "modules/contact-form";
@import "modules/countdown-timer";
@import "modules/divider";
@import "modules/image";
@import "modules/map";
@import "modules/number-counter";
@import "modules/person";
@import "modules/post-slider";
@import "modules/posts";
@import "modules/pricing-tables";
@import "modules/sidebar";
@import "modules/slider";
@import "modules/social-media-follow";
@import "modules/tabs";
@import "modules/testimonial";
@import "modules/text";
@import "modules/toggle";
@import "modules/video";
@import "modules/video-slider";
@import "modules/brands-showcase";

#tm_builder_outer_content {

	.tm-pb-icon {
		&:before {
			@include fa-icon();
			content: attr( data-icon );
		}
	}

	.tm-pb-tooltip {
		display: none;
	}

	.tm_pb_image_container {
		margin-bottom: 20px;
	}

	ol,
	ul {
		list-style: none;
		text-align: inherit;
	}

	ol li,
	ul li {
		padding-left: 0;
		background: none;
		margin-left: 0;
	}

	blockquote {
		quotes: none;

		&:before,
		&:after {
			content: "";
			content: none;
		}
	}

	:focus {
		outline: 0;
	}

	img {
		max-width: 100%;
		height: auto;
	}

	embed,
	iframe,
	object,
	video {
		max-width: 100%;
	}
}

#tm_builder_outer_content {
	.tm_pb_module {
		h2 a,
		.sticky h2 {
			color: inherit;
		}

	}

	.clearfix {
		clear: none;
		display: initial;
	}

	.clearfix {
		display: block;
	}

	.tm_pb_module {
		ul {
			overflow: visible;
		}

		ol,
		ul {
			background: transparent;
		}
	}

	ol.tm_pb_module,
	ul.tm_pb_module {
		background: transparent;
	}

	.tm_pb_module img {
		max-width: 100%;
		margin: 0;
		border: none;
		padding: 0;
		background: none;
		border-radius: 0;

		&:hover {
			opacity: 1;
			box-shadow: none;
		}
	}

	.tm_pb_module #email {
		width: 100%;
	}

	.tm_pb_section {
		z-index: 1;
	}

	.tm_pb_fullwidth_section {
		z-index: 5;
	}

	.pagination {
		&:before,
		&:after {
			visibility: hidden;
		}

		width: 100%;

		a {
			width: auto;
			border: none;
			background: transparent;
		}
	}

	article .tm_pb_text_color_light {
		a {
			color: #fff;

			&:visited,
			&:hover {
				color: #fff;
			}
		}

		blockquote {
			color: #fff;
		}

		color: #fff;
	}

	.tm_pb_module {
		li {
			list-style: none;
		}

		ul {
			margin: 0;
		}
	}

	ul.tm_pb_module {
		margin: 0;
	}

	.tm_pb_module {
		a {
			text-decoration: none;

			&:hover {
				text-decoration: none;
			}
		}
	}

	.tm_pb_section {
		margin-bottom: 0;
	}

	.tm_pb_module .column {
		padding: 0;
	}

	.tm_pb_module {

		a:focus {
			outline: none;
		}

		span.percent-value {
			font-size: inherit;
		}
	}

	hr.tm_pb_module {
		background-color: transparent;
		background-image: none;
		margin: 0;
		padding: 0;
	}

	.tm_pb_module .hentry.has-post-thumbnail:first-child {
		margin-top: 0;
	}

	.format-quote.hentry {
		padding: 0;
	}

	.tm-bg-layout-dark {
		text-shadow: none;
		color: inherit;
	}

	.tm_pb_widget_area {
		max-width: 100%;

		#searchform {
			#s {
				word-wrap: break-word;
				box-sizing: border-box;
			}

			word-wrap: break-word;
			box-sizing: border-box;
		}

		input.search-field,
		* {
			max-width: 100%;
			word-wrap: break-word;
			box-sizing: border-box;
		}

		.widget,
		.widget-box,
		.widget-container,
		.widget-wrapper,
		.fwidget,
		.sb-widget,
		.enigma_sidebar_widget {
			color: inherit;
		}

		.widgettitle:before {
			display: none;
		}

		img {
			max-width: 100% !important;
		}

		.enigma_sidebar_widget ul {
			li a {
				display: inline-block;
				margin-left: 0;
				padding-left: 0;
			}

			ul li:last-child {
				padding-bottom: 0;
			}
		}

		.widget_search {
			.themeform.searchform div:after,
			form:before {
				display: none;
			}

			label,
			fieldset,
			.input-group {
				display: block;
				max-width: 100% !important;
			}

		}

		.widget_search {
			.search-submit:hover,
			input[type="submit"]:hover {
				background: #ddd;
			}

			button.search-submit {
				.screen-reader-text {
					display: inline-block;
					clip: auto;
					width: auto;
					height: auto;
					position: relative !important;
					line-height: normal;
					color: #666;
				}

				&:before {
					display: none;
				}
			}

			form {
				&.searchform #search-button-box,
				&.form-search .input-group-btn {
					position: absolute;
					top: 0;
					right: 0;
					width: 80px;
					height: 40px;
					z-index: 12;
				}
			}

			&.tm-no-submit-button form {
				&.searchform #search-button-box,
				&.form-search .input-group-btn {
					position: relative !important;
				}
			}

			&.tm-narrow-wrapper form {
				&.searchform #search-button-box,
				&.form-search .input-group-btn {
					position: relative !important;
				}
			}

			.seach_section fieldset {
				padding: 0;
				margin: 0;

				.searchtext,
				.searchsub {
					padding: 0;
					background: none;
				}
			}

			> form > div > .screen-reader-text[for="s"],
			.assistive-text {
				display: none;
			}
		}

		.enigma_sidebar_widget {
			.input-group {
				display: block;
			}

			#searchform .input-group-btn {
				position: absolute;
				top: 0;
				right: 0;
				z-index: 5;
				width: 80px;
			}
		}

		.widget_search {
			> form > .input-group > span.input-group-btn,
			.large-2,
			.small-2 {
				position: absolute;
				top: 0;
				right: 0;
				z-index: 5;
				width: 80px;
			}

			&.tm-no-submit-button > form > .input-group > span.input-group-btn,
			&.tm-narrow-wrapper > form > .input-group > span.input-group-btn {
				position: relative !important;
			}

			table.searchform td {
				&.searchfield {
					width: auto;
					border: none;
				}

				&.searchbutton {
					border: none;
					background: transparent;
				}
			}

			.large-10,
			.small-10 {
				width: 100%;
			}

			div.search-field {
				border: none !important;
				padding: 0 !important;
			}

			#searchform:after {
				display: none;
			}
		}

		#calendar_wrap {
			width: 100%;
		}

		.widget_calendar table,
		#wp-calendar {
			table-layout: fixed;
			width: 100%;
			margin: 0;
		}

		.widget_calendar table {
			th,
			td {
				background: transparent;
			}
		}

		.widget_nav_menu {
			ul {
				display: block;

				li {
					display: block;
				}
			}

			.menu {
				font-family: inherit;

				li > ul:before {
					display: none;
				}
			}

			.menu-item-has-children > a:after {
				display: none;
			}
		}
	}

	.tm_pb_fullwidth_header .tm_pb_fullwidth_header_container {
		float: none;
	}

	.tm_quote_content blockquote {
		background-color: transparent !important;
	}

	.tm_pb_bg_layout_dark {
		h1 a,
		h2 a,
		h3 a,
		h4 a,
		h5 a,
		h6 a,
		.widget {
			color: inherit !important;
		}
	}

	.fullwidth-menu-nav {
		padding: 0 5px;
		margin-bottom: 0;
		overflow: visible !important;
		background: transparent;
		border: none;
	}

	.fullwidth-menu {
		a {
			padding-top: 0;
			color: inherit !important;
			background: transparent;

			&:hover {
				background: inherit;
			}
		}

		&.nav {
			li {
				float: none;

				a {
					float: none;
				}

				ul {
					display: block;
					-moz-border-radius: 0;
					-webkit-border-radius: 0;
					border-radius: 0;
					border-left: none;
					border-right: none;
					border-bottom: none;
				}

				li {
					padding: 0 20px !important;
					border-bottom: none;
					background: inherit;

					a {
						padding: 6px 20px !important;
						border: none;
					}
				}
			}

			> li > ul {
				top: auto;
			}
		}
	}

	.tm_pb_fullwidth_menu {
		.mobile_nav {
			display: block;

			> span {
				width: auto;
				height: auto;
				top: auto;
				right: auto;
			}

			&.opened > span {
				-moz-transform: none;
				-webkit-transform: none;
				-o-transform: none;
				transform: none;
			}
		}

		.tm_mobile_menu {
			li {
				> a {
					color: inherit !important;
					background: none;
					width: 100%;
					padding: 10px 5% !important;
				}

				li {
					padding-left: 5% !important;
				}
			}

			> .menu-item-has-children > a {
				background-color: rgba(0, 0, 0, 0.03);
			}
		}
	}

	* {
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
	}

	.clearfix:after {
		visibility: hidden;
		display: block;
		font-size: 0;
		content: " ";
		clear: both;
		height: 0;
	}

	* {
		html .clearfix,
		&:first-child + html .clearfix {
			zoom: 1;
		}
	}

	.tm_pb_slide_description,
	.tm_pb_pricing_content,
	.tm_pb_text,
	.product,
	.tm_pb_widget {
		word-wrap: break-word;
	}

	.tm_quote_content,
	.tm_link_content {
		background-color: #2EA3F2;
	}

	.tm_pb_column {
		background-size: cover;
		background-position: center;

		&.tm_pb_section_parallax {
			position: relative;
		}
	}

	.tm_pb_more_button:hover:after {
		opacity: 1;
		margin-left: 0;
	}


	.fullwidth-menu {
		li {
			display: inline-block;
			font-size: 14px;
			padding-right: 22px;
		}

		> li:last-child {
			padding-right: 0;
		}

		a {
			color: rgba(0, 0, 0, 0.6);
			text-decoration: none;
			display: block;
			position: relative;
			-moz-transition: all 0.4s ease-in-out;
			-webkit-transition: all 0.4s ease-in-out;
			transition: all 0.4s ease-in-out;

			&:hover {
				opacity: 0.7;
				-moz-transition: all 0.4s ease-in-out;
				-webkit-transition: all 0.4s ease-in-out;
				transition: all 0.4s ease-in-out;
			}
		}

		li > a {
			padding-bottom: 29px;
			word-wrap: break-word;
		}
	}

	.tm_pb_fullwidth_image {
		position: relative;
		line-height: 0;

		img {
			width: 100%;
		}
	}

	.tm_pb_login_form form,
	.tm_pb_feedburner_form form {
		text-align: left;
	}

	.tm_pb_no_bg {
		padding: 0 !important;
	}
}

#tm_builder_outer_content {

	.tm_pb_inline_icon:before {
		@include fa-icon();
		content: attr(data-icon);
	}

	.tm_overlay {
		&.tm_pb_inline_icon:before {
			content: attr(data-icon);
		}

		z-index: 3;
		position: absolute;
		top: 0;
		left: 0;
		display: block;
		width: 100%;
		height: 100%;
		background: rgba(255, 255, 255, 0.9);
		opacity: 0;
		-moz-transition: all 0.3s;
		-webkit-transition: all 0.3s;
		transition: all 0.3s;
		border: 1px solid #e5e5e5;
		box-sizing: border-box;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
		-webkit-backface-visibility: hidden;
		-moz-backface-visibility: hidden;
		-o-backface-visibility: hidden;
		backface-visibility: hidden;
		-webkit-transform: translate3d(0, 0, 0);

		&:before {
			content: "\e050";
			position: absolute;
			top: 55%;
			left: 50%;
			margin: -14px 0 0 -14px;
			font-size: 32px;
			-moz-transition: all 0.4s;
			-webkit-transition: all 0.4s;
			transition: all 0.4s;
		}

		&:hover:before {
			top: 50%;
		}
	}

	.tm_pb_has_overlay:hover .tm_overlay {
		opacity: 1;
	}

	.tm_pb_fullwidth_menu .fullwidth-menu-nav {
		float: none;

		> ul {
			float: none;
			padding: 28px 0 0 !important;
			line-height: 1.7em;

			> li.mega-menu > ul {
				top: 76px;
			}

			ul {
				padding: 20px 0;
				text-align: left;
			}
		}
	}

	.fullwidth-menu li li.menu-item-has-children > a:first-child:after {
		top: 12px;
	}

	.tm_pb_fullwidth_menu .fullwidth-menu-nav > ul.upwards {
		padding: 0 0 29px !important;

		> li {
			padding-top: 28px;

			> a {
				padding-bottom: 0;
			}
		}

		li {
			ul {
				bottom: 100%;
				top: initial;
				border-bottom-width: 3px;
				border-bottom-style: solid;
				border-top: none;
				border-bottom-color: #2EA3F2;
				-moz-box-shadow: 2px -2px 5px rgba(0, 0, 0, 0.1);
				-webkit-box-shadow: 2px -2px 5px rgba(0, 0, 0, 0.1);
				box-shadow: 2px -2px 5px rgba(0, 0, 0, 0.1);

				li ul {
					bottom: -23px;
				}
			}

			&.mega-menu {
				ul ul {
					bottom: 0;
					top: initial;
					border: none;
				}

				> ul {
					bottom: 76px;
				}
			}
		}
	}

	.tm_pb_forgot_password {
		font-size: 12px;
		margin-top: -5px;

		a {
			color: #fff;
			text-decoration: underline;
		}
	}

	.tm_quote_content,
	.tm_link_content,
	.tm_audio_content,
	.tm_pb_audio_module_content {
		text-align: center;
		word-wrap: break-word;
		position: relative;
	}

	.tm_link_content,
	.tm_audio_content {
		padding: 50px 60px;
	}

	.tm_quote_content {
		padding: 50px 60px;

		blockquote {
			p,
			cite {
				color: #fff !important;
			}
		}
	}

	.tm_link_content {
		h2,
		a.tm_link_main_url {
			color: #fff !important;
		}
	}

	.tm_quote_main_link {
		position: absolute;
		text-indent: -9999px;
		width: 100%;
		height: 100%;
		display: block;
		top: 0;
		left: 0;
	}

	.tm_quote_content blockquote {
		padding: 0;
		margin: 0;
		border: none;

		p {
			margin-top: 0;
		}
	}

	.tm_link_content h2,
	.tm_audio_content h2,
	.tm_pb_audio_module_content h2 {
		margin-top: 0;
	}

	.tm_quote_content blockquote p,
	.tm_link_content h2 {
		line-height: 44px;
	}

	.tm_audio_content h2 {
		line-height: 44px;
		margin-bottom: 20px;
	}

	.tm_quote_content blockquote cite,
	.tm_link_content a.tm_link_main_url {
		font-size: 18px;
		font-weight: 200;
	}

	.tm_quote_content blockquote cite {
		font-style: normal;
	}

	.tm_pb_column_1_2 .tm_audio_content h2,
	.tm_pb_column_1_3 .tm_audio_content h2,
	.tm_pb_column_3_8 .tm_audio_content h2,
	.tm_pb_column_1_4 .tm_audio_content h2,
	.tm_pb_blog_grid .tm_audio_content h2 {
		margin-bottom: 9px;
		margin-top: 0;
	}

	.tm_pb_column_2_3 {
		.tm_quote_content {
			padding: 50px 42px 45px;
		}

		.tm_link_content,
		.tm_audio_content,
		.tm_pb_audio_module_content {
			padding: 40px 40px 45px;
		}
	}

	.tm_pb_column_1_2 {
		.tm_quote_content,
		.tm_link_content,
		.tm_audio_content {
			padding: 35px 40px;
		}

		.tm_pb_audio_module_content {
			padding: 40px 40px 35px;
		}

		.tm_quote_content blockquote p {
			font-size: 26px;
			line-height: 32px;
		}

		.tm_link_content h2,
		.tm_audio_content h2 {
			line-height: 32px;
		}

		.tm_quote_content blockquote cite,
		.tm_link_content a.tm_link_main_url {
			font-size: 14px;
		}
	}

	.tm_pb_column_1_3 .tm_quote_content,
	.tm_pb_column_3_8 .tm_quote_content,
	.tm_pb_column_1_4 .tm_quote_content,
	.tm_pb_blog_grid .tm_quote_content {
		padding: 35px 30px 32px;
	}

	.tm_pb_column_1_3 .tm_quote_content blockquote p,
	.tm_pb_column_3_8 .tm_quote_content blockquote p,
	.tm_pb_column_1_4 .tm_quote_content blockquote p,
	.tm_pb_blog_grid .tm_quote_content blockquote p,
	.tm_pb_column_1_3 .tm_link_content h2,
	.tm_pb_column_3_8 .tm_link_content h2,
	.tm_pb_column_1_4 .tm_link_content h2,
	.tm_pb_blog_grid .tm_link_content h2,
	.tm_pb_column_1_3 .tm_audio_content h2,
	.tm_pb_column_3_8 .tm_audio_content h2,
	.tm_pb_column_1_4 .tm_audio_content h2,
	.tm_pb_blog_grid .tm_audio_content h2 {
		font-size: 18px;
		line-height: 26px;
	}

	.tm_pb_column_1_3 .tm_quote_content blockquote cite,
	.tm_pb_column_3_8 .tm_quote_content blockquote cite,
	.tm_pb_column_1_4 .tm_quote_content blockquote cite,
	.tm_pb_blog_grid .tm_quote_content blockquote cite,
	.tm_pb_column_1_3 .tm_link_content a.tm_link_main_url,
	.tm_pb_column_3_8 .tm_link_content a.tm_link_main_url,
	.tm_pb_column_1_4 .tm_link_content a.tm_link_main_url {
		font-size: 14px;
	}

	.tm_pb_blog_grid {
		.tm_link_content {
			a.tm_link_main_url {
				font-size: 14px;
			}

			margin: -20px -20px 19px;
		}

		.tm_quote_content {
			margin: -20px -20px 19px;
		}
	}

	.nav li li {
		padding: 0 20px;
		margin: 0;
	}

	.fullwidth-menu li li a {
		padding: 6px 20px;
		width: 200px;
	}

	.nav li {
		position: relative;
		line-height: 1em;

		li {
			position: relative;
			line-height: 2em;
		}

		ul {
			position: absolute;
			padding: 20px 0;
			z-index: 9999;
			width: 240px;
			background: #fff;
			visibility: hidden;
			opacity: 0;
			border-top: 3px solid #2EA3F2;
			box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
			-moz-box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
			-webkit-box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
			-webkit-transform: translate3d(0, 0, 0);
			text-align: left;
		}

		&.tm-hover > ul {
			visibility: visible;
		}

		&:hover > ul {
			opacity: 1;
			visibility: visible;
		}

		li ul {
			z-index: 1000;
			top: -23px;
			left: 240px;
		}

		&.tm-reverse-direction-nav li ul {
			left: auto;
			right: 240px;
		}

		&:hover {
			visibility: inherit;

			/* fixes IE7 'sticky bug' */
		}

		li a {
			font-size: 14px;
			-moz-transition: all 0.2s ease-in-out;
			-webkit-transition: all 0.2s ease-in-out;
			transition: all 0.2s ease-in-out;
		}
	}

	.tm_mobile_menu li a {
		font-size: 14px;
		-moz-transition: all 0.2s ease-in-out;
		-webkit-transition: all 0.2s ease-in-out;
		transition: all 0.2s ease-in-out;
	}

	.nav ul li a:hover,
	.tm_mobile_menu li a:hover {
		background-color: rgba(0, 0, 0, 0.03);
		opacity: 0.7;
	}

	.fullwidth-menu {
		.menu-item-has-children > a:first-child {

			padding-right: 20px;
		}

		li li.menu-item-has-children > a:first-child:after {
			right: 20px;
			top: 6px;
		}
	}

	.fullwidth-menu-nav li.mega-menu {
		position: inherit;

		> ul {
			padding: 30px 20px;
			position: absolute !important;
			width: 100%;
			left: 0 !important;
		}

		ul li {
			margin: 0;
			float: left !important;
			display: block !important;
			padding: 0 !important;
		}

		li {
			> ul {
				-webkit-animation: none !important;
				-moz-animation: none !important;
				-o-animation: none !important;
				animation: none !important;
				padding: 0;
				border: none;
				left: auto;
				top: auto;
				width: 240px !important;
				position: relative;
				box-shadow: none;
				-webkit-box-shadow: none;
			}

			ul {
				visibility: visible;
				opacity: 1;
				display: none;
			}
		}

		&.tm-hover li ul {
			display: block;
		}

		&:hover > ul {
			opacity: 1 !important;
			visibility: visible !important;
		}

		> ul > li > a:first-child {
			padding-top: 0 !important;
			font-weight: bold;
			border-bottom: 1px solid rgba(0, 0, 0, 0.03);

			&:hover {
				background-color: transparent !important;
			}
		}

		li > a {
			width: 200px !important;
		}

		&.mega-menu-parent li {
			li {
				width: 100% !important;
			}

			> {
				a {
					width: 100% !important;
				}

				.sub-menu {
					float: left;
					width: 100% !important;
				}
			}
		}

		> ul > li {
			width: 25%;
			margin: 0;
		}

		&.mega-menu-parent-3 > ul > li {
			width: 33.33%;
		}

		&.mega-menu-parent-2 > ul > li {
			width: 50%;
		}

		&.mega-menu-parent-1 > ul > li {
			width: 100%;
		}
	}

	.tm_pb_fullwidth_menu li.mega-menu .menu-item-has-children > a:first-child:after {
		display: none;
	}

	.tm_fullwidth_nav #top-menu li.mega-menu > ul {
		width: auto;
		left: 30px !important;
		right: 30px !important;
	}

	.tm_mobile_menu {
		position: absolute;
		left: 0;
		padding: 5%;
		background: #fff;
		width: 100%;
		visibility: visible;
		opacity: 1;
		display: none;
		z-index: 9999;
		border-top: 3px solid #2EA3F2;
		box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
		-moz-box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
		-webkit-box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
	}

	#main-header .tm_mobile_menu li ul,
	.tm_pb_fullwidth_menu .tm_mobile_menu li ul {
		visibility: visible !important;
		display: block !important;
		padding-left: 10px;
	}

	.tm_mobile_menu {
		li {
			li {
				padding-left: 5%;
			}

			a {
				border-bottom: 1px solid rgba(0, 0, 0, 0.03);
				color: #666;
				padding: 10px 5%;
				display: block;
			}
		}

		.menu-item-has-children > a {
			font-weight: bold;
			background-color: rgba(0, 0, 0, 0.03);
		}

		li .menu-item-has-children > a {
			background-color: transparent;
		}
	}

	.tm_mobile_nav_menu {
		float: right;
		display: none;
	}

	.mobile_menu_bar {
		position: relative;
		display: block;
		line-height: 0;

		&:before {
			content: "\61";
			font-size: 32px;
			left: 0;
			position: relative;
			top: 0;
			cursor: pointer;
		}
	}

	.mobile_nav .select_page {
		display: none;
	}

	.tm_pb_slide_video {
		position: absolute;
		top: 50%;
		bottom: auto;
	}

	.tm_pb_slides:after,
	.tm_pb_row:after,
	.tm_pb_row_inner:after {
		content: ".";
		display: block;
		clear: both;
		visibility: hidden;
		line-height: 0;
		height: 0;
		width: 0;
	}

	.format-gallery .tm_pb_slider .tm_pb_slide,
	.tm_pb_slider_no_shadow .tm_pb_slide {
		-webkit-box-shadow: none;
		-moz-box-shadow: none;
		box-shadow: none;
	}

	.format-gallery .tm_pb_slider.gallery-not-found .tm_pb_slide {
		-webkit-box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.1);
		-moz-box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.1);
		box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.1);
	}

	.tm_pb_section {
		background-position: center;
		background-repeat: no-repeat;
		background-size: 100%;
		background-size: cover;
	}

	.format-gallery {
		.tm-pb-arrow-prev,
		.tm-pb-arrow-next {
			color: #fff;
		}

		.tm-pb-controllers a {
			background-color: rgba(255, 255, 255, 0.5);
		}

		.tm_pb_slider:hover {
			.tm-pb-arrow-prev {
				left: 0;
			}

			.tm-pb-arrow-next {
				right: 0;
			}
		}
	}

	.tm-pb-controllers {
		position: absolute;
		bottom: 20px;
		left: 0;
		width: 100%;
		text-align: center;
		z-index: 10;
	}

	.format-gallery .tm-pb-controllers {
		bottom: 0;
	}

	.tm-pb-controllers a {
		display: inline-block;
		background-color: rgba(255, 255, 255, 0.5);
		text-indent: -9999px;
		-moz-border-radius: 7px;
		-webkit-border-radius: 7px;
		border-radius: 7px;
		width: 7px;
		height: 7px;
		margin-right: 10px;
	}

	.tm-pb-controllers {
		a:last-child {
			margin-right: 0;
		}

		.tm-pb-active-control {
			background-color: #fff;
		}
	}

	.tm_pb_more_button {
		color: inherit;
		text-shadow: none;
		text-decoration: none;
		display: inline-block;
		margin-top: 20px;
	}

	.tm_parallax_bg {
		background-repeat: no-repeat;
		background-position: top center;
		background-size: cover;
		position: absolute;
		bottom: 0;
		left: 0;
		width: 100%;
		height: 100%;
	}

	.tm_pb_section_parallax,
	.tm_pb_slider_parallax {
		overflow: hidden;
	}

	.tm_pb_section_parallax .tm_pb_parallax_css,
	.tm_pb_slides .tm_parallax_bg.tm_pb_parallax_css {
		background-attachment: fixed;
	}

	.tm_pb_section_parallax {
		&.tm_pb_row {
			.tm_pb_column,
			.tm_pb_module {
				z-index: 9;
				position: relative;
			}
		}

		&.tm_pb_column .tm_pb_module {
			z-index: 9;
			position: relative;
		}
	}

	.tm_mobile_device {
		.tm-waypoint,
		.tm_pb_counter_amount {
			opacity: 1 !important;
			-webkit-animation: none !important;
			-moz-animation: none !important;
			-o-animation: none !important;
			animation: none !important;
		}

		.tm_pb_slider_parallax .tm_pb_slide,
		.tm_pb_section_parallax .tm_pb_parallax_css,
		.tm_pb_slides .tm_parallax_bg.tm_pb_parallax_css {
			background-attachment: scroll;
		}
	}

	.tm_pb_preload {
		> div,
		.tm_pb_section_video_bg {
			visibility: hidden;
		}

		position: relative;
		background: #464646 !important;

		&:before {
			content: "";
			position: absolute;
			top: 50%;
			left: 50%;
			background: url("images/preloader.gif") no-repeat;
			-moz-border-radius: 32px;
			-webkit-border-radius: 32px;
			border-radius: 32px;
			width: 32px;
			height: 32px;
			margin: -16px 0 0 -16px;
		}
	}

	.tm_pb_text p:last-of-type {
		padding-bottom: 0;
	}

	.tm_pb_text_align_left {
		text-align: left;
	}

	.tm_pb_text_align_center {
		text-align: center;
		margin: auto;
	}

	.tm_pb_text_align_right {
		text-align: right;
	}

	.tm_pb_text_align_justified {
		text-align: justify;
	}

	.tm_pb_section {
		position: relative;
		background-color: #fff;
	}

	.tm_section_transparent {
		background-color: transparent;
	}

	.tm_pb_fullwidth_section {
		padding: 0;
	}

	.tm_pb_inner_shadow {
		-webkit-box-shadow: inset 0 0 7px rgba(0, 0, 0, 0.07);
		-moz-box-shadow: inset 0 0 7px rgba(0, 0, 0, 0.07);
		box-shadow: inset 0 0 7px rgba(0, 0, 0, 0.07);
	}

	.tm_pb_section_video {
		overflow: hidden;
	}

	.tm_pb_section_video_bg {
		visibility: visible;
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-color: #222;

		.mejs-controls,
		.mejs-overlay-play {
			display: none !important;
		}

		embed,
		iframe,
		object,
		video {
			max-width: none;
		}

		.mejs-video {
			left: 50%;
			position: absolute;
		}

		.mejs-overlay-loading {
			display: none !important;
		}
	}

	body.iphone .tm_pb_section_video_bg video::-webkit-media-controls-start-playback-button {
		display: none !important;
		-webkit-appearance: none;
	}

	.tm_pb_row.tm_pb_row_empty,
	.tm_pb_row_inner:nth-of-type(n+2).tm_pb_row_empty {
		display: none;
	}

	.tm_pb_column.tm_pb_column_empty {
		min-height: 1px;
	}

	.tm_pb_row_inner {
		width: 100%;
	}

	.tm_pb_space {
		border: none;
	}

	.tm_pb_fullwidth_header {
		padding: 50px 0;
		position: relative;
		background-repeat: no-repeat;
		background-position: center center;
		background-size: cover;

		p {
			padding-bottom: 0;
		}
	}

	.tm_pb_fullwidth_header_subhead {
		display: block;
	}

	.tm_pb_fullscreen {
		padding: 0;
	}

	.tm_pb_fullwidth_header .tm_pb_fullwidth_header_container {
		position: relative;
		z-index: 3;
		width: 80%;
		max-width: 1080px;
		margin-left: auto;
		margin-right: auto;
	}

	.tm_pb_fullscreen .tm_pb_fullwidth_header_container {
		min-height: 100vh;
		width: 80%;
		max-width: none;
	}

	.tm_pb_fullwidth_header .tm_pb_fullwidth_header_container.center {
		display: -webkit-flex;
		display: -moz-flex;
		display: -ms-flex;
		display: flex;
		-webkit-flex-flow: row wrap;
		-moz-flex-flow: row wrap;
		-ms-flex-flow: row wrap;
		flex-flow: row wrap;
		-webkit-justify-content: center;
		-moz-justify-content: center;
		-ms-justify-content: center;
		justify-content: center;
	}

	.tm_pb_fullscreen .tm_pb_fullwidth_header_container.center {
		&.bottom-bottom {
			-webkit-flex-flow: column wrap;
			-moz-flex-flow: column wrap;
			-ms-flex-flow: column wrap;
			flex-flow: column wrap;
			-webkit-justify-content: flex-end;
			-moz-justify-content: flex-end;
			-ms-justify-content: flex-end;
			justify-content: flex-end;
		}

		&.center-center {
			-webkit-flex-flow: column wrap;
			-moz-flex-flow: column wrap;
			-ms-flex-flow: column wrap;
			flex-flow: column wrap;
		}

		&.center-bottom .header-content-container {
			display: -webkit-flex;
			display: -moz-flex;
			display: -ms-flex;
			display: flex;
			-webkit-flex-flow: row wrap;
			-moz-flex-flow: row wrap;
			-ms-flex-flow: row wrap;
			flex-flow: row wrap;

			.header-content {
				-webkit-align-self: center;
				-moz-align-self: center;
				-ms-align-self: center;
				align-self: center;
			}
		}

		&.bottom-center .header-image-container.center {
			-webkit-align-self: flex-start;
			-moz-align-self: flex-start;
			-ms-align-self: flex-start;
			align-self: flex-start;
		}
	}

	.tm_pb_fullwidth_header .tm_pb_fullwidth_header_container.center {
		.header-content-container,
		.header-image-container {
			width: 100%;
			-webkit-align-self: center;
			-moz-align-self: center;
			-ms-align-self: center;
			align-self: center;
		}

		.header-content-container.center,
		.header-image-container.center {
			-webkit-align-self: center;
			-moz-align-self: center;
			-ms-align-self: center;
			align-self: center;
		}
	}

	.tm_pb_fullscreen .tm_pb_fullwidth_header_container.center {
		.header-content-container.bottom,
		.header-image-container.bottom {
			-webkit-align-self: flex-end;
			-moz-align-self: flex-end;
			-ms-align-self: flex-end;
			align-self: flex-end;
		}
	}

	.tm_pb_fullwidth_header {
		.tm_pb_fullwidth_header_container {
			&.left {
				display: -webkit-flex;
				display: -moz-flex;
				display: -ms-flexbox;
				display: flex;
				-webkit-flex-flow: row;
				-moz-flex-flow: row;
				-ms-flex-flow: row;
				-ms-flex-wrap: wrap;
				flex-flow: row;
			}

			&.right {
				display: -webkit-flex;
				display: -moz-flex;
				display: -ms-flexbox;
				display: flex;
				-webkit-flex-flow: row-reverse;
				-moz-flex-flow: row-reverse;
				-ms-flex-flow: row-reverse;
				-ms-flex-wrap: wrap;
				flex-flow: row-reverse;
			}

			&.left .header-content-container,
			&.right .header-content-container {
				width: 100%;
			}
		}

		&.tm_pb_header_with_image .tm_pb_fullwidth_header_container.left .header-content-container,
		.tm_pb_fullwidth_header_container.left .header-image-container,
		&.tm_pb_header_with_image .tm_pb_fullwidth_header_container.right .header-content-container {
			width: 50%;
			-webkit-align-self: center;
			-moz-align-self: center;
			-ms-align-self: center;
			align-self: center;
		}

		.tm_pb_fullwidth_header_container {
			&.right .header-image-container {
				width: 50%;
				-webkit-align-self: center;
				-moz-align-self: center;
				-ms-align-self: center;
				align-self: center;
			}

			&.left {
				.header-content-container.center,
				.header-image-container.center {
					-webkit-align-self: center;
					-moz-align-self: center;
					-ms-align-self: center;
					align-self: center;
				}
			}

			&.right {
				.header-content-container.center,
				.header-image-container.center {
					-webkit-align-self: center;
					-moz-align-self: center;
					-ms-align-self: center;
					align-self: center;
				}
			}
		}
	}

	.tm_pb_fullscreen .tm_pb_fullwidth_header_container {
		&.left {
			.header-content-container.bottom,
			.header-image-container.bottom {
				-webkit-align-self: flex-end;
				-moz-align-self: flex-end;
				-ms-align-self: flex-end;
				align-self: flex-end;
			}
		}

		&.right {
			.header-content-container.bottom,
			.header-image-container.bottom {
				-webkit-align-self: flex-end;
				-moz-align-self: flex-end;
				-ms-align-self: flex-end;
				align-self: flex-end;
			}
		}
	}

	.tm_pb_fullwidth_header .tm_pb_fullwidth_header_container {
		&.left .header-content {
			text-align: left;
			margin-left: 4%;
			margin-right: 2%;
		}

		&.right .header-content {
			text-align: right;
			margin-right: 4%;
			margin-left: 2%;
			float: right;
		}
	}

	.tm_pb_fullscreen .tm_pb_fullwidth_header_container {
		&.left .header-content-container.bottom,
		&.right .header-content-container.bottom {
			margin-bottom: 80px;
		}
	}

	.tm_pb_fullwidth_header {
		.header-content {
			padding: 10px;
			text-align: center;
		}

		.tm_pb_fullwidth_header_container.center .header-content {
			margin: 20px auto;
			width: 80%;
			max-width: 800px;
		}

		.header-image {
			text-align: center;
			margin-left: 2%;
			margin-right: 2%;
			line-height: 0;
		}

		.tm_pb_fullwidth_header_container {
			.header-content a.tm_pb_button {
				margin-top: 20px;
				display: inline-block;
			}

			.tm_pb_button_one {
				margin-right: 15px;
			}
		}

		.tm_pb_fullwidth_header_overlay {
			content: "";
			position: absolute;
			top: 0;
			left: 0;
			bottom: 0;
			right: 0;
			z-index: 2;
			pointer-events: none;
		}

		.tm_pb_parallax_css {
			background-repeat: no-repeat;
			background-position: top center;
			background-size: cover;
			background-attachment: fixed;
			position: absolute;
			width: 100%;
			height: 100%;
			overflow: hidden;
		}

		.tm_pb_fullwidth_header_scroll {
			width: 100%;
			min-height: 30px;
			text-align: center;
			padding-top: 10px;
			padding-bottom: 20px;
			margin: 0 auto;
			position: absolute;
			z-index: 3;
			bottom: 0;

			a {
				display: inline-block;

				.tm-pb-icon {
					color: #FFF;
					font-size: 3.5em;
				}
			}
		}
	}

	.tm_pb_counters,
	.tm_pb_pricing {
		list-style: none !important;
		padding: 0 !important;
		line-height: inherit !important;
	}

	.tm_pb_widget {
		float: left;
		max-width: 100%;

		a {
			text-decoration: none;
			color: #666;
		}

		li a:hover {
			color: #82c0c7;
		}

		ul li {
			margin-bottom: 0.5em;

			ul li {
				margin-left: 15px;
			}
		}

		select {
			width: 100%;
			height: 28px;
		}
	}

	.tm_pb_widget_area .tm_pb_widget a {
		color: inherit;
	}

	.tm_pb_bg_layout_light .tm_pb_widget li a {
		color: #666;
	}

	.tm_pb_bg_layout_dark .tm_pb_widget li a {
		color: inherit;
	}

	.tm_pb_title_container h1 {
		font-size: 26px;
		line-height: 1em;
	}

	.tm_pb_column_1_3 .tm_pb_title_container h1,
	.tm_pb_column_1_4 .tm_pb_title_container h1 {
		font-size: 18px;
	}

	.tm_pb_title_featured_container img {
		width: 100%;
	}

	.tm_pb_title_container {
		display: inline-block;
		max-width: 100%;
		word-wrap: break-word;
		z-index: 98;
		position: relative;
	}

	.tm_pb_title_featured_container {
		line-height: 0;
	}

	p.tm_pb_title_meta_container {
		padding-bottom: 1em;
	}

	.tm_pb_fullwidth_section {
		.tm_pb_post_title.tm_pb_featured_bg .tm_pb_title_container {
			padding-bottom: 0;
		}

		.tm_pb_title_container,
		.tm_pb_title_featured_container {
			width: 80%;
			max-width: 1080px;
			margin: auto;
			display: block;
		}
	}

	.single {
		&.tm_right_sidebar .tm_pb_fullwidth_section .tm_pb_title_container,
		.tm_pb_fullwidth_section .tm_pb_title_featured_container {
			width: 100%;
			max-width: 100%;
			padding-top: 0;
		}
	}

	.tm_pb_module.tm_pb_has_overlay,
	article.tm_pb_has_overlay .tm_pb_blog_image_container {
		position: relative;
	}

	.tm_pb_module.tm_pb_has_overlay .tm_overlay,
	article.tm_pb_has_overlay {
		border: none;
	}

	.form-submit {
		float: right;

		input {
			display: block;
			cursor: pointer;
		}
	}

	#reply-title small {
		display: block;
		font-size: 14px;
		font-weight: 400;
	}

	.tm-waypoint {
		opacity: 0;
	}

	.tm_pb_counters,
	.tm_pb_animation_off {
		opacity: 1;
	}

	.tm_pb_animation_left.tm-animated {
		opacity: 1;
		-webkit-animation: fadeLeft 1s 1 cubic-bezier(0.77, 0, 0.175, 1);
		-moz-animation: fadeLeft 1s 1 cubic-bezier(0.77, 0, 0.175, 1);
		-o-animation: fadeLeft 1s 1 cubic-bezier(0.77, 0, 0.175, 1);
		animation: fadeLeft 1s 1 cubic-bezier(0.77, 0, 0.175, 1);
	}

	.tm_pb_animation_right.tm-animated {
		opacity: 1;
		-webkit-animation: fadeRight 1s 1 cubic-bezier(0.77, 0, 0.175, 1);
		-moz-animation: fadeRight 1s 1 cubic-bezier(0.77, 0, 0.175, 1);
		-o-animation: fadeRight 1s 1 cubic-bezier(0.77, 0, 0.175, 1);
		animation: fadeRight 1s 1 cubic-bezier(0.77, 0, 0.175, 1);
	}

	.tm_pb_animation_top.tm-animated {
		opacity: 1;
		-webkit-animation: fadeTop 1s 1 cubic-bezier(0.77, 0, 0.175, 1);
		-moz-animation: fadeTop 1s 1 cubic-bezier(0.77, 0, 0.175, 1);
		-o-animation: fadeTop 1s 1 cubic-bezier(0.77, 0, 0.175, 1);
		animation: fadeTop 1s 1 cubic-bezier(0.77, 0, 0.175, 1);
	}

	.tm_pb_animation_bottom.tm-animated {
		opacity: 1;
		-webkit-animation: fadeBottom 1s 1 cubic-bezier(0.77, 0, 0.175, 1);
		-moz-animation: fadeBottom 1s 1 cubic-bezier(0.77, 0, 0.175, 1);
		-o-animation: fadeBottom 1s 1 cubic-bezier(0.77, 0, 0.175, 1);
		animation: fadeBottom 1s 1 cubic-bezier(0.77, 0, 0.175, 1);
	}

	.tm_pb_animation_fade_in.tm-animated {
		opacity: 1;
		-webkit-animation: fadeIn 1s 1 cubic-bezier(0.77, 0, 0.175, 1);
		-moz-animation: fadeIn 1s 1 cubic-bezier(0.77, 0, 0.175, 1);
		-o-animation: fadeIn 1s 1 cubic-bezier(0.77, 0, 0.175, 1);
		animation: fadeIn 1s 1 cubic-bezier(0.77, 0, 0.175, 1);
	}

	.single {
		&.tm_full_width_page .tm_pb_row,
		&.tm_full_width_portfolio_page .tm_pb_row {
			width: 80%;
		}
	}
}
