@charset "UTF-8";
/*
	Theme Name: OsixthreeO
	Text Domain: osixthreeo
	Version: 1.7.3
	Description: A flexibile, lightweight, multi-purpose theme with a colorful custom header and heaps of customizer controls for crafting a unique design with no code or plugins.
	Tags: translation-ready, theme-options, full-width-template, footer-widgets, featured-images, custom-logo, custom-background, flexible-header, grid-layout
	Tested up to: 5.6
	Requires PHP: 5.6
	Author: Chip Sheppard
	Author URI: https://chipsheppard.com
	Theme URI: https://osixthreeo.com
	License: GNU General Public License v2 or later
	License URI: http://www.gnu.org/licenses/gpl-2.0.html

	This theme, like WordPress, is licensed under the GPL.

	This theme started out as Underscores http://underscores.me/, (C) 2012-2018 Automattic, Inc.
	Underscores is distributed under the terms of the GNU GPL v2 or later.

	Normalizing styles are thanks to the fine work of Nicolas Gallagher and Jonathan Neal
	http://necolas.github.com/normalize.css/ | v8.0.0

----------------------------------------------------------------

	1. 	Setup
		a. 	Normalize
		b. 	Clearings
		c. 	Accessibility
		d.	IE
	2. 	Elements
		a. 	Initial setup
		b. 	Headings
		c. 	Blockquotes
		d.	Tables
		e.	Base font
	3. 	Forms
		a. 	Buttons
		b. 	Fields
		c. 	Search
	4. 	Navigation
		a. 	Links
		b. 	Menu
		c. 	Mobile menu icon
		d. 	Mobile menu
		e. 	Post navigation
		f. 	Pagination
	5. 	Modules
		a. 	Alignments
		b. 	WordPress specific
		c. 	Gutenberg (block editor)
		d. 	Utility
		e. 	CSS Icons
	6. 	Layout
		a. 	Containers
		b. 	The Grid
	7. 	Site Content
		a. 	site-header
		b. 	custom-header
		c. 	site-footer
		d. 	entries
		e. 	post-formats
		f. 	entry-meta
		g. 	entry-footer
		h. 	archives
		i. 	search
		j. 	404
		k. 	comments
	8. 	Widgets
		a. 	Sidebar widgets
		b. 	Footer widgets
	9.  Infinite Scroll
	10. Plugins
		a. 	Jetpack
		b. 	Woo Commerce
		c. 	BBPress
		d.  Contact Form 7
	11. Customizer Functions
		a. 	Back To Top
		b. 	Footer Columns
		c. 	Header Layouts
		d.  Menu Search
		e.  Title Lift
		f.  Page Templates
		g.  Tagline

---------------------------------
 #  1. Setup
-------------------------------*/
/*
 ## 1a. Normalize
-------------------------------*/
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
}

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

hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}

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

a {
  background-color: transparent;
}

abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}

b,
strong {
  font-weight: bolder;
}

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

small {
  font-size: 80%;
}

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

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

img {
  border-style: none;
}

button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
  margin: 0;
}

button,
input {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

fieldset {
  padding: 0.35em 0.75em 0.5em;
  margin-bottom: 1em;
}

legend {
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal;
}

progress {
  vertical-align: baseline;
}

textarea {
  overflow: auto;
}

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

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

[type=search] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}

[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}

details {
  display: block;
}

summary {
  display: list-item;
}

template {
  display: none;
}

[hidden] {
  display: none;
}

/*
 ## 1b. Clearing
-------------------------------*/
.clear:before,
.clear:after,
.cf:before,
.cf:after,
.inner-wrap:before,
.inner-wrap:after,
.content-inner-wrap:before,
.content-inner-wrap:after,
.loop-wrap:before,
.loop-wrap:after,
.site-main:before,
.site-main:after,
.comment-content:before,
.comment-content:after,
.post-navigation:before,
.post-navigation:after,
.site-header:before,
.site-header:after,
.site-content:before,
.site-content:after,
.single .entry-content:before,
.single .entry-content:after,
.site-footer:before,
.site-footer:after,
.site-info:before,
.site-info:after {
  content: "";
  display: table;
  table-layout: fixed;
}

.clear:after,
.cf:after,
.inner-wrap:after,
.content-inner-wrap:after,
.loop-wrap:after,
.site-main:after,
.comment-content:after,
.post-navigation:after,
.site-header:after,
.site-content:after,
.single .entry-content:after,
.site-footer:after,
.site-info:after {
  clear: both;
}

/*
 ## 1c. Accessibility
-------------------------------*/
.screen-reader-text {
  clip: rect(1px, 1px, 1px, 1px);
  position: absolute !important;
  height: 1px;
  width: 1px;
  overflow: hidden;
}
.screen-reader-text:focus {
  background-color: #fff;
  border-radius: 3px;
  box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
  clip: auto !important;
  color: #000;
  display: block;
  font-size: 1em;
  font-weight: 700;
  height: auto;
  left: 5px;
  line-height: normal;
  padding: 15px 23px 14px;
  text-decoration: none;
  top: 5px;
  width: auto;
  z-index: 100000;
}

#content[tabindex="-1"]:focus {
  outline: 0;
}

/*
 ## 1d. IE \o/
-------------------------------*/
@-ms-viewport {
  width: device-width;
}
/*-------------------------------
 #  2. Elements
-------------------------------*/
/*
 ## 2a. Initial setup
-------------------------------*/
html {
  box-sizing: border-box;
  font-size: 100%;
  overflow-y: scroll;
  overflow-x: hidden;
}

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

body {
  background: #f3f5f7;
  -webkit-font-smoothing: antialiased;
}

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

ul, ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

body,
button,
input,
select,
textarea {
  color: #222222;
  font-weight: 400;
  line-height: 1.625;
  font-size: 16px;
  font-size: 1rem;
}

p, form, address {
  margin: 0 0 1.4rem;
}

b, strong {
  font-weight: 700;
}

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

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 #222222;
  cursor: help;
}

hr {
  background-color: rgba(0, 0, 0, 0.15);
  border: 0;
  height: 1px;
  margin-bottom: 1.5em;
}
hr.alt {
  background-color: rgba(255, 255, 255, 0.5);
}

::-moz-selection {
  background-color: rgba(153, 153, 153, 0.5);
}

::selection {
  background-color: rgba(153, 153, 153, 0.5);
}

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

/*
 ## 2b. Headings
-------------------------------*/
h1, h2, h3, h4, h5, h6 {
  font-weight: normal;
  line-height: 1.2;
  margin: 0 0 1rem;
}
h1 a, h2 a, h3 a, h4 a, h5 a, h6 a {
  color: #222222;
  display: inline-block;
}
h1 a:hover, h1 a:focus, h1 a:active, h2 a:hover, h2 a:focus, h2 a:active, h3 a:hover, h3 a:focus, h3 a:active, h4 a:hover, h4 a:focus, h4 a:active, h5 a:hover, h5 a:focus, h5 a:active, h6 a:hover, h6 a:focus, h6 a:active {
  opacity: 0.8;
}

h1 {
  font-size: 40px;
  font-size: 2.5rem;
}

h2 {
  font-size: 32px;
  font-size: 2rem;
}

h3 {
  font-size: 28px;
  font-size: 1.75rem;
}

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

h5 {
  font-size: 22px;
  font-size: 1.375rem;
}

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

@media all and (max-width: 768px) {
  h1 {
    font-size: 36px;
    font-size: 2.25rem;
  }

  h2 {
    font-size: 30px;
    font-size: 1.875rem;
  }

  h3 {
    font-size: 26px;
    font-size: 1.625rem;
  }

  h4 {
    font-size: 22px;
    font-size: 1.375rem;
  }

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

  h6 {
    font-size: 16px;
    font-size: 1rem;
  }
}
@media all and (max-width: 640px) {
  h1 {
    font-size: 36px;
    font-size: 2.25rem;
  }

  h2 {
    font-size: 28px;
    font-size: 1.75rem;
  }

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

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

  h5 {
    font-size: 18px;
    font-size: 1.125rem;
  }
}
/*
 ## 2c. Blockquotes
-------------------------------*/
q {
  quotes: "“" "”" "‘" "’";
}

q:before {
  content: open-quote;
}

q:after {
  content: close-quote;
}

blockquote,
.wp-block-quote {
  background: rgba(153, 153, 153, 0.05);
  border: none;
  margin: 0.75em 0 1.5em;
  padding: 1.5em 1.75em;
  position: relative;
  quotes: "“" "”" "“" "”";
}
@media all and (max-width: 640px) {
  blockquote,
.wp-block-quote {
    padding: 1.25em;
  }
}
blockquote:after,
.wp-block-quote:after {
  content: "";
}
blockquote:before,
.wp-block-quote:before {
  background-color: rgba(153, 153, 153, 0.2);
  content: "";
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  bottom: 0;
  width: 8px;
}
blockquote cite,
blockquote .wp-block-quote__citation,
.wp-block-quote cite,
.wp-block-quote .wp-block-quote__citation {
  display: block;
  font-weight: 700;
  font-style: normal;
  line-height: 1.25;
  margin-top: 0.5em;
  font-size: 14px;
  font-size: 0.875rem;
}
blockquote cite:before,
blockquote .wp-block-quote__citation:before,
.wp-block-quote cite:before,
.wp-block-quote .wp-block-quote__citation:before {
  content: "";
  width: 2.5em;
  height: 0.25em;
  margin-right: 1em;
  border-top: 1px solid #222222;
  display: inline-block;
}
blockquote cite span,
blockquote .wp-block-quote__citation span,
.wp-block-quote cite span,
.wp-block-quote .wp-block-quote__citation span {
  font-weight: 400;
  font-size: 12px;
  font-size: 0.75rem;
}
blockquote p:last-child,
.wp-block-quote p:last-child {
  margin-bottom: 0;
}
blockquote.alignwide, blockquote.alignfull,
.wp-block-quote.alignwide,
.wp-block-quote.alignfull {
  border: none;
  padding-left: 40px;
  padding-right: 40px;
}
blockquote.alignleft,
.wp-block-quote.alignleft {
  margin: 0 1.5em 1.5em 0;
}
blockquote.alignright,
.wp-block-quote.alignright {
  margin: 0 0 1.5em 1.5em;
}
blockquote.is-large, blockquote.is-style-large,
.wp-block-quote.is-large,
.wp-block-quote.is-style-large {
  margin: 0.75em 0 1.5em;
  padding: 1.5em 1.75em 1.5em 2em;
  position: relative;
}
blockquote.is-large:before, blockquote.is-style-large:before,
.wp-block-quote.is-large:before,
.wp-block-quote.is-style-large:before {
  content: "“";
  font-family: Georgia, serif;
  color: #c0c0c0;
  height: 0;
  top: -4px;
  left: 4px;
  font-size: 64px;
  font-size: 4rem;
}
blockquote.is-large p, blockquote.is-style-large p,
.wp-block-quote.is-large p,
.wp-block-quote.is-style-large p {
  font-style: normal;
  line-height: 1.4;
  font-size: 24px;
  font-size: 1.5rem;
}

/*
 * BLOCK EDITOR SPECIFIC
 ---------------------------------------------- */
.editor-styles-wrapper .wp-block-quote.is-style-large .rich-text {
  padding-left: 0.5em;
}
.editor-styles-wrapper .wp-block-quote.is-style-large .wp-block-quote__citation {
  text-align: right;
}

/*
 ## 2d. Tables
-------------------------------*/
table {
  border-collapse: collapse;
  border-spacing: 0;
  margin: 0 0 1.5em;
  width: 100%;
}

th, td {
  line-height: 1.5;
  vertical-align: top;
  border-top: 1px solid rgba(153, 153, 153, 0.5);
}

th {
  padding: 1em;
  text-align: left;
  background-color: rgba(153, 153, 153, 0.1);
}

td {
  padding: 1em;
}

thead th, tfoot th {
  vertical-align: bottom;
}

caption + thead tr:first-child th,
caption + thead tr:first-child td,
colgroup + thead tr:first-child th,
colgroup + thead tr:first-child td,
thead:first-child tr:first-child th,
thead:first-child tr:first-child td {
  border-top: 0;
}

.striped tr:nth-child(even) > td {
  background: rgba(153, 153, 153, 0.05);
}

.sidebar-widget.widget_calendar th {
  padding-left: 0;
  padding-right: 0;
}
.sidebar-widget.widget_calendar td {
  padding-left: 0;
  padding-right: 0;
}

/*
 ## 2e. Base font
-------------------------------*/
body,
button,
input,
select,
textarea,
blockquote {
  font-family: Arial, Helvetica, sans-serif;
}

/*-------------------------------
 #  3. Forms
-------------------------------*/
/*
 ## 3a. Buttons
-------------------------------*/
input[type=button],
input[type=reset],
input[type=submit] {
  background-color: #4169e1;
  color: #ffffff;
  border: 0;
  border-radius: 6px;
  cursor: pointer;
  line-height: normal;
  padding: 0.625em 1em;
  position: relative;
  white-space: normal;
  z-index: 1;
}
input[type=button]:hover,
input[type=reset]:hover,
input[type=submit]:hover {
  color: #ffffff;
  background-color: #ba55d3;
}

.btn,
.wp-block-button__link {
  cursor: pointer;
  display: inline-block;
  overflow: hidden;
  padding: 0.625em 1em 0.5625em;
  position: relative;
  white-space: normal;
  width: auto;
  z-index: 1;
}
.btn:focus, .btn:active,
.wp-block-button__link:focus,
.wp-block-button__link:active {
  outline: 0;
  border-color: transparent;
}
.btn:after,
.wp-block-button__link:after {
  background-color: rgba(0, 0, 0, 0.2);
  content: "";
  position: absolute;
  z-index: -1;
  height: 0;
  width: 100%;
  bottom: 0;
  left: 0;
  opacity: 0;
  transition: all 0.15s ease-in-out;
}
.btn:hover:after,
.wp-block-button__link:hover:after {
  height: 100%;
  opacity: 1;
}
.btn.wide,
.wp-block-button__link.wide {
  width: 100%;
  text-align: center;
}

.btn {
  background-color: #4169e1;
  border-radius: 6px;
  color: #ffffff;
}

.btn:hover {
  color: #ffffff;
}

.wp-block-button.alignleft {
  margin-right: 1.5em;
}

.wp-block-button.alignright {
  margin-left: 1.5em;
}

.btn.alt,
.is-style-outline .wp-block-button__link,
.editor-styles-wrapper .wp-block-button.is-style-outline .wp-block-button__link {
  padding-right: 52px !important;
}
.btn.alt:before,
.is-style-outline .wp-block-button__link:before,
.editor-styles-wrapper .wp-block-button.is-style-outline .wp-block-button__link:before {
  border-style: solid;
  border-width: 2px 2px 0 0;
  border-color: currentColor;
  content: " ";
  font-weight: 900;
  height: 13px;
  width: 13px;
  position: absolute;
  right: 16px;
  top: calc(50% - 6px);
  transform: rotate(45deg);
  transition: all 0.2s ease-in-out;
}
.btn.alt:after,
.is-style-outline .wp-block-button__link:after,
.editor-styles-wrapper .wp-block-button.is-style-outline .wp-block-button__link:after {
  height: 100%;
  width: 38px;
  left: auto;
  top: 0;
  right: 0;
  opacity: 1;
}
.btn.alt:hover:before,
.is-style-outline .wp-block-button__link:hover:before,
.editor-styles-wrapper .wp-block-button.is-style-outline .wp-block-button__link:hover:before {
  border-width: 0 0 2px 2px;
  transform: rotate(-135deg);
}
.btn.alt:hover:after,
.is-style-outline .wp-block-button__link:hover:after,
.editor-styles-wrapper .wp-block-button.is-style-outline .wp-block-button__link:hover:after {
  width: 100%;
}

button:focus {
  outline: thin dotted;
}

input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-results-button {
  display: none;
}

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  button,
input[type=button],
input[type=reset],
input[type=submit] {
    padding: 1.25em 1em 1em;
  }
}
/*
 ## 3b. Fields
-------------------------------*/
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 {
  background-color: #ffffff;
  border: 1px solid #dcdcdc;
  font-family: Helvetica, sans-serif;
  line-height: 1;
  margin-bottom: 1em;
  padding: 0.75em 0.5em;
  width: 100%;
  -webkit-appearance: none;
}
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 {
  border: 1px solid #c0c0c0;
  outline: none;
}

select {
  border: 1px solid #c0c0c0;
}

.post-password-form input[type=password] {
  width: auto;
}

::-moz-placeholder {
  color: #c0c0c0;
  opacity: 1;
}

::-webkit-input-placeholder {
  color: #c0c0c0;
}

/*
 ## 3c. Search
-------------------------------*/
.search-form,
.wp-block-search {
  background: transparent;
  clear: both;
  position: relative;
}
.search-form input[type=search],
.wp-block-search input[type=search] {
  display: inline-block;
  padding-right: 60px;
}
.search-form input[type=submit],
.search-form .wp-block-search__button,
.wp-block-search input[type=submit],
.wp-block-search .wp-block-search__button {
  background: #fff;
  border: none;
  border-left: 1px solid #dcdcdc;
  border-right: 1px solid #dcdcdc;
  border-radius: 0;
  color: #222222;
  display: inline-block;
  padding: 0.5em 0.75em 0.5em;
  position: absolute;
  right: 0;
  top: 1px;
  font-size: 20px;
  font-size: 1.25rem;
}
.search-form input[type=submit]:hover, .search-form input[type=submit]:focus,
.search-form .wp-block-search__button:hover,
.search-form .wp-block-search__button:focus,
.wp-block-search input[type=submit]:hover,
.wp-block-search input[type=submit]:focus,
.wp-block-search .wp-block-search__button:hover,
.wp-block-search .wp-block-search__button:focus {
  background: #4169e1;
  color: #fff;
  cursor: pointer;
}

.wp-block-search__button {
  background: transparent;
  line-height: 1;
  padding: 0.9375em;
  bottom: 0;
}

/*-------------------------------
 #  4. Navigation
-------------------------------*/
/*
 ## 4a. Links
-------------------------------*/
a {
  color: #4169e1;
  text-decoration: none;
}
a:hover, a:focus, a:active {
  color: #ba55d3;
}
a:focus {
  outline: thin dotted;
}
a:hover, a:active {
  outline: 0;
}

/*
 ## 4b. Menu
-------------------------------*/
.site-navigation {
  display: table-cell;
  text-align: right;
  vertical-align: middle;
  z-index: 2;
}
.site-navigation .menu-wrap {
  position: relative;
}
.site-navigation .menu-span {
  display: inline-block;
  position: relative;
}
@media all and (max-width: 768px) {
  .site-navigation .menu-span {
    display: block;
  }
}
.site-navigation ul {
  line-height: 0;
}
.site-navigation ul ul {
  display: block;
}
.site-navigation li {
  display: inline-block;
  margin-right: 1rem;
  position: relative;
}
.site-navigation li:hover > .sub-menu, .site-navigation li.focus > .sub-menu {
  left: auto;
  opacity: 1;
}
.site-navigation li.menu-item-has-children {
  margin-right: 0.5rem;
}
.site-navigation a {
  color: #ffffff;
  display: inline-block;
  letter-spacing: 1px;
  padding: 1.5rem 0.25rem 1.25rem;
  position: relative;
}
.site-navigation a:before {
  border-bottom: 1px solid currentColor;
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  opacity: 0;
  width: 0%;
  transition: all 0.125s ease-in;
}
.site-navigation a:hover:before,
.site-navigation .current_page_ancestor > a:before,
.site-navigation .current-menu-ancestor > a:before,
.site-navigation .current_page_item > a:before,
.site-navigation .current-menu-item > a:before {
  opacity: 0.5;
  width: 100%;
}
.site-navigation .menu-item-has-children > a {
  padding-right: 1.5em;
}
.site-navigation .sub-menu {
  display: block;
  left: -9999px;
  margin-top: -1px;
  margin-left: -0.875em;
  opacity: 0;
  position: absolute;
  text-align: left;
  top: 100%;
  transition: all 0.05s ease-in;
  width: 190px;
  z-index: 2;
}
.site-navigation .sub-menu a {
  background: #ffffff;
  border: 0;
  color: #222222;
  line-height: 1.375;
  padding: 0.75rem 1.125rem;
  text-transform: none;
  transition: all 0.05s ease-in;
  width: 100%;
  font-size: 12px;
  font-size: 0.75rem;
}
.site-navigation .sub-menu a:hover, .site-navigation .sub-menu a:focus {
  background: #f3f3f3;
}
.site-navigation .sub-menu a:before {
  display: none;
}
.site-navigation .sub-menu .current_page_item > a,
.site-navigation .sub-menu .current-menu-item > a {
  background: #f3f3f3;
}
.site-navigation .sub-menu li {
  border-bottom: 1px solid #dcdcdc;
  border-left: 1px solid #dcdcdc;
  border-right: 1px solid #dcdcdc;
  margin-right: 0;
  width: 100%;
}
.site-navigation .sub-menu li:first-of-type {
  border-top: 1px solid #dcdcdc;
}
.site-navigation .sub-menu .sub-menu {
  margin: -14% 0 0 90%;
}

@media all and (min-width: 769px) {
  .site-navigation .menu {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .site-navigation .menu .sub-menu {
    white-space: normal;
  }

  .menu > li {
    white-space: nowrap;
  }

  .sub-menu li {
    display: block;
    white-space: normal;
  }
}
button.dropdown-toggle {
  border: 0;
  background: none;
  color: #ffffff;
  padding: 0;
  position: relative;
  right: 0.75rem;
  z-index: -1;
}

button.dropdown-toggle:after {
  content: "";
  display: inline-block;
  position: relative;
  top: -3px;
  right: 0;
  width: 6px;
  height: 6px;
  border-style: solid;
  border-width: 0 1px 1px 0;
  transform: rotate(45deg);
  transition: all 0.05s ease-in;
}

button.dropdown-toggle.toggled-on:after {
  border-width: 1px 0 0 1px;
  top: 1px;
}

.sub-menu button.dropdown-toggle {
  color: #222222;
  padding: 0;
  position: absolute;
  right: 8px;
  top: 0;
  z-index: 1;
}

.sub-menu button.dropdown-toggle:after {
  top: 2px;
}

.sub-menu button.dropdown-toggle.toggled-on:after {
  top: 4px;
}

/*
 ## 4c. Mobile menu icon
-------------------------------*/
.responsive-menu-icon {
  border: 0;
  background: none;
  cursor: pointer;
  display: none;
  position: absolute;
  right: 0.25em;
  top: 0.25em;
  overflow: visible;
  transition-property: opacity, -webkit-filter;
  transition-property: opacity, filter;
  transition-property: opacity, filter, -webkit-filter;
  transition-duration: 0.15s;
  transition-timing-function: linear;
  z-index: 999;
}
@media all and (max-width: 768px) {
  .responsive-menu-icon {
    display: block;
  }
}
@media all and (max-width: 380px) {
  .responsive-menu-icon {
    right: 0.5em;
  }
}
.responsive-menu-icon:hover, .responsive-menu-icon:focus, .responsive-menu-icon:active {
  background: transparent;
}
.responsive-menu-icon .menu-icon-wrap {
  width: 30px;
  height: 24px;
  display: inline-block;
}
@media all and (max-width: 380px) {
  .responsive-menu-icon .menu-icon-wrap {
    width: 20px;
    height: 16px;
  }
}
.responsive-menu-icon .menu-icon {
  opacity: 1;
  position: relative;
  top: 16px;
  left: 7px;
}
.responsive-menu-icon .menu-icon,
.responsive-menu-icon .menu-icon::before,
.responsive-menu-icon .menu-icon::after {
  background-color: #ffffff;
  position: absolute;
  height: 3px;
  transition-property: transform;
  transition-duration: 0.15s;
  transition-timing-function: ease;
  width: 30px;
}
@media all and (max-width: 380px) {
  .responsive-menu-icon .menu-icon,
.responsive-menu-icon .menu-icon::before,
.responsive-menu-icon .menu-icon::after {
    width: 20px;
    height: 2px;
  }
}
.responsive-menu-icon .menu-icon::before,
.responsive-menu-icon .menu-icon::after {
  content: "";
  display: block;
}
.responsive-menu-icon .menu-icon::before {
  top: -8px;
}
@media all and (max-width: 380px) {
  .responsive-menu-icon .menu-icon::before {
    top: -6px;
  }
}
.responsive-menu-icon .menu-icon::after {
  bottom: -8px;
}
@media all and (max-width: 380px) {
  .responsive-menu-icon .menu-icon::after {
    bottom: -6px;
  }
}
.responsive-menu-icon:hover .menu-icon {
  opacity: 0.8;
}

/* Spin function */
.menu-icon {
  transition-duration: 0.3s;
  transition-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.menu-icon::before {
  transition: top 0.1s 0.34s ease-in, opacity 0.1s ease-in;
}

.menu-icon::after {
  transition: bottom 0.1s 0.34s ease-in, transform 0.3s cubic-bezier(0.55, 0.055, 0.675, 0.19);
}

.toggled-on .menu-icon {
  transform: rotate(225deg);
  transition-delay: 0.14s;
  transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
}

.toggled-on .menu-icon::before {
  top: 0;
  opacity: 0;
  transition: top 0.1s ease-out, opacity 0.1s 0.14s ease-out;
}

.toggled-on .menu-icon::after {
  bottom: 0;
  transform: rotate(-90deg);
  transition: bottom 0.1s ease-out, transform 0.3s 0.14s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/*
 ## 4d. Mobile menu
-------------------------------*/
@media all and (max-width: 768px) {
  .site-navigation {
    clear: both;
    display: block;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    width: auto;
    max-width: 1000%;
    min-width: 100%;
    padding-top: 0;
    text-align: left;
    font-size: 14px;
    font-size: 0.875rem;
    /* SUB MENU -------------------- */
  }
  .site-navigation .menu-wrap {
    display: none;
    overflow: hidden;
    max-height: 0;
  }
  .site-navigation.toggled-on .menu-wrap {
    display: block;
    margin-top: 16px;
    max-height: 1000px;
  }
  .site-navigation a {
    background-color: #ffffff;
    color: #222222 !important;
    display: block;
    overflow: hidden;
    padding: 1.5rem 0 1.5rem 4%;
    position: relative;
    width: 100%;
  }
  .site-navigation a:hover,
.site-navigation .current_page_item > a,
.site-navigation .current-menu-item > a {
    background-color: #f3f3f3;
  }
  .site-navigation .menu-item-has-children > a {
    padding-right: 0;
  }
  .site-navigation ul {
    margin-left: 0;
  }
  .site-navigation li {
    border-bottom: 1px solid #dcdcdc;
    display: block;
    margin-right: 0;
    position: relative;
  }
  .site-navigation li:first-of-type {
    border-top: 1px solid #dcdcdc;
  }
  .site-navigation li.menu-item-has-children {
    margin-right: 0;
  }
  .site-navigation li li {
    display: block;
  }
  .site-navigation li li a {
    padding-left: 0.5rem;
    font-size: 14px;
    font-size: 0.875rem;
  }
  .site-navigation li:not(.search-icon) a:before {
    content: none;
  }
  .site-navigation .dropdown-toggle {
    border-left: 1px solid rgba(153, 153, 153, 0.25);
    color: #222222;
    cursor: pointer;
    display: inline-block;
    margin-left: 0;
    padding: 0.6875rem 1.5rem;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 2;
  }
  .site-navigation .dropdown-toggle:hover {
    background-color: rgba(153, 153, 153, 0.25);
  }
  .site-navigation .sub-menu {
    display: none;
    left: auto;
    margin-left: 0;
    opacity: 1;
    position: relative;
    top: auto;
    width: 100%;
  }
  .site-navigation .sub-menu.toggled-on {
    display: block;
  }
  .site-navigation .sub-menu li {
    border-left: 0;
    border-right: 0;
  }
  .site-navigation .sub-menu li:last-of-type {
    border-bottom: 0;
  }
  .site-navigation .sub-menu a {
    border: 0;
    padding-left: 3rem;
    width: 100%;
  }
  .site-navigation .sub-menu button.dropdown-toggle {
    padding: 0 1rem 0.6875rem;
    right: 0;
  }
  .site-navigation .sub-menu .sub-menu {
    margin: 0;
  }
  .site-navigation .sub-menu .sub-menu a {
    padding-left: 5rem;
  }
}
/*
 ## 4e. Post navigation
-------------------------------*/
.site-main .comment-navigation,
.site-main .posts-navigation,
.site-main .post-navigation {
  margin: 0 0 1.5em;
  font-size: 16px;
  font-size: 1rem;
}

.posts-navigation .nav-previous,
.posts-navigation .nav-next,
.post-navigation .nav-previous,
.post-navigation .nav-next {
  width: 45%;
}
.posts-navigation .nav-previous a,
.posts-navigation .nav-next a,
.post-navigation .nav-previous a,
.post-navigation .nav-next a {
  border-top: 1px solid #dcdcdc;
  color: #222222;
  display: inline-block;
  padding: 1em 0.5em;
  position: relative;
  width: 100%;
}
.posts-navigation .nav-previous a:hover,
.posts-navigation .nav-next a:hover,
.post-navigation .nav-previous a:hover,
.post-navigation .nav-next a:hover {
  color: #4169e1;
}
.posts-navigation .nav-previous a span,
.posts-navigation .nav-next a span,
.post-navigation .nav-previous a span,
.post-navigation .nav-next a span {
  border-top: 1px solid #dcdcdc;
  border-left: 1px solid #dcdcdc;
  border-right: 1px solid #dcdcdc;
  letter-spacing: 1px;
  line-height: 1;
  padding: 0.425em 1.5em;
  position: absolute;
  top: -2em;
}
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
  float: left;
}
.posts-navigation .nav-previous a span,
.post-navigation .nav-previous a span {
  left: 0;
}
.posts-navigation .nav-previous a span:before,
.post-navigation .nav-previous a span:before {
  content: "";
  position: absolute;
  top: calc(50% - 2px);
  left: 10px;
  width: 6px;
  height: 6px;
  border-style: solid;
  border-width: 0 0 2px 2px;
  transform: rotate(45deg);
  transition: all 0.2s ease-in-out;
}
.posts-navigation .nav-next,
.post-navigation .nav-next {
  float: right;
  text-align: right;
}
.posts-navigation .nav-next a span,
.post-navigation .nav-next a span {
  right: 0;
}
.posts-navigation .nav-next a span:after,
.post-navigation .nav-next a span:after {
  content: "";
  position: absolute;
  top: calc(50% - 2px);
  right: 10px;
  width: 6px;
  height: 6px;
  border-style: solid;
  border-width: 2px 2px 0px 0px;
  transform: rotate(45deg);
  transition: all 0.2s ease-in-out;
}
@media all and (max-width: 640px) {
  .posts-navigation .nav-previous,
.posts-navigation .nav-next,
.post-navigation .nav-previous,
.post-navigation .nav-next {
    float: none;
    text-align: left;
    width: 100%;
  }
}

.comment-navigation .nav-previous,
.comment-navigation .nav-next {
  width: 45%;
  position: relative;
}
.comment-navigation .nav-previous a,
.comment-navigation .nav-next a {
  border-top: 1px solid #dcdcdc;
  color: #222222;
  display: inline-block;
  padding-top: 1em;
  padding-bottom: 1em;
  position: relative;
  width: 100%;
}
.comment-navigation .nav-previous a:hover,
.comment-navigation .nav-next a:hover {
  color: #4169e1;
}
.comment-navigation .nav-previous {
  float: left;
}
.comment-navigation .nav-previous a {
  padding-left: 1.5em;
}
.comment-navigation .nav-previous a:before {
  content: "";
  position: absolute;
  top: calc(50% - 2px);
  left: 10px;
  width: 6px;
  height: 6px;
  border-style: solid;
  border-width: 0 0 2px 2px;
  transform: rotate(45deg);
  transition: all 0.2s ease-in-out;
}
.comment-navigation .nav-next {
  float: right;
  text-align: right;
}
.comment-navigation .nav-next a {
  padding-right: 1.5em;
}
.comment-navigation .nav-next a:after {
  content: "";
  position: absolute;
  top: calc(50% - 2px);
  right: 10px;
  width: 6px;
  height: 6px;
  border-style: solid;
  border-width: 2px 2px 0px 0px;
  transform: rotate(45deg);
  transition: all 0.2s ease-in-out;
}
@media all and (max-width: 640px) {
  .comment-navigation .nav-previous,
.comment-navigation .nav-next {
    float: none;
    text-align: left;
    width: 100%;
  }
}

/*
 ## 4f. Pagination
-------------------------------*/
.pagination,
.page-links {
  clear: both;
  margin-bottom: 1.5em;
}
.pagination a,
.pagination .current,
.page-links a,
.page-links .current {
  border-radius: 3px;
  color: #ffffff;
  cursor: pointer;
  display: inline-block;
  margin: 0.25em 0;
  padding: 6px 12px;
  text-decoration: none;
}
.pagination a,
.page-links a {
  background-color: #222222;
}
.pagination .current,
.pagination a:hover,
.pagination a:focus,
.pagination a:active,
.pagination a.current,
.page-links .current,
.page-links a:hover,
.page-links a:focus,
.page-links a:active,
.page-links a.current {
  background-color: #808080;
}

/*-------------------------------
 #  5. Modules
-------------------------------*/
/*
 ## 5a. Alignments
-------------------------------*/
a.aligncenter img,
.wp-block-image.aligncenter img {
  display: block;
  margin: 0 auto;
}

img.aligncenter,
.aligncenter {
  display: block;
  margin: 0 auto 24px;
}

img.alignnone {
  margin-bottom: 12px;
}

.alignleft {
  float: left;
  text-align: left;
}

.alignright {
  float: right;
  text-align: right;
}

a.alignleft,
a.alignright {
  max-width: 100%;
}

a.alignleft,
img.alignleft,
.wp-caption.alignleft {
  margin: 0 24px 24px 0;
}

a.alignright,
img.alignright,
.wp-caption.alignright {
  margin: 0 0 24px 24px;
}

@media all and (max-width: 640px) {
  .alignleft,
.alignright {
    float: none;
    display: block;
    text-align: left;
  }

  a.alignleft,
img.alignleft,
.wp-caption.alignleft {
    margin-right: 0;
  }

  a.alignright,
img.alignright,
.wp-caption.alignright {
    margin-left: 0;
  }

  img.centered,
img.alignleft,
img.alignright {
    width: 100%;
  }

  img.alignleft {
    margin-left: 0;
  }

  img.alignleft {
    margin-right: 0;
  }
}
/*
 * Wide & Full width images
 ---------------------------------- */
.alignwide,
.entry-content ul.wp-block-gallery.alignwide {
  margin-left: -40px;
  margin-right: -40px;
  width: auto;
  max-width: 1000%;
}
@media all and (max-width: 640px) {
  .alignwide,
.entry-content ul.wp-block-gallery.alignwide {
    margin-left: -5%;
    margin-right: -5%;
  }
}

.alignfull,
.entry-content ul.wp-block-gallery.alignfull {
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  width: auto;
  max-width: 1000%;
}

.alignwide img,
.alignfull img {
  display: block;
  width: 100%;
}

@media all and (min-width: 769px) {
  .sidebar-right .alignfull {
    margin-left: calc(70% + 1em - 50vw);
    margin-right: -40px;
  }

  .sidebar-left .alignfull {
    margin-left: -40px;
    margin-right: calc(70% + 1em - 50vw);
  }
}
/*
* Videos
---------------------------------- */
.alignwide iframe,
.alignwide .jetpack-video-wrapper > iframe {
  width: calc(100% + 80px) !important;
}

.alignfull iframe,
.alignfull .jetpack-video-wrapper > iframe {
  width: 100% !important;
}

/*
 ## 5b. WordPress specific
-------------------------------*/
.avatar {
  float: left;
}

.alignleft .avatar {
  margin-right: 24px;
}

.alignright .avatar {
  margin-left: 24px;
}

.author-box .avatar {
  height: 70px;
  margin-right: 30px;
  width: 70px;
}

.comment .avatar {
  height: 50px;
  margin: 0 16px 24px 0;
  width: 50px;
}

.entry-content .wp-caption-text {
  margin: 0;
  text-align: center;
  font-size: 14px;
  font-size: 0.875rem;
}

.gallery-caption,
.entry-content .gallery-caption {
  margin: 0 0 10px;
}

.widget_calendar table {
  width: 100%;
}

.widget_calendar td,
.widget_calendar th {
  text-align: center;
  padding: 1%;
}

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

/* Captions */
.wp-caption {
  margin-bottom: 1.5em;
  max-width: 100%;
}
.wp-caption img[class*=wp-image-] {
  display: block;
  margin-left: auto;
  margin-right: 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;
  text-align: center;
  vertical-align: top;
  margin: 1em 1%;
  width: 100%;
}
.gallery-columns-2 .gallery-item {
  max-width: 48%;
}
.gallery-columns-3 .gallery-item {
  max-width: 31.33%;
}
.gallery-columns-4 .gallery-item {
  max-width: 23%;
}
.gallery-columns-5 .gallery-item {
  max-width: 18%;
}
.gallery-columns-6 .gallery-item {
  max-width: 14.66%;
}
.gallery-columns-7 .gallery-item {
  max-width: 12.28%;
}
.gallery-columns-8 .gallery-item {
  max-width: 10.5%;
}
.gallery-columns-9 .gallery-item {
  max-width: 9.11%;
}
@media all and (max-width: 768px) {
  .gallery-columns-5 .gallery-item, .gallery-columns-6 .gallery-item, .gallery-columns-7 .gallery-item, .gallery-columns-8 .gallery-item, .gallery-columns-9 .gallery-item {
    max-width: 23%;
  }
}
@media all and (max-width: 640px) {
  .gallery-columns-4 .gallery-item, .gallery-columns-5 .gallery-item, .gallery-columns-6 .gallery-item, .gallery-columns-7 .gallery-item, .gallery-columns-8 .gallery-item, .gallery-columns-9 .gallery-item {
    max-width: 31.33%;
  }
}
@media all and (max-width: 380px) {
  .gallery-columns-2 .gallery-item, .gallery-columns-3 .gallery-item, .gallery-columns-4 .gallery-item, .gallery-columns-5 .gallery-item, .gallery-columns-6 .gallery-item, .gallery-columns-7 .gallery-item, .gallery-columns-8 .gallery-item, .gallery-columns-9 .gallery-item {
    max-width: 98%;
  }
}

.gallery-caption {
  display: block;
}

.gallery-columns-2 .gallery-item:nth-child(2n+1),
.gallery-columns-3 .gallery-item:nth-child(3n+1),
.gallery-columns-4 .gallery-item:nth-child(4n+1),
.gallery-columns-5 .gallery-item:nth-child(5n+1),
.gallery-columns-6 .gallery-item:nth-child(6n+1),
.gallery-columns-7 .gallery-item:nth-child(7n+1),
.gallery-columns-8 .gallery-item:nth-child(8n+1),
.gallery-columns-9 .gallery-item:nth-child(9n+1) {
  clear: left;
}

.gallery .gallery-item img {
  border: none;
  height: auto;
  margin: 0;
  width: 100%;
}

/* Block Editor */
.entry-content ul.wp-block-gallery {
  margin-left: 0;
}

.wp-block-separator {
  clear: both;
  display: block;
}

.wp-block-gallery.alignleft {
  margin-right: 1.5em;
}

.wp-block-gallery.alignright {
  margin-left: 1.5em;
}

/* Audio Embeds ???? */
.mejs-button > button {
  background-color: transparent !important;
}

/* Recent Comments Widget */
.sidebar-widget.widget_recent_comments ul a {
  display: inline;
}

/* Widget */
.widget_media_gallery .gallery-item {
  margin: 0 1%;
}

/*
 ## 5c. Gutenberg (block editor)
-------------------------------*/
/*
 * Block image
 ---------------------------------- */
.wp-block-image {
  margin-bottom: 1.4em;
}
.wp-block-image img {
  display: block;
}
.wp-block-image figcaption {
  color: #808080;
  line-height: 1.4;
}
.wp-block-image.aligncenter {
  text-align: center;
}
.wp-block-image.aligncenter figcaption {
  text-align: center;
}
.wp-block-image.alignleft.is-resized {
  margin: 0 1.75em 1.5em 0;
}
.wp-block-image.alignright.is-resized {
  margin: 0 0 1.5em 1.75em;
}

/*
 * Cover image
 ---------------------------------- */
.wp-block-cover.alignright {
  margin: 0 0 24px 24px;
}

.wp-block-cover.alignleft {
  margin: 0 24px 24px 0;
}

.wp-block-cover.aligncenter {
  clear: both;
}

.wp-block-cover-image.alignleft {
  margin-right: 1em;
}
.wp-block-cover-image.alignright {
  margin-left: 1em;
}
.wp-block-cover-image.aligncenter {
  clear: both;
}
.wp-block-cover-image.aligncenter .wp-block-cover-image-text {
  margin-left: auto;
  margin-right: auto;
}

/*
 * Columns
 ---------------------------------- */
.wp-block-columns.has-6-columns .wp-block-column:last-of-type, .wp-block-columns.has-5-columns .wp-block-column:last-of-type, .wp-block-columns.has-4-columns .wp-block-column:last-of-type, .wp-block-columns.has-3-columns .wp-block-column:last-of-type, .wp-block-columns.has-2-columns .wp-block-column:last-of-type {
  margin-right: 0;
}
.wp-block-columns .wp-block-image {
  margin-top: 0;
  margin-left: 0;
  margin-right: 0;
  border-radius: 8px 8px 0 0;
  overflow: hidden;
}
.wp-block-columns .wp-block-image img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.wp-block-columns .wp-block-column {
  overflow: hidden;
}
@media all and (max-width: 768px) {
  .wp-block-columns .wp-block-column {
    margin-bottom: 2em;
  }
}
.wp-block-columns.boxed {
  position: relative;
  z-index: 2;
}
.wp-block-columns.boxed .wp-block-column {
  background-color: #ffffff;
  padding: 1.5em 1.5em 1em;
}
.wp-block-columns.boxed.bdr .wp-block-column {
  border: 1px solid rgba(153, 153, 153, 0.25);
}
.wp-block-columns.boxed.shade .wp-block-column {
  box-shadow: 0px 0px 10px 0px rgba(153, 153, 153, 0.25);
}
.wp-block-columns.boxed.rad4 .wp-block-column {
  border-radius: 4px;
}
.wp-block-columns.boxed.rad8 .wp-block-column {
  border-radius: 8px;
}
.wp-block-columns.boxed.no-pad .wp-block-column {
  padding: 0;
}
.wp-block-columns.boxed.no-pad .wp-block-column p,
.wp-block-columns.boxed.no-pad .wp-block-column .wp-block-button {
  padding-left: 1.5em;
  padding-right: 1.5em;
}
.wp-block-columns.boxed.up50 {
  margin-top: -50px;
}
.wp-block-columns.boxed.up75 {
  margin-top: -75px;
}
.wp-block-columns.boxed.up100 {
  margin-top: -100px;
}
.wp-block-columns.boxed.up125 {
  margin-top: -125px;
}
.wp-block-columns.boxed.up150 {
  margin-top: -150px;
}
.wp-block-columns.boxed.up160 {
  margin-top: -160px;
}
.wp-block-columns.boxed.up175 {
  margin-top: -175px;
}
.wp-block-columns.boxed.up200 {
  margin-top: -200px;
}
@media all and (max-width: 640px) {
  .wp-block-columns.boxed.up50 {
    margin-top: -25px;
  }
  .wp-block-columns.boxed.up75 {
    margin-top: -37px;
  }
  .wp-block-columns.boxed.up100 {
    margin-top: -50px;
  }
  .wp-block-columns.boxed.up125 {
    margin-top: -62px;
  }
  .wp-block-columns.boxed.up150 {
    margin-top: -75px;
  }
  .wp-block-columns.boxed.up160 {
    margin-top: -80px;
  }
  .wp-block-columns.boxed.up175 {
    margin-top: -87px;
  }
  .wp-block-columns.boxed.up200 {
    margin-top: -100px;
  }
}

@media (max-width: 780px) and (min-width: 600px) {
  .wp-block-column {
    flex-basis: 47%;
  }
}
.wp-block-spacer {
  clear: both;
}

.has-huge-font-size,
.has-large-font-size,
.has-medium-font-size {
  line-height: 1.2;
}

/*
 ## 5d. Utility
-------------------------------*/
@media only screen and (min-width: 1024px) {
  .mobile-only {
    display: none;
  }
}
@media all and (max-width: 1025px) {
  .desktop-only {
    display: none;
  }
}
.pad {
  padding: 1em;
}

.ta-center {
  text-align: center;
}

.ta-right {
  text-align: right;
}

.intro {
  margin-bottom: 1.25em;
  font-size: 150%;
}

/*
 ## 5e. CSS Icons
-------------------------------*/
/* CSS Icons */
[class*=cssicon-] {
  display: inline-block;
  vertical-align: middle;
  position: relative;
  font-style: normal;
  color: currentColor;
  text-align: left;
  text-indent: -9999px;
  direction: ltr;
}

[class*=cssicon-]:after, [class*=cssicon-]:before {
  content: "";
  pointer-events: none;
}

.cssicon-cart {
  width: 19px;
  height: 0;
  border-width: 10px 6px 0 2px;
  border-style: solid;
  border-right-color: transparent;
  border-left-color: transparent;
  margin: 0 6px 2px;
}

.cssicon-cart:before {
  position: absolute;
  width: 3px;
  height: 3px;
  border-radius: 50%;
  box-shadow: inset 0 0 0 12px, 12px 0, -2px -13px 0 0;
  top: 0;
  left: -2px;
}

.cssicon-tag {
  background-color: currentColor;
  border-radius: 1px 0 0 0;
  border-left: solid 1px currentColor;
  border-top: solid 1px currentColor;
  color: currentColor;
  height: 7px;
  margin-right: 10px;
  top: -2px;
  width: 7px;
}

.cssicon-tag:before {
  content: "";
  position: absolute;
  left: 1px;
  top: 1px;
  width: 10px;
  height: 10px;
  border-radius: 1px;
  border-left: solid 1px currentColor;
  border-right: solid 1px currentColor;
  border-bottom: solid 1px currentColor;
  background-color: currentColor;
  transform: rotate(-45deg);
}

.cssicon-tag:after {
  content: "";
  position: absolute;
  left: 3px;
  top: 3px;
  width: 2px;
  height: 2px;
  border-radius: 50%;
  color: white;
  background-color: currentColor;
}

.cssicon-folder {
  width: 15px;
  height: 10px;
  margin-right: 4px;
  position: relative;
  background-color: currentColor;
  border-radius: 0 1px 1px 1px;
}

.cssicon-folder:before {
  content: "";
  width: 60%;
  height: 3px;
  border-radius: 0 2px 0 0;
  background-color: currentColor;
  position: absolute;
  top: -2px;
  left: 0px;
}

/*-------------------------------
 #  6. Layout
-------------------------------*/
/*
 ## 6a. Containers
-------------------------------*/
.site-content {
  clear: both;
}
.site-content .content-area {
  margin: 2.5rem 0;
  width: 100%;
}
.site-content .widget-area {
  display: inline-block;
  overflow: hidden;
  margin: 2.5rem 0 2.5em;
  width: 26%;
}
@media all and (max-width: 768px) {
  .site-content .widget-area {
    margin: 2em 0;
  }
}

.inner-wrap,
.content-inner-wrap {
  margin: 0 auto;
  max-width: 1280px;
  width: 100%;
  padding: 0 4%;
}

.inner-wrap {
  position: relative;
}

.sidebar-left .content-area {
  float: right;
  width: 66%;
}
.sidebar-left .site-content .widget-area {
  float: left;
}
@media all and (max-width: 768px) {
  .sidebar-left .site-content .widget-area {
    margin-bottom: 0;
  }
}

.sidebar-right .content-area {
  float: left;
  width: 66%;
}
.sidebar-right .widget-area {
  float: right;
}

.nosidebar-silo .content-inner-wrap {
  padding-left: 15%;
  padding-right: 15%;
}
@media all and (max-width: 1025px) {
  .nosidebar-silo .content-inner-wrap {
    padding-left: 8%;
    padding-right: 8%;
  }
}
@media all and (max-width: 640px) {
  .nosidebar-silo .content-inner-wrap {
    padding-left: 5%;
    padding-right: 5%;
  }
}

@media all and (max-width: 768px) {
  .content-area,
.site-content .widget-area,
.sidebar-right .content-area,
.sidebar-right .site-content .widget-area,
.sidebar-left .content-area,
.sidebar-left .site-content .widget-area {
    display: block;
    float: none;
    width: 100%;
  }

  .sidebar-right .site-content .widget-area {
    margin-top: 0;
  }

  .sidebar-left .content-area {
    margin-top: 0;
  }
}
/*
 ## 6b. The Grid
-------------------------------*/
.col-1-2, .col-1-3, .col-2-3, .col-1-4, .col-3-4, .col-1-5, .col-2-5, .col-3-5, .col-4-5, .col-1-6,
.col-5-6, .col-1-7, .col-2-7, .col-3-7, .col-4-7, .col-5-7, .col-6-7, .col-1-8, .col-3-8, .col-5-8, .col-7-8 {
  float: left;
  margin-left: 2.5641025641%;
}

.col-1-2 {
  width: 48.7179487179%;
}

.col-1-3 {
  width: 31.6239316239%;
}

.col-2-3 {
  width: 65.811965812%;
}

.col-1-4 {
  width: 23.0769230769%;
}

.col-3-4 {
  width: 74.358974359%;
}

.col-1-5 {
  width: 17.9487179487%;
}

.col-2-5 {
  width: 38.4615384615%;
}

.col-3-5 {
  width: 58.9743589744%;
}

.col-4-5 {
  width: 79.4871794872%;
}

.col-1-6 {
  width: 14.5299145299%;
}

.col-5-6 {
  width: 82.905982906%;
}

.col-1-7 {
  width: 12.0879120879%;
}

.col-2-7 {
  width: 26.7399267399%;
}

.col-3-7 {
  width: 41.3919413919%;
}

.col-4-7 {
  width: 56.043956044%;
}

.col-5-7 {
  width: 70.695970696%;
}

.col-6-7 {
  width: 85.347985348%;
}

.col-1-8 {
  width: 10.2564102564%;
}

.col-3-8 {
  width: 35.8974358974%;
}

.col-5-8 {
  width: 61.5384615385%;
}

.col-7-8 {
  width: 87.1794871795%;
}

.first {
  clear: both;
  margin-left: 0;
}

.nm {
  margin-left: 0;
}

.silo {
  float: none;
  display: block;
  margin: 0 auto;
}

.wp-block-columns.silo {
  display: flex;
}

.pullright {
  float: right;
}

.pad-l {
  padding-left: 1.5em;
}

.pad-r {
  padding-right: 1.5em;
}

@media all and (max-width: 768px) {
  .col-1-2, .col-1-3, .col-2-3, .col-1-4, .col-3-4, .col-1-5, .col-2-5, .col-3-5, .col-4-5, .col-1-6, .col-5-6, .col-1-7, .col-2-7, .col-3-7, .col-4-7, .col-5-7, .col-6-7, .col-1-8, .col-3-8, .col-5-8, .col-7-8, .pullright {
    clear: both;
    display: block;
    float: none;
    margin: 0;
    width: 100%;
  }

  .pad-l, .pad-r {
    padding: 0;
  }
}
/*-------------------------------
 #  7. Site Content
-------------------------------*/
/*
 ## 7a. Site Header
-------------------------------*/
.site-header {
  min-height: 200px;
  position: relative;
  width: 100%;
}
@media all and (max-width: 640px) {
  .site-header {
    min-height: 120px;
  }
}
.site-header .inner-wrap {
  display: table;
}

.home .site-header {
  min-height: 600px;
}
@media all and (max-width: 640px) {
  .home .site-header {
    min-height: 400px;
  }
}

.home.fullheight .site-header {
  height: 100vh;
}

.header-wrap {
  padding-top: 16px;
  padding-bottom: 16px;
  position: relative;
  z-index: 100;
}

.site-branding {
  display: table-cell;
  text-align: left;
  vertical-align: middle;
  transition: all 0.5s ease;
}
@media all and (max-width: 768px) {
  .site-branding {
    display: block;
    width: 88%;
  }
}
.site-branding a {
  display: inline-block;
  line-height: 1;
}

.custom-logo {
  line-height: 1;
  padding-right: 1rem;
}
.custom-logo img {
  display: block;
  max-width: 300px;
  width: 100%;
  height: auto;
  transition: max-height 0.2s;
}
.custom-logo a:hover {
  opacity: 0.75;
}

.site-title {
  color: #ffffff;
  line-height: 1;
  margin-bottom: 0;
  font-size: 48px;
  font-size: 3rem;
}
.site-title a {
  color: #ffffff;
  display: inline-block;
  text-decoration: none;
}
.site-title a:hover {
  opacity: 0.75;
}
@media all and (max-width: 640px) {
  .site-title {
    margin-bottom: 0;
    font-size: 32px;
    font-size: 2rem;
  }
}

.site-description {
  color: #ffffff;
  letter-spacing: 1px;
  line-height: 1;
  padding-top: 0.5em;
}

/*
 ## 7b. Custom Header
-------------------------------*/
.custom-header {
  background: #f3f5f7;
  background: linear-gradient(90deg, #4169e1 0%, #ba55d3 100%);
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
}
.custom-header .custom-header-image {
  padding: 0;
  height: auto;
  width: auto;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  overflow: hidden;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
.custom-header .custom-header-image .inner-wrap {
  height: 100%;
}
.custom-header .custom-header-media {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.custom-header .custom-header-media img {
  display: none;
}
.custom-header .custom-header-media video, .custom-header .custom-header-media iframe {
  width: auto;
  height: auto;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1;
  min-width: 100%;
  min-height: 100%;
}

.wp-custom-header .wp-custom-header-video-button {
  display: none;
  background-color: rgba(34, 34, 34, 0.5);
  border: 1px solid rgba(255, 255, 255, 0.6);
  color: rgba(255, 255, 255, 0.6);
  height: 45px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  z-index: 15;
  right: 30px;
  bottom: 60px;
  transition: background-color 0.2s ease-in-out, border-color 0.2s ease-in-out, color 0.3s ease-in-out;
  width: 65px;
}

.custom-header-image-text {
  color: #ffffff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -40%);
  margin: 0 auto;
  max-width: 1280px;
  padding: 0 4%;
  width: 100%;
  z-index: 5;
}

.hero-primary {
  line-height: 1.25;
  margin-bottom: 0.25em;
  font-size: 48px;
  font-size: 3rem;
}
@media all and (max-width: 768px) {
  .hero-primary {
    font-size: 32px;
    font-size: 2rem;
  }
}

.hero-secondary {
  line-height: 1.25;
  font-size: 24px;
  font-size: 1.5rem;
}
@media all and (max-width: 768px) {
  .hero-secondary {
    font-size: 20px;
    font-size: 1.25rem;
  }
}

.hero-primary a,
.hero-secondary a {
  color: currentColor;
  border-bottom: 1px solid currentColor;
}
.hero-primary a:hover,
.hero-secondary a:hover {
  opacity: 0.8;
}
.hero-primary a.btn,
.hero-secondary a.btn {
  border: none;
  margin-top: 1em;
  font-size: 20px;
  font-size: 1.25rem;
}
.hero-primary a.btn:hover,
.hero-secondary a.btn:hover {
  opacity: 1;
}

.scrollbutton {
  display: inline-block;
  margin-top: 5em;
}
@media all and (max-width: 640px) {
  .scrollbutton {
    margin-top: 3em;
  }
}

.arrow-down {
  border-radius: 50%;
  border: 2px solid currentColor;
  cursor: pointer;
  display: inline-block;
  padding: 0.25em 0.75em;
  position: relative;
}
.arrow-down:after {
  content: "";
  display: inline-block;
  bottom: 2px;
  right: 0;
  width: 12px;
  height: 12px;
  border-style: solid;
  border-color: currentColor;
  border-width: 0px 2px 2px 0px;
  position: relative;
  transform: rotate(45deg);
}
.arrow-down.white {
  border-color: rgba(255, 255, 255, 0.5);
}
.arrow-down.white:after {
  border-color: rgba(255, 255, 255, 0.5);
}
.arrow-down.white:hover {
  border-color: rgba(255, 255, 255, 0.9);
}
.arrow-down.white:hover:after {
  border-color: rgba(255, 255, 255, 0.9);
}

#custom-header-scroll-target {
  position: absolute;
  bottom: 40px;
}

/*
 ## 7c. Site footer
-------------------------------*/
.site-footer {
  clear: both;
  width: 100%;
  background-color: #000;
}

.site-info {
  color: #f5f5f5;
  letter-spacing: 1px;
  padding: 2em 0;
  position: relative;
  font-size: 14px;
  font-size: 0.875rem;
}
.site-info a {
  color: #dcdcdc;
}
.site-info a:hover {
  color: #ffffff;
}

/*
 ## 7d. Entries
-------------------------------*/
.entry-title {
  margin: 0;
}

.page-title {
  margin: 0;
}
.page-title div {
  text-transform: uppercase;
  font-size: 16px;
  font-size: 1rem;
}

body.page .entry-header,
body.single .entry-header,
body.blog .page-header,
body.archive .page-header,
body.error404 .page-header {
  margin-bottom: 2em;
}

body.page .entry-title,
body.single .entry-title,
body.blog .page-title,
body.archive .page-title,
body.search .page-title,
body.error404 .page-title {
  padding: 0;
  word-break: break-word;
}
@media all and (max-width: 640px) {
  body.page .entry-title,
body.single .entry-title,
body.blog .page-title,
body.archive .page-title,
body.search .page-title,
body.error404 .page-title {
    font-size: 30px;
    font-size: 1.875rem;
  }
}

body.home h1.entry-title {
  display: none;
}

body.home.page .entry-header {
  margin-bottom: 0;
}

.entry-content ol,
.entry-content ul:not(.alignfull):not(.alignwide):not(.wp-block-gallery):not(.blocks-gallery-grid) {
  margin-left: 2.5em;
}
.entry-content ol,
.entry-content ul {
  margin-bottom: 1.5em;
}
.entry-content ol li,
.entry-content ul li {
  line-height: 1.4;
  padding-bottom: 0.5em;
}
.entry-content ol > li {
  list-style-type: decimal;
}
.entry-content ul > li {
  list-style-type: disc;
}
.entry-content ol ol,
.entry-content ul ul {
  margin-top: 0.5em;
  margin-bottom: 0;
}
.entry-content ol ol li:last-child,
.entry-content ul ul li:last-child {
  padding-bottom: 0;
}
.entry-content dt {
  font-weight: 700;
}
.entry-content dd {
  margin: 0 1em 1em;
}

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

.single .hentry {
  margin-bottom: 6em;
}
.single .entry-content {
  margin-bottom: 2em;
}

/*
 ## 7e. Post formats
-------------------------------*/
.archive .format-aside .entry-header,
.archive .format-aside .entry-bg,
.archive .format-status .entry-header,
.archive .format-status .entry-bg,
.archive .format-status .link-more,
.archive .format-status .entry-meta,
.archive .format-status .entry-title,
.blog .format-aside .entry-header,
.blog .format-aside .entry-bg,
.blog .format-status .entry-header,
.blog .format-status .entry-bg,
.blog .format-status .link-more,
.blog .format-status .entry-meta,
.blog .format-status .entry-title {
  display: none;
}

/*
 ## 7f. Entry meta
-------------------------------*/
.entry-meta {
  color: #808080;
  display: inline-block;
  line-height: 1.25;
  font-size: 14px;
  font-size: 0.875rem;
}
.entry-meta a {
  color: #808080;
}
.entry-meta a:hover {
  color: currentColor;
  opacity: 0.75;
}
.entry-meta .posted-on,
.entry-meta .updated-on,
.entry-meta .byline,
.entry-meta .comments-link {
  display: inline-block;
  padding-right: 0.75em;
}

.single .entry-meta {
  margin-top: 12px;
}

/*
 ## 7g. The Grid
-------------------------------*/
.entry-footer {
  border-top: 1px dashed #dcdcdc;
  border-bottom: 1px dashed #dcdcdc;
  color: #808080;
  padding: 0.5em 0;
}
.entry-footer a {
  color: #808080;
}
.entry-footer a:hover {
  color: currentColor;
  opacity: 0.75;
}

.cat-links,
.tags-links {
  display: inline;
  margin-right: 0.75em;
  padding: 5px 10px 5px 0;
}

.edit-link {
  float: right;
}
.edit-link a {
  display: inline-block;
}

/*
 ## 7h. Archives
-------------------------------*/
.blog .loop-wrap,
.archive .loop-wrap,
.search .loop-wrap {
  display: flex;
  flex-wrap: wrap;
}
.blog .loop-wrap article,
.archive .loop-wrap article,
.search .loop-wrap article {
  display: flex;
  flex-direction: column;
}
.blog .loop-wrap article .entry-content,
.archive .loop-wrap article .entry-content,
.search .loop-wrap article .entry-content {
  flex: 1 0 auto;
}
.blog article,
.archive article,
.search article {
  background-color: #ffffff;
  border: 1px solid #e3e3e3;
  margin-bottom: 2em;
  overflow: hidden;
  position: relative;
  width: 100%;
}
@media all and (min-width: 641px) {
  .blog article,
.archive article,
.search article {
    float: left;
    margin-left: 0;
    width: calc( 48% - 1px );
  }
  .blog article:nth-of-type(odd),
.archive article:nth-of-type(odd),
.search article:nth-of-type(odd) {
    clear: both;
    margin-right: 4%;
  }
}
@media all and (min-width: 769px) {
  .blog article,
.archive article,
.search article {
    width: calc( 32% - 1px );
    margin-right: 0;
    margin-left: 2%;
  }
  .blog article:nth-of-type(odd),
.archive article:nth-of-type(odd),
.search article:nth-of-type(odd) {
    clear: none;
    margin-right: 0;
  }
  .blog article:nth-child(3n+1),
.archive article:nth-child(3n+1),
.search article:nth-child(3n+1) {
    clear: both;
    margin-left: 0;
  }
}
.blog article .wp-post-image,
.archive article .wp-post-image,
.search article .wp-post-image {
  display: block;
  width: 100%;
}
.blog article .entry-header,
.archive article .entry-header,
.search article .entry-header {
  overflow: hidden;
  padding: 1rem;
}
.blog article .entry-content,
.archive article .entry-content,
.search article .entry-content {
  overflow: hidden;
  padding: 0 1rem 1rem;
}
.blog article.format-aside .entry-content, .blog article.format-status .entry-content,
.archive article.format-aside .entry-content,
.archive article.format-status .entry-content,
.search article.format-aside .entry-content,
.search article.format-status .entry-content {
  padding-top: 16px;
}
.blog article.sticky,
.archive article.sticky,
.search article.sticky {
  border-top: 2px solid #4169e1;
}
.blog .format-status .entry-content p,
.archive .format-status .entry-content p,
.search .format-status .entry-content p {
  margin-bottom: 1em;
}
.blog .entry-title,
.archive .entry-title,
.search .entry-title {
  word-break: break-word;
  line-height: 1.125;
  margin-bottom: 0.25em;
}
.blog .fi-link,
.archive .fi-link,
.search .fi-link {
  overflow: hidden;
  display: block;
  width: 100%;
}
@media all and (max-width: 768px) {
  .blog .fi-link,
.archive .fi-link,
.search .fi-link {
    float: none;
  }
}

.featured-image {
  display: inline-block;
  transition: all 0.25s ease-in-out;
}
.featured-image:hover {
  transform: scale(1.15, 1.15);
}

.archive-description {
  line-height: 1.2;
}

.link-more {
  color: #4169e1;
  line-height: 2.5;
  margin-bottom: 1rem;
  overflow: hidden;
  padding: 0 1rem 0;
}

.more-link {
  border: 1px solid currentColor;
  color: inherit;
  display: inline-block;
  line-height: 1;
  padding: 1.125em 1.75em 1em;
  position: relative;
  text-transform: uppercase;
  font-size: 75%;
}
.more-link:hover, .more-link:focus, .more-link:active {
  color: inherit;
}
.more-link:after {
  background-color: rgba(0, 0, 0, 0.07);
  content: "";
  position: absolute;
  z-index: 1;
  height: 100%;
  width: 0;
  bottom: 0;
  left: 0;
  opacity: 0;
  transition: all 0.15s ease-in-out;
}
.more-link:hover:after {
  width: 100%;
  opacity: 1;
}

/*
 ## 7i. Search
-------------------------------*/
.search .page-header {
  margin-bottom: 2em;
  margin-top: -1em;
}
.search .page-title span {
  font-family: Arial, Helvetica, sans-serif;
  font-weight: 400;
  text-transform: none;
  display: block;
  font-size: 16px;
  font-size: 1rem;
}
.search article:before, .search article:after {
  content: "";
  display: table;
  table-layout: fixed;
}
.search article:after {
  clear: both;
}
.search .featured-image {
  float: left;
}
@media all and (max-width: 640px) {
  .search .featured-image {
    display: block;
    float: none;
    margin: 0;
    text-align: center;
  }
}

/*
 ## 7j. 404 Error
-------------------------------*/
.error404 .content-area {
  text-align: center;
  padding-bottom: 12em;
}

.error404 .error-message {
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation-timing-function: ease-in-out;
  animation-timing-function: ease-in-out;
  -webkit-animation-duration: 3s;
  animation-duration: 3s;
  -webkit-animation-name: hinge;
  animation-name: hinge;
}

@-webkit-keyframes hinge {
  0% {
    -webkit-transform: rotate(0);
    -webkit-transform-origin: center center;
    -webkit-animation-timing-function: ease-in-out;
  }
  30%, 60% {
    -webkit-transform: rotate(40deg);
    -webkit-transform-origin: center center;
    -webkit-animation-timing-function: ease-in-out;
  }
  60% {
    -webkit-transform: rotate(-20deg);
    -webkit-transform-origin: center center;
    -webkit-animation-timing-function: ease-in-out;
  }
  90% {
    -webkit-transform: rotate(10deg) translateY(0);
    opacity: 1;
    -webkit-transform-origin: center center;
    -webkit-animation-timing-function: ease-in-out;
  }
  100% {
    -webkit-transform: translateY(400px);
    opacity: 0;
  }
}
@keyframes hinge {
  0% {
    transform: rotate(0);
    transform-origin: center center;
    -webkit-animation-timing-function: ease-in-out;
            animation-timing-function: ease-in-out;
  }
  30%, 60% {
    transform: rotate(40deg);
    transform-origin: center center;
    -webkit-animation-timing-function: ease-in-out;
            animation-timing-function: ease-in-out;
  }
  60% {
    transform: rotate(-20deg);
    transform-origin: center center;
    -webkit-animation-timing-function: ease-in-out;
            animation-timing-function: ease-in-out;
  }
  90% {
    transform: rotate(10deg) translateY(0);
    opacity: 1;
    transform-origin: center center;
    -webkit-animation-timing-function: ease-in-out;
            animation-timing-function: ease-in-out;
  }
  100% {
    transform: translateY(400px);
    opacity: 0;
  }
}
/*
 ## 7k. Comments
-------------------------------*/
.comments-area {
  padding: 1.5em 0;
}
.comments-area .comments-title {
  text-transform: uppercase;
  font-size: 20px;
  font-size: 1.25rem;
}

.comment-respond,
.entry-comments,
.entry-pings {
  margin: 2.5em 0;
}

.comment-content {
  clear: both;
}

.entry-comments .comment-author {
  margin-bottom: 0;
}

.comment-respond input:focus {
  border: 0;
}
.comment-respond .comment-reply-title {
  margin-bottom: 0.5em;
  text-transform: uppercase;
  font-size: 20px;
  font-size: 1.25rem;
}
.comment-respond .comment-reply-title small {
  display: block;
}
.comment-respond #cancel-comment-reply-link {
  padding: 0.5em 0 0.5em 0.75em;
  position: relative;
  width: auto;
  font-size: 14px;
  font-size: 0.875rem;
}
.comment-respond #cancel-comment-reply-link:hover {
  background-color: #f5f5f5;
}
.comment-respond #cancel-comment-reply-link:before {
  content: "x";
  position: absolute;
  left: 0;
  top: 0.5em;
}

.comment-list {
  margin-bottom: 1em;
}

.comment-list li,
.ping-list li {
  list-style-type: none;
}

.comment-list li {
  background-color: #ffffff;
  box-shadow: 0px 0px 8px rgba(153, 153, 153, 0.15);
  border-radius: 12px;
  margin-top: 24px;
  padding: 32px;
  width: 100%;
}
@media all and (max-width: 768px) {
  .comment-list li {
    padding: 16px;
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media all and (max-width: 380px) {
  .comment-list li {
    padding: 12px;
  }
}
.comment-list li li {
  background-color: #f5f5f5;
}
.comment-list li li li {
  background-color: #ffffff;
}
.comment-list li li li li {
  background-color: #f5f5f5;
}
.comment-list li li li li li {
  background-color: #ffffff;
}

.comment-form .comment-form-comment,
.comment-form .comment-form-author,
.comment-form .comment-form-email,
.comment-form .comment-form-url {
  margin-bottom: 0;
}

.comment-form-cookies-consent label {
  margin-left: 12px;
}

.entry-pings .reply {
  display: none;
}

.comment-edit-link,
.says {
  display: none;
}

.bypostauthor {
  display: inline-block;
}

/*-------------------------------
 #  8. Widgets
-------------------------------*/
/*
 ## 8a. Sidebar widgeta
-------------------------------*/
.sidebar-widget {
  padding-bottom: 1em;
  margin-bottom: 1em;
  font-size: 15px;
  font-size: 0.9375rem;
}
.sidebar-widget .widget-title {
  border-bottom: 1px solid #c0c0c0;
  margin: 0 0 0.5em 0;
  padding: 0.125em 0 0.5em;
}
.sidebar-widget select {
  max-width: 100%;
}
.sidebar-widget ul li {
  border-bottom: 1px solid #dcdcdc;
  line-height: 1.4em;
  padding: 0 0.438em 0.5em;
  margin-bottom: 0.5em;
}
.sidebar-widget ul a {
  color: #222222;
  display: inline-block;
  width: 100%;
}
.sidebar-widget ul a:hover {
  color: #4169e1;
}
.sidebar-widget .menu a {
  color: #222222;
  display: inline-block;
}
.sidebar-widget .menu a:hover {
  color: #4169e1;
}
.sidebar-widget .menu li li {
  border: none;
}
.sidebar-widget .menu li li a {
  padding: 0.5em 0 0.5em 1.5em;
}
.sidebar-widget .menu li li li a {
  padding-left: 3em;
}
.sidebar-widget .menu ul {
  display: none;
  padding-bottom: 0.75em;
}
.sidebar-widget .menu ul ul {
  padding-bottom: 0.125em;
}
.sidebar-widget .menu li.current-menu-item ul,
.sidebar-widget .menu li.current-menu-ancestor ul {
  display: block;
}
.sidebar-widget .menu li.current-menu-item > a {
  color: #4169e1;
}
.sidebar-widget .menu-item-has-children.current-menu-item > a,
.sidebar-widget .menu-item-has-children.current-menu-ancestor > a {
  padding-bottom: 0.5em;
}
.sidebar-widget .search-form {
  margin-bottom: 0;
  margin-top: 0.5rem;
}

/*
 ## 8b. Footer widgets
-------------------------------*/
.footer-widget {
  margin-top: 2em;
  font-size: 14px;
  font-size: 0.875rem;
}
.footer-widget ul {
  list-style: none;
  margin: 0;
}
.footer-widget ul li {
  padding: 0 0 0.75em 0;
}
.footer-widget ul li a {
  width: 100%;
  display: inline-block;
}

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

/*-------------------------------
 #  10. Plugins
-------------------------------*/
/*
 ## 10a. Jetpack
-------------------------------*/
img#wpstats {
  display: none;
}

/*
 ## 10b. Woo Commerce
-------------------------------*/
.woocommerce-products-header {
  margin-bottom: 2em;
}

.woocommerce .woocommerce-breadcrumb {
  border-top: 1px solid #dcdcdc;
  border-bottom: 1px solid #dcdcdc;
  padding: 0.75em 0 0.625em;
}

.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button {
  background-color: #4169e1;
  color: #ffffff;
  border: 0;
  border-radius: 6px;
  font-weight: 400;
  padding: 0.75em 1em;
  position: relative;
  white-space: normal;
  z-index: 1;
}
.woocommerce #respond input#submit:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover {
  color: #ffffff;
  background-color: #ba55d3;
}
.woocommerce #respond input#submit:focus, .woocommerce #respond input#submit:active,
.woocommerce a.button:focus,
.woocommerce a.button:active,
.woocommerce button.button:focus,
.woocommerce button.button:active,
.woocommerce input.button:focus,
.woocommerce input.button:active {
  outline: 0;
  border: 0;
  color: #ffffff;
}

.woocommerce input.button,
.woocommerce #respond input#submit {
  padding-top: 1.125em;
}

.woocommerce a.button:after {
  background-color: rgba(0, 0, 0, 0.2);
  border-radius: 6px;
  content: "";
  position: absolute;
  z-index: -1;
  height: 0;
  width: 100%;
  bottom: 0;
  left: 0;
  opacity: 0;
  transition: all 0.15s ease-in-out;
}
.woocommerce a.button:hover:after {
  height: 100%;
  opacity: 1;
}

.woocommerce #respond input#submit.alt,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt {
  background-color: #ba55d3;
}
.woocommerce #respond input#submit.alt:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover {
  background-color: #dd0000;
}

.woocommerce div.product div.images .flex-control-thumbs li {
  padding: 10px 5px;
}

.woocommerce .products ul li,
.woocommerce ul.products li {
  text-align: center;
}

.woocommerce-page #content table.cart td.actions .input-text,
.woocommerce-page table.cart td.actions .input-text {
  width: 120px;
}

#add_payment_method #payment ul.payment_methods li,
.woocommerce-cart #payment ul.payment_methods li,
.woocommerce-checkout #payment ul.payment_methods li {
  list-style: none;
}

#add_payment_method #payment,
.woocommerce-cart #payment,
.woocommerce-checkout #payment {
  background: rgba(204, 153, 255, 0.1);
}

/*
 ## 10c. BBPress
-------------------------------*/
#bbpress-forums {
  padding-top: 1em;
}

#bbpress-forums,
#bbpress-forums .bbp-topic-content,
#bbpress-forums .bbp-reply-content {
  font-size: 16px;
  font-size: 1rem;
}

#bbpress-forums p.bbp-topic-meta img.avatar,
#bbpress-forums ul.bbp-reply-revision-log img.avatar,
#bbpress-forums ul.bbp-topic-revision-log img.avatar,
#bbpress-forums div.bbp-template-notice img.avatar,
#bbpress-forums .widget_display_topics img.avatar,
#bbpress-forums .widget_display_replies img.avatar {
  margin-bottom: -2px;
  border: 0;
}

#subscription-toggle {
  float: right;
}

.subscription-toggle {
  background-color: #4169e1;
  border-radius: 6px;
  color: #ffffff;
  cursor: pointer;
  display: inline-block;
  line-height: normal;
  margin-bottom: 1em;
  padding: 1em;
  position: relative;
  top: -1em;
  white-space: normal;
  width: auto;
  z-index: 1;
}
.subscription-toggle:hover {
  color: #ffffff;
}
.subscription-toggle:focus, .subscription-toggle:active {
  outline: 0;
  border: 0;
  color: #ffffff;
}
.subscription-toggle:after {
  background-color: rgba(255, 255, 255, 0.3);
  border-radius: 6px;
  content: "";
  position: absolute;
  z-index: -1;
  height: 0;
  width: 100%;
  bottom: 0;
  left: 0;
  opacity: 0;
  transition: all 0.2s ease-in-out;
}
.subscription-toggle:hover:after {
  height: 100%;
  opacity: 1;
}

/*
 ## 10d. Contact Form 7
-------------------------------*/
div.wpcf7-response-output {
  margin: 0;
}

span.wpcf7-not-valid-tip {
  font-size: 0.75em;
  position: relative;
  top: -15px;
}

/*-------------------------------
 #  11. Customizer Function Styles
-------------------------------*/
/*
 ## 11a. Bacj To Top
-------------------------------*/
.osixthreeo-backtotop {
  clear: both;
  display: inline-block;
  padding: 0.5em 1em 0.125em;
  color: #f0f0f0;
  right: 0;
  bottom: 20px;
  position: absolute;
  background: rgba(153, 153, 153, 0.25);
  border-radius: 3px;
  cursor: pointer;
}
.osixthreeo-backtotop:after {
  content: "";
  color: #ffffff;
  display: inline-block;
  position: relative;
  top: -2px;
  right: 0;
  width: 7px;
  height: 7px;
  border-style: solid;
  border-width: 1px 0 0 1px;
  transform: rotate(45deg);
}
.osixthreeo-backtotop:hover {
  background: rgba(102, 102, 102, 0.5);
}

/*
 ## 11b. Footer Columns
-------------------------------*/
.site-footer .footer-widget:first-of-type {
  margin-left: 0;
}

/*
 ## 11c. Header Layouts
-------------------------------*/
body.contained .site {
  max-width: 1280px;
  margin: 0 auto;
}

body.headercentered .site-branding {
  display: block;
  text-align: center;
}
body.headercentered .custom-logo {
  display: block;
  padding-right: 0;
}
body.headercentered .site-navigation {
  display: block;
  margin-top: 1rem;
  text-align: center;
}
body.headercentered .site-navigation > ul {
  display: inline-block;
}
@media all and (max-width: 768px) {
  body.headercentered .site-branding {
    width: auto;
  }
  body.headercentered .menu-wrap {
    display: none;
  }
  body.headercentered .site-navigation {
    text-align: left;
    margin-top: 0;
  }
  body.headercentered .site-navigation > ul {
    display: block;
  }
}

/* // Description next to logo.
.wp-custom-logo .site-description {
	display: table-cell;
	vertical-align: middle;
}*/
/*
## 11d. Menu Search
-------------------------------*/
.site-navigation input[type=search] {
  margin-bottom: 0;
}
@media all and (max-width: 768px) {
  .site-navigation input[type=search] {
    border-bottom: 0;
    padding-left: 4%;
  }
}
.site-navigation input[type=submit].search-submit {
  border-right: 1px solid #dcdcdc;
  line-height: 1;
  padding: 0.75rem 0.8125rem 0.75rem;
  right: 50px;
  top: 0;
}
@media all and (max-width: 768px) {
  .site-navigation input[type=submit].search-submit {
    right: 0;
    padding-bottom: 0.625rem;
  }
}
.site-navigation input[type=submit].search-submit:hover, .site-navigation input[type=submit].search-submit:focus {
  color: #ffffff;
}
.site-navigation li.search-icon {
  float: right;
  margin-right: 0;
  width: 3.125rem;
  position: relative;
  z-index: 4;
  font-size: 16px;
  font-size: 1rem;
}
@media all and (max-width: 768px) {
  .site-navigation li.search-icon {
    display: none;
  }
}
.site-navigation li.search-icon:hover {
  cursor: pointer;
  opacity: 0.8;
}
.site-navigation li.search-icon .theicon {
  border: solid 2px #ffffff;
  border-radius: 100%;
  height: 12px;
  margin: 1em 0 1.125em 0.875em;
  padding: 0;
  transform: rotate(-45deg);
  width: 12px;
}
.site-navigation li.search-icon .theicon:before {
  background-color: #ffffff;
  content: "";
  position: absolute;
  height: 8px;
  left: 3px;
  top: 10px;
  width: 2px;
}
.site-navigation li.search-icon .theicon:focus {
  outline: 0;
}
.site-navigation .search-form {
  left: -99999px;
  margin: 0;
  opacity: 0;
  position: absolute;
  transition: opacity 0.2s ease-in-out;
  visibility: hidden;
  z-index: 4;
}
@media all and (max-width: 768px) {
  .site-navigation .search-form {
    left: 0;
    top: 0;
    opacity: 1;
    position: relative;
    visibility: visible;
  }
}
.site-navigation.nav-search-active .menu-wrap {
  padding-top: 0;
}
.site-navigation.nav-search-active .menu-wrap span {
  display: inline-block;
}
.site-navigation.nav-search-active .search-form {
  left: 0;
  right: 0;
  visibility: visible;
  opacity: 1;
}
.site-navigation.nav-search-active li.search-icon .theicon {
  padding: 0;
  margin: 0.6875em 0 0.6875em 0.75em;
  width: 24px;
  height: 24px;
  border: 0;
  border-radius: 0;
}
.site-navigation.nav-search-active li.search-icon .theicon:before, .site-navigation.nav-search-active li.search-icon .theicon:after {
  content: "";
  position: absolute;
  top: 12px;
  left: 2px;
  height: 2px;
  width: 18px;
  background-color: #000000;
}
.site-navigation.nav-search-active li.search-icon .theicon:after {
  transform: rotate(-90deg);
}
@media all and (max-width: 768px) {
  .site-navigation.nav-search-active li.search-icon {
    float: right;
  }
}

/*
## 11e. Menu Search
-------------------------------*/
/* TITLE LIFTED */
body.page.titlelift .entry-header,
body.single.titlelift .entry-header,
body.blog.titlelift .page-header,
body.archive.titlelift .page-header,
body.search.titlelift .page-header,
body.error404.titlelift .page-header {
  position: relative;
  margin-bottom: 0;
}

body.page.titlelift .entry-header .title-wrap,
body.single.titlelift .entry-header .title-wrap,
body.blog.titlelift .page-header .title-wrap,
body.archive.titlelift .page-header .title-wrap,
body.search.titlelift .page-header .title-wrap,
body.error404.titlelift .page-header .title-wrap {
  position: absolute;
  bottom: 80px;
}

/* device is less than or equal to... apply styles */
@media all and (max-width: 768px) {
  body.page.sidebar-left.titlelift .entry-header,
body.single.sidebar-left.titlelift .entry-header,
body.blog.sidebar-left.titlelift .page-header,
body.archive.sidebar-left.titlelift .page-header,
body.search.sidebar-left.titlelift .page-header,
body.error404.sidebar-left.titlelift .page-header {
    margin-bottom: 2em;
  }

  body.page.sidebar-left.titlelift .entry-header .title-wrap,
body.single.sidebar-left.titlelift .entry-header .title-wrap,
body.blog.sidebar-left.titlelift .page-header .title-wrap,
body.archive.sidebar-left.titlelift .page-header .title-wrap,
body.search.sidebar-left.titlelift .page-header .title-wrap,
body.error404.sidebar-left.titlelift .page-header .title-wrap {
    position: static;
    bottom: 0;
  }
}
body.page.titlelift .entry-title,
body.single.titlelift .entry-title,
body.single.titlelift .entry-meta,
body.single.titlelift .entry-meta a,
body.blog.titlelift .page-title,
body.archive.titlelift .page-title,
body.search.titlelift .page-title,
body.error404.titlelift .page-title {
  color: #ffffff;
  text-shadow: 0 0 8px rgba(0, 0, 0, 0.25);
}

.single.titlelift .entry-meta {
  text-shadow: 1px 1px 12px rgba(0, 0, 0, 0.25);
}

.titlelift .archive-description {
  color: #ffffff;
}

.titlelift .site-content .widget-area {
  margin-top: 2.5em;
}

/*
## 11f. Templates
-------------------------------*/
.osixthreeo-blank .content-inner-wrap,
.osixthreeo-fullbleed .content-inner-wrap {
  max-width: none;
  padding: 0;
}
.osixthreeo-blank .content-inner-wrap .content-area,
.osixthreeo-fullbleed .content-inner-wrap .content-area {
  margin: 0;
  padding: 0;
}

.osixthreeo-blank .entry-title {
  margin-bottom: 1rem;
}

/*

# 11g. Tagline
-------------------------------*/
.tagline-align .custom-logo,
.tagline-align .site-title,
.tagline-align .site-description {
  display: table-cell;
  vertical-align: middle;
}
.tagline-align .site-title {
  padding-right: 0.25em;
}
