/*
Theme Name: EZ-NetTools 02
Theme URI: https://theme1.eznettools.com/
Author: Steve Monson - EZ-NetTools
Author URI: https://eznettools.com/
Description: An exclusive EZ-NetTools WordPress Theme for Businesses.  Designed with what really companies need and want in WordPress Theme including Header phone numbers, WooCommerce support and loads of customizable features while still being extreamly light-weight and fast loading.  There is a WooCommerce_Theme.css file that only loads if WooCommerce is active to improve load times.
Version: 2.2
License: GNU General Public License
License URI: https://www.gnu.org/licenses/gpl.html
Tags: custom-menu, custom-logo, custom-header, custom-background, editor-style, featured-images, microformats, sticky-post, threaded-comments
Text Domain:ez-nettools-02
Tested up to: 8.0.1.9
Requires PHP: 5.4
*/

/*-- Load Variable Font --*/
@font-face {
	font-family: 'Bitter';
	font-style: italic;
	font-weight: 100 900;
	font-display: swap;
	ascent-override: 88%;
	descent-override:24%;
	src: url(https://fonts.gstatic.com/s/bitter/v17/rax-HiqOu8IVPmn7erxrJD0.woff2) format('woff2');
}
@font-face {
	font-family: 'Bitter';
	font-style: normal;
	font-weight: 100 900;
	font-display: swap;
	ascent-override: 88%;
	descent-override:24%;
	src: url(https://fonts.gstatic.com/s/bitter/v17/rax8HiqOu8IVPmn7f4xp.woff2) format('woff2');
}

/*-------------------- General Layout -------------------------*/

html {	font-size:125%;   }

:root {  --sidebarwidth:280px; }

body {
background:white;
margin:0; padding:0;
color:#222;
font-family:sans-serif; 
font-family: 'Bitter', Georgia, serif;
}

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

#wrapper {display:flex; flex-direction:column; min-height:100vh;  }
.admin-bar #wrapper , body.admin-bar { min-height: calc(100vh - 32px); }

.maxwidth { 
	max-width:1340px;
	width:100%;
	margin:0 auto;  
}

#container { flex:1 1 auto; }
 
/*================================== General Formatting ============================================*/

h1, h2, h3, h4, h5, h6 {
margin:.2em 0;
text-rendering: optimizeLegibility;
line-height:1.15;
}

h1 { font-size:2.5em; }
h1:first-child {margin-top:0;}

h2 { font-size:1.8em; }
h3 { font-size:1.4em; }
h4 { font-size:1.25em; }
h5 {}
h6 {}

h1 + h2 , h2 + h3 , h3 + h4 {margin-top:1.22rem;}

p {
line-height:1.5;
margin:.8em 0;
font-size:1em;
}

a { color:#0057a6;  }
a:hover  {  color:#0077c6; text-decoration:underline; }

/*-- CSS Variable for Color Schemes --*/
.green a, .blue a, .red a, .purple a { color:var(--primary-dark-1); }
.green a:hover, .blue a:hover, .red a:hover, .purple a:hover { color:var(--primary-color); }

#container .elementor-text-editor a {text-decoration:revert;}

a img {border:none;}

blockquote {position: relative; padding-left:1em; font-style:italic; }
blockquote cite {font-style:normal; }
blockquote cite:before { content:"\2014"; }
blockquote cite br {display:none;}

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

iframe {max-width:100%;}

.alignright{ float:right; margin-left:1em; clear:right; margin-top:.25em; }
.alignleft{ float:left; margin-right:1em; clear:left; margin-top:.25em; }
.aligncenter{ display:block; margin:auto; }

.responsive-container iframe { width:100%; }
.video-container { width:100%; position: relative; margin:0 0; background:#eee; }
.video-container:after { padding-top: 56%; display: block; content: ""; }
.video-container iframe , .video-container > div {	position: absolute; height:100%; width:100%; }
.mejs-container , .wp-video {max-width: 100%;  width:auto !important; }

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

figure {margin:0; padding:0;}

.clear{clear:both}

.sticky{}
.bypostauthor{}
.wp-caption { max-width:100%; }
.wp-caption img {vertical-align:top; }
.wp-caption-text { display:block; font-size:0.9em; opacity:.8; line-height:1.25; padding:4px 0 8px; }

.screen-reader-text { clip:rect(1px, 1px, 1px, 1px); position:absolute;}
.screen-reader-text:focus { position:static !important; clip:auto; width:auto; height:auto; overflow:visible; border:dotted 2px #aaa; }

figure.wp-caption {  }

figure.wp-caption.alignnone {display: inline-flex; flex-direction: column; align-items: center; }



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

#header {
	display:flex;
	background:#fff;
	box-shadow: 0 1px 1px rgba(0,0,0,.25) , 0 1px 6px rgba(0,0,0,.25);
	z-index:999;
	position:relative;
	min-height:96px; 
	border:solid 1px rgba(0,0,0,.1);
}

#header a { text-decoration:none; color:inherit; }

#header .maxwidth {
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	margin: 0 auto;
}
#header .inner > * {display:inline-block; vertical-align:top; }
.narrow-screen #header .maxwidth { justify-content: center; }
.narrow-screen #header  #branding {padding:8px; padding-bottom:0; text-align:center; }
.narrow-screen #header .header-aside {padding:8px;}

#header #branding {display:flex;  padding:0 8px; justify-content:center; align-items:center; }
#site-title {font-size:2.5em; margin-top:4px; font-weight:bold; display:flex; align-items:center; align-self:inherit; text-align:center; }
#site-logo {  display:inline-block; align-self: center; }
#site-logo img {width:auto; max-height:80px; max-height:var(--logo-height, 80px);  vertical-align:top; font-size:inherit; }

.site-description {font-size:.8em; display:block; margin-bottom:4px; padding:0 4px; }

.site-icon img {display:block; margin-right:5px; max-height:var(--logo-height, 80px); }

.logo-and-tagline { display:flex; flex-direction:column; justify-content:center; line-height:1.05;   }

#header .header-aside {
	float:right; 
	padding:.4rem; 
	font-size:1.4em; 
	display:flex; 
	align-items:center; 
	justify-content:flex-end;
	color: #ffa;
font-weight: 900;
text-shadow: 5px 6px 1px #000e;
 }

.cart-contents {
	display: inline-flex;
	align-items: center;
	padding: 8px;
	position:relative;
	justify-content: center;
	background:transparent !important;
}
.cart-contents figure {display:inline-block; position:relative;  }
.cart-contents-count {
	position:absolute;
	top:-5px; left:5px; right:2px;
	text-align:center;
	font-weight:bold;
	font-size:16px;
}
.cart-contents-count.lots { font-size:13px; left:7px;}

.header-search {display:flex; flex-direction: row-reverse; align-items:center; padding: 0 8px; }
.header-search #searchToggle {display:none;}
.header-search #searchform {overflow:hidden; max-width:0; transition: .2s max-width; }
.header-search #searchToggle:checked + #searchform { display:block; max-width:200px;}
.header-search #s {width:180px; font-size:16px;}

#hamburger-checkbox {display:none;}
.hamburger-button {display:none; }

/*------------------ Top Navigation ----------------------*/
#header #menu { display:flex;  position:relative; }
#menu .menu {display:flex;}
 
#header.wide-nav #menu {order:3; width:100%; }



#menu .menu {flex:9 1 auto;}

#menu ul {
	margin:0; padding:0; list-style:none;
	display:flex;
	flex-wrap:wrap;
	flex:9 1 auto;
}

#menu li { display:inline-block; display:flex; position:relative; flex:1 1 auto; }

#menu li a {
	display:inline-block;
	padding:.9rem;
	line-height:1;
	text-decoration:none;
	display:flex;
	align-items:center;
	flex:1 1 auto;
	justify-content:center;
	text-align:center;
	box-shadow: inset 0 0 0 1px rgba(0,0,0,.1);
	margin-left: -1px;
	margin-bottom: -1px;
}
#menu li:first-child a { }

#menu li a:hover , #menu li a:focus { 
	background:rgba(250,250,250,.08);
	background:radial-gradient( 100% 100% at 50% 75%, #fff0 ,70%, #fff1) , radial-gradient(290% 90% at 50% 0% ,#fff1 20%, #fff1 54%,#fff0 75%);
	box-shadow: inset 0 6px 12px 1px rgba(255,255,255,0.15) , 0 0 1px rgba(0,0,0,.2);
}

#menu li.current-menu-item > a { 
	background:rgba(0,0,0,.2);
	background: radial-gradient( transparent , #0003);
	//background-color:var(--primary-color);
	box-shadow: inset 0 1px 6px 1px #0003, 0px 1px 1px 1px #0002, 0px 1px 2px 1px #fff4;
}

/*--- Accessable Dropdown Nav Handling ---*/
#menu li ul {
	position:absolute;
	left:0; top:100%;
	background:#f5f5f5;
	font-size: .9em;
	box-shadow: 0 1px 1px rgba(0,0,0,.25) , 0 1px 6px rgba(0,0,0,.25);
	clip: rect(1px, 1px, 1px, 1px);
	z-index:999;
}

#menu li ul .ul-wrapper {
	display:inline-block;
	width:100%;
}

#menu li:hover > ul { 
min-width:100%; 
height:auto; 
clip:auto; 
box-shadow:0px 2px 12px rgba(0,0,0,.3) , 0px 2px 2px rgba(0,0,0,.3); 
}
#menu li:focus-within > ul {min-width:100%; height:auto; clip:auto;   }

#menu li ul li { flex:1 1 100%; }

#menu li ul li a { 
	justify-content:flex-start; 
	text-align:left; 
	width:100%; 
	padding:.9rem; 
	font-size:95%;
	border-bottom:solid 1px rgba(0,0,0,.2);
	border-top:solid 1px rgba(255,255,255,.1);
}

#menu li.page_item_has_children > a:after, #menu li.menu-item-has-children > a:after  {
	content:' ';
	border:solid .2em transparent;
	border-top:solid .32em;
	border-bottom:solid .12em transparent;
	display: inline-block;
	vertical-align: top;
	margin-top:.33em;
	margin-left:.2em;
	opacity:0.8;
}
 
/*--- sub sub menu -----*/
#menu li.menu-item-has-children li.menu-item-has-children > a:after {
	content:"\203A";
	border:none;
	margin-top:0;
}
#menu li > ul li ul {
	position:absolute; 
	left:100%; 
	top:0;
}


/*---- Animated Dropdowns ----*/
.animated-dropdown #menu li > div {
	position:absolute;
	top:100%;
	left:0%;
	display:grid;
	grid-template-rows: 0fr;
	transition: 0.4s cubic-bezier(.23,1,.32,1);
}
.animated-dropdown #menu li ul {
	clip: auto;
	position:static;
	overflow: hidden;
}

.animated-dropdown #menu li:hover > div , .animated-dropdown #menu li:focus-within > div { 
	 grid-template-rows: 1fr;
}



/*================================ Homepage Banner ======================================*/

/*------------- Full Width Banner --------------*/

.wp-custom-header {overflow:hidden; }

.wp-custom-header iframe, .wp-custom-header img , .wp-custom-header video {
	position:absolute;
    left: 0;
	right:0;
	width: 100%;
	height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    top: 0;
    -ms-transform: none;
    -moz-transform: none;
    -webkit-transform: none;
    transform: none;
	vertical-align:top;
}

.wp-custom-header img {vertical-align:top; }
#wp-custom-header-video-button {display:none; }

.homepage-banner {
	position:relative;
	width:100%;  
}
.banner-image {
	background-size:cover;
	background-position:center;
	background-color: var(--primary-dark-1);
}
.banner-image::after , .wp-custom-header::after {
	padding-bottom:40%;
	content:" ";
	display:block;
}

.homepage-banner .textbox {
	position:absolute;
	top:0; left:0; right:0; bottom:0;
	padding:4vw;
	text-align:center;
	color:white;
	font-size:min(3.2vw , 1.6em );
	text-shadow: 1px 1px 4px rgba(0,0,0,.35);
	background:rgba(0,0,0, .5);
	background:linear-gradient( rgba(0,0,0, .5) , rgba(0,0,0, .1) );
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}

.homepage-banner .textbox h1 { line-height:1.05;  width:100%; }
.homepage-banner .textbox h1 small {display:block;}

.homepage-banner .textbox p { margin-top:0; width:100%; }
.homepage-banner .textbox p:empty {margin:0; }
.homepage-banner .textbox p:empty:before {display:none;}

@media (max-width:400px) {
	.homepage-banner .textbox { overflow:auto; }
}

/*------------- Split  Banner --------------*/
.homepage-banner.split-banner {
	display: flex;
	flex-wrap:wrap;
	overflow:auto;
}
.homepage-banner.split-banner .banner-image , .homepage-banner.split-banner .wp-custom-header {
	flex:1 1 350px;
	position:relative;
}

.homepage-banner.split-banner .textbox {
	position: relative;
	flex:1 1 350px;
	font-size:1em;
	padding:1em 0.75em 1.5em;
	background-color:var(--primary-color);
	background-image: radial-gradient(at center center, var(--primary-light-1 ) 0%, var(--primary-color) 100%) ;
	color:var(--reverse-color);
	text-shadow: 0 1px 8px rgba(0,0,0,.5);
}

.split-banner .banner-image::after {
	padding-bottom:60%;
	content:" ";
	display:block;
}

@media( min-width:700px) {
	.homepage-banner.split-banner .textbox {
		font-size:calc(3.2vw / 2);
		padding:calc(4vw / 2);
	}
}


/*--------------------- Sidebar ---------------------------*/

#container > .maxwidth { 
	display:flex; 
	flex:1 1 auto; 
	width:100%;
	margin:0 auto;
	vertical-align:top;
	line-height:1.5;
	padding: 0 10px;
	gap:min(32px, 1vw);
}

@media (min-width:640px ) {
	#content { 	display:block; 	flex:4 2 960px;  margin: 16px auto; }
	.sidebar-right #container > .maxwidth { flex-direction:row; }
	.sidebar-left #container > .maxwidth { flex-direction:row-reverse; }
}

.sidebar-none #sidebar {display:none;}

#sidebar {
	flex:0 1 280px;
	flex:0 1 var(--sidebarwidth, 280px);
	font-size:16px;
}
.widget-title { font-size:1.2rem; margin: 0.4rem 0; }
.xoxo {
    list-style: none;
    margin: 0;
    padding: 4px;
}
.xoxo > li {
	border-bottom:solid 1px #aaa5;
	padding:1.5rem 0.25rem;
}
.search-form , .woocommerce-product-search {display:flex; width:100%; font-size:16px;}
.search-form label  {display:flex; flex:1 1 auto; }
.search-field {width:100%; min-width:50px; padding:8px; margin:0; border:solid 1px #ddd; font-size:inherit; border-radius:4px 0 0 4px; -webkit-appearance: none; }
.search-field:focus {border-color:#aaa;}
.search-form .search-submit , .woocommerce-product-search button { 
	background-color:#ffc731;
	color:#200;
	background-size:auto 85%;
	font-size:12px;
	margin:0;
	padding:4px;
	border:solid 1px #ccc;
	border-left:none;
	border-radius: 0 4px 4px 0;
	-webkit-appearance: none;
}


/*------------------------ Page & Blog Styling -----------------------------*/
.hentry {margin: 0;}
.blog #content , .archive #content {box-shadow:none;}
.blog .hentry ,   .search-results > article {box-shadow:0 0 4px rgba(0,0,0,.25); overflow: hidden; margin: 0 auto 16px; }

.page-header , .post-header {
	position:relative;
	margin-bottom:4px;
}

.summary-header-link { color:inherit; text-decoration:none; transition: .3s cubic-bezier(.39,.58,.57,1);  }
.summary-header-link:hover { color:var(--primary-color); text-decoration:none; }
.featured-image {
	padding-bottom:38%;
	background-size:cover;
	background-position:center;
	background-color:#f5f5f5;
	background-color:var(--primary-dark-1);
	box-shadow:inset 0 0 24px 1px rgba(0,0,0,.1);
	vertical-align:top;
	transition: .3s cubic-bezier(.39,.58,.57,1); 
}
.summary-header {position:relative; overflow:hidden;}
.summary-header:hover .featured-image {
	transform:scale(1.05);
}
.entry-title {  line-height:1.05;  }
.entry-title small { font-size: 45%; display: block; }
h2.entry-title {padding:.5rem 0;}
.with-image .entry-title {margin:0;}
.header-content {padding: 0rem 1rem .5rem;}

.with-image .header-content {
	position:absolute;
	bottom:0; left:0; right:0;
	background: linear-gradient( transparent , rgba(0,0,0,.75) );
	background: linear-gradient( transparent , 55% , var(--primary-dark-1) );
	color:white;
	padding: 3.25rem 1rem .4rem; margin:0;
	text-shadow:1px 1px 2px rgba(0,0,0,.5);
}

.summary-content { padding:0 1rem 0.75rem; }
.entry-content { padding:0 .75rem .75rem; display:flow-root; }
.elementor-page .entry-content {padding:0;}

.entry-meta {opacity:.75; font-size:12px; padding-top:4px;}
.with-image .entry-meta a {color:inherit; text-decoration:none;}

.moretag a {background:none; color:inherit; border:solid 1px currentcolor; padding:8px; text-decoration:none; }
.moretag a:hover {background:none;}
.moretag a span { display:inline-block; transition:.15s cubic-bezier(.17,.84,.44,1); }
.moretag a:hover span { transform:translateX(2px); }

/*----- Pagination ------*/
.nav-links {
	display: flex;
	margin:auto;
	text-align: center;
	justify-content: center;
}
.nav-links .page-numbers {
	border:solid 1px rgba(0,30,60,.45);
	padding:6px 12px;
	margin:2px;
	text-align: center;
	background:#eaf2f8;
	color:#222;
	text-decoration: none;
}
.nav-links .page-numbers.current {
	background:#468;
	border:none;
	color:#fff;
}

@media ( max-width:480px ) {
	 .with-image .header-content {position:static; color:inherit; background:none; text-shadow:none; margin:0; padding:16px 0px 0; }
	.entry-meta { padding:16px 0 0; }
}


/*=========================== Elementor Styling ====================================*/
.elementor-template-full-width  #container > .maxwidth {
	display:block;
	max-width:100%;
	padding:0;
}

#wrapper .elementor-button , #content .button.alt, .button  {
	display:inline-block;
	background:#ffc731;
	color:#000;
	font-size:100%;
	padding: 0.8em 1.2em;
	line-height:1.1;
	box-shadow: 0 2px 0px rgba(0,0,0,.75) , inset 0 1px 4px 2px rgba(255,255,255,.25);
	text-shadow:1px 1px 3px rgba(255,255,255,0.4); 
	font-weight:bold;
	text-decoration:none;
	border-radius:4px;
}
/*------ Default Button Stying -----*/
#wrapper .elementor-button:hover , #content .button.alt:hover , .button:hover {
	color:#000; 
	background:#fc3; 
	text-decoration:none;
}

#content .button.alt {
	text-shadow: 1px 1px 1px rgba(255,255,255,.3);
}

.elementor-button-wrapper .elementor-button.elementor-size-xs { font-size:80%; }
.elementor-button-wrapper .elementor-button.elementor-size-md {font-size:115%; }
.elementor-button-wrapper .elementor-button.elementor-size-lg { font-size:150%; }
.elementor-button-wrapper .elementor-button.elementor-size-xl {font-size:175%; }



/*--------------- Search Results -------------------*/

.search-results-wrapper {
	display:grid;
	grid-template-columns: repeat( auto-fit, minmax(280px, 1fr) );
	gap:16px;
}
.search-results-wrapper article {
	border:solid 1px #ddd;
}
.search-results-wrapper article p { font-size:16px; }
.search-results-wrapper article .moretag a {font-size:16px; }

/*------------------- Comments Section -----------------------*/

#nav-below {clear:both; display:flex; flex-wrap:wrap; border-top:solid 1px #ddd; padding:16px 0; margin:16px 0;  }
#nav-below > div {  flex:1 1 45%;  }
#nav-below a {display:block; padding:8px; line-height:1.15; }
.nav-next {text-align:right;}

#comments {clear:both; }

.comments-dropdown {display:block;}

.number-of-comments {
font-size:1.8em;
font-weight:bold;
position:relative;
border-bottom:solid 3px;
	padding-bottom:4px;
	margin-bottom:12px;
}
.comments-dropdown summary:hover { background:#ddf4ff; }

.all-comments {
margin:0; padding:0;
}

.comments ul { padding:0px; margin:8px 0;}

.comments li {
margin:1rem 0 0 0;
padding: 1rem 0 0 40px;
list-style:none;
border-top:solid 1px #aaa;
position:relative;
}
.comment-body {position:relative; }

.reply {position:absolute; top:0; right:0; }
.avatar  {position:absolute; top:0; left:-40px;}

.comment-notes {font-size:14px;}


#respond {  padding:0px 12px;}
#respond p {margin:4px 0;}

#respond .stars { font-size:1.4rem; }

.comment-form-comment , .form-submit {margin:0;}

.comment-form input, .comment-form textarea {
border:solid 1px #bbb;
box-shadow:inset 2px 2px 6px rgba(0,0,0,.15);
font:inherit;
width:100%;
padding:8px;
}
.comment-form input[type=checkbox], .comment-form input[type=radio] {
	width:auto; 
}

#comment {height:4em; transition:.45s cubic-bezier(.08,.82,.17,1); }
#comment:focus {height:10em;}

.comment-form input:focus, .comment-form textarea:focus {border:solid 1px #456;}
.comment-form input.submit { background:#eee; box-shadow:0 1px 2px rgba(0,0,0,.15); margin:16px 0; }

.logged-in-as {display:none; margin:0; }
.logged-in-as a {font-size:.85em; padding:8px; border:solid 1px; border-radius:3px; text-decoration:none; line-height:1; }








/*=============================== Footer ==================================*/

#footer {
	background-color:var(--primary-dark-1, #222);
	color:var(--reverse-color, #f5f5f5);
	padding-top:16px;
	border-top:solid 1px rgba(0,0,0,0.1);
}
#footer a {color:inherit;}

#footer #copyright {
	text-align:center;
	padding:16px;
	background:rgba(50,50,50,.15);
	font-size:16px;
	box-shadow:inset inset 0 4px 12px 0px rgba(0,0,0,.25) , 0 2px 2px rgba(0,0,0,0.7);
	background-image: linear-gradient( rgba(0,0,0,.2) , rgba(0,0,0,.1) );
	background-blend-mode: multiply;
	border-top:solid 1px rgba(255,255,255,.25); 
}
 
.social-icon-wrapper {
	text-align:center;
	font-size:16px;
}
.social-icons {}
.social-icons a {
	display:inline-block;
	margin:4px;
}
.social-icons a:hover img {
	filter:brightness(1.05) saturate(1.15) drop-shadow(0px 0px 1px white );
}
.social-icons a img { height:64px; width:64px; vertical-align:top;  }

.social-icons.square-icons a {
position:relative;
}
.social-icons.square-icons a:hover:after {
	content:attr(title);
	display:block;
	position:absolute;
	top:100%;
	left:-4px; right:-4px;
	background:rgba(0,0,0,.4);
	font-size:14px;
	padding:3px;
	line-height:1.15;
	border-radius:4px;
}

#footer .social-icons.wide-icons a { 
	display:inline-flex; 
	text-decoration:none; 
	background: #0005;
	color:#fff;
	border-radius:8px;
	border:solid 1px rgba(255,255,255,.25);
}
#footer .social-icons.wide-icons a:hover {
	border:solid 1px rgba(255,255,255,.5);
	background: #0008;
}
#footer .social-icons.wide-icons a:after {
	content:attr(title);
	display: flex;
	padding: 8px 16px;
	align-items: center;
}
#footer .social-icons.wide-icons img { margin:-3px;  }

.footer-widget-areas > .maxwidth {
	display:flex;
	justify-content:space-around;
	justify-content:space-evenly;
	flex-wrap:wrap;
	padding:16px;
	display:grid;
	grid-template-columns: repeat( auto-fit ,minmax(200px, 1fr));
}
.footer-widget-areas li.widget-container { list-style:none; padding:16px; }

.widget-container ul {
	margin:0;
}
.widget-container ul li {
	line-height:1.5;
}

/*--- center if there's only  one widget ----*/
#footer .maxwidth li.widget-container:nth-child(1):nth-last-child(1){
	text-align:center; 
}

@media (min-width:530px) {
	/* two footer items */
	#footer .maxwidth li.widget-container:first-child:nth-last-child(2), li:first-child:nth-last-child(2) ~ li {
    justify-self: center;
	}
}	
@media (min-width:750px) {
	/* three footer items */
	#footer .maxwidth li.widget-container:first-child:nth-last-child(3), li:first-child:nth-last-child(3) ~ li {
    justify-self: center;
	}
}






/*============================= Color Schemes =================================*/

/*------ Blue ------*/
html.blue { --primary-color:#0065A6; --primary-dark-1:#052740 ; --primary-light-1:#0D81B9;  --reverse-color:#fff;  }

html.blue #header , html.blue #footer  { background:#03375c; background:radial-gradient(90% 150% at 50% 10% ,#0065A6,#03375c); color:#fff; }
html.blue #menu li ul {background:#146; }
html.blue .homepage-banner.split-banner .textbox {background-color:#106DA8; color:#fff;}

/*----- Green -------*/
html.green { --primary-color: #007942; --primary-dark-1: #003c2a; --primary-light-1: #2c9f42; --reverse-color:#fff;  }

html.green #header, html.green #footer { background:#008E4B; background: radial-gradient(90% 150% at 50% 10% ,#009B52,#08662d,#00222d); color:#fff; }
html.green #menu li ul { background:#055e28; }
html.green .homepage-banner.split-banner .textbox {background-color:#007942; color:#fff;}

/*----- Red -------*/
html.red { --primary-color: #a00303; --primary-dark-1: #4d0c0c; --primary-light-1: #dd3f1a; --reverse-color:#fff;  }

html.red #header, html.red #footer { background:radial-gradient(90% 150% at 50% 10% ,#a10,#800,#500);  color:#fff; }
html.red #menu li ul { background: var(--primary-dark-1); }
html.red .homepage-banner.split-banner .textbox {background-color:#a00303; color:#fff;}

/*----- Purple -------*/
html.purple { --primary-color:#54057d; --primary-dark-1:#300b44; --primary-light-1:#9739c8; --reverse-color:#fff;  }

html.purple #header, html.purple #menu li ul , html.purple #footer { background:radial-gradient(150% 160% at 50% 12% ,#6F0F90,#21012f); color:#fff; }
html.purple .homepage-banner.split-banner .textbox {background-color:#54057d; color:#fff;}


/*----- Black -------*/
html.black { --primary-color: #181818; --primary-dark-1: #040404; --primary-light-1: #444; --reverse-color:#fff; }

html.black #header, html.black #menu li ul , html.black #footer { background:#040404; background:radial-gradient(150% 160% at 50% 12% ,#222,#040404); color:#fff; }
html.black .homepage-banner.split-banner .textbox {background-color:#181818; color:#fff;}

/*----- White -------*/
html.white { --primary-color: #f3f3f3; --primary-dark-1: #fff; --primary-light-1: #eee; --reverse-color:#000; }

html.white .homepage-banner.split-banner .textbox, html.white #footer { background:radial-gradient(#fff,#fdfdfd,#e2e2e2); text-shadow:none; color:black; }
/*html.white a { color:#06a;}
html.white a:hover { color:#08b;}*/

html.white #menu li.current-menu-item > a { background:none; inset 0 1px 16px 1px #0003; }

html.white #footer .social-icons.wide-icons a { background:white; color:black; border: solid 1px #bcd; }
html.white #footer #copyright { background-image: linear-gradient( rgba(0,0,0,.1) , rgba(0,0,0,.0) ); background-color:#f8f8f8; border-top:solid 1px #ccc; }


.banner-text-block .elementor-button { text-shadow:1px 1px 1px rgba(255,255,255,0.4); }
html.white .banner-text-block { text-shadow:none; }





/*================================== Media Queries ========================================*/

@media (min-width:1000px) {
	.sticky-header-active #header  {
		position:fixed; top:0; left:0; right:0; 
		font-size:90%; 
		min-height: 64px; 
		animation: slideDown .25s ease-in-out; 
		opacity:0.94;
	}
	.admin-bar .sticky-header-active #header {top:32px;}
	.sticky-header-active #site-logo img { max-height:60px; }
	
	@keyframes slideDown {
		0% {transform: translateY(-100%); }
		100% {transform: translateY(0%);  }
	}
}

@media (max-width:1360px) {
	html {font-size:120%; }
}

@media (max-width:1100px) {
	html {font-size:115%; }
}

@media (max-width:1024px) {
	html {font-size:110%; }
}
@media (max-width:900px) {
	html {font-size:105%; }
}
@media (max-width:800px) {
	html {font-size:100%; }
}
@media (max-width:640px) {
	#container .maxwidth {flex-direction:column; }
	#header #menu {order:3; flex-wrap:wrap; }
	#header .maxwidth {   }
	
	.cart-contents { flex:1 1 auto;  }
	
	/*--- Simple Stacked Menu ------*/
	.menu-stacked #header #menu {display:block; flex:1 1 100%; flex-direction:column; //flex-wrap:nowrap; }
	.menu-stacked #menu .menu { flex-direction:column; }
	.menu-stacked .cart-contents { display:block; text-align:center; }
	.menu-stacked #menu li { flex-direction:column; }
	.menu-stacked #menu li a { //justify-content:flex-start; }
	.menu-stacked #menu li ul li a { justify-content:center; }
	

	/*------- Hamburger Menu -------*/
	/*-- Hamburger button --*/
	.menu-hamburger #header {padding-left:50px; }
	.menu-hamburger #header button {
		display:inline-flex; 
		align-items:center; 
		justify-content:center;
		position:absolute; 
		left:0; 
		top:0;
		font-size:3rem; 
		width:54px;
		height:100%;
		padding:12px; 
		cursor:pointer;
		background:none;
		color:inherit;
		border:solid 1px rgba(200,200,200,0.1);
	}
	.menu-hamburger #header .hamburger-button[aria-expanded="true"] {background:black; }
	
	/*-- Slide Out Menu --*/
	.menu-hamburger #header #menu { 
		display:block;
		position:fixed;
		top:0; left:-100%; 
		width:100%; 
		height:100%;
		overflow-y:auto;
		transition:.25s cubic-bezier(.86,0,.07,1);
		background:rgba(0,0,0,0.75);
	}
	.menu-hamburger #header #menu.active { 
		left:0;
	}
	/*--- Slide Out Inner Menu --*/
	.menu-hamburger #header #menu .menu { 
		min-height:88%;
		background: var(--primary-color, #eee);
		max-width:80%;
		flex-direction: column;
	}
	/*--close button --*/
	.menu-hamburger #menu .close-btn {
		position:fixed; 
		top:0; 
		right:-100px; 
		left:auto; 
		border:solid 1px #333; 
		width:20%; 
		align-items:flex-start; 
		opacity:0;
		transition:.15s opacity ease-out;
	}
	.menu-hamburger #menu.active .close-btn { right:0; bottom:20px; opacity:1; }
	
	/*-- Hamburger Dropdown Menus --*/
	.menu-hamburger #menu li { flex-direction:column; border-bottom:solid 1px rgba(0,0,0,0.4); flex:0 0 100%;  }
	.menu-hamburger #menu li a {text-align:left; justify-content:flex-start; padding:1.4rem;}
	.menu-hamburger #menu li ul {position:static; max-height:1px; overflow:auto; transition:0.3s cubic-bezier(.77,0,.18,1); }
	.menu-hamburger #menu li:hover ul{   max-height:calc( var(--submenu-height, 400px) * 1px ); clip:auto; padding:0 2px; }
	
	/*-- adjust positioning to account for admin bar --*/
	.menu-hamburger .admin-bar #header #menu , .menu-hamburger .admin-bar #menu .close-btn {top:46px;} 

	
	/*------ Horizontal Scrolling Nav -------*/
	.menu-scroll #header #menu {
		flex-wrap: nowrap;  
		overflow-y:hidden; 
		overflow-x:auto; 
		white-space: nowrap; 
		height:56px; 
		background: var(--primary-color); 
		-webkit-overflow-scrolling: touch; 
		scrollbar-width: thin; 
	}
	.menu-scroll #header #menu::-webkit-scrollbar{height:8px; background:#fff3; }
	.menu-scroll #header #menu::-webkit-scrollbar-thumb{ background:var(--primary-dark-1, #0009); border-radius:4px;}
	.menu-scroll #header #menu.open { height:112px; }
	.menu-scroll #header #menu .menu { height:56px; } 
	.menu-scroll #header #menu ul {flex-wrap: nowrap;   }
	.menu-scroll #header #menu ul.submenu {display:none; background: var(--primary-dark-1);}
}

@media (max-width:400px) {
	html {font-size:95%; }
}


@media (forced-colors: active) { 
	#content .button {
		background:black;
		border:solid 2px;
	}
}


