/*
	Theme Name: w32023
	Theme URI: https://w3nerds.com
	Description: Theme designed for client
	Version: 1.1
	Author: w3 Global Solutions
	Author URI: https://w3nerds.com
	Tags: HTML5, CSS3

	License: MIT
	License URI: http://opensource.org/licenses/mit-license.php
*/
*,
*:after,
*:before {
	box-sizing:border-box;
	text-rendering:optimizeLegibility;
	margin:0;
}
:root {
	--color-1:#316b81;
	--color-2:#ce9c61;
	--color-3:#f3ebe6;
	--color-4:#e6ebf1;
	--greyZero:#f5f5f5;
	--greyOne:#e5e5e5;
	--greyTwo:#bfbfbf;
	--greyThree:#757575;
	--greyFour:#444444;
	--greyFive:#151515;
	--font-title: 'title', 'opensans-extrabold', Times, serif;
	--font-sm-title: 'title', 'opensans-regular', Times, serif;
	--font-text-strong: 'opensans-bold', "Arial Black", sans-serif;
	--font-text-regular: 'regular', 'opensans-regular', Arial, sans-serif;
	--font-text-italic: 'italic', 'opensans-italic', "Arial Italic", sans-serif;
	--font-nav: 'cta', 'opensans-bold', Arial, serif;
	--font-cta: 'cta', 'opensans-bold', Arial, serif;
}
.screen-reader-text {
	overflow: hidden;
	position:absolute;
	width:1px;
	height:1px;
	clip:rect(1px,1px,1px,1px);
}
.skip-to-content-link {
	background: #fff;
	color:#000;
	height: 30px;
	left: 50%;
	padding: 4px;
	position: absolute;
	transform: translateY(-100%);
	transition: transform 0.3s;
}
.skip-to-content-link:focus {
	transform: translateY(0%);
}
#loader {
	left: 50%;
	top: 50%;
	position: fixed;
	transform: translate(-50%, -50%);
	border: 12px solid #f3f3f3; /* Light grey */
	border-top: 12px solid #3498db; /* Blue */
	border-radius: 50%;
	width: 90px;
	height: 90px;
	animation: spin 2s linear infinite;
	z-index:999;
}
@keyframes spin {
	0% { transform: rotate(0deg); }
	100% { transform: rotate(360deg); }
}
p#noscript {
	background-color:red;
	color:white;
	text-align:center;
	width:100%;
}
a#w3 {
	background-color:transparent;
	background: transparent url(img/w3nerds-logo-web.png) no-repeat;
	background-position: 10% 50%;
	color:#151515;
	display: inline-block;
	font-family: 'opensans-regular', sans-serif;
	font-size: 13px;
	line-height: 22px;
	margin: 10px;
	padding: 10px;
	text-align: right;
	transition-duration: 0.8s;
	text-decoration: none;
	width: 180px;
	height: 90px;
}
a#w3:hover {
	background-color: #fff;
	box-shadow: 15px 15px 0px -10px #4285f4, -15px -15px 0px -10px #fcc934, 5px -5px #ff5252, -5px 5px #34a853;
	color:#151515;
}
.success {
	padding:12px 20px;
	text-align: left;
	color:#fff;
	font-weight:bold;
	font-size:16px;
	background:green;
	position: relative;
	z-index: 9999;
}
.success a {
	color:#ccc;
}
.error, .form-error-container {
	padding:12px 20px;
	text-align: left;
	font-size: 16px;
	color:#fff;
	background:red;
	position: relative;
	z-index: 9999;
}
.error span,
 .error a {
	vertical-align: middle !important;
}
.inputError {
	background-color:rgb(249,213,212) !important;
}
html {
	font-size:14px;
}
body {
	font-family: var(--font-text-regular), 'opensans-regular', serif;
	font-size:14px;
	line-height:22px;
	color: #555;
	background-color:#fff;
	text-align:center;
}
img {
	vertical-align:bottom;
	width: auto;
	height: auto;
	max-width: 100%;
}
a {
	color:var(--color-2);
	font-family: var(--font-text-strong), 'opensans-bold', serif;
	text-decoration:underline;
	cursor: pointer;
}
a:hover {
	color:#000;
}
a:focus {
	outline:#2f2f2f;
}
a:hover,
a:active {
	outline:0;
}
button {
	cursor: pointer;
}
input:focus {
	outline:0;
	border:1px solid var(--color-4);
}
textarea {
	outline-color:var(--color-4);
}
p {
	color: #000;
	text-align: left;
	font-size: 16px;
	line-height: 26px;
	position: relative;
	font-family: var(--font-text-regular), 'opensans-regular', serif;
}
ul,ol {
	font-size:14px;
	line-height: 14px;
	padding: 20px 0 20px 20px;
}
ul li, ol ul li {								/*NEW*/
	text-align: left;
	list-style: none;
	background-image: url('favicon-32x32.png');
	background-repeat: no-repeat;
	background-size: 12px;
	background-position: 5px 12px;
	font-size: 16px;
	line-height: 24px;
	padding: 5px 0 10px 30px;
}
ol li, ul ol li {								/*NEW*/
	list-style: auto;
	background-image: none;
	text-align: left;
	font-size: 16px;
	line-height: 24px;
	padding: 5px 0 15px 5px;
}
ol li::marker, ul ol li::marker {
	font-family: var(--font-text-strong), 'opensans-bold', serif;
}
ul li h4, ol li h4, ul ol li h4 {
	padding-bottom: 4px;
}
h1, h2.xlg-title, h3.xlg-title, h4.xlg-title, h5.xlg-title, .xlg-title {
	border-bottom: 1px solid var(--color-4);
	color: #000;
	display: block;
	font-family: var(--font-title), 'opensans-bold', sans-serif;
	font-size:60px;
	font-weight: normal;
	line-height:70px;
	margin: 0;
	padding: 20px 0;
	text-align: left;
	text-decoration: none;
	vertical-align: middle;
}
h2, h1.lg-title, h3.lg-title, h4.lg-title, h5.lg-title, .lg-title {
	color: #000;
	display: inline-block;
	font-family: var(--font-title), 'opensans-bold', sans-serif;
	font-size:28px;
	font-weight: normal;
	line-height:34px;
	margin-bottom: 20px;
	padding-bottom: 10px;
	text-align: left;
	vertical-align: middle;
}
h3, h1.med-title, h2.med-title, h4.med-title, h5.med-title, .med-title { 
	color: #000;
	display: inline-block;
	font-family: var(--font-title), 'opensans-bold', sans-serif;
	font-size:20px;
	font-weight: normal;
	line-height:28px;
	padding-bottom: 10px;
	text-align: left;
	vertical-align: middle;
}
h4, h1.sm-title, h2.sm-title, h3.sm-title, h5.sm-title, .sm-title  {
	color: var(--greyFour);
	display: inline-block;
	font-family: var(--font-sm-title), 'opensans-bold', sans-serif;
	font-size: 18px;
	font-variant: small-caps;
	font-weight: normal;
	line-height: 24px;
	padding-bottom: 10px;
	text-align: left;
	vertical-align: middle;
}
h5, h1.xsm-title, h2.xsm-title, h3.xsm-title, h4.xsm-title, .xsm-title {
	color: var(--greyFour);
	display: inline-block;
	font-family: var(--font-sm-title), 'opensans-bold', sans-serif;
	font-size: 16px;
	font-weight: normal;
	line-height: 22px;
	padding-bottom: 10px;
	text-align: left;
	vertical-align: middle;
}
strong, b, table th {
	font-weight: normal;
	font-family: var(--font-text-strong), 'opensans-bold', serif;
}
svg {
	vertical-align: middle;
	width: 25px;
	height: 25px;
	fill:#000;
}
i {
	font-style: normal;
	font-family: var(--font-text-italic), 'opensans-italic', sans-serif;
}
blockquote {
	padding: 10px 20px;
	margin: 15px 0;
	font-size: 17.5px;
	border-left: 5px solid var(--color-4);
}
section {							/*contains a wrapper and std-padding*/
	background-position: center;
	background-size:cover;
	width:100%;
	padding: 75px 20px;
	position: relative;
}
section.no-padding {
	padding: 0;
}
section.large {
	max-width: 1920px;
	margin: 0 auto;
}
section.landing {				/*styling for landing sections*/
	background-position: center; 
	background-size: cover;
	background-repeat: no-repeat;
}
body.terms-of-service section:first-of-type,
 body.privacy-policy section:first-of-type {
	background-image: none;
 }
.wrapper {
	max-width:1400px;
	width:100%;
	margin:0 auto;
}
.wrapper.large {max-width: 1920px;}
.wrapper.small {max-width: 1000px;}
.wrapper.xsmall {max-width: 750px;}
.std-padding {padding: 75px 20px;}
.less-padding {padding: 40px 15px;}
.grey {background-color: var(--greyZero);}
.object-fit {width: 100%;height: 200px;object-fit: cover;}
.left {text-align: left;}
.center {text-align: center;}
.right{text-align: right;}
.align-left {
	float:left;
	padding:0;
	margin: 0 12px 2px 0;
}
.align-right {
	float:right;
	padding:0;
	margin:0 0 2px 12px;
}
@media only screen and (max-width:900px) {
	.stopFloatOnTablet {
		float: none;
		display: block;
		margin: 12px auto;
	}
}
@media only screen and (max-width:640px) {
	.stopFloatOnMobile {
		float: none;
		display: block;
		margin: 12px auto;
	}
}
@media only screen and (max-width:399px) {
	.align-left,
	 .align-right {
		float:none;
		display: block;
		margin: 12px auto;
	}
}
ul.list {
	overflow: hidden;
	list-style: none;
	text-align: left;
	padding: 15px 10px;
	margin: 0 0 0 40px;
}
ul.list li {
	float: left;
	display: inline;
	width:33%;
	background-repeat: no-repeat;
	background-size: 30px;
	background-position: 5px 50%;
	font-size: 18px;
	line-height: 24px;
	padding: 15px 10px 15px 50px;
}
ul.list.service-area li {
}
ul.list.one-col li {
	width: 100%;
}
@media only screen and (max-width:900px) {
	ul.list {
		margin: 0;
		padding: 10px 5px;
	}
	ul.list li {
		width: 50%;
	}
}
@media only screen and (max-width:640px) {
	ul.list {
		padding: 10px 0px;
	}
	ul.list li {
		font-size: 16px;
		background-size: 20px;
		padding: 10px 10px 10px 30px;
	}
}
@media only screen and (max-width:390px) {
	ul.list li {
		width: 100%;
	}
}
iframe {
	display: block;
	width:100%;
	margin: 0 auto;
	border:0;
}
.parallax {
	background-attachment: fixed;
	background-position: center;
	background-repeat: no-repeat;
}
/*------------------------------------*\
	STRUCTURE
\*------------------------------------*/
table, table tr.even, table tr.alt, table tr:nth-of-type(even) {background: none;border:0;}
div.table,div.table-noresponse{display:table;width:100%}div.table div.tableRow,div.table-noresponse div.tableRow-noresponse{display:table-row;width:100%}div.table div.tableRow div.tableCell,div.table-noresponse div.tableRow-noresponse div.tableCell-noresponse{display:table-cell;vertical-align:middle}
.small-1{width:8.33333%}.small-2{width:16.66667%}.small-3{width:25%}.small-4{width:33.33333%}.small-5{width:41.66667%}.small-6{width:50%}.small-7{width:58.33333%}.small-8{width:66.66667%}.small-9{width:75%}.small-10{width:83.33333%}.small-11{width:91.66667%}.small-12{width:100%}
@media only screen and (min-width: 640px){.medium-1{width:8.33333%}.medium-2{width:16.66667%}.medium-3{width:25%}.medium-4{width:33.33333%}.medium-5{width:41.66667%}.medium-6{width:50%}.medium-7{width:58.33333%}.medium-8{width:66.66667%}.medium-9{width:75%}.medium-10{width:83.33333%}.medium-11{width:91.66667%}.medium-12{width:100%}}
@media only screen and (min-width: 1024px){.large-1{width:8.33333%}.large-2{width:16.66667%}.large-3{width:25%}.large-4{width:33.33333%}.large-5{width:41.66667%}.large-6{width:50%}.large-7{width:58.33333%}.large-8{width:66.66667%}.large-9{width:75%}.large-10{width:83.33333%}.large-11{width:91.66667%}.large-12{width:100%}}
.flex-container{/*https://www.w3schools.com/css/css3_flexbox.asp*/display:flex;flex-direction:row;flex-wrap:wrap;justify-content:center}.flex-container.centerItems{align-items:center}.flex-container.col{flex-direction:column}.flex-container .flex-block{display:block;width:25%;transition-duration:0.8s}.flex-container .flex-block.one-eighth{width:12.5%}.flex-container .flex-block.one-third{width:33.33%}.flex-container .flex-block.one-half{width:50%}.flex-container .flex-block.two-thirds{width:66.66%}.flex-container .flex-block.three-quarters{width:75%}.flex-container .flex-block.full{width:100%}.flex-container .flex-block.noResponse{width:25%!important}.flex-container .flex-block.one-eighth.noResponse{width:12.5%!important}.flex-container .flex-block.one-third.noResponse{width:33.33%!important}.flex-container .flex-block.one-half.noResponse{width:50%!important}.flex-container .flex-block.two-thirds.noResponse{width:66.66%!important}.flex-container .flex-block.three-quarters.noResponse{width:75%!important}.flex-container .flex-block.full.noResponse{width:100%!important}@media only screen and (max-width:900px){.flex-container.reverseOnTablet{flex-direction:column-reverse}.flex-container .flex-block.one-half,.flex-container .flex-block.two-thirds,.flex-container .flex-block.three-quarters,.flex-container .flex-block.fullOnTablet,.flex-container .flex-block.one-third.fullOnTablet{width:100%}.flex-container .flex-block,.flex-container .flex-block.one-third,.flex-container .flex-block.one-half.lateResponse{width:50%}.flex-container .flex-block.one-eighth{width:25%}}@media screen and (max-width:640px){.flex-container.reverseOnMobile{flex-direction:column-reverse}.flex-container .flex-block,.flex-container .flex-block.one-third,.flex-container .flex-block.two-thirds,.flex-container .flex-block.one-half.lateResponse{width:100%}.flex-container .flex-block.one-eighth,.flex-container .flex-block.lateResponse,.flex-container .flex-block.one-third.lateResponse{width:50%}.flex-container .flex-block.one-eighth.lateResponse{width:25%}}@media screen and (max-width:390px){.flex-container .flex-block.one-eighth,.flex-container .flex-block.lateResponse,.flex-container .flex-block.one-eighth.lateResponse,.flex-container .flex-block.one-third.lateResponse{width:100%}}
.announcement-bar {
	background-color: var(--color-4);
}
.announcement-bar p {
	padding: 10px;
	text-align: center;
}
.announcement-bar a {
	font-family: var(--font-text-strong), 'opensans-bold', serif;
	text-decoration: underline;
	transition-duration: 0.3s;
	color: var(--color-1);
}
.announcement-bar a:hover {
	color: var(--color-4);
}
header {
	text-align:center;
	background-color:#fff;
	position: relative;
	z-index: 100;
}
header div#mobileGrippy {
	display:none;
}
header .mid {
	padding-top: 15px;
}
header .bot {
	width:100%;
	/*max-width: 1400px;*/
	margin: 0 auto;
}
header .mid .flex-container.wrapper {
	border-bottom: 1px solid var(--greyOne);
}
/*header .mid */.flex-block.logo-container {
	width: 20%;
	padding: 10px 0 10px 10px;
	background-color: var(--color-1);
	background-color: #fff;
}
/*header .mid .flex-block.logo-container */a.logo {
	display: block;
	text-decoration: none;
	padding: 8px;
}
/*header .mid .flex-block.logo-container */a.logo img {
	max-width: 250px;
}
/*header .mid .flex-block.logo-container*/ a.logo span.name {
	display: block;
	font-family: var(--font-title), 'opensans-bold', sans-serif;
	font-size: 18px;
	color: var(--color-1);
	padding-left: 65px;
}
/*header .mid .flex-block.logo-container */a.logo span.names span {
	display: block;
}
header nav {
	display:inline-block;
	vertical-align: middle;
}
header nav ul {
	list-style:none;
	position:relative;
	text-align:right;
	margin:0;
	padding:0
}
header nav ul li {
	position:relative;
	display:inline-block;
	vertical-align: middle;
	background-image: none;
	margin:0;
	padding:0;
}
header nav ul li a {
	font-family: var(--font-nav), 'opensans-regular', serif;
	display:block;
	text-decoration:none;
	font-size:15px;
	line-height: 15px;
	margin:0 4px;
	padding: 14px 10px;
	text-align:center;
	transition-duration: 0.8s;
	color: var(--greyFour);
	border: 3px solid transparent;
}
header nav ul li a:hover {
	color: var(--color-1);
	border-bottom: 3px solid var(--color-1);
}
header nav ul li a span {
	display: inline-block;
	transition-duration: 0.8s;
	border-bottom: 3px solid transparent;
}
header nav ul li a.current-page span {
	border-bottom: 3px solid var(--color-4);
}
nav ul li a img {
	display: inline-block;
	vertical-align: middle;
	height: 20px;
	width: 20px;
}
header nav ul li.withChild a:hover {
	box-shadow: 12px 0 15px -4px rgba(31, 73, 125, 0.8), -12px 0 8px -4px rgba(31, 73, 125, 0.8);
	box-shadow: 0 4px 10px 0 rgba(170,170,170,0.5);
	box-shadow: 6px 0 12px -8px rgba(31, 73, 125, 0.8), -6px 0 12px -8px rgba(31, 73, 125, 0.8);
	box-shadow: 0 -1px 11px 2px rgba(170,170,170,0.5);
} 
header nav ul li ul.children {
	display:none;
	position:absolute;
	top:45px;
	left:3px;
	width: 213px;
	height: auto;
	text-align: center;
	text-align: left;
	background-color: #fff;
	z-index:100;
	padding: 0;
	margin: 0;
	border: 1px solid #dcdcdc;
	border-top: 1px solid transparent;
	box-shadow: 0 14px 15px 2px rgba(170,170,170,0.5);
}
nav ul li:hover ul.children {display: block;}
header nav ul li ul.children li {
	display:block;
	text-align: center;
	padding: 0;
	margin: 0;
}
header nav ul li ul.children li a {
	display: block;
	width: 100%;
	padding:12px 6px;
	color: var(--color-1);
	margin: 0;
}
header nav ul li ul.children li a:hover {
	color: #fff;
	border-color: #fff;
	background-color: var(--color-1);
}
header .biz-link {
	color: var(--greyFour);
	padding: 14px;
	text-decoration-color: transparent;
	transition-duration: 0.8s;
}
header .biz-link span {
	font-family: var(--font-text-regular), 'opensans-bold', serif;
	text-decoration: underline;
	text-decoration-color: transparent;
	transition-duration: 0.8s;
}
header .biz-link:hover span {
	text-decoration-color: #000;
}
header .biz-link img {
	max-width: 18px;
	vertical-align: middle;
}
header .biz-link span {
	vertical-align: middle;	
}
div.content {
	background-color: #fff;
	max-width: 1920px;
	margin: 0 auto;
	position: relative;
}
.relative {
	position: relative;
}
.cta {
	display: inline-block;
	background-color: var(--color-1);
	background-image: url('uploads/icon-arrow-right-blue.svg');
	background-repeat: no-repeat;
	background-size: 25px;
	background-position: 93% 50%;
	border: 2px solid transparent;
	border-radius: 5px;
	color: #fff;
	font-family: var(--font-cta), 'opensans-bold', serif;
	font-size: 16px;
	text-decoration: none;
	margin:12px 8px;
	padding: 12px 50px 12px 28px;
	transition-duration: 0.8s;
	vertical-align: middle;
}
.cta:hover {
	color: var(--color-1);
	background-color: #fff;
	border-color: var(--color-1);
	padding:12px 39px;
	background-position: 120% 50%;
	box-shadow: 0px 0px 5px var(--color-4);
}
.cta.large {
	background-position: 95% 50%;
}
.cta.large:hover {
	background-position: 130% 50%;
}
.cta.v2 {
	background-color: #fff;
	background-position: 130% 50%;
	border-bottom: 2px solid #000;
	border-radius: 0px;
	color: #000;
	padding:12px 39px;
}
.cta.v2:hover {
	border-color: transparent;
	box-shadow: none;
	background-position: 93% 50%;
}
.cta.transparent {
	background-image: url('uploads/icon-arrow-right-color-1.svg');
	background-color: transparent;
	color: var(--color-2);
	border-color: var(--color-2);
}
.cta.transparent:hover {
	background-color: var(--color-2);
	border-color: var(--color-2);
	color: #fff;
	box-shadow: 0px 0px 5px var(--color-2);
}
.cta.white {
	background-image: url('uploads/icon-arrow-right-white.svg');
	background-color: transparent;
	color: #ffffff;
	border-color: #ffffff;
}
.cta.white:hover {
	background-color: var(--color-2);
	box-shadow: 0px 0px 5px var(--color-2);
}
.cta.appt {
	background-image: url('uploads/icon-calendar.svg');
	background-position: 95% 50%;
}
.cta img {
	display:inline-block;
	vertical-align: middle;
	width:30px;
}
.cta span {
	display:inline-block;
	vertical-align: middle;
	padding:0 0 0 8px;
}
.frame {
	border-radius: 4px;
	border-top: 4px solid var(--color-2);
	border-right: 1px solid var(--color-2);
	border-bottom: 4px solid var(--color-4);
	border-left: 1px solid var(--color-2);
	transition-duration: 0.8s;
}
.frame:hover {
	box-shadow: 0px 0px 10px var(--color-4);
}
.pad-bot {
	padding-bottom: 15px;
}
body.home section.landing .text-block {
	background-image: url(uploads/east-side-cabinet-solutions-home-landing-bg-337x421-1.webp);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: left;
}
body.home section.landing .content-container {
	padding: 80px;
}
body.home h1 {
	border-bottom: none;
	padding: 0 0 30px;
	font-size: 40px;
	line-height: 40px;
}
.stat-wrapper {
  padding-top: 20px;
}
.stat-block {
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding-left: 80px;
}
.stat-row {
  display: flex;
  align-items: center;
  gap: 12px;
}
.stat-number {
  font-size: 32px;
  font-family: var(--font-sm-title), 'opensans-bold', sans-serif;
  color: #000;
  line-height: 1;
  border-right: 1px solid var(--greyTwo);
  padding-right: 10px;
}
.stat-label {
  font-size: 14px;
  color: #000;
  letter-spacing: 0.5px;
  text-align: left;
}
.card-block {
	padding: 10px;
}
.subtitle {
  display: block;
  font-size: 14px;
  font-family: var(--font-text-strong), "Arial Black";
  color: var(--greyThree);
  text-align: center;
  margin-bottom: 8px;
  letter-spacing: 0.5px;
}
.content-container {
	padding: 20px 30px;
}
.content-container.extra-left {
	padding: 20px 30px 20px 80px;
}
h2.overlap {
  position: absolute;
  top: -30%;
  right: 33%;
  padding: 30px;
  background: linear-gradient(to right, #f5f5f5ba, #fff);
  display: inline-block;
  margin-bottom: 1rem;
  width: 100%;
}
body.home section.landing .sm-img-block img {
	width: 100%;
	object-fit: cover;
}
body.home section.landing .img-container img {
	position: absolute;
	left: 92%;
	bottom: 231px;
}
body.home section.landing .img-block {
	background-image: url(uploads/east-side-cabinet-solutions-home-landing-1600x820-1.webp);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
}
body.home section.b-section .card {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
}
body.home section.b-section .icon-container {
	display: inline;
}
body.home section.b-section .icon-container img {
	max-width: 50px;
}
body.home section.b-section .content-container {
	display: inline;
	padding: 10px 10px 10px 25px;
}
body.home section.b-section .card h3 {
	color: #000;
	font-size: 19px;
	padding-bottom: 5px;
}
body.home .c-spot .card {
  position: relative;
  overflow: hidden;
  border-radius: 5px;
  min-height: 417px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.06);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 20px;
}
body.home .c-spot .card .bg-image {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  transition: transform 0.5s ease;
  z-index: 0;
}
body.home .c-spot .card .bg-image {
  background-image: url(uploads/east-side-cabinet-solutions-home-c-spot-417x370-1.webp);
}
body.home .c-spot .card.v2 .bg-image {
  background-image: url(uploads/east-side-cabinet-solutions-home-c-spot-417x370-2.webp);
}
body.home .c-spot .card.v3 .bg-image {
  background-image: url(uploads/east-side-cabinet-solutions-home-c-spot-417x370-3.webp);
}
body.home .c-spot .card:hover .bg-image {
  transform: scale(1.1);
}
body.home .c-spot .card::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.5), transparent 80%);
  z-index: 1;
}
body.home .c-spot .card .content-container {
  position: relative;
  z-index: 2;
}
body.home .c-spot .card .content-container span {
	font-size: 5rem;
	color: #fff;
}
body.home .c-spot .card h3 {
	margin-top: 10px;
}
body.home .c-spot .card h3,
 body.home .c-spot .card p {
 	color: #fff;
}
body.home .d-spot .title-container .subtitle,
 body.home .e-spot .title-container .subtitle {
	text-align: left;
}
body.home .d-spot .img-container {
	align-items: stretch;
}
body.home .d-spot .img-block {
	padding: 12px;
}
body.home .d-spot .img-block img {
    width: 100%;
}
section.services-list .title-container {
	border-bottom: 1px solid var(--greyOne);
	margin-bottom: 30px;
}
section.services-list .title-container h2 {
	margin-bottom: 0;
}
section.services-list .card {
	position: relative;
}
section.services-list .img-container {
	padding: 0px 45px;
	background-color: var(--color-3);
}
section.services-list .content-container {
	padding: 20px 0;
}
section.services-list p.description {
	font-size: 15px;
}
section.services-list .card .cta {
  position: absolute;
  left: 20px;
  bottom: 100px;
  opacity: 0;
  transform: translateY(10px);
  transition: opacity 0.8s ease, transform 0.8s ease, background-color 0.8s ease, background-position 0.8s ease ;
  pointer-events: none;
}
section.services-list .card:hover .cta {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}
.flex-block.one-fifth {
	width: 20%;
}
body.home section.sponsors .sponsor {
	padding: 10px;
}
body.home section.sponsors .sponsor a {
	display: block;
	height: 100%;
	text-align: center;
	color: var(--color-1);
}
body.home section.sponsors .sponsor a:hover {
	color: var(--greyFour);
}
body.home section.sponsors .sponsor img {
	display: block;
	margin: 0 auto;
	object-fit: contain;
	width: 100%;
	height: 100px;
	max-width: 250px;
}
body.about .about-img-block {
	background: url(uploads/east-side-cabinet-solutions-about-767x796-1.webp);
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}
body.about .about-img-block .box {
  background-color: #ffcc80;
  padding: 30px 40px;
  max-width: 360px;
  position: absolute;
  bottom: 40px;
  left: 30%;
  z-index: 2;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15);
}
body.about .b-spot .about-img-block .box span {
  font-size: 20px;
  font-family: var(--font-text-strong), "Arial Black";
  color: #000;
  line-height: 1.4;
  display: block;
}
body.about .last .bg-img {
	background: url(uploads/east-side-cabinet-solutions-about-banner-1920x650-1.webp);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	min-height: 500px;
}
body.services .img-container .box {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  background: #fff;
  padding: 40px;
  max-width: 630px;
  width: 100%;
  border-radius: 5px;
  z-index: 2;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.1);
}
body.services .img-container .box li {
  color: #000;
}
body.services #core-services .flex-container {
	background-color: #f1f5f9;
}
body.services #core-services .flex-block.one-half {
	position: relative;
}
body.services #core-services .flex-block.one-half::before {
  content: "01";
  position: absolute;
  top: -20px;
  left: 50%;
  font-size: 11rem;
  font-weight: bold;
  color: #e0e0e0;
  z-index: 0;
}
body.services #core-services .card .content-container {
  position: relative;
  z-index: 1;
}
body.services #core-services .flex-block.one-half:nth-child(2)::before {
  content: "02";
}
body.services #core-services .card h3 {
	font-size: 28px;
}
body.contact .form-container {
	background: #fff;
	padding: 40px;
	max-width: 630px;
	width: 100%;
	border-radius: 5px;
	z-index: 2;
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.1);
}
body.contact .form-container input,
 body.contact .form-container textarea {
	background: var(--greyZero);
}
/*forms styling*/section.contact p{max-width:900px;margin:0 auto}.form-container{max-width:1000px;margin:0 auto;padding-top: 20px}div.form-input{display:inline-block;padding:0 10px 10px 0;margin:0;width:33%}div.form-input:has(div.g-recaptcha),div.form-input:has(textarea[name=w3form_name]),div.form-input:has(textarea[name=w3form_websitesFormID]){width:100%}div.form-input:has(textarea[name=w3form_message]){width:100%;}label{display:block;text-align:left;color:#444;font-family:var(--font-text-strong),opensans-bold,serif}div.form-input div.g-recaptcha,input,textarea{display:inline-block;vertical-align:top}input,textarea{font-family:var(--font-text-regular),opensans-regular,serif;border: 1px solid transparent;width:100%;margin:0;padding:12px 16px;font-size:16px;line-height:18px;cursor:pointer;color:#1f1f1f;box-shadow:none;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out;border-radius:4px;background-color:#fff;background-image:none}textarea{height:144px}button{font-family:var(--font-text-strong),opensans-bold,serif;padding:6px 12px;color:#fff;font-size:18px;margin:10px auto;background-color:#346fd4;border-radius:3px;border:0;cursor:pointer;transition:.25s}@media only screen and (max-width:640px){div.form-input{width:100%}}
/*testimonial styling*/ #testimonials #google-reviews{display:flex;flex-wrap:wrap;margin:0}#testimonials .review-item{margin:8px;padding:1.8em;color:#000;flex:1 1 20%;background-color:#fff;border:1px #bfbfbf solid;box-shadow:0 0 15px 2px rgba(170,170,170,.2);transition-duration:.8s}#testimonials .review-item:hover{border:1px solid var(--color-2)}.review-meta,.review-stars{text-align:center;font-size:115%}.review-author{text-transform:capitalize;font-size:28px;line-height:40px}.review-author img{max-width:100px;vertical-align:middle}.review-date{opacity:.6;display:block;font-size:22px;line-height:22px}.review-text{line-height:1.55;text-align:left;max-width:32em;margin:auto}.review-stars ul{display:inline-block;list-style:none;margin:0;padding:0}.review-stars ul li{background-image: none;padding: 0; float:left;margin-right:1px;line-height:1}.review-stars ul li i{color:#fed03d;font-size:48px;font-style:normal}.review-stars ul li i.inactive{color:#c6c6c6}.star:after{content:"\2605"}#map-plug{display:none}@media only screen and (max-width:900px){#testimonials .review-item{flex:1 1 48%}}@media only screen and (max-width:640px){#testimonials .review-item{flex:1 1 100%}}
/*PP and TOU styling*/section#privacy-policy,section#terms-of-use{padding:50px 15px;background-color:#fff;max-width:1000px;margin:auto}section#privacy-policy h1,section#terms-of-use h1{padding:10px;text-transform:uppercase}section#privacy-policy h3,section#terms-of-use h3{padding:30px 10px 10px 10px}section#privacy-policy p,section#terms-of-use p{padding:10px}
footer {
	text-align:left;
	background-color: var(--color-4);
}
footer .mid {
	padding-top: 30px;
}
footer,
 footer .flex-container .flex-block a,
 footer .med-title {
	color: #000;
}
footer a {
	text-decoration: none;
}
footer ul li {
	list-style: disc;
	background-image: none;
	padding: 0;
}
footer span.site-tagline {
	padding-left: 0;
}
footer .flex-container {
	text-align:left;
	padding: 20px 0;
}
footer .flex-container .flex-block {
	padding: 30px 20px 0px;
}
footer .flex-container .flex-block .footer-block-container {
	padding: 0 0 30px;
}
footer .flex-container .flex-block a {
	display: inline-block;
	padding: 12px 0;
	color: var(--greyFour);
	transition-duration: 0.8s;
	border-bottom: 1px solid transparent;
}
footer .flex-container .flex-block a:hover {
	color: var(--color-1);
	border-bottom: 1px solid #000;
}
footer .flex-container .flex-block.logo-block a:hover {
	border-bottom: 1px solid transparent;
}
footer .flex-container .flex-block a.cta {
	padding: 12px 40px 12px 18px;
}
footer .flex-container .flex-block a.cta:hover {
	color: var(--greyFour);
	padding:12px 29px;
}
footer .flex-container .flex-block a svg path {
	fill: var(--greyThree);
}
footer .flex-container .flex-block.site-name-block a {
	display: block;
}
footer .flex-container .flex-block.site-name-block a svg path {
	fill:#475993;
}
footer .flex-container .flex-block.info-block a svg {
	height: 20px;
	width: 20px;
}
footer .flex-container .flex-block ul {
	padding: 0 0 0 20px;
	list-style: none;
}
footer .flex-container .flex-block ul li {
	display: block;
}
footer .flex-container .flex-block ul li img {
	display: none;
}
footer .flex-container .flex-block ul.children {
	padding: 0;
}
footer .flex-container .flex-block a.biz-link {
	display: block;
}
footer .biz-link img {
	max-width: 20px;
}
.hours-container table {
	text-align: left;
	margin:10px auto 10px 0;
	border-collapse:collapse;
}
footer .hours-container table {
	margin: 0 auto 0 0;
}
.hours-container td {
	padding: 4px;
}
.hours-container table tbody tr.selected {
	background-color: #fff;
	color: #000;
	font-family: var(--font-text-regular), 'opensans-regular', serif;
	border: 1px solid var(--color-3);
}
.hours-container  table tbody tr td:nth-of-type(3n-2) {
	padding: 4px 8px;
}
.hours-container  table tbody tr td:nth-of-type(3n-1) {
	padding: 0 8px 0 0;
}
.hours-container  table tbody tr td:nth-of-type(3n) {
	padding: 0 8px 0 0;
}
footer div.footer-sub {
	padding: 30px 20px;
	text-align:left;
	color:#000;
}
footer div.footer-sub .disclaimer {
	font-size: 14px;
	line-height: 16px;
}
footer div.footer-sub img {
	width:70px;
	margin:0 25px 0 0;
}
footer div.footer-sub a {
	color:var(--greyFive);
}
footer div.footer-sub p.copyright {
	color:#000;
	font-size:14px;
	text-align:left;
	margin:0 0 8px 0;
}
div.footer-brand-container {
	padding:10px 10px 10px 0;
	text-align: right;
}/*------------------------------------*\
	TYPOGRAPHY
\*------------------------------------*/
@font-face {
	font-family: 'title';
	src: url('fonts/poppins-semibold-webfont.woff2') format('woff2'),
		 url('fonts/poppins-semibold-webfont.woff') format('woff');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'cta';
	src: url('fonts/poppins-medium-webfont.woff2') format('woff2'),
		 url('fonts/poppins-medium-webfont.woff') format('woff');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'regular';
	src: url('fonts/poppins-regular-webfont.woff2') format('woff2'),
		 url('fonts/poppins-regular-webfont.woff') format('woff');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'italic';
	src: url('fonts/poppins-italic-webfont.woff2') format('woff2'),
		 url('fonts/poppins-italic-webfont.woff') format('woff');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'opensans-italic';
	src: url('fonts/opensans-italic-webfont.woff2') format('woff2'),
		 url('fonts/opensans-italic-webfont.woff') format('woff');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'opensans-regular';
	src: url('fonts/opensans-regular-webfont.woff2') format('woff2'),
		 url('fonts/opensans-regular-webfont.woff') format('woff');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'opensans-bold';
	src: url('fonts/opensans-bold-webfont.woff2') format('woff2'),
		 url('fonts/opensans-bold-webfont.woff') format('woff');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: 'opensans-extrabold';
	src: url('fonts/opensans-extrabold-webfont.woff2') format('woff2'),
		 url('fonts/opensans-extrabold-webfont.woff') format('woff');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}/*------------------------------------*\
	RESPONSIVE
\*------------------------------------*/
@media only screen and (max-width:1600px) {
	body.home section.landing .img-container img {
		left: 89%;
		bottom: 166px;
	}
}
@media only screen and (max-width:1500px) {
	body.about .about-img-block .box {
		bottom: 15%;
		left: 25%;
	}
}
@media only screen and (max-width:1400px) {
	/*body.home section.landing .img-container img {
		left: 88%;
		top: 150px;
	}*/
}
@media only screen and (max-width:1300px) {
	h2.overlap {
		position: relative;
		top: 0;
		right: 0;
		padding: 30px 10px;
	}
}
@media only screen and (max-width:1200px) {
	section.services-list .card .cta {
		left: 10px;
	}
	body.about .about-img-block .box {
		left: 10%;
	}
	.content-container.extra-left {
		padding: 20px 30px;
	}
}
@media only screen and (max-width:1100px) {
	body.home section.landing .img-container img {
		left: 87%;
	}
	body.home section.landing .content-container {
		padding: 40px;
	}
 	.stat-block {
		padding-left: 40px; 
	}
	section.services-list .card .cta {
		left: 0;
	}
}
@media only screen and (max-width:1024px) {			/*foundation medium breakpoint*/
	h1 {font-size: 30px;line-height: 40px;}
	h2 {font-size: 26px;line-height: 30px;}
	section,
	 .std-padding {
		padding: 60px 20px;
	}
	.less-padding {
		padding: 30px 10px;
	}
	header div.logo {
		text-align: center;
	}
	header nav ul {
		text-align: center;
	}
	body.home section.landing .img-container img {
		display: none;
	}
	body.about .about-img-block .box {
		left: 5%;
	}
	body.services .img-container .box {
		right: 16%
	}
	body.services #core-services .flex-block.one-half::before {
		display: none;
	}
}
@media only screen and (max-width:953px) {
	section.services-list .card .cta {
		bottom: 130px;
	}
}
@media only screen and (max-width:900px) {
	ul, ol {padding: 15px 0 15px 5px;}
	header .logo-block,
	 header .cta-block,
	 header .contact-btns {
		text-align: center;
	}
	header .biz-link {
		display: block;
	}
	body.home h1 {
		font-size: 30px;
		line-height: 30px;
	}
	.stat-wrapper {
		padding: 0;
	}
	.stat-wrapper .flex-block.one-half {
		width: 50%;
	}
	body.home section.landing .sm-img-block img {
		width: auto;
	}
	body.home .c-spot .card .content-container span {
		font-size: 3rem;
	}
	body.home .d-spot .img-block.sm {
	 	display: none;
	 }
	body.home .d-spot .img-block img {
		width: auto;
	}
	section.services-list .img-container {
		max-width: 500px;
	}
	section.services-list .card .cta {
		bottom: 100px;
	}
	body.about .about-img-block {
		min-height: 200px;
	}
	body.about .about-img-block .box {
		left: 0%;
		bottom: 0%;
		position: relative;
	}
	body.about .last .bg-img {
		min-height: 250px;
	}
	body.services .img-container .box {
		right: 11%
	}
	body.services #cabinets .flex-block.one-third,
	 body.services #furniture .flex-block.one-third,
	 body.services #frames .flex-block.one-third {
	 	width: 100%;
	 }
	 .flex-block.one-fifth {
	 	width: 50%;
	 }
}
@media only screen and (max-width:800px) {
	body.services .img-container .box {
		position: relative;
		transform: none;
		right: 0;
		top: 0;
		padding: 20px 30px;
		margin: 10px 0;
		max-width: max-content;
	}
}
@media only screen and (max-width:640px) { 			/*foundation small breakpoint*/
	p {font-size: 14px;line-height: 24px;}
	h1 {font-size: 26px;line-height: 32px;}
	h2 {font-size: 22px;line-height: 26px;}
	h3 {font-size: 16px;line-height: 24px;}
	ul {padding: 15px 0 15px 0;}
	ol {padding: 15px 0 15px 20px;}
	section,
	 .std-padding {
		padding: 30px 10px;
	}
	.less-padding {
		padding: 10px 2.5px;
	}

	 .flex-block.one-fifth {
	 	width: 100%;
	 }
	div.table,
	 div.table div.tableRow,
	 div.table div.tableRow div.tableHeader,
	 div.table div.tableRow div.tableCell {
		display:block;
		width:100%;
	}
	header {
		display: flex;
		flex-direction: column;
		position: relative;
		text-align: center;
	}
	header .mid {
		order: 2;
	}
	header .bot {
		order: 1;
	}
	header div#mobileGrippy {
		text-align:center;
		font-size:30px;
		cursor:pointer;
		display:inline-block;
		vertical-align: middle;
		padding:12px 6px;
		color:#222;
		position: absolute;
		top: 22px;
		right: 22px
	}
	header nav {
		display: none;
		text-align: center;
	}
	header div.logo {
		display:inline-block;
		vertical-align: top;
		width:87%;
		padding:10px 6px 0 6px;
		text-align:center;
	}
	header div.logo a {
		display:block;
		text-align:center;
	}
	a.logo img {
		max-width: 150px;
	}
	a.logo span.name {
		font-size: 15px;
		padding-left: 14px;
	}
	header nav ul {
		text-align:center;
	}
	header nav ul li {
		display: inline-block;
	}
	header nav ul li a img {
		display: none;
	}
	.cta {
		margin:6px 0;
	}
	.stat-number {
		font-size: 24px;
	}
	body.home h1 {
		font-size: 24px;
		line-height: 25px;
		padding: 0 0 20px;
	}
	body.home section.b-section .icon-container img {
		max-width: 35px;
	}
	body.home section.b-section .content-container {
		padding: 5px 10px 5px 25px;
	}
	body.home section.b-section .card h3 {
		font-size: 16px;
	}
	body.home .c-spot .card {
		min-height: 260px;
	}
	body.home .c-spot .card .content-container span {
		font-size: 2rem;
		display: block;
	}
	body.about .about-img-block .box {
		padding: 15px;
	}
	body.about .b-spot .about-img-block .box span {
		font-size: 15px;
	}
	body.about .last .bg-img {
		min-height: 200px;
	}
	body.services .img-container .box li {
		font-size: 14px;
	}
	body.services #core-services .card h3 {
		font-size: 18px;
	}
	footer {
		text-align:center;
	}
	footer .logo-block,
	 footer .biz-btns-block,
	 footer .links-block,
	 footer .hours-block,
	 footer .flex-container .flex-block ul li {
	 	text-align: center;
	}
	footer .mid {
		padding-top: 0px;
	}
	footer .med-title {
		font-size: 17px;
	}
	footer table {
		margin:0 auto;
		text-align:center;
	}
	footer .hours-container table {
		margin: 0 auto
	}
	footer div.footer-sub {
		text-align: center;
	}
	footer div.footer-sub p.copyright {
		text-align:center;
	}
	footer .footer-brand-container {
		text-align:center;
	}
}
@media only screen and (max-width:499px) {
	.stat-wrapper {
		padding-bottom: 10px;
	}
	.stat-wrapper .flex-block.one-half {
		width: 100%;
	}
	body.home section.landing .sm-img-block img {
		display: none;
	}
}/*------------------------------------*\
	MISC
\*------------------------------------*/
::selection {
	background:#04A4CC;
	color:#FFF;
	text-shadow:none;
}/*------------------------------------*\
	PRINT
\*------------------------------------*/
@media print {
	* {
		background:transparent !important;
		color:#000 !important;
		box-shadow:none !important;
		text-shadow:none !important;
	}
	a,
	a:visited {
		text-decoration:underline;
	}
	a[href]:after {
		content:" (" attr(href) ")";
	}
	abbr[title]:after {
		content:" (" attr(title) ")";
	}
	.ir a:after,
	a[href^="javascript:"]:after,
	a[href^="#"]:after {
		content:"";
	}
	pre,blockquote {
		border:1px solid #999;
		page-break-inside:avoid;
	}
	thead {
		display:table-header-group;
	}
	tr,img {
		page-break-inside:avoid;
	}
	img {
		max-width:100% !important;
	}
	@page {
		margin:0.5cm;
	}
	p,
	h2,
	h3 {
		orphans:3;
		widows:3;
	}
	h2,
	h3 {
		page-break-after:avoid;
	}
}