/*
Theme Name: tbcparent
Theme URI:  https://thebuildcollective.net
Author: The Build Collective
Author URI: https://jeremyschuler.com
Description: Hi. I'm a starter theme called _tbcparent. We've created this as a foundation to help develop clean and modern websites. Our theme leverages WordPress' native Gutenberg block editor to create an open canvas for designing beautiful layouts.
Version: 1.5
Tested up to: 5.6
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: tbcparent
Tags: entertainment, food-and-drink, grid-layout, one-column, two-column, three-columns, four-columns, block-patterns, block-styles, custom-colors. custom-logo, editor-style, full-width-template, wide-blocks, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.

tbcparent is based on Underscores http://underscores.me/, (C) 2012-2016 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal http://necolas.github.io/normalize.css/
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
		Last Updated 04.08.202 - Schuler
----------------------------------------------------------------
1.0  # Normalize 8.0.1
2.0  # Typography
3.0  # Elements
4.0  # Forms
5.0  # Navigation
    ## Links
    ## Menus
6.0  # Accessibility
7.0  # Alignments
8.0  # Widgets
9.0 # Content
    ## Posts and pages
    ## Comments
10.0 # Media
    ## Captions
    ## Galleries
11.0 # Author Styles
	## Color Variables and Helper Classes
    ## Typography
    ## Layout, CSS Grid
    ## Content
    ## Page Templates
    ## Blog
    ## Styleguide
12.0 # Components
13.0 # Gutenberg
    ## Blocks
    ## Blocks Custom
14.0 # Plugins, Overrides
15.0 # Media Queries
--------------------------------------------------------------*/

/* ==========================================================================
	 1.0 # normalize.css v8.0.1
   MIT License | https://github.com/necolas/normalize.css
   ========================================================================== */
html{line-height:1.15;-webkit-text-size-adjust:100%}body{margin:0;padding:0;}main{display:block}h1{font-size:2em;margin:.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;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:-.25em}sup{top:-.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}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}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}

/* ==========================================================================
	 2.0 # Typography
   ========================================================================== */
body,button,input,optgroup,select,textarea{font-family:sans-serif;font-size:16px;font-size:1rem;line-height:1.5}h1,h2,h3,h4,h5,h6{clear:both}p{margin-top:0;margin-bottom:1em}cite,dfn,em,i{font-style:italic}blockquote,blockquote p{font-size:1.333rem;font-family:sans-serif;color:#121212}address{margin:0 0 1.5em}pre{background:#eee;font-family:"Courier 10 Pitch",Courier,monospace;font-size:15px;font-size:.9375rem;line-height:1.6;margin-bottom:1.6em;max-width:100%;overflow:auto;padding:1.6em}code,kbd,tt,var{font-family:Monaco,Consolas,"Andale Mono","DejaVu Sans Mono",monospace;font-size:15px;font-size:.9375rem}abbr,acronym{border-bottom:1px dotted #666;cursor:help}ins,mark{background:#fff9c0;text-decoration:none}big{font-size:125%}

/* ==========================================================================
   3.0 # Elements
   ========================================================================== */
html{box-sizing:border-box}*,:after,:before{box-sizing:inherit}hr{background-color:#ccc;border:0;height:1px;margin-bottom:1.5em}ol,ul{margin:0 0 1.5em 3em}ul{list-style:disc}ol{list-style:decimal}li>ol,li>ul{margin-bottom:0;margin-left:1.5em}a,li{outline:0}dt{font-weight:700}dd{margin:0 1.5em 1.5em}img{height:auto;max-width:100%}figure{margin:1em 0}table{margin:0 0 1em;width:100%}

/* ==========================================================================
   4.0 # Buttons, Forms
   ========================================================================== */
button,
input[type="button"],
input[type="reset"],
input[type="submit"],
.wp-block-button__link,
.wpcf7 input[type="submit"],
.entry-content .gform_wrapper input[type=submit] {  
	border: 1px solid transparent;
	background: var(--color-accent); padding: 16px 22px; color: #fff;
	transition: background 150ms ease-in-out;
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
.wpcf7 input[type="submit"]:hover {
	background: #111; cursor: pointer;
}

input[type="submit"]:hover { background: none; color: var(--color-accent); border-color: var(--color-accent); }

button:active, button:focus,
input[type="button"]:active,
input[type="button"]:focus,
input[type="reset"]:active,
input[type="reset"]:focus,
input[type="submit"]:active,
input[type="submit"]:focus,
.wpcf7 input[type="submit"]:active,
.wpcf7 input[type="submit"]:focus {
	border-color: #aaa #bbb #bbb; outline: 0;
}

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 {
	padding: 3px; color: #666;
	border: 1px solid #ccc; border-radius: 0; box-shadow: 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 {
	color: #111;
}

select { border: 1px solid #ccc; }
select:focus { color: #000; box-shadow: none; }

textarea { width: 100%; }

input::-webkit-input-placeholder { color: #666; }
input::-moz-placeholder { color: #666; }
input:-ms-input-placeholder { color: #666; }
input:-moz-placeholder { color: #666; }

textarea::-webkit-input-placeholder { color: #666; }
textarea::-moz-placeholder { color: #666; }
textarea:-ms-input-placeholder { color: #666; }
textarea:-moz-placeholder { color: #666; }

textarea::-webkit-input-placeholder:focus { color: #ccc; }
textarea::-moz-placeholder:focus { color: #ccc; }
textarea:-ms-input-placeholder:focus { color: #ccc; }
textarea:-moz-placeholder:focus { color: #ccc; }

/* ==========================================================================
   5.0 # Navigation
   ========================================================================== */

/* --------------------------------------------------------------------------
	 ## Links
   -------------------------------------------------------------------------- */
a { color: #121212; text-decoration: none; }

a:hover,
a:focus,
a:active {
	color: #121212;
}

.button { min-width: 140px; min-height: 40px; font-size: 12px; line-height: 1.35; }
.button.ghost { color: #121212; border: 1px solid #121212; background: none; }
.button.ghost:hover { background: #121212; color: #fff; }

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

/* Main Menu */
.main-navigation { padding-right: 20px; }
.main-navigation a { display: block; }
.main-navigation li.wp-block-button__link { margin-left: 20px; padding-left: 0; }
.main-navigation li.wp-block-button__link a { padding: 16px 20px; text-align: center; border-radius: 4px; }
.main-navigation li.wp-block-button__link a,
.main-navigation li.wp-block-button__link.current-menu-item a {
	color: var(--color-white);
}

.main-navigation ul { margin: 0; padding: 0; }
.main-navigation ul.sub-menu { background: #fff; }
.main-navigation ul ul {
	float: left; position: absolute; top: 0; left: -999em; z-index: 99999;
	min-width: 240px; margin-top: 30px; padding-top: 20px; padding-bottom: 10px; box-shadow: 0 1px 1px rgba(0, 0, 0, 0.2);
}
.main-navigation ul ul li { width: 100%; margin-bottom: 5px; padding: 0 4% 5px; border-bottom: 1px solid #efefef; }
.main-navigation ul ul li:last-child { margin-bottom: 0; padding-bottom: 0; border: 0; }
.main-navigation ul ul li a { color: #5D5D5D; }

.main-navigation ul ul ul { top: 0; left: -999em; }

.main-navigation ul ul li:hover > ul,
.main-navigation ul ul li.focus > ul {
	left: 100%;
}

.main-navigation ul ul a { width: 200px; padding-top: 0; padding-bottom: 0; }

.main-navigation ul li:hover > ul,
.main-navigation ul li.focus > ul {
	left: auto;
}

.main-navigation ul#menu-project-menu { height: 100%; padding-right: 40px; text-align: right;
	display: grid; grid-template-columns: 1fr minmax(min-content, max-content); 
}

.menu li { position: relative; display: inline-block; padding: 0 20px; }
.main-navigation li:last-child { padding-right: 0; }
.main-navigation li.menu-item-has-children:last-of-type:hover ul.sub-menu { right: 0; }

.menu li:hover > a,
.menu li:hover > a::after,
.menu li.current-menu-item > a,
.menu li.current-menu-ancestor > a { 
	color: var(--color-accent); 
}

/* Responsive Menu */
.menu { display: flex; align-items: center; }
.main-navigation .menu { justify-content: flex-end; }

.menu-toggle,
.main-navigation.toggled .menu {
	display: block;
}

.menu-toggle i { color: var(--color-black-dark); }

@-webkit-keyframes slide-down {
      0% { opacity: 0; -webkit-transform: translateY(-100%); }
    100% { opacity: 1; -webkit-transform: translateY(0); }
}
@-moz-keyframes slide-down {
      0% { opacity: 0; -moz-transform: translateY(-100%); }
    100% { opacity: 1; -moz-transform: translateY(0); }
}

/* Navigation */
.main-navigation .menu-main-menu-container,
.main-navigation .menu-secondary-menu-container {
  display: grid;
}
.main-navigation .menu-main-menu-container { z-index: 1; justify-content: end; align-items: center; }
.main-navigation li a:before { height: 0; }

ul.nav-menu li a { padding: 5px 0; text-transform: uppercase; }
ul.nav-menu li a:hover { color: var(--color-accent-light); }
ul.nav-menu li:last-child a { margin-right: 0; }
ul.nav-menu li.current-menu-item li a { color: #505050; }
ul.nav-menu li.current-menu-item li a:hover { color: var(--color-accent); }
ul.nav-menu li.menu-item-has-children a::after { position: relative; left: 10px;  }
ul.nav-menu li.menu-item-has-children li a::after { content: none; }

.main-navigation.toggled ul {
	-webkit-animation: slide-down .3s ease-out;
	-moz-animation: slide-down .3s ease-out;
}
.main-navigation.toggled ul ul { padding-left: 10px; }
.main-navigation.toggled ul ul:before { display: none; }

/* Hamburger Menu */
.menu-toggle { position: absolute; z-index: 999; top: 25px; right: 20px; display: none;  margin: 0; background: none; border: 0; text-indent: -9999px; }
.menu-toggle span,
.menu-toggle span:before,
.menu-toggle span:after {
	position: absolute; display: block; height: 6px; width: 30px;
	cursor: pointer; border-radius: 1px; background: #121212;
  content: '';
}
.menu-toggle span { top: 12px; left: 10px; }
.menu-toggle span:before { top: 10px; }
.menu-toggle span:after { top: 20px; }

.menu-toggle span,
.menu-toggle span:before,
.menu-toggle span:after {
	transition: all .35s;
  -moz-transition: all .35s; /* Firefox 4 */
  -webkit-transition: all .35s; /* Safari and Chrome */
  -o-transition: all .35s; /* Opera */
}

.menu-toggle:hover { background: none; }
.menu-toggle:hover span,
.menu-toggle:hover span:before,
.menu-toggle:hover span:after {
	background: var(--color-gray);
}

/* Hamburger Menu Toggled */
.main-navigation.toggled .menu-toggle span { top: 22px; background-color: transparent; }
.main-navigation.toggled .menu-toggle span:before,
.main-navigation.toggled .menu-toggle span:after {
	top: 0; background: #888888;
}
.main-navigation.toggled .menu-toggle span:before { transform: rotate(45deg); }
.main-navigation.toggled .menu-toggle span:after { transform: rotate(-45deg); }

.main-navigation.toggled .menu-toggle:hover,
.main-navigation.toggled .menu-toggle:hover span {
	background: none;
}
.main-navigation.toggled .menu-toggle:hover span.icon:before,
.main-navigation.toggled .menu-toggle:hover span.icon:after {
	background: #121212;
}

/* Single Post Navigation */
.site-main .comment-navigation, .site-main
.posts-navigation, .site-main
.post-navigation {
	margin: 0 auto 1.5em;
	overflow: hidden;
}

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

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

/* ScrollTo Menu */
.logged-in .scroll-navigation.fixed { top: 32px; }

.scroll-navigation { width: 100%; }
.scroll-navigation.fixed { position: fixed; top: 0; border-bottom: 1px solid #9f9f9f; }
.scroll-navigation ul { margin: 0; padding: 0 0 0 10px; list-style: none; background: #7D7D7D; }
.scroll-navigation li { display: inline-block; padding: 5px 10px; }
.scroll-navigation a { color: #fff; outline: 0; }

/* ==========================================================================
   6.0 # 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;
	word-wrap: normal !important;
	/* Many screen reader and browser combinations announce broken words as they would appear visually. */
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	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. */
}

/*
 * Hide only visually, but have it available for screen readers:
 * https://snook.ca/archives/html_and_css/hiding-content-for-accessibility
 *
 * 1. For long content, line feeds are not interpreted as spaces and small width
 *    causes content to wrap 1 word per line:
 *    https://medium.com/@jessebeach/beware-smushed-off-screen-accessible-text-5952a4c2cbfe
 */
.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    position: absolute!important;
    height: 1px; width: 1px;
    margin: -1px; padding: 0;
    overflow: hidden;
    white-space: nowrap; /* 1 */
}

/*
 * Extends the .visuallyhidden class to allow the element
 * to be focusable when navigated to via the keyboard:
 * https://www.drupal.org/node/897638
 */
.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto;
    white-space: inherit;
}

/*
 * Hide visually and from screen readers, but maintain layout
 */
.invisible { visibility: hidden; }

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

/* ==========================================================================
   7.0 # Alignments
   ========================================================================== */
.alignleft { align-self: flex-start; }
.alignright { align-self: flex-end; }

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

/* ==========================================================================
  8.0 # Widgets
   ========================================================================== */
.widget { display: inline-block; width: 100%; margin: 30px 0;
	/* Make sure select elements fit in widgets. */
}
.widget ul li a { color: #717171; }
.widget select { max-width: 100%; }

.sidebar .widget ul { display: flex; flex-direction: column; align-items: start; padding-left: 0; }
.sidebar .widget ul li { width: 100%; margin-left: 0; margin-bottom: 8px; padding-bottom: 8px; padding-left: 0; text-transform: uppercase; list-style-type: none; }
.sidebar .widget ul li:not(:last-child) { border-bottom: 1px solid var(--border-color); }
.sidebar .widget a { color: var(--color-accent); }
.sidebar .widget a:hover { color: var(--color-accent); }

/* ==========================================================================
   9.0 # Content
   ========================================================================== */

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

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

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

/* --------------------------------------------------------------------------
	 ## Comments
   -------------------------------------------------------------------------- */
.comment-content a { word-wrap: break-word; }
.bypostauthor { display: block; }

/* ==========================================================================
   10.0 # 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%;
}

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

/* --------------------------------------------------------------------------
	 ## Captions
   -------------------------------------------------------------------------- */
.wp-caption { max-width: 100%; margin-bottom: 1.5em; }
.wp-caption img[class*="wp-image-"] { display: block; margin-right: auto; margin-left: auto; }
.wp-caption .wp-caption-text { margin: 0.8075em 0; }
.wp-caption-text { text-align: center; }

/* --------------------------------------------------------------------------
	 ## Galleries
   -------------------------------------------------------------------------- */
.gallery { margin-bottom: 1.5em; }
.gallery-item { display: inline-block; width: 100%; text-align: center; vertical-align: top; }

.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; }

/* ==========================================================================
   11.0 # Author Styles
   ========================================================================== */

/* Border Helper Classes */
.border { border: 1px solid var(--border-color)!important; }
.bt  { border-top: 1px solid var(--border-color)!important; }
.br { border-right: 1px solid var(--border-color)!important; }
.bb { border-bottom: 1px solid var(--border-color)!important; }
.bl { border-left: 1px solid var(--border-color)!important; }

.border-color-light { border-color: var(--border-color)!important; }
.border-color-dark { border-color: var(--border-color-dark)!important; }

.border-accent-color { border-color: var(--color-accent)!important; }
.border-accent-light { border-color: var(--color-accent-light)!important; }
.border-accent-dark { border-color: var(--color-accent-dark)!important; }

.b-0  { border: 0 !important; }
.bt-0 { border-top: 0 !important; }
.br-0 { border-right: 0 !important; }
.bb-0 { border-bottom: 0 !important; }
.bl-0 { border-left: 0 !important; }

.bt-small { border-top: 2px solid var(--border-color-light)!important; }
.br-small { border-right: 2px solid var(--border-color-light)!important; }
.bb-small { border-bottom: 2px solid var(--border-color-light)!important; }
.bl-small { border-left: 2px solid var(--border-color-light)!important; }

.bt-medium { border-top: 5px solid var(--border-color-light)!important; }
.br-medium { border-right: 5px solid var(--border-color-light)!important; }
.bb-medium { border-bottom: 5px solid var(--border-color-light)!important; }
.bl-medium { border-left: 5px solid var(--border-color-light)!important; }

.bt-large { border-top: 10px solid var(--border-color-light)!important; }
.br-large { border-right: 10px solid var(--border-color-light)!important; }
.bb-large { border-bottom: 10px solid var(--border-color-light)!important; }
.bl-large { border-left: 10px solid var(--border-color-light)!important; }

/* Animate Scale */
.animate-scale { overflow: hidden; }
.animate-scale img { backface-visibility: hidden;
	transition: all .35s;
	transform: scale(1);
}
.animate-scale:hover img {
	transform: scale(1.0125);
  opacity: .9;
}

/* --------------------------------------------------------------------------
	 ## Color Variables and Helper Classes
   -------------------------------------------------------------------------- */

:root {
  --color-primary: #222;

  --color-accent: #0073aa;
  --color-accent-light: #0072BC;
  --color-accent-dark: #00253D;
  
  --color-white: #fff !important;
  --color-white-opacity: rgba(255,255,255, 0.9) !important; 

  --color-black: #000!important;
  --color-black-dark: #111!important;
  
  --color-success: #09B09A;
  --color-feedback: #FEB503;
  --color-alert: #CC2723;
  
  --color-gray: #919191;
  --color-gray-light: #efefef;
  --color-gray-dark: #2e2e2e;
  
  --border-color: #919191;
  --border-color-light: #efefef;
  --border-color-dark: #2e2e2e;

  --box-shadow: 0 6px 9px 0 rgba(50,54,65,0.05);
  --box-shadow-dark: 0 8px 60px 0 rgba(0,0,0,0.25), 0 12px 90px 0 rgba(0,0,0,0.25);
}

/* Light Theme */
body { background-color: var(--color-white); }
#colophon { background-color: var(--color-white); }

.menu a { color: var(--color-black); }
.site-title a { color: var(--color-black); }

h1,
h2,
h3,
h4,
h5,
h6 {
	color: var(--color-black);
}

p,
#main p { 
	color: var(--color-black); 
}

/* Dark Theme 
body { background-color: var(--color-black-dark); }	
#masthead,
#colophon { 
	background-color: var(--color-black); 
}

.site-title a { color: var(--color-white); }
.menu a { color: var(--color-white); }

h1,
h2,
h3,
h4,
h5,
h6,
ol li,
ul li {
	color: var(--color-white);
}

p,
#main p { 
	color: var(--color-white); 
}

*/

.has-very-dark-gray-background-color h1,
.has-very-dark-gray-background-color h2,
.has-very-dark-gray-background-color h3,
.has-very-dark-gray-background-color h4,
.has-very-dark-gray-background-color h5,
.has-very-dark-gray-background-color h6 {
	color: var(--color-white);
}

/* Block Color Palette Colors 
 * declared in inc/theme-options.php
*/
.has-accent-color { color: var(--color-accent)!important; }
.has-accent-dark-color { color: var(--color-accent-dark)!important; }
.has-accent-light-color { color: var(--color-accent-light)!important; } 

.has-gray-color { color: var(--color-gray)!important; }
.has-light-gray-color { color: var(--color-gray-light)!important; }
.has-dark-gray-color { color: var(--color-gray-dark)!important; }

.has-gray-background-color { background-color: var(--color-gray)!important; }
.has-light-gray-background-color { background-color: var(--color-gray-light)!important; }
.has-dark-gray-background-color { background-color: var(--color-gray-dark)!important; }

.has-black-color,
.has-black-color p {
	color: var(--color-black);
}

.has-white-background-color { background-color: var(--color-white)!important; }
.has-black-background-color { background-color: var(--color-black)!important; }
.has-black-dark-background-color { background-color: var(--color-black-dark)!important; }

.has-accent-background-color { background-color: var(--color-accent)!important; }
.has-accent-dark-background-color { background-color: var(--color-accent-dark)!important; }
.has-accent-light-background-color { background-color: var(--color-accent-light)!important; }

.has-success-color,
span.has-success-color { 
	color: var(--color-success)!important; 
}
.has-feedback-color { color: var(--color-feedback)!important; }

.entry-content p a { color: var(--color-accent); }

.alert { color: var(--color-alert); }

/* --------------------------------------------------------------------------
	 ## Typography
   -------------------------------------------------------------------------- */

:root {
  --font-primary: 'Roboto', sans-serif;
  --font-headlines: 'Roboto Condensed', sans-serif;
  --font-tertiary: 'Roboto', sans-serif;
  
  --font-h1: 3.052rem;
  --font-h2: 2.441rem; 
  --font-h3: 1.953rem;
  --font-h4: 1.563rem;
  --font-h5: 1.25rem;
  --font-h6: 1rem;
  
  --font-huge-font-size: 4.209rem;
  --font-large-font-size: 3.157rem;
  --font-medium-font-size: 1.777rem;
  --font-normal-font-size: 1.205rem;
  --font-small-font-size: .75rem;
}

/* Font Helper Classes */
.has-huge-font-size {   font-size: var(--font-huge-font-size); line-height: 1.2; } 
.has-large-font-size {  font-size: var(--font-large-font-size); line-height: 1.2; }
.has-medium-font-size { /* font-size: var(--font-medium-font-size); line-height: 1.3; */ }
.has-normal-font-size { font-size: var(--font-normal-font-size); line-height: 1.4; }
.has-small-font-size {  font-size: var(--font-small-font-size); line-height: 1.25; }

.roboto { font-family: 'Roboto', sans-serif!important; }
.roboto-condensed { font-family: 'Roboto Condensed', sans-serif!important; }

.uppercase { text-transform: uppercase!important; }

.has-text-align-right { text-align: right!important; }
.has-text-align-center { text-align: center!important; } 
.has-text-align-left { text-align: left!important; } 

/* Font Weight Helper Classes */
.fw-100,
.fw-100i {
	font-weight: 100;
}
.fw-300,
.fw-300i {
	font-weight: 300;
}
.fw-400,
.fw-400i {
	font-weight: 400;
}
.fw-500,
.fw-500i {
	font-weight: 500;
}
.fw-600 {
	font-weight: 600;
}
.fw-700,
.fw-700i {
	font-weight: 700;
}
.fw-800 {
	font-weight: 800;
}
.fw-900,
.fw-900i {
	font-weight: 900;
}

.fw-100i,
.fw-300i,
.fw-400i,
.fw-500i,
.fw-700i,
.fw-800i,
.fw-900i {
  font-style: italic;
}

/* Letter Spacing Helper Classes */
.ls-0 { letter-spacing: 0!important; }
.ls-1 { letter-spacing: 1px!important; }
.ls-2 { letter-spacing: 2px!important; }
.ls-3 { letter-spacing: 3px!important; }
.ls-4 { letter-spacing: 4px!important; }

h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: var(--font-primary); font-weight: 400;
}
h1 { font-size: var(--font-h1); }
h1.site-title { font-size: 1.25rem; font-weight: 400; }
h1.page-title { font-family: var(--font-headlines); text-transform: uppercase; letter-spacing: 4px; }

h2 { font-size: var(--font-h2); line-height: 1.35; }
h2.notice { font-family: var(--font-secondary); }
h3 { font-size: var(--font-h3); line-height: 1.35; }
h4 { font-size: var(--font-h4); line-height: 1.35; }
h5 { font-size: var(--font-h5); line-height: 1.35;  }
h6 { 
	font-size: var(--font-h6); line-height: 1.2; 
}

b, 
strong {
	font-weight: 600; 
}

a { font-family: var(--font-primary); text-decoration: none; }
p { line-height: 1.75; }
p a { text-decoration: underline; }

p,
ul,
ol,
ul li,
ol li { 
	font-size: 1rem; line-height: 1.4; font-family: var(--font-primary);
}

ul.contact-list a { font-size: .833rem; }

img,
span,
input,
textarea,
select {
	font-family: var(--font-primary);
}

blockquote,
blockquote p {
	line-height: 1.44;
}

.social-icons i { font-size: 1.77rem; }

button,
input[type="button"],
input[type="reset"],
input[type="submit"],
input[type="submit"],
.wp-block-button__link,
.wpcf7 input[type="submit"] {
	font-family: var(--font-primary); font-size: 1em; line-height: 1; text-transform: uppercase; font-weight: 500; letter-spacing: 2px;
}

.posted-on { font-size: 1rem; }

.button { font-family: var(--font-primary); text-transform: uppercase; }
.button.view-all { font-size: .75rem; }

.menu-toggle { font-size: .75rem; font-family: var(--font-primary); text-transform: uppercase; }
.menu-toggle i { font-size: 2.369rem; }

.menu a { font-family: var(--font-primary)!important; text-decoration: none; }
.menu ul a { font-weight: 400; }
.menu ul ul a { text-transform: capitalize; }

.site-title a { font-size: 1.33em; text-decoration: none; letter-spacing: 0; }
.site-description { font-size: 1rem; font-weight: normal; }

ul.social-icons i { font-size: 1.125rem; }
ul.menu li a { font-size: 1rem; letter-spacing: .5px; }
ul.menu li ul li a { font-size: .937rem; }

.copyright,
.site-info a,
.cat-links,
.cat-links a,
.tags-links,
.tags-links a,
.comments-link a {
	font-size: .8rem; font-weight: 400; text-transform: uppercase;
}
.copyright { font-family: var(--font-headlines); }
.site-info a { font-size: .75rem; }

.sidebar ul li,
.sidebar .widget-title { 
	text-transform: uppercase; 
}
.sidebar ul li { font-weight: 500; }

article .entry-header a { font-family: var(--font-primary); }
.blog .post .entry-header a { font-family: var(--font-secondary); }

.archive article .entry-content h1,
.archive article .entry-content h2 {
	font-size: 1.77rem;
}

.wp-block-image figcaption { font-size: .75rem; font-family: var(--font-primary); }

.wp-block-tbc-accordion-item h3 { font-family: var(--font-secondary); font-weight: 300; font-size: 1.953rem; letter-spacing: 0; }
.wp-block-tbc-accordion-item .tbc-accordion-item-heading::after { font-size: 1.77rem; font-weight: 700; line-height: 1.25; }

/* Lists */
.entry-content ol li:not(:last-child),
.entry-content ul li:not(:last-child) {
	margin-bottom: 1em;
}
ul#crumbs li,
ul#crumbs li a {
	font-size: var(--font-small-font-size);
}

ul#crumbs li:first-child::before,
li.menu-item-has-children a::after {
	font-family:'Font Awesome 5 Free'; font-weight: 900;
}

ul#crumbs li:first-child::before { content:'\f015'; }
ul#crumbs li { text-transform: uppercase; letter-spacing: 2px; }

li.menu-item-has-children > a::after { display: inline-block; margin-left: .5em; content: '\f107'; 
	transition: all .35s;
}
li.menu-item-has-children li a::after { content: ''; }
li.menu-item-has-children:hover a::after { transform: rotate(-180deg); }

/* --------------------------------------------------------------------------
	 ## Layout
	 CSS Grid, Flexbox
   -------------------------------------------------------------------------- */

/* Size Variables */ 
   :root {
	   --spacer-xxs: .25em;
	   --spacer-xs:  .5em;
	   --spacer-sm:  1em;
	   --spacer-med: 2em;
	   --spacer-lg:  3em;
	   --spacer-xl:  4em;
	   --spacer-xxl: 5em;
   }
   
.alignfull { max-width: 100%!important; }
.alignfull > * { padding-right: 0; padding-left: 0; }

/* Spacing */
.m-auto { margin: auto!important; }

.m-all-xss { margin: var(--spacer-xss)!!important; }
.m-all-xs  { margin: var(--spacer-xs)!!important; }
.m-all-1 { margin: var(--spacer-sm)!important; }
.m-all-2 { margin: var(--spacer-med)!important; }
.m-all-3 { margin: var(--spacer-lg)!important; }
.m-all-4 { margin: var(--spacer-xl)!important; }

.mt-xxs { margin-top: var(--spacer-xxs)!important; }
.mt-xs { margin-top: var(--spacer-xs)!important; }
.mt-0 { margin-top: 0 !important; }
.mt-1 { margin-top: var(--spacer-sm)!important; }
.mt-2 { margin-top: var(--spacer-med)!important; }
.mt-3 { margin-top: var(--spacer-lg)!important; }
.mt-4 { margin-top: var(--spacer-xl)!important; }
.mt-5 { margin-top: var(--spacer-xxl)!important; }

.mr-xxs { margin-right: var(--spacer-xxs)!important; }
.mr-xs { margin-right: var(--spacer-xs)!important; }
.mr-0 { margin-right: 0 !important; }
.mr-1 { margin-right: var(--spacer-sm)!important; }
.mr-2 { margin-right: var(--spacer-med)!important; }
.mr-3 { margin-right: var(--spacer-lg)!important; }
.mr-4 { margin-right: var(--spacer-xl)!important; }

.mb-xxs { margin-bottom: var(--spacer-xxs)!important; }
.mb-xs { margin-bottom: var(--spacer-xs)!important; }
.mb-0 { margin-bottom: 0!important; }
.mb-1 { margin-bottom: var(--spacer-sm)!important; }
.mb-2 { margin-bottom: var(--spacer-med)!important; }
.mb-3 { margin-bottom: var(--spacer-lg)!important; }
.mb-4 { margin-bottom: var(--spacer-xl)!important; }
.mb-5 { margin-bottom: var(--spacer-xxl)!important; }

.ml-xxs { margin-left: var(--spacer-xxs)!important; }
.ml-xs { margin-left: var(--spacer-xs)!important; }
.ml-0 { margin-left: 0!important; }
.ml-1 { margin-left: var(--spacer-sm)!important; }
.ml-2 { margin-left: var(--spacer-med)!important; }
.ml-3 { margin-left: var(--spacer-lg)!important; }
.ml-4 { margin-left: var(--spacer-xl)!important; }

.p-all-xss { padding: var(--spacer-xss)!!important; }
.p-all-xs  { padding: var(--spacer-xs)!!important; }
.p-all-0 { padding: 0!important; }
.p-all-1 { padding: var(--spacer-sm)!important; }
.p-all-2 { padding: var(--spacer-med)!important; }
.p-all-3 { padding: var(--spacer-lg)!important; }
.p-all-4 { padding: var(--spacer-xl)!important; }

.pt-xxs { padding-top: var(--spacer-xxs)!important; }
.pt-xs { padding-top: var(--spacer-xs)!important; }
.pt-0 { padding-top: 0 !important; }
.pt-1 { padding-top: var(--spacer-sm)!important; }
.pt-2 { padding-top: var(--spacer-med)!important; }
.pt-3 { padding-top: var(--spacer-lg)!important; }
.pt-4 { padding-top: var(--spacer-xl)!important; }

.pr-xxs { padding-right: var(--spacer-xxs)!important; }
.pr-xs { padding-right: var(--spacer-xs)!important; }	
.pr-0 { padding-right: 0 !important; }
.pr-1 { padding-right: var(--spacer-sm)!important; }
.pr-2 { padding-right: var(--spacer-med)!important; }
.pr-3 { padding-right: var(--spacer-lg)!important; }
.pr-4 { padding-right: var(--spacer-xl)!important; }

.pb-xxs { padding-bottom: var(--spacer-xxs)!important; }
.pb-xs { padding-bottom: var(--spacer-xs)!important; }
.pb-0 { padding-bottom: 0!important; }
.pb-1 { padding-bottom: var(--spacer-sm)!important; }
.pb-2 { padding-bottom: var(--spacer-med)!important; }
.pb-3 { padding-bottom: var(--spacer-lg)!important; }
.pb-4 { padding-bottom: var(--spacer-xl)!important; }

.pl-xxs { padding-left: var(--spacer-xxs)!important; }
.pl-xs { padding-left: var(--spacer-xs)!important; }
.pl-0 { padding-left: 0!important; }
.pl-1 { padding-left: var(--spacer-sm)!important; }
.pl-2 { padding-left: var(--spacer-med)!important; }
.pl-3 { padding-left: var(--spacer-lg)!important; }
.pl-4 { padding-left: var(--spacer-xl)!important; }

/* Grid Gap */
.gg-0 { grid-gap: 0!important; } 
.gg-xss { grid-gap: var(--spacer-xss)!important; }
.gg-xs { grid-gap: var(--spacer-xs)!important; }
.gg-sm { grid-gap: var(--spacer-sm)!important; } 
.gg-med { grid-gap: var(--spacer-med)!important; }
.gg-lg { grid-gap: var(--spacer-lg)!important; }

/* Position Classes */
.absolute-tl,
.absolute-br {
	position: absolute; 
}
.absolute-tl { z-index: 10; top: 0; left: 0; }
.absolute-br { z-index: 1; bottom: 0; right: 0; }

/* Flexbox Alignments */
.justify-center { display: flex; flex-direction: column; justify-content: center; align-items: center; }
.justify-align-center-end { display: flex!important; align-items: center!important; justify-content: flex-end!important; }
.justify-align-center-start { display: flex!important; align-items: center!important; justify-content: flex-start!important; }

/* Helper Classes */
.align-center { height: 100%; align-content: center; }
.justify-content-center { justify-content: center; }
.justify-content-end { justify-content: end; }

.entry-content,
.entry-content .wp-block-group__inner-container { 
	display: flex; flex-direction: column; 
}

/* Global Layout */
.wrapper { width: 100%; display: block; margin: 0 auto; background-color: var(--color-white); }
.container { max-width: 1280px; margin: 0 auto; padding: 2em; }
.container.full-width { max-width: 90%; padding-right: var(--spacer-med); padding-left: var(--spacer-med); }

.entry-content .wp-block-group__inner-container > * { padding: 0; }
.entry-content .wp-block-group__inner-container > *:only-child { margin-top: 0; margin-bottom: 0; }
.entry-content .wp-block-group__inner-container :first-child { margin-top: 0; }

.error-404 > *,
.entry-content > * { 
	max-width: 1180px; width: 100%; margin-right: auto; margin-left: auto; padding: 0 var(--spacer-lg);
}
.entry-content .wp-block-group { margin-top: var(--spacer-xl); margin-bottom: var(--spacer-xl); }

article .entry-content > * { word-break: break-word; }

/* Align Default */
.entry-content .aligndefault { max-width: 1080px; width: 100%; margin: auto; padding: 0 var(--spacer-lg); }

/* Align Extended */
.alignextended { max-width: 1920px; width: 100%; margin-right: auto; margin-left: auto; }

/* Align Full */
.entry-content > .alignfull .wp-block-group { max-width: 1080px; width: 100%; margin-right: auto; margin-left: auto; padding: 0 3em; }
.entry-content > .alignfull .wp-block-group.alignfull { max-width: 100%; padding: 0; }
.entry-content > .alignfull .wp-block-group.alignfull .wp-block-column { margin: 0; }
.entry-content > .alignfull .wp-block-group .wp-block-group { padding-right: 0; padding-left: 0; }

/* Align Wide */
.entry-content .alignwide,
.entry-content > .alignfull .wp-block-group.alignwide,
.entry-content .wp-block-group__inner-container .alignwide { 
	max-width: 1440px; width: 100%; margin-right: auto; margin-left: auto;
}

/* One Column Centered */
.one-col-centered,
.entry-content.one-col-centered,
.entry-content .wp-block-group.one-col-centered,
.entry-content > .alignfull .wp-block-group.one-col-centered { 
	max-width: 800px; margin-right: auto; margin-left: auto; padding: 0 30px; 
}

.entry-content .one-col-centered.full-width { max-width: 960px; }
.entry-content .one-col-centered .entry-header { margin-bottom: 0; }
.entry-content .one-col-centered article > * { padding-right: 0; padding-left: 0; }

/* Full Width, Hero Section margin adjustments */
.entry-content > .alignfull:first-child,
.entry-content > .wp-block-cover:first-child { 
	margin-top: 0; padding-top: var(--spacer-xxl); padding-bottom: var(--spacer-xxl) 
}
.entry-content > .post:first-child header { margin-top: 0; }

article.entry-content header { margin-bottom: 10px; }
article.entry-content header :first-child { margin-top: 0; }

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

/* Global */
h1.entry-title,
h2.widget-title {
  margin: 20px 0;
}

.success,
.success li {
	color: var(--color-success);
}

ol.fa-icons-list li { margin-left: 0; list-style-type: none; }
ol.fa-icons-list li i { margin-right: 10px; }

p.has-small-font-size .highlight { color: #8b403f; }

/* Links */
a { color: var(--color-accent-light);
	transition: color .35s;
	-moz-transition: color .35s;
	-webkit-transition: color .35s;
	-o-transition: color .35s;
}
a:hover { color: var(--color-accent); }

/* Header */
#masthead,
.main-navigation {
	display: grid;
}

#masthead { position: relative; z-index: 900; min-height: 100px; padding: 0 20px; border-bottom: 1px solid var(--border-color); 
	grid-template-columns: minmax(min-content,max-content) 1fr; align-items: center;
}

#masthead img { position: absolute; top: 20px; left: 20px; width: 150px; height: auto; padding: 0; background: #fff; }
#masthead p a { text-decoration: none; }
#masthead .inner-wrap { position: relative; }
#masthead iframe { position: absolute; top: 30px; margin-left: 20px; }
#masthead .textwidget { position: absolute; top: 10px; right: 21px; letter-spacing: .25px; }

.main-navigation { grid-template-columns: 1fr minmax(min-content, max-content); }

.site-title { display: inline-flex; margin: 0; }
.site-title:not(:empty) + .site-description:not(:empty):before { content: "\2014"; margin: 0 .2em; }

.site-description { display: inline; margin: 0 0 0 20px; color: var(--color-gray-dark); }

/* Social */
ul.social { margin: 0; padding-left: 0; }
ul.social li { display: inline-block; margin-right: 15px; list-style-type: none; }
ul.social li:last-child { margin-right: 0; }
ul.social i { color: #505050;
	transition: all .35s;
	-moz-transition: all .35s;
	-webkit-transition: all .35s;
	-o-transition: all .35s;
}
ul.social i:hover { color: #121212; }
ul.social a { color: #121212; }
ul.social a:hover { color: var(--color-white); }

/* Footer */
#colophon { position: relative; margin-top: var(--spacer-lg); padding: 4em 2em; overflow: hidden; }
#colophon .logo p { color: #505050; text-align: center; }
#colophon .logo a { text-decoration: none; }
#colophon a:hover { color: var(--color-accent); }
#colophon .site-logo img { width: 240px; display: block; margin: 0 auto; }

#colophon .menu-footer-menu-container { height: 100%; }
#colophon .menu { display: grid; align-items: baseline; align-content: center; height: 100%; margin-bottom: 0; margin-left: 0; padding: 25px 0;  
	grid-template-columns: repeat(auto-fit, minmax(125px, 1fr));
}
#colophon .menu li { width: 100%; list-style-type: none; }
#colophon .menu li ul { margin-left: 0; padding-left: 0; }
#colophon .menu li li { padding-left: 0; opacity: .75; }
#colophon .menu li li li { padding-left: 0; }
#colophon .menu li.menu-item-has-children > ul.sub-menu { margin-top: 24px; margin-bottom: 24px; }
#colophon .menu ul.sub-menu ul.sub-menu { margin-top: 8px; }
#colophon .menu li.menu-item-has-children > a::after { content: ''; }

.footer-content .wp-block-columns { max-width: 1920px; padding-top: 50px; padding-bottom: 50px; }
.footer-content .logo { display: flex; flex-direction: column; justify-content: center; align-items: center; border-right: 1px solid var(--border-color); padding: 25px 0; } 
.footer-content .logo img { width: 400px; margin-bottom: 16px; padding-right: 16px; padding-left: 16px; }

.site-info .wp-block-group { padding: 20px 30px 50px; border-top: 1px solid var(--border-color); 
	display: grid;
	grid-template-columns: max-content 1fr; align-items: center;
}
.site-info .credit { display: grid; justify-content: end; color: var(--color-black); }
.site-info .copyright { margin: 0; padding: 0; }

/* Socials */
ul.social-icons { display: flex; margin: 4px 0 0; padding: 0; }
ul.social-icons li { display: inline-block; margin-right: 16px; }
ul.social-icons li:last-child { margin-right: 0; }
ul.social-icons a { color: var(--color-primary); }
ul.social-icons a:hover { color: var(--color-accent); }
ul.social-icons .sr-only { font-size: 0; }

/* Posts and pages */
#content { padding: 60px 0; background-color: var(--color-white); }
.page-header { width: 100%; }

/* --------------------------------------------------------------------------
	 ## Page Templates
   -------------------------------------------------------------------------- */

/* 404 */
.error404 .error-404 { padding-top: 20px; padding-bottom: 60px; }

/* Styleguide */
.page-template-template-sidebar-styleguide .wp-block-cover { min-height: 400px; }
.page-template-template-sidebar-styleguide .wp-block-cover .page-title { margin-top: 0; }
.page-template-template-sidebar-styleguide .wp-block-columns .circle { min-width: 175px; max-width: 175px; min-height: 175px;}
.page-template-template-sidebar-styleguide .has-2-columns.sidebar-content { grid-gap: 50px; }

.page-template-template-sidebar-styleguide #primary aside { display: flex; flex-direction: column; }
.page-template-template-sidebar-styleguide aside .widget-title { margin-bottom: 30px; padding: 0 20px 30px; color: var(--color-black); border-bottom: 1px solid var(--border-color);  }

.styleguide-navigation ul.menu { display: block; margin-left: 0; padding-left: 0; }
.styleguide-navigation ul.menu li { width: 100%; padding: 20px; list-style-type: none; }
.styleguide-navigation ul.menu li:last-child { border-bottom: 0; }
.styleguide-navigation ul.menu li:hover, 
.styleguide-navigation ul.menu li.current-menu-item { 
	-webkit-transition: all 0.35s ease-in-out;
	-o-transition: all 0.35s ease-in-out;
	transition: all 0.35s ease-in-out
}
/* .styleguide-navigation ul.menu li.current-menu-item.current_page_item > a::before { content:'>'; margin-right: 5px; } */
.styleguide-navigation ul.menu li.current-menu-item.current_page_item ul a { color: var(--color-gray-light); }
.styleguide-navigation ul.menu li.current-menu-item.current_page_item ul a:hover { color: var(--color-accent); }
.styleguide-navigation ul.menu li.menu-item-has-children a::after { content:''; }
.styleguide-navigation ul.menu li a { display: block; color: var(--color-gray); text-transform: uppercase; }
.styleguide-navigation ul.menu li:hover a,
.styleguide-navigation ul.menu li.current-menu-item a { 
	color: var(--color-accent-light); 
}
.styleguide-navigation ul.menu ul.sub-menu { padding-left: 0; }
.styleguide-navigation ul.menu ul.sub-menu li a { padding-bottom: 0; text-transform: capitalize; }

.wp-block-group.logo-options .wp-block-image.border figcaption { border-top: 1px solid var(--border-color); }

.logo-selection .wp-block-image { position: relative; overflow: hidden; }
.logo-selection .wp-block-image img { border: 1px solid #D9D8D4; }

/* --------------------------------------------------------------------------
	 ## Blog
   -------------------------------------------------------------------------- */
.blog article { max-width: 800px; margin-right: auto; margin-left: auto; }

.blog .post-wrapper { margin-top: 60px; }
.blog .post:first-child { margin-top: 0; }
.blog .post:not(:last-child) { margin-bottom: 50px; }
.blog .post .entry-header { margin-top: 0; margin-bottom: 30px; }
.blog .post .entry-header a { margin-top: 8px; }
.blog .post .wp-block-button__link { margin-top: 30px; }
.blog .post  { border-color: var(--color-accent); color: var(--color-accent); }
.blog .post a:hover { color: var(--color-accent); }

.entry-content .post-content { margin-top: 0; margin-bottom: 0; }
.entry-content .post-content :last-child { margin-bottom: 0; }

.blog .post .entry-title,
.single .post .entry-title { 
	margin-bottom: 10px; 
}

.cat-links { margin-right: 10px; padding-right: 10px; color: #474747; border-right: 1px solid #efefef; }

.cat-links a,
.tags-links a {
	color: var(--color-accent);
}
.cat-links a:hover,
.tags-links a:hover {
	color: var(--color-black);
}
.comments-link { display: none; }

article:focus { outline: none; }

/* Archive, Category */
.archive article .entry-content h1,
.archive article .entry-content h2,
.archive article .entry-content h3,
.archive article .entry-content h4,
.archive article .entry-content h5,
.archive article .entry-content h6 {
	text-transform: capitalize; color: #505050;
}

.archive .page-content p,
.category .page-content p {
	color: #6d706f;
}

.archive article,
.category article {
	margin-bottom: 40px; padding-bottom: 50px; 
}

.archive article:last-child,
.category article:last-child {
	border-bottom: 0;
}

.archive article h2.entry-title,
.category article h2.entry-title {
	margin-bottom: 0;
}

.archive article .entry-footer,
.category article .entry-footer {
	border-top: 1px solid #efefef;
}

.entry-meta .byline { display: none; }

/* Single Post */
.post h1.entry-title { margin-top: 10px; margin-bottom: 0; }
.post .entry-content a { color: var(--color-black); }
.post .entry-content a:hover { color: var(--color-black); }
.post .entry-footer { margin-top: 40px; margin-bottom: 0; padding-top: 10px; border-top: 1px solid var(--border-color); }

.single .post .entry-header { margin-top: 0; }
.single .post .entry-footer { }
.single .post > * { padding-right: 0; padding-left: 0; }
.single .site-main .post-navigation { margin-top: 30px; margin-bottom: 30px; padding: 0; }

.single-post .entry-content > * { max-width: 800px; }

.entry-footer a.post-edit-link { margin-left: 10px; color: #ccc; }
.entry-footer a.post-edit-link:hover { color: var(--color-black); }
a.post-edit-link:focus { outline: 0; }

/* --------------------------------------------------------------------------
	 ## Styleguide
   -------------------------------------------------------------------------- */
.typescale h1,
.typescale h2,
.typescale h3,
.typescale h4,
.typescale h5,
.typescale h6 {
	margin-top: 0; margin-bottom: 30px;
}

.typescale p { margin: 0; }

/* ==========================================================================
   12.0 # Components
   ========================================================================== */
// Add Custom Components here 

/* ==========================================================================
   13.0 # Gutenberg
   ========================================================================== */
   
/* --------------------------------------------------------------------------
     ##  Blocks 
   -------------------------------------------------------------------------- */

/* Shared */
.wp-block-columns:last-of-type,
.wp-block-cover > * :last-child {
	margin-bottom: 0;
}

/* Block Buttons  */
.wp-block-buttons { column-gap: 1em; }

.wpcf7 input[type="submit"],
.wp-block-button__link,
.wp-block-button__link.is-style-outline,
.is-style-outline>.wp-block-button__link {
	min-width: 170px; border-radius: 0; padding: 1em; border: 1px solid transparent;
} 

.wp-block-button__link:hover { background: none; color: var(--color-accent); border-color: var(--color-accent); }

.wp-block-button__link.has-accent-background-color:hover,
.wp-block-button__link.has-accent-dark-background-color:hover,
.wp-block-button__link.has-light-gray-background-color:hover ,
.wp-block-button__link.has-dark-gray-background-color:hover {
	background: none!important; 
}

.wp-block-button__link.has-accent-background-color:hover { border-color: var(--color-accent); }
.wp-block-button__link.has-dark-gray-background-color:hover { color: var(--color-gray-dark); border-color: var(--color-gray-dark); }
.wp-block-button__link.has-light-gray-background-color:hover { color: var(--color-gray-dark); border-color: var(--color-gray-light); }

.wp-block-button.is-style-outline a { border-color: var(--color-accent); }
.wp-block-button.is-style-outline a:hover { background: var(--color-accent); color: var(--color-white)!important; }
.wp-block-button.is-style-outline a.has-accent-background-color:hover { background: none!important; color: var(--color-accent)!important; border-color: var(--color-accent); }

/* Block Code */
.wp-block-code { background: none; padding: 0; border: 0; }
.wp-block-code code { display: flex; width: 100%; margin: 0; padding: 20px; background: var(--color-gray-light); color: #23282d; border: 1px solid var(--border-color-light); border-radius: 2px; overflow: hidden; }

/* Block Columns */
.wp-block-columns { grid-gap: var(--spacer-med); padding-top: var(--spacer-lg); padding-bottom: var(--spacer-lg); }
.wp-block-columns .wp-block-column { margin-left: 0; }
.wp-block-columns .wp-block-column :first-child { margin-top: 0; } 

.has-2-columns,
.has-3-columns,
.has-4-columns,
.has-5-columns,
.has-6-columns {
  display: grid; grid-gap: 40px; margin: auto;
}

.has-2-columns { grid-template-columns: 1fr 1fr; }
.has-3-columns { grid-template-columns: 1fr 1fr 1fr; }
.has-4-columns { grid-template-columns: 1fr 1fr 1fr 1fr; }
.has-5-columns { grid-template-columns: 1fr 1fr 1fr 1fr 1fr; }
.has-6-columns { grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr; }

.has-1-column,
.wp-block-columns.has-1-columns { 
	width: 800px; max-width: 100%; margin-right: auto; margin-left: auto; 
}

.wp-block-column p:last-of-type,
.wp-block-column :last-child:not(.blocks-gallery-item),
.entry-content .wp-block-group__inner-container :last-child:not(.blocks-gallery-item) { 
	margin-bottom: 0; 
}

/* 2 Col - Shared */
.has-2-columns.sidebar-content,
.has-2-columns.content-sidebar { 
	grid-template-columns: repeat(6,1fr); 
}

/* 2 Col - Sidebar, Content */
.has-2-columns.sidebar-content .wp-block-column:first-child { grid-column: 1 / span 2; }
.has-2-columns.sidebar-content .wp-block-column:last-child { grid-column: 3 / span 4; }
.has-2-columns.sidebar-content .wp-block-column:not(:first-child) { margin-left: 0; }

/* 2 Col - Content, Sidebar */
.has-2-columns.content-sidebar .wp-block-column:first-child { grid-column: 1/5; }
.has-2-columns.content-sidebar .wp-block-column:last-child { grid-column: 5 / 7; }
.has-2-columns.content-sidebar .wp-block-column:not(:first-child) { margin-left: 0; }

/* 2 Col - Custom Layouts */
.wp-block-columns { width: 100%; }
.wp-block-columns.has-2-columns--25-75,
.wp-block-columns.has-2-columns--75-25,
.wp-block-columns.has-2-columns--60-40,
.wp-block-columns.has-2-columns--40-60,
.wp-block-columns.has-2-columns--70-30,
.wp-block-columns.has-2-columns--30-70 {
display: grid; 
}
.wp-block-columns.has-2-columns--75-25 { grid-template-columns: minmax(min-content, 9fr) 3fr; }
.wp-block-columns.has-2-columns--25-75 { grid-template-columns: minmax(min-content, 1fr) 3fr; }
.wp-block-columns.has-2-columns--60-40 { grid-template-columns: minmax(min-content, 3fr) 2fr; }

.wp-block-columns.has-2-columns--40-60 { grid-template-columns: minmax(min-content, 2fr) 3fr; }
.wp-block-columns.has-2-columns--40-60.overlap > .wp-block-column:first-child { grid-column: 1 / 2; grid-row: 1;} 
.wp-block-columns.has-2-columns--40-60.overlap > .wp-block-column:last-child { grid-column: span 2 / -1; grid-row: 1; z-index: 2; margin-left: 0; } 
.wp-block-columns.has-2-columns--40-60.overlap .wp-block-column .has-3-columns { max-width: 80%; margin-right: 0; }

.wp-block-columns.has-2-columns--30-70 { grid-template-columns: minmax(min-content, 3fr) 7fr; }
.wp-block-columns.has-2-columns--70-30 { grid-template-columns: minmax(min-content, 7fr) 3fr; }
.wp-block-columns.has-2-columns--20-80 { grid-template-columns: minmax(min-content, 2fr) 8fr; }
.wp-block-columns.has-2-columns--80-20 { grid-template-columns: 8fr minmax(min-content, 2fr) ; }

.wp-block-columns.has-2-columns--20-80 .has-2-columns,
.wp-block-columns.has-2-columns--20-80 .has-3-columns,
.wp-block-columns.has-2-columns--20-80 .has-4-columns,
.wp-block-columns.has-2-columns--20-80 .has-5-columns,
.wp-block-columns.has-2-columns--20-80 .has-6-columns { 
width: 100%;  
}

.wp-block-columns.has-2-columns--20-80 .wp-block-column { display: grid; }

.wp-block-columns.has-2-columns--75-25.alignfull, 
.wp-block-columns.has-2-columns--25-75.alignfull,
.wp-block-columns.has-2-columns--60-40.alignfull,
.wp-block-columns.has-2-columns--40-60.alignfull,
.wp-block-columns.has-2-columns--30-70.alignfull,
.wp-block-columns.has-2-columns--70-30.alignfull {
margin-right: 0; margin-left: 0; 
}
.wp-block-columns.has-2-columns--75-25 .wp-block-column .wp-block-cover { padding: 50px; }
.wp-block-columns.has-2-columns--75-25 .wp-block-column:nth-child(2n) { display: flex; flex-direction: column; justify-content: center; }
.wp-block-columns.has-2-columns--75-25 .wp-block-column:nth-child(2n) .wp-block-group { padding: 2em; }

.wp-block-columns.has-2-columns--40-60,
.wp-block-columns.has-2-columns--60-40 {
margin-bottom: 4em;
}

.has-2-columns--40-60 .wp-block-column:nth-child(1n) .wp-block-group, 
.has-2-columns--40-60 .wp-block-column:not(:last-child) .wp-block-group,
.has-2-columns--60-40 .wp-block-column:nth-child(2n) .wp-block-group, 
.has-2-columns--60-40 .wp-block-column:not(:first-child) .wp-block-group {
padding-right: 100px; padding-left: 100px; 
}

.wp-block-columns .wp-block-column .wp-block-group.alignfull { width: 100%; padding-right: 0; padding-left: 0; }

/* Block Cover */
.entry-content > .wp-block-cover { padding-right: var(--spacer-med); padding-left: var(--spacer-med); }

.wp-block-cover.half { min-height: 200px!important; }
.wp-block-cover.quarter { min-height: 100px!important; }
.wp-block-cover.hero-alignfull { position: absolute; z-index: -1; top: 0; bottom: 0; left: 0; }

.wp-block-cover h1,
.wp-block-cover h2,
.wp-block-cover h3,
.wp-block-cover h4,
.wp-block-cover h5,
.wp-block-cover h6 {
	margin-top: 0; margin-bottom: 0;
}

.wp-block-cover .wp-block-button { margin-top: var(--spacer-lg); }
.wp-block-cover p.has-small-font-size { margin-left: var(--spacer-small); text-transform: lowercase; opacity: .8; }

.wp-block-cover-text p { padding: 1.5em 1em; }

/* Block Embed */
.wp-block-embed__wrapper { display: block; width: 800px; max-width: 100%; margin: auto; }

.wp-block-embed.type-video > .wp-block-embed__wrapper {
position: relative; width: 100%; height: 0; padding-top: 56.25%;
}

.wp-block-embed.type-video > .wp-block-embed__wrapper > iframe {
position: absolute; top: 0; left: 0; bottom: 0; right: 0;
width: 100%; height: 100%;
}

/* WP Block Image */ 
.wp-block-image img { display: block;  }
.wp-block-image.size-full img { width: 100%; }

.wp-block-image figcaption { margin-top: 0; padding-top: 8px; padding-bottom: 8px; }

/* WP Block Gallery */ 
.wp-block-gallery { margin: 30px auto; }
.wp-block-gallery .blocks-gallery-grid { margin-top: 0; padding-left: 0; }

.blocks-gallery-grid figure { overflow: hidden; }
.blocks-gallery-grid a img { backface-visibility: hidden;
transition: all .35s ease-in-out;
}
.blocks-gallery-grid a:hover img { opacity: .875;
transform: scale(1.01);
}

.wp-block-gallery.columns-2--70-30 ul { display: grid;
grid-template-columns: repeat(12, 1fr);
grid-template-rows: repeat(2, max-content);
grid-gap: 2em;
}
.wp-block-gallery.columns-2--70-30 li { align-self: stretch; width: 100%; height: 100%; margin: 0; }
.wp-block-gallery.columns-2--70-30 li:nth-child(1) { 
grid-column-start: 1; grid-column-end: 8;
grid-row-start: 1; grid-row-end: 1;
}
.wp-block-gallery.columns-2--70-30 li:nth-child(2) { 
grid-column-start: 8; grid-column-end: 12;
grid-row-start: 1; grid-row-end: 1;
}
.wp-block-gallery.columns-2--70-30 li:nth-child(3) { 
grid-column-start: 1; grid-column-end: 5;
grid-row-start: 2; grid-row-end: 2;
}
.wp-block-gallery.columns-2--70-30 li:nth-child(4) { 
grid-column-start: 5; grid-column-end: 12;
grid-row-start: 2; grid-row-end: 2;
}
.wp-block-gallery.columns-2--70-30 figure, 
.wp-block-gallery.columns-2--70-30 figure a,
.wp-block-gallery.columns-2--70-30 figure img { 
width: 100%; height: 100%; object-fit: cover; 
}

/* Block Latest Posts */
ul.wp-block-latest-posts.alignwide,
ul.wp-block-latest-posts.alignfull,
ul.wp-block-latest-posts.is-grid.alignwide,
ul.wp-block-latest-posts.is-grid.alignwide {
padding: 0 .5em;
}

/* Block Pullquote  */
.entry-content .wp-block-quote { padding-left: 2em; }
.wp-block-pullquote > p:first-child { margin-top: 0; }
.wp-block-pullquote.is-style-solid-color blockquote { max-width: 80%; }

/* Block Separator */ 
.wp-block-separator { width: 100%; border-color: var(--border-color-light); background-color: 1px solid var(--border-color-light); }
.wp-block-separator.is-style-wide { margin: 0 auto; } 
.wp-block-separator

/* Block Table */
.wp-block-table { display: block; overflow-x: auto; }
.wp-block-table table { border-collapse: collapse; width: 100% }
.wp-block-table td,
.wp-block-table th {
	padding: .5em;
}

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

/* Accordion */
.wp-block-tbc-accordion { margin: 40px auto; padding-right: 0; padding-left: 0!important; list-style: none; }
.tbc-accordion-item-heading { position: relative; border-bottom: 1px solid var(--border-color); padding: 20px 20px 20px 40px; 
  transition: all .35s;
  -moz-transition: all .35s; 
  -webkit-transition: all .35s; 
}
.tbc-accordion-item-heading::after { color: var(--color-accent-dark); backface-visibility: hidden;
  transition: all .35s;
  -moz-transition: all .35s;
  -webkit-transition: all .35s; 
}
.tbc-accordion-item-heading h3 { margin: 0; /* color: var(--color-accent-dark); */ }

.entry-content .wp-block-tbc-accordion-item { margin-bottom: 30px; padding: 0; border: 1px solid var(--border-color); }
.entry-content .wp-block-tbc-accordion-item:last-of-type,
.entry-content .wp-block-tbc-accordion-item ul:last-of-type { 
	margin-bottom: 0; 
}
.entry-content .wp-block-tbc-accordion-item ul li:last-child { margin-bottom: 0; }
.entry-content .wp-block-tbc-accordion-item .tbc-accordion-item-content p { margin-bottom: 0; padding: 0; }
.entry-content .wp-block-tbc-accordion-item .tbc-accordion-item-content p:last-child { padding-bottom: 0; }

.tbc-accordion-item-heading,
.tbc-accordion-item-content {
	display: flex;	
}
.wp-block-tbc-accordion-item .tbc-accordion-item-content { padding: 30px 16px; }
.wp-block-tbc-accordion-item.closed .tbc-accordion-item-content { display: none; }

.wp-block-tbc-accordion-item .tbc-accordion-item-heading::after { content: "+"; height: 100%; 
	position: absolute; top: 0; left: 14px; color: var(--color-black);
  display: flex; align-items: center;
}
.wp-block-tbc-accordion-item.open .tbc-accordion-item-heading::after { 
  transform: rotate(45deg);
  transform-origin: center center;
}

.wp-block-tbc-accordion-item.open,
.wp-block-tbc-accordion-item.open p,
.wp-block-tbc-accordion-item.open h2,
.wp-block-tbc-accordion-item.open h3,
.wp-block-tbc-accordion-item.open h4,
.wp-block-tbc-accordion-item.open .tbc-accordion-item-heading::after,
.wp-block-tbc-accordion-item:hover h2,
.wp-block-tbc-accordion-item:hover h3,
.wp-block-tbc-accordion-item:hover h4,
.wp-block-tbc-accordion-item:hover .tbc-accordion-item-heading,
.wp-block-tbc-accordion-item:hover .tbc-accordion-item-heading::after,
.wp-block-tbc-accordion-item.open:hover .tbc-accordion-item-heading::after,
.wp-block-tbc-accordion-item.closed:hover .tbc-accordion-item-heading::after {
  color: var(--color-accent); border-color: var(--color-accent);
}

.wp-block-tbc-accordion-item.open, 
.wp-block-tbc-accordion-item:hover { 
	border-color: var(--color-accent); color: var(--color-accent); 
}
.wp-block-tbc-accordion-item:hover .tbc-accordion-item-heading { cursor: pointer; opacity: .8; }

.wp-block-tbc-accordion-item.open .tbc-accordion-item-content,
.wp-block-tbc-accordion-item.open .tbc-accordion-item-heading { 
	border-color: var(--color-accent); 
}

/* Columns */
.is-style-pull-right { }

/* ==========================================================================
   14.0 # Plugins, Overrides
   ========================================================================== */

/*
 * Contact Form 7 v5.1.6
 * disabled CSS from functions/cleanup.php and minified below
 */
div.wpcf7 .screen-reader-response{position:absolute;overflow:hidden;clip:rect(1px,1px,1px,1px);height:1px;width:1px;margin:0;padding:0;border:0}div.wpcf7-response-output{margin:2em .5em 1em;padding:.2em 1em;}div.wpcf7-mail-sent-ok{border:2px solid #398f14}div.wpcf7-aborted,div.wpcf7-mail-sent-ng{border:2px solid red}div.wpcf7-spam-blocked{border:2px solid orange}div.wpcf7-acceptance-missing,div.wpcf7-validation-errors{border:2px solid #f7e700}.wpcf7-form-control-wrap{position:relative}span.wpcf7-not-valid-tip{color:red;font-size:1em;font-weight:400;display:block}.use-floating-validation-tip span.wpcf7-not-valid-tip{position:absolute;top:20%;left:20%;z-index:100;border:1px solid red;background:#fff;padding:.2em .8em}span.wpcf7-list-item{display:inline-block;margin:0 0 0 1em}span.wpcf7-list-item-label::after,span.wpcf7-list-item-label::before{content:" "}.wpcf7-display-none{display:none}div.wpcf7 .ajax-loader{visibility:hidden;display:inline-block;background-image:url(../../images/ajax-loader.gif);width:16px;height:16px;border:none;padding:0;margin:0 0 0 4px;vertical-align:middle}div.wpcf7 .ajax-loader.is-active{visibility:visible}div.wpcf7 div.ajax-error{display:none}div.wpcf7 .placeheld{color:#888}div.wpcf7 input[type=file]{cursor:pointer}div.wpcf7 input[type=file]:disabled{cursor:default}div.wpcf7 .wpcf7-submit:disabled{cursor:not-allowed}

/* CF7 Overrides */
.entry-content .wpcf7 form { display: flex; flex-direction: column; }
.entry-content .wpcf7,
.entry-content .wpcf7 form :first-child { 
  margin-top: 0; 
}
.entry-content .wpcf7 form :last-child { margin-bottom: 0; }
.wpcf7-form-control-wrap { display: block; margin-top: 5px; }

.wpcf7 .wpcf7-not-valid-tip,
.wpcf7 .wpcf7-validation-errors {
	font-size: 14px;
}

span.wpcf7-not-valid-tip { margin-left: 10px; margin-bottom: 15px; }

.wpcf7 h2,
.wpcf7 h3 {
	margin-bottom: 20px;
}
.wpcf7 h3 { margin-top: 0; }
.wpcf7 p { margin-bottom: var(--spacer-med); }
.wpcf7 input[type="submit"] { display: block; width: initial; margin: auto; }

.wpcf7 fieldset { margin-top: 0; padding: 0 20px; border: 1px solid #333; }
.wpcf7 fieldset legend { margin-bottom: 0; background: none; color: #171717; text-align: center; }
.wpcf7 form br { display: none; }

.wpcf7 .form-group { margin-bottom: 20px; padding-bottom: 20px; border-bottom: 1px solid #333333; }
.wpcf7 .wpcf7-not-valid-tip,
.wpcf7 .form-group.required h4,
.wpcf7 .invalid .form-group.required label {
	color: #97100E;
}
div.wpcf7-mail-sent-ok { border-color: #079D7C; color: #079D7C; }
.wpcf7 .form-group.required h4,
.wpcf7 .form-group.required label {
	color: #079D7C;
}
.wpcf7 .invalid .required input,
.wpcf7 .invalid .required select,
.wpcf7 .invalid .required textarea {
	 border-color: #97100E;
}

.wpcf7 .wpcf7-validation-errors { margin: 0; padding: 10px; border-color: #D6D50B; }

#main div.wpcf7 .ajax-loader { display: block; margin: 10px auto 0; }

.wpcf7 select,
.wpcf7 input,
.wpcf7 input[type="text"],
.wpcf7 input[type="password"],
.wpcf7 input[type="date"],
.wpcf7 input[type="datetime"],
.wpcf7 input[type="datetime-local"],
.wpcf7 input[type="month"],
.wpcf7 input[type="week"],
.wpcf7 input[type="email"],
.wpcf7 input[type="number"],
.wpcf7 input[type="search"],
.wpcf7 input[type="tel"],
.wpcf7 input[type="time"],
.wpcf7 input[type="url"],
.wpcf7 input[type="color"] {
  margin: 10px 0;
}

.wpcf7 input:first-child { margin-top: 0; }

.wpcf7 input[type="text"]:focus,
.wpcf7 input[type="password"]:focus,
.wpcf7 input[type="date"]:focus,
.wpcf7 input[type="datetime"]:focus,
.wpcf7 input[type="datetime-local"]:focus,
.wpcf7 input[type="month"]:focus,
.wpcf7 input[type="week"]:focus,
.wpcf7 input[type="email"]:focus,
.wpcf7 input[type="number"]:focus,
.wpcf7 input[type="search"]:focus,
.wpcf7 input[type="tel"]:focus,
.wpcf7 input[type="time"]:focus,
.wpcf7 input[type="url"]:focus,
.wpcf7 input[type="color"]:focus,
.wpcf7 textarea:focus {
  outline: 0; border: 1px solid var(--color-accent);
}

.wpcf7 input,
.wpcf7 select,
.wpcf7 textarea,
.wpcf7 input[type="text"],
.wpcf7 input[type="url"],
.wpcf7 input[type="tel"],
.wpcf7 input[type="email"] {
  width: 100%; padding: 10px; background-color: #fff;
}

/*
 * SEO Yoast
 * https://yoast.com/
*/
#yoast-breadcrumbs span a { color: var(--color-accent-light); }
#yoast-breadcrumbs span a:hover { color: var(--color-accent); }
#yoast-breadcrumbs span i { margin-right: 8px; margin-left: 8px; }
.single #breadcrumbs .breadcrumb_last { display: none; }
.single #breadcrumbs span span span span i { display: none; }

/* UItoTop */
#toTop {
  display: none;
  position: fixed; z-index: 900; right: 20px; bottom: 20px;
  width: 40px; height: 40px; background-color: rgba(0,0,0,.25); border: 1px solid #474747;
  overflow: hidden; text-decoration:none;
}
#toTop i { position: relative; top: 5px; width: 100%; font-size: 24px; text-align: center; color: var(--color-black);  }
#toTop:hover { background: var(--color-black); }
#toTop:hover i { color: var(--color-white); }
#toTop,
#topTop span {
	-webkit-transition: all 0.35s ease-in-out;
	-moz-transition: all 0.35s ease-in-out;
	-o-transition: all 0.35s ease-in-out;
	transition: all 0.35s ease-in-out
}
#toTop span {
  position: absolute; top: 0; right: 0; bottom: 0; left: 0; margin: auto; opacity: 1!important;
  width: 0; height: 0; text-indent: -999px;
	-webkit-transition: all 0.35s ease-in-out;
	-moz-transition: all 0.35s ease-in-out;
	-o-transition: all 0.35s ease-in-out;
	transition: all 0.35s ease-in-out
}
#toTopHover {
  display:block; overflow:hidden;
  opacity: 0;
  -moz-opacity: 0;
  filter:alpha(opacity=0);
}
#toTop:active,
#toTop:focus {
  outline:none;
}

/* ==========================================================================
   15.0 # Media Queries
   ========================================================================== */

@media screen and (max-width: 1440px) {
  
	/* Custom Layouts */
	.wp-block-columns.has-2-columns--60-40 { grid-template-columns: 1fr 1fr; }
	.has-2-columns--40-60 .wp-block-column:nth-child(1n) .wp-block-group, 
	.has-2-columns--40-60 .wp-block-column:not(:last-child) .wp-block-group, 
	.has-2-columns--60-40 .wp-block-column:nth-child(2n) .wp-block-group, 
	.has-2-columns--60-40 .wp-block-column:not(:first-child) .wp-block-group {
		padding-left: var(--spacer-lg); padding-right: var(--spacer-lg);
	}
	
}

@media screen and (max-width: 1080px) {
	
	.menu-toggle { display: block; }
	.main-navigation .menu,
	.main-navigation .menu-main-menu-container { 
		display: none; 
	}

	.main-navigation.toggled { position: absolute; z-index: 9999; top: 0; left: 0; height: 100%; min-height: 100vh; z-index: 9999; display: inherit; width: 100%; padding: 0; background: #fff; }
	.main-navigation.toggled .logo-nav li { background: #888888; }
	.main-navigation.toggled .menu-main-menu-container { display: flex; width: 100%; min-height: 100vh; height: 100%; background: #fff; clear: both; }

	.main-navigation.toggled ul { position: absolute; top: 0; left: 0; width: 100%; max-width: 100%; margin: 0 auto; padding: 50px 25px 25px 25px;  }
	.main-navigation.toggled ul li { display: inline-block; width: 100%; margin-bottom: 16px; padding-bottom: 16px; border-bottom: 1px solid #eee; text-align: left; text-indent: 10px; }
	.main-navigation.toggled ul li:first-child { padding-top: 10px; }
	.main-navigation.toggled ul li:last-child { margin-bottom: 0; border: 0; }
	.main-navigation.toggled ul li a { padding: 0; color: #121212; }
	.main-navigation.toggled ul li.wp-block-button__link { margin-top: 30px; background: none!important; text-indent: 0; text-align: center; }
	.main-navigation.toggled ul li.wp-block-button__link a { width: 146px; max-width: 100%; margin: 0 auto; padding:  16px 22px; 
		background: var(--color-accent); color: var(--color-white); 
	}
	.main-navigation.toggled ul li.menu-item-has-children a { margin-bottom: 15px; }
	.main-navigation.toggled ul li.menu-item-has-children a:after { display: none; }
	.main-navigation.toggled ul li.menu-item-has-children ul li { display: block; margin-left: auto; margin-right: auto; text-indent: 0; }
	.main-navigation.toggled ul li.menu-item-has-children ul li a { margin-bottom: 0; color: #8C8C8C; }
	.main-navigation.toggled ul ul { position: inherit; top: inherit; left: inherit; width: 100%; padding-top: 0; padding-bottom: 0; box-shadow: none; }
	.main-navigation.toggled ul ul li:first-child { padding-top: 0; }
	
	#masthead .textwidget { display: none; }
	
}

@media screen and (max-width: 1024px) {
	
	.wp-block-columns.has-2-columns--20-80 { grid-template-columns: 1fr; }
	.page-template-template-sidebar-styleguide .has-2-columns--20-80 aside { display: none; }
	
	.has-5-columns,
	.has-6-columns { 
		grid-template-columns: repeat(3, 1fr);
	}
}

@media screen and (max-width: 960px) {
	
	.wp-block-columns.has-2-columns--25-75,
	.wp-block-columns.has-2-columns--75-25,
	.wp-block-columns.has-2-columns--70-30,
	.wp-block-columns.has-2-columns--30-70,
	.wp-block-columns.has-2-columns--60-40,
	.wp-block-columns.has-2-columns--40-60 { 
		grid-template-columns: 1fr; 
	}  
	
}
	
@media screen and (max-width: 800px) {
	
	.site-header .site-title { order: 1; }
	.site-header .site-description { order: 2;  }
	.site-header ul.social-icons { display: none; }
	
	.has-2-columns.sidebar-content .wp-block-column,
	.has-2-columns.content-sidebar .wp-block-column {
		 grid-column: 1;
	}
	.entry-content .has-2-columns.content-sidebar { grid-template-columns: 1fr; padding-bottom: 0; }
	.entry-content .has-2-columns.content-sidebar .wp-block-column,
	.entry-content .has-2-columns.sidebar-content .wp-block-column { 
		grid-column: 1; 
	}
	
	.wp-block-columns .wp-block-column { flex-basis: 100%!important; margin-left: 0; }
	.wp-block-columns .wp-block-column.logo { border: 0; }
	
	/* Custom Block Layouts */
	.has-3-columns,
	.has-2-columns.sidebar-content, 
	.has-2-columns.content-sidebar { 
		grid-template-columns: 1fr; 
	}  
	
	.has-2-columns.sidebar-content .wp-block-column:last-of-type { order: 1; }
	.has-2-columns.sidebar-content .wp-block-column:first-of-type { order: 2; }
	
	.has-2-columns--70-30 .wp-block-column:first-child .wp-block-cover { padding: 3em; }
	.has-2-columns--70-30 .wp-block-column:last-of-type .wp-block-group { padding-top: 3em; }
	
	.wp-block-cover-text p { padding: 1.5em 0; }
	
	.styleguide-navigation .widget-title { margin-bottom: 3em; }
	.styleguide-navigation ul.menu { margin-bottom: 2em; }
	.styleguide-navigation ul.menu li { display: inline-flex; margin: 0 2em 2em 0; padding: 0; }
	.styleguide-navigation ul.menu li:last-child { margin-right: 0; }
	.styleguide-navigation ul.menu li:hover, 
	.styleguide-navigation ul.menu li.current-menu-item {
		background: none;	
	}
  
} 

@media screen and (max-width: 600px) {
  
	/* Typography  */
	h1 { font-size: 3.157rem; line-height: 1.2; }
	h1.site-title { font-size: 1.25rem; }
	
	h2,
	h1.header-styling { 
		font-size: 2.369rem; line-height: 1.1; 
	}
	
	.entry-content h1.header-styling::before { font-size: 1.777rem; }
	
	h3,
	.wp-block-tbc-accordion-item h3 { 
		font-size: 1.777rem; line-height: 1.2; 
	}
	h4 { font-size: 1.444rem; line-height: 1.2; }
	h5,
	h6 {
		font-size: 1.205rem; line-height: 1.2;
	}

	.has-huge-font-size { font-size: 3.157rem!important; } 
	.has-large-font-size { font-size: 2.369rem!important; }
	.has-medium-font-size { font-size: 1.333rem!important; line-height: 1.3; }
	.has-normal-font-size { font-size: 1rem!important;  }
	.has-small-font-size { font-size: .889rem!important; }

	.h-secondary { font-size: 1.44rem; line-height: 1.2; }
	.h-tertiary { font-size: 1.138rem; line-height: 1.35;    
	  font-family: var(--font-tertiary);
	  font-weight: 400; font-style: italic;
	  text-transform: capitalize;
	}
	
	.wp-block-cover:is(h1,h2,h3,h4,h5,h6),
	.wp-block-cover-image:is(h1,h2,h3,h4,h5,h6) {
		text-align: left;
	}
	
	.wp-block-cover h1, 
	.wp-block-cover-image h1 {
		text-align: left;
	}
	
	.wp-block-cover h4, 
	.wp-block-cover-image h4 {
	  	font-size: 1.44rem; line-height: 1.4;
	}
	
	p,
	ul,
	ol,
	ul li,
	ol li,
	figcaption { 
		font-size: 1rem; line-height: 1.4; 
	}
	
	p.callout { font-size: 1.25rem; line-height: 1.6; font-weight: 300; }
	
	#yoast-breadcrumbs { font-size: .889rem; }

	button, 
	input[type="button"], 
	input[type="reset"], 
	input[type="submit"], 
	input[type="submit"], 
	.wp-block-button__link, 
	.wpcf7 input[type="submit"] {
		font-size: .8rem;
	}
		
	ul.menu li,
	ul.menu li a,
	ul.menu ul li a,
	ul.menu li ul li a { 
		font-size: .8rem; 
	}
	
	.styleguide-navigation ul.menu li, 
	.styleguide-navigation ul.menu ul li a {
		font-size: .8em; 	
	}
	
	.wp-block-quote.hero-quote p { font-size: 1.125rem; }
	.wp-block-quote.hero-quote cite { font-size: .75rem; }

	pre,
	code,
	kbd, tt, var,
	.wp-block-code { 
		font-size: .75em; line-height: 20px;
	}
	
	/* Content */
	.has-2-columns { grid-template-columns: 1fr; }

}
	
@media screen and (max-width: 414px) {
	
	/* Typography */
	h1,
	.has-large-font-size {
		font-size: 2.618rem!important;
	}
	
	h1.header-styling {
		font-size: 1.999rem!important;
	}
	
	.entry-content h1.header-styling::before { font-size: 1.33rem; }

	.wp-block-cover h4, 
	.wp-block-cover-image h4 {
		font-size: 1.25rem; line-height: 1.2;
	}
	
	.entry-content .testimonial blockquote:before, 
	.entry-content .testimonial blockquote:after {
		font-size: 2.369rem;
	}
	
	p,
	ul,
	ol,
	ul li,
	ol li,
	figcaption { 
		font-size: .889rem; line-height: 1.4; 
	}
		
	.copyright, 
	.site-info a, 
	.cat-links, 
	.cat-links a, 
	.tags-links, 
	.tags-links a, 
	.comments-link a {
		font-size: .694rem; line-height: 1.4; 
	}
		
	button, 
	input[type="button"], 
	input[type="reset"], 
	input[type="submit"], 
	input[type="submit"], 
	.wp-block-button__link,
	#primary .entry-content .gform_wrapper input.button, 
	#primary .entry-content .gform_wrapper input[type=submit] {
		font-size: .823rem; 
	}
	
	.wp-block-quote__citation, 
	.wp-block-quote cite, .wp-block-quote footer {
		font-size: .75rem; 
	}

	/* Content */
	.entry-content > * { padding-right: var(--spacer-sm); padding-left: var(--spacer-sm); }
	
	.entry-content .wp-block-code { padding: var(--spacer-sm); }
	.entry-content .wp-block-cover { min-height: 320px; padding: 0 var(--spacer-sm); }
	.entry-content .wp-block-cover__inner-container { text-align: center; }
	
	button, 
	input[type="button"], 
	input[type="reset"], 
	input[type="submit"], 
	.wp-block-button__link, 
	.wpcf7 input[type="submit"] {
		padding-right: var(--spacer-sm); padding-left: var(--spacer-sm); 
	}
	
	.wp-block-button__link { min-width: 135px;  }
  
}