/*!
Theme Name: Forty Two
Theme URI: https://aspengrovestudios.com/themes/forty-two/
Author: Aspen Grove Studios
Author URI: https://aspengrovestudios.com
Description: Unlock the full potential of Gutenberg with Forty Two, the theme designed specifically for WordPress' block-based visual editor. Fast, highly responsive, and infinitely customizable, Forty Two is an all-purpose theme that can be used for any kind of website. If you're a professional developer or designer, you'll love its versatility. If you're a DIYer, you'll love knowing that you'll never be hemmed in by your theme's limitations, and you'll never have to wonder if you should have installed something else. Compatible with major visual builders. If you only have one all-purpose theme in your arsenal, make it Forty Two.
Version: 1.0.4
License: GNU General Public License v3 or later
License URI: https://www.gnu.org/licenses/gpl.html
Text Domain: forty-two
Tags: one-column, two-columns, left-sidebar, right-sidebar, flexible-header, custom-background, custom-colors, custom-header, custom-menu, custom-logo, editor-style, featured-image-header, featured-images, footer-widgets, full-width-template, post-formats, rtl-language-support, theme-options, threaded-comments, translation-ready

The Forty Two Theme for WordPress
Copyright (C) 2019  Aspen Grove Studios

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program.  If not, see <https://www.gnu.org/licenses/>.
*/
/* -------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Normalize
# Typography
# Elements
# Forms
# Accessibility
# Alignments
# Layout
# Header
	## Top Bar
	## Branding
	## Main Navigation
# Content
	## Posts and pages
	## Comments
	## Widgets
# Footer
	## Footer Widgets
	## Social Navigation
	## Footer Navigation
	## Site Info
	## Bottom Bar
# Infinite scroll
# Media
	## Captions
	## Galleries
# Plugin Compatibility
	## Gutenberg
	## Torro Forms
------------------------------------------------------------- */
/* Leslie added */
/* -------------------------------------------------------------
# Normalize
Styles based on Normalize v5.0.0 @link https://github.com/necolas/normalize.css
------------------------------------------------------------- */
html {
	font-family: sans-serif;
	-webkit-text-size-adjust: 100%;
	    -ms-text-size-adjust: 100%;
}

body {
	margin: 0;
}

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

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

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

[hidden],
template {
	display: none;
}

a {
	text-decoration: underline;
	background-color: transparent;
}

a:active,
a:hover {
	outline: 0;
}

abbr[title] {
	border-bottom: 1px dotted;
}

b,
strong {
	font-weight: bold;
}

dfn {
	font-style: italic;
}

h1 {
	margin: 0.67em 0;
	font-size: 2em;
}

mark {
	color: #000;
	background: #ff0;
}

small {
	font-size: 80%;
}

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

sup {
	top: -0.5em;
}

sub {
	bottom: -0.25em;
}

img {
	border: 0;
}

svg:not(:root) {
	overflow: hidden;
}

figure {
	margin: 1em 40px;
}

hr {
	-webkit-box-sizing: content-box;
	        box-sizing: content-box;
	height: 0;
}

pre {
	overflow: auto;
}

code,
kbd,
pre,
samp {
	font-family: monospace;
	font-size: 1em;
}

button,
input,
optgroup,
select,
textarea {
	margin: 0;
	color: inherit;
	font: inherit;
}

button {
	overflow: visible;
}

button,
select {
	text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
	-webkit-appearance: button;
	cursor: pointer;
}

button[disabled],
html input[disabled] {
	cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
	padding: 0;
	border: 0;
}

input {
	line-height: normal;
}

input[type="checkbox"],
input[type="radio"] {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	padding: 0;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

fieldset {
	padding: 0.35em 0.625em 0.75em;
	margin: 0 2px;
	border: 1px solid #c0c0c0;
}

legend {
	padding: 0;
	border: 0;
}

textarea {
	overflow: auto;
}

optgroup {
	font-weight: bold;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

td,
th {
	padding: 0;
}

/* -------------------------------------------------------------
# Typography
------------------------------------------------------------- */
body,
button,
input,
select,
textarea {
	color: #1d1d1d;
	font-family: "Libre Franklin", "Helvetica Neue", helvetica, arial, sans-serif;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.5;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	padding: 1em 0 0;
	margin: 0 0 0.5rem;
	clear: both;
	font-weight: 700;
	line-height: 1.4;
}

h1:first-child,
h2:first-child,
h3:first-child,
h4:first-child,
h5:first-child,
h6:first-child {
	padding: 0;
}

h1 {
	font-size: 24px;
	font-size: 1.5rem;
}

h2 {
	font-size: 20px;
	font-size: 1.25rem;
}

h1 + h2 {
	padding: 0;
}

h3 {
	font-size: 18px;
	font-size: 1.125rem;
}

h2 + h3 {
	padding: 0;
}

h4 {
	font-size: 16px;
	font-size: 1rem;
	font-weight: 800;
}

h3 + h4 {
	padding: 0;
}

h5 {
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 800;
}

h4 + h5 {
	padding: 0;
}

h6 {
	font-size: 12px;
	font-size: 0.75rem;
	font-weight: 800;
}

h5 + h6 {
	padding: 0;
}

p {
	padding: 0;
	margin: 0 0 1em;
}

strong {
	font-weight: 700;
}

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

blockquote {
	padding: 1rem;
	margin: 0 0 1em;
	color: #1d1d1d;
	font-size: 1.4rem;
	background: #f6fefd;
	border-left: 8px solid #f14673;
}

blockquote cite,
blockquote footer {
	margin-top: 1em;
	color: #555;
	font-size: 13.6px;
	font-size: 0.85rem;
	font-style: normal;
}

blockquote p {
	margin: 1em;
}

address {
	margin: 0 0 1em;
}

pre {
	max-width: 100%;
	padding: 1.6em;
	margin-bottom: 1.6em;
	overflow: auto;
	font-family: "Courier 10 Pitch", Courier, monospace;
	font-size: 15px;
	font-size: 0.9375rem;
	line-height: 1.6;
	background: #eee;
}

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

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

mark,
ins {
	text-decoration: none;
	background: #fff9c0;
}

big {
	font-size: 125%;
}

a {
	color: #9f42f0;
}

a:visited {
	color: #9f42f0;
}

a:hover,
a:focus,
a:active {
	color: black;
}

a:focus {
	outline: thin dotted;
}

a:hover,
a:active {
	outline: 0;
}

.icon {
	position: relative;
	top: -0.0625em;
	display: inline-block;
	width: 1rem;
	height: 1rem;
	vertical-align: middle;
	background: transparent;

	fill: #f14673;
}

/* Typography for Arabic Font */
html[lang="ar"] body,
html[lang="ar"] button,
html[lang="ar"] input,
html[lang="ar"] select,
html[lang="ar"] textarea,
html[lang="ary"] body,
html[lang="ary"] button,
html[lang="ary"] input,
html[lang="ary"] select,
html[lang="ary"] textarea,
html[lang="azb"] body,
html[lang="azb"] button,
html[lang="azb"] input,
html[lang="azb"] select,
html[lang="azb"] textarea,
html[lang="fa-IR"] body,
html[lang="fa-IR"] button,
html[lang="fa-IR"] input,
html[lang="fa-IR"] select,
html[lang="fa-IR"] textarea,
html[lang="haz"] body,
html[lang="haz"] button,
html[lang="haz"] input,
html[lang="haz"] select,
html[lang="haz"] textarea,
html[lang="ps"] body,
html[lang="ps"] button,
html[lang="ps"] input,
html[lang="ps"] select,
html[lang="ps"] textarea,
html[lang="ur"] body,
html[lang="ur"] button,
html[lang="ur"] input,
html[lang="ur"] select,
html[lang="ur"] textarea {
	font-family: Tahoma, Arial, sans-serif;
}

html[lang="ar"] h1,
html[lang="ar"] h2,
html[lang="ar"] h3,
html[lang="ar"] h4,
html[lang="ar"] h5,
html[lang="ar"] h6,
html[lang="ary"] h1,
html[lang="ary"] h2,
html[lang="ary"] h3,
html[lang="ary"] h4,
html[lang="ary"] h5,
html[lang="ary"] h6,
html[lang="azb"] h1,
html[lang="azb"] h2,
html[lang="azb"] h3,
html[lang="azb"] h4,
html[lang="azb"] h5,
html[lang="azb"] h6,
html[lang="fa-IR"] h1,
html[lang="fa-IR"] h2,
html[lang="fa-IR"] h3,
html[lang="fa-IR"] h4,
html[lang="fa-IR"] h5,
html[lang="fa-IR"] h6,
html[lang="haz"] h1,
html[lang="haz"] h2,
html[lang="haz"] h3,
html[lang="haz"] h4,
html[lang="haz"] h5,
html[lang="haz"] h6,
html[lang="ps"] h1,
html[lang="ps"] h2,
html[lang="ps"] h3,
html[lang="ps"] h4,
html[lang="ps"] h5,
html[lang="ps"] h6,
html[lang="ur"] h1,
html[lang="ur"] h2,
html[lang="ur"] h3,
html[lang="ur"] h4,
html[lang="ur"] h5,
html[lang="ur"] h6 {
	font-weight: 700;
}

/* Typography for Chinese Font */
html[lang^="zh-"] body,
html[lang^="zh-"] button,
html[lang^="zh-"] input,
html[lang^="zh-"] select,
html[lang^="zh-"] textarea {
	font-family: "PingFang TC", "Helvetica Neue", Helvetica, STHeitiTC-Light, Arial, sans-serif;
}

html[lang^="zh-"] h1,
html[lang^="zh-"] h2,
html[lang^="zh-"] h3,
html[lang^="zh-"] h4,
html[lang^="zh-"] h5,
html[lang^="zh-"] h6 {
	font-weight: 700;
}

html[lang="zh-CN"] body,
html[lang="zh-CN"] button,
html[lang="zh-CN"] input,
html[lang="zh-CN"] select,
html[lang="zh-CN"] textarea {
	font-family: "PingFang SC", "Helvetica Neue", Helvetica, STHeitiSC-Light, Arial, sans-serif;
}

/* Typography for Cyrillic Font */
html[lang="bg-BG"] body,
html[lang="bg-BG"] button,
html[lang="bg-BG"] input,
html[lang="bg-BG"] select,
html[lang="bg-BG"] textarea,
html[lang="ru-RU"] body,
html[lang="ru-RU"] button,
html[lang="ru-RU"] input,
html[lang="ru-RU"] select,
html[lang="ru-RU"] textarea,
html[lang="uk"] body,
html[lang="uk"] button,
html[lang="uk"] input,
html[lang="uk"] select,
html[lang="uk"] textarea {
	font-family: "Helvetica Neue", Helvetica, "Segoe UI", Arial, sans-serif;
}

html[lang="bg-BG"] h1,
html[lang="bg-BG"] h2,
html[lang="bg-BG"] h3,
html[lang="bg-BG"] h4,
html[lang="bg-BG"] h5,
html[lang="bg-BG"] h6,
html[lang="ru-RU"] h1,
html[lang="ru-RU"] h2,
html[lang="ru-RU"] h3,
html[lang="ru-RU"] h4,
html[lang="ru-RU"] h5,
html[lang="ru-RU"] h6,
html[lang="uk"] h1,
html[lang="uk"] h2,
html[lang="uk"] h3,
html[lang="uk"] h4,
html[lang="uk"] h5,
html[lang="uk"] h6 {
	font-weight: 700;
	line-height: 1.2;
}

/* Typography for Devanagari Font */
html[lang="bn-BD"] body,
html[lang="bn-BD"] button,
html[lang="bn-BD"] input,
html[lang="bn-BD"] select,
html[lang="bn-BD"] textarea,
html[lang="hi-IN"] body,
html[lang="hi-IN"] button,
html[lang="hi-IN"] input,
html[lang="hi-IN"] select,
html[lang="hi-IN"] textarea,
html[lang="mr-IN"] body,
html[lang="mr-IN"] button,
html[lang="mr-IN"] input,
html[lang="mr-IN"] select,
html[lang="mr-IN"] textarea {
	font-family: Arial, sans-serif;
}

html[lang="bn-BD"] h1,
html[lang="bn-BD"] h2,
html[lang="bn-BD"] h3,
html[lang="bn-BD"] h4,
html[lang="bn-BD"] h5,
html[lang="bn-BD"] h6,
html[lang="hi-IN"] h1,
html[lang="hi-IN"] h2,
html[lang="hi-IN"] h3,
html[lang="hi-IN"] h4,
html[lang="hi-IN"] h5,
html[lang="hi-IN"] h6,
html[lang="mr-IN"] h1,
html[lang="mr-IN"] h2,
html[lang="mr-IN"] h3,
html[lang="mr-IN"] h4,
html[lang="mr-IN"] h5,
html[lang="mr-IN"] h6 {
	font-weight: 700;
}

/* Typography for Greek Font */
html[lang="el"] body,
html[lang="el"] button,
html[lang="el"] input,
html[lang="el"] select,
html[lang="el"] textarea {
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
}

html[lang="el"] h1,
html[lang="el"] h2,
html[lang="el"] h3,
html[lang="el"] h4,
html[lang="el"] h5,
html[lang="el"] h6 {
	font-weight: 700;
	line-height: 1.3;
}

/* Typography for Gujarati Font */
html[lang="gu-IN"] body,
html[lang="gu-IN"] button,
html[lang="gu-IN"] input,
html[lang="gu-IN"] select,
html[lang="gu-IN"] textarea {
	font-family: Arial, sans-serif;
}

html[lang="gu-IN"] h1,
html[lang="gu-IN"] h2,
html[lang="gu-IN"] h3,
html[lang="gu-IN"] h4,
html[lang="gu-IN"] h5,
html[lang="gu-IN"] h6 {
	font-weight: 700;
}

/* Typography for Hebrew Font */
html[lang="he-IL"] body,
html[lang="he-IL"] button,
html[lang="he-IL"] input,
html[lang="he-IL"] select,
html[lang="he-IL"] textarea {
	font-family: "Arial Hebrew", Arial, sans-serif;
}

html[lang="he-IL"] h1,
html[lang="he-IL"] h2,
html[lang="he-IL"] h3,
html[lang="he-IL"] h4,
html[lang="he-IL"] h5,
html[lang="he-IL"] h6 {
	font-weight: 700;
}

/* Typography for Japanese Font */
html[lang="ja"] body,
html[lang="ja"] button,
html[lang="ja"] input,
html[lang="ja"] select,
html[lang="ja"] textarea {
	font-family: "Hiragino Kaku Gothic Pro", Meiryo, sans-serif;
}

html[lang="ja"] h1,
html[lang="ja"] h2,
html[lang="ja"] h3,
html[lang="ja"] h4,
html[lang="ja"] h5,
html[lang="ja"] h6 {
	font-weight: 700;
}

/* Typography for Korean font */
html[lang="ko-KR"] body,
html[lang="ko-KR"] button,
html[lang="ko-KR"] input,
html[lang="ko-KR"] select,
html[lang="ko-KR"] textarea {
	font-family: "Apple SD Gothic Neo", "Malgun Gothic", "Nanum Gothic", Dotum, sans-serif;
}

html[lang="ko-KR"] h1,
html[lang="ko-KR"] h2,
html[lang="ko-KR"] h3,
html[lang="ko-KR"] h4,
html[lang="ko-KR"] h5,
html[lang="ko-KR"] h6 {
	font-weight: 600;
}

/* Typography for Thai Font */
html[lang="th"] body,
html[lang="th"] button,
html[lang="th"] input,
html[lang="th"] select,
html[lang="th"] textarea {
	font-family: "Sukhumvit Set", "Helvetica Neue", Helvetica, Arial, sans-serif;
	line-height: 1.8;
}

html[lang="th"] h1,
html[lang="th"] h2,
html[lang="th"] h3,
html[lang="th"] h4,
html[lang="th"] h5,
html[lang="th"] h6 {
	font-family: "Sukhumvit Set", "Helvetica Neue", Helvetica, Arial, sans-serif;
	line-height: 1.65;
}

/* Remove letter-spacing for all non-latin alphabets */
html[lang="ar"] *,
html[lang="ary"] *,
html[lang="azb"] *,
html[lang="haz"] *,
html[lang="ps"] *,
html[lang^="zh-"] *,
html[lang="bg-BG"] *,
html[lang="ru-RU"] *,
html[lang="uk"] *,
html[lang="bn-BD"] *,
html[lang="hi-IN"] *,
html[lang="mr-IN"] *,
html[lang="el"] *,
html[lang="gu-IN"] *,
html[lang="he-IL"] *,
html[lang="ja"] *,
html[lang="ko-KR"] *,
html[lang="th"] * {
	letter-spacing: 0 !important;
}

/* -------------------------------------------------------------
# Elements
------------------------------------------------------------- */
html {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	text-direction: ltr;
}

*,
*:before,
*:after {
	-webkit-box-sizing: inherit;
	        box-sizing: inherit;
}

body {
	background: #fff;
}

blockquote,
q {
	quotes: "" "";
}

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

hr {
	margin: 1em auto;
	border: 0;
	border-bottom: 2px solid #555;
}

ul,
ol {
	margin: 0 0 0.5rem;
}

ul {
	list-style: disc;
}

ol {
	list-style: decimal;
}

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

dt {
	font-weight: bold;
}

dd {
	margin: 0 2rem 1.5rem;
}

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

figure {
	margin: 1em 0;
}

table {
	width: 100%;
	margin: 0 0 1em;
	overflow-x: auto;
	border-collapse: collapse;
}

tr {
	border-bottom: 1px solid #555;
}

th,
td {
	padding: 0.75rem 1rem;
}

thead th,
thead
td {
	padding-bottom: 1.5rem;
	border-bottom: 2px solid #bbb;
}

th:first-child,
td:first-child {
	padding-left: 0;
}

th:last-child,
td:last-child {
	padding-right: 0;
}

th {
	text-align: left;
}

/* -------------------------------------------------------------
# Forms
------------------------------------------------------------- */
button,
input[type="button"],
input[type="reset"],
input[type="submit"],
.button {
	height: auto;
	padding: 1.5rem 2rem;
	color: #ee2;
	text-decoration: none;
	-webkit-appearance: none;
	   -moz-appearance: none;
	        appearance: none;
	background-color: #9834ef;
	border: 0;
	border-radius: 3px;
}

button:hover,
button:focus,
input[type="button"]:hover,
input[type="button"]:focus,
input[type="reset"]:hover,
input[type="reset"]:focus,
input[type="submit"]:hover,
input[type="submit"]:focus,
.button:hover,
.button:focus {
	background-color: #8512e8;
}

button.button-primary,
input[type="button"].button-primary,
input[type="reset"].button-primary,
input[type="submit"].button-primary,
.button.button-primary {
	color: #fff;
	background-color: #35e4d0;
}

button.button-primary:hover,
button.button-primary:focus,
input[type="button"].button-primary:hover,
input[type="button"].button-primary:focus,
input[type="reset"].button-primary:hover,
input[type="reset"].button-primary:focus,
input[type="submit"].button-primary:hover,
input[type="submit"].button-primary:focus,
.button.button-primary:hover,
.button.button-primary:focus {
	background-color: #1cd4bf;
}

button.button-link,
input[type="button"].button-link,
input[type="reset"].button-link,
input[type="submit"].button-link,
.button.button-link {
	color: #9f42f0;
	text-decoration: underline;
	background-color: transparent;
}

button.button-link:hover,
button.button-link:focus,
input[type="button"].button-link:hover,
input[type="button"].button-link:focus,
input[type="reset"].button-link:hover,
input[type="reset"].button-link:focus,
input[type="submit"].button-link:hover,
input[type="submit"].button-link:focus,
.button.button-link:hover,
.button.button-link:focus {
	color: black;
	background-color: transparent;
}

.form-group {
	display: block;
	margin-bottom: 1em;
}

@media screen and (min-width: 48rem) {
	form.form-horizontal .form-group {
		align-items: stretch;
		-ms-flex-align: stretch;
		-ms-flex-pack: stretch;
		justify-content: stretch;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;

		-webkit-box-align: stretch;
		-webkit-box-pack: stretch;
	}
	form.form-horizontal .form-group > label:first-child {
		-ms-flex: 1;
		    flex: 1;
		padding: 0.75rem 1rem;
		text-align: right;

		-webkit-box-flex: 1;
	}
	form.form-horizontal .form-group > label:first-child + *:last-child {
		-ms-flex: 3;
		    flex: 3;

		-webkit-box-flex: 3;
	}
}

fieldset {
	margin-bottom: 2em;
}

label {
	display: block;
	margin-bottom: 0.5em;
	font-weight: 800;
	cursor: pointer;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
	display: block;
	width: 100%;
	padding: 0.75rem 1rem;
	color: #1d1d1d;
	border: 1px solid #f0f0f0;
	border-radius: 3px;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
	color: #090909;
	border-color: gainsboro;
}

select {
	max-width: 100%;
	border: 1px solid #f0f0f0;
	border-radius: 3px;
}

input[type="radio"],
input[type="checkbox"] {
	margin-right: 0.5em;
	cursor: pointer;
}

input[type="radio"] + label,
input[type="checkbox"] + label {
	display: inline;
	font-weight: 400;
}

/* Placeholder text color -- selectors need to be separate to work. */
::-webkit-input-placeholder {
	color: #838383;
	font-family: "Libre Franklin", "Helvetica Neue", helvetica, arial, sans-serif;
}

:-moz-placeholder {
	color: #838383;
	font-family: "Libre Franklin", "Helvetica Neue", helvetica, arial, sans-serif;
}

::-moz-placeholder {
	color: #838383;
	font-family: "Libre Franklin", "Helvetica Neue", helvetica, arial, sans-serif;
	/* Since FF19 lowers the opacity of the placeholder by default */
	opacity: 1;
}

:-ms-input-placeholder {
	color: #838383;
	font-family: "Libre Franklin", "Helvetica Neue", helvetica, arial, sans-serif;
}

.notice {
	padding: 0.5em 1em;
	margin-bottom: 1em;
	background-color: #fff;
	-webkit-box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.1);
	        box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.1);
	border-left: 4px solid #aaa;
}

.notice.notice-success {
	background-color: #d4ffd8;
	border-left-color: #46b450;
}

.notice.notice-info {
	background-color: #d1f4ff;
	border-left-color: #00a0d2;
}

.notice.notice-warning {
	background-color: #fff3d2;
	border-left-color: #ffb900;
}

.notice.notice-error {
	background-color: #ffdcdc;
	border-left-color: #dc3232;
}

.notice > p:first-child,
.notice > ul:first-child {
	margin-top: 0;
}

.notice > p:last-child,
.notice > ul:last-child {
	margin-bottom: 0;
}

.field-notice.notice-success {
	color: #46b450;
}

.field-notice.notice-info {
	color: #00a0d2;
}

.field-notice.notice-warning {
	color: #ffb900;
}

.field-notice.notice-error {
	color: #dc3232;
}

input[type="text"] + span.field-notice,
input[type="email"] + span.field-notice,
input[type="url"] + span.field-notice,
input[type="password"] + span.field-notice,
input[type="search"] + span.field-notice,
input[type="number"] + span.field-notice,
input[type="tel"] + span.field-notice,
input[type="range"] + span.field-notice,
input[type="date"] + span.field-notice,
input[type="month"] + span.field-notice,
input[type="week"] + span.field-notice,
input[type="time"] + span.field-notice,
input[type="datetime"] + span.field-notice,
input[type="datetime-local"] + span.field-notice,
input[type="color"] + span.field-notice,
select + span.field-notice {
	margin-left: 1em;
}

.modal {
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 10000;
	background-color: rgba(0, 0, 0, 0.6);
}

.modal[aria-hidden="true"] {
	display: none;
}

.modal .modal-dialog {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	overflow-y: auto;
}

@media (min-width: 48rem) {
	.modal .modal-dialog {
		top: 50%;
		left: 50%;
		width: 80%;
		height: auto;
		max-width: 40rem;
		max-height: 95%;
		border-radius: 10px;
		-webkit-transform: translate(-50%, -50%);
		        transform: translate(-50%, -50%);

		     -o-transform: translate(-50%, -50%);
	}
}

.modal-dialog {
	background-color: #fff;
	border: 1px solid #f0f0f0;
}

.modal-header,
.modal-body,
.modal-footer {
	padding: 1.5rem 2rem;
}

.modal-header {
	align-items: flex-start;
	-ms-flex-align: start;
	-ms-flex-pack: justify;
	justify-content: space-between;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	border-bottom: 1px solid #f0f0f0;

	-webkit-box-align: start;
	-webkit-box-pack: justify;
}

.modal-header .modal-title {
	margin-bottom: 0;
	line-height: 1.5;
}

.modal-header .modal-close {
	float: right;
	padding: 1.5rem 2rem;
	margin: -1.5rem -2rem -1.5rem auto;
	color: #555;
	background-color: transparent;
}

.modal-footer {
	align-items: center;
	-ms-flex-align: center;
	-ms-flex-pack: end;
	justify-content: flex-end;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	border-top: 1px solid #f0f0f0;

	-webkit-box-align: center;
	-webkit-box-pack: end;
}

.modal-footer > :not(:last-child) {
	margin-right: 0.5em;
}

.search-form {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

input[type="search"].search-field {
	display: block;
	width: auto;
	padding: 0.75rem 1rem;
	background-color: transparent;
	border: 1px solid #9834ef;
	border-top-right-radius: 0 !important;
	border-bottom-right-radius: 0 !important;
}

button.search-submit {
	display: block;
	padding: 0.75rem 1rem;
	background-color: #9834ef;
	border: 1px solid #9834ef;
	border-bottom-left-radius: 0;
	border-top-left-radius: 0;
}

button.search-submit:hover,
button.search-submit:focus {
	background-color: #1d1d1d;
	border: 1px solid #1d1d1d;
}

button.search-submit .icon {
	fill: #fff;
}

.no-svg .search-submit .screen-reader-text {
	position: relative !important;
	width: auto;
	height: auto;
	clip: auto;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 400;
}

.post-password-form {
	display: block;
	margin-right: auto;
	margin-left: auto;
}

body.no-sidebar .post-password-form {
	max-width: 20rem;
}

.post-password-form input[type="submit"] {
	color: #fff;
	background-color: #35e4d0;
}

.post-password-form input[type="submit"]:visited {
	color: #fff;
}

.post-password-form input[type="submit"]:hover,
.post-password-form input[type="submit"]:focus {
	background-color: #1cd4bf;
}

.post-password-form p:last-child {
	overflow: hidden;
}

.post-password-form p:last-child input[type="submit"] {
	float: right;
}

.page-login-form {
	display: block;
	margin-right: auto;
	margin-left: auto;
}

body.no-sidebar .page-login-form {
	max-width: 20rem;
}

.page-login-form #loginform {
	overflow: hidden;
}

.page-login-form #loginform .login-remember {
	float: left;
}

.page-login-form #loginform .login-submit input[type="submit"] {
	float: right;
}

.page-login-form #loginform + .login-links {
	font-size: 14.4px;
	font-size: 0.9rem;
}

.page-login-form .login-links {
	text-align: center;
}

#signup-content {
	padding-right: 2rem;
	padding-left: 2rem;
}

#signup-content .wp-signup-container,
#signup-content .wp-activate-container {
	display: block;
	margin-right: auto;
	margin-left: auto;
}

body.no-sidebar #signup-content .wp-signup-container,
body.no-sidebar
#signup-content .wp-activate-container {
	max-width: 20rem;
}

#setupform,
#activateform {
	font-size: 14.4px;
	font-size: 0.9rem;
}

#setupform label,
#setupform input,
#setupform select,
#setupform textarea,
#activateform label,
#activateform input,
#activateform select,
#activateform textarea {
	font-size: 16px;
	font-size: 1rem;
}

#setupform br,
#activateform br {
	display: block;
	margin: 0;
	content: "";
}

#setupform label,
#activateform label {
	margin-top: 1em;
}

#setupform input[type="submit"],
#activateform input[type="submit"] {
	color: #fff;
	background-color: #35e4d0;
}

#setupform input[type="submit"]:visited,
#activateform input[type="submit"]:visited {
	color: #fff;
}

#setupform input[type="submit"]:hover,
#setupform input[type="submit"]:focus,
#activateform input[type="submit"]:hover,
#activateform input[type="submit"]:focus {
	background-color: #1cd4bf;
}

#setupform p.submit,
#activateform p.submit {
	text-align: right;
}

#setupform p.error,
#activateform p.error {
	padding: 0.5em 1em;
	background-color: #ffdcdc;
	-webkit-box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.1);
	        box-shadow: 0 1px 1px 0 rgba(0, 0, 0, 0.1);
	border-left: 4px solid #dc3232;
}

#signup-welcome .h3 {
	padding: 0 2rem;
	font-weight: bold;
}

/* -------------------------------------------------------------
# Accessibility
------------------------------------------------------------- */
/* Text meant only for screen readers. */
.screen-reader-text {
	position: absolute !important;
	width: 1px;
	height: 1px;
	overflow: hidden;
	clip: rect(1px, 1px, 1px, 1px);
	word-wrap: normal !important;
	/* Many screen reader and browser combinations announce broken words as they would appear visually. */
}

.screen-reader-text:focus {
	top: 5px;
	left: 5px;
	z-index: 100000;
	display: block;
	width: auto;
	height: auto;
	padding: 15px 23px 14px;
	clip: auto !important;
	color: #9834ef;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: bold;
	line-height: normal;
	text-decoration: none;
	background-color: #f1f1f1;
	-webkit-box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	        box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	border-radius: 3px;
	/* Above WP toolbar. */
}

/* Do not show the outline on the skip link target. */
#content[tabindex="-1"]:focus {
	outline: 0;
}

/* -------------------------------------------------------------
# Alignments
------------------------------------------------------------- */
.alignleft {
	display: inline;
	float: left;
	margin-right: 1em;
}

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

.aligncenter {
	display: block;
	margin-right: auto;
	margin-left: auto;
	clear: both;
}

.alignwide {
	width: auto;
}

@media (min-width: 44rem) {
	body.no-sidebar .entry-header > .alignwide,
	body.no-sidebar .entry-content > .alignwide,
	body.no-sidebar .entry-footer > .alignwide,
	body.mce-content-body .alignwide {
		margin-right: calc(40rem / 2 + 2rem - 50vw);
		margin-left: calc(40rem / 2 + 2rem - 50vw);
	}
}

@media (min-width: 72rem) {
	body.no-sidebar .entry-header > .alignwide,
	body.no-sidebar .entry-content > .alignwide,
	body.no-sidebar .entry-footer > .alignwide,
	body.mce-content-body .alignwide {
		margin-right: -14rem;
		margin-left: -14rem;
	}
}

@media (min-width: 72rem) {
	body.navbar-left.no-sidebar .entry-header > .alignwide,
	body.navbar-left.no-sidebar .entry-content > .alignwide,
	body.navbar-left.no-sidebar .entry-footer > .alignwide,
	body.navbar-right.no-sidebar .entry-header > .alignwide,
	body.navbar-right.no-sidebar .entry-content > .alignwide,
	body.navbar-right.no-sidebar .entry-footer > .alignwide {
		margin-right: -4rem;
		margin-left: -4rem;
	}
}

.alignfull {
	width: auto;
}

body.no-sidebar .entry-header > .alignfull,
body.no-sidebar .entry-content > .alignfull,
body.no-sidebar .entry-footer > .alignfull,
body.mce-content-body .alignfull {
	margin-right: -2rem;
	margin-left: -2rem;
}

@media (min-width: 44rem) {
	body.no-sidebar .entry-header > .alignfull,
	body.no-sidebar .entry-content > .alignfull,
	body.no-sidebar .entry-footer > .alignfull,
	body.mce-content-body .alignfull {
		margin-right: calc(40rem / 2 - 50vw);
		margin-left: calc(40rem / 2 - 50vw);
	}
}

@media (min-width: 44rem) {
	body.wrapped-layout.no-sidebar .entry-header > .alignfull,
	body.wrapped-layout.no-sidebar .entry-content > .alignfull,
	body.wrapped-layout.no-sidebar .entry-footer > .alignfull {
		margin-right: -16rem;
		margin-left: -16rem;
	}
}

@media (min-width: 44rem) {
	body.navbar-left.no-sidebar .entry-header > .alignfull,
	body.navbar-left.no-sidebar .entry-content > .alignfull,
	body.navbar-left.no-sidebar .entry-footer > .alignfull,
	body.navbar-right.no-sidebar .entry-header > .alignfull,
	body.navbar-right.no-sidebar .entry-content > .alignfull,
	body.navbar-right.no-sidebar .entry-footer > .alignfull {
		margin-right: calc(40rem / 2 - (50vw - 20rem / 2));
		margin-left: calc(40rem / 2 - (50vw - 20rem / 2));
	}
}

@media (min-width: 44rem) {
	body.navbar-left.wrapped-layout.no-sidebar .entry-header > .alignfull,
	body.navbar-left.wrapped-layout.no-sidebar .entry-content > .alignfull,
	body.navbar-left.wrapped-layout.no-sidebar .entry-footer > .alignfull,
	body.navbar-right.wrapped-layout.no-sidebar .entry-header > .alignfull,
	body.navbar-right.wrapped-layout.no-sidebar .entry-content > .alignfull,
	body.navbar-right.wrapped-layout.no-sidebar .entry-footer > .alignfull {
		margin-right: -6rem;
		margin-left: -6rem;
	}
}

/* -------------------------------------------------------------
# Blocks
------------------------------------------------------------- */
.wp-block-quote cite,
.wp-block-quote footer {
	margin-top: 1em;
	color: #555;
	font-size: 13.6px;
	font-size: 0.85rem;
	font-style: normal;
}

.wp-block-pullquote {
	padding: 6rem;
	color: #1d1d1d;
	text-align: center;
	border-top: 4px solid #f14673;
	border-bottom: 4px solid #f14673;
	border-left: none;
}

.wp-block-pullquote > p {
	font-size: 24px;
	font-size: 1.5rem;
	font-weight: 900;
	line-height: 1.6;
}

.wp-block-pullquote cite,
.wp-block-pullquote footer {
	position: relative;
	color: #555;
	font-size: 12.8px;
	font-size: 0.8rem;
	font-weight: 900;
	text-transform: uppercase;
}

.wp-block-separator {
	max-width: 8rem;
	border: 0;
	border-bottom: 2px solid #555;
}

.wp-block-separator.is-style-wide {
	max-width: none;
}

.wp-block-separator.is-style-dots {
	max-width: none;
	border-bottom: 0;
}

.wp-block-separator.is-style-dots:before {
	color: #555;
}

.wp-block-button {
	margin-bottom: 1em;
}

.wp-block-button .wp-block-button__link {
	padding: 1.5rem 2rem;
	color: #ee2;
	text-decoration: none;
	-webkit-appearance: none;
	   -moz-appearance: none;
	        appearance: none;
	background-color: #9834ef;
	border: 0;
	border-radius: 3px;
}

.wp-block-button .wp-block-button__link:hover,
.wp-block-button .wp-block-button__link:focus {
	color: #ee2;
	background-color: #8512e8;
}

.wp-block-button.is-style-primary .wp-block-button__link {
	color: #fff;
	background-color: #35e4d0;
}

.wp-block-button.is-style-primary .wp-block-button__link:hover,
.wp-block-button.is-style-primary .wp-block-button__link:focus {
	color: #fff;
	background-color: #1cd4bf;
}

.wp-block-gallery {
	padding-left: 0;
	list-style: none;
}

.wp-block-gallery.aligncenter .blocks-gallery-image,
.wp-block-gallery.aligncenter .blocks-gallery-item,
.wp-block-gallery.alignleft .blocks-gallery-image,
.wp-block-gallery.alignleft .blocks-gallery-item,
.wp-block-gallery.alignright .blocks-gallery-image,
.wp-block-gallery.alignright .blocks-gallery-item,
.wp-block-gallery .blocks-gallery-image,
.wp-block-gallery .blocks-gallery-item {
	margin: 0.5em;
}

.wp-block-cover-image {
	width: auto;
	height: 25rem;
	margin-bottom: 1em;
}

.wp-block-image.alignwide,
.wp-block-image.alignfull,
.wp-block-embed.alignwide,
.wp-block-embed.alignfull {
	text-align: center;
}

.wp-block-image img {
	display: block;
	width: 100%;
}

html:not(.amp) .wp-block-embed {
	position: relative;
	height: 0;
	padding-top: 56.25%;
}

@media (min-width: 44rem) {
	body.no-sidebar .entry-header html:not(.amp) .wp-block-embed.alignwide,
	body.no-sidebar .entry-content html:not(.amp) .wp-block-embed.alignwide,
	body.no-sidebar .entry-footer html:not(.amp) .wp-block-embed.alignwide,
	body.mce-content-body html:not(.amp) .wp-block-embed.alignwide {
		padding-top: calc((100vw - 2rem * 2) * 0.5625);
	}
}

@media (min-width: 72rem) {
	body.no-sidebar .entry-header html:not(.amp) .wp-block-embed.alignwide,
	body.no-sidebar .entry-content html:not(.amp) .wp-block-embed.alignwide,
	body.no-sidebar .entry-footer html:not(.amp) .wp-block-embed.alignwide,
	body.mce-content-body html:not(.amp) .wp-block-embed.alignwide {
		padding-top: calc((72rem - 2rem * 2) * 0.5625);
	}
}

@media (min-width: 44rem) {
	body.no-sidebar .entry-header html:not(.amp) .wp-block-embed.alignfull,
	body.no-sidebar .entry-content html:not(.amp) .wp-block-embed.alignfull,
	body.no-sidebar .entry-footer html:not(.amp) .wp-block-embed.alignfull,
	body.mce-content-body html:not(.amp) .wp-block-embed.alignfull {
		padding-top: calc(100vw * 0.5625);
	}
}

@media (min-width: 44rem) {
	body.wrapped-layout.no-sidebar .entry-header html:not(.amp) .wp-block-embed.alignfull,
	body.wrapped-layout.no-sidebar .entry-content html:not(.amp) .wp-block-embed.alignfull,
	body.wrapped-layout.no-sidebar .entry-footer html:not(.amp) .wp-block-embed.alignfull {
		padding-top: calc(72rem * 0.5625);
	}
}

html:not(.amp) .wp-block-embed > iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

p.wp-block-subhead {
	color: #555;
	font-size: 17.6px;
	font-size: 1.1rem;
	font-style: italic;
	opacity: 1;
}

.wp-block-aspengrove-row > * {
	max-width: 40rem;
	margin: 0 auto;
}

/* -------------------------------------------------------------
# Layout
------------------------------------------------------------- */
.site {
	display: grid;

	grid-template: "top-bar" auto	"header" auto	"content" auto	"footer" auto	"bottom-bar" auto	/ 1fr;
}

body.navbar-above-header .site {
	grid-template: "top-bar" auto	"navbar" auto	"header" auto	"content" auto	"footer" auto	"bottom-bar" auto	/ 1fr;
}

body.navbar-below-header .site {
	grid-template: "top-bar" auto	"header" auto	"navbar" auto	"content" auto	"footer" auto	"bottom-bar" auto	/ 1fr;
}

body.wrapped-layout .site {
	display: block;
	max-width: 72rem;
	margin-right: auto;
	margin-left: auto;
}

.site .site-header {
	grid-area: header;
}

.site .site-content {
	grid-area: content;
}

.site .site-footer {
	grid-area: footer;
}

.site .site-navbar {
	grid-area: navbar;
}

.site .site-top-bar {
	grid-area: top-bar;
}

.site .site-bottom-bar {
	grid-area: bottom-bar;
}

.site-component {
	display: block;
}

.site-component > .site-component-inner {
	display: block;
	max-width: 72rem;
	padding-right: 2rem;
	padding-left: 2rem;
	margin-right: auto;
	margin-left: auto;
}

body.wrapped-layout .site-component > .site-component-inner {
	max-width: none;
	margin-right: 0;
	margin-left: 0;
}

@media (min-width: 48rem) {
	.site-component.is-flex > .site-component-inner {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		padding-right: 0;
		padding-left: 0;
	}
	.site-component.is-flex > .site-component-inner > * {
		padding-right: 2rem;
		padding-left: 2rem;
	}
}

.site-component .sticky-content {
	display: none;
}

.site-component.is-sticky {
	position: fixed;
	right: 0;
	left: 0;
	z-index: 9999;
}

.site-component.is-sticky.is-sticky-top {
	top: 0;
}

.site-component.is-sticky.is-sticky-bottom {
	bottom: 0;
}

@media (min-width: 72rem) {
	.wrapped-layout .site-component.is-sticky {
		right: auto;
		left: 50%;
		max-width: 72rem;
		-webkit-transform: translateX(-50%);
		        transform: translateX(-50%);

		     -o-transform: translateX(-50%);
	}
}

.site-component.is-sticky .sticky-content {
	display: block;
}

body.navbar-left .site-component.is-sticky {
	left: 3rem;
}

@media (min-width: 48rem) {
	body.navbar-left .site-component.is-sticky {
		left: 20rem;
	}
}

body.navbar-right .site-component.is-sticky {
	right: 3rem;
}

@media (min-width: 48rem) {
	body.navbar-right .site-component.is-sticky {
		right: 20rem;
	}
}

body.no-sidebar .site-content > .site-component-inner .site-sidebar {
	display: none;
}

.site-content > .site-component-inner .site-sidebar a {
	color: #555;
}

@media (min-width: 48rem) {
	.site-content > .site-component-inner {
		align-items: stretch;
		-ms-flex-align: stretch;
		-ms-flex-direction: row;
		    flex-direction: row;
		-ms-flex-pack: center;
		justify-content: center;

		-webkit-box-align: stretch;
		-webkit-box-direction: normal;
		-webkit-box-orient: horizontal;
		-webkit-box-pack: center;
	}
	body.left-sidebar .site-content > .site-component-inner .site-main,
	body.right-sidebar .site-content > .site-component-inner .site-main {
		-ms-flex: 2;
		    flex: 2;

		-webkit-box-flex: 2;
	}
	body.left-sidebar .site-content > .site-component-inner .site-sidebar,
	body.right-sidebar .site-content > .site-component-inner .site-sidebar {
		-ms-flex: 1;
		    flex: 1;

		-webkit-box-flex: 1;
	}
	body.left-sidebar .site-content > .site-component-inner {
		-ms-flex-direction: row-reverse;
		    flex-direction: row-reverse;

		-webkit-box-direction: reverse;
		-webkit-box-orient: horizontal;
	}
	body.sidebar-small .site-content > .site-component-inner .site-main {
		-ms-flex: 3;
		    flex: 3;

		-webkit-box-flex: 3;
	}
	body.sidebar-small .site-content > .site-component-inner .site-sidebar {
		-ms-flex: 1;
		    flex: 1;

		-webkit-box-flex: 1;
	}
	body.sidebar-medium .site-content > .site-component-inner .site-main {
		-ms-flex: 2;
		    flex: 2;

		-webkit-box-flex: 2;
	}
	body.sidebar-medium .site-content > .site-component-inner .site-sidebar {
		-ms-flex: 1;
		    flex: 1;

		-webkit-box-flex: 1;
	}
	body.sidebar-large .site-content > .site-component-inner .site-main {
		-ms-flex: 1;
		    flex: 1;

		-webkit-box-flex: 1;
	}
	body.sidebar-large .site-content > .site-component-inner .site-sidebar {
		-ms-flex: 1;
		    flex: 1;

		-webkit-box-flex: 1;
	}
}

.site-content {
	padding-top: 4rem;
	overflow-x: hidden;
}

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

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
	float: left;
	width: 50%;
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
	float: right;
	width: 50%;
	text-align: right;
}

@media screen and (max-width: 600px) {
	#wpadminbar {
		position: fixed;
	}
}

@media screen and (max-width: 1100px) {
	.site {
		display: block;
	}
}

/* -------------------------------------------------------------
# Header
------------------------------------------------------------- */
/* -------------------------------------------------------------
## Top Bar
------------------------------------------------------------- */
.site-top-bar {
	padding-top: 0.75rem;
	padding-bottom: 0.75rem;
	color: #f0f0f0;
	font-size: 15px;
	background-color: #1d1d1d;
}

.site-top-bar a {
	color: #fff;
}

.site-top-bar a:visited {
	color: #fff;
}

.site-top-bar a:hover,
.site-top-bar a:focus,
.site-top-bar a:active {
	color: #ebebeb;
}

.site-top-bar .widget_social_menu ul li {
	padding-right: 0;
}

.site-top-bar .widget_social_menu ul li a {
	border: 0;
}

.site-top-bar .widget_social_menu ul li a:hover {
	background: transparent;
}

.site-top-bar .widget_social_menu .icon {
	width: 30px;
	height: 30px;
	padding: 5px;
}

.site-top-bar .widget_social_menu .icon:hover {
	fill: #35e4d0;
}

/* -------------------------------------------------------------
## Header Media
------------------------------------------------------------- */
.site-custom-header {
	position: relative;
	color: #1d1d1d;
	background-color: #fff;
}

.site-custom-header a {
	color: #1d1d1d;
}

.site-custom-header a:visited {
	color: #1d1d1d;
}

.site-custom-header a:hover,
.site-custom-header a:focus,
.site-custom-header a:active {
	color: #090909;
}

.site-custom-header.text-left > .site-component-inner {
	text-align: left;
}

.site-custom-header.text-center > .site-component-inner {
	text-align: center;
}

.site-custom-header.text-right > .site-component-inner {
	text-align: right;
}

.has-header-image .site-custom-header,
.has-header-video .site-custom-header,
.has-page-header .site-custom-header {
	display: table;
	width: 100%;
	height: 10rem;
}

@media (min-width: 48rem) {
	.has-header-image .site-custom-header,
	.has-header-video .site-custom-header,
	.has-page-header .site-custom-header {
		height: 16rem;
	}
}

.has-header-image .site-custom-header > .site-header-media,
.has-header-video .site-custom-header > .site-header-media,
.has-page-header .site-custom-header > .site-header-media {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 2;
	overflow: hidden;
}

.has-header-image .site-custom-header > .site-header-media img,
.has-header-image .site-custom-header > .site-header-media video,
.has-header-image .site-custom-header > .site-header-media iframe,
.has-header-video .site-custom-header > .site-header-media img,
.has-header-video .site-custom-header > .site-header-media video,
.has-header-video .site-custom-header > .site-header-media iframe,
.has-page-header .site-custom-header > .site-header-media img,
.has-page-header .site-custom-header > .site-header-media video,
.has-page-header .site-custom-header > .site-header-media iframe {
	position: absolute;
	top: 50%;
	left: 0;
	display: block;
	width: 100%;
	min-width: 100%;
	-webkit-transform: translateY(-50%);
	        transform: translateY(-50%);

	     -o-transform: translateY(-50%);
}

.has-header-image .site-custom-header > .site-component-inner,
.has-header-video .site-custom-header > .site-component-inner,
.has-page-header .site-custom-header > .site-component-inner {
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 3;
	width: 100%;
	-webkit-transform: translate(-50%, -50%);
	        transform: translate(-50%, -50%);

	     -o-transform: translate(-50%, -50%);
}

.site-custom-header .site-page-header-content h1 {
	margin: 0;
	font-size: 28.8px;
	font-size: 1.8rem;
}

.site-custom-header .site-page-header-content h1 + * {
	padding: 0.5em 0 0;
}

.site-custom-header .site-page-header-content .entry-title,
.site-custom-header .site-page-header-content .entry-meta {
	margin: 0;
}

/* -------------------------------------------------------------
## Branding
------------------------------------------------------------- */
.site-title {
	padding: 0;
	margin: 0;
	clear: both;
	font-size: 24px;
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.4;
}

.site-description {
	padding: 0.5em 0 0.75rem;
	margin: 0;
	clear: both;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.4;
}

.custom-logo-link {
	display: block;
}

.custom-logo {
	display: block;
	width: auto;
	max-height: 130px;
}

/* -------------------------------------------------------------
## Navbar
------------------------------------------------------------- */
.site-navbar {
	position: relative;
	color: #1d1d1d;
	background-color: #fff;
	-webkit-box-shadow: 0 10px 40px rgba(0, 0, 0, 0.1);
	        box-shadow: 0 10px 40px rgba(0, 0, 0, 0.1);
}

.site-navbar a {
	color: #1d1d1d;
}

.site-navbar a:visited {
	color: #1d1d1d;
}

.site-navbar a:hover,
.site-navbar a:focus,
.site-navbar a:active {
	color: #090909;
}

.site-navbar.site-component > .site-component-inner {
	min-height: 5rem;
}

.site-navbar.site-component.is-flex > .site-component-inner {
	align-items: center;
	-ms-flex-align: center;
	-ms-flex-pack: justify;
	justify-content: space-between;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;

	-webkit-box-align: center;
	-webkit-box-pack: justify;
}

@media screen and (min-width: 48rem) {
	.site-navbar.site-component.is-flex .site-navigation {
		-ms-flex: 1;
		    flex: 1;

		-webkit-box-flex: 1;
	}
	.site-navbar.site-component.is-flex .site-navigation-content {
		-ms-flex-pack: justify;
		justify-content: space-between;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;

		-webkit-box-pack: justify;
	}
}

.site-navbar.site-component.is-flex.centered > .site-component-inner {
	-ms-flex-pack: center;
	justify-content: center;

	-webkit-box-pack: center;
}

@media screen and (min-width: 48rem) {
	.site-navbar.site-component.is-flex.centered .site-navigation-content {
		-ms-flex-pack: center;
		justify-content: center;

		-webkit-box-pack: center;
	}
}

.site-navbar .site-branding.sticky-content {
	display: none;
}

body.scrolled-past-header-site-branding .site-navbar .site-branding.sticky-content {
	display: block;
}

.site-navbar .site-branding:first-child {
	text-align: left;
}

.site-navbar .site-branding:last-child {
	text-align: right;
}

@media (min-width: 48rem) {
	.site-navbar .site-navigation-content > * {
		padding-right: 2rem;
		padding-left: 2rem;
	}
	.site-navbar .site-navigation-content > *:first-child {
		padding-left: 0;
	}
	.site-navbar .site-navigation-content > *:last-child {
		padding-right: 0;
	}
}

.site-navbar .site-navigation-extra {
	margin-top: 1em;
}

@media (min-width: 48rem) {
	.site-navbar .site-navigation-extra {
		margin-top: 0;
	}
}

.site-navbar .site-navbar-toggle {
	position: fixed;
	top: 0;
	bottom: 0;
	z-index: 100;
	display: none;
	width: 3rem;
	background-color: rgba(0, 0, 0, 0.065);
}

.site-navbar .site-navbar-toggle:hover,
.site-navbar .site-navbar-toggle:focus {
	background-color: rgba(0, 0, 0, 0.1);
}

.site-navbar .site-navbar-toggle .icon-close {
	display: none;
}

.site-navbar .site-navbar-toggle .toggle-text {
	display: block;
	-webkit-transform: rotate(90deg);
	        transform: rotate(90deg);
	-webkit-transform-origin: center;
	        transform-origin: center;

	     -o-transform: rotate(90deg);
	     -o-transform-origin: center;
}

body.navbar-left .site-navbar,
body.navbar-right .site-navbar {
	position: fixed;
	top: 0;
	bottom: 0;
	z-index: 10000;
	width: 20rem;
	overflow-x: hidden;
	overflow-y: auto;
}

body.navbar-left .site-navbar .site-navbar-toggle,
body.navbar-right .site-navbar .site-navbar-toggle {
	display: block;
}

@media (min-width: 48rem) {
	body.navbar-left .site-navbar .site-navbar-toggle,
	body.navbar-right .site-navbar .site-navbar-toggle {
		display: none;
	}
}

.js body.navbar-left .site-navbar,
.amp body.navbar-left .site-navbar,
.js
body.navbar-right .site-navbar,
.amp
body.navbar-right .site-navbar {
	width: 3rem;
}

@media (min-width: 48rem) {
	.js body.navbar-left .site-navbar,
	.amp body.navbar-left .site-navbar,
	.js
	body.navbar-right .site-navbar,
	.amp
	body.navbar-right .site-navbar {
		width: 20rem;
	}
}

.js body.navbar-left .site-navbar > .site-component-inner,
.amp body.navbar-left .site-navbar > .site-component-inner,
.js
body.navbar-right .site-navbar > .site-component-inner,
.amp
body.navbar-right .site-navbar > .site-component-inner {
	display: none;
}

@media screen and (min-width: 48rem) {
	.js body.navbar-left .site-navbar > .site-component-inner,
	.amp body.navbar-left .site-navbar > .site-component-inner,
	.js
	body.navbar-right .site-navbar > .site-component-inner,
	.amp
	body.navbar-right .site-navbar > .site-component-inner {
		display: block;
	}
}

.js body.navbar-left .site-navbar.toggled,
.amp body.navbar-left .site-navbar.toggled,
.js
body.navbar-right .site-navbar.toggled,
.amp
body.navbar-right .site-navbar.toggled {
	width: 20rem;
}

.js body.navbar-left .site-navbar.toggled > .site-component-inner,
.amp body.navbar-left .site-navbar.toggled > .site-component-inner,
.js
body.navbar-right .site-navbar.toggled > .site-component-inner,
.amp
body.navbar-right .site-navbar.toggled > .site-component-inner {
	display: block;
}

@media screen and (min-width: 48rem) {
	.js body.navbar-left .site-navbar.toggled > .site-component-inner,
	.amp body.navbar-left .site-navbar.toggled > .site-component-inner,
	.js
	body.navbar-right .site-navbar.toggled > .site-component-inner,
	.amp
	body.navbar-right .site-navbar.toggled > .site-component-inner {
		display: block;
	}
}

.js body.navbar-left .site-navbar.toggled .site-navbar-toggle .icon-close,
.amp body.navbar-left .site-navbar.toggled .site-navbar-toggle .icon-close,
.js
body.navbar-right .site-navbar.toggled .site-navbar-toggle .icon-close,
.amp
body.navbar-right .site-navbar.toggled .site-navbar-toggle .icon-close {
	display: inline-block;
}

.js body.navbar-left .site-navbar.toggled .site-navbar-toggle .icon-bars,
.amp body.navbar-left .site-navbar.toggled .site-navbar-toggle .icon-bars,
.js
body.navbar-right .site-navbar.toggled .site-navbar-toggle .icon-bars,
.amp
body.navbar-right .site-navbar.toggled .site-navbar-toggle .icon-bars {
	display: none;
}

body.navbar-left .site-navbar {
	left: 0;
}

body.navbar-left .site-navbar > .site-component-inner {
	padding-right: 5rem;
}

@media (min-width: 48rem) {
	body.navbar-left .site-navbar > .site-component-inner {
		padding-right: 2rem;
	}
}

.js body.navbar-left .site-navbar .site-navbar-toggle,
.amp body.navbar-left .site-navbar .site-navbar-toggle {
	left: 0;
}

.js body.navbar-left .site-navbar.toggled .site-navbar-toggle,
.amp body.navbar-left .site-navbar.toggled .site-navbar-toggle {
	left: 17rem;
}

body.navbar-right .site-navbar {
	right: 0;
}

body.navbar-right .site-navbar > .site-component-inner {
	padding-left: 5rem;
}

@media (min-width: 48rem) {
	body.navbar-right .site-navbar > .site-component-inner {
		padding-left: 2rem;
	}
}

.js body.navbar-right .site-navbar .site-navbar-toggle,
.amp body.navbar-right .site-navbar .site-navbar-toggle {
	right: 0;
}

.js body.navbar-right .site-navbar.toggled .site-navbar-toggle,
.amp body.navbar-right .site-navbar.toggled .site-navbar-toggle {
	right: 17rem;
}

body.admin-bar.navbar-left .site-navbar,
body.admin-bar.navbar-left .site-navbar .site-navbar-toggle,
body.admin-bar.navbar-right .site-navbar,
body.admin-bar.navbar-right .site-navbar .site-navbar-toggle {
	top: 46px;
}

@media (min-width: 783px) {
	body.admin-bar.navbar-left .site-navbar,
	body.admin-bar.navbar-left .site-navbar .site-navbar-toggle,
	body.admin-bar.navbar-right .site-navbar,
	body.admin-bar.navbar-right .site-navbar .site-navbar-toggle {
		top: 32px;
	}
}

body.admin-bar.navbar-left .site-navbar .site-branding:first-child,
body.admin-bar.navbar-right .site-navbar .site-branding:first-child {
	text-align: center;
}

.js .site-navbar .site-navigation .site-navigation-content,
.amp .site-navbar .site-navigation .site-navigation-content {
	position: absolute;
	top: 100%;
	right: 0;
	left: 0;
	z-index: 2;
	display: none;
	padding: 1.5rem 1rem;
	background-color: #fff;
}

.js .site-navbar .site-navigation .site-navigation-content .site-navigation-extra,
.amp .site-navbar .site-navigation .site-navigation-content .site-navigation-extra {
	padding: 0 1rem;
}

@media screen and (min-width: 48rem) {
	.js .site-navbar .site-navigation .site-navigation-content,
	.amp .site-navbar .site-navigation .site-navigation-content {
		position: static;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		padding: 0;
	}
	.js .site-navbar .site-navigation .site-navigation-content .site-navigation-extra,
	.amp .site-navbar .site-navigation .site-navigation-content .site-navigation-extra {
		padding: 0;
	}
}

.js .site-navbar .site-navigation.toggled .site-navigation-content,
.amp .site-navbar .site-navigation.toggled .site-navigation-content {
	display: block;
}

@media screen and (min-width: 48rem) {
	.js .site-navbar .site-navigation.toggled .site-navigation-content,
	.amp .site-navbar .site-navigation.toggled .site-navigation-content {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}
}

body.navbar-left .site-navbar .site-navigation ul.menu,
body.navbar-right .site-navbar .site-navigation ul.menu {
	display: block;
}

@media screen and (min-width: 48rem) {
	body.navbar-left .site-navbar .site-navigation ul.menu > li,
	body.navbar-right .site-navbar .site-navigation ul.menu > li {
		display: block;
	}
}

.js body.navbar-left .site-navbar .site-navigation a,
.js body.navbar-right .site-navbar .site-navigation a,
.amp body.navbar-left .site-navbar .site-navigation a,
.amp body.navbar-right .site-navbar .site-navigation a {
	padding: 0.75rem 0;
}

.js body.navbar-left .site-navbar .site-navigation .site-navigation-content,
.js body.navbar-right .site-navbar .site-navigation .site-navigation-content,
.amp body.navbar-left .site-navbar .site-navigation .site-navigation-content,
.amp body.navbar-right .site-navbar .site-navigation .site-navigation-content {
	position: static;
	padding: 1.5rem 0;
}

@media screen and (min-width: 48rem) {
	.js body.navbar-left .site-navbar .site-navigation .site-navigation-content,
	.js body.navbar-right .site-navbar .site-navigation .site-navigation-content,
	.amp body.navbar-left .site-navbar .site-navigation .site-navigation-content,
	.amp body.navbar-right .site-navbar .site-navigation .site-navigation-content {
		display: block;
	}
}

.js body.navbar-left .site-navbar .site-navigation.toggled .site-navigation-content,
.js body.navbar-right .site-navbar .site-navigation.toggled .site-navigation-content,
.amp body.navbar-left .site-navbar .site-navigation.toggled .site-navigation-content,
.amp body.navbar-right .site-navbar .site-navigation.toggled .site-navigation-content {
	display: block;
}

@media screen and (min-width: 48rem) {
	.js body.navbar-left .site-navbar .site-navigation.toggled .site-navigation-content,
	.js body.navbar-right .site-navbar .site-navigation.toggled .site-navigation-content,
	.amp body.navbar-left .site-navbar .site-navigation.toggled .site-navigation-content,
	.amp body.navbar-right .site-navbar .site-navigation.toggled .site-navigation-content {
		display: block;
	}
}

.js body.navbar-left .site-navbar .site-navigation.toggled ul.menu,
.js body.navbar-right .site-navbar .site-navigation.toggled ul.menu,
.amp body.navbar-left .site-navbar .site-navigation.toggled ul.menu,
.amp body.navbar-right .site-navbar .site-navigation.toggled ul.menu {
	display: block;
}

.js body.navbar-left .site-navbar .site-navigation ul.menu,
.js body.navbar-right .site-navbar .site-navigation ul.menu,
.amp body.navbar-left .site-navbar .site-navigation ul.menu,
.amp body.navbar-right .site-navbar .site-navigation ul.menu {
	display: none;
}

@media screen and (min-width: 48rem) {
	.js body.navbar-left .site-navbar .site-navigation ul.menu,
	.js body.navbar-right .site-navbar .site-navigation ul.menu,
	.amp body.navbar-left .site-navbar .site-navigation ul.menu,
	.amp body.navbar-right .site-navbar .site-navigation ul.menu {
		display: block;
	}
}

body.navbar-left .site {
	margin-left: 3rem;
}

@media (min-width: 48rem) {
	body.navbar-left .site {
		margin-left: 20rem;
	}
}

body.navbar-left .site .site-navbar .site-navigation a {
	padding: 0.6rem 0.75rem;
}

body.navbar-left .site .site-navigation-menu a:before,
body.navbar-left .site .site-navigation-menu a:after {
	top: 0.6rem;
	width: 3px;
	height: 25px;
}

body.navbar-left .site .site-navigation ul.menu ul .menu-item-has-children > a > .icon {
	-webkit-transform: none;
	        transform: none;

	     -o-transform: none;
}

body.navbar-left .site .site-navigation ul.menu ul li:hover > ul {
	top: 3rem;
	left: 0;
	border-top: 2px solid #fff;
}

body.navbar-left .site .site-navigation-content .widget li {
	padding-left: 0;
	border-left: 0;
}

body.navbar-left .site .site-navigation-content .widget_social_menu {
	padding: 0.75rem 0 0 0.75rem;
}

body.navbar-left .site .site-navigation-content .widget_social_menu a {
	padding: 0 !important;
}

body.navbar-right .site {
	margin-right: 3rem;
}

@media (min-width: 48rem) {
	body.navbar-right .site {
		margin-right: 20rem;
	}
}

body.navbar-right .site .site-navbar .site-navigation a {
	padding: 0.6rem 0.75rem;
}

body.navbar-right .site .site-navigation-menu a:before,
body.navbar-right .site .site-navigation-menu a:after {
	top: 0.5rem;
	width: 3px;
	height: 25px;
}

body.navbar-right .site .site-navigation ul.menu ul .menu-item-has-children > a > .icon {
	-webkit-transform: none;
	        transform: none;

	     -o-transform: none;
}

body.navbar-right .site .site-navigation ul.menu ul li:hover > ul {
	top: 3rem;
	left: 0;
	border-top: 2px solid #fff;
}

body.navbar-right .site .site-navigation-content .widget li {
	padding-left: 0;
	border-left: 0;
}

body.navbar-right .site .site-navigation-content .widget_social_menu {
	padding: 0.75rem 0 0 0.75rem;
}

body.navbar-right .site .site-navigation-content .widget_social_menu a {
	padding: 0 !important;
}

/* -------------------------------------------------------------
## Navigation
------------------------------------------------------------- */
.site-navigation ul {
	padding-left: 0;
	margin: 0;
	list-style: none;
}

.site-navigation li {
	position: relative;
}

.site-navigation a {
	display: block;
	padding: 0.6rem 1rem;
	text-decoration: none;
}

.site-navigation .menu-item-has-children > a > .icon,
.site-navigation .page_item_has_children > a > .icon {
	display: none;
}

@media screen and (min-width: 48rem) {
	.site-navigation .menu-item-has-children > a > .icon,
	.site-navigation .page_item_has_children > a > .icon {
		position: relative;
		top: -1px;
		left: 7px;
		display: inline;
	}
}

.site-navigation .dropdown-toggle {
	position: absolute;
	top: 0;
	right: -1rem;
	display: none;
	padding: 0.75rem 1rem;
	margin: 0 auto;
	color: #333;
	font-size: 16px;
	line-height: 1.5;
	text-shadow: none;
	background-color: transparent;
	-webkit-box-shadow: none;
	        box-shadow: none;
	border: 0;
}

.site-navigation .dropdown-toggle:hover,
.site-navigation .dropdown-toggle:focus {
	background-color: transparent;
	-webkit-box-shadow: none;
	        box-shadow: none;
}

.site-navigation .dropdown-toggle:focus {
	outline: thin dotted;
}

.site-navigation .dropdown-toggle.toggled .icon {
	-webkit-transform: rotate(-180deg);
	        transform: rotate(-180deg);

	     -o-transform: rotate(-180deg);
}

.site-navigation .menu-toggle {
	display: none;
	padding: 1em;
	margin: 1px auto 2px;
	color: #333;
	font-size: 14px;
	font-size: 0.875rem;
	font-weight: 800;
	line-height: 1.5;
	text-shadow: none;
	background-color: transparent;
	-webkit-box-shadow: none;
	        box-shadow: none;
	border: 0;
}

.site-navigation .menu-toggle:hover,
.site-navigation .menu-toggle:focus {
	background-color: transparent;
	-webkit-box-shadow: none;
	        box-shadow: none;
}

.site-navigation .menu-toggle:focus {
	outline: thin solid;
}

.site-navigation .menu-toggle .icon {
	top: -2px;
	margin-right: 0.5em;
}

.site-navigation .menu-toggle .icon-close {
	display: none;
}

.site-navigation ul.menu {
	-ms-flex-pack: center;
	justify-content: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;

	-webkit-box-pack: center;
}

.site-navigation ul.menu ul {
	padding: 0 0 0 3rem;
}

@media screen and (min-width: 48rem) {
	.site-navigation ul.menu > li {
		display: inline-block;
	}
	.site-navigation ul.menu > li > a {
		padding: 1rem;
	}
	.site-navigation ul.menu ul {
		position: absolute;
		top: 100%;
		left: -999em;
		z-index: 99999;
		display: block;
		padding: 0.75rem 0;
		background-color: #1d1d1d;
	}
	.site-navigation ul.menu ul a {
		width: 14em;
		color: #fff;
	}
	.site-navigation ul.menu ul .menu-item-has-children > a > .icon,
	.site-navigation ul.menu ul .page_item_has_children > a > .icon {
		position: absolute;
		top: 50%;
		right: 1rem;
		left: auto;
		margin-top: -12px;
		-webkit-transform: rotate(-90deg);
		        transform: rotate(-90deg);

		fill: #f14673;
		     -o-transform: rotate(-90deg);
	}
	.site-navigation ul.menu ul ul {
		top: 0;
		left: -999em;
		margin-top: -1px;
	}
	.site-navigation ul.menu ul li:hover > ul,
	.site-navigation ul.menu ul li.focus > ul,
	.site-navigation ul.menu ul li:focus-within > ul {
		right: auto;
		left: 100%;
	}
	.site-navigation ul.menu li:hover > ul,
	.site-navigation ul.menu li.focus > ul,
	.site-navigation ul.menu li:focus-within > ul {
		right: auto;
		left: 0;
	}
}

.site-navigation ul.menu ul.sub-menu li {
	padding: 0 0.5rem;
}

.site-navigation ul.menu ul.sub-menu li:last-child {
	border-bottom: 0;
}

.site-navigation ul.menu ul.sub-menu .icon {
	width: 1.3rem;
	height: 1.3rem;
	padding: 3px;
}

.js .site-navigation ul.menu,
.amp .site-navigation ul.menu {
	display: none;
}

.js .site-navigation ul.menu ul,
.amp .site-navigation ul.menu ul {
	display: none;
}

.js .site-navigation ul.menu ul.toggled,
.amp .site-navigation ul.menu ul.toggled {
	display: block;
}

@media screen and (min-width: 48rem) {
	.js .site-navigation ul.menu,
	.amp .site-navigation ul.menu {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}
	.js .site-navigation ul.menu ul,
	.amp .site-navigation ul.menu ul {
		display: block;
	}
}

.js .site-navigation .dropdown-toggle,
.amp .site-navigation .dropdown-toggle {
	display: inline-block;
}

@media screen and (min-width: 48rem) {
	.js .site-navigation .dropdown-toggle,
	.amp .site-navigation .dropdown-toggle {
		display: none;
	}
}

.js .site-navigation .menu-toggle,
.amp .site-navigation .menu-toggle {
	display: block;
}

@media screen and (min-width: 48rem) {
	.js .site-navigation .menu-toggle,
	.amp .site-navigation .menu-toggle {
		display: none;
	}
}

.js .site-navigation.toggled ul.menu,
.amp .site-navigation.toggled ul.menu {
	display: block;
}

@media screen and (min-width: 48rem) {
	.js .site-navigation.toggled ul.menu,
	.amp .site-navigation.toggled ul.menu {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}
}

.js .site-navigation.toggled .menu-toggle .icon-close,
.amp .site-navigation.toggled .menu-toggle .icon-close {
	display: inline-block;
}

.js .site-navigation.toggled .menu-toggle .icon-bars,
.amp .site-navigation.toggled .menu-toggle .icon-bars {
	display: none;
}

.no-svg .site-navigation .dropdown-toggle {
	width: 2em;
	padding: 0.5em 0 0;
	text-align: center;
}

.no-svg .site-navigation .dropdown-toggle .svg-fallback.icon-angle-down {
	font-size: 20px;
	font-size: 1.25rem;
	font-weight: 400;
	line-height: 1;
	-webkit-transform: rotate(180deg);
	        transform: rotate(180deg);

	     -o-transform: rotate(180deg);
}

.no-svg .site-navigation .dropdown-toggle .svg-fallback.icon-angle-down:before {
	content: "\005E";
}

.no-svg .site-navigation .dropdown-toggle.toggled .svg-fallback.icon-angle-down {
	-webkit-transform: rotate(0);
	        transform: rotate(0);

	     -o-transform: rotate(0);
}

.site-navigation-menu a:before,
.site-navigation-menu a:after {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	height: 3px;
	content: "";
	background-color: #f14673;
}

.site-navigation-menu a:before {
	-webkit-transform: translateY(-8px);
	        transform: translateY(-8px);
	-webkit-transition: opacity 0s, -webkit-transform 0s cubic-bezier(0.175, 0.885, 0.32, 1.275);
	        transition: opacity 0s, -webkit-transform 0s cubic-bezier(0.175, 0.885, 0.32, 1.275);
	        transition: transform 0s cubic-bezier(0.175, 0.885, 0.32, 1.275), opacity 0s;
	        transition: transform 0s cubic-bezier(0.175, 0.885, 0.32, 1.275), opacity 0s, -webkit-transform 0s cubic-bezier(0.175, 0.885, 0.32, 1.275), -o-transform 0s cubic-bezier(0.175, 0.885, 0.32, 1.275);
	        transition: transform 0s cubic-bezier(0.175, 0.885, 0.32, 1.275), opacity 0s, -webkit-transform 0s cubic-bezier(0.175, 0.885, 0.32, 1.275);
	opacity: 0;

	     -o-transform: translateY(-8px);
	     -o-transition: opacity 0s, -o-transform 0s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.site-navigation-menu a:after {
	-webkit-transform: translateY(4px);
	        transform: translateY(4px);
	-webkit-transition: opacity 0.2s, -webkit-transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275);
	        transition: opacity 0.2s, -webkit-transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275);
	        transition: transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275), opacity 0.2s;
	        transition: transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275), opacity 0.2s, -webkit-transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275), -o-transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275);
	        transition: transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275), opacity 0.2s, -webkit-transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275);
	opacity: 0;

	     -o-transform: translateY(4px);
	     -o-transition: opacity 0.2s, -o-transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.site-navigation-menu a:hover:before,
.site-navigation-menu a:hover:after,
.site-navigation-menu a:focus:before,
.site-navigation-menu a:focus:after {
	-webkit-transform: translateY(0);
	        transform: translateY(0);
	opacity: 1;

	     -o-transform: translateY(0);
}

.site-navigation-menu a:hover:before,
.site-navigation-menu a:focus:before {
	-webkit-transition: opacity 0.2s, -webkit-transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275);
	        transition: opacity 0.2s, -webkit-transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275);
	        transition: transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275), opacity 0.2s;
	        transition: transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275), opacity 0.2s, -webkit-transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275), -o-transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275);
	        transition: transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275), opacity 0.2s, -webkit-transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275);

	     -o-transition: opacity 0.2s, -o-transform 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.site-navigation-menu a:hover:after,
.site-navigation-menu a:focus:after {
	-webkit-transition: opacity 0s 0.2s, -webkit-transform 0s 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275);
	        transition: opacity 0s 0.2s, -webkit-transform 0s 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275);
	        transition: transform 0s 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275), opacity 0s 0.2s;
	        transition: transform 0s 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275), opacity 0s 0.2s, -webkit-transform 0s 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275), -o-transform 0s 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275);
	        transition: transform 0s 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275), opacity 0s 0.2s, -webkit-transform 0s 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275);

	     -o-transition: opacity 0s 0.2s, -o-transform 0s 0.2s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.site-navigation-menu .menu-item-has-children a:before,
.site-navigation-menu .menu-item-has-children a:after {
	top: 0;
	width: 100%;
	height: 3px;
}

.site-navigation-menu .menu-item-has-children li a:before,
.site-navigation-menu .menu-item-has-children li a:after {
	top: 0.5rem;
	width: 3px;
	height: 30px;
}

/* -------------------------------------------------------------
## Breadcrumbs
------------------------------------------------------------- */
.site-breadcrumbs {
	padding-top: 1.5rem;
	padding-bottom: 1.5rem;
	background-color: rgba(0, 0, 0, 0.02);
}

/* -------------------------------------------------------------
# Content
------------------------------------------------------------- */
/* -------------------------------------------------------------
## Posts and pages
------------------------------------------------------------- */
.sticky {
	display: block;
}

.hentry {
	margin: 0 0 2em;
}

.generic-page-header,
.entry-header,
.entry-content,
.entry-footer {
	margin: 0 0 1em;
}

body.no-sidebar .generic-page-header,
body.no-sidebar
.entry-header,
body.no-sidebar
.entry-content,
body.no-sidebar
.entry-footer {
	max-width: 40rem;
	margin: 0 auto 1em;
}

.entry-meta,
.entry-terms,
.entry-action-links {
	margin-bottom: 1em;
}

.entry-authorbox {
	align-items: flex-start;
	-ms-flex-align: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	background-color: rgba(0, 0, 0, 0.01);

	-webkit-box-align: start;
	-webkit-box-pack: start;
}

.entry-authorbox .entry-authorbox-description {
	-ms-flex: 1;
	    flex: 1;
	padding-left: 0;

	-webkit-box-flex: 1;
}

.entry-authorbox-avatar,
.entry-authorbox-description {
	padding: 1.5rem 2rem;
}

.entry-authorbox-avatar p:last-child,
.entry-authorbox-avatar ul:last-child,
.entry-authorbox-description p:last-child,
.entry-authorbox-description ul:last-child {
	margin-bottom: 0;
}

.author-social-links {
	display: inline-block;
	padding-left: 0;
	margin-bottom: 0;
	margin-left: 0;
	list-style: none;
}

.author-social-links li {
	display: inline;
	padding-right: 1rem;
}

.author-social-links li:last-child {
	padding-right: 0;
}

.author-social-links a {
	text-decoration: none;
}

.author-social-links .icon {
	width: 1.5rem;
	height: 1.5rem;
}

.updated:not(.published) {
	display: none;
}

.navigation {
	margin-bottom: 1em;
	text-align: center;
}

.nav-links {
	display: inline-block;
	border: 1px solid #f0f0f0;
}

.nav-links .page-numbers {
	display: inline-block;
	padding: 1.5rem 2rem;
}

.nav-links .page-numbers.current {
	font-weight: 700;
}

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

.wp-post-image {
	display: block;
	margin-right: auto;
	margin-left: auto;
}

.attachment img {
	display: block;
	width: 100%;
}

.wp-audio-shortcode,
.wp-video-shortcode {
	display: block;
}

.wp-audio-shortcode .mejs-controls .mejs-time-rail .mejs-time-current,
.wp-video-shortcode .mejs-controls .mejs-time-rail .mejs-time-current {
	background: #9834ef;
}

/* -------------------------------------------------------------
## Comments
------------------------------------------------------------- */
body.no-sidebar .comments-area {
	max-width: 40rem;
	margin: 0 auto 1em;
}

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

.comment-list ol {
	padding-left: 0;
	margin-left: 2em;
	list-style: none;
}

.comment {
	margin-bottom: 1em;
}

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

.bypostauthor {
	border: 1px solid #f0f0f0;
}

.bypostauthor .comment-body .comment-avatar {
	padding: 2px;
}

.comment-body {
	align-items: flex-start;
	-ms-flex-align: start;
	-ms-flex-pack: justify;
	justify-content: space-between;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin-bottom: 0.5em;

	-webkit-box-align: start;
	-webkit-box-pack: justify;
}

.comment-body .comment-avatar {
	margin-right: 0.5em;
}

.comment-body .comment-wrap {
	-ms-flex: 1;
	    flex: 1;

	-webkit-box-flex: 1;
}

.comment-meta {
	margin-bottom: 0.5em;
}

.comment-author,
.comment-date {
	display: inline-block;
	margin-left: 0.5em;
}

.comment-author a,
.comment-date a {
	text-decoration: none;
}

.comment-author:first-child,
.comment-date:first-child {
	margin-left: 0;
}

.comment-date {
	font-size: 90%;
}

.comment-content p,
.comment-content ul,
.comment-content ol {
	margin-bottom: 0.5em;
}

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

.comment-action-links ul {
	display: inline-block;
	padding-left: 0;
	margin-bottom: 0;
	margin-left: 0;
	list-style: none;
}

.comment-action-links ul li {
	display: inline;
	margin-left: 1em;
}

.comment-action-links ul li:first-child {
	margin-left: 0;
}

/* -------------------------------------------------------------
# Widgets
------------------------------------------------------------- */
.widget {
	margin-bottom: 2em;
	/* Make sure select elements fit in widgets. */
}

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

.widget ul {
	padding-left: 0;
	list-style: none;
}

.widget li {
	max-width: 95%;
	margin-bottom: 0.5rem;
}

.widget li a:hover:after {
	position: relative;
	top: -2px;
	display: inline-block;
	width: 5px;
	height: 5px;
	margin-left: 15px;
	content: "";
	background: #9834ef;
	border-radius: 50%;
	-webkit-transition: all 0.2s;
	        transition: all 0.2s;

	     -o-transition: all 0.2s;
}

h2.widget-title {
	margin-bottom: 1rem;
}

h2.widget-title:before {
	position: relative;
	bottom: -40px;
	display: block;
	width: 30px;
	height: 3px;
	content: "";
	background: #f14673;
}

.inline-widget {
	padding-right: 2rem;
	padding-left: 2rem;
	margin-bottom: 0;
}

.inline-widget:first-child {
	padding-left: 0;
}

.inline-widget:last-child {
	padding-right: 0;
}

.inline-widget p {
	display: inline-block;
	padding-right: 1rem;
	padding-left: 1rem;
	margin: 0;
}

.inline-widget p:first-child {
	padding-left: 0;
}

.inline-widget p:last-child {
	padding-right: 0;
}

.inline-widget ul {
	padding-left: 0;
	margin: 0;
	list-style: none;
}

.inline-widget ul li {
	display: inline-block;
	padding-right: 0.4rem;
	padding-left: 1rem;
}

.inline-widget ul li:first-child {
	padding-left: 0;
}

.inline-widget ul li:last-child {
	padding-right: 0;
}

.inline-widget ul ul {
	display: none;
}

.inline-widget label,
.inline-widget input,
.inline-widget select {
	margin: 0;
}

.inline-widget-area:not(.site-component),
.inline-widget-area.site-component.is-flex > .site-component-inner {
	align-items: center;
	-ms-flex-align: center;
	-ms-flex-pack: justify;
	justify-content: space-between;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;

	-webkit-box-align: center;
	-webkit-box-pack: justify;
}

.inline-widget-area.site-component.is-flex.centered > .site-component-inner {
	-ms-flex-pack: center;
	justify-content: center;

	-webkit-box-pack: center;
}

.inline-widget-title {
	display: none;
}

.widget_login_links ul,
.widget_social_menu ul {
	padding-left: 0;
	margin: 0;
	list-style: none;
}

.widget_login_links ul li,
.widget_social_menu ul li {
	display: inline-block;
	margin-right: 1em;
}

.widget_login_links ul li:last-child,
.widget_social_menu ul li:last-child {
	margin-right: 0;
}

.widget_login_links.inline-widget ul li,
.widget_social_menu.inline-widget ul li {
	margin-right: 0;
}

.widget_social_menu .icon {
	top: 0;
	width: 40px;
	height: 40px;
	padding: 10px;
}

.widget_social_menu ul li {
	margin-right: 0.5em;
}

.widget_social_menu ul li a {
	padding: 0;
	border: 1px solid #f14673;
	border-radius: 50%;
}

.widget_social_menu ul li a:hover {
	background: #35e4d0;
	border-color: #35e4d0;
}

.widget_social_menu.inline-widget ul li {
	padding-left: 0;
}

/** Make inline secondary widgets stacked **/
@media screen and (max-width: 863px) {
	.inline-widget-area.site-component.is-flex > .site-component-inner {
		-ms-flex-direction: column;
		    flex-direction: column;

		-webkit-box-direction: normal;
		-webkit-box-orient: vertical;
	}
	.inline-widget {
		padding-right: 0;
		padding-left: 0;
	}
}

.widget_calendar {
	padding: 20px 25px;
	background: rgba(255, 255, 255, 0.7);
	border: 1px solid #e0e0e0;
	border-radius: 6px;
}

.widget_calendar a {
	color: #f14673 !important;
}

.widget_calendar tr {
	border-bottom-color: #e0e0e0;
}

.widget_calendar thead th {
	border: 0;
}

.widget_calendar caption {
	font-size: 24px;
}

/* -------------------------------------------------------------
# Footer
------------------------------------------------------------- */
/* -------------------------------------------------------------
## Footer Widgets
------------------------------------------------------------- */
.footer-widgets {
	padding-top: 4.5rem;
	padding-bottom: 3rem;
	color: #fff;
	font-size: 0.9em;
	background-color: #1d1d1d;
}

.footer-widgets ul {
	padding-left: 0;
	list-style: none;
}

.footer-widgets h2.widget-title {
	color: #fff;
}

.footer-widgets a {
	color: #f0f0f0;
}

.footer-widgets a:visited {
	color: gainsboro;
}

.footer-widgets a:focus,
.footer-widgets a:active {
	color: gainsboro;
}

@media (min-width: 48rem) {
	.footer-widgets .site-component-inner {
		align-items: stretch;
		-ms-flex-align: stretch;
		-ms-flex-pack: stretch;
		justify-content: stretch;

		-webkit-box-align: stretch;
		-webkit-box-pack: stretch;
	}
	.footer-widgets .site-component-inner .footer-widget-column {
		-ms-flex: 1;
		    flex: 1;

		-webkit-box-flex: 1;
	}
	.footer-widgets .site-component-inner .footer-widget-column.footer-widget-column-wide {
		-ms-flex: 2;
		    flex: 2;

		-webkit-box-flex: 2;
	}
}

.footer-widgets .widget_social_menu ul li {
	margin: 0;
	border: 0;
}

.footer-widgets .widget_social_menu ul li a {
	border: 0;
}

.footer-widgets .widget_social_menu .icon {
	padding: 0;
}

.footer-widgets .widget_calendar {
	border: 0;
}

/* -------------------------------------------------------------
## Social Navigation
------------------------------------------------------------- */
.social-navigation {
	padding-top: 1.5rem;
	padding-bottom: 1.5rem;
	color: #fff;
	font-size: 16px;
	font-size: 1rem;
	text-align: center;
	background-color: #1d1d1d;
}

.social-navigation ul {
	display: inline-block;
	padding-left: 0;
	margin-bottom: 0;
	margin-left: 0;
	list-style: none;
}

.social-navigation li {
	display: inline;
}

.social-navigation a {
	display: inline-block;
	width: 40px;
	height: 40px;
	margin-left: 2rem;
	color: #f14673;
	text-align: center;
	background-color: transparent;
	border: 1px solid #f14673;
	border-radius: 40px;
}

.social-navigation a:visited {
	color: #f14673;
}

.social-navigation a:hover,
.social-navigation a:focus {
	color: #f14673;
	background-color: #35e4d0;
	border-color: #35e4d0;
}

.social-navigation a:first-child {
	margin-left: 0;
}

.social-navigation .icon {
	top: 12px;
	width: 16px;
	height: 16px;
	vertical-align: top;

	fill: currentColor;
}

.no-svg .social-navigation a {
	width: auto;
	height: auto;
	color: #333;
	background-color: transparent;
}

.no-svg .social-navigation a .screen-reader-text {
	position: relative !important;
	width: auto;
	height: auto;
	clip: auto;
	font-size: 16px;
	font-size: 1rem;
	font-weight: 400;
}

/* -------------------------------------------------------------
## Footer Navigation
------------------------------------------------------------- */
.footer-navigation {
	padding-top: 1.5rem;
	padding-bottom: 1.5rem;
	color: #fff;
	text-align: center;
	background-color: #1d1d1d;
}

.footer-navigation a {
	color: #f0f0f0;
}

.footer-navigation a:visited {
	color: gainsboro;
}

.footer-navigation a:hover,
.footer-navigation a:focus,
.footer-navigation a:active {
	color: gainsboro;
}

.footer-navigation ul {
	display: inline-block;
	padding-left: 0;
	margin-bottom: 0;
	margin-left: 0;
	list-style: none;
}

.footer-navigation li {
	display: inline;
}

.footer-navigation li:before {
	content: " | ";
}

.footer-navigation li:first-child:before {
	content: none;
}

/* -------------------------------------------------------------
## Bottom Bar
------------------------------------------------------------- */
.site-bottom-bar {
	padding-top: 0.75rem;
	padding-bottom: 0.75rem;
	color: #555;
	font-size: 14px;
	font-weight: 300;
	letter-spacing: 2px;
	background-color: #fff;
}

.site-bottom-bar a {
	color: #1d1d1d;
}

.site-bottom-bar a:visited {
	color: #1d1d1d;
}

.site-bottom-bar a:hover,
.site-bottom-bar a:focus,
.site-bottom-bar a:active {
	color: #090909;
}

.site-bottom-bar .widget_social_menu ul li {
	padding-right: 0;
}

.site-bottom-bar .widget_social_menu ul li a {
	border: 0;
}

.site-bottom-bar .widget_social_menu ul li a:hover {
	background: transparent;
}

.site-bottom-bar .widget_social_menu .icon {
	width: 30px;
	height: 30px;
	padding: 5px;
}

.site-bottom-bar .widget_social_menu .icon:hover {
	fill: #35e4d0;
}

/* -------------------------------------------------------------
# Infinite scroll
------------------------------------------------------------- */
/* Globally hidden elements when Infinite Scroll is supported and in use. */
.infinite-scroll .posts-navigation,
.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;
}

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

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
	max-width: 100%;
}

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
	display: inline-block;
}

/* -------------------------------------------------------------
## Captions
------------------------------------------------------------- */
.wp-caption {
	max-width: 100%;
	margin-bottom: 1.5em;
}

.wp-caption img[class*="wp-image-"] {
	display: block;
	margin-right: auto;
	margin-left: auto;
}

.wp-caption .wp-caption-text {
	margin: 0.8075em 0;
}

.wp-caption-text {
	text-align: center;
}

/* -------------------------------------------------------------
## Galleries
------------------------------------------------------------- */
.gallery {
	margin-bottom: 1.5em;
}

.gallery-item {
	display: inline-block;
	width: 100%;
	padding: 4px 8px;
	margin: 0;
	text-align: center;
	vertical-align: top;
}

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

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

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

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

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

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

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

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

.gallery-caption {
	display: block;
}

@media screen and (min-width: 480px) and (max-width: 863px) {
	.gallery-item {
		max-width: 25% !important;
	}
}

/* -------------------------------------------------------------
# Plugin Compatibility
------------------------------------------------------------- */
/* -------------------------------------------------------------
## WooCommerce
------------------------------------------------------------- */
table.shop_table_responsive thead {
	display: none;
}

table.shop_table_responsive tbody th {
	display: none;
}

table.shop_table_responsive tr td {
	display: block;
	clear: both;
	text-align: right;
}

table.shop_table_responsive tr td:before {
	float: left;
	content: attr(data-title) ": ";
}

table.shop_table_responsive tr td.product-remove a {
	text-align: left;
}

table.shop_table_responsive tr td.download-actions button {
	display: block;
	text-align: center;
}

table.shop_table_responsive tr td.product-remove:before,
table.shop_table_responsive tr td.actions:before,
table.shop_table_responsive tr td.download-actions:before {
	display: none;
}

@media (min-width: 48rem) {
	table.shop_table_responsive thead {
		display: table-header-group;
	}
	table.shop_table_responsive tbody th {
		display: table-cell;
	}
	table.shop_table_responsive tr td {
		display: table-cell;
	}
	table.shop_table_responsive tr td:before {
		display: none;
	}
	table.shop_table_responsive tr th,
	table.shop_table_responsive tr td {
		text-align: left;
	}
}

ul.productions {
	display: table;
	padding: 0;
	margin: 0;
	content: "";
	table-layout: fixed;
}

ul.productions li.product {
	position: relative;
	margin-bottom: 2em;
	list-style: none;
}

ul.productions li.product .woocommerce-loop-product__title {
	font-size: 16px;
	font-size: 1rem;
}

ul.productions li.product img,
ul.productions li.product .button {
	display: block;
}

@media (min-width: 48rem) {
	ul.productions li.product {
		float: left;
		width: 30.7966666667%;
		margin-right: 3.8%;
	}
	ul.productions li.product.first {
		clear: both;
	}
	ul.productions li.product.last {
		margin-right: 0;
	}
	.columns-1 ul.productions li.product {
		float: none;
		width: 100%;
	}
	.columns-2 ul.productions li.product {
		width: 48.1%;
	}
	.columns-3 ul.productions li.product {
		width: 30.7966666667%;
	}
	.columns-4 ul.productions li.product {
		width: 22.15%;
	}
	.columns-5 ul.productions li.product {
		width: 16.96%;
	}
	.columns-6 ul.productions li.product {
		width: 13.4933333333%;
	}
}

.single-product div.product {
	position: relative;
	display: table;
	content: "";
	table-layout: fixed;
}

.single-product div.product .woocommerce-product-gallery {
	position: relative;
}

.single-product div.product .woocommerce-product-gallery .woocommerce-product-gallery__trigger {
	position: absolute;
	top: 1em;
	right: 1em;
	z-index: 99;
	display: block;
}

.single-product div.product .woocommerce-product-gallery .flex-viewport {
	margin-bottom: 1em;
}

.single-product div.product .woocommerce-product-gallery .flex-control-thumbs {
	display: table;
	padding: 0;
	margin: 0;
	content: "";
	table-layout: fixed;
}

.single-product div.product .woocommerce-product-gallery .flex-control-thumbs li {
	float: left;
	list-style: none;
	cursor: pointer;
}

.single-product div.product .woocommerce-product-gallery .flex-control-thumbs li img {
	opacity: 0.5;
}

.single-product div.product .woocommerce-product-gallery .flex-control-thumbs li img.flex-active {
	opacity: 1;
}

.single-product div.product .woocommerce-product-gallery .flex-control-thumbs li:hover img {
	opacity: 1;
}

.single-product div.product .woocommerce-product-gallery.woocommerce-product-gallery--columns-2 .flex-control-thumbs li {
	width: 48.1%;
}

.single-product div.product .woocommerce-product-gallery.woocommerce-product-gallery--columns-2 .flex-control-thumbs li:nth-child(2n) {
	margin-right: 0;
}

.single-product div.product .woocommerce-product-gallery.woocommerce-product-gallery--columns-2 .flex-control-thumbs li:nth-child(2n+1) {
	clear: both;
}

.single-product div.product .woocommerce-product-gallery.woocommerce-product-gallery--columns-3 .flex-control-thumbs li {
	width: 30.7966666667%;
}

.single-product div.product .woocommerce-product-gallery.woocommerce-product-gallery--columns-3 .flex-control-thumbs li:nth-child(3n) {
	margin-right: 0;
}

.single-product div.product .woocommerce-product-gallery.woocommerce-product-gallery--columns-3 .flex-control-thumbs li:nth-child(3n+1) {
	clear: both;
}

.single-product div.product .woocommerce-product-gallery.woocommerce-product-gallery--columns-4 .flex-control-thumbs li {
	width: 22.15%;
}

.single-product div.product .woocommerce-product-gallery.woocommerce-product-gallery--columns-4 .flex-control-thumbs li:nth-child(4n) {
	margin-right: 0;
}

.single-product div.product .woocommerce-product-gallery.woocommerce-product-gallery--columns-4 .flex-control-thumbs li:nth-child(4n+1) {
	clear: both;
}

.single-product div.product .woocommerce-product-gallery.woocommerce-product-gallery--columns-5 .flex-control-thumbs li {
	width: 16.96%;
}

.single-product div.product .woocommerce-product-gallery.woocommerce-product-gallery--columns-5 .flex-control-thumbs li:nth-child(5n) {
	margin-right: 0;
}

.single-product div.product .woocommerce-product-gallery.woocommerce-product-gallery--columns-5 .flex-control-thumbs li:nth-child(5n+1) {
	clear: both;
}

.stock:empty:before {
	display: none;
}

.stock.in-stock {
	color: #46b450;
}

.stock.out-of-stock {
	color: #dc3232;
}

@media (min-width: 48rem) {
	.col2-set .form-row-first {
		float: left;
		margin-right: 3.8%;
	}
	.col2-set .form-row-last {
		float: right;
		margin-right: 0;
	}
	.col2-set .form-row-first,
	.col2-set .form-row-last {
		width: 48.1%;
	}
}

.site-header-cart {
	position: relative;
	display: table;
	padding: 0;
	margin: 0;
	content: "";
	table-layout: fixed;
}

.site-header-cart .cart-contents {
	text-decoration: none;
}

.site-header-cart .widget_shopping_cart {
	display: none;
}

.site-header-cart .product_list_widget {
	padding: 0;
	margin: 0;
}

.star-rating {
	position: relative;
	width: 5.3rem;
	height: 1.618rem;
	overflow: hidden;
	font-family: "star";
	font-size: 16px;
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.618;
}

.star-rating:before {
	position: absolute;
	top: 0;
	left: 0;
	float: left;
	content: "\53\53\53\53\53";
	opacity: 0.25;
}

.star-rating span {
	position: absolute;
	top: 0;
	left: 0;
	float: left;
	padding-top: 1.5rem;
	overflow: hidden;
}

.star-rating span:before {
	position: absolute;
	top: 0;
	left: 0;
	color: #9834ef;
	content: "\53\53\53\53\53";
}

p.stars a {
	position: relative;
	display: inline-block;
	width: 1rem;
	height: 1rem;
	margin-right: 1px;
	font-weight: 400;
	text-decoration: none;
	text-indent: -999em;
}

p.stars a:before {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 1rem;
	height: 1rem;
	color: #1d1d1d;
	content: "\53";
	font-family: "star";
	line-height: 1;
	text-indent: 0;
	opacity: 0.25;
}

p.stars a:hover ~ a:before {
	color: #1d1d1d;
	content: "\53";
	opacity: 0.25;
}

p.stars:hover a:before {
	color: #9834ef;
	content: "\53";
	opacity: 1;
}

p.stars.selected a.active:before {
	color: #9834ef;
	content: "\53";
	opacity: 1;
}

p.stars.selected a.active ~ a:before {
	color: #1d1d1d;
	content: "\53";
	opacity: 0.25;
}

p.stars.selected a:not(.active):before {
	color: #9834ef;
	content: "\53";
	opacity: 1;
}

.woocommerce-tabs ul.tabs {
	padding: 0;
	margin: 0;
	text-align: left;
	list-style: none;
}

.woocommerce-tabs ul.tabs li {
	position: relative;
	display: block;
	margin: 0;
}

.woocommerce-tabs ul.tabs li a {
	display: block;
	padding: 1.5rem 0;
}

.woocommerce-tabs .panel h2:first-of-type {
	margin-bottom: 1em;
}

.woocommerce-password-strength {
	text-align: right;
}

.woocommerce-password-strength.strong {
	color: #46b450;
}

.woocommerce-password-strength.short {
	color: #dc3232;
}

.woocommerce-password-strength.bad {
	color: #dc3232;
}

.woocommerce-password-strength.good {
	color: #00a0d2;
}

.form-row.woocommerce-validated input.input-text {
	-webkit-box-shadow: inset 2px 0 0 #46b450;
	        box-shadow: inset 2px 0 0 #46b450;
}

.form-row.woocommerce-invalid input.input-text {
	-webkit-box-shadow: inset 2px 0 0 #dc3232;
	        box-shadow: inset 2px 0 0 #dc3232;
}

.required {
	color: #9834ef;
}

.woocommerce-message,
.woocommerce-info,
.woocommerce-error,
.woocommerce-noreviews,
p.no-comments {
	display: table;
	clear: both;
	content: "";
	background-color: #46b450;
	table-layout: fixed;
}

.woocommerce-info,
.woocommerce-noreviews,
p.no-comments {
	background-color: #00a0d2;
}

.woocommerce-error {
	background-color: #dc3232;
}

.demo_store {
	position: fixed;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 9999;
	padding: 1.5rem 2rem;
	margin: 0;
	background-color: #00a0d2;
}

@media (min-width: 48rem) {
	.site-header-cart .widget_shopping_cart {
		position: absolute;
		top: 100%;
		left: -999em;
		z-index: 999999;
		display: block;
		width: 100%;
		-webkit-box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
		        box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
	}
	.site-header-cart:hover .widget_shopping_cart,
	.site-header-cart.focus .widget_shopping_cart {
		left: 0;
		display: block;
	}
}

.widget_price_filter .price_slider {
	margin-bottom: 1em;
}

.widget_price_filter .price_slider_amount {
	line-height: 2.4rem;
	text-align: right;
}

.widget_price_filter .price_slider_amount .button {
	float: left;
}

.widget_price_filter .price_slider_wrapper .ui-widget-content {
	background: rgba(0, 0, 0, 0.1);
}

.widget_price_filter .ui-slider {
	position: relative;
	text-align: left;
}

.widget_price_filter .ui-slider .ui-slider-handle {
	position: absolute;
	z-index: 2;
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	width: 1rem;
	height: 1rem;
	margin-top: -0.25rem;
	background: #9834ef;
	outline: none;
	cursor: ew-resize;
	opacity: 1;
}

.widget_price_filter .ui-slider .ui-slider-handle:last-child {
	margin-left: -1rem;
}

.widget_price_filter .ui-slider .ui-slider-handle:hover,
.widget_price_filter .ui-slider .ui-slider-handle.ui-state-active {
	-webkit-box-shadow: 0 0 0 0.25rem rgba(0, 0, 0, 0.1);
	        box-shadow: 0 0 0 0.25rem rgba(0, 0, 0, 0.1);
}

.widget_price_filter .ui-slider .ui-slider-range {
	position: absolute;
	z-index: 1;
	display: block;
	background: #9834ef;
	border: 0;
}

.widget_price_filter .ui-slider-horizontal {
	height: 0.5rem;
}

.widget_price_filter .ui-slider-horizontal .ui-slider-range {
	height: 100%;
}
