/*  
Theme Name: Themify Flow
Theme URI: http://themifyflow.com
Version: 1.2.1
Description: A free WordPress framework to create responsive themes within WordPress admin without coding any PHP or CSS. Created by <a href="http://www.themifyflow.com">Themify Flow</a>.
Author: Themify
Author URI: http://www.themifyflow.com
License: GNU General Public License v2.0
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Copyright: (c) Themify.
Tags: themify, builder, featured-images, translation-ready, custom-menu, sidebar
Text Domain: themify-flow
---------

DO NOT EDIT THIS FILE.

If you need to overwrite the CSS styling, create a child theme style.css or use the built-in Styling panel.

*/

/************************************************************************************
RESET
*************************************************************************************/
html, body, address, blockquote, div, dl, form, h1, h2, h3, h4, h5, h6, ol, p, pre, table, ul,
dd, dt, li, tbody, td, tfoot, th, thead, tr, button, del, ins, map, object,
a, abbr, acronym, b, bdo, big, br, cite, code, dfn, em, i, img, kbd, q, samp, small, span,
strong, sub, sup, tt, var, legend, fieldset, figure {
	margin: 0;
	padding: 0;
}

/* set img max-width */
img {
	max-width: 100%;
	height: auto;
}
img, fieldset {
	border: 0;
	outline: none;
}

/* set html5 elements to block */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { 
    display: block;
}

/* audio */
audio {
	max-width: 100%;
}

/* iframes and objects max-width (for embed media) */
iframe, object, embed {
	max-width: 100%;
}

/* set all element box-sizing */
* {
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

/************************************************************************************
GENERAL STYLING
*************************************************************************************/
body {
	background: #fff;
	font: 1em/1.7em Arial, Helvetica, sans-serif;
	word-wrap: break-word;
	color: #000;
}
a {
	outline: none;
}
p {
	margin: 0 0 1.2em;
	padding: 0;
}
small {
	font-size: 87%;
}
blockquote {
	font-size: 1.2em;
	line-height: 1.4em;
	padding: .8em 2em 1em;
	margin: 0 0 1.2em;
	position: relative;
}
blockquote:before {
	content: '\201C';
	font-size: 2.8em;
	position: absolute;
	margin-left: -.65em;
	margin-top: -.2em;
	font-family: times;
	display: block;
	line-height: 1;
}
ins {
	text-decoration: none;
}

/* LIST
================================================ */
ul, ol {
	margin: 0 0 1.4em 1.6em;
	padding: 0;
}
li {
	margin: 0 0 1em 0;
	padding: 0;
}
ol ol,
ol ul,
ul ul,
ul ol {
	margin-top: 1em;
}

/* HEADINGS
================================================ */
h1, h2, h3, h4, h5, h6 {
	line-height: 1.7em;
	margin: 0 0 .4em;
	word-wrap: normal;
}
h1 {
	font-size: 2.62em;
}
h2 {
	font-size: 2.25em;
}
h3 {
	font-size: 1.75em;
}
h4 {
	font-size: 1.25em;
}
h5 {
	font-size: 1.25em;
}
h6 {
	font-size: 1.15em;
}

/* FORM
================================================ */
/* form input */
input, textarea, select, input[type=search], button {
	font-size: 100%;
	font-family: inherit;
	max-width: 100%;
}
textarea, input[type=text], input[type=password], input[type=search], input[type=email], input[type=url], input[type=number], input[type=tel], input[type=date], input[type=datetime], input[type=datetime-local], input[type=month], input[type=time], input[type=week] {
	background: #FFF;
	border: none;
	padding: .5em;
	margin: .4em 0;
	max-width: 100%;
	-webkit-appearance: none;
	border-radius: .1em;
	border: solid 1px rgba(0,0,0,.15);
}
input[type=text], input[type=password], input[type=search], input[type=email], input[type=url], input[type=tel] {
	width: 15em;
}
input[type=number] {
	width: 7em;
}

/* text area */
textarea {
	width: 100%;
	min-height: 8em;
}

/* form button */
input[type=reset], input[type=submit], button {
	background: #838383;
	color: #fff;
	border: none;
	padding: 7px 20px;
	cursor: pointer;
	border-radius: .12em;
}

/************************************************************************************
LAYOUT STRUCTURE
*************************************************************************************/
/* header */
#headerwrap {
	position: relative;
}

/* middlewrap */
#middlewrap {
	clear: both;
}

/* content */
#content {
	width: 68%;
	float: left;
	padding: 70px 0;
	position: relative;
}
.sidebar_none #content {
	width: 100%;
	float: none;
	padding: 0;
}

/* sidebar */
#sidebar {
	width: 26.5%;
	float: right;
	padding: 6% 0;
	position: relative;
}

/* sidebar left */
.sidebar_left #content {
	float: right;
}
.sidebar_left #sidebar {
	float: left;
}

/* footer */
#footerwrap {
	position: relative;
}

/************************************************************************************
ROW & COLUMN
*************************************************************************************/
/* pagewidth & row width */
.pagewidth,
.themify_builder_row .row_inner, /* for themify builder plugin */
.tf_row_inner {
	width: 1160px;
	margin: 0 auto;
}
.themify_builder_row.fullwidth .row_inner, /* for themify builder plugin */
.tf_row_full_width > .tf_row_wrapper > .tf_row_inner {
	width: 100%; /* fullwidth row */
}

.tf_template.sidebar_none .pagewidth {
	width: 100%; /* override pagewidth if it a template is in use to make fullwidth layout */
}

/* col */
.tf_col {
	margin-left: 3.2%;
	float: left;
	min-height: 1px;
}
.tf_col.tf_col6-1 {
	width: 14%;
}
.tf_col.tf_col5-1 {
	width: 17.44%;
}
.tf_col.tf_col4-1 {
	width: 22.6%;
}
.tf_col.tf_col4-2, .tf_col.tf_col2-1 {
	width: 48.4%;
}
.tf_col.tf_col4-3 {
	width: 74.2%;
}
.tf_col.tf_col3-1 {
	width: 31.2%;
}
.tf_col.tf_col3-2 {
	width: 65.6%;
}
.tf_col.tf_colfullwidth,
.tf_col.first {
	margin-left: 0 !important;
	clear: left;
}
.tf_col.tf_colfullwidth {
	float: none;
}

/*  GUTTER NARROW
=============================================== */
.tf_gutter_narrow.tf_sub_row > .tf_col,
.tf_gutter_narrow .tf_row_inner  > .tf_col {
	margin-left: 1.6%;
}
.tf_gutter_narrow.tf_sub_row  > .tf_col.tf_col6-1,
.tf_gutter_narrow .tf_row_inner  > .tf_col.tf_col6-1 {
	width: 15.33%;
}
.tf_gutter_narrow.tf_sub_row  > .tf_col.tf_col5-1,
.tf_gutter_narrow .tf_row_inner  > .tf_col.tf_col5-1 {
	width: 18.72%;
}
.tf_gutter_narrow.tf_sub_row  > .tf_col.tf_col4-1,
.tf_gutter_narrow .tf_row_inner  > .tf_col.tf_col4-1 {
	width: 23.8%;
}
.tf_gutter_narrow.tf_sub_row  > .tf_col.tf_col4-2,
.tf_gutter_narrow.tf_sub_row  > .tf_col.tf_col2-1,
.tf_gutter_narrow .tf_row_inner  > .tf_col.tf_col4-2,
.tf_gutter_narrow .tf_row_inner  > .tf_col.tf_col2-1 {
	width: 49.2%;
}
.tf_gutter_narrow.tf_sub_row  > .tf_col.tf_col4-3,
.tf_gutter_narrow .tf_row_inner  > .tf_col.tf_col4-3 {
	width: 74.539%;
}
.tf_gutter_narrow.tf_sub_row  > .tf_col.tf_col3-1,
.tf_gutter_narrow .tf_row_inner  > .tf_col.tf_col3-1 {
	width: 32.266%;
}
.tf_gutter_narrow.tf_sub_row  > .tf_col.tf_col3-2,
.tf_gutter_narrow .tf_row_inner  > .tf_col.tf_col3-2 {
	width: 66.05%;
}

/*  GUTTER NONE
=============================================== */
.tf_gutter_none.tf_sub_row > .tf_col,
.tf_gutter_none .tf_row_inner  > .tf_col {
	margin-left: 0%;
}
.tf_gutter_none.tf_sub_row  > .tf_col.tf_col6-1,
.tf_gutter_none .tf_row_inner  > .tf_col.tf_col6-1 {
	width: 16.666%;
}
.tf_gutter_none.tf_sub_row  > .tf_col.tf_col5-1,
.tf_gutter_none .tf_row_inner  > .tf_col.tf_col5-1 {
	width: 20%;
}
.tf_gutter_none.tf_sub_row  > .tf_col.tf_col4-1,
.tf_gutter_none .tf_row_inner  > .tf_col.tf_col4-1 {
	width: 25%;
}
.tf_gutter_none.tf_sub_row  > .tf_col.tf_col4-2,
.tf_gutter_none.tf_sub_row  > .tf_col.tf_col2-1,
.tf_gutter_none .tf_row_inner  > .tf_col.tf_col4-2,
.tf_gutter_none .tf_row_inner  > .tf_col.tf_col2-1 {
	width: 50%;
}
.tf_gutter_none.tf_sub_row  > .tf_col.tf_col4-3,
.tf_gutter_none .tf_row_inner  > .tf_col.tf_col4-3 {
	width: 75%;
}
.tf_gutter_none.tf_sub_row  > .tf_col.tf_col3-1,
.tf_gutter_none .tf_row_inner  > .tf_col.tf_col3-1 {
	width: 33.333%;
}
.tf_gutter_none.tf_sub_row  > .tf_col.tf_col3-2,
.tf_gutter_none .tf_row_inner  > .tf_col.tf_col3-2 {
	width: 66.666%;
}

/*  ROW FULL_HEIGHT
================================================ */
.tf_row_full_height .tf_row_wrapper {
	height: 100vh;
	display: table;
	table-layout: fixed;
	width: 100%;
}
.tf_row_full_height .tf_row_inner {
	display: table-cell;
	vertical-align: middle;
	width: 100%; /* fix width & auto margin does not work with table-cell */
}

/* fix iOS bug not displaying 100vh correctly */
/* ipad */
@media only screen and (min-device-width : 768px) and (max-device-width : 1024px) and (orientation : landscape) {
	.tf_row_full_height {
		min-height: 768px;
	}
}
@media only screen and (min-device-width : 768px) and (max-device-width : 1024px) and (orientation : portrait) {
	.tf_row_full_height {
		min-height: 1024px;
	}
}
/* iphone5 */
@media only screen and (min-device-width: 320px) and (max-device-height: 568px) and (orientation : landscape) and (-webkit-device-pixel-ratio: 2) {
	.tf_row_full_height {
		min-height: 320px;
	}
}
@media only screen and (min-device-width: 320px) and (max-device-height: 568px) and (orientation : portrait) and (-webkit-device-pixel-ratio: 2) {
	.tf_row_full_height {
		min-height: 568px;
	}
}
/* iPhone 4 */
@media only screen and (min-device-width : 320px) and (max-device-width : 480px) and (orientation : landscape) and (-webkit-min-device-pixel-ratio : 2) {
	.tf_row_full_height {
		min-height: 320px;
	}
}
@media only screen and (min-device-width : 320px) and (max-device-width : 480px) and (orientation : portrait) and (-webkit-min-device-pixel-ratio : 2) {
	.tf_row_full_height {
		min-height: 480px;
	}
}

/************************************************************************************
MODULES
*************************************************************************************/
/* 
DISPLAY INLINE MODULE
================================================ */
.tf_module_inline_block,
.tf_element_inline_block {
    display: inline-block;
	vertical-align: top;
}

/* 
MODULE SITE LOGO
================================================ */
.tf_site_logo {
	margin: 0 0 .8em;
	padding: 0;
	font-size: inherit;
}
.tf_site_logo a {
	font-weight: bold;
	font-size: 2.5em;
	line-height: 1.5em;
	text-decoration: none;
}
.tf_site_logo a:hover {
	text-decoration: none;
}

/* 
MODULE SITE TAGLINE
================================================ */
.tf_site_tagline {
	font-family: Palatino, 'Palatino Linotype', 'Palatino LT STF', 'Book Antiqua', Georgia, serif;
	font-style: italic;
	margin: 0 0 .8em;
}

/* 
MODULE SEARCH FORM
================================================ */
.tf_searchform {
	margin: 0 0 1em;
}

/* 
MODULE PAGE TITLE
================================================ */
.tf_category_title,
.tf_page_title {
	line-height: 1.4em;
	margin: 0 0 .6em;
	padding: 0;
}

/* 
MODULE TEXT
================================================ */
.tf_module_text.small {
	font-size: .85em;
}

/* 
MODULE ICON
================================================ */
.tf_icons {
	margin: 0;
	padding: 0;
	list-style: none;
}
.tf_icon {
	display: inline-block;
	margin: .2em;
	padding: 0;
	list-style: none;
}
.tf_icon_link {
	text-decoration: none;
	display: inline-block;
}

/* label */
.tf_icon .tf_icon_label {
	display: inline-block;
	vertical-align: middle;
	margin-left: .3em;
	margin-right: .6em;
}

/* icon */
.tf_icon .tf_icon_icon {
	display: inline-block;
	vertical-align: middle;
	padding: .5em;
	font-size: 16px;
	width: 32px;
	height: 32px;
	border-radius: 100%;
}
.tf_icon .tf_icon_icon::before {
	line-height: 1em;
	margin: 0;
	padding: 0;
}

/* size */
.tf_module_icon .small .tf_icon_icon {
	font-size: 12px;
	width: 24px;
	height: 24px;
}
.tf_module_icon .large .tf_icon_icon {
	font-size: 24px;
	width: 48px;
	height: 48px;
}
.tf_module_icon .large .tf_icon_label {
	font-size: 1.2em;
}
.tf_module_icon .xlarge .tf_icon_icon {
	width: 58px;
	height: 48px;
	padding: 12px 0 0 2px;
	font-size: 36px;
	width: 62px;
	height: 62px;
}
.tf_module_icon .xlarge .tf_icon_label {
	font-size: 1.2em;
}

/* rounded style */
.tf_module_icon .rounded .tf_icon_icon {
	border-radius: 5px;
}

/* squared style */
.tf_module_icon .squared .tf_icon_icon {
	border-radius: 0;
}

/* none (no bg) style */
.tf_module_icon .none .tf_icon_icon {
	padding: .2em;
	border-radius: 0;
	background: none !important;
	font-size: 24px;
}
.tf_module_icon .none.small .tf_icon_icon {
	width: 28px;
	height: 28px;
	font-size: 18px;	
}
.tf_module_icon .none.large .tf_icon_icon {
	width: 40px;
	height: 40px;
	font-size: 30px;	
}
.tf_module_icon .none.xlarge .tf_icon_icon {
	width: 42px;
	height: 42px;
	font-size: 36px;
}

/* 
MODULE MENU
================================================ */
.tf_menu {
	margin: 0;
	padding: 0;
}
.tf_menu li {
	margin: 0;
	padding: 0;
	list-style: none;
	position: relative;
	display: inline-block;
}

/* menu icon */
.tf_menu li .fa {
	margin-right: .4em;
}

/* main level link */
.tf_menu a {
	display: block;
	padding: .5em .7em;
	margin: 0 .15em;
	text-decoration: none;
}
/* main level link :hover */
.tf_menu a:hover {
	text-decoration: none;
}

/* current link */
.tf_menu .current_page_item a, 
.tf_menu .current-menu-item a {
	text-decoration: none;
}
/* current link :hover */
.tf_menu .current_page_item a:hover, 
.tf_menu .current-menu-item a:hover {
	text-decoration: none;
}

/* sub-levels link */
.tf_menu ul a, 
.tf_menu .current_page_item ul a, 
.tf_menu ul .current_page_item a, 
.tf_menu .current-menu-item ul a, 
.tf_menu ul .current-menu-item a {
	text-align: left;
	font-size: .95em;
	line-height: 1.5em;
	font-weight: normal;
	text-transform: none;
	padding: .4em .4em .4em 1em;
	margin: 0;
	display: block;
	background: none;
	border: none;
	text-shadow: none;
	border-radius: 0;
	box-shadow: none;
}
/* sub-levels link :hover */
.tf_menu ul a:hover, 
.tf_menu .current_page_item ul a:hover, 
.tf_menu ul .current_page_item a:hover, 
.tf_menu .current-menu-item ul a:hover, 
.tf_menu ul .current-menu-item a:hover {
	background: #eee;
}

/* dropdown ul */
.tf_menu ul {
	width: 202px;
	margin: 0;
	padding: 0;
	list-style: none;
	background: #fff;
	border: solid 1px rgba(0,0,0,.2);
	position: absolute;
	z-index: 100;
	display: none;
}
.tf_menu ul li {
	background: none;
	padding: 0;
	margin: 0;
	float: none;
	display: block;
}

/* sub-levels dropdown */
.tf_menu ul ul {
	left: 200px;
	top: -2px;
}

/* show dropdown ul */
.no-touch .tf_menu li:hover > ul {
	display: block;
}
.mobile-menu {
	display: none;
}
.tf_mobile_menu_wrap {
	width: 5.8em;
	max-width: 100%;
	overflow: hidden;
	position: relative;
	display: inline-block;
	vertical-align: middle;
}
.tf_mobile_menu_wrap select {
	height: auto;
	max-width: 100%;
	padding: .3em .7em .3em 2.2em;
	border: none;
	background: none;
	display: inline-block;
	vertical-align: middle;
	line-height: 1.5em;
	color: inherit;
	word-wrap: initial;
	position: relative;
	z-index: 1;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;	
	border-radius: 0;
}
.tf_mobile_menu_wrap:after {
	content: "\f0c9";
	font-family: "FontAwesome";
	line-height: 1em;
	position: absolute;
	left: .8em;
	top: 25%;
}
.sub-arrow {
	display: inline-block;
	font-size: 1.2em;
	cursor: pointer;
	min-width: 32px;
	min-height: 32px;
}
.sub-arrow:before {
	font-family: "FontAwesome";
	padding: 5px 10px;
}
.sub-arrow:before {
	content: "\f107"; /* fa-angle-down */
}
.sub-arrow.open:before {
	content: "\f106"; /* fa-angle-up */
}
.with-sub-arrow ul .sub-arrow:before {
	content: "\f105"; /* fa-angle-right */
}
.with-sub-arrow ul .sub-arrow.open:before {
	content: "\f104"; /* fa-angle-left */
}

/*
MODULE PAGINATION
================================================ */
.tf_pagination {
	clear: both;
	margin: 1em 0;
	text-align: right;
}
.tf_pagination a {
    text-decoration: none;
}
.tf_pagination a, .tf_pagination span {
	display: inline-block;
	line-height: 100%;
	margin: 0 1px .6em 0;
	min-width: 2em;
	padding: .3em 0;
	text-align: center;
	vertical-align: middle;
	text-decoration: none;
}

/*
MODULE POST
================================================ */
/* tf_loops_wrapper */
.tf_loops_wrapper.list_post .tf_post {
	clear: both;
}
.tf_loops_wrapper.grid4 .tf_post,
.tf_loops_wrapper.grid3 .tf_post,
.tf_loops_wrapper.grid2 .tf_post {
	margin-left: 3.2%;
	float: left;
}
.tf_loops_wrapper.grid4 .tf_post {
	width: 22.6%;
	margin-bottom: 2.5em;
}
.tf_loops_wrapper.grid3 .tf_post {
	width: 31.2%;
	margin-bottom: 3.1em;
}
.tf_loops_wrapper.grid2 .tf_post {
	width: 48.4%;
	margin-bottom: 3.7em;
}
/* clear tf_loops_wrapper post float */
.tf_loops_wrapper.grid4 .tf_post:nth-of-type(4n+1),
.tf_loops_wrapper.grid3 .tf_post:nth-of-type(3n+1),
.tf_loops_wrapper.grid2 .tf_post:nth-of-type(2n+1) {
	margin-left: 0;
	clear: left;
}

/* post */
.tf_post {
	margin-bottom: 2em;
}

/* post title */
.tf_post_title {
	line-height: 1.4em;
	margin: 0 0 .6em;
	padding: 0;
}
.tf_post_title a {
	text-decoration: none;
}

/* post image */
.tf_post_image {
	margin: 0 0 1.8em;
}
.tf_post_image img {
	vertical-align: bottom;
}

/* post meta */
.tf_post_meta {
	font-size: .9em;
	line-height: 1.6em;
	margin: 0 0 1.3em;
	padding: 0;
}

/*
MODULE AUTHOR BOX
================================================ */
.tf_author_box {
	margin: 1em 0 2em;
	border: none;
}
.tf_author_avatar {
	float: left;
	margin: 0 1.8em 1em 0;
}
.tf_author_avatar img {
	vertical-align: bottom;
	border-radius: 100%;
}
.tf_author_bio {
	overflow: hidden;
	margin: 0 0 1em;
}
.tf_author_name {
	margin: 0 0 .35em;
}
.tf_author_link {
	margin-top: 1em;
}


/*
NEXT/PREV POST LINK
================================================ */
.tf_post_nav {
	margin: 0 0 3em;
	padding: 0;
	clear: both;
}
.tf_post_nav .prev,
.tf_post_nav .next {
	width: 47%;
	position: relative;
}
.tf_post_nav .prev {
	float: left;
}
.tf_post_nav .next {
	float: right;
	text-align: right;
}

/* next/prev post text label */
.tf_post_nav .next_prev_post_label {
	display: block;
	font-size: .7em;
	text-transform: uppercase;
	letter-spacing: .05em;
	color: inherit;
	margin-bottom: .4em;
}

/* post nav link */
.tf_post_nav a {
	text-decoration: none;
	display: block;
	font-size: 1.2em;
}
.tf_post_nav a:hover {
	text-decoration: none;
}

/* post nav arrow */
.tf_post_nav .arrow {
	display: block;
	width: auto;
	float: left;
	width: 28px;
	height: 28px;
	text-align: center;
    text-decoration: none;
	margin-bottom: 1em;
}
.tf_post_nav .next .arrow {
	float: right;
}
.tf_post_nav .next .arrow:before,
.tf_post_nav .prev .arrow:before {
	font-family: FontAwesome;
    font-size: .8em;
    top: 0;
	position: absolute;
    font-style: normal;
    font-weight: normal;
    text-decoration: none;
}
.tf_post_nav .next .arrow:before {
	content: '\f054';
}
.tf_post_nav .prev .arrow:before {
	content: '\f053';
}
.tf_post_nav .prev .arrow:before {
	left: 0;
}
.tf_post_nav .next .arrow:before {
	right: 0;
}

/*  MODULE IMAGE
================================================ */
.tf_module_image .tf_image_title {
	margin: 0 0 .5em;
	font-size: 1.3em;
}
.tf_module_image .tf_image_title a {
	text-decoration: none;
}

/*  IMAGE LAYOUT ------ */
.tf_module_image .tf_image_wrap {
	vertical-align: top;
	display: inline-block;
	width: auto;
	max-width: 100%;
}
.tf_module_image .tf_image_wrap img {
	vertical-align: top;
}

/* image top */
.tf_module_image .image-top .tf_image_content {
	margin-top: 1em;
	margin-bottom: 1.5em;
}

/* image left */
.tf_module_image .image-left .tf_image_wrap {
	float: left;
	margin: 0 1.5em 1em 0;
	max-width: 50%;
}

/* image right */
.tf_module_image .image-right .tf_image_wrap {
	float: right;
	margin: 0 0 1em 1.5em;
	max-width: 50%;
}

/* image overlay */
.tf_module_image .image-overlay {
	font-size: .85em;
}
.tf_module_image .image-overlay .tf_image_wrap {
	position: relative;
	margin: 0;
}
.tf_module_image .image-overlay .tf_image_wrap img {
	width: 100%;
}
.tf_module_image .image-overlay .tf_image_content {
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	padding: 2% 4%;
	width: 100%;
	background: #333;
	background: rgba(0,0,0,.7);
	color: #ccc;
	line-height: 1.4em;
}
.tf_module_image .image-overlay .tf_image_wrap a + .tf_image_content,
.tf_module_image .image-overlay img + .tf_image_content {
	position: absolute;
	bottom: 0;
	left: 0;
}
.tf_module_image .image-overlay p {
	margin: 0 0 5px;
}
.tf_module_image .image-overlay .tf_image_title {
	font-size: 1.1em;
	color: #fff;
	margin: 0 0 .4em;
}
.tf_module_image .image-overlay a,
.tf_module_image .image-overlay a:hover {
	color: #fff;
	text-decoration: none;
}
.tf_module_image .image-overlay h1,
.tf_module_image .image-overlay h2,
.tf_module_image .image-overlay h3:not(.module-title),
.tf_module_image .image-overlay h4,
.tf_module_image .image-overlay h5,
.tf_module_image .image-overlay h6 {
	color: #fff;
	margin: 0 0 .4em;
}

/* image center */
.tf_module_image .image-center .tf_image_wrap {
	display: block;
	text-align: center;
}
.tf_module_image .image-center .tf_image_content {
	text-align: center;
	margin-top: 1em;
	margin-bottom: 1.5em;
}

/*  IMAGE APPEARANCE ------- */

/* rounded */
.tf_module_image .rounded .tf_image_wrap,
.tf_module_image .rounded .tf_image_wrap img {
	border-radius: 5px;
}
.tf_module_image .rounded.image-overlay .tf_image_content {
	border-bottom-left-radius: 5px;
	border-bottom-right-radius: 5px;
}

/* border */
.tf_module_image .bordered .tf_image_wrap img {
	border: solid 1px #999;
	background: #fff;
	padding: 2px;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

/* drop shadow */
.tf_module_image .drop-shadow .tf_image_wrap {
	box-shadow: 0 1px 2px rgba(0,0,0,.3);
}

/* circle */
.tf_module_image .circle .tf_image_wrap,
.tf_module_image .circle .tf_image_wrap img {
	border-radius: 100%;
}
.tf_module_image .circle.image-overlay .tf_image_content {
	border-bottom-left-radius: 100%;
	border-bottom-right-radius: 100%;
	overflow: hidden;
	text-align: center;
}


/*
MODULE VIDEO
================================================ */
.tf_module_video .tf_video_title {
	margin: 0 0 .5em;
	font-size: 1.3em;
}

/* MediaElement */
.tf_module_video .wp-video {
	width: 100% !important;
	max-width: 100% !important;
}
.tf_module_video .mejs-container {
	text-align: center !important;
	max-width: 100%;
	min-height: 100% !important;
}

/* VIDEO LAYOUT ------ */

/* video left */
.tf_module_video .video-left .tf_video_wrap {
	width: 50%;
	margin-right: 1.5em;
	margin-bottom: 1em;
	float: left;
}

/* video right */
.tf_module_video .video-right .tf_video_wrap {
	width: 50%;
	margin-left: 1.5em;
	margin-bottom: 1em;
	float: right;
}

/* video overlay */
.tf_module_video .video-overlay {
	position: relative;
	font-size: .85em;
}
.tf_module_video .video-overlay .tf_video_wrap {
	margin: 0;
	width: 100%;
}
.tf_module_video .video-overlay .tf_video_content {
	padding: 2% 4%;
	background: #333;
	background: rgba(0,0,0,.7);
	color: #ccc;
	font-size: .9em;
	line-height: 1.4em;
}
.tf_module_video .video-overlay .tf_video_wrap + .tf_video_content {
	position: absolute;
	bottom: 0;
	left: 0;
}
.tf_module_video .video-overlay .tf_video_title {
	font-size: 1.1em;
	margin: 0 0 .4em;
}
.tf_module_video .video-overlay p {
	margin: 0 0 .4em;
}
.tf_module_video .video-overlay a,
.tf_module_video .video-overlay a:hover {
	color: #fff;
	text-decoration: none;
}
.tf_module_video .video-overlay h1,
.tf_module_video .video-overlay h2,
.tf_module_video .video-overlay h3,
.tf_module_video .video-overlay h4,
.tf_module_video .video-overlay h5,
.tf_module_video .video-overlay h6 {
	color: #fff;
	margin: 0 0 .4em;
}


/*
MODULE DIVIDER
================================================ */
.tf_divider {
	margin: 1.5em 0;
	border-left: none !important;
	border-right: none !important;
	border-bottom: none !important;
	display: inline-block;
	width: 100%;
	max-width: 100%;
}
.tf_divider.dashed {
	border-style: dashed;
}
.tf_divider.solid {
	border-style: solid;
}
.tf_divider.dotted {
	border-style: dotted;
}
.tf_divider.double {
	border-style: double;
}


/************************************************************************************
COMMENTS
*************************************************************************************/
.tf_module_comments {
	position: relative;
	clear: both;
}
.tf_comments_container {
	padding: 3em 0 1.25em;
}

/* comment & reply title */
.comments-title,
.comment-reply-title  {
	font-size: 1.4em;
	margin: 0 0 0.625em;
	padding: 0;
}

/* comment pagination */
.tf_module_comments .tf_pagination {
	margin: 10px 0;
	border: none;
}
.tf_module_comments .tf_pagination.top {
	margin: 0;
	position: absolute;
	top: 0;
	right: 0;
}

/* comment-list */
.comment-list {
	margin: 0 0 2em;
	padding: 5px 0 0;
}
.comment-list li {
	margin: 0;
	padding: 1em 0 0;
	list-style: none;
	position: relative;
}
.comment-list .comment-author {
	margin: .2em 0 .9em;
	padding: 0;
}
.comment-list .avatar {
	float: left;
	margin: 0 1.2em 0 0;
	border-radius: 100%;
}
.comment-list cite {
	font-style: normal;
	font-size: 1.2em;
}
.comment-list cite a {
	text-decoration: none;
}
.comment-list .bypostauthor > .comment-author cite:before {
	content: '\f02e';
	font-family: FontAwesome;
    font-style: normal;
    font-weight: normal;
    text-decoration: none;
	margin-right: 12px;
}
.comment-list .comment-time {
	font-size: .8em;
	text-transform: uppercase;
	letter-spacing: .03em;
}
.comment-list .comment-content {
	position: relative;
	min-height: 3em;
	overflow: hidden;
	padding-bottom: .4em;
	word-wrap: break-word;
}
.comment-list ul, .comment-list ol {
	margin: 0 0 0 7%;
	padding: 0;
}

/* reply link */
.comment-list .reply {
	position: absolute;
	right: 0;
	top: 8px;
}
.comment-list .comment-reply-link {
	font-size: 15px;
	text-transform: uppercase;
}

/* 
COMMENT FORM
================================================ */
#respond {
	margin: 0;
	padding: 10px 0 0;
	position: relative;
	clear: both;
}
#respond #cancel-comment-reply-link {
	position: absolute;
	top: 20px;
	right: 0;
	font-size: 15px;
	line-height: 100%;
	text-decoration: none;
	text-transform: uppercase;
	font-weight:  normal;
	letter-spacing: 1px;
}
#commentform {
	margin: 15px 0 0;
}
#commentform p {
	padding: 0;
	margin: 0 0 .4em;
}
#commentform input[type=text] {
	width: 206px;
	margin-right: 5px;
}
#commentform textarea {
	height: 140px;
}

/************************************************************************************
RESPONSIVE VIDEO (css for fluid video)
*************************************************************************************/
.tf_video_embed,
.embed-youtube {
	position: relative;
	padding-bottom: 56.25%;
	width: 100%;
	height: 0;
	overflow: hidden;
	margin-bottom: 15px;
}
.tf_video_embed iframe,
.tf_video_embed object,
.tf_video_embed embed,
.embed-youtube iframe,
.embed-youtube object,
.embed-youtube embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}


/************************************************************************************
WIDGETS
*************************************************************************************/
.tf_widget {
	margin: 0 0 3.1em;
}
.tf_widget_title {
	font-size: 1.25em;
}
.tf_widget ul {
	margin: 0;
	padding: 0;
}
.tf_widget li {
	margin: 0;
	padding: .4em 0;
	list-style: none;
	clear: both;
}
.tf_widget ul ul {
	margin: 6px 0 -6px 0px;
	padding: 0;
}
.tf_widget ul ul li {
	margin: 0;
	padding-left: 10px;
}

/* WP recent posts widget */
.widget_recent_entries .post-date {
	display: block;
	margin: 5px 0;
}

/* WP calendar widget */
.widget_calendar #wp-calendar caption {
	font-weight: bold;
	padding-bottom: 10px;
}
.widget_calendar #wp-calendar td {
	width: 30px;
	padding: 4px 2px;
	text-align: center;
}

/* add white bg to facebook badge iframe */
iframe[src*="facebook"] {
	background: #fff;
}

/* reset twitter embed max-width to 100% */
.twitter-tweet-rendered {
	max-width: 100% !important;
}
.twt-border {
	max-width: 100% !important;
	min-width: 180px !important;
}

/************************************************************************************
WORDPRESS FORMATTING
*************************************************************************************/
.sticky {
}

img.alignleft, img.aligncenter, img.alignright, img.alignnone {
	margin-bottom: 1em;
}
.alignleft {
	float: left;
	margin-right: 1.5em;
}
.alignright {
	float: right;
	margin-left: 1.5em;
}
.aligncenter {
	text-align: center;
	display: block;
	margin-left: auto;
	margin-right: auto;
}
.wp-caption {
	text-align: center;
	margin-bottom: 1em;
	max-width: 100%;
}
.wp-caption-text {
	margin: .5em 0;
}

/************************************************************************************
CLEAR & ALIGNMENT
*************************************************************************************/
.clear {
	clear: both;
}
.left {
	float: left;
}
.right {
	float: right;
}
.textleft {
	text-align: left;
}
.textright {
	text-align: right;
}
.textcenter {
	text-align: center;
}

/* clearfix */
.clearfix:after,
.pagewidth:after,
#header:after, 
#middle:after, 
#content:after, 
#sidebar:after, 
.tf_row:after,
.tf_row_inner:after,
.tf_sub_row:after,
.tf_col:after,
.tf_module_wrapper:after,
.tf_module:after, 
.tf_pagination:after,
.tf_post_nav:after,
.tf_menu:after, 
.tf_widget li:after, 
#footer:after {
	content: "";
	display: table;
	clear: both;
}

/************************************************************************************
FLOW INTERFACE
*************************************************************************************/
/* required to prevent css overriding from generated css */
.tf_interface * {
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	font-family: inherit;
	line-height: inherit;
	color: inherit;
	background: none;
	border: none;
	font-style: normal;
	text-decoration: none;
	letter-spacing: 0;
	text-transform: none;
	font-weight: normal;
	text-align: left;
	border: none;
	padding: 0;
	margin: 0;
	position: static;
	text-shadow: none;
	box-shadow: none;
	border-radius: 0;
	opacity: 1;
}
.tf_interface a,
.tf_interface img {
	border: none;
	padding: 0;
	margin: 0;
	background: none;
	box-shadow: none;
	border-radius: 0;
	opacity: 1;
	visibility: visible;
	text-transform: none;
	text-decoration: none;
}
.tf_interface a:hover {
	font-family: inherit;
	opacify: 1;
	visibility: visible;
	text-transform: none;
	text-decoration: none;
	background: none;
}
#tf_front_admin_menu  {
	font: 13px/160% 'Open Sans', Arial, sans-serif;
	background: #67388e;
	color: #fff;
	border: 1px solid #5a2882;
	width: 170px;	
	position: fixed;
	z-index: 100000;
	left: -173px;	
	top: 70px;
	-webkit-transition: left 700ms ease-in-out;
	-moz-transition: left 700ms ease-in-out;
	transition: left 700ms ease-in-out;	
}
#tf_front_admin_menu:before {
	content: '';
	display: block;
	margin-right: -25px;
	position: absolute;
	top: 5px;
	right: 0;
	z-index: -1;
	width: 51px;
	height: 51px;
	background: url(tf/assets/img/flow-wheel.png) no-repeat;
	-webkit-transition: all 500ms ease-in-out;
	-moz-transition: all 500ms ease-in-out;
	transition: all 500ms ease-in-out;
	-webkit-animation: tf_front_admin_flow_wheel 3000ms infinite;/* Chrome, Safari, Opera */
	-webkit-animation-timing-function: linear;/* Chrome, Safari, Opera */
	animation: tf_front_admin_flow_wheel 3000ms infinite;
	animation-timing-function: linear;
}
#tf_front_admin_menu:hover {
	left: 0;
}
#tf_front_admin_menu:hover:before {
	opacity: 0;
}

/* tf_front_admin_menu_title */
#tf_front_admin_menu .tf_front_admin_menu_title {
	background: #67388e;
	padding: 5px 10px;
	text-transform: uppercase;
	font-weight: bold;
	letter-spacing: 1px;
}

/* tf_front_admin_menu */
#tf_front_admin_menu ul {
	padding: 0;
	margin: 0;
}
#tf_front_admin_menu ul li {
	position: relative;
	margin: 0;
	padding: 0;
	list-style: none;
}
#tf_front_admin_menu ul a {
	background: #783fa6;
	color: #efdbff;
	padding: 4px 10px;
	display: block;
	text-decoration: none;
}
#tf_front_admin_menu ul a:hover {
	text-decoration: none;
	background: #a059cc;
	color: #fff;	
}
#tf_front_admin_menu ul ul {
	width: 170px;
	position: absolute;
	left: 169px;
	top: 0;
	border: 1px solid #5a2882;
	display: none;
}
#tf_front_admin_menu ul ul a {
	background: #5a2882;
}
#tf_front_admin_menu ul li:hover > ul {
	display: block;
}

@-moz-keyframes tf_front_admin_flow_wheel {
    from { -moz-transform: rotate(0deg) }
    to { -moz-transform: rotate(360deg) }
}
@-webkit-keyframes tf_front_admin_flow_wheel {
    from { -webkit-transform: rotate(0deg) }
    to { -webkit-transform: rotate(360deg) }
}
@keyframes tf_front_admin_flow_wheel {
    from {transform:rotate(0deg); }
    to {transform:rotate(360deg); }
}

/* TEMPLATE PART & CONTENT BUILDER FRONTEND VIEW
================================================ */
body.single-tf_template_part { 
	background: #fff; /* prevent Styling panel or theme style.css overriding Template Part edit frame */
}
.single-template-part-container {
	max-width: 96%;
	margin: 30px;
}
.single-template-part-container #content {
	width: auto;
	float: none;
}

/* template part edit title */
.tf_template_part_title {
	font: normal 20px/1.5em 'Open Sans', sans-serif;	
	color: #000;
	margin: 0 0 30px;
}
.tf_template_part_title span {
	text-transform: uppercase;
	font-weight: bold;
}