/**
 * Table of Contents:
 *
 * 1.0 - Primary Structure
 * 2.0 - Top
 *   2.1 - Header Top
 *   2.2 - Header Content
 *   2.3 - Primary Navigation
 *   2.4 - Level 1
 *   2.5 - Level 2+
 *   2.6 - Sticky Menu
 *   2.7 - Hidden Responsive Side Menu
 *   2.8 - Transparent Header
 * 3.0 - Main
 *   3.1 - Breadcrumbs
 *   3.2 - Banner
 * 4.0 - Bottom
 * 5.0 - Content
 *   5.1 - Typography
 *   5.2 - Content Background
 *   5.2 - Posts
 *   5.4 - Pages
 *   5.5 - Titles
 *   5.6 - Meta
 *   5.7 - Sub Meta
 *   5.8 - Post Formats
 *   5.9 - Related Posts
 *   5.10 - Edit Link
 * 6.0 - Comments
 *   6.1 - Comment List
 *   6.2 - Admin Comment
 *   6.3 - Children
 *   6.4 - Comment Form
 *   6.5 - Comment Form (in reply)
 * 7.0 - Archives
 *   7.1 - Archive Info and Author Box
 *   7.2 - Search Results
 *   7.3 - Posts Wrap
 * 8.0 - Page Templates
 *   8.1 - Post List
 *   8.2 - Post Grid
 *   8.3 - Post Showcase
 *   8.4 - Blank Page
 *   8.5 - Custom Layout
 * 9.0 - Widgets
 *   9.1 - General
 *   9.2 - Fixed Sidebars
 *   9.3 - Footer
 ----------------------------------------------- */

/* =Primary Structure
----------------------------------------------- */

.header-top > .wrap,
.header-above > .wrap,
.header-content > .wrap,
.header-nav > .wrap,
.tb-sticky-menu > .wrap,
.tb-featured-banner > .wrap,
.site-inner > .wrap,
.element-section > .element,
.site-footer > .wrap {
	margin-right: auto;
	margin-left: auto;
	max-width: 1170px;
}
@media (max-width: 1200px) {
	.header-top > .wrap,
	.header-above > .wrap,
	.header-content > .wrap,
	.header-nav > .wrap,
	.tb-sticky-menu > .wrap,
	.tb-featured-banner > .wrap,
	.site-inner > .wrap,
	.element-section > .element,
	.site-footer > .wrap {
		max-width: 960px;
	}
}
@media (max-width: 992px) {
	.header-top > .wrap,
	.header-above > .wrap,
	.header-content > .wrap,
	.header-nav > .wrap,
	.tb-featured-banner > .wrap,
	.site-inner > .wrap,
	.element-section > .element,
	.site-footer > .wrap {
		max-width: 738px;
	}
}
@media (max-width: 767px) {
	.header-above > .wrap,
	.header-content > .wrap,
	.header-nav > .wrap,
	.tb-featured-banner > .wrap,
	.site-inner > .wrap,
	.element-section > .element,
	.site-footer > .wrap {
		max-width: 480px;
		padding-left: 15px;
		padding-right: 15px;
	}
	.site-footer > .wrap {
		padding-left: 30px;
		padding-right: 30px;
	}
}

/* =Top
----------------------------------------------- */

.site-header {
	background: #f5f5f5;
	position: relative;
}

/* Header Top */
.header-top {
	background: #ffffff;
	position: relative;
}
@media (max-width: 767px) {
	.header-top {
		display: none;
	}
}
.header-top > .wrap {
	padding: 12px 10px;
}
.header-text {
	float: left;
	line-height: 24px; /* Match height of social icons */
}
.header-top-nav {
	margin: 0;
}
.header-top-nav > li {
	float: right;
	border-right: 1px solid #dddddd;
	height: 24px;
	padding: 0 8px;
}
.header-top-nav > li:first-child {
	border-right: none;
	padding-right: 0;
}
.header-top-nav > li.top-cart {
	padding-right: 14px;
}

/* Header Content */
.header-content > .wrap {
	padding: 20px 10px;
	position: relative;
}
@media (max-width: 992px) {
	.header-content > .wrap {
		padding-top: 10px;
		padding-bottom: 10px;
	}
}
.header-logo {
	float: left;
}
@media (max-width: 992px) {
	.header-logo {
		float: none;
		padding-right: 58px;
	}
	.has-cart-button .header-logo {
		padding-right: 111px;
	}
}
.btn-navbar {
	background: #333333;
	color: #ffffff;
	margin-top: -24px;
	padding: 15px;
	position: absolute;
	top: 50%;
	right: 20px;
	text-align: center;
	z-index: 10;
}
.btn-navbar:hover {
	background: #000000;
	color: #ffffff;
}
.btn-navbar.cart {
	right: 73px; /* 20 + 48 + 5 */
}
.btn-navbar.cart .cart-count {
	background: rgba(255,255,255,.1);
	-webkit-border-radius: 100px;
	border-radius: 100px;
	display: inline-block;
	font-size: 8px;
	font-weight: bold;
	line-height: 14px;
	position: absolute;
	right: 4px;
	bottom: 8px;
	width: 14px;
	height: 14px;
	text-align: center;
}
.btn-navbar .fa {
	width: 18px; /* maintain consistent width, no matter what icon used */
}

/* Primary Navigation */
.header-nav {
	background: #333333;
}
@media (max-width: 992px) {
	.header-nav {
		display: none;
	}
	#primary-menu-toggle {
		display: block;
	}
}
.tb-primary-menu .menu-btn {
	display: block;
	line-height: 1;
}
.tb-primary-menu .menu-btn,
.tb-primary-menu .menu-btn:hover {
	text-decoration: none;
}

/* Level 1 */
.tb-primary-menu > li > .menu-btn {
	color: #ffffff;
	font-size: 14px;
	padding: 18px 20px;
}
.tb-primary-menu > li > a:hover {
	background: #222222;
}
/* @noflip */
.tb-primary-menu > li.menu-item-has-children > .menu-btn {
	padding-right: 10px;
}
@media (max-width: 1200px) {
	.tb-primary-menu > li > .menu-btn {
		padding: 18px 15px;
	}
	/* @noflip */
	.tb-primary-menu > li.menu-item-has-children > .menu-btn {
		padding-right: 7px;
	}
}

/* Level 2+ */
.tb-primary-menu ul.non-mega-sub-menu,
.tb-primary-menu .sf-mega {
	background: #ffffff;
	border: 1px solid #dddddd;
}
.tb-primary-menu > li > ul.non-mega-menu { /* Level 2 only */
	border-top: none;
}
.tb-primary-menu ul .menu-btn,
.tb-primary-menu .mega-section-header {
	color: #666666;
	font-size: 13px;
	padding: 12px;
}
.tb-primary-menu ul a:hover {
	background: #f5f5f5;
}

/* Sticky Menu */
.tb-sticky-menu .tb-primary-menu > li > .menu-btn:hover {
	background: #f8f8f8;
}

/* Hidden Responsive Side Menu */
#tb-side-menu-wrapper,
#tb-side-menu-wrapper .tb-side-menu,
#tb-side-menu-wrapper .tb-side-menu .sub-menu li.non-mega-sub-menu:last-child {
	background-color: #333333;
}
#tb-side-menu-wrapper {
	border-left: 1px solid #000000;
}
#tb-side-menu-wrapper .tb-side-menu a,
#tb-side-menu-wrapper .tb-side-menu span,
#tb-side-menu-wrapper .header-text {
	color: #ffffff;
}
#tb-side-menu-wrapper .tb-side-menu a:hover,
#tb-side-menu-wrapper .tb-side-menu a:active {
	text-decoration: underline;
}
#tb-side-menu-wrapper .tb-side-menu .tb-side-menu-toggle {
	color: #cccccc;
}
#tb-side-menu-wrapper .tb-side-menu .tb-side-menu-toggle:hover,
#tb-side-menu-wrapper .tb-side-menu .tb-side-menu-toggle:active {
	color: #ffffff;
}
#tb-side-menu-wrapper .tb-side-menu > li {
	border-bottom: 1px solid #000000;
}
#tb-side-menu-wrapper .tb-side-menu .sub-menu {
	background-image: url('../../framework/assets/images/parts/side-nav-list-outer-000000.png');
}
#tb-side-menu-wrapper .tb-side-menu .sub-menu li {
	background-image: url('../../framework/assets/images/parts/side-nav-list-ltr-000000.png');
}
#tb-side-menu-wrapper .tb-search {
	border-bottom: 1px solid #000000;
}
#tb-side-menu-wrapper .tb-search .search-input {
	color: #ffffff;
}
#tb-side-menu-wrapper .tb-search .search-input::-moz-placeholder {
	color: rgba(255,255,255,.5);
}
#tb-side-menu-wrapper .tb-search .search-input:-ms-input-placeholder {
	color: rgba(255,255,255,.5);
}
#tb-side-menu-wrapper .tb-search .search-input::-webkit-input-placeholder {
	color: rgba(255,255,255,.5);
}

/* Transparent Header */
.site-header.transparent {
	background-color: transparent;
}
.site-header.transparent .header-top {
	background-color: rgba(0,0,0,.2);
}
.site-header.transparent .header-top-nav > li {
	border-color: rgba(0,0,0,.4);
}
.site-header.transparent .header-nav {
	background-color: rgba(0,0,0,.2);
}
.site-header.transparent .tb-primary-menu > li > a:hover {
	background-color: rgba(0,0,0,.4);
}
.site-header.transparent .btn-navbar {
	background-color: rgba(0,0,0,.2);
}
.site-header.transparent .btn-navbar:hover {
	background-color: rgba(0,0,0,.4);
}

/* =Main
----------------------------------------------- */

#main {
	padding: 20px 0;
}
@media (max-width: 992px) {
	#content {
		margin-bottom: 30px;
	}
}

/* Breadcrumbs */
@media (max-width: 992px) {
	.breadcrumb {
		font-size: 12px;
		margin-bottom: 0;
	}
}
@media (max-width: 767px) {
	.breadcrumb {
		display: none;
	}
}

/* Banner */
@media (max-width: 767px) {
	#featured-banner {
		margin-bottom: 20px;
	}
}

/* =Bottom
----------------------------------------------- */

.site-footer {
	padding: 30px 0;
}
.footer-content {
	padding: 20px 0 40px 0;
}
.footer-content .entry-content > p:last-child {
	margin-bottom: 0;
}
@media (max-width: 992px) {
	.footer-content .col {
		margin-bottom: 30px;
	}
	.footer-content .col:last-child {
		margin-bottom: 0;
	}
}
.footer-sub-content {
	font-size: 12px;
	text-align: center;
}
.footer-sub-content p {
	margin-bottom: 10px;
}
.footer-sub-content ul {
	margin: 0;
}

/* =Layouts
----------------------------------------------- */

/* =Content
----------------------------------------------- */

/* Typography */
html,
body {
	background: #f5f5f5;
	color: #666666;
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-size: 14px;
	font-weight: 300;
	line-height: 1.6;
}
h1, h2, h3, h4, h5, h6 {
	color: #333333;
	font-weight: bold;
	line-height: 1.1;
	margin-top: 10px;
	margin-bottom: 20px;
}
h1 {
	font-size: 32px;
}
h2 {
	font-size: 27px;
}
h3 {
	font-size: 20px;
}
h4 {
	font-size: 15px;
}
h5 {
	font-size: 13px;
}
h6 {
	font-size: 11px;
}
a {
	color: #428bca;
	text-decoration: none;
}
a:hover,
.entry-title a:hover,
#comments .comment-body .comment-meta a:hover {
	color: #2a6496;
	text-decoration: underline;
}
.tb-text-logo a:hover,
.entry-title a:hover {
	text-decoration: none;
}
p {
	margin-bottom: 20px;
}

/* Content Background */
.bg-content {
	background: #ffffff;
	padding: 30px;
}

/* Posts */
.blog-wrap > article,
article.single {
	background: #ffffff;
	margin-bottom: 30px;
	padding: 30px;
}
.loop-shortcode > .blog-wrap > article {
	background: transparent;
	padding: 0;
}
.content_dark .blog-wrap > article,
.content_dark article.single {
	background: #2c2c2c;
}

/* Pages */
article.page {
	background: #ffffff;
	padding: 30px;
}

/* Titles */
.entry-title {
	margin-top: 0;
}
.entry-title-with-meta {
	margin: 0;
}
.entry-title a {
	color: inherit;
	text-decoration: none;
}

/* Meta */
.entry-meta {
	font-size: 12px;
	margin: 5px 2px 15px 2px;
}
.entry-meta .fa {
	padding-right: 4px;
}
.entry-meta .sep {
	font-weight: normal;
	padding: 0 7px;
}

/* Sub Meta */
.sub-meta {
	margin: 20px 0 0 0;
}
.sub-meta .tb-share {
	margin-bottom: 5px;
}
.sub-meta .title:after {
	content: " ";
}

/* Post Formats */
.entry-title a .fa {
	font-size: .7em;
}

/* Related Posts */
.tb-related-posts > .inner {
	background: #ffffff;
	padding: 30px;
}
.tb-related-posts .related-posts-title {
	font-size: 20px;
	margin: 0 0 10px 10px;
}

/* Edit Link */
.edit-link {
	margin: 10px 0 0 0;
}

/* =Comments
----------------------------------------------- */

/* Comment List */
#comments ol,
#comments ul {
	list-style: none;
	padding: 0;
}
#comments ol.commentlist {
	margin: 0 0 30px 0;
}
#comments li {
	margin: 5px 0;
}
#comments-title {
	font-size: 20px;
	margin: 0 0 10px 10px;
}
#comments .comment-body {
	background: #ffffff;
	padding: 30px;
	padding-left: 98px;
	position: relative;
}
#comments .comment-body .avatar {
	position: absolute;
	top: 30px;
	left: 30px;
}
#comments .comment-author {
	line-height: 1;
}
#comments .comment-body .says {
	display: none;
}
#comments .comment-body .comment-meta {
	margin-bottom: 10px;
}
#comments .comment-body .comment-meta a {
	color: inherit;
	font-size: 12px;
}
#comments .comment-body .fn {
	display: block;
	font-style: normal;
	font-weight: bold;
	margin-top: 5px;
}

/* Admin Comment */
#comments .bypostauthor > .comment-body,
#comments .bypostauthor > .comment-body .reply a {
	/* None in this theme */
}
#comments .bypostauthor > .comment-body .reply a:hover {
	/* None in this theme */
}

/* Children */
#comments ul.children {
	border-left: 1px solid #dddddd;
	margin: 10px 0 10px 15px;
	padding: 10px 0 10px 20px;
}

/* Comment Form */
#respond #commentform {
	background: #ffffff;
	padding: 30px;
}
#respond .comment-reply-title {
	font-size: 20px;
	margin: 0 0 10px 10px;
}
#respond label {
	display: block;
}
#respond input[type="email"],
#respond input[type="text"],
#respond input[type="url"] {
	width: 50%;
}
@media (max-width: 767px) {
	#respond input[type="email"],
	#respond input[type="text"],
	#respond input[type="url"] {
		width: 100%;
	}
}
#respond .form-allowed-tags {
	margin-bottom: 5px;
}

/* Comment Form (in reply) */
.comment #respond {
	background: #ffffff;
	padding: 30px;
	margin-top: 5px;
}
.comment #respond #commentform {
	background: transparent;
	padding: 0;
}
.comment #respond .comment-reply-title {
	margin: 0 0 20px 0;
}

/* =Archives
----------------------------------------------- */

/* Archive Info and Author Box (single post and archives) */
.tb-info-box {
	background: #ffffff;
	padding: 30px;
}

/* Search Results */
.search-page {
	background: #ffffff;
	padding: 30px;
}

/* Posts Wrap */
.post_list.archive-loop .post-wrap,
.post_grid.archive-loop .post-wrap,
.post_showcase.archive-loop .post-wrap {
	background: #ffffff;
	padding: 30px;
}

/* =Page Templates
----------------------------------------------- */

/* Post List */
.list-template-wrap .list-wrap {
	background: #ffffff;
	padding: 30px;
}

/* Post Grid */
.grid-template-wrap .grid-wrap {
	background: #ffffff;
	padding: 30px;
}

/* Post Showcase */
.showcase-template-wrap .showcase-wrap {
	background: #ffffff;
	padding: 30px;
}
.showcase-template-wrap .tb-sort-nav {
	padding: 0 10px 5px 10px;
}

/* Blank Page */
#blank-page {
	text-align: center;
}

/* Custom Layout */
.element-section > .element.bg-content,
.element-columns .element.bg-content {
	background: #ffffff;
	padding: 30px;
}

/* =Widgets
----------------------------------------------- */

/* General */
.widget {
	margin-bottom: 30px;
}
.widget:last-child {
	margin-bottom: 0;
}

/* Fixed Sidebars */
.fixed-sidebar .widget {
	background: #ffffff;
	padding: 30px;
}
.fixed-sidebar .widget:last-child {
	margin-bottom: 0;
}
.fixed-sidebar .widget.panel {
	padding: 20px;
}
.fixed-sidebar .widget.panel .panel-heading {
	margin: -20px -20px 20px -20px;
	padding: 15px 20px;
}
.fixed-sidebar .widget-title {
	margin-top: 0;
}

/* Footer */
#bottom .panel,
#custom-bottom .panel {
	background: transparent;
	border: none;
}
#bottom .panel,
#custom-bottom .panel {
	background: transparent;
	border: none;
	box-shadow: none;
	-webkit-box-shadow: none;
	color: inherit;
}
#bottom .panel-heading,
#bottom-padding .panel-heading {
	background: transparent;
	border: none;
	padding: 0;
}
#bottom h3,
#custom-bottom h3,
#bottom .widget-title,
#custom-bottom .widget-title {
	background: transparent;
	font-size: 16px;
	line-height: 1.1;
	margin: 0 0 20px 0;
}
