/*
Theme Name: GeneratePress
Theme URI: https://generatepress.com
Author: Tom Usborne
Author URI: https://tomusborne.com
Description: GeneratePress is a lightweight WordPress theme built with a focus on speed and usability. Performance is important to us, which is why a fresh GeneratePress install adds less than 15kb (gzipped) to your page size. We take full advantage of the new block editor (Gutenberg), which gives you more control over creating your content. If you use page builders, GeneratePress is the right theme for you. It is completely compatible with all major page builders, including Beaver Builder and Elementor. Thanks to our emphasis on WordPress coding standards, we can boast full compatibility with all well-coded plugins, including WooCommerce. GeneratePress is fully responsive, uses valid HTML/CSS and is translated into over 25 languages by our amazing community of users. A few of our many features include microdata integration, 9 widget areas, 5 navigation locations, 5 sidebar layouts, dropdown menus (click or hover) and navigation color presets. Learn more and check out our powerful premium version at https://generatepress.com
Version: 2.2.1
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: generatepress
Tags: two-columns, three-columns, one-column, right-sidebar, left-sidebar, footer-widgets, blog, e-commerce, flexible-header, full-width-template, buddypress, custom-header, custom-background, custom-menu, custom-colors, sticky-post, threaded-comments, translation-ready, rtl-language-support, featured-images, theme-options

GeneratePress, Copyright 2014-2018 EDGE22 Studios LTD.
GeneratePress is distributed under the terms of the GNU GPL

GeneratePress is based on Underscores http://underscores.me/, (C) 2012-2018 Automattic, Inc.
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Normalize
# Elements
# Forms
# Links
# Alignments
# Accessibility
# Clearings
# Navigation
	# Mobile Menu
	# Navigation Search
	# Dropdown Menus
	# Sidebar Navigation
	# Layout
	# Slideout Navigation (backwards compatibility)
	# Post Navigation
# Header
# Content
# Media
	# Captions
	# Galleries
	# Comments
# Widgets
# Content Layout
	# One Container
	# Separate Containers
	# Full Width Content
	# Contained Content
	# Columns
# Footer
	# Footer Bar
# Featured Images
# Top Bar
# Back to Top Button
# Icons
# Compatibility
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Normalize
--------------------------------------------------------------*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	border: 0;
	margin: 0;
	padding: 0;
}

html {
	font-family: sans-serif;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust:     100%;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
nav,
section {
	display: block;
}

audio,
canvas,
progress,
video {
	display: inline-block;
	vertical-align: baseline;
}

audio:not([controls]) {
	display: none;
	height: 0;
}

[hidden],
template {
	display: none;
}

ol,
ul {
	list-style: none;
}

table { /* tables still need 'cellspacing="0"' in the markup */
	border-collapse: separate;
	border-spacing: 0;
}

caption,
th,
td {
	font-weight: normal;
	text-align: left;
	padding: 5px;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
	content: "";
}

a {
	background-color: transparent;
}

a img {
	border: 0;
}

/*--------------------------------------------------------------
# Elements
--------------------------------------------------------------*/

body,
button,
input,
select,
textarea {
	font-family: -apple-system, system-ui, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
	font-weight: normal;
	text-transform: none;
	font-size: 17px;
	line-height: 1.5;
}

p {
	margin-bottom: 1.5em;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: inherit;
	font-size: 100%;
	font-style: inherit;
	font-weight: inherit;
}

pre {
	background: rgba(0, 0, 0, 0.05);
	font-family: inherit;
	font-size: inherit;
	line-height: normal;
	margin-bottom: 1.5em;
	padding: 20px;
	overflow: auto;
	max-width: 100%;
}

blockquote {
	border-left: 5px solid rgba(0, 0, 0, 0.05);
	padding: 20px;
	font-size: 1.2em;
	font-style:italic;
	margin: 0 0 1.5em;
	position: relative;
}

blockquote p:last-child {
	margin: 0;
}

table,
th,
td {
	border: 1px solid rgba(0, 0, 0, 0.1);
}

table {
	border-collapse: separate;
	border-spacing: 0;
	border-width: 1px 0 0 1px;
	margin: 0 0 1.5em;
	width: 100%;
}

th,
td {
	padding: 8px;
}

th {
	border-width: 0 1px 1px 0;
}

td {
	border-width: 0 1px 1px 0;
}

hr {
	background-color: rgba(0, 0, 0, 0.1);
	border: 0;
	height: 1px;
	margin-bottom: 40px;
	margin-top: 40px;
}

fieldset {
	padding: 0;
	border: 0;
	min-width: inherit;
}

fieldset legend {
	padding: 0;
	margin-bottom: 1.5em;
}

h1 {
	font-size: 40px;
	margin-bottom: 20px;
	line-height: 1.2em;
	font-weight: 300;
	text-transform: none;
}

h2 {
	font-size: 30px;
	margin-bottom: 20px;
	line-height: 1.2em;
	font-weight: 300;
	text-transform: none;
}

h3 {
	font-size: 20px;
	margin-bottom: 20px;
	line-height: 1.2em;
	font-weight: normal;
	text-transform: none;
}

h4,
h5,
h6 {
	margin-bottom: 20px;
}

ul,
ol {
	margin: 0 0 1.5em 3em;
}

ul {
	list-style: disc;
}

ol {
	list-style: decimal;
}

li > ul,
li > ol {
	margin-bottom: 0;
	margin-left: 1.5em;
}

dt {
	font-weight: bold;
}

dd {
	margin: 0 1.5em 1.5em;
}

b,
strong {
	font-weight: bold;
}

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

address {
	margin: 0 0 1.5em;
}

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

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

mark,
ins {
	text-decoration: none;
}

sup,
sub {
	font-size: 75%;
	height: 0;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sup {
	bottom: 1ex;
}

sub {
	top: .5ex;
}

small {
	font-size: 75%;
}

big {
	font-size: 125%;
}

figure {
	margin: 0;
}

table {
	margin: 0 0 1.5em;
	width: 100%;
}

th {
	font-weight: bold;
}

img {
	height: auto; /* Make sure images are scaled correctly. */
	max-width: 100%; /* Adhere to container width. */
}

/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/

button,
input,
select,
textarea {
	font-size: 100%; /* Corrects font size not being inherited in all browsers */
	margin: 0; /* Addresses margins set differently in IE6/7, F3/4, S5, Chrome */
	vertical-align: baseline; /* Improves appearance and consistency in all browsers */
	*vertical-align: middle; /* Improves appearance and consistency in all browsers */
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
	border: 1px solid transparent;
	background: #666;
	cursor: pointer; /* Improves usability and consistency of cursor style between image-type 'input' and others */
	-webkit-appearance: button; /* Corrects inability to style clickable 'input' types in iOS */
	padding: 10px 20px;
	color: #FFF;
}

input[type="checkbox"],
input[type="radio"] {
	box-sizing: border-box; /* Addresses box sizing set to content-box in IE8/9 */
	padding: 0; /* Addresses excess padding in IE8/9 */
}

input[type="search"] {
	-webkit-appearance: textfield; /* Addresses appearance set to searchfield in S5, Chrome */
	box-sizing:         content-box;
}

input[type="search"]::-webkit-search-decoration { /* Corrects inner padding displayed oddly in S5, Chrome on OSX */
	-webkit-appearance: none;
}

button::-moz-focus-inner,
input::-moz-focus-inner { /* Corrects inner padding and border displayed oddly in FF3/4 www.sitepen.com/blog/2008/05/14/the-devils-in-the-details-fixing-dojos-toolbar-buttons/ */
	border: 0;
	padding: 0;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="tel"],
input[type="number"],
textarea,
select {
	background: #FAFAFA;
	color: #666;
	border: 1px solid #ccc;
	border-radius: 0px;
	padding: 10px 15px;
	box-sizing: border-box;
	max-width: 100%;
}

textarea {
	overflow: auto; /* Removes default vertical scrollbar in IE6/7/8/9 */
	vertical-align: top; /* Improves readability and alignment in all browsers */
	width: 100%;
}

input[type="file"] {
	max-width: 100%;
	box-sizing: border-box;
}

/*--------------------------------------------------------------
# Links
--------------------------------------------------------------*/

a,
button,
input {
	transition: color 0.1s ease-in-out, background-color 0.1s ease-in-out;
}

a,
a:visited,
a:hover,
a:focus {
	text-decoration: none;
}

.button,
.wp-block-button .wp-block-button__link {
	padding: 10px 20px;
	display: inline-block;
}

.wp-block-button .wp-block-button__link {
	font-size: inherit;
	line-height: inherit;
}

.using-mouse :focus {
	outline: 0;
}

.using-mouse ::-moz-focus-inner {
	border: 0;
}

/*--------------------------------------------------------------
# Alignments
--------------------------------------------------------------*/

.alignleft {
	display: inline;
	float: left;
	margin-right: 1.5em;
}

.alignright {
	display: inline;
	float: right;
	margin-left: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin: 0 auto;
}

.size-auto,
.size-full,
.size-large,
.size-medium,
.size-thumbnail {
	max-width: 100%;
	height: auto;
}

.no-sidebar .entry-content .alignfull {
	margin-left: calc( -100vw / 2 + 100% / 2 );
	margin-right: calc( -100vw / 2 + 100% / 2 );
	max-width: 100vw;
	width: auto;
}

/*--------------------------------------------------------------
# Accessibility
--------------------------------------------------------------*/

.screen-reader-text,
.screen-reader-text span,
.screen-reader-shortcut {
	position: absolute !important;
	clip: rect(0, 0, 0, 0);
	height: 1px;
	width: 1px;
	border: 0;
	overflow: hidden;
}

.screen-reader-text:focus,
.screen-reader-shortcut:focus {
	clip: auto !important;
	height: auto;
	width: auto;
	display: block;
	font-size: 1em;
	font-weight: bold;
	padding: 15px 23px 14px;
	color: #333;
	background: #fff;
	z-index: 100000; /* Above WP toolbar. */
	text-decoration: none;
	box-shadow: 0 0 2px 2px rgba(0,0,0,.6);
}

/*--------------------------------------------------------------
# Clearings
--------------------------------------------------------------*/

.clear:after,
.entry-content:after,
.comment-content:after,
.site-header:after,
.site-content:after,
.paging-navigation:after,
.site-footer:after,
.site-info:after,
.page-header-content-container:after, /* Temporary clearing until GPP 1.6.3 */
.inside-navigation:not(.grid-container):after,
.inside-header:not(.grid-container):after,
.inside-top-bar:not(.grid-container):after,
.inside-footer-widgets:not(.grid-container):after {
	content: "";
	display: table;
	clear: both;
}

/*--------------------------------------------------------------
# Navigation
--------------------------------------------------------------*/

.main-navigation {
	z-index: 100;
	padding: 0;
	clear: both;
	display: block;
}

.inside-navigation {
	position: relative;
}

.main-navigation a {
	display: block;
	text-decoration: none;
	font-weight: normal;
	text-transform: none;
	font-size: 15px;
}

.main-navigation ul li a {
	display: block;
}

.main-navigation li {
	float: left;
	position: relative;
}

.main-navigation ul {
	list-style: none;
	margin: 0;
	padding-left: 0;
}

.sf-menu > li.menu-item-float-right {
	float: right !important;
}

.main-navigation .main-nav ul li a {
	padding-left: 20px;
	padding-right: 20px;
	line-height: 60px;
}

/*--------------------------------------------------------------
## Mobile Menu
--------------------------------------------------------------*/

.menu-toggle,
.mobile-bar-items,
.sidebar-nav-mobile {
	display: none;
}

.menu-toggle {
	padding: 0 20px;
	line-height: 60px;
	margin: 0;
	font-weight: normal;
	text-transform: none;
	font-size: 15px;
	cursor: pointer;
}

.main-navigation .mobile-bar-items a {
    padding-left: 20px;
    padding-right: 20px;
    line-height: 60px;
}

/*--------------------------------------------------------------
## Navigation Search
--------------------------------------------------------------*/

.search-item a:before {
	content: "\f002";
	font-family: GeneratePress;

	width: 1.28571429em;
	text-align: center;
	display: inline-block;
}

.search-item.close-search a:before {
	content: "\f00d";
}

.search-item .screen-reader-text {
	top: 0;
	right: 0;
	left: auto;
	margin: 0;
}

.main-navigation li.search-item {
	float: right;
	z-index: 21;
}

li.search-item.active {
	transition: opacity 100ms ease-in-out;
}

.navigation-search {
	position: absolute;
	left: -99999px;
	pointer-events: none;
	visibility: hidden;
	z-index: 20;
	width: 100%;
	top: 0;
	transition: opacity 100ms ease-in-out;
	opacity: 0;
}

.navigation-search.nav-search-active {
	left: 0;
	right: 0;
	pointer-events: auto;
	visibility: visible;
	opacity: 1;
}

.gen-sidebar-nav .navigation-search {
	top: auto;
	bottom: 0;
}

.navigation-search input {
	outline: 0;
	border: 0;
	vertical-align: bottom;
	line-height: 0;
	opacity: 0.9;
	width: 100%;
	z-index: 20;
	border-radius: 0;
	-webkit-appearance: none;
}

.navigation-search input::-ms-clear {
	display: none;
	width: 0;
	height: 0;
}

.navigation-search input::-ms-reveal {
	display: none;
	width: 0;
	height: 0;
}

.navigation-search input::-webkit-search-decoration,
.navigation-search input::-webkit-search-cancel-button,
.navigation-search input::-webkit-search-results-button,
.navigation-search input::-webkit-search-results-decoration {
	display: none;
}

.nav-left-sidebar .main-navigation li.search-item.active,
.nav-right-sidebar .main-navigation li.search-item.active {
	width: auto;
	display: inline-block;
	float: right;
}

.navigation-search input {
	height: 60px;
}

/*--------------------------------------------------------------
## Dropdown Menus
--------------------------------------------------------------*/

.main-navigation ul ul {
	display: block;
	box-shadow: 0 2px 2px rgba(0, 0, 0, 0.1);
	float: left;
	position: absolute;
	left: -99999px;
	opacity: 0;
	z-index: 99999;
	width: 200px;
	text-align: left;
	top: auto;
	transition: opacity 80ms linear;
	transition-delay: 0s;
	pointer-events: none;
	height: 0;
	overflow: hidden;
}

.main-navigation ul ul a {
	display: block;
}

.main-navigation ul ul li {
	width: 100%;
}

.main-navigation .main-nav ul ul li a {
	line-height: normal;
	padding: 10px 20px;
	font-size: 14px;
}

.main-navigation.sub-menu-left .sub-menu {
	right: 0;
}

.dropdown-hover .main-navigation:not(.toggled) ul li:hover > ul,
.dropdown-hover .main-navigation:not(.toggled) ul li.sfHover > ul {
	left: auto;
	opacity: 1;
	transition-delay: 150ms;
	pointer-events: auto;
	height: auto;
	overflow: visible;
}

.dropdown-hover .main-navigation:not(.toggled) ul ul li:hover > ul,
.dropdown-hover .main-navigation:not(.toggled) ul ul li.sfHover > ul {
	left: 100%;
	top: 0;
}

.dropdown-hover .main-navigation.sub-menu-left:not(.toggled) ul ul li:hover > ul,
.dropdown-hover .main-navigation.sub-menu-left:not(.toggled) ul ul li.sfHover > ul {
	right: 100%;
	left: auto;
}

.dropdown-click .main-navigation ul ul {
	visibility: hidden;
}

.dropdown-click .main-navigation ul.toggled-on,
.dropdown-click .main-navigation ul li.sfHover > ul.toggled-on {
	left: auto;
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
	height: auto;
	overflow: visible;
}

.dropdown-click nav ul ul ul {
	background-color: transparent;
}

.main-navigation .main-nav ul ul li a {
	line-height: normal;
}

.nav-float-right .main-navigation ul ul ul {
	top: 0
}

.main-navigation .main-nav ul li.menu-item-has-children > a {
	padding-right: 0;
	position: relative;
}

.menu-item-has-children .dropdown-menu-toggle {
	display: inline-block;
	height: 100%;
	clear: both;
	padding-right: 20px;
	padding-left: 10px;
}

.menu-item-has-children ul .dropdown-menu-toggle {
	padding-top: 10px;
	padding-bottom: 10px;
	margin-top: -10px;
}

nav ul ul .menu-item-has-children .dropdown-menu-toggle,
.sidebar .menu-item-has-children .dropdown-menu-toggle {
	float: right;
}

.dropdown-menu-toggle:before {
	content: "\f107";
	font-family: GeneratePress;

	display: inline-block;
	width: 0.8em;
	text-align: left;
}

nav:not(.toggled) ul ul .dropdown-menu-toggle:before {
	text-align: right;
}

.dropdown-hover .sub-menu-left ul ul .dropdown-menu-toggle {
	-webkit-transform: rotateY(180deg);
	transform: rotateY(180deg);
}

.dropdown-click .menu-item-has-children.sfHover > a .dropdown-menu-toggle:before {
	content: "\f106";
}

.dropdown-hover .sub-menu .dropdown-menu-toggle:before,
.dropdown-hover .children .dropdown-menu-toggle:before {
	content: "\f105";
}

.dropdown-click .main-navigation ul ul ul.toggled-on {
	left: 0;
	top: auto;
	position: relative;
}

/*--------------------------------------------------------------
## Sidebar Navigation
--------------------------------------------------------------*/

.widget-area .main-navigation li {
	float: none;
	display: block;
	width: 100%;
	padding: 0;
	margin: 0;
}

.dropdown-hover .widget-area .main-navigation ul li:hover ul,
.dropdown-hover .widget-area .main-navigation ul li.sfHover > ul {
	top: 0;
	left: 100%;
}

.dropdown-hover.both-right .widget-area .main-navigation ul li:hover ul,
.dropdown-hover.both-right .widget-area .main-navigation ul li.sfHover ul,
.dropdown-hover .widget-area .inside-right-sidebar .main-navigation ul li:hover ul,
.dropdown-hover .widget-area .inside-right-sidebar .main-navigation ul li.sfHover ul {
	right: 100%;
	left: auto;
}

.dropdown-hover.both-right .inside-left-sidebar .dropdown-menu-toggle:before,
.dropdown-hover .inside-right-sidebar .dropdown-menu-toggle:before {
	content: "\f104";
}

.dropdown-hover.both-left .inside-right-sidebar .dropdown-menu-toggle:before,
.dropdown-hover .inside-left-sidebar .dropdown-menu-toggle:before {
	content: "\f105";
}

.dropdown-click .widget-area .main-navigation ul ul {
	top: auto;
	position: absolute;
	float: none;
	width: 100%;
	left: -99999px;
}

.dropdown-click .widget-area .main-navigation ul ul.toggled-on {
	position: relative;
	left: 0;
	right: 0;
}

/*--------------------------------------------------------------
## Layout
--------------------------------------------------------------*/

.nav-float-right .inside-header .main-navigation {
	float: right;
	clear: right;
}

.nav-float-left .inside-header .main-navigation {
	float: left;
	clear: left;
}

.nav-aligned-right .main-navigation .menu > li,
.nav-aligned-center .main-navigation .menu > li {
	float: none;
	display: inline-block;
}

.nav-aligned-right .main-navigation ul,
.nav-aligned-center .main-navigation ul {
	letter-spacing: -0.31em;
	font-size: 1em;
}

.nav-aligned-right .main-navigation ul li,
.nav-aligned-center .main-navigation ul li {
	letter-spacing: normal;
}

.nav-aligned-center .main-navigation {
	text-align: center;
}

.nav-aligned-right .main-navigation {
	text-align: right;
}

/*--------------------------------------------------------------
## Slideout Navigation (backward compatibility)
--------------------------------------------------------------*/

.slideout-navigation .dropdown-menu-toggle:before {
	content: "\f107" !important;
}

.slideout-navigation .sfHover > a .dropdown-menu-toggle:before {
	content: "\f106" !important;
}

/*--------------------------------------------------------------
## Post Navigation
--------------------------------------------------------------*/

.site-main .comment-navigation,
.site-main .posts-navigation,
.site-main .post-navigation {
	margin: 0 0 2em;
	overflow: hidden;
}

.paging-navigation .nav-previous,
.paging-navigation .nav-next {
	display: none;
}

.site-main .paging-navigation .navigation {
	margin: 0; /* Only for WordPress < 4.4 */
}

.site-main .post-navigation {
	margin-bottom: 0;
}

/*--------------------------------------------------------------
# Header
--------------------------------------------------------------*/

.site-header {
	position: relative;
}

.inside-header {
	padding: 40px;
}

.main-title {
	margin: 0;
	font-size: 45px;
	line-height: 1.2em;
	word-wrap: break-word;
	font-weight: bold;
	text-transform: none;
}

.site-description {
	margin: 0;
	line-height: 1.5;
	font-weight: normal;
	text-transform: none;
	font-size: 15px;
}

.site-logo {
	display: inline-block;
	max-width: 100%;
}

.header-aligned-center .site-header {
	text-align: center;
}

.header-aligned-right .site-header {
	text-align: right;
}

.site-header .header-image {
	vertical-align: middle;
}

.header-widget {
	float: right;
	overflow: hidden;
	max-width: 50%;
}

.header-widget .widget {
	padding: 0 0 20px;
	margin-bottom: 0;
}

.header-widget .widget:last-child {
	padding-bottom: 0;
}

.nav-float-right .header-widget .widget {
	padding: 0 0 10px;
}

.nav-float-right .header-widget {
	position: relative;
	top: -10px;
}

.nav-float-left .inside-header .site-branding,
.nav-float-left .inside-header .site-logo {
	float: right;
	clear: right;
}

.nav-float-left .inside-header:after {
	clear: both;
	content: '';
	display: table;
}

.nav-float-right .inside-header .site-branding {
	display: inline-block;
}

.header-widget .widget-title {
	margin-bottom: 15px;
}

/*--------------------------------------------------------------
# Content
--------------------------------------------------------------*/

.sticky{}

.post {
	margin: 0 0 2em;
}

.posted-on .updated {
	display: none;
}

.byline,
.single .byline,
.group-blog .byline {
	display: inline;
}

.page-content,
.entry-content,
.entry-summary {
	margin: 2em 0 0;
}

.page-links {
	clear: both;
	margin: 0 0 1.5em;
}

.blog .format-status .entry-title,
.archive .format-status .entry-title,
.blog .format-aside .entry-header,
.archive .format-aside .entry-header,
.blog .format-status .entry-header,
.archive .format-status .entry-header,
.blog .format-status .entry-meta,
.archive .format-status .entry-meta {
	display: none;
}

.blog .format-aside .entry-content,
.archive .format-aside .entry-content,
.blog .format-status .entry-content,
.archive .format-status .entry-content {
	margin-top: 0;
}

.blog .format-status .entry-content p:last-child,
.archive .format-status .entry-content p:last-child {
	margin-bottom: 0;
}

.site-content,
.entry-header {
	word-wrap: break-word;
}

.entry-title {
	margin-bottom: 0;
}

.page-header {
	margin-bottom: 30px;
}

.page-header .avatar {
	float: left;
	margin-right: 20px;
}

.page-header .author-info {
	overflow: hidden;
}

.page-header > *:last-child,
.page-header .author-info > *:last-child {
	margin-bottom: 0;
}

.entry-meta {
	font-size: 85%;
	margin-top: .5em;
	line-height: 1.5;
}

footer.entry-meta {
	margin-top: 2em;
}

.cat-links:before,
.tags-links:before,
.comments-link:before,
.nav-previous .prev:before,
.nav-next .next:before {
	font-family: GeneratePress;
	text-decoration: inherit;
	position: relative;
	margin-right: 0.6em;
	width: 13px;
	text-align: center;
	display: inline-block;
}

.cat-links:before {
	content: "\f07b";
}

.tags-links:before {
	content: "\f02c";
}

.comments-link:before {
	content: "\f086";
}

.nav-previous .prev:before {
	content: "\f104";
}

.nav-next .next:before {
	content: "\f105";
}

.cat-links,
.tags-links,
.comments-link {
	display: block;
}

.taxonomy-description p:last-child,
.read-more-container,
.page-content > *:last-child,
.entry-content > *:last-child,
.entry-summary > *:last-child {
	margin-bottom: 0;
}

/*--------------------------------------------------------------
# Media
--------------------------------------------------------------*/

.page-content img.wp-smiley,
.entry-content img.wp-smiley,
.comment-content img.wp-smiley {
	border: none;
	margin-bottom: 0;
	margin-top: 0;
	padding: 0;
}

/*--------------------------------------------------------------
## Captions
--------------------------------------------------------------*/

.wp-caption {
	margin-bottom: 1.5em;
	max-width: 100%;
	position:relative;
}

.wp-caption img[class*="wp-image-"] {
	display: block;
	margin: 0 auto 0;
	max-width: 100%;
}

.wp-caption .wp-caption-text {
	font-size: 75%;
	padding-top: 5px;
	opacity: 0.8;
}

.wp-caption img {
	position: relative;
	vertical-align: bottom;
}

/*--------------------------------------------------------------
## Galleries
--------------------------------------------------------------*/

.wp-block-gallery {
    margin-left: 0;
}

.wp-block-gallery .blocks-gallery-image figcaption,
.wp-block-gallery .blocks-gallery-item figcaption {
	background: rgba(255, 255, 255, 0.7);
	color: #000;
	padding: 10px;
	box-sizing: border-box;
}

.gallery {
	margin-bottom: 1.5em;
}

.gallery-item {
	display: inline-block;
	text-align: center;
	vertical-align: top;
	width: 100%;
}

.gallery-columns-2 .gallery-item {
	max-width: 50%;
}

.gallery-columns-3 .gallery-item {
	max-width: 33.33%;
}

.gallery-columns-4 .gallery-item {
	max-width: 25%;
}

.gallery-columns-5 .gallery-item {
	max-width: 20%;
}

.gallery-columns-6 .gallery-item {
	max-width: 16.66%;
}

.gallery-columns-7 .gallery-item {
	max-width: 14.28%;
}

.gallery-columns-8 .gallery-item {
	max-width: 12.5%;
}

.gallery-columns-9 .gallery-item {
	max-width: 11.11%;
}

.gallery-caption {
	display: block;
}

.site-main .gallery {
	margin-bottom: 1.5em;
}

.gallery-item img {
	vertical-align: bottom;
}

.gallery-icon {
	padding: 5px;
}

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

/*--------------------------------------------------------------
# Comments
--------------------------------------------------------------*/

.comment-content a {
	word-wrap: break-word;
}

.bypostauthor {}

.comment,
.comment-list {
	list-style-type: none;
	padding: 0;
	margin: 0;
}

.comment-author-info {
	display: inline-block;
	vertical-align: middle;
}

.comment-meta .avatar {
	float: left;
	margin-right: 10px;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 50%;
}

.comment-author cite {
	font-style: normal;
	font-weight: bold;
}

.entry-meta.comment-metadata {
	margin-top: 0;
}

.comment-content {
	margin-top: 1.5em;
}

.comment-respond {
	margin-top: 0;
}

.comment-form > .form-submit {
	margin-bottom: 0;
}

.comment-form input,
.comment-form-comment {
	margin-bottom: 10px;
}

.comment-form #author,
.comment-form #email,
.comment-form #url {
	display: block;
}

.comment-metadata .edit-link:before {
	display: none;
}

.comment-body {
	padding: 30px 0;
}

.comment-content {
	padding: 30px;
	border: 1px solid rgba(0, 0, 0, 0.05);
}

.depth-1.parent > .children {
	border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}

.comment .children {
	padding-left: 30px;
	margin-top: -30px;
	border-left: 1px solid rgba(0, 0, 0, 0.05);
}

.pingback .comment-body,
.trackback .comment-body {
	border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}

.pingback .edit-link {
	font-size: 13px;
}

.comment-content p:last-child {
	margin-bottom: 0;
}

.comment-list > .comment:first-child {
	padding-top: 0;
	margin-top: 0;
	border-top: 0;
}

ol.comment-list {
	margin-bottom: 1.5em;
}

#wp-comment-cookies-consent {
	margin-right: 7px;
}

.one-container .comments-area {
	margin-top: 1.5em;
}

/*--------------------------------------------------------------
# Widgets
--------------------------------------------------------------*/

.widget-area .widget {
    padding: 40px;
}

.widget {
	margin: 0 0 30px;
	box-sizing: border-box;
}

.sidebar .widget,
.footer-widgets .widget {
	font-size: 17px;
}

.widget select {
	max-width: 100%;
}

.widget_search .search-submit {
	display: none;
}

.widget_categories .children {
	margin-left: 1.5em;
	padding-top: 5px;
}

.widget_categories .children li:last-child {
	padding-bottom: 0;
}

.sidebar .widget *:last-child,
.footer-widgets .widget *:last-child {
	margin-bottom: 0;
}

.widget-title {
	margin-bottom: 30px;
	font-size: 20px;
	line-height: 1.5;
	font-weight: normal;
	text-transform: none;
}

.widget ul,
.widget ol {
	margin: 0;
}

.widget ul li {
	list-style-type: none;
	position: relative;
	padding-bottom: 5px;
}

.widget .search-field {
	width: 100%;
}

.widget:last-child,
.separate-containers .widget:last-child {
	margin-bottom: 0;
}

.widget_nav_menu ul ul,
.widget_pages ul ul {
	margin-left: 1em;
	margin-top: 5px;
}

.widget ul li.menu-item-has-children,
.widget ul li.page_item_has_children {
	padding-bottom: 0;
}

#wp-calendar {
	table-layout: fixed;
	font-size: 80%;
}

#wp-calendar #prev,
#wp-calendar #prev + .pad {
	border-right: 0;
}

.sidebar .grid-container {
	max-width: 100%;
	width: 100%;
}

/*--------------------------------------------------------------
# Content Layout
--------------------------------------------------------------*/

/*--------------------------------------------------------------
## One Container
--------------------------------------------------------------*/

.one-container.both-left .inside-left-sidebar,
.one-container.both-right .inside-left-sidebar {
	margin-right: 15px;
}

.one-container.both-left .inside-right-sidebar,
.one-container.both-right .inside-right-sidebar {
	margin-left: 15px;
}

.separate-containers .site-main > *:last-child,
.one-container .site-main > *:last-child {
	margin-bottom: 0;
}

.one-container .site-main {
	margin: 0;
}

.one-container .inside-right-sidebar,
.one-container .inside-left-sidebar {
	margin-top: 0;
}

.one-container .inside-article {
	padding: 0 0 30px 0;
}

.one-container.page .inside-article {
	padding-bottom: 0;
}

.one-container.right-sidebar .site-main,
.one-container.both-right .site-main {
	margin-right: 40px;
}

.one-container.left-sidebar .site-main,
.one-container.both-left .site-main {
	margin-left: 40px;
}

.one-container.both-sidebars .site-main {
	margin: 0px 40px 0px 40px;
}

/*--------------------------------------------------------------
## Separate Containers
--------------------------------------------------------------*/

.separate-containers .inside-article,
.separate-containers .comments-area,
.separate-containers .page-header,
.separate-containers .paging-navigation,
.one-container .site-content,
.inside-page-header {
	padding: 40px;
}

.separate-containers .widget,
.separate-containers .site-main > *,
.separate-containers .page-header,
.widget-area .main-navigation {
	margin-bottom: 20px;
}

.right-sidebar.separate-containers .site-main {
	margin: 20px 20px 20px 0px;
}

.left-sidebar.separate-containers .site-main {
	margin: 20px 0px 20px 20px;
}

.both-sidebars.separate-containers .site-main {
	margin: 20px;
}

.both-right.separate-containers .site-main {
	margin: 20px 20px 20px 0px;
}

.both-right.separate-containers .inside-left-sidebar,
.both-left.separate-containers .inside-left-sidebar {
	margin-right: 10px;
}

.both-right.separate-containers .inside-right-sidebar,
.both-left.separate-containers .inside-right-sidebar {
	margin-left: 10px;
}

.both-left.separate-containers .site-main {
	margin: 20px 0px 20px 20px;
}

.separate-containers .site-main,
.separate-containers .inside-right-sidebar,
.separate-containers .inside-left-sidebar {
	margin-top: 20px;
	margin-bottom: 20px;
}

.separate-containers .page-header-image,
.separate-containers .page-header-contained,
.separate-containers .page-header-image-single,
.separate-containers .page-header-content-single {
	margin-top: 20px;
}

/*--------------------------------------------------------------
## Full Width Content
--------------------------------------------------------------*/

.full-width-content .container.grid-container {
	max-width: 100%;
}

.full-width-content.no-sidebar.separate-containers .site-main {
	margin: 0;
}

.full-width-content.separate-containers .inside-article,
.full-width-content.one-container .site-content {
	padding: 0;
}

/*--------------------------------------------------------------
## Contained Content
--------------------------------------------------------------*/

.contained-content.separate-containers .inside-article,
.contained-content.one-container .site-content {
	padding: 0;
}

/*--------------------------------------------------------------
## Columns
--------------------------------------------------------------*/

.wp-block-columns {
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin-left: -40px;
}

.wp-block-column:not(:first-child),
.wp-block-column:not(:last-child) {
	padding: 0;
}

.wp-block-columns .wp-block-column {
	-webkit-box-flex: 1;
	-ms-flex: 1;
	flex: 1;
	margin: 0 0 0 40px;
}

/*--------------------------------------------------------------
# Footer
--------------------------------------------------------------*/

.footer-widgets {
	padding: 40px;
}

.site-info {
	text-align: center;
	padding: 20px;
	font-size: 15px;
}

.site-footer .footer-widgets-container .inner-padding {
	padding: 0px 0px 0px 40px;
}

.site-footer .footer-widgets-container .inside-footer-widgets {
	margin-left: -40px;
}

/*--------------------------------------------------------------
## Footer Bar
--------------------------------------------------------------*/

.footer-bar-active .footer-bar .widget {
	padding: 0;
}

.footer-bar .widget_nav_menu > div > ul {
	display: inline-block;
	vertical-align: top;
}

.footer-bar .textwidget p:last-child {
	margin: 0;
}

.footer-bar-align-right .copyright-bar {
	float: left;
}

.footer-bar-align-right .footer-bar,
.footer-bar-align-left .copyright-bar {
	float: right;
	text-align: right;
}

.footer-bar-align-left .footer-bar {
	float: left;
	text-align: left;
}

.footer-bar-align-center .copyright-bar {
	float: none;
	text-align: center;
}

.footer-bar-align-center .footer-bar {
	float: none;
	text-align: center;
	margin-bottom: 10px;
}

.footer-bar .widget-title {
	display: none;
}

.footer-bar .widget_nav_menu li {
	margin: 0 10px;
	float: left;
	padding: 0;
}

.footer-bar .widget_nav_menu li:first-child {
	margin-left: 0;
}

.footer-bar .widget_nav_menu li:last-child {
	margin-right: 0;
}

.footer-bar .widget_nav_menu li ul {
	display: none;
}

/*--------------------------------------------------------------
# Featured Images
--------------------------------------------------------------*/

.post-image {
	margin: 2em 0 0;
}

.page-header-image,
.page-header-image-single {
	line-height: 0; /* no more weird spacing */
}

.separate-containers .page-header-image,
.separate-containers .page-header-content {
	margin-top: 30px;
}

.separate-containers .inside-article > [class*="page-header-"],
.one-container .inside-article > [class*="page-header-"] {
	margin-bottom: 2em;
	margin-top: 0;
}

.inside-article .page-header-image-single.page-header-below-title {
	margin-top: 2em;
}

/*--------------------------------------------------------------
# Top Bar
--------------------------------------------------------------*/

.top-bar {
	font-weight: normal;
	text-transform: none;
	font-size: 13px;
}

.inside-top-bar {
	padding: 10px;
}

.top-bar .inside-top-bar .widget {
	padding: 0;
	display: inline-block;
	margin: 0;
}

.top-bar .inside-top-bar .textwidget p:last-child {
	margin: 0;
}

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

.top-bar-align-right {
	text-align: right;
}

.top-bar-align-right .inside-top-bar >.widget:nth-child(even),
.top-bar-align-left .inside-top-bar > .widget:nth-child(odd) {
	float: left;
	margin-right: 10px;
}

.top-bar-align-right .inside-top-bar >.widget:nth-child(odd),
.top-bar-align-center .inside-top-bar .widget:not(:first-child) {
	margin-left: 10px;
}

.top-bar-align-left .inside-top-bar >.widget:nth-child(even) {
	margin-left: 10px;
	float: right;
}

.top-bar-align-center .inside-top-bar .widget:first-child:last-child {
	display: block
}

.top-bar .widget-title {
	display: none;
}

.top-bar .widget_nav_menu li {
	margin: 0 10px;
	float: left;
	padding: 0;
}

.top-bar .widget_nav_menu li:first-child {
	margin-left: 0;
}

.top-bar .widget_nav_menu li:last-child {
	margin-right: 0;
}

.top-bar .widget_nav_menu li ul {
	display: none;
}

.top-bar .widget_nav_menu > div > ul {
	display: inline-block;
	vertical-align: top;
}

/*--------------------------------------------------------------
# Back to Top Button
--------------------------------------------------------------*/

.generate-back-to-top:before {
	content: "\f106";
	font-family: GeneratePress;
}

.generate-back-to-top,
.generate-back-to-top:visited {
	font-size: 20px;
	border-radius: 3px;
	position: fixed;
	bottom: 30px;
	right: 30px;
	line-height: 40px;
	width: 40px;
	text-align: center;
	z-index: 10;
	transition: opacity 300ms ease-in-out;
}

.generate-back-to-top .screen-reader-text {
	left: 0;
	margin: 0;
}

/*--------------------------------------------------------------
# Icons
--------------------------------------------------------------*/

@font-face {
	font-family: 'GeneratePress';
	src:  url('fonts/generatepress.eot');
	src:  url('fonts/generatepress.eot#iefix') format('embedded-opentype'),
		  url('fonts/generatepress.woff2') format('woff2'),
		  url('fonts/generatepress.woff') format('woff'),
		  url('fonts/generatepress.ttf') format('truetype'),
		  url('fonts/generatepress.svg#GeneratePress') format('svg');
	font-weight: normal;
	font-style: normal;
}

.menu-toggle:before,
.search-item a:before,
.dropdown-menu-toggle:before,
.cat-links:before,
.tags-links:before,
.comments-link:before,
.nav-previous .prev:before,
.nav-next .next:before,
.generate-back-to-top:before {
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	font-style: normal;
	font-variant: normal;
	text-rendering: auto;
	line-height: 1;
	speak: none;
}

.cat-links:before,
.tags-links:before,
.comments-link:before,
.nav-previous .prev:before,
.nav-next .next:before {
	opacity: 0.7;
}

/*--------------------------------------------------------------
# Compatibility
--------------------------------------------------------------*/

/* Globally hidden elements when Infinite Scroll is supported and in use. */
.infinite-scroll .paging-navigation, /* Older / Newer Posts Navigation (always hidden) */
.infinite-scroll.neverending .site-footer { /* Theme Footer (when set to scrolling) */
	display: none;
}

/* When Infinite Scroll has reached its end we need to re-display elements that were hidden (via .neverending) before */
.infinity-end.neverending .site-footer {
	display: block;
}

/* SiteOrigin Page Builder */
.so-panel.widget {
	padding: 0;
}

/* MailChimp CSS */
#mc_embed_signup .clear {
	display: block;
	height: auto;
	visibility: visible;
	width: auto;
}

/* Bootstrap fix */
.container.grid-container {
	width: auto;
}

/*
 * Backwards compatibility until Slideout is updated
 * GP Premium 1.6
 */
.main-navigation .slideout-toggle a:before,
.slide-opened .slideout-overlay .slideout-exit:before {
	font-family: GeneratePress;
}
