/*
Theme Name: Oskar
Theme URI: https://uxlthemes.com/theme/oskar/
Author: UXL Themes
Author URI: https://uxlthemes.com
Description: Local Google fonts and fluid typography. Editable responsive breakpoints, custom colors, sortable homepage sections, homepage hero section or image slider with cover block support, blog grid layout variations, WooCommerce compatible with header shopping cart and customer account/login, and the option to build your own custom header and footer using any core or third party tools or plugins you want. These are just a few of the options available in the Oskar WordPress theme.
Version: 1.2
Requires at least: 5.5
Tested up to: 6.8
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: oskar
Tags: one-column, two-columns, left-sidebar, right-sidebar, grid-layout, block-styles, wide-blocks, custom-background, custom-colors, custom-header, custom-menu, custom-logo, editor-style, featured-images, full-width-template, post-formats, sticky-post, theme-options, threaded-comments, translation-ready, footer-widgets, blog, news, e-commerce

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

/*--------------------------------------------------------------
# Variables
--------------------------------------------------------------*/
body {
	--header--text--color: var(--wp--preset--color--bg);
	--header--default--color: var(--wp--preset--color--bg);
	--header--default--background: var(--wp--preset--color--fg);
	--font--family--content: Poppins, Helvetica, Arial, Verdana, sans-serif;
	--font--family--headings: Montserrat, Helvetica, Arial, Verdana, sans-serif;
	--font--family--site-title: Montserrat, Helvetica, Arial, Verdana, sans-serif;
	--font--family--nav: Poppins, Helvetica, Arial, Verdana, sans-serif;
	--letter-spacing--site-title: 2px;
	--line--height--content: 1.4;
	--line--height--headings: 1.2;
	--line--height--button: 1;
	--padding--top--hero: 110px;
	--padding--button--v: 1em;
	--padding--button--h: 1.5em;
	--padding--button--small--v: calc(var(--padding--button--v) / 2 );
	--padding--button--small--h: calc(var(--padding--button--h) / 2 );
	--radius--button: 6px;
	--radius--featured-post: 25px;
	--container--width: 1400px;
	--site--spacing: 2%;
	--site--width: calc(100% - (2 * var(--site--spacing)));
	--featured--services--overlap: 180px;
	--color--button: var(--wp--preset--color--bg);
	--background--button: var(--wp--preset--color--accent-1);
}

.has-normal-font-size {
	font-size: var(--wp--preset--font-size--normal);
}

.has-xx-large-font-size {
	font-size: var(--wp--preset--font-size--xx-large);
}

/*--------------------------------------------------------------
# Normalize
--------------------------------------------------------------*/
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;
	margin: 0;
}

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

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

[hidden],
template {
	display: none;
}

a {
	background-color: transparent;
}

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

b,
strong {
	font-weight: 900;
}

dfn {
	font-style: italic;
}

mark {
	background: #ff0;
	color: var(--wp--preset--color--fg);
}

small {
	font-size: 80%;
}

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

sup {
	top: -0.5em;
}

sub {
	bottom: -0.25em;
}

img {
	border: 0;
}

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

figure {
	margin: 0;
}

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

pre {
	overflow: auto;
}

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

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

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 {
	border: 0;
	padding: 0;
}

input {
	line-height: normal;
}

input[type="checkbox"],
input[type="radio"] {
	box-sizing: border-box;
	padding: 0;
	margin-right: 10px;
}

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 {
	border: 1px solid var(--wp--preset--color--fg-very-light);
	margin: 0 2px;
	padding: 0.35em 0.625em 0.75em;
}

legend {
	border: 0;
	padding: 0;
}

textarea {
	overflow: auto;
}

optgroup {
	font-weight: 900;
}

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

th {
	font-weight: 500;
	padding: 0.3em;
	border: 1px solid var(--wp--preset--color--fg-very-light);
	background: var(--wp--preset--color--transparent-dark);
}

td {
	font-weight: 500;
	padding: 0.3em;
	border: 1px solid var(--wp--preset--color--fg-very-light);
}

/*--------------------------------------------------------------
# Typography
--------------------------------------------------------------*/
body,
button,
input,
select,
textarea {
	color: var(--wp--preset--color--fg);
	font-family: var(--font--family--content);
	font-size: var(--wp--preset--font-size--normal);
	font-weight: 400;
	line-height: var(--line--height--content);
	transition: color .3s ease;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	color: var(--wp--preset--color--fg);
	font-weight: 700;
	line-height: var(--line--height--headings);
	font-family: var(--font--family--headings);
	margin: 0 0 1em;
	transition: color .3s ease;
}

h1 {
	font-size: calc(var(--wp--preset--font-size--normal) * 2);
}

h2 {
	font-size: calc(var(--wp--preset--font-size--normal) * 1.7);
}

h3 {
	font-size: calc(var(--wp--preset--font-size--normal) * 1.44);
}

h4 {
	font-size: calc(var(--wp--preset--font-size--normal) * 1.2);
}

h5 {
	font-size: calc(var(--wp--preset--font-size--normal) * 1.07);
}

h6 {
	font-size: calc(var(--wp--preset--font-size--normal) * 0.9);
}

p {
	margin: 0 0 1rem;
}

#masthead p:last-child,
#colophon p:last-child {
	margin-bottom: 0;
}

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

blockquote {
	margin: 0;
}

address {
	margin: 0 0 15px;
}

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

code {
	background-color: #f2f2f2;
	padding: 0.125em 0.25em;
}

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

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

mark,
ins {
	background: var(--wp--preset--color--bg);
	text-decoration: none;
}

big {
	font-size: 125%;
}

/*--------------------------------------------------------------
# Elements
--------------------------------------------------------------*/
html {
	box-sizing: border-box;
}

*,
*:before,
*:after { /* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
	box-sizing: inherit;
}

body {
	background: var(--wp--preset--color--bg); /* Fallback for when there is no custom background color defined. */
}

blockquote:before,
blockquote:after {
	font-family: 'Font Awesome 6 Free';
	font-weight: 900;
	position: absolute;
	top: 0;
	font-size: 150%;
	text-align: center;
	width: 60px;
	height: 100%;
	background: rgba(0,0,0,.05);
}
blockquote:before {
	content: "\f10d";
	left: 0;
}
blockquote:after {
	content: "\f10e";
	right: 0;
}

q:before {
	content: "\"";
	position: absolute;
	top: -.25em;
	left: 0;
	font-size: 2em;
	font-style: italic;
}
q:after {
	content: "\"";
	position: absolute;
	top: -.25em;
	right: 0;
	font-size: 2em;
	font-style: italic;
}

blockquote {
	quotes: "" "";
	position: relative;
	font-style: italic;
	font-size: 105%;
	font-weight: 500;
	padding: 10px 70px 10px 70px;
	background: var(--wp--preset--color--fg-very-light);
	border-radius: 2px;
}

q {
	quotes: "" "";
	position: relative;
	padding: 0 .75em;
}

ul,
ol {
	margin: 0 0 15px 20px;
	padding: 0;
}

ul {
	list-style: disc;
}

ol {
	list-style: decimal;
}

li > ul,
li > ol {
	margin-bottom: 0;
	margin-left: 15px;
}

dt {
	font-weight: 900;
}

dd {
	margin: 0 15px 15px;
}

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

table {
	margin: 0 0 15px;
	width: 100%;
	border: 1px solid var(--wp--preset--color--fg-very-light);
}

/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/
form {
	max-width: 100%;
}

.button,
a.button,
button,
input[type="button"],
input[type="reset"],
input[type="submit"],
#infinite-handle span button,
#infinite-handle span button:hover,
#infinite-handle span button:focus,
#infinite-handle span button:active {
	background: var(--wp--preset--color--accent-1);
	padding: var(--padding--button--v) var(--padding--button--h);
	color: var(--wp--preset--color--bg);
	border: 0;
	border-radius: var(--radius--button);
	font-size: inherit;
	font-weight: inherit;
	line-height: var(--line--height--button);
	transition: all .3s ease;
}

.button:hover,
a.button:hover,
button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover,
#infinite-handle span button:hover {
	background: var(--wp--preset--color--accent-1-dark);
	color: var(--wp--preset--color--bg);
	transition: all .3s ease;
}

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 {
	color: var(--wp--preset--color--fg);
	border: 1px solid var(--wp--preset--color--fg-very-light);
	border-radius: var(--radius--button);
	padding: 0.5em 1em;
	width: 100%;
	transition: all 0.3s ease-in-out;
}

select {
	border: 1px solid var(--wp--preset--color--fg-very-light);
	padding: 0.5em 1em;
	background-color: var(--wp--preset--color--bg);
	cursor: pointer;
	border-radius: var(--radius--button);
}

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,
select:focus {
	border: 1px solid var(--wp--preset--color--fg-light);
}

textarea {
	width: 100%;
	min-height: 100px;
}

input[type="search"] {
	width: auto;
	max-width: 100%;
}

/*--------------------------------------------------------------
## Links
--------------------------------------------------------------*/
a {
	color: var(--wp--preset--color--accent-1);
}

a:visited {
	opacity: 0.8;
}

a.button,
.single-entry-content a.button {
	color: var(--wp--preset--color--bg);
	display: inline-block;
	text-decoration: none;
}

a.read-more {
	font-size: 90%;
}

a.more-tag {
	display: none;
}

.tag-read-more a.more-tag {
	display: inline-block;
	margin-bottom: 10px;
}

/*--------------------------------------------------------------
# Accessibility
--------------------------------------------------------------*/
/* Text meant only for screen readers. */
.screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	position: absolute !important;
	height: 1px;
	width: 1px;
	overflow: hidden;
}

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

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

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

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

/*--------------------------------------------------------------
# Clearings
--------------------------------------------------------------*/
.clearfix:before,
.clearfix:after,
.entry-content:before,
.entry-content:after,
.comment-content:before,
.comment-content:after,
.site-header:before,
.site-header:after,
.site-content:before,
.site-content:after,
.site-footer:before,
.site-footer:after,
.nav-links:before,
.nav-links:after {
	content: "";
	display: table;
}

.clearfix:after,
.entry-content:after,
.comment-content:after,
.site-header:after,
.site-content:after,
.site-footer:after,
.nav-links:after {
	clear: both;
}

/*--------------------------------------------------------------
# Widgets
--------------------------------------------------------------*/
.widget {
	margin: 0 0 30px;
}

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

.widget ul ul {
	margin-left: 10px;
}

.widget .post-date {
	font-size: 80%;
	color: var(--wp--preset--color--fg-light);
	padding-right: 50%;
	white-space: nowrap;
}

.site-footer .widget {
	margin: 0;
}

/* Make sure select elements fit in widgets. */
.widget select {
	max-width: 100%;
}

/* Search widget. */
.widget_search .search-submit {
	display: none;
}

/*--------------------------------------------------------------
## Posts and pages
--------------------------------------------------------------*/
#grid-loop,
#main.infinite-grid .infinite-wrap {
	display: grid;
	grid-column-gap: 2%;
	grid-row-gap: calc( 100vw / 65 );
	margin: 0 0 2em 0;
}

#grid-loop.layout-1,
#main.infinite-grid.layout-1 .infinite-wrap {
	grid-template-columns: 100%;
}

#grid-loop.layout-2,
#main.infinite-grid.layout-2 .infinite-wrap {
	grid-template-columns: 49% 49%;
}

#grid-loop.layout-3,
#main.infinite-grid.layout-3 .infinite-wrap {
	grid-template-columns: repeat(3,32%);
}

#grid-loop.layout-4,
#main.infinite-grid.layout-4 .infinite-wrap {
	grid-template-columns: repeat(4,23.5%);
}

.hentry {
	margin: 0 0 2em;
}

#grid-loop article,
#main.infinite-grid .infinite-wrap article {
	float: none;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 0.5em;
}

#grid-loop article .post-thumbnail,
#main.infinite-grid .infinite-wrap article .post-thumbnail,
#grid-loop article .entry-header,
#main.infinite-grid .infinite-wrap article .entry-header,
#grid-loop article .entry-header .entry-title,
#main.infinite-grid .infinite-wrap article .entry-header .entry-title,
#grid-loop article .entry-meta,
#main.infinite-grid .infinite-wrap article .entry-meta,
#grid-loop article .entry-content,
#main.infinite-grid .infinite-wrap article .entry-content,
#grid-loop article .entry-categories,
#main.infinite-grid .infinite-wrap article .entry-categories,
#grid-loop article .entry-tags,
#main.infinite-grid .infinite-wrap article .entry-tags,
#grid-loop article .entry-comments-link,
#main.infinite-grid .infinite-wrap article .entry-comments-link,
#grid-loop article .entry-edit-link,
#main.infinite-grid .infinite-wrap article .entry-edit-link {
	margin: 0;
}

#grid-loop article .entry-categories:empty,
#main.infinite-grid .infinite-wrap article .entry-categories:empty,
#grid-loop article .entry-tags:empty,
#main.infinite-grid .infinite-wrap article .entry-tags:empty,
#grid-loop article .entry-comments-link:empty,
#main.infinite-grid .infinite-wrap article .entry-comments-link:empty,
#grid-loop article .entry-edit-link:empty,
#main.infinite-grid .infinite-wrap article .entry-edit-link:empty {
	display: none;
}

#grid-loop article .entry-content.is-excerpt p,
#main.infinite-grid .infinite-wrap article .entry-content.is-excerpt p {
	margin: 0;
}

#grid-loop article.sticky .entry-header .entry-title,
#main.infinite-grid .infinite-wrap article .entry-header .entry-title {
	text-decoration: underline solid currentColor 3px;
}

#grid-loop article .entry-meta,
#main.infinite-grid .infinite-wrap article .entry-meta {
	color: var(--wp--preset--color--fg-light);
	font-size: var(--wp--preset--font-size--normal);
	font-weight: 400;
}

#grid-loop article .entry-categories ul.post-categories,
#main.infinite-grid .infinite-wrap article .entry-categories ul.post-categories,
#grid-loop article .entry-tags ul.post-tags,
#main.infinite-grid .infinite-wrap article .entry-tags ul.post-tags,
.entry-footer ul.post-categories,
.entry-footer ul.post-tags {
	list-style: none;
	margin: 0.25em 0;
	display: flex;
	flex-wrap: wrap;
	gap: 0.75em 0.5em;
}

.entry-footer ul.post-categories {
	margin-bottom: 1em;
}

#grid-loop article .entry-categories ul.post-categories li a,
#main.infinite-grid .infinite-wrap article .entry-categories ul.post-categories li a,
#grid-loop article .entry-tags ul.post-tags li a,
#main.infinite-grid .infinite-wrap article .entry-tags ul.post-tags li a,
.entry-footer ul.post-categories li a,
.entry-footer ul.post-tags li a {
	font-size: var(--wp--preset--font-size--small);
	color: var(--wp--preset--color--bg);
	border-radius: 2px;
	text-decoration: none;
	padding: 0.25em 0.5em;
}

#grid-loop article .entry-categories ul.post-categories li a,
#main.infinite-grid .infinite-wrap article .entry-categories ul.post-categories li a,
.entry-footer ul.post-categories li a {
	background: var(--wp--preset--color--accent-1);
}

#grid-loop article .entry-tags ul.post-tags li a,
#main.infinite-grid .infinite-wrap article .entry-tags ul.post-tags li a,
.entry-footer ul.post-tags li a {
	background: var(--wp--preset--color--accent-2);
}

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

.page-links {
	clear: both;
	margin: 0 0 15px;
}

#primary.has-sidebar {
	width: 75%;
	float: left;
	padding-right: 30px;
	border-right: 1px solid var(--wp--preset--color--fg-very-light);
}

.sidebar-left #primary {
	float: right;
}

#secondary {
	width: 25%;
	float: right;
	padding-left: 30px;
	margin-bottom: 30px;
}

.sidebar-left #secondary {
	float: left;
}

article {
	position: relative;
	margin-bottom: 20px;
}

.container.entry-header {
	padding: 0;
}

.entry-header {
	text-align: left;
	overflow: hidden;
}

.entry-header.with-image,
.archive-header.with-image {
	margin-top: 0;
	margin-bottom: 30px;
	min-height: 30rem;
	background-size: cover;
	background-position: center center;
	background-color: var(--header--default--background);
	color: var(--header--default--color);
	display: flex;
	flex-direction: column;
	justify-content: center;
	position: relative;
}

.entry-header.with-image.image-on-page,
.archive-header.with-image.image-on-page {
	justify-content: flex-end;
}

.entry-header.with-image.full:before,
.archive-header.with-image.full:before {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: var(--header--default--background);
	opacity: 0.3;
}

.entry-header .title-meta-wrapper,
.archive-header .title-meta-wrapper {
	background: var(--header--default--background);
}

.entry-header.with-image.image-on-page .title-meta-wrapper,
.archive-header.with-image.image-on-page .title-meta-wrapper {
	background: var(--wp--preset--gradient--transparent-to-fg);
}

.entry-header.full .title-meta-wrapper,
.archive-header.full .title-meta-wrapper {
	background: transparent;
	position: relative;
	text-align: center;
	padding-top: var(--padding--top--hero);
}

.entry-header .entry-title,
.archive-header .archive-title {
	position: relative;
	font-size: var(--wp--preset--font-size--medium);
	font-weight: 700;
	margin: 0.5em 0 0;
	-ms-word-wrap: break-word;
	word-wrap: break-word;
}

.single .entry-header .entry-title,
.page .entry-header .entry-title,
.archive-header .archive-title,
.archive-header .archive-title {
	font-size: var(--wp--preset--font-size--x-large);
	padding: 0;
	margin-bottom: 1em;
}

.search-results .page .entry-header .entry-title {
	font-size: var(--wp--preset--font-size--medium);
	margin-bottom: 0;
}

.related-posts .entry-header .entry-title,
.single .related-posts .entry-header .entry-title {
	font-size: var(--wp--preset--font-size--medium);
}

.entry-excerpt,
.taxonomy-description {
	text-align: center;
}

.post-thumbnail {
	margin-bottom: 1em;
}

#grid-loop article .post-thumbnail img {
	width: 100%;
}

.entry-content p {
	-ms-word-wrap: break-word;
	word-wrap: break-word;
}

.entry-header .entry-title,
.entry-header .entry-title a,
.archive-header .archive-title,
.archive-header .archive-title a {
	text-decoration: none;
	color: var(--wp--preset--color--fg);
}

.entry-header.with-image .entry-title,
.entry-header.with-image .entry-title a,
.archive-header.with-image .archive-title,
.archive-header.with-image .archive-title a {
	text-decoration: none;
	color: var(--header--default--color);
	margin: 0.5em 0;
}

.entry-header.with-image a,
.archive-header.with-image a {
	color: var(--header--default--color);
}

.single .entry-meta {
	font-size: var(--wp--preset--font-size--medium);
	font-weight: 700;
}

.entry-meta .separator {
	font-weight: 300;
}

.single .entry-header.with-image .entry-meta {
	margin-top: 1em;
}

.entry-footer .author-name-wrap,
.entry-footer .cat-links,
.entry-footer .tag-links,
.entry-footer .edit-link {
	display: block;
	clear: both;
}

.entry-footer span.author-name-wrap,
.entry-footer span.author-description {
	margin-bottom: 1em;
}

.entry-footer span.author-description p {
	margin-bottom: 1em;
}

.entry-footer span.tag-links {
	margin-top: 1em;
}

.entry-meta .author img,
.archive-title .author img {
	border-radius: 50%;
	margin-right: 1em;
}

.archive.author .archive-description {
	margin: 0 0 1.5em;
}

.entry-footer .author-name {
	font-weight: 700;
}

ul.archive-sub-cats {
	list-style: none;
	margin-left: 0;
}

ul.archive-sub-cats li {
	display: inline-block;
	margin-right: 1.5em;
	margin-bottom: 1em;
	padding: 0.5em 1.5em;
	background: var(--wp--preset--color--accent-1);
	border-radius: 2px;
}

ul.archive-sub-cats li:last-child {
	margin-right: 0;
}

ul.archive-sub-cats li a {
	color: var(--wp--preset--color--bg);
}

#homepage-sections .section {
	margin-bottom: 60px;
}

#homepage-sections .section h2.section-title {
	text-align: center;
	font-size: var(--wp--preset--font-size--large);
	font-weight: 700;
}

#homepage-sections .section.services {
	position: relative;
	z-index: 1;
	margin-top: calc(0px - var(--featured--services--overlap));
}

/*--------------------------------------------------------------
## Asides
--------------------------------------------------------------*/

aside a:hover {
	text-decoration-color: var(--wp--preset--color--bg);
}

aside input,
aside button {
	margin-top: 2px;
}

#site-usp {
	width: 100%;
	padding: 10px 0;
	transition: padding .5s;
}

.site-header.scrolled #site-usp {
	padding: 5px 0;
	transition: padding 1s;
}

#site-usp .container {
	display: flex;
	justify-content: space-around;
	align-items: center;
	padding: 10px;
	background: rgba(255,255,255,.05);
	box-shadow: 0 0 2px rgba(255,255,255,.3);
}

#site-usp aside {
	background: transparent;
	color: var(--wp--preset--color--bg);
	margin: 0;
	display: block;
}

.offers-bar-widget-title {
	font-size: var(--wp--preset--font-size--normal);
	color: var(--wp--preset--color--bg);
	margin: 0;
	line-height: var(--line--height--button);
}

#site-usp aside p {
	margin: 0;
}

#site-usp aside a {
	font-weight: 400;
}

.sidebar-widget-title,
.page-sidebar-widget-title,
.shop-sidebar-widget-title {
	font-weight: 700;
	position: relative;
	padding-bottom: 10px;
	margin-bottom: 5px;
	font-size: var(--wp--preset--font-size--medium);
	text-align: left;
}

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

.widget-area ul ul {
	margin-top: 5px;
}

.widget-area ul ul li {
	padding-left: 10px;
}

.widget-area ul ul li:last-child {
	border-bottom: 0;
	padding-bottom: 0;
}

.widget-area li {
	margin: 0 0 7px 0;
}

.widget-area .widget.widget_image {
	margin-bottom: 25px;
}

.widget-area form {
	margin-top: 20px;
}

/*--------------------------------------------------------------
## Comments
--------------------------------------------------------------*/
article.comment-body {
	background: var(--wp--preset--color--transparent-dark);
	border: 1px solid var(--wp--preset--color--fg-very-light);
	border-radius: var(--radius--button);
	padding: 2em;
}

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

.bypostauthor {
	display: block;
}

.author-email-url {
	margin-left: -2%;
}

.comment-form-author {
	float: left;
	width: 32%;
}
.comment-form-email,
.comment-form-url {
	float: left;
	margin-left: 2% !important;
	width: 32%;
}

.author-email-url input {
	width: 100%;
}

.comment-form .form-submit {
	clear: both;
}

#comments {
	background: var(--wp--preset--color--bg);
	margin-bottom: 25px;
}

.logged-in-as,
.comment-notes {
	font-size: var(--wp--preset--font-size--small);
}

#comments h3.comment-reply-title {
	position: relative;
}

#comments h3.comment-reply-title:before {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	height: 1px;
	width: 100%;
	background: var(--wp--preset--color--fg-very-light);
}

#comments ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

#comments li.comment {
	margin: 0 0 20px;
}

#comments li.comment .children {
	display: block;
	margin: 20px 0 0 30px;
	padding: 0px;
	list-style: none;
}

.comment-list .comment-respond {
	margin-top: 20px;
	border: 1px solid var(--wp--preset--color--fg-very-light);
	padding: 20px;
}

.comment-list .vcard img {
	border-radius: 50%;
	margin-right: 10px;
}

.comment-list .vcard .fn {
	font-weight: 400;
	font-size: var(--wp--preset--font-size--normal);
}

.comment-list .edit-link {
	position: absolute;
	top: 0;
	left: auto;
}

.comment-list .edit-link a {
	font-size: var(--wp--preset--font-size--small);
	display: inline-block;
	padding: 10px;
}

.comment-list .comment-meta {
	margin-bottom: 15px;
} 

.comment-list .comment-author {
	display: inline-block;
	margin-right: 1em;
}

.comment-list .comment-author .says {
	display: none;
}

.comment-list .comment-metadata {
	display: inline-block;
	padding-top: 10px;
	font-size: var(--wp--preset--font-size--small);
}

.comment-list .comment-metadata a {
	color: var(--wp--preset--color--fg-light);
	text-decoration: none;
}

.comment-list .reply {
	display: inline-block;
	font-size: var(--wp--preset--font-size--small);
	background: var(--wp--preset--color--bg);
	border: 1px solid var(--wp--preset--color--fg-very-light);
	border-radius: var(--radius--button);
	padding: 0.5em 1em
}

.comment-list .reply a {
	text-decoration: none;
}

#cancel-comment-reply-link {
	float: right;
	font-size: var(--wp--preset--font-size--small);
}

.comment-navigation .nav-previous a,
.comment-navigation .nav-next a {
	background: var(--wp--preset--color--fg);
	color: var(--wp--preset--color--bg);
	display: inline-block;
	padding: 0 10px;
	font-size: var(--wp--preset--font-size--small);
	line-height: 22px;
	position: relative;
}

.comment-navigation .nav-next a {
	margin-right: 13px;
}

.comment-navigation .nav-next a:after {
	content: "";
	position: absolute;
	border-left: 11px solid var(--wp--preset--color--fg);
	border-top: 11px solid transparent;
	border-bottom: 11px solid transparent;
	top: 0;
	right: -11px;
}

.comment-navigation .nav-previous a {
	margin-left: 11px;
}

.comment-navigation .nav-previous a:after {
	content: "";
	position: absolute;
	border-right: 11px solid var(--wp--preset--color--fg);
	border-top: 11px solid transparent;
	border-bottom: 11px solid transparent;
	top: 0;
	left: -11px;
}

/*--------------------------------------------------------------
# Related Posts
--------------------------------------------------------------*/

.related-posts {
	margin: 0 0 2em 0;
}

.related-posts h3 {
	position: relative;
}

.related-posts h3:before {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	height: 1px;
	width: 100%;
	background: var(--wp--preset--color--fg-very-light);
}

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

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

.entry-video {
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
}

.entry-video embed,
.entry-video iframe,
.entry-video object,
.entry-video video {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/*--------------------------------------------------------------
## Captions
--------------------------------------------------------------*/
.wp-caption {
	margin-bottom: 15px;
	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 {
	background: var(--wp--preset--color--fg-very-light);
	border: 1px solid var(--wp--preset--color--fg-light);
	text-align: center;
	font-size: var(--wp--preset--font-size--normal);
}

/*--------------------------------------------------------------
## Galleries
--------------------------------------------------------------*/
.gallery {
	margin-bottom: 15px;
}

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

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

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

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

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

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

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

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

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

.gallery-caption {
	display: block;
	margin: 0 10px 10px 10px;
}

/*--------------------------------------------------------------
## General
--------------------------------------------------------------*/
.container {
	width: var(--site--width);
	max-width: var(--container--width);
	margin: 0 auto;
}

.site-content {
	position: relative;
	margin-top: 2em;
}

.page-template-template-blank-canvas .site-content,
.page-template-template-landing-page .site-content,
.page-template-template-transparent-header .site-content {
	margin-top: 0;
}

/*--------------------------------------------------------------
## Header
--------------------------------------------------------------*/
.site-header {
	margin: 0 auto;
	padding: 0;
	width: 100%;
}

.site-header.full,
.site-header.transparent {
	background-color: transparent;
	transition: background-color .5s;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 999;
}

.site-header.not-full {
	background-color: var(--header--default--background);
	transition: background-color .5s;
}

.site-header.not-full.scrolled {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 999;
}

.site-header.full.scrolled,
.site-header.transparent.scrolled {
	background-color: var(--header--default--background);
	transition: background-color 1s;
}

.logged-in.admin-bar .site-header.scrolled {
	top: 32px;
}

.site-header > .container {
	display: grid;
	grid-template-columns: minmax(auto,300px) auto auto;
	align-items: center;
	padding: 20px 0;
	transition: padding .5s;
}

.site-header.scrolled > .container {
	padding: 5px 0;
	transition: padding 1s;
}

#site-branding {
	grid-column: 1/2;
}

#site-navigation {
	grid-column: 2/4;
	justify-self: end;
}

.site-header.has-search #site-navigation,
.site-header.has-wc #site-navigation {
	grid-column: 2/3;
}

#site-top-right {
	color: var(--header--default--color);
	grid-column: 3/4;
	justify-self: end;
}

#site-top-right a {
	color: var(--header--default--color);
	text-decoration: none;
}

#site-top-right a.button {
	color: var(--header--default--color);
}

#top-bar {
	display: block;
	margin: 0;
	padding: 10px 0;
	border-bottom: 1px solid rgba(255,255,255,.15);
	font-size: var(--wp--preset--font-size--small);
	transition: padding .5s;
}

.site-header.scrolled #top-bar {
	padding: 5px 0;
	transition: padding 1s;
}

.top-bar-widget-title {
	color: var(--header--default--color);
	margin: 0;
	font-size: 1.2em;
}

#top-bar a.button, #top-bar a.button:hover,
#top-bar button, #top-bar input[type="button"], #top-bar input[type="reset"], #top-bar input[type="submit"],
#top-bar input[type="text"], #top-bar input[type="email"], #top-bar input[type="url"], #top-bar input[type="password"], #top-bar input[type="search"], #top-bar input[type="number"], #top-bar input[type="tel"], #top-bar input[type="range"], #top-bar input[type="date"], #top-bar input[type="month"], #top-bar input[type="week"], #top-bar input[type="time"], #top-bar input[type="datetime"], #top-bar input[type="datetime-local"], #top-bar input[type="color"], #top-bar textarea {
	height: auto;
	padding: 2px 5px;
	font-size: var(--wp--preset--font-size--small);
	line-height: var(--line--height--button);
	margin: 2px 0;
	max-width: 160px;
}

#top-bar p,
#top-bar .widget,
#top-bar .widget p {
	margin: 0;
	padding: 0;
	background: transparent;
}

#top-bar .widget {
	display: inline-block;
	width: 48%;
	vertical-align: top;
}

#top-bar .widget:nth-child(odd) {
	text-align: left;
	margin-right: 1%;
}
#top-bar .widget:nth-child(even) {
	text-align: right;
	margin-left: 1%;
}

#top-bar ul {
	position: relative;
	list-style: none;
}

#top-bar li {
	display: inline-block;
	margin-left: 12px;
}

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

#top-bar ul > li > ul {
	display: none;
	border: 1px;
	border-style: solid;
	border-color: rgba(255,255,255,0.1);
	border-top: 0;
	margin-top: 2px;
}

#top-bar ul > li.menu-item-has-children:hover > ul {
	position: absolute;
	display: block;
	margin-left: 0;
	text-align: left;
	z-index: 101;
}
#top-bar ul > li.menu-item-has-children:hover > ul > li {
	display: block;
	margin-left: 0;
	padding: 5px;
}

#top-bar ul > li.menu-item-has-children > ul > li.menu-item-has-children > ul,
#top-bar ul > li.menu-item-has-children > ul > li.menu-item-has-children > ul:hover {
	display: none;
}

.site-header .top-search {
	position: relative;
	display: inline-block;
	margin: 0;
	padding: 0;
	max-width: 70%;
}

.top-search {
	max-width: 100% !important;
	transform: none;
}

.top-search .mini-search {
	position: absolute;
	top: auto;
	right: 0;
	visibility: hidden;
	opacity: 0;
	padding: 10px;
	background: var(--header--default--background);
	border-radius: 0 0 var(--radius--button) var(--radius--button);
	box-shadow: 0 0 2px rgba(255,255,255,.3);
	z-index: 99999;
	transform: translateY(30px);
	transition: all .3s ease;
}

.top-search.search-open .mini-search {
	visibility: visible;
	opacity: 1;
	transform: translateY(0);
	transition: all .3s ease;
}

.site-header .search-form {
	max-width: 100%;
}

.site-header .search-form input[type="submit"],
.site-header .search-form button[type="submit"] {
	position: relative;
	width: 36px;
	height: 36px;
	line-height: 36px;
	display: inline-block;
	background-color: transparent;
	padding: 0;
	color: transparent;
	border: 0;
	box-shadow: none;
	transition: none;
}

.site-header .search-form input[type="search"] {
	max-width: calc(100% - 44px);
	border: none;
	background: transparent;
	color: var(--header--default--color);
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

.site-header .search-form input[type="search"]::placeholder {
	color: var(--header--default--color);
	opacity: .6;
}

#site-branding h1,
#site-branding p,
#site-branding .custom-logo {
	margin: 0;
	padding: 0;
	line-height: 1;
}

.site-header #site-branding img.custom-logo {
	max-height: 200px;
	width: auto;
	transition: all .5s;
}

.site-header.scrolled #site-branding img.custom-logo {
	max-height: 100px;
	width: auto;
	transition: all .5s;
}

.site-title {
	font-family: var(--font--family--site-title);
	font-weight: 700;
	font-size: var(--wp--preset--font-size--x-large);
	letter-spacing: var(--letter-spacing--site-title);
	-ms-word-wrap: break-word;
	word-wrap: break-word;
	transition: all .3s ease-in;
}

.site-title a,
.site-title a:hover,
.site-title a:active,
.site-title a:focus {
	text-decoration: none;
	color: var(--header--text--color);
}

.site-description {
	clear: both;
	font-weight: 400;
	color: var(--header--text--color);
	-ms-word-wrap: break-word;
	word-wrap: break-word;
}

.masthead-block {
	background: transparent;
	height: 70px;
}

.title-tagline-hidden .site-title,
.title-tagline-hidden .site-description {
	clip: rect(1px, 1px, 1px, 1px);
	position: absolute;
}

#home-hero-section {
	background: transparent;
}

#home-hero-section .widget {
	margin: 0;
}

#home-hero-section aside {
	position: relative;
	background: transparent;
	color: var(--header--default--background);
}

#home-hero-section .widget_media_image {
	display: block;
	color: var(--header--default--color);
}

#home-hero-section .widget_media_image:before {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background: var(--header--default--background);
	opacity: .7;
}

#home-hero-section .widget_media_image .hero-widget-title {
	width: 100%;
	max-width: calc(100% - 120px);
	text-align: center;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	color: var(--header--default--color);
	font-size: var(--wp--preset--font-size--xx-large);
	font-weight: 700;
}

#home-hero-section .widget_media_image .hero-widget-title a,
#home-hero-section .widget_media_image .hero-widget-title a:hover,
#home-hero-section .widget_media_image .hero-widget-title a:focus,
#home-hero-section .widget_media_image .hero-widget-title a:active {
	color: var(--header--default--color);
	text-decoration: none;
}

#home-hero-section .widget_media_image .wp-caption {
	margin: 0;
	padding: 0;
}

#home-hero-section .widget_media_image img {
	width: 100%;
	height: auto;
}

#home-hero-section .widget_media_image.adaptive-sizing {
	overflow: hidden;
}

#home-hero-section .widget_media_image img.adaptive-sizing {
	width: auto;
	max-width: none !important;
}

#home-hero-section .widget_media_image .wp-caption .wp-caption-text {
	width: 100%;
	max-width: calc(100% - 120px);
	text-align: center;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	margin: 0;
	background: transparent;
	border: none;
	color: var(--header--default--color);
	font-size: var(--wp--preset--font-size--large);
}

#home-hero-section .wp-block-cover,
#home-hero-section .wp-block-cover-image {
	padding-top: var(--padding--top--hero);
	padding-bottom: var(--featured--services--overlap);
	min-height: 600px;
}

.bx-wrapper .bx-controls-direction a {
	margin-top: 0;
	height: 40px;
	width: 40px;
	font-size: 24px;
	line-height: 40px;
	text-align: center;
	color: var(--header--default--color);
	text-indent: 0;
	text-decoration: none;
	border-radius: 100%;
	transform: translateY(-50%);
}

.bx-wrapper .bx-controls-direction a:hover {
	background: var(--wp--preset--color--accent-1);
	opacity: 0.8;
}

/*--------------------------------------------------------------
## Menu
--------------------------------------------------------------*/
.toggle-nav {
	display: none;
	background: transparent;
	color: var(--header--default--color);
	cursor: pointer;
	width: 20px;
}

.toggle-nav-open {
	display: none;
	background: transparent;
	color: var(--header--default--color);
	cursor: pointer;
	width: 100%;
	padding: 0.5em;
	margin-bottom: 20px;
}

.menu-close {
	display: none;
	opacity: 0;
	background: transparent;
	color: var(--header--default--color);
	cursor: default;
	width: 100%;
	margin-top: 20px;
}

.toggle-nav:hover,
.toggle-nav-open:hover,
.menu-close:hover {
	background: transparent;
	color: var(--header--default--color);
}

.toggle-nav:focus,
.toggle-nav-open:focus,
.menu-close:focus {
	color: var(--header--default--color);
	outline: 1px dotted;
}

.menu-close:focus {
	opacity: 1;
	cursor: pointer;
}

#site-navigation {
	font-family: var(--font--family--nav);
	padding: 0.5em 0.25em;
}

#primary-menu {	
	margin: 0;
	color: var(--header--default--color);
}

#primary-menu li {
	float: left;
	position: relative;
	list-style: none;
}

#primary-menu li a {
	display: block;
	color: var(--header--default--color);
	text-decoration: none;
	padding: .75em 1em;
	transition: color .3s ease;
}

#primary-menu li.highlight-1 > a,
#primary-menu li.highlight-2 > a,
#primary-menu li.highlight-3 > a,
#primary-menu li.highlight-4 > a {
	border-radius: var(--radius--button);
	margin: 0 .75em;
}

#primary-menu li.highlight-1 > a {
	background: var(--wp--preset--color--accent-1);
}

#primary-menu li.highlight-2 > a {
	background: var(--wp--preset--color--accent-2);
}

#primary-menu li.highlight-3 > a {
	background: var(--wp--preset--color--accent-3);
}

#primary-menu li.highlight-4 > a {
	background: var(--wp--preset--color--accent-4);
}

#primary-menu li.menu-item-has-children {
	margin-right: .5em;
}

#primary-menu li.menu-item-has-children a {
	padding-right: 1.5em;
}

#primary-menu > li.current-menu-item > a {
	border-bottom: 2px solid currentColor;
}

#primary-menu ul {
	position: absolute;
	visibility: hidden;
	opacity: 0;
	background: var(--header--default--background);
	box-shadow: 0 0 2px rgba(255,255,255,.3);
	min-width: 180px;
	text-align: left;
	top: 140%;
	margin: 0;
	border-radius: 0 0 var(--radius--button) var(--radius--button);
	z-index: 99999;
	transition: all 0.3s ease;
}
#primary-menu li.menu-item-has-children.locked > ul,
#primary-menu li.menu-item-has-children:hover > ul,
#primary-menu li.menu-item-has-children a:focus ~ ul {
	visibility: visible;
	opacity: 1;
	top: 100%;
	transition: all 0.3s ease;
}
#primary-menu ul li {
	width: 100%;
	background: none;
}
#primary-menu ul li a {
	position: relative;
	overflow: hidden;
}

#primary-menu ul li.menu-item-has-children ul,
#primary-menu ul li.menu-item-has-children ul,
#primary-menu ul li.menu-item-has-children.locked ul,
#primary-menu ul li.menu-item-has-children:hover ul,
#primary-menu ul li.menu-item-has-children a:focus ~ ul {
	left: 100%;
	top: 5px;
}

#primary-menu li.menu-item-has-children .sub-menu ul {
	border-radius: 0 3px 3px 3px;
}
.sub-menu li {
	border-bottom: 1px solid rgba(255,255,255,0.1);
}
.sub-menu li:last-child {
	border: 0;
}

#primary-menu li.menu-item-has-children .sub-menu a {
	padding-top: 20px;
	padding-bottom: 20px;
	margin: 0;
	transition: all 0.3s ease;
}

#primary-menu li.menu-item-has-children:hover .sub-menu a {
	padding-top: 8px;
	padding-bottom: 8px;
	transition: all 0.3s ease;
}

.page-links,
.comments-pagination {
	text-align: center;
	font-weight: 500;
	margin-bottom: 25px;
}

.page-links a,
.comments-pagination .page-numbers {
	padding: 0 10px;
}

.post-navigation {
	margin-bottom: 2em;
}

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

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

.post-navigation .nav-previous .fa {
	margin-right: .25em;
}

.post-navigation .nav-next .fa {
	margin-left: .25em;
}

/*--------------------------------------------------------------
## Featured Posts
--------------------------------------------------------------*/
#featured-post-section {
	margin-top: 80px;
	margin-bottom: 30px;
	width: 100%;
}

.featured-post-wrap {
	display: flex;
	flex-wrap: nowrap;
	grid-column-gap: 2%;
	grid-row-gap: 4vw;
}

.featured-post-wrap.is-style-2,
.featured-post-wrap.is-style-3 {
	grid-column-gap: 1px;
	grid-row-gap: 1px;
}

.featured-post-wrap.is-style-3 {
	background: var(--wp--preset--color--fg-light);
}

.featured-post {
	flex-grow: 1;
	flex-shrink: 1;
	flex-basis: 0;
	padding: 0 2vw 2vw 2vw;
	border-radius: var(--radius--featured-post);
	position: relative;
	text-align: center;
	color: var(--wp--preset--color--bg);
	background: var(--wp--preset--color--fg-light);
	transition: all 0.3s ease-in-out;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}

.featured-post-wrap.is-style-2 .featured-post,
.featured-post-wrap.is-style-3 .featured-post {
	border-radius: 0;
}

.featured-post-wrap.is-style-3 .featured-post {
	color: var(--wp--preset--color--fg-light);
	background: var(--wp--preset--color--accent-4-very-light);
}

.featured-post-wrap:not(.is-style-3) .featured-post1,
.featured-post-wrap:not(.is-style-3) .featured-post5,
.featured-post-wrap:not(.is-style-3) .featured-post9 {
	background: var(--wp--preset--color--accent-1);
}

.featured-post-wrap:not(.is-style-3) .featured-post2,
.featured-post-wrap:not(.is-style-3) .featured-post6,
.featured-post-wrap:not(.is-style-3) .featured-post10 {
	background: var(--wp--preset--color--accent-2);
}

.featured-post-wrap:not(.is-style-3) .featured-post3,
.featured-post-wrap:not(.is-style-3) .featured-post7,
.featured-post-wrap:not(.is-style-3) .featured-post11 {
	background: var(--wp--preset--color--accent-3);
}

.featured-post-wrap:not(.is-style-3) .featured-post4,
.featured-post-wrap:not(.is-style-3) .featured-post8,
.featured-post-wrap:not(.is-style-3) .featured-post12 {
	background: var(--wp--preset--color--accent-4);
}

.featured-post-wrap.has-zoom .featured-post:hover {
	transform: scale(1.1);
	transition: all 0.3s ease-in-out;
	z-index: 2;
}

.featured-post-wrap.is-style-2.has-zoom .featured-post:hover {
	border-left: 1px solid var(--wp--preset--color--bg);
	border-right: 1px solid var(--wp--preset--color--bg);
}

.featured-post-wrap.is-style-3.has-zoom .featured-post:hover {
	border-left: 1px solid var(--wp--preset--color--fg-light);
	border-right: 1px solid var(--wp--preset--color--fg-light);
}

.featured-post-wrap.is-style-2.has-zoom .featured-post:first-child:hover,
.featured-post-wrap.is-style-3.has-zoom .featured-post:first-child:hover {
	border-left: none;
}

.featured-post-wrap.is-style-2.has-zoom .featured-post:last-child:hover,
.featured-post-wrap.is-style-3.has-zoom .featured-post:last-child:hover {
	border-right: none;
}

.featured-post .featured-icon {
	font-size: 2vw;
	width: 6.25vw;
	height: 6.25vw;
	line-height: 6.25vw;
	display: block;
	color: var(--wp--preset--color--bg);
	margin: -3.125vw auto 0px auto;
	background: var(--wp--preset--color--fg);
	border-radius: 100%;
}

.featured-post .featured-icon .fa.fa-not-a-real-icon {
	display: none;
}

.featured-post-wrap:not(.is-style-3) .featured-post1 .featured-icon,
.featured-post-wrap:not(.is-style-3) .featured-post5 .featured-icon,
.featured-post-wrap:not(.is-style-3) .featured-post9 .featured-icon {
	background: var(--wp--preset--color--accent-1-dark);
}

.featured-post-wrap:not(.is-style-3) .featured-post2 .featured-icon,
.featured-post-wrap:not(.is-style-3) .featured-post6 .featured-icon,
.featured-post-wrap:not(.is-style-3) .featured-post10 .featured-icon {
	background: var(--wp--preset--color--accent-2-dark);
}

.featured-post-wrap:not(.is-style-3) .featured-post3 .featured-icon,
.featured-post-wrap:not(.is-style-3) .featured-post7 .featured-icon,
.featured-post-wrap:not(.is-style-3) .featured-post11 .featured-icon {
	background: var(--wp--preset--color--accent-3-dark);
}

.featured-post-wrap:not(.is-style-3) .featured-post4 .featured-icon,
.featured-post-wrap:not(.is-style-3) .featured-post8 .featured-icon,
.featured-post-wrap:not(.is-style-3) .featured-post12 .featured-icon {
	background: var(--wp--preset--color--accent-4-dark);
}

.featured-post h4 {
	position: relative;
	margin: 1vw 0 1vw 0;
	color: var(--wp--preset--color--bg);
	-ms-word-wrap: break-word;
	word-wrap: break-word;
}

.featured-post a,
.featured-post h4 a {
	color: var(--wp--preset--color--bg);
	text-decoration: none;
	transition: all 0.3s ease;
}

.featured-post-wrap.is-style-3 .featured-post h4,
.featured-post-wrap.is-style-3 .featured-post a,
.featured-post-wrap.is-style-3 .featured-post h4 a {
	color: var(--wp--preset--color--fg);
}

.featured-post a.featured-readmore {
	color: var(--wp--preset--color--bg);
	background: var(--wp--preset--color--fg);
	margin-top: 1vw;
}

.featured-post-wrap.is-style-3 .featured-post a.featured-readmore {
	color: var(--wp--preset--color--bg);
}

.featured-post-wrap:not(.is-style-3) .featured-post1 a.featured-readmore,
.featured-post-wrap:not(.is-style-3) .featured-post5 a.featured-readmore,
.featured-post-wrap:not(.is-style-3) .featured-post9 a.featured-readmore {
	color: var(--wp--preset--color--bg);
	background: var(--wp--preset--color--accent-1-dark);
}

.featured-post-wrap:not(.is-style-3) .featured-post2 a.featured-readmore,
.featured-post-wrap:not(.is-style-3) .featured-post6 a.featured-readmore,
.featured-post-wrap:not(.is-style-3) .featured-post10 a.featured-readmore {
	color: var(--wp--preset--color--bg);
	background: var(--wp--preset--color--accent-2-dark);
}

.featured-post-wrap:not(.is-style-3) .featured-post3 a.featured-readmore,
.featured-post-wrap:not(.is-style-3) .featured-post7 a.featured-readmore,
.featured-post-wrap:not(.is-style-3) .featured-post11 a.featured-readmore {
	color: var(--wp--preset--color--bg);
	background: var(--wp--preset--color--accent-3-dark);
}

.featured-post-wrap:not(.is-style-3) .featured-post4 a.featured-readmore,
.featured-post-wrap:not(.is-style-3) .featured-post8 a.featured-readmore,
.featured-post-wrap:not(.is-style-3) .featured-post12 a.featured-readmore {
	color: var(--wp--preset--color--bg);
	background: var(--wp--preset--color--accent-4-dark);
}

/*--------------------------------------------------------------
## Footer
--------------------------------------------------------------*/
.site-footer {
	color: var(--wp--preset--color--bg-dark);
	background-color: var(--wp--preset--color--fg);
	background-repeat: no-repeat;
	background-size: cover;
}

.site-footer aside {
	background: transparent;
}

.site-footer ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

.site-footer ul ul {
	margin-left: 10px;
}

.site-footer a {
	color: var(--wp--preset--color--bg);
}

.site-footer a:hover,
.site-footer a:focus,
.site-footer a:active {
	text-decoration-color: var(--wp--preset--color--bg);
}

.above-footer-widget-title,
.footer-column-widget-title {
	color: var(--wp--preset--color--bg);
	font-weight: 700;
	position: relative;
	margin-bottom: 15px;
}

#above-footer .container {
	padding-top: 20px;
	padding-bottom: 20px;
}

#above-footer .widget,
#above-footer p:last-child {
	margin-bottom: 0;
}

#top-footer {
	padding: 20px 0 0;
}

#top-footer .container {
	padding-bottom: 30px;
}

.top-footer {
	margin-left: -3%;
}

.footer {
	float: left;
	width: 30.3333333333%;
	margin-left: 3%;
}

#bottom-footer {
	padding: 25px 0;
}

.site-info {
	float: left;
	width: 45%;
}

.site-info .sep {
	opacity: .4;
}

.site-info-right,
#footer-menu ul {
	float: right;
	width: 45%;
	text-align: right;
	list-style-type: none;
	list-style: none;
	list-style-image: none;
	line-height: 32px;
	margin-top: -7px;
}
#footer-menu li {
	padding: 0 8px;
	display: inline;
}

#footer-menu a,
.widget_nav_menu a {
	position: relative;
}

#footer-menu a[href*="plus.google.com"],
.widget_nav_menu a[href*="plus.google.com"],
#footer-menu a[href*="codepen.io"],
.widget_nav_menu a[href*="codepen.io"],
#footer-menu a[href*="facebook.com"],
.widget_nav_menu a[href*="facebook.com"],
#footer-menu a[href*="github.com"],
.widget_nav_menu a[href*="github.com"],
#footer-menu a[href*="gitlab.com"],
.widget_nav_menu a[href*="gitlab.com"],
#footer-menu a[href*="instagram.com"],
.widget_nav_menu a[href*="instagram.com"],
#footer-menu a[href*="linkedin.com"],
.widget_nav_menu a[href*="linkedin.com"],
#footer-menu a[href*="twitter.com"],
.widget_nav_menu a[href*="twitter.com"],
#footer-menu a[href*="youtube.com"],
.widget_nav_menu a[href*="youtube.com"],
#footer-menu a[href^="mailto:"],
.widget_nav_menu a[href^="mailto:"],
#footer-menu a[href$="/feed/"],
.widget_nav_menu a[href$="/feed/"],
#footer-menu a[href*="kickstarter.com"],
.widget_nav_menu a[href*="kickstarter.com"],
#footer-menu a[href*="meetup.com"],
.widget_nav_menu a[href*="meetup.com"],
#footer-menu a[href*="pinterest.com"],
.widget_nav_menu a[href*="pinterest.com"],
#footer-menu a[href*="vimeo.com"],
.widget_nav_menu a[href*="vimeo.com"],
#footer-menu a[href^="tel:"],
.widget_nav_menu a[href^="tel:"] {
	font-size: 1px;
	letter-spacing: -1px;
	margin-right: 0px;
	margin-left: 26px;
	color: transparent;
}

#footer-menu a[href*="plus.google.com"]:before,
.widget_nav_menu a[href*="plus.google.com"]:before,
#footer-menu a[href*="codepen.io"]:before,
.widget_nav_menu a[href*="codepen.io"]:before,
#footer-menu a[href*="facebook.com"]:before,
.widget_nav_menu a[href*="facebook.com"]:before,
#footer-menu a[href*="github.com"]:before,
.widget_nav_menu a[href*="github.com"]:before,
#footer-menu a[href*="gitlab.com"]:before,
.widget_nav_menu a[href*="gitlab.com"]:before,
#footer-menu a[href*="instagram.com"]:before,
.widget_nav_menu a[href*="instagram.com"]:before,
#footer-menu a[href*="linkedin.com"]:before,
.widget_nav_menu a[href*="linkedin.com"]:before,
#footer-menu a[href*="twitter.com"]:before,
.widget_nav_menu a[href*="twitter.com"]:before,
#footer-menu a[href*="youtube.com"]:before,
.widget_nav_menu a[href*="youtube.com"]:before,
#footer-menu a[href*="kickstarter.com"]:before,
.widget_nav_menu a[href*="kickstarter.com"]:before,
#footer-menu a[href*="meetup.com"]:before,
.widget_nav_menu a[href*="meetup.com"]:before,
#footer-menu a[href*="pinterest.com"]:before,
.widget_nav_menu a[href*="pinterest.com"]:before,
#footer-menu a[href*="vimeo.com"]:before,
.widget_nav_menu a[href*="vimeo.com"]:before {
	font-family: 'Font Awesome 5 Brands';
	font-weight: normal;
	text-align: center;
	position: absolute;
	font-size: 14px;
	letter-spacing: normal;
	width: 26px;
	height: 26px;
	line-height: 26px;
	border-radius: 100%;
	top: -16px;
	right: 0;
	color: var(--wp--preset--color--bg);
}

#footer-menu a[href^="mailto:"]:before,
.widget_nav_menu a[href^="mailto:"]:before,
#footer-menu a[href$="/feed/"]:before,
.widget_nav_menu a[href$="/feed/"]:before,
#footer-menu a[href^="tel:"]:before,
.widget_nav_menu a[href^="tel:"]:before {
	font-family: 'Font Awesome 6 Free';
	font-weight: 900;
	text-align: center;
	position: absolute;
	font-size: 14px;
	letter-spacing: normal;
	width: 26px;
	height: 26px;
	line-height: 26px;
	border-radius: 100%;
	top: -16px;
	right: 0;
	color: var(--wp--preset--color--bg);
}

#footer-menu a[href*="plus.google.com"]:before,
.widget_nav_menu a[href*="plus.google.com"]:before {
	content: "\f0d5";
	background: #ff0000;
}
#footer-menu a[href*="codepen.io"]:before,
.widget_nav_menu a[href*="codepen.io"]:before {
	content: "\f1cb";
	background: #ffdd40;
	color: #000;
}
#footer-menu a[href*="facebook.com"]:before,
.widget_nav_menu a[href*="facebook.com"]:before {
	content: "\f39e";
	background: #3b5998;
}
#footer-menu a[href*="github.com"]:before,
.widget_nav_menu a[href*="github.com"]:before {
	content: "\f09b";
	background: #24292e;
}
#footer-menu a[href*="gitlab.com"]:before,
.widget_nav_menu a[href*="gitlab.com"]:before {
	content: "\f296";
	background: #548;
}
#footer-menu a[href*="instagram.com"]:before,
.widget_nav_menu a[href*="instagram.com"]:before {
	content: "\f16d";
	background: #f04857;
}
#footer-menu a[href*="linkedin.com"]:before,
.widget_nav_menu a[href*="linkedin.com"]:before {
	content: "\f0e1";
	background: #0077b5;
}
#footer-menu a[href*="twitter.com"]:before,
.widget_nav_menu a[href*="twitter.com"]:before {
	content: "\f099";
	background: #1da1f2;
}
#footer-menu a[href*="youtube.com"]:before,
.widget_nav_menu a[href*="youtube.com"]:before {
	content: "\f167";
	background: #ff0000;
}
#footer-menu a[href*="kickstarter.com"]:before,
.widget_nav_menu a[href*="kickstarter.com"]:before {
	content: "\f3bc";
	background: var(--wp--preset--color--bg);
	color: #282828;
}
#footer-menu a[href*="meetup.com"]:before,
.widget_nav_menu a[href*="meetup.com"]:before {
	content: "\f2e0";
	background: #f13a59;
}
#footer-menu a[href*="pinterest.com"]:before,
.widget_nav_menu a[href*="pinterest.com"]:before {
	content: "\f231";
	background: #e60023;
}
#footer-menu a[href*="vimeo.com"]:before,
.widget_nav_menu a[href*="vimeo.com"]:before {
	content: "\f27d";
	background: #00adef;
}
#footer-menu a[href^="mailto:"]:before,
.widget_nav_menu a[href^="mailto:"]:before {
	content: "\f0e0";
	background: var(--wp--preset--color--accent-1);
}
#footer-menu a[href^="tel:"]:before,
.widget_nav_menu a[href^="tel:"]:before {
	content: "\f095";
	background: var(--wp--preset--color--accent-1);
}
#footer-menu a[href$="/feed/"]:before,
.widget_nav_menu a[href$="/feed/"]:before {
	content: "\f09e";
	background: #fd9800;
}

/*--------------------------------------------------------------
## Pagination
--------------------------------------------------------------*/
.pagination {
	text-align: center;
	margin: 0 0 2em 0;
}

.pagination span,
.pagination .dots,
.pagination a {
	padding: 0.5em 1em;
	border: 1px solid var(--wp--preset--color--fg-very-light);
	border-radius: 2px;
	font-weight: 400;
	color: var(--wp--preset--color--fg);
	text-decoration: none;
	transition: all 0.3s ease-in-out;
}

.pagination a:hover,
.pagination .current {
	border-color: inherit;
	transition: all 0.3s ease-in-out;
}

/*--------------------------------------------------------------
## Blocks
--------------------------------------------------------------*/

.wp-block-site-title a,
.wp-block-site-title a:hover,
.wp-block-site-title a:active,
.wp-block-site-title a:focus {
	text-decoration: none;
}

.wp-block-site-title.has-text-color a {
	color: inherit;
}

.wp-block-latest-posts {
	margin: 0;
}

.wp-block-latest-posts.is-grid {
	display: grid;
	grid-column-gap: 2%;
	grid-row-gap: calc( 100vw / 65 );
}

.wp-block-latest-posts.is-grid.columns-2 {
	grid-template-columns: 49% 49%;
}

.wp-block-latest-posts.is-grid.columns-3 {
	grid-template-columns: repeat(3,32%);
}

.wp-block-latest-posts.is-grid.columns-4 {
	grid-template-columns: repeat(4,23.5%);
}

.wp-block-latest-posts.is-grid.columns-5 {
	grid-template-columns: repeat(5,18.4%);
}

.wp-block-latest-posts.is-grid.columns-6 {
	grid-template-columns: repeat(6,15%);
}

.wp-block-latest-posts.columns-2 li,
.wp-block-latest-posts.columns-3 li,
.wp-block-latest-posts.columns-4 li,
.wp-block-latest-posts.columns-5 li,
.wp-block-latest-posts.columns-6 li {
	width: auto;
}

.wp-block-latest-posts.is-grid li {
	margin: 0;
	display: flex;
	flex-direction: column;
}

.wp-block-latest-posts.is-grid li .wp-block-latest-posts__featured-image img {
	width: 100%;
}

.wp-block-latest-posts.is-grid li .wp-block-latest-posts__post-title {
	font-family: var(--font--family--headings);
	font-size: var(--wp--preset--font-size--medium);
	font-weight: 700;
	line-height: var(--line--height--headings);
	margin: 0.5em 0 0;
	color: var(--wp--preset--color--fg);
	text-decoration: none;
	overflow-wrap: break-word;
}

.wp-block-latest-posts.is-grid li .wp-block-latest-posts__post-date {
	font-size: .8125em;
	margin: 0.5em 0 0;
	color: inherit;
	opacity: .7;
}

.wp-block-latest-posts.is-grid li .wp-block-latest-posts__post-excerpt {
	font-size: 1em;
	margin: 0.5em 0 0;
}

#primary:not(.has-sidebar) .entry-content .alignfull,
#masthead .alignfull,
#colophon .alignfull {
	margin-left: -webkit-calc(-50vw + 50%);
	margin-left: calc(-50vw + 50%);
	margin-right: -webkit-calc(-50vw + 50%);
	margin-right: calc(-50vw + 50%);
	max-width: 100vw;
	width: 100vw;
}

.entry-content .alignfull,
.entry-content .alignwide {
	width: 100%;
}

#masthead .alignwide,
#colophon .alignwide {
	width: var(--site--width);
}

.entry-content .alignfull img,
.wp-block-image.alignfull img,
.entry-content .alignwide img,
.wp-block-image.alignwide img,
#masthead .alignfull img,
#colophon .alignfull img {
	max-width: 100%;
	width: 100%;
}

.entry-content .alignfull .alignwide,
#masthead .alignfull .alignwide,
#colophon .alignfull .alignwide {
	max-width: var(--container--width);
	margin-left: auto;
	margin-right: auto;
}

.wp-block-button__link {
	background-color: var(--wp--preset--color--accent-1);
	border-radius: var(--radius--button);
	padding: var(--padding--button--v) var(--padding--button--h);
	margin: 0 0 1em;
	font-size: inherit;
	line-height: var(--line--height--button);
	transition: all .3s ease;
}

.wp-block-button.is-style-outline > .wp-block-button__link,
.wp-block-button .wp-block-button__link.is-style-outline {
	border-width: 1px;
	padding: calc(var(--padding--button--v) - 2px) calc(var(--padding--button--h) - 2px);
}

.wp-block-search__inside-wrapper {
	padding: 0;
	border: none;
}

.wp-block-search__button {
	background: var(--wp--preset--color--accent-1);
	color: var(--wp--preset--color--bg);
	padding: .375em .625em;
	border: none;
	border-radius: var(--radius--button);
}

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

.entry-title:before,
.entry-title:after {
	font-family: 'Font Awesome 6 Free';
	font-style: normal;
	font-weight: 900;
	content: "";
}

.format-aside .entry-title:before,
.single-format-aside .entry-title:before {
	content: "\f15b";
	margin-right: 10px;
}

.format-image .entry-title:before,
.single.format-image .entry-title:before {
	content: "\f03e";
	margin-right: 10px;
}

.format-video .entry-title:before,
.single-format-video .entry-title:before {
	content: "\f03d";
	margin-right: 10px;
}

.format-link .entry-title:before,
.single-format-link .entry-title:before {
	content: "\f0c1";
	margin-right: 10px;
}

.format-quote .entry-title:before,
.single-format-quote .entry-title:before {
	content: "\f10d";
	margin-right: 10px;
}

.format-gallery .entry-title:before,
.single-format-gallery .entry-title:before {
	content: "\f302";
	margin-right: 10px;
}

.format-audio .entry-title:before,
.single-format-audio .entry-title:before {
	content: "\f025";
	margin-right: 10px;
}

.format-status .entry-title:before,
.single-format-status .entry-title:before {
	content: "\f00c";
	margin-right: 10px;
}

.format-chat .entry-title:before,
.single-format-chat .entry-title:before {
	content: "\f075";
	margin-right: 10px;
}

.post-password-required .entry-title:after,
.post-password-protected .entry-title:after,
.single-post-password-required .entry-title:after,
.single-post-password-protected .entry-title:after {
	content: "\f023";
	margin-left: 10px;
}

.comment-list a.comment-reply-link:before {
	font-family: 'Font Awesome 6 Free';
	font-weight: 900;
	content: "\f3e5";
	margin-right: 5px;
}

.toggle-nav:before {
	position: relative;
	font-family: 'Font Awesome 6 Free';
	font-weight: 900;
	content: "\f0c9";
}

.toggle-nav.menu-open:before {
	content: "\f00d";
}

.toggle-nav-open:before {
	position: relative;
	font-family: 'Font Awesome 6 Free';
	font-weight: 900;
	content: "\f00d";
}

.menu-item-has-children:after {
	font-family: 'Font Awesome 6 Free';
	content: "\f107";
	font-weight: 900;
	font-size: 1em;
	text-shadow: none;
	opacity: .8;
	position: absolute;
	top: .85em;
	right: .5em;
}
.menu-item-has-children .menu-item-has-children:after {
	content: "\f105";
	top: .5em
}

#bottom-footer .menu-item-has-children:after,
.footer-menu .menu-item-has-children:after {
	display: none;
}

.menu-item-has-children .sub-trigger {
	display: none;
}

.site-header .icons {
	font-family: 'Font Awesome 6 Free';
	font-weight: 900;
}

.site-header .icons.oskar-icon-search:before {
	display: block;
	width: 1em;
	content: "\f002";
	cursor: pointer;
}

.site-header .top-search.search-open .icons.oskar-icon-search:before {
	content: "\f00d";
}

.site-header .search-form input[type="submit"]:after,
.site-header .search-form button[type="submit"]:after {
	position: absolute;
	top: 0;
	left: 9px;
	font-family: 'Font Awesome 6 Free';
	content: "\f002";
	font-weight: 900;
	display: block;
	color: var(--header--default--color);
}

.oskar-icon-barcode:before {
	font-family: 'Font Awesome 6 Free';
	font-weight: 900;
	font-style: normal;
	content: "\f02a";
}

.oskar-icon-folder:before {
	font-family: 'Font Awesome 6 Free';
	font-weight: 900;
	font-style: normal;
	content: "\f07b";
}

.oskar-icon-tag:before {
	font-family: 'Font Awesome 6 Free';
	font-weight: 900;
	font-style: normal;
	content: "\f02b";
}

.oskar-icon-comment:before {
	font-family: 'Font Awesome 6 Free';
	font-weight: 400;
	font-style: normal;
	content: "\f075";
}

.oskar-icon-edit:before {
	font-family: 'Font Awesome 6 Free';
	font-weight: 400;
	font-style: normal;
	content: "\f044";
}

.oskar-icon-calendar:before {
	font-family: 'Font Awesome 6 Free';
	font-weight: 900;
	font-style: normal;
	content: "\f073";
}

.oskar-icon-author:before {
	font-family: 'Font Awesome 6 Free';
	font-weight: 900;
	font-style: normal;
	content: "\f007";
}

.oskar-icon-version:before {
	font-family: 'Font Awesome 6 Free';
	font-weight: 900;
	font-style: normal;
	content: "\f126";
}

.oskar-icon-close:before {
	font-family: 'Font Awesome 6 Free';
	font-weight: 900;
	font-style: normal;
	content: "\f00d";
}

/*--------------------------------------------------------------
## Jetpack
--------------------------------------------------------------*/

.infinite-scroll #main nav.pagination {
	display: none;
}

.infinite-loader {
	color: var(--wp--preset--color--accent-1);
	margin-bottom: 20px;
}

.infinite-loader .spinner {
	left: 50% !important;
}

#infinite-handle {
	text-align: center;
	margin-bottom: 20px;
}

#infinite-handle span {
	background: transparent;
	font-size: inherit;
	padding: 0;
}

.infinite-wrap .entry-video {
	max-width: 100%;
	overflow: hidden;
}
