/*
 * Theme Name: Corporate Pro
 * Theme URI: https://seothemes.com/themes/corporate-pro/
 * Author: SEO Themes
 * Author URI: https://seothemes.com
 * Description: The Corporate Pro theme for the Genesis Framework.
 * Version: 1.1.1
 * License: GPL-3.0-or-later
 * License URI: http://www.gnu.org/licenses/gpl-3.0.html
 * Tags: one-column, two-columns, left-sidebar, right-sidebar, accessibility-ready, custom-logo, custom-background, custom-colors, custom-header, custom-menu, featured-images, full-width-template, rtl-language-support, sticky-post, theme-options, threaded-comments, translation-ready
 * Text Domain: corporate-pro
 * Domain Path: /languages
 * Template: genesis
 */
@charset 'UTF-8';
/* # Table of Contents

- Reset
	- Normalize 7.0
- Defaults
	- Box Sizing
	- Float Clearing
	- Typography
	- Headings
	- Forms
	- Objects
	- Tables
	- Accessibility
- Layout
	- Site Containers
	- Content Width
	- Column Classes
	- Gallery
	- Pricing Tables
- Common
	- Avatars
	- Genesis
	- Search Form
	- WordPress
	- Gutenberg
- Header
	- Site Header
	- Title Area
	- Before Header
	- Header Right
	- Hero Section
- Menus
	- Menus
	- Sub Menus
	- Specific Menus
	- Menu Toggle
	- Sub Menu Toggle
- Content
	- Entries
	- Entry Content
	- Entry Titles
	- Entry Meta
	- Entry Footer
	- Pagination
	- Comments
- Sidebars
	- Sidebars
	- Widgets
- Footer
	- Site Footer
	- Before Footer
	- Footer Widgets
- Plugins
	- Genesis eNews Extended
	- Genesis Portfolio Pro
	- Genesis Simple FAQ
	- Genesis Simple Share
	- Genesis Testimonial Slider
	- Google Map
	- Ninja Forms
	- SEO Slider
	- Simple Social Icons
	- WP Featherlight
	- WooCommerce Menu Cart
- Home
	- Front Page Widgets
- Print
	- Print Styles
*/
button,
hr,
input {
	overflow: visible;
}

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

progress,
sub,
sup {
	vertical-align: baseline;
}

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

html {
	line-height: 1.15;
	    -ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
}

body {
	margin: 0;
}

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

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

figure {
	margin: 1em 4rem;
}

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

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

a {
	background-color: transparent;
	-webkit-text-decoration-skip: objects;
}

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

b,
strong {
	font-weight: bolder;
}

dfn {
	font-style: italic;
}

mark {
	color: #000000;
	background-color: #fdffb6;
}

small {
	font-size: 80%;
}

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

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

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

img {
	border-style: none;
}

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

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

button,
select {
	text-transform: none;
}

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

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

[type='button']:-moz-focusring,
[type='reset']:-moz-focusring,
[type='submit']:-moz-focusring,
button:-moz-focusring {
	outline: ButtonText dotted 0.1rem;
}

fieldset {
	padding: 0.35em 0.75em 0.625em;
}

legend {
	display: table;
	max-width: 100%;
	color: inherit;
	white-space: normal;
}

textarea {
	overflow: auto;
}

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

[type='search'] {
	-webkit-appearance: textfield;
	outline-offset: -0.2rem;
}

[type='search']::-webkit-search-cancel-button,
[type='search']::-webkit-search-decoration {
	-webkit-appearance: none;
}

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

summary {
	display: list-item;
}

[hidden],
template {
	display: none;
}

/* ## Box Sizing
--------------------------------------------- */
html,
input[type='search'] {
	box-sizing: border-box;
}

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

/* ## Float Clearing
--------------------------------------------- */
.author-box,
.clearfix,
.entry,
.entry-content,
.footer-widgets,
.nav-primary,
.nav-secondary,
.pagination,
.site-container,
.site-footer,
.site-header,
.site-inner,
.widget,
.wrap {
	clear: both;
}

.author-box:before,
.author-box:after,
.clearfix:before,
.clearfix:after,
.entry:before,
.entry:after,
.entry-content:before,
.entry-content:after,
.footer-widgets:before,
.footer-widgets:after,
.nav-primary:before,
.nav-primary:after,
.nav-secondary:before,
.nav-secondary:after,
.pagination:before,
.pagination:after,
.site-container:before,
.site-container:after,
.site-footer:before,
.site-footer:after,
.site-header:before,
.site-header:after,
.site-inner:before,
.site-inner:after,
.widget:before,
.widget:after,
.wrap:before,
.wrap:after {
	display: block;
	clear: both;
	content: '';
}

/* ## Typography
--------------------------------------------- */
* {
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

::-moz-selection {
	background-color: #cbeafb;
}

::selection {
	background-color: #cbeafb;
}

html {
	overflow-x: hidden;
	max-width: 100vw;
	font-size: 62.5%;
}

body {
	overflow-x: hidden;
	max-width: 100vw;
	margin: 0;
	color: #000;
	background-color: #ffffff;
	font-family: 'Poppins';
	font-size: 1.6rem;
	font-weight: 400;
	line-height: 1.618;
	word-break: break-word;
	-webkit-font-smoothing: antialiased;
	   -moz-font-smoothing: grayscale;
	-moz-osx-font-smoothing: grayscale;
}

body.boxed-page {
	background-color: #f6f8fa;
}

body > div {
	font-size: 1.6rem;
}

p {
	margin: 0 0 1.382em;
	padding: 0;
}

a {
	color: #333;
	word-wrap: break-word;
}

a:hover,
a:focus {
	color: #cca449;
}

ol,
ul {
	margin: 0;
	padding: 0;
}

li {
	list-style-type: none;
}

hr {
	clear: both;
	margin: 0 0 2em;
	padding: 1em 0 0;
	border: 0;
	border-bottom: 1px solid #eceef1;
	border-collapse: collapse;
}

b,
strong {
	font-weight: 600;
}

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

blockquote {
	margin: 0 0 1.382em;
	padding: 0 1em;
	border-left: 2px solid #cca449;
}

blockquote p:last-of-type {
	margin-bottom: 0;
}

pre,
code,
kbd,
samp {
	font-family: 'SF Mono', 'Monaco', 'Inconsolata', 'Fira Mono', 'Droid Sans Mono', 'Source Code Pro', monospace;
}

/* ## Headings
--------------------------------------------- */
h1,
h2,
h3,
h4,
h5,
h6 {
	margin: 0 0 0.5em;
	font-weight: 700;
	line-height: 1.236;
}

h1 {
	font-size: 2.3em;
}

h2 {
	font-size: 2em;
}

h3 {
	font-size: 1.9em;
}

h4 {
	font-size: 1.8em;
}

h5 {
	font-size: 1.7em;
}

h6 {
	font-size: 1.6em;
}

/* ## Forms
--------------------------------------------- */
:focus {
	/* outline: 2px solid #eceef1; */
	outline: transparent;
}

::-moz-placeholder {
	opacity: 1;
	color: #90959f;
}

::-webkit-input-placeholder {
	color: #90959f;
}

input,
select,
textarea {
	width: 100%;
	height: 3em;
	padding: 0 1.5em;
	border: 1px solid #eceef1;
	border-radius: 9rem;
	color: #2a3139;
	background-color: #fbfcfd;
	font-family: 'Poppins';
	font-size: 1.6rem;
	font-weight: 600;
	line-height: 3;
}

input:focus,
select:focus,
textarea:focus {
	border-color: #cca449;
	outline: none;
}

textarea {
	height: auto;
	padding: 1.5em;
	border-radius: 2.5rem;
	line-height: 1.618;
}

input[type='checkbox'],
input[type='image'],
input[type='radio'] {
	width: auto;
}

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

.button,
button,
input[type='button'],
input[type='reset'],
input[type='submit'],
.wp-block-button a {
	display: inline-block;
	width: auto;
	height: 3em;
	padding: 0 3.333333em;
	border: 0;
	border-radius: 9rem;
	color: #000;
	box-shadow: 0 0.25rem 2rem -0.5rem rgba(255, 255, 255, 0);
	font-family: 'Poppins';
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 3;
	white-space: nowrap;
	text-decoration: none;
	cursor: pointer;
	transition: all 0.3s ease;
	background: #0072ff;
	background: linear-gradient(135deg, #00c6ff 0%, #0072ff 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startcolorstr="$one", endcolorstr="$two", gradienttype=1);
}

.button:hover,
.button:focus,
button:hover,
button:focus,
input[type='button']:hover,
input[type='button']:focus,
input[type='reset']:hover,
input[type='reset']:focus,
input[type='submit']:hover,
input[type='submit']:focus,
.wp-block-button a:hover,
.wp-block-button a:focus {
	color: #ffffff;
	box-shadow: 0 0.5rem 2rem -0.5rem rgba(0, 156, 255, 0.3);
}

.button.outline,
button.outline,
input[type='button'].outline,
input[type='reset'].outline,
input[type='submit'].outline,
.wp-block-button a.outline {
	color: #009cff;
	background: transparent;
	box-shadow: inset 0 0 0 2px #009cff;
}

.button.outline:hover,
.button.outline:focus,
button.outline:hover,
button.outline:focus,
input[type='button'].outline:hover,
input[type='button'].outline:focus,
input[type='reset'].outline:hover,
input[type='reset'].outline:focus,
input[type='submit'].outline:hover,
input[type='submit'].outline:focus,
.wp-block-button a.outline:hover,
.wp-block-button a.outline:focus {
	color: #ffffff;
	background-color: #009cff;
	box-shadow: none;
}

.button.white,
button.white,
input[type='button'].white,
input[type='reset'].white,
input[type='submit'].white,
.wp-block-button a.white {
	color: #2a3139;
	background: #ffffff;
	box-shadow: 0 0.25rem 2rem rgba(198, 202, 206, 0.05);
}

.button.white:hover,
.button.white:focus,
button.white:hover,
button.white:focus,
input[type='button'].white:hover,
input[type='button'].white:focus,
input[type='reset'].white:hover,
input[type='reset'].white:focus,
input[type='submit'].white:hover,
input[type='submit'].white:focus,
.wp-block-button a.white:hover,
.wp-block-button a.white:focus {
	color: #2a3139;
	background: #ffffff;
	box-shadow: 0 1rem 2rem rgba(198, 202, 206, 0.15);
}

.button.white.outline,
button.white.outline,
input[type='button'].white.outline,
input[type='reset'].white.outline,
input[type='submit'].white.outline,
.wp-block-button a.white.outline {
	color: #ffffff;
	background: transparent;
	box-shadow: inset 0 0 0 2px #ffffff;
}

.button.white.outline:hover,
.button.white.outline:focus,
button.white.outline:hover,
button.white.outline:focus,
input[type='button'].white.outline:hover,
input[type='button'].white.outline:focus,
input[type='reset'].white.outline:hover,
input[type='reset'].white.outline:focus,
input[type='submit'].white.outline:hover,
input[type='submit'].white.outline:focus,
.wp-block-button a.white.outline:hover,
.wp-block-button a.white.outline:focus {
	color: #2a3139;
	background: #ffffff;
	box-shadow: inset 0 0 0 0 #ffffff;
}

.button.small,
button.small,
input[type='button'].small,
input[type='reset'].small,
input[type='submit'].small,
.wp-block-button a.small {
	height: 2.36em;
	padding: 0 2.36em;
	font-size: 1.3rem;
	line-height: 2.36;
}

.button.large,
button.large,
input[type='button'].large,
input[type='reset'].large,
input[type='submit'].large,
.wp-block-button a.large {
	font-size: 1.9rem;
}

.button:disabled,
button:disabled,
input[type='button']:disabled,
input[type='reset']:disabled,
input[type='submit']:disabled,
.wp-block-button a:disabled {
	border-width: 0;
	color: #c6cace;
	background: #eceef1;
	box-shadow: none;
	cursor: not-allowed;
}

.button + button,
.button + .button,
button + button,
button + .button,
input[type='button'] + button,
input[type='button'] + .button,
input[type='reset'] + button,
input[type='reset'] + .button,
input[type='submit'] + button,
input[type='submit'] + .button,
.wp-block-button a + button,
.wp-block-button a + .button {
	clear: both;
	margin-top: 1em;
}

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

fieldset {
	margin-bottom: 1em;
}

/* ## Objects
--------------------------------------------- */
embed,
iframe,
img,
object,
video,
.wp-caption,
.wp-video-shortcode {
	display: block;
	max-width: 100%;
}

img {
	height: auto;
}

figure {
	margin: 0;
}

video {
	-o-object-fit: cover;
	   object-fit: cover;
}

.no-js .wp-video-shortcode {
	width: 100%;
	border: 1px solid #eceef1;
	background-color: #f6f8fa;
}

/* ## Tables
--------------------------------------------- */
table {
	width: 100%;
	margin-bottom: 4rem;
	border: 1px solid #eceef1;
	border-spacing: 0;
	border-collapse: collapse;
	background-color: #ffffff;
	line-height: 1;
}

tbody {
	border-bottom: 1px solid #eceef1;
}

td,
th {
	padding: 0.618em;
	border-top: 1px solid #eceef1;
	border-right: 1px solid #eceef1;
	text-align: left;
}

/* ## Accessibility
--------------------------------------------- */
.screen-reader-text,
.screen-reader-text span,
.screen-reader-shortcut,
.wp-custom-logo .site-title,
.wp-custom-logo .site-description {
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	position: absolute !important;
	width: 0.1rem;
	height: 0.1rem;
	border: 0;
	background-color: #ffffff;
}

.screen-reader-text:focus,
.screen-reader-shortcut:focus {
	display: block;
	clip: auto !important;
	z-index: 100000;
	width: auto;
	height: auto;
	padding: 1rem 2rem;
	box-shadow: 0 0 0.2rem 0.2rem rgba(42, 49, 57, 0.1);
	text-decoration: none;
}

.more-link {
	position: relative;
	font-style: normal;
}

.genesis-skip-link {
	margin: 0;
}

.genesis-skip-link li {
	width: 0;
	height: 0;
	list-style: none;
}

/* ## Site Containers
--------------------------------------------- */
.boxed-page .site-container {
	max-width: 1300px;
	margin: 0 auto;
	background-color: #ffffff;
	box-shadow: 0 0 0 1px #eceef1, 0 0 10rem rgba(198, 202, 206, 0.1);
}

.content-sidebar-wrap,
.wrap {
	margin: 0 auto;
	padding-right: 4vw;
	padding-left: 4vw;
}

.content-sidebar-wrap .wrap,
.wrap .wrap {
	width: auto;
	max-width: 100%;
	padding: 0;
}

.site-inner {
	clear: both;
}

.blog .site-inner,
.archive .site-inner,
.search-results .site-inner {
	background-color: #f6f8fa;
}

.page-builder .site-inner {
	border-top: 1px solid #eceef1;
	border-bottom: 1px solid #eceef1;
}

.contact-page .site-inner {
	padding-top: 6rem;
}

.content-sidebar-wrap {
	position: relative;
	z-index: 1;
	max-width: 1300px;
}

/* ## Content Widths and Positions
--------------------------------------------- */
.content {
	display: flex;
	width: 100%;
	min-height: 40rem;
	padding: 4rem 0;
	flex-wrap: wrap;
}

.front-page.page .content {
	width: 100%;
	max-width: 100%;
	margin: 0;
	padding: 0;
}

.blog .content,
.archive .content,
.search-results .content {
	margin-top: 0;
	padding: 4rem 0;
	background-color: transparent;
}

.blog .content:before,
.archive .content:before,
.search-results .content:before {
	display: none;
}

.front-page.page .content {
	background-color: transparent;
}

.page .content,
.single .content,
.error404 .content {
	position: relative;
	border-radius: 1px;
	background-color: #ffffff;
}

.page .content:before,
.single .content:before,
.error404 .content:before {
	display: none;
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	height: 40rem;
	box-shadow: 0 -5rem 10rem rgba(42, 49, 57, 0.05);
	content: '';
	pointer-events: none;
}

.sidebar-primary {
	padding-bottom: 5rem;
}

/* ## Column Classes (including fifths)
--------------------------------------------- */
.full-width {
	display: block;
	width: 100%;
	clear: both;
}

.full-width:before,
.full-width:after {
	display: block;
	clear: both;
	content: '';
}

/* ## Gallery
--------------------------------------------- */
.gallery,
.gallery-row {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.gallery a,
.gallery img {
	display: block;
}

.single .gallery {
	display: inline-flex;
	position: relative;
	left: 50%;
	width: 100vw;
	max-width: 768px;
	margin: 1.618em auto;
	-webkit-transform: translate(-50%);
	        transform: translate(-50%);
}

.gallery-caption {
	display: block;
}

.gallery-item {
	display: block;
	width: 100%;
	margin: 0 0 4vw;
	text-align: center;
}

/* ## Pricing Tables
--------------------------------------------- */
.pricing-table {
	display: flex;
	margin: 0 auto;
	border: 1px solid #eceef1;
	border-radius: 3px;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	clear: both;
}

.pricing-table:before,
.pricing-table:after {
	display: block;
	clear: both;
	content: '';
}

.pricing-table + .pricing-table {
	margin: 5rem auto;
}

.pricing-table + hr {
	margin: 5rem 0;
	padding: 0;
}

.pricing-table div {
	padding: 3rem;
	border-radius: 3px;
	text-align: center;
}

.pricing-table div ul {
	margin: 1em 0;
}

.pricing-table div ul li {
	margin: 0;
	list-style-type: none;
}

.pricing-table .featured {
	border: 1px solid #eceef1;
	background-color: #ffffff;
	box-shadow: 0 2rem 5rem -1rem rgba(42, 49, 57, 0.0618);
	-webkit-transform: scale(1.05);
	        transform: scale(1.05);
}

.pricing-table h4 {
	font-size: 2rem;
}

.pricing-table p {
	position: relative;
	max-width: 768px;
	margin: 0 auto;
	padding: 0 5%;
}

.pricing-table strong {
	display: block;
	color: #009cff;
	font-size: 2.8em;
	font-weight: 700;
}

.pricing-table em {
	display: block;
	color: #4d5968;
	font-size: small;
}

.pricing-table button,
.pricing-table .button {
	margin-bottom: 0.5em;
}

.pricing-table .one-fourth strong {
	font-size: 2.4em;
}

.pricing-table .one-fourth button,
.pricing-table .one-fourth .button {
	padding-right: 2em;
	padding-left: 2em;
}

/* ## Avatars
--------------------------------------------- */
.avatar {
	float: left;
	margin-right: 2rem;
	border-radius: 50%;
}

.alignright .avatar {
	margin-left: 2rem;
}

/* ## Genesis
--------------------------------------------- */
.breadcrumb {
	width: 100%;
	padding: 1rem 0 0;
	color: #000;
	font-size: 1.4rem;
	text-align: center;
	font-weight: 500;
}

.breadcrumb a {
	color: #000;
	text-decoration: none;
	font-weight: 500;
}

.breadcrumb a:hover,
.breadcrumb a:focus {
	text-decoration: underline;
}

.breadcrumbs-section {
	padding-left: 8rem;
	padding-bottom: 1rem;
}

.after-entry {
	width: 100%;
	margin: 2rem auto;
	padding: 4vw;
	border: 1px solid #eceef1;
	border-radius: 3px;
	background-color: #f6f8fa;
	text-align: center;
}

.after-entry .enews form {
	display: flex;
	margin: 1em 0 0;
	flex-wrap: wrap;
	justify-content: center;
}

.after-entry .enews input {
	width: 100%;
	margin-bottom: 1em;
	background-color: #ffffff;
}

.author-box {
	width: 100%;
	max-width: 768px;
	padding: 4vw 0;
}

.author .author-box {
	max-width: 100%;
	margin-bottom: 4rem;
	padding: 4rem;
	border: 1px solid #eceef1;
	border-radius: 3px;
	background-color: #ffffff;
}

.author-box p {
	color: #4d5968;
}

.author-box p:last-of-type {
	margin-bottom: 0;
}

.author-box-title {
	margin-bottom: 0;
	font-size: 2rem;
}

/* ## Search Form
--------------------------------------------- */
.search-form {
	display: flex;
	position: relative;
	width: 100%;
	align-items: center;
	justify-content: flex-start;
	clear: both;
}

.search-form:before,
.search-form:after {
	display: block;
	clear: both;
	content: '';
}

.search-form .search-toggle {
	display: none;
	width: 2.5rem;
	height: 2.5rem;
	background: center/1.75rem no-repeat url(assets/images/search.svg);
	cursor: pointer;
}

.shrink .search-form .search-toggle {
	background-image: url(assets/images/search.svg);
}

.search-form .search-toggle.active {
	background-image: url(assets/images/close.svg);
	background-size: 1.4rem;
}

.shrink .search-form .search-toggle.active {
	background-image: url(assets/images/close.svg);
}

.search-form input[type='search'] {
	width: 30rem;
	margin-right: 1em;
	background-color: rgba(255, 255, 255, 0.2);
}

.site-header .search-form input[type='search'] {
	display: block;
	max-width: 79vw;
	background-color: #f6f8fa;
}

.site-header.shrink .search-form input[type='search'] {
	border: 1px solid #eceef1;
	color: #2a3139;
}

.entry-content .search-form input[type='search'] {
	background-color: #f6f8fa;
}

.search-form input[type='submit'] {
	display: none;
}

.entry .search-form {
	margin-bottom: 4rem;
}

/* ## WordPress
--------------------------------------------- */
a.aligncenter img {
	display: block;
	margin: 0 auto;
}

a.alignnone {
	display: inline-block;
}

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

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

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

img.centered,
.aligncenter {
	display: block;
	margin: 0 auto 1em;
}

img.alignnone,
.alignnone {
	margin-bottom: 1em;
}

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

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

.wp-caption-text {
	margin: 0;
	font-size: 1.4rem;
	text-align: center;
}

.entry-content p.wp-caption-text {
	margin-bottom: 0;
}

.entry-content .wp-audio-shortcode,
.entry-content .wp-playlist,
.entry-content .wp-video {
	margin: 0 0 1em;
}

.sticky,
.bypostauthor {
	background-color: transparent;
}

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

/* ## Gutenberg
--------------------------------------------- */
.full-width-content .alignwide {
	position: relative;
	left: 50%;
	width: 100vw;
	max-width: 896px;
	-webkit-transform: translate(-50%);
	        transform: translate(-50%);
}

.full-width-content .alignwide img {
	display: inline-block;
	margin: 1.618em auto;
}

.full-width-content .alignfull {
	position: relative;
	left: 50%;
	width: 100vw;
	max-width: none;
	margin-left: -50vw;
}

.content-sidebar .full-width-content .alignfull,
.sidebar-content .full-width-content .alignfull {
	max-width: calc(100% + 12rem);
}

.full-width-content .alignfull img {
	display: inline-block;
	width: 100%;
	margin: 1.618em auto;
}

.wp-block-image figcaption {
	margin: 0 auto 2em;
}

.wp-block-button {
	display: block;
	width: 100%;
	background: transparent;
	text-align: center;
	clear: both;
}

.wp-block-button:before,
.wp-block-button:after {
	display: block;
	clear: both;
	content: '';
}

.wp-block-button a {
	display: inline-block;
}

.wp-block-button a:hover,
.wp-block-button a:focus {
	color: #ffffff;
}

.wp-block-pullquote > p {
	font-family: 'Poppins';
	font-weight: 400;
}

.wp-block-pullquote cite {
	font-style: normal;
}

.wp-block-gallery .blocks-gallery-image {
	margin-right: 0;
}

.blocks-gallery-image {
	display: block;
	width: 100%;
	margin: 0 0 4vw;
	text-align: center;
}

/* ## Site Header
--------------------------------------------- */
.site-header {
	position: relative;
	z-index: 100;
	width: 100%;
	border-bottom: 1px solid rgba(198, 202, 206, 0.3);
	background-color: #ffffff;
	transition: all 0.3s ease;
}

.js.has-sticky-header .site-header {
	position: fixed;
	top: 0;
}

.js.has-sticky-header .site-header.shrink {
	background-color: #ffffff;
	box-shadow: 0 0 4rem rgba(42, 49, 57, 0.05);
}

.boxed-page .site-header {
	max-width: 1300px;
	margin: 0 auto;
}

.contact-page .site-header {
	background-color: #ffffff;
}

.site-header > .wrap {
	display: flex;
	position: relative;
	height: 6rem;
	transition: height 0.3s ease;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
}

.no-js .site-header > .wrap {
	height: auto;
	padding: 3rem 4vw;
}

/* ## Title Area
--------------------------------------------- */
.title-area {
	display: block;
	position: relative;
	width: 15rem;
	margin: 0 auto 0 0;
}

.site-title {
	margin-bottom: 0;
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1;
}

.site-title a {
	color: #2a3139;
	text-decoration: none;
	transition: all 0.3s ease;
}

.shrink .site-title a {
	color: #2a3139;
}

.site-description {
	margin-bottom: 0;
	opacity: 0.618;
	font-size: 1.4rem;
	line-height: 1;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	position: absolute !important;
	width: 0.1rem;
	height: 0.1rem;
	border: 0;
	background-color: #ffffff;
}

.custom-logo {
	display: block;
}

.shrink .custom-logo {
	display: block;
}

.secondary-logo {
	display: none;
}

.shrink .secondary-logo {
	display: none;
}

/* ## Before Header
--------------------------------------------- */
.before-header {
	display: flex;
	position: relative;
	height: 4rem;
	border-top: 1px solid rgba(198, 202, 206, 0.3);
	border-bottom: 1px solid rgba(198, 202, 206, 0.3);
	color: #3f454c;
	background-color: #f6f8fa;
	font-size: 1.2rem;
	flex-wrap: wrap;
	align-items: center;
	transition: all 0.3s ease;
}

.no-js .before-header {
	height: auto;
	padding-top: 1rem;
	padding-bottom: 1rem;
}

.menu .before-header {
	display: flex;
	width: 100%;
	height: auto;
	margin: 3em 0 0;
	padding: 3em 0 0;
	border-bottom: none;
	background-color: transparent;
	clear: both;
}

.menu .before-header:before,
.menu .before-header:after {
	display: block;
	clear: both;
	content: '';
}

.menu .before-header .widget {
	margin-bottom: 1em;
}

.menu .before-header .simple-social-icons {
	margin-left: -0.5em;
}

.menu .before-header .simple-social-icons a {
	margin: 0 0.5em 0 0;
}

.before-header .wrap {
	display: flex;
	width: 100%;
	flex-wrap: wrap;
	justify-content: space-between;
}

.before-header .wrap:before,
.before-header .wrap:after {
	display: none;
}

.before-header .widget {
	display: flex;
	margin-bottom: 0;
	align-items: center;
}

.before-header .widget:last-of-type {
	margin-bottom: 0;
}

.before-header .widget-wrap {
	width: 100%;
}

.before-header p {
	display: flex;
	align-items: center;
}

.before-header .fa {
	margin-right: 0.5em;
}

.before-header .fa:before {
	line-height: 1.618;
}

/* ## Header Right
--------------------------------------------- */
.header-widget-area {
	display: none;
	margin: 0 1em 0 0;
}

.header-widget-area .widget:last-of-type {
	margin-bottom: 0;
}

/* ## Hero Section
--------------------------------------------- */
.hero-section {
	position: relative;
	padding: 4rem 0;
	border-bottom: 1px solid #eceef1;
	background-color: #f6f8fa;
	background-position: center;
	background-size: cover;
	text-align: center;
}

.hero-section:before {
	display: block !important;
	position: absolute;
	z-index: 1;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(42, 49, 57, 0.5);
	content: '';
	pointer-events: none;
	transition: all 0.3s ease;
}

.hero-section .wrap {
	position: relative;
	z-index: 2;
}

.hero-section h1 {
	width: 100%;
	margin: 0 auto;
	color: #ffffff;
	text-align: center;
}

.hero-section p {
	width: 100%;
	max-width: 512px;
	margin: 0.5em auto 0;
	color: #ffffff;
	text-align: center;
}

.hero-section a {
	color: #f6f8fa;
}

.hero-section a:hover,
.hero-section a:focus {
	color: #009cff;
}

/* ## Custom Header
--------------------------------------------- */
.wp-custom-header {
	overflow: hidden;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	margin: auto;
	pointer-events: none;
	-o-object-fit: cover;
	   object-fit: cover;
	-o-object-position: center;
	   object-position: center;
}

.woocommerce .wp-custom-header img,
.wp-custom-header img,
.wp-custom-header video,
.wp-custom-header iframe {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	   object-fit: cover;
	-o-object-position: center center;
	   object-position: center center;
}

.wp-custom-header iframe {
	position: absolute;
	top: -20%;
	right: -20%;
	bottom: -20%;
	left: -20%;
	width: 140%;
	min-width: 100%;
	max-width: 140%;
	height: 140%;
	min-height: 56.25vw;
	max-height: none;
	margin: auto;
}

.wp-custom-header img {
	display: none;
}

.wp-custom-header-video-button {
	display: none;
}

/* ## Menus
--------------------------------------------- */
.menu {
	display: flex;
	width: 100%;
	font-size: 1.6rem;
	font-weight: 600;
	text-align: left;
	flex-wrap: wrap;
	align-items: center;
	clear: both;
}

.menu:before,
.menu:after {
	display: block;
	clear: both;
	content: '';
}

.menu .right {
	margin-left: auto;
}

.menu .rss,
.menu .date,
.menu .search,
.menu .twitter {
	display: flex;
	margin-top: 1em;
	margin-left: 0;
	align-items: center;
}

.menu .rss {
	margin-left: 0;
}

.menu .rss a {
	margin-left: 1em;
}

.menu-item {
	display: block;
	position: relative;
	width: 100%;
	padding: 1rem 0;
	order: -1;
}

.menu-item.button {
	display: flex;
	margin: 1em 0;
	padding: 0;
	background: transparent;
	box-shadow: none;
	font-size: 1.2rem;
	align-items: center;
}

.menu-item.button:last-of-type a {
	padding-right: 3em;
}

.menu-item.button a {
	background: #0072ff;
	background: linear-gradient(135deg, #00c6ff 0%, #0072ff 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startcolorstr="$one", endcolorstr="$two", gradienttype=1);
	padding: 1em 3em;
	border-radius: 9rem;
	color: #ffffff;
}

.shrink .menu-item.button a {
	color: #ffffff;
}

.menu-item.button a:hover,
.menu-item.button a:focus,
.menu-item.button.current-menu-item > a {
	color: #ffffff;
	box-shadow: inset 0 0 0 9rem rgba(0, 17, 51, 0.1);
}

.menu-item a {
	display: inline-block;
	margin: 2px;
	color: #2a3139;
	text-decoration: none;
	transition: all 0.3s ease;
}

.menu-item a:hover,
.menu-item a:focus,
.menu-item.current-menu-item > a {
	color: #009cff;
}

.menu-item span {
	display: block;
}

/* ## Sub Menus
--------------------------------------------- */
.sub-menu {
	display: none;
	clear: both;
}

.sub-menu:before,
.sub-menu:after {
	display: block;
	clear: both;
	content: '';
}

.sub-menu:before {
	display: none;
	position: absolute;
	z-index: 98;
	top: -0.5rem;
	left: 3rem;
	width: 1rem;
	height: 1rem;
	border-top: 1px solid #eceef1;
	border-left: 1px solid #eceef1;
	opacity: 1;
	background-color: #f6f8fa;
	content: '';
	transition-delay: 0.3s;
	-webkit-transform: rotate(45deg);
	        transform: rotate(45deg);
}

.sub-menu .menu-item {
	width: 100%;
	height: auto;
	padding: 0.5em 0;
}

.sub-menu .menu-item:first-of-type {
	margin-top: 1em;
}

.sub-menu a {
	padding-left: 0.618em;
}

.sub-menu .sub-menu {
	padding-left: 1em;
}

/* ## Specific Menus
--------------------------------------------- */
.nav-primary,
.nav-secondary {
	overflow: auto;
	position: fixed;
	top: 0;
	right: -40rem;
	bottom: 0;
	width: 93vw;
	max-width: 40rem;
	height: 100vh;
	margin: 0;
	padding: 0 4rem;
	border-top: 1px solid #eceef1;
	border-bottom: 1px solid #eceef1;
	background-color: #ffffff;
	transition: all 0.3s ease;
}

.nav-primary.activated,
.nav-secondary.activated {
	right: 0;
	left: auto;
	box-shadow: 0 0 4rem rgba(42, 49, 57, 0.2);
}

.no-js .nav-primary,
.no-js
.nav-secondary {
	display: block;
	position: relative;
	right: auto;
	width: 100%;
	height: auto;
	padding: 0;
	border: 0;
}

.no-js .nav-primary .wrap,
.no-js
.nav-secondary .wrap {
	padding: 0;
}

.no-js .nav-primary .menu,
.no-js
.nav-secondary .menu {
	padding: 0;
}

.no-js .nav-primary .menu-item,
.no-js
.nav-secondary .menu-item {
	display: inline-flex;
	width: auto;
	padding-right: 1rem;
}

.nav-primary .menu,
.nav-secondary .menu {
	position: relative;
	padding: 5em 0 7.5em;
}

.nav-secondary {
	width: 100%;
}

.nav-secondary .sub-menu .menu-item {
	height: auto;
}

.site-footer .menu {
	display: block;
    column-count: 2;
	align-items: flex-start;
	justify-content: flex-start;
	margin-bottom: 0;
	font-size: 1.4rem;
	line-height: 3rem;
	flex-wrap: wrap;
}

.site-footer .menu-footer-areas-served-menu-container > .menu {
    display: flex;
}

.site-footer .menu-item {
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
	flex: 1 1 50%;
}

.site-footer .menu-item:last-of-type {
	margin-bottom: 0;
}

/* .site-footer .menu-item:last-of-type a {
	margin-bottom: 2px;
} */

.site-footer .menu-item a {
	margin-bottom: 1em;
	padding: 0;
	color: #fff;
}

.site-footer .menu-item a:hover,
.site-footer .menu-item a:focus,
.site-footer .menu-item.current-menu-item > a {
	color: #cca449;
}

.site-footer ul.wp-block-social-links.has-icon-color.is-style-logos-only.is-layout-flex.wp-block-social-links-is-layout-flex {
	margin-left: 1rem;
}

.site-footer .phone-cta {
	margin-left: 1.5rem;
}

.site-footer a.phone-cta--link {
	margin-top: 1rem;
}

.site-footer .wp-block-social-links {
	margin-top: 1rem;
}

.site-footer .tto-custom-button a {
	margin-left: 1.5rem;
	border: solid 2px #fff;
}

.site-footer ul.wp-block-social-links svg {
	font-size: 4rem;	
}

.site-footer-credits.standalone {
	background-color: #cca449;
	padding: 1.5rem 0;
}

.footer-credits p {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 1rem;
	font-size: 1.5rem;
	font-weight: 500;
}

.footer-credits p .separator {
	font-size: 2rem;
	line-height: 0;
	margin: 0 0 0.25rem;
}

footer.site-footer div.site-footer-credits div.wrap section div.footer-credits {
	margin-top: 1rem;
}

.site-footer iframe {
	width: 218px;
	height: 218px;
	margin: 1.5rem;
}

.site-footer .wp-block-image {
	margin-bottom: 0;
}

.gb-block-layout-column:nth-child(1) {
	position: relative;
}

.site-footer .gb-block-layout-column:nth-child(1)::before {
	content: "";
	display: block;
	height: 100%;
	width: 1px;
	background-color: #cca449;
	position: absolute;
	right: 15%;
	top: 0;
}


.site-footer .gb-block-layout-column:nth-child(3) ul.menu {
	line-height: 2.1rem;
}


/* ## Menu Toggle
--------------------------------------------- */
.menu-toggle {
	display: block;
	position: relative;
	z-index: 1;
	height: auto;
	margin-right: -0.5em;
	padding: 1em 0.5em;
	color: #2a3139;
	background: transparent;
	box-shadow: none;
	cursor: pointer;
}

.menu-toggle:hover,
.menu-toggle:focus {
	color: #2a3139;
	background: none;
	box-shadow: none;
}

.menu-toggle.activated {
	position: fixed;
	right: 4vw;
}

.menu-toggle.activated,
.shrink .menu-toggle {
	color: #2a3139;
}

.menu-toggle.activated span,
.shrink .menu-toggle span {
	background: #fff;
}

.menu-toggle.activated span:before,
.menu-toggle.activated span:after,
.shrink .menu-toggle span:before,
.shrink .menu-toggle span:after {
	background: #fff;
}

.menu-toggle span {
	display: block;
	float: right;
	position: relative;
	width: 2rem;
	height: 2px;
	border-radius: 3px;
	background: #2a3139;
}

.menu-toggle span:before,
.menu-toggle span:after {
	display: block;
	position: absolute;
	left: 0;
	width: 100%;
	height: 2px;
	border-radius: 3px;
	background-color: #2a3139;
	content: ' ';
}

.menu-toggle span:before {
	top: -0.5rem;
	transition: top 0.2s 0.2s, -webkit-transform 0.2s 0s;
	transition: top 0.2s 0.2s, transform 0.2s 0s;
	transition: top 0.2s 0.2s, transform 0.2s 0s, -webkit-transform 0.2s 0s;
}

.menu-toggle span:after {
	bottom: -0.5rem;
	transition: bottom 0.2s 0.2s, -webkit-transform 0.2s 0s;
	transition: bottom 0.2s 0.2s, transform 0.2s 0s;
	transition: bottom 0.2s 0.2s, transform 0.2s 0s, -webkit-transform 0.2s 0s;
}

.menu-toggle.activated span {
	background: none;
}

.menu-toggle.activated span:before {
	top: 0;
	transition: top 0.2s 0s, -webkit-transform 0.2s 0.2s;
	transition: top 0.2s 0s, transform 0.2s 0.2s;
	transition: top 0.2s 0s, transform 0.2s 0.2s, -webkit-transform 0.2s 0.2s;
	-webkit-transform: rotate(45deg);
	        transform: rotate(45deg);
}

.menu-toggle.activated span:after {
	bottom: 0;
	transition: bottom 0.2s 0s, -webkit-transform 0.2s 0.2s;
	transition: bottom 0.2s 0s, transform 0.2s 0.2s;
	transition: bottom 0.2s 0s, transform 0.2s 0.2s, -webkit-transform 0.2s 0.2s;
	-webkit-transform: rotate(-45deg);
	        transform: rotate(-45deg);
}

/* ## Sub Menu Toggle
--------------------------------------------- */
.sub-menu-toggle {
	position: absolute;
	top: 0.1em;
	right: 3em;
	height: auto;
	margin: 0 -1em;
	padding: 1em;
	background: none;
	box-shadow: none;
}

.sub-menu-toggle:hover,
.sub-menu-toggle:focus {
	background: none;
	box-shadow: none;
}

.sub-menu-toggle:focus {
	outline: 2px solid #eceef1;
}

.sub-menu-toggle:before {
	display: block;
	margin: 0.2rem 0 -0.2rem;
	border: 0.4rem solid transparent;
	border-top-color: #2a3139;
	content: '';
}

.sub-menu-toggle.activated:before {
	margin: -0.2rem 0 0.2rem;
	-webkit-transform: rotate(180deg);
	        transform: rotate(180deg);
}

/* ## Entries
--------------------------------------------- */
.content .entry {
	position: relative;
	margin-bottom: 4vw;
	border: 1px solid #eceef1;
	background-color: #ffffff;
}

.content .entry:last-of-type {
	margin-bottom: 0;
}

.page .content .entry,
.single .content .entry,
.error404 .content .entry {
	width: 100%;
	border: 0;
}

.front-page .content .entry.post,
.blog .content .entry,
.archive .content .entry,
.search-results .content .entry {
	width: 100%;
	margin-bottom: 4vw;
	padding: 3rem;
	border: 1px solid #eceef1;
	border-radius: 3px;
	transition: all 0.3s ease;
}

.front-page .content .entry.post:hover,
.front-page .content .entry.post:focus,
.blog .content .entry:hover,
.blog .content .entry:focus,
.archive .content .entry:hover,
.archive .content .entry:focus,
.search-results .content .entry:hover,
.search-results .content .entry:focus {
	box-shadow: 0 2rem 6rem rgba(198, 202, 206, 0.2);
}

.search-no-results .content .entry {
	border: 0;
}

/* ## Entry Content
--------------------------------------------- */
.entry-content p {
	color: #4d5968;
}

.entry-content p a:not(.button) {
	color: #4d5968;
	box-shadow: inset 0 -1.5px 0 #009cff;
	text-decoration: none;
	transition: all 0.3s ease;
}

.entry-content p a:not(.button):hover,
.entry-content p a:not(.button):focus {
	color: #009cff;
}

.entry-content h2,
.entry-content h3,
.entry-content h4,
.entry-content h5,
.entry-content h6 {
	padding-top: 0.618em;
}

.entry-content ol,
.entry-content ul {
	margin-bottom: 1.618em;
	margin-left: 4rem;
	color: #4d5968;
	line-height: 2;
}

.error404 .entry-content ol,
.error404
.entry-content ul {
	margin-bottom: 4rem;
}

.entry-content ol > li {
	list-style-type: decimal;
}

.entry-content ul > li {
	list-style-type: disc;
}

.entry-content ol ol,
.entry-content ul ul {
	margin-bottom: 0;
}

.entry-content li li {
	list-style-type: circle;
}

.entry-content code {
	padding: 0.4rem 0.8rem;
	border: 1px solid #eceef1;
	background-color: #f6f8fa;
	font-size: 1.4rem;
	line-height: 2;
}

.entry-content pre {
	display: block;
	margin: 0 0 1.382em;
	padding: 1rem 2rem;
	border: 1px solid #eceef1;
	border-radius: 3px;
	background-color: #f6f8fa;
	font-size: 1.4rem;
}

.entry-content pre code {
	padding: 0;
	border: none;
	background-color: transparent;
}

.entry-content input,
.entry-content select,
.entry-content textarea {
	margin-bottom: 1em;
}

.entry-content iframe,
.entry-content video {
	width: 100%;
}

.entry-content blockquote {
	display: block;
	position: relative;
	left: 50%;
	width: 896px;
	max-width: 100vw;
	margin: 3em 0;
	padding: 0 6rem 2em;
	border: 0;
	border-top: 1px solid #eceef1;
	border-bottom: 1px solid #eceef1;
	background-color: #ffffff;
	text-align: center;
	-webkit-transform: translate(-50%);
	        transform: translate(-50%);
}

.entry-content blockquote:before {
	display: block;
	width: 1em;
	margin: -0.25em auto;
	color: rgba(42, 49, 57, 0.2);
	background-color: #ffffff;
	font-family: 'Poppins';
	font-size: 8rem;
	line-height: 1;
	content: '“';
}

.entry-image-link {
	display: block;
	margin-bottom: 1em;
	clear: both;
}

.entry-image-link:before,
.entry-image-link:after {
	display: block;
	clear: both;
	content: '';
}

.blog .entry-image-link,
.archive .entry-image-link,
.search-results .entry-image-link {
	display: block;
	width: calc(100% + 6rem + 0.2rem);
	margin: -3.1rem -3.1rem 3rem;
	border-radius: 3px 3px 0 0;
}

.entry-image-link img {
	display: block;
	margin: 0;
	border-radius: 3px 3px 0 0;
}

/* ## Entry Titles
--------------------------------------------- */
.entry-title a {
	display: block;
	color: #2a3139;
	font-size: 2rem;
	text-decoration: none;
	transition: all 0.3s ease;
}

.entry-title a:hover,
.entry-title a:focus {
	color: #009cff;
}

/* ## Entry Meta
--------------------------------------------- */
.entry-meta {
	width: 100%;
	font-size: small;
}

.entry-footer .entry-meta {
	margin-bottom: 0;
}

.entry-categories,
.entry-tags {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	margin-top: 0.2em;
}

.entry-categories img,
.entry-tags img {
	display: inline-flex;
	opacity: 0.618;
}

.entry-categories a,
.entry-tags a {
	display: inline-flex;
	margin-left: 0.2em;
	font-weight: 600;
	transition: all 0.3s ease;
}

.entry-author-name {
	text-transform: capitalize;
}

.archive-description {
	width: 100vw;
	margin-right: calc(50% - 50vw);
	margin-left: calc(50% - 50vw);
	padding: 15rem 0;
	border-bottom: 1px solid #eceef1;
	background-color: #c6cace;
}

.archive-description h1 {
	max-width: 512px;
	margin: 0 auto;
	color: #ffffff;
	text-align: center;
}

/* ## Entry Footer
--------------------------------------------- */
.entry-footer {
	margin-top: 5vw;
	padding: 5vw 0;
	border-top: 1px solid #eceef1;
	border-bottom: 1px solid #eceef1;
}

.blog .entry-footer,
.archive .entry-footer,
.search-results .entry-footer {
	margin: 0;
	padding: 0;
	border: 0;
}

.single-portfolio .entry-footer {
	display: none;
}

/* ## Pagination
--------------------------------------------- */
.pagination {
	padding: 4vw 0;
	clear: both;
}

.pagination:before,
.pagination:after {
	display: block;
	clear: both;
	content: '';
}

.adjacent-entry-pagination {
	padding-bottom: 0;
}

.archive-pagination {
	width: 100%;
}

.archive-pagination ul {
	display: flex;
	justify-content: center;
}

.archive-pagination li {
	margin: 0 0.25em 0 0;
}

.archive-pagination a {
	display: block;
	padding: 0.5rem 1rem;
	border-radius: 3px;
	color: #2a3139;
	font-size: 1.6rem;
	text-decoration: none;
	transition: all 0.3s ease;
}

.archive-pagination a:hover,
.archive-pagination a:focus {
	color: #009cff;
}

.archive-pagination .active a {
	background: #0072ff;
	background: linear-gradient(135deg, #00c6ff 0%, #0072ff 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startcolorstr="$one", endcolorstr="$two", gradienttype=1);
	color: #ffffff;
}

/* ## Comments
--------------------------------------------- */
.comment-respond,
.entry-comments,
.entry-pings {
	width: 100%;
	max-width: 768px;
	margin: 0 auto;
	padding: 4vw 0;
	border-radius: 3px;
	font-size: 1.6rem;
}

.comment-respond .form-submit {
	margin-bottom: 0;
}

.comment-respond label {
	display: block;
	width: 100%;
	margin-bottom: 1em;
}

.comment-respond input,
.comment-respond textarea {
	display: block;
	width: 100%;
}

.comment-respond input[type='submit'] {
	width: auto;
}

.comment-author span:first-of-type {
	font-weight: 700;
	text-transform: capitalize;
}

.comment-list li {
	padding: 4rem 0 0 5vw;
}

.comment-list .depth-1 {
	padding-left: 0;
}

.comment-list .comment-respond {
	padding-left: 5vw;
}

.comment-list > .comment-respond {
	padding-left: 0;
}

.comment-header {
	margin-bottom: 5vw;
}

.comment-header p {
	margin-bottom: 0;
}

.comment-edit-link {
	padding-left: calc(4.8rem + 1em);
}

.entry-pings .comment-edit-link {
	display: block;
	clear: both;
	padding: 0;
}

.comment-meta {
	padding-left: calc(4.8rem + 1em);
	word-break: break-all;
}

.entry-pings .comment-meta {
	padding: 0 0 1em;
}

.comment-meta .comment-time a {
	color: #c6cace;
	font-size: small;
	text-decoration: none;
}

.comment-content {
	clear: both;
}

.comment-content ul > li {
	list-style-type: disc;
}

.comment-respond input[type='email'] label,
.comment-respond input[type='text'] label,
.comment-respond input[type='url'] label {
	display: block;
	margin-right: 1rem;
}

.comment-reply-title a {
	font-size: 1.5rem;
}

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

.pingback:last-of-type p {
	margin-bottom: 0;
}

/* ## Sidebars
--------------------------------------------- */
.sidebar {
	position: relative;
	z-index: 1;
}

.sidebar ol,
.sidebar ul {
	margin-left: 1em;
	color: #4d5968;
	line-height: 2;
}

.sidebar ol > li {
	list-style-type: decimal;
}

.sidebar ul > li {
	list-style-type: disc;
}

.sidebar li li {
	list-style-type: circle;
}

.sidebar a {
	color: #3f454c;
}

.sidebar a:hover,
.sidebar a:focus {
	color: #009cff;
}

/* ## Widgets
--------------------------------------------- */
.sidebar .widget {
	padding: 3.5vw 0;
	font-size: 1.5rem;
}

.sidebar .widget:first-of-type {
	padding-top: 0;
}

.blog .sidebar .widget,
.archive .sidebar .widget {
	margin-bottom: 7vw;
	padding: 3.5vw;
	border: 1px solid #eceef1;
	border-radius: 3px;
	background-color: #ffffff;
}

.widget_calendar table {
	width: 100%;
}

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

/* ## Site Footer
--------------------------------------------- */
.site-footer {
	position: relative;
	width: 100%;
	border-top: 1px solid #eceef1;
	color: #fff;
}

.site-footer a {
	color: #fff;
}

.site-footer a:hover,
.site-footer a:focus {
	color: #8e8e8e;
}

.site-footer .button {
	color: #000;
}

.site-footer .button:hover,
.site-footer .button:focus {
	color: #ffffff;
}

.site-footer .button.outline {
	color: #009cff;
}

.site-footer .button.outline:hover,
.site-footer .button.outline:focus {
	color: #ffffff;
}

.site-footer .button.white {
	color: #2a3139;
}

.site-footer .button.white:hover,
.site-footer .button.white:focus {
	color: #2a3139;
}

.site-footer .button.white.outline {
	color: #ffffff;
}

.site-footer .button.white.outline:hover,
.site-footer .button.white.outline:focus {
	color: #2a3139;
}

.site-footer .button:disabled {
	color: #c6cace;
}

/* ## Before Footer
--------------------------------------------- */
.before-footer {
	padding: 5rem 0;
	border-bottom: 1px solid #eceef1;
	background-color: #f6f8fa;
}

.blog .before-footer,
.archive .before-footer,
.search-results .before-footer {
	background-color: #ffffff;
}

.before-footer .wrap {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
}

.before-footer .wrap:before,
.before-footer .wrap:after {
	display: none;
}

.before-footer .widget {
	margin-bottom: 0;
}

.before-footer .widget:last-of-type {
	margin-bottom: 0;
}

.before-footer h2,
.before-footer h3,
.before-footer h4,
.before-footer h5,
.before-footer h6 {
	color: #2a3139;
}

/* ## Footer Widgets
--------------------------------------------- */
.footer-widgets {
	position: relative;
	padding: 5rem 0 0;
	font-size: 1.5rem;
}

.footer-widgets .widget-title {
	margin-bottom: 1em;
	color: #2a3139;
	font-size: 1.6rem;
}

.footer-widgets .widget-area {
	margin: 0 auto 4rem;
}

.footer-widgets .widget-area.footer-widgets-1 i {
	display: inline-block;
	float: left;
	margin-top: 0.2em;
	margin-right: 0.618em;
}

.footer-widgets .widget-area.footer-widgets-2 {
	display: flex;
}

.footer-widgets .widget-area.footer-widgets-2 .widget {
	width: 48.71795%;
}

.footer-widgets .widget-area .widget {
	display: block;
	margin-bottom: 4rem;
}

.footer-widgets .widget-area .widget:last-of-type {
	margin-bottom: 0;
}

.footer-widgets .widget-area .widget.widget_nav_menu {
	margin-bottom: 0;
}

/* ## Footer Credits
--------------------------------------------- */
.footer-credits {
	display: flex;
	width: 100%;
	margin: 0;
	font-size: 1.5rem;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	align-content: center;
}

.footer-credits .wrap {
	padding: 4rem 0;
	border-top: 1px solid #eceef1;
}

.footer-credits .simple-social-icons {
	margin-bottom: 1em;
	margin-left: -1em;
}

.footer-credits .menu-item {
	width: auto;
	margin-left: 2em;
}

.footer-credits p {
	margin-bottom: 0;
}

/* ## Genesis eNews Extended
--------------------------------------------- */
.sidebar .enews input {
	margin-bottom: 1em;
}

.site-footer .enews form {
	position: relative;
	margin-top: 0.618em;
}

.site-footer .enews input[type='text'],
.site-footer .enews input[type='email'] {
	margin-top: 1rem;
}

.site-footer .enews input[type='submit'] {
	position: absolute;
	right: 0;
	bottom: 0;
	padding-right: 0;
	color: transparent;
	background: transparent;
	box-shadow: none;
}

.site-footer .enews input[type='submit']:hover + .send-icon,
.site-footer .enews input[type='submit']:focus + .send-icon {
	opacity: 1;
}

.site-footer .enews .send-icon {
	display: block;
	position: absolute;
	right: 2em;
	bottom: 1em;
	width: 1.8rem;
	height: 1.8rem;
	margin: 0;
	opacity: 0.236;
	background: center/contain no-repeat url(assets/images/paper-plane.svg);
	pointer-events: none;
	transition: all 0.3s ease;
}

/* ## Genesis Portfolio Pro
--------------------------------------------- */
.archive.genesis-pro-portfolio .content {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.archive.genesis-pro-portfolio .entry {
	width: 100%;
	margin: 0 0 4vw;
	padding: 0;
	border: 0;
}

.archive.genesis-pro-portfolio .entry:before {
	display: block !important;
	position: absolute;
	z-index: 1;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(42, 49, 57, 0.5);
	content: '';
	pointer-events: none;
	transition: all 0.3s ease;
}

.archive.genesis-pro-portfolio .entry:before {
	opacity: 0;
}

.archive.genesis-pro-portfolio .entry:hover:before,
.archive.genesis-pro-portfolio .entry:focus:before {
	opacity: 1;
}

.archive.genesis-pro-portfolio .entry:hover .entry-header,
.archive.genesis-pro-portfolio .entry:focus .entry-header {
	top: 0;
	bottom: 0;
	margin: 0;
	opacity: 1;
}

.archive.genesis-pro-portfolio .entry-header {
	display: flex;
	position: absolute;
	z-index: 1;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin-top: 100%;
	opacity: 0;
	pointer-events: none;
	align-items: center;
	justify-content: center;
	transition: all 0.3s ease;
}

.archive.genesis-pro-portfolio .entry-header a {
	color: #ffffff;
}

/* ## Genesis Simple FAQs
--------------------------------------------- */
div.gs-faq {
	padding: 0;
	border-top: 1px solid #eceef1;
	box-shadow: 0 2rem 5rem -0.618rem rgba(42, 49, 57, 0.0618);
}

div.gs-faq .gs-faq__question {
	display: block;
	position: relative;
	z-index: 1;
	height: auto;
	margin: 0;
	padding: 1.5em 3em 1.5em 1.5em;
	border: 1px solid #eceef1;
	border-top: 0;
	border-radius: 0;
	color: #2a3139;
	background: #ffffff;
	box-shadow: none;
	font-size: 1.8rem;
	font-weight: 600;
	line-height: 1;
}

div.gs-faq .gs-faq__question:hover,
div.gs-faq .gs-faq__question:focus {
	color: #009cff;
}

div.gs-faq .gs-faq__question:after {
	position: absolute;
	top: 1.5em;
	right: 1em;
	line-height: 1;
	content: '+';
}

div.gs-faq .gs-faq__question.gs-faq--expanded:after {
	content: '-';
}

div.gs-faq .gs-faq__question:last-of-type {
	margin-bottom: 0;
}

div.gs-faq .gs-faq__answer {
	margin: 0;
	padding: 3rem;
	border: 1px solid #eceef1;
	border-top: 0;
	background-color: #ffffff;
}

/* ## Genesis Simple Share
--------------------------------------------- */
.share-after {
	margin-top: 4rem;
}

/* ## Genesis Testimonial Slider
--------------------------------------------- */
.lSSlideWrapper {
	max-width: calc(100% + 4em);
	margin: 0 -2em;
}

.gts-rating {
	margin: 1em auto -1em;
}

.lSSlideOuter {
	width: 100%;
}

.lSSlideOuter .lSPager,
.lSSlideOuter .lightSlider {
	height: auto !important;
}

ul.testimonials-list li:before {
	display: block;
	margin: 0 0 -0.5em;
	color: rgba(42, 49, 57, 0.2);
	font-family: 'Poppins';
	font-size: 8rem;
	line-height: 1;
	content: '“';
}

ul.testimonials-list blockquote {
	padding: 0 2em 1em;
	border: 0;
}

ul.testimonials-list img {
	width: 6rem;
	margin: 2rem auto;
}

ul.testimonials-list h5 {
	color: #2a3139;
	font-size: 1em;
}

.lSSlideOuter .lSPager.lSpg > li a {
	opacity: 0.1;
	background-color: #2a3139;
}

.lSSlideOuter .lSPager.lSpg > li.active a,
.lSSlideOuter .lSPager.lSpg > li:hover a {
	opacity: 0.3;
	background-color: #2a3139;
}

.gts-company {
	display: block;
	margin-bottom: 1em;
	font-size: small;
}

/* ## Google Map
--------------------------------------------- */

.contact-page .agm-canvas:before {
	display: block;
	position: absolute;
	z-index: 1;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background-color: rgba(42, 49, 57, 0.618);
}

/* ## Ninja Forms
--------------------------------------------- */
.nf-field .nf-field-element input,
.nf-field .nf-field-element select {
	height: 3em;
}

/* ## SEO Slider
--------------------------------------------- */
.slick-initialized .slick-slide {
	display: flex;
}

.no-js .slick-slide:first-of-type {
	display: block;
	width: 100%;
}

.slick-arrow {
	box-shadow: none;
}

/* ## Simple Social Icons
--------------------------------------------- */
.simple-social-icons {
	overflow: hidden;
}

.simple-social-icons svg[class^='social-'],
.simple-social-icons svg[class*=' social-'] {
	display: inline-block;
	width: 1em;
	height: 1em;
	stroke-width: 0;
	stroke: currentColor;
	fill: currentColor;
}

.simple-social-icons ul {
	display: flex;
	margin: -0.5em -0.5em 0 0;
	padding: 0;
	flex-wrap: wrap;
	justify-content: flex-start;
}

.simple-social-icons ul li {
	margin: 0.5em 0.5em 0 0;
	padding: 0;
	border: none;
	background: none;
	list-style-type: none;
}

.simple-social-icons ul li a {
	display: inline-block;
	box-sizing: content-box;
	width: 1em;
	height: 1em;
	margin: 2px;
	border: none;
	font-weight: 400;
	font-style: normal;
	font-variant: normal;
	line-height: 1;
	text-align: center;
	text-decoration: none;
	text-transform: none;
}

.simple-social-icons ul.aligncenter {
	justify-content: center;
}

.simple-social-icons ul.alignleft {
	justify-content: flex-start;
}

.simple-social-icons ul.alignright {
	justify-content: flex-end;
}

/* ## WooCommerce Menu Cart
--------------------------------------------- */
.wpmenucartli {
	margin-top: 1em;
}

.wpmenucart-contents {
	position: relative;
	margin-top: 1em;
	color: #2a3139;
	font-size: 1.8rem;
	text-decoration: none;
}

.wpmenucart-contents .cartcontents {
	display: flex;
	position: absolute;
	top: -0.4rem;
	right: -0.4rem;
	width: 1.2rem;
	height: 1.2rem;
	border-radius: 1.2rem;
	color: #ffffff;
	background-color: #009cff;
	box-shadow: 0 0 0 1px #ffffff;
	font-size: 0.7rem;
	font-weight: 700;
	line-height: 1;
	text-align: center;
	align-items: center;
	justify-content: center;
}

/* ## WP Featherlight
--------------------------------------------- */
.featherlight .featherlight-close-icon {
	box-shadow: none;
}

/* ## Front Page
--------------------------------------------- */
.front-page-widget {
	position: relative;
	width: 100%;
	padding: 6rem 0;
}

.front-page-widget:nth-of-type(even) {
	border-top: 1px solid #eceef1;
	border-bottom: 1px solid #eceef1;
	background-color: #f6f8fa;
}

.front-page-widget .widget:last-of-type {
	margin-bottom: 0;
}

.front-page-widget .textwidget {
	width: 100%;
}

.front-page-widget p,
.front-page-widget li {
	color: #4d5968;
}

/* ## Front Page 1
--------------------------------------------- */
.no-js.has-hero-slider .front-page-1 .slick-slide {
	min-height: 100%;
}

.no-js.has-hero-slider .front-page-1 .slick-slide:first-of-type {
	display: flex;
	align-items: center;
}

.has-hero-slider .front-page-1 {
	padding: 0;
	background-color: #c6cace;
}

.has-hero-slider .front-page-1 > .wrap {
	width: 100%;
	max-width: 100%;
	padding: 0;
}

.has-hero-slider .front-page-1 .slick-slider {
	max-height: 100vh;
}

.has-hero-slider .front-page-1 .slick-slide {
	min-height: 100%;
}

.has-hero-slider .front-page-1 .slick-dots {
	line-height: 0;
}

.has-hero-slider .front-page-1 .slick-wrap {
	max-width: 88vw;
}

.has-hero-slider .front-page-1 .slick-content {
	max-width: 768px;
}

.has-hero-slider .front-page-1 .slick-arrow {
	visibility: hidden;
	overflow: hidden;
}

.has-hero-slider .front-page-1 h2 {
	margin-bottom: 0.382em;
	font-size: 2em;
}

.has-hero-slider .front-page-1 p {
	max-width: 512px;
	line-height: 1.382;
}

.front-page-1.hero-section {
	padding: calc(15vw + 6rem) 0 15vw;
	text-align: left;
}

.front-page-1.hero-section .wrap {
	margin: 0 auto;
	padding-right: 4vw;
	padding-left: 4vw;
}

.front-page-1.hero-section h1 {
	text-align: left;
}

.front-page-1.hero-section p {
	margin: 0.5em 0 1.5em;
	color: #ffffff;
	text-align: left;
}

.front-page-1 .wp-block-heading {
	font-size: 9.3rem;
}

@media (max-width: 1095px) {
	.front-page-1 .wp-block-heading {
		font-size: 7rem;
	}

	.front-page-1 p {
		padding: 0 10em;
	}
}

@media (max-width: 995px) {

	.front-page-1 p {
		padding: 0 5em;
	}
}

@media (max-width: 795px) {
	.front-page-1 .wp-block-heading {
		font-size: 4rem;
	}

	.front-page-1 p {
		padding: 0 1em;
	}
}

/* ## Front Page 2
--------------------------------------------- */

.front-page-2 .wrap {
	padding: 0;
}

.front-page-2 .gallery img {
	width: 100%;
	height: auto;
	min-height: 1rem;
	margin: 2px;
	padding: 0 4vw;
}

.front-page-2 .gallery-item {
	margin: 0;
}

.no-js .front-page-2 .gallery-item {
	max-width: 50%;
}

.front-page-2 .slick-list {
	width: 100%;
}

.front-page-2 .slick-track {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-width: 100%;
}

.front-page-2 .services a {
	color: #fff;
	font-size: 3rem;
	font-weight: 500;
}

/* .front-page-2 {
	max-width: 1200px;
} */
/* ## Front Page 3
--------------------------------------------- */
.front-page-3 .wrap {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
}

.front-page-3 .wrap:before,
.front-page-3 .wrap:after {
	display: none;
}

.front-page-3 .widget hr {
	margin: 5rem 0;
}

.front-page-3 .icon_widget {
	align-self: flex-start;
}

.front-page-3 .icon_widget .widget-title {
	font-size: 1.9rem;
}

.front-page-3 .icon_widget i {
	display: inline-block;
}

.front-page-3 .mejs-container {
	min-width: 86vw !important;
	max-width: 86vw;
	border-radius: 6px;
	background-color: #f6f8fa;
}

.front-page-3 .mejs-mediaelement {
	overflow: hidden;
	padding: 0;
	border-radius: 5px;
	box-shadow: 0 2rem 6rem -2rem rgba(42, 49, 57, 0.236);
}

.front-page-3 .mejs-controls {
	display: none;
}

.front-page-3 .mejs-overlay-button {
	display: flex;
	width: 6rem;
	height: 6rem;
	border-radius: 9rem;
	background-color: #ffffff;
	box-shadow: 0 2rem 3rem -1rem rgba(42, 49, 57, 0.5);
	align-items: center;
	justify-content: center;
	transition: all 0.3s ease;
}

.front-page-3 .mejs-overlay-button:hover,
.front-page-3 .mejs-overlay-button:focus {
	-webkit-transform: scale(1.05);
	        transform: scale(1.05);
}

.front-page-3 .mejs-overlay-button:after {
	display: block;
	color: #2a3139;
	line-height: 1;
	content: '►';
}

.front-page-3 iframe {
	-webkit-transform: scale(1.01);
	        transform: scale(1.01);
}

.front-page-3 .gb-block-layout-column-gap-2 {
	grid-gap: 0 6rem;
}

.front-page-3 {
	margin: 0 auto;	
	padding: 6rem;
	max-width: 1200px;
}

@media (max-width: 600px) {
	.front-page-3 .gb-block-layout-column-gap-2 {
		grid-gap: 6rem 0;
	}
}

/* ## Front Page 4
--------------------------------------------- */
.front-page-4 .wrap {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}

.front-page-4 .widget:first-of-type {
	margin-bottom: 5rem;
}

/* ## Front Page 5
--------------------------------------------- */
.front-page-5 {
	padding: 0;
	border: none !important;
	text-align: center;
}

.front-page-5 .wrap {
	width: 100%;
	min-width: 100%;
	padding: 0;
}

.front-page-5 .widget-title {
	margin: 0 0 5rem;
	text-align: center;
}

.front-page-5 .widget-subtitle {
	margin: 10rem 0 1em;
	text-align: center;
}

.front-page-5 .widget-wrap {
	display: flex;
	width: 100vw;
	flex-wrap: wrap;
}

.front-page-5 .entry.portfolio {
	overflow: hidden;
	position: relative;
	width: 100vw;
	margin: 0;
	padding: 0;
	text-align: center;
}

.front-page-5 .entry.portfolio > a {
	display: block;
	margin: 0;
}

.front-page-5 .entry.portfolio > a:before {
	display: block !important;
	position: absolute;
	z-index: 1;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(42, 49, 57, 0.5);
	content: '';
	pointer-events: none;
	transition: all 0.3s ease;
}

.front-page-5 .entry.portfolio > a:before {
	opacity: 0;
}

.front-page-5 .entry.portfolio > a:hover:before,
.front-page-5 .entry.portfolio > a:focus:before {
	opacity: 1;
}

.front-page-5 .entry.portfolio > a:hover + .entry-header,
.front-page-5 .entry.portfolio > a:focus + .entry-header {
	top: 50%;
	opacity: 1;
}

.front-page-5 .entry-header {
	position: absolute;
	z-index: 2;
	top: 100%;
	left: 50%;
	opacity: 0;
	color: #ffffff;
	font-size: 1em;
	font-weight: 700;
	text-decoration: none;
	-webkit-transform: translate(-50%, -50%);
	        transform: translate(-50%, -50%);
	pointer-events: none;
	transition: all 0.3s ease;
}

.front-page-5 .entry-header a {
	color: #ffffff;
}

.front-page-5 img {
	display: block;
	min-width: 100%;
	transition: all 0.3s ease;
}

/* ## Front Page 6
--------------------------------------------- */
.front-page-6 {
	background: #0072ff;
	background: linear-gradient(135deg, #00c6ff 0%, #0072ff 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startcolorstr="$one", endcolorstr="$two", gradienttype=1);
	border: none !important;
	color: #ffffff;
}

.front-page-6 .wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
}

.front-page-6 .wrap:before,
.front-page-6 .wrap:after {
	display: none;
}

.front-page-6 .widget:last-of-type .button {
	margin-bottom: 0;
}

.front-page-6 p {
	max-width: 768px;
	color: #ffffff;
}

.front-page-6 .alignright {
	margin-left: 0;
}

/* ## Front Page 7
--------------------------------------------- */
.front-page-7 {
	text-align: center;
}

.front-page-7 .wrap {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	padding: 0;
}

.front-page-7 .wrap:before,
.front-page-7 .wrap:after {
	display: none;
}

.front-page-7 .widget {
	width: 100%;
}

.front-page-7 .pricing-table {
	margin-right: 4vw;
	margin-left: 4vw;
}

.front-page-7 hr {
	max-width: 88vw;
	margin-right: auto;
	margin-left: auto;
}

.front-page-7 ul blockquote {
	padding-right: calc(2em + 4vw);
	padding-left: calc(2em + 4vw);
}

/* ## Front Page 8
--------------------------------------------- */
.front-page-8 .wrap {
	position: relative;
}

.front-page-8 .widget-wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.front-page-8 .widget-title {
	width: 100%;
	margin-bottom: 1.618em;
	text-align: center;
}

.front-page-8 .widget-subtitle {
	width: 100%;
	text-align: center;
}

.front-page-8 .entry {
	padding: 3rem;
	border: 1px solid #eceef1;
	border-radius: 3px;
	transition: all 0.3s ease;
}

.front-page-8 .entry:hover,
.front-page-8 .entry:focus {
	box-shadow: 0 2rem 6rem rgba(198, 202, 206, 0.2);
}

.front-page-8 .entry > a {
	display: block;
	width: calc(100% + 6rem);
	max-width: calc(100% + 6rem);
	margin: 0;
	margin: -3rem -3rem 3rem;
	border-radius: 3px 3px 0 0;
}

.front-page-8 .entry > a img {
	border-radius: 3px 3px 0 0;
}

.front-page-8 .entry p:last-of-type {
	margin-bottom: 0;
}

.front-page-8 .entry-title {
	order: 2;
}

.front-page-8 p.entry-meta {
	order: 1;
	font-size: small;
}

.front-page-8 p.entry-meta:last-of-type {
	margin-bottom: 1em;
}

/* ## Front Page 9
--------------------------------------------- */
.front-page-9 {
	position: relative;
	color: #ffffff;
	background-position: center;
	background-size: cover;
	text-align: center;
}

/* .front-page-9:before {
	display: block !important;
	position: absolute;
	z-index: 1;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(42, 49, 57, 0.5);
	content: '';
	pointer-events: none;
	transition: all 0.3s ease;
} */

.front-page-9 .widget {
	position: relative;
	z-index: 2;
	max-width: 768px;
	margin: 0 auto;
}

.front-page-9 .widget-wrap {
	height: 100%;
}

.front-page-9 .widget_media_image {
	position: absolute;
	z-index: 0;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	max-width: 100%;
	padding: 0;
}

.front-page-9 .widget_media_image figure {
	width: 100%;
	min-width: 100%;
	height: 100%;
	margin: 0;
}

.front-page-9 .widget_media_image img {
	width: 100%;
	height: 100% !important;
	-o-object-fit: cover;
	   object-fit: cover;
	-o-object-position: center;
	   object-position: center;
}

.front-page-9 .widget_media_image figcaption {
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	position: absolute !important;
	width: 0.1rem;
	height: 0.1rem;
	border: 0;
	background-color: #ffffff;
}

.front-page-9 p {
	color: #eceef1;
}

.front-page-9 form {
	margin-top: 1.382em;
}

.front-page-9 ::-moz-placeholder {
	opacity: 1;
	color: #eceef1;
}

.front-page-9 ::-webkit-input-placeholder {
	color: #eceef1;
}

.front-page-9 input {
	display: block;
	margin: 0 auto 1em;
	border: 0;
	color: #ffffff;
	background-color: rgba(255, 255, 255, 0.25);
	transition: all 0.3s ease;
}

.front-page-9 input[type='submit'] {
	width: auto;
	margin-bottom: 0;
}

.front-page-9 input:hover,
.front-page-9 input:focus {
	background-color: rgba(255, 255, 255, 0.3);
}

/* # Media Queries
--------------------------------------------- */

@media (min-width: 384px) {
	.before-header p {
		display: inline-flex;
		margin: 0 1em 0 0;
	}
	.has-hero-slider .front-page-1 h2 {
		font-size: 2.2em;
		line-height: 1.236;
	}
	.has-hero-slider .front-page-1 p {
		line-height: 1.618;
	}
}

@media (min-width: 512px) {
	.button + button,
	.button + .button,
	button + button,
	button + .button,
	input[type='button'] + button,
	input[type='button'] + .button,
	input[type='reset'] + button,
	input[type='reset'] + .button,
	input[type='submit'] + button,
	input[type='submit'] + .button,
	.wp-block-button a + button,
	.wp-block-button a + .button {
		clear: none;
		margin-top: 0;
	}
	.gallery-item {
		width: 48.71795%;
		margin-bottom: 2.5rem;
	}
	.gallery-item:nth-of-type(odd) {
		clear: both;
		margin-left: 0;
	}
	.after-entry .enews input {
		max-width: 38.46154%;
		margin-left: 2.5641%;
	}
	.after-entry .enews input:first-of-type {
		margin-left: 0;
	}
	.blocks-gallery-image {
		width: 48.71795%;
		margin-bottom: 2.5641%;
	}
	.blocks-gallery-image:nth-of-type(odd) {
		clear: both;
		margin-left: 0;
	}
	.front-page .content .entry.post,
	.blog .content .entry,
	.archive .content .entry,
	.search-results .content .entry {
		width: 48.71795%;
		margin-bottom: 2.5rem;
		margin-left: 2.5641%;
	}
	.front-page .content .entry.post:nth-of-type(odd),
	.blog .content .entry:nth-of-type(odd),
	.archive .content .entry:nth-of-type(odd),
	.search-results .content .entry:nth-of-type(odd) {
		margin-left: 0;
	}
	.archive.genesis-pro-portfolio .entry {
		width: 48.71795%;
		margin-bottom: 2.5rem;
		margin-left: 2.5641%;
	}
	.archive.genesis-pro-portfolio .entry:nth-of-type(odd) {
		margin-left: 0;
	}
	.has-hero-slider .front-page-1 .slick-arrow {
		visibility: visible;
	}
	.front-page-5 .entry.portfolio {
		width: 50vw;
	}
	.front-page-9 input {
		display: inline-block;
		width: auto;
		margin: 0 0.2em 1em;
	}
}

@media (min-width: 768px) {
	body {
		font-size: 1.8rem;
	}
	body > div {
		font-size: 1.8rem;
	}
	h1 {
		font-size: 3em;
	}
	.wp-video-shortcode {
		width: auto;
	}
	.content-sidebar-wrap,
	.wrap {
		width: 92%;
		max-width: 1300px;
		padding-right: 0;
		padding-left: 0;
	}
	.contact-page .site-inner {
		padding-top: 10rem;
	}
	.contact-page.has-before-header .site-inner {
		padding-top: 14rem;
	}
	.content {
		padding: 6rem;
	}
	.front-page.page .content {
		margin: 0;
	}
	.blog .content,
	.archive .content,
	.search-results .content {
		padding: 6rem 0;
	}
	.page .content,
	.single .content,
	.error404 .content {
		margin: -6rem auto 0;
	}
	.page .content:before,
	.single .content:before,
	.error404 .content:before {
		display: block;
	}
	.landing-page .content {
		margin-top: 0;
	}
	.landing-page .content:before {
		display: none;
	}
	.one-half,
	.one-third,
	.one-fourth,
	.one-fifth,
	.one-sixth,
	.two-thirds,
	.two-fourths,
	.two-fifths,
	.two-sixths,
	.three-fourths,
	.three-fifths,
	.three-sixths,
	.four-fifths,
	.four-sixths,
	.five-sixths {
		float: left;
		clear: none;
		margin-left: 2.5641%;
	}
	.one-half,
	.three-sixths,
	.two-fourths {
		width: 48.71795%;
	}
	.one-third,
	.two-sixths {
		width: 31.62393%;
	}
	.four-sixths,
	.two-thirds {
		width: 65.81197%;
	}
	.one-fourth {
		width: 23.07692%;
	}
	.three-fourths {
		width: 74.35897%;
	}
	.one-fifth {
		width: 17.94872%;
	}
	.two-fifths {
		width: 38.46154%;
	}
	.three-fifths {
		width: 58.97436%;
	}
	.four-fifths {
		width: 79.48718%;
	}
	.one-sixth {
		width: 14.52991%;
	}
	.five-sixths {
		width: 82.90598%;
	}
	.first {
		clear: both;
		margin-left: 0;
	}
	.gallery-item {
		margin-bottom: 2.5rem;
		margin-left: 2.5641%;
	}
	.gallery-item:nth-of-type(odd) {
		margin-left: 2.5641%;
	}
	.gallery-columns-2 .gallery-item {
		width: 48.71795%;
	}
	.gallery-columns-2 .gallery-item:nth-of-type(odd) {
		margin-left: 0;
	}
	.gallery-columns-3 .gallery-item {
		width: 31.62393%;
	}
	.gallery-columns-3 .gallery-item:nth-of-type(odd) {
		margin-left: 2.5641%;
	}
	.gallery-columns-3 .gallery-item:nth-of-type(3n + 1) {
		margin-left: 0;
	}
	.gallery-columns-4 .gallery-item {
		width: 23.07692%;
	}
	.gallery-columns-4 .gallery-item:nth-of-type(3n + 1) {
		margin-left: 2.5641%;
	}
	.gallery-columns-4 .gallery-item:nth-of-type(4n + 1) {
		margin-left: 0;
	}
	.gallery-columns-5 .gallery-item {
		width: 17.94872%;
	}
	.gallery-columns-5 .gallery-item:nth-of-type(4n + 1) {
		margin-left: 2.5641%;
	}
	.gallery-columns-5 .gallery-item:nth-of-type(5n + 1) {
		margin-left: 0;
	}
	.gallery-columns-6 .gallery-item {
		width: 14.52991%;
	}
	.gallery-columns-6 .gallery-item:nth-of-type(5n + 1) {
		margin-left: 2.5641%;
	}
	.gallery-columns-6 .gallery-item:nth-of-type(6n + 1) {
		margin-left: 0;
	}
	.gallery-columns-7 .gallery-item {
		width: 12.08791%;
	}
	.gallery-columns-7 .gallery-item:nth-of-type(6n + 1) {
		margin-left: 2.5641%;
	}
	.gallery-columns-7 .gallery-item:nth-of-type(7n + 1) {
		margin-left: 0;
	}
	.gallery-columns-8 .gallery-item {
		width: 10.25641%;
	}
	.gallery-columns-8 .gallery-item:nth-of-type(7n + 1) {
		margin-left: 2.5641%;
	}
	.gallery-columns-8 .gallery-item:nth-of-type(8n + 1) {
		margin-left: 0;
	}
	.gallery-columns-9 .gallery-item {
		width: 8.83191%;
	}
	.gallery-columns-9 .gallery-item:nth-of-type(8n + 1) {
		margin-left: 2.5641%;
	}
	.gallery-columns-9 .gallery-item:nth-of-type(9n + 1) {
		margin-left: 0;
	}
	.pricing-table + .pricing-table {
		margin: 10rem 0;
	}
	.pricing-table + hr {
		margin: 10rem 0;
	}
	.author-box {
		padding: 6rem 0;
	}
	.blocks-gallery-image {
		margin-bottom: 2.5641%;
		margin-left: 2.5641%;
	}
	.blocks-gallery-image:nth-of-type(odd) {
		margin-left: 2.5641%;
	}
	.wp-block-gallery.columns-2 .blocks-gallery-image {
		width: 48.71795%;
		margin-left: 2.5641%;
	}
	.wp-block-gallery.columns-2 .blocks-gallery-image:nth-of-type(odd) {
		margin-left: 0;
	}
	.wp-block-gallery.columns-3 .blocks-gallery-image {
		width: 31.62393%;
	}
	.wp-block-gallery.columns-3 .blocks-gallery-image:nth-of-type(odd) {
		margin-left: 2.5641%;
	}
	.wp-block-gallery.columns-3 .blocks-gallery-image:nth-of-type(3n + 1) {
		margin-left: 0;
	}
	.wp-block-gallery.columns-4 .blocks-gallery-image {
		width: 23.07692%;
	}
	.wp-block-gallery.columns-4 .blocks-gallery-image:nth-of-type(3n + 1) {
		margin-left: 2.5641%;
	}
	.wp-block-gallery.columns-4 .blocks-gallery-image:nth-of-type(4n + 1) {
		margin-left: 0;
	}
	.wp-block-gallery.columns-5 .blocks-gallery-image {
		width: 17.94872%;
	}
	.wp-block-gallery.columns-5 .blocks-gallery-image:nth-of-type(4n + 1) {
		margin-left: 2.5641%;
	}
	.wp-block-gallery.columns-5 .blocks-gallery-image:nth-of-type(5n + 1) {
		margin-left: 0;
	}
	.wp-block-gallery.columns-6 .blocks-gallery-image {
		width: 14.52991%;
	}
	.wp-block-gallery.columns-6 .blocks-gallery-image:nth-of-type(5n + 1) {
		margin-left: 2.5641%;
	}
	.wp-block-gallery.columns-6 .blocks-gallery-image:nth-of-type(6n + 1) {
		margin-left: 0;
	}
	.wp-block-gallery.columns-7 .blocks-gallery-image {
		width: 12.08791%;
	}
	.wp-block-gallery.columns-7 .blocks-gallery-image:nth-of-type(6n + 1) {
		margin-left: 2.5641%;
	}
	.wp-block-gallery.columns-7 .blocks-gallery-image:nth-of-type(7n + 1) {
		margin-left: 0;
	}
	.wp-block-gallery.columns-8 .blocks-gallery-image {
		width: 10.25641%;
	}
	.wp-block-gallery.columns-8 .blocks-gallery-image:nth-of-type(7n + 1) {
		margin-left: 2.5641%;
	}
	.wp-block-gallery.columns-8 .blocks-gallery-image:nth-of-type(8n + 1) {
		margin-left: 0;
	}
	.wp-block-gallery.columns-9 .blocks-gallery-image {
		width: 8.83191%;
	}
	.wp-block-gallery.columns-9 .blocks-gallery-image:nth-of-type(8n + 1) {
		margin-left: 2.5641%;
	}
	.wp-block-gallery.columns-9 .blocks-gallery-image:nth-of-type(9n + 1) {
		margin-left: 0;
	}
	.hero-section {
		padding: 6rem 0;
	}
	.blog .hero-section .wrap,
	.archive .hero-section .wrap,
	.search-results .hero-section .wrap {
		padding-bottom: 0;
	}
	.hero-section .wrap {
		max-width: 896px;
		padding-bottom: 6rem;
	}
	/* .nav-primary,
	.nav-secondary {
		right: calc(-40rem + -4vw);
	}
	.nav-primary.activated,
	.nav-secondary.activated {
		right: -4vw;
	} */
	.entry-footer {
		margin-top: 4rem;
		padding: 4rem 0;
	}
	.comment-respond,
	.entry-comments,
	.entry-pings {
		padding: 6rem 0;
	}
	.comment-header {
		margin-bottom: 2em;
	}
	.sidebar .widget {
		padding: 3rem 0;
	}
	.sidebar .widget:first-of-type {
		padding-top: 3rem;
	}
	.blog .sidebar .widget,
	.archive .sidebar .widget {
		margin-bottom: 3rem;
		padding: 3rem;
	}
	.site-footer .widget-area {
		margin-bottom: 0;
	}
	.before-footer {
		padding: 7.5rem 0;
	}
	.before-footer p {
		margin: 0;
	}
	.footer-widgets {
		padding: 10rem 0 0;
	}
	.footer-widgets .wrap {
		display: flex;
		flex-wrap: wrap;
	}
	.footer-widgets .widget-area {
		width: 31.62393%;
		margin-left: 2.5641%;
	}
	.footer-widgets .widget-area.footer-widgets-1 {
		margin-left: 0;
	}
	.footer-widgets .widget-area.footer-widgets-2 {
		margin-bottom: 0;
	}
	.footer-credits {
		margin-top: 10rem;
	}
	.footer-credits .wrap {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
	}
	.footer-credits .widget:last-of-type {
		text-align: right;
	}
	.footer-credits .simple-social-icons {
		margin-bottom: 0;
	}
	.front-page-widget {
		padding: 10rem 0;
	}
	.has-hero-slider .front-page-1 {
		padding: 0;
	}
	.has-hero-slider .front-page-1 .slick-slider {
		max-height: 100vh;
	}
	.has-hero-slider .front-page-1 .slick-arrow {
		top: 50%;
	}
	.has-hero-slider .front-page-1 h2 {
		font-size: 3em;
	}
	.front-page-1.hero-section {
		padding: 16rem 0;
	}
	.front-page-1.hero-section .wrap {
		width: 92%;
		max-width: 1300px;
		padding-right: 0;
		padding-left: 0;
	}
	.front-page-2 {
		/* padding: 5rem; */
		margin: 0 auto;
	}
	.front-page-2 .widget-wrap {
		width: calc(100% + 10vw);
		max-width: calc(100% + 10vw);
		margin: 0 -5vw;
	}
	.front-page-2 .gallery img {
		padding: 0 5vw;
	}
	.no-js .front-page-2 .gallery img {
		padding: 0 1rem;
	}
	.front-page-2 .gallery-item {
		margin: 0 !important;
	}
	.no-js .front-page-2 .gallery-item {
		max-width: 100%;
	}
	.front-page-3 .widget hr {
		margin: 7.5rem 0;
	}
	.front-page-3 .mejs-container {
		min-width: 100% !important;
		max-width: 100%;
	}
	.front-page-3 .mejs-mediaelement {
		box-shadow: 0 3rem 9rem -3rem rgba(42, 49, 57, 0.236);
	}
	.front-page-3 .mejs-overlay-button {
		width: 8rem;
		height: 8rem;
	}
	.front-page-4 .pull-left {
		position: relative;
		right: 0;
		width: 150%;
		max-width: 150% !important;
		margin-left: -50%;
	}
	.front-page-5 {
		padding: 0;
	}
	.front-page-5 .entry.portfolio {
		width: 33.33333333333333vw;
	}
	.front-page-6 {
		padding: 10rem 0;
	}
	.front-page-6 .widget {
		margin-bottom: 0;
	}
	.front-page-6 p {
		margin-bottom: 0;
	}
	.front-page-7 .pricing-table {
		margin-top: 5rem;
		margin-right: 0;
		margin-left: 0;
	}
	.front-page-7 hr {
		max-width: 100%;
	}
	.front-page-7 ul blockquote {
		padding-right: 2em;
		padding-left: 2em;
	}
	.front-page-8 .entry {
		clear: none;
		width: 31.62393%;
		margin-top: 0;
		margin-bottom: 0;
		margin-left: 2.5641%;
	}
	.front-page-8 .entry:nth-of-type(3n + 1) {
		margin-left: 0;
	}
	.front-page-8 .entry:nth-of-type(1n + 4) {
		margin-top: 2.5641%;
	}
	.front-page-9 .wrap {
		padding: 5rem 0;
	}
	.front-page-9 input {
		margin-bottom: 0;
	}
}

@media (min-width: 1096px) {
	.content-sidebar-wrap {
		display: flex;
		padding: 0;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: flex-start;
	}
	.content-sidebar-wrap:before,
	.content-sidebar-wrap:after {
		display: none;
	}
	.sidebar-content .content-sidebar-wrap {
		flex-direction: row-reverse;
	}
	.single .content,
	.contact-page .content {
		width: 768px;
	}
	.single-product .content {
		width: 896px;
	}
	.content {
		width: 100%;
	}
	.sidebar-primary {
		width: 25%;
		padding-top: 3rem;
	}
	.blog .sidebar-primary,
	.archive .sidebar-primary {
		padding-top: 6rem;
	}
	.sidebar-content .content,
	.content-sidebar .content {
		width: calc(75% - 5rem);
		margin-right: 0;
		margin-left: 0;
	}
	.single .gallery {
		max-width: 896px;
	}
	.after-entry {
		width: calc(100% + 12rem);
		max-width: calc(100% + 12rem);
		margin: 0 -6rem;
		padding: 6rem;
	}
	.search-form .search-toggle {
		display: block;
	}
	.site-header .search-form input[type='search'] {
		display: none;
		position: absolute;
		top: 0;
		right: 2em;
		bottom: 0;
		margin: auto 1em auto 0;
	}
	.js.has-sticky-header .site-header.shrink > .wrap {
		height: 7rem;
	}
	.site-header > .wrap {
		height: 10rem;
		padding: 0;
		flex-wrap: nowrap;
	}
	.no-js .site-header > .wrap {
		padding: 0;
	}
	.site-description {
		line-height: 1.382;
		text-align: left;
	}
	.before-header {
		width: 100vw;
		max-width: 100%;
	}
	.has-sticky-header .shrink .before-header {
		margin-top: -4rem;
	}
	.before-header .wrap {
		width: 92%;
		max-width: 1300px;
		padding: 0;
	}
	.header-widget-area {
		display: block;
		margin: 0 0 0 0.5em;
		order: 5;
	}
	.hero-section {
		padding: 8rem 0;
	}
	.menu {
		font-size: 1.4rem;
	}
	.menu .rss,
	.menu .date,
	.menu .search,
	.menu .twitter {
		margin-top: 0;
		margin-left: 0.618em;
	}
	.menu-item {
		display: flex;
		width: auto;
		max-width: 30rem;
		height: 10rem;
		padding: 0 0.618em;
		align-items: center;
		order: initial;
	}
	.shrink .menu-item {
		height: 7rem;
	}
	.menu-item:first-of-type > a {
		padding-left: 0;
	}
	.menu-item:last-of-type a {
		padding-right: 0;
	}
	.menu-item.button {
		margin: 0 0 0 1em;
	}
	.sub-menu {
		position: absolute;
		z-index: 99;
		top: 100%;
		left: 0;
		width: 20rem;
		margin-left: -1em;
		padding: 1em 0;
		border: 1px solid #eceef1;
		border-radius: 3px;
		background-color: #f6f8fa;
	}
	.sub-menu:before {
		display: block;
	}
	.sub-menu .menu-item {
		height: auto;
		padding: 0.5em 1em;
	}
	.sub-menu .menu-item:first-of-type {
		margin-top: 0;
	}
	.sub-menu a {
		position: relative;
		padding: 0;
		color: #90959f;
		word-wrap: break-word;
	}
	.sub-menu .sub-menu {
		top: -0.5em;
		left: -0.1rem;
		margin: -0.1rem 0 0 19.9rem;
		padding-left: 0;
		border: 1px solid #eceef1;
	}
	.nav-primary,
	.nav-secondary {
		display: block;
		overflow: visible;
		position: relative;
		top: auto;
		right: auto;
		bottom: auto;
		left: auto;
		width: auto;
		max-width: none;
		height: auto;
		margin: 0;
		padding: 0;
		border: none;
		background-color: transparent;
		box-shadow: none;
	}
	.nav-primary.activated,
	.nav-secondary.activated {
		right: auto;
		box-shadow: none;
	}
	.no-js .nav-primary,
	.no-js
	.nav-secondary {
		display: block;
		width: auto;
	}
	.nav-primary .menu,
	.nav-secondary .menu {
		padding: 0;
	}
	.nav-secondary {
		width: 100%;
		border-top: 1px solid rgba(198, 202, 206, 0.3);
	}
	.nav-secondary .menu-item {
		height: 6rem;
	}
	.has-sticky-header .shrink .nav-secondary .menu-item {
		height: 5rem;
	}
	.nav-secondary .menu > .menu-item:first-of-type {
		padding-left: 0;
	}
	.menu-toggle {
		display: none;
	}
	.sub-menu-toggle {
		display: none;
	}
	.front-page .content .entry.post,
	.blog .content .entry,
	.archive .content .entry,
	.search-results .content .entry {
		width: 31.62393%;
		margin-bottom: 2.5rem;
	}
	.front-page .content .entry.post:nth-of-type(odd),
	.blog .content .entry:nth-of-type(odd),
	.archive .content .entry:nth-of-type(odd),
	.search-results .content .entry:nth-of-type(odd) {
		margin-left: 2.5641%;
	}
	.front-page .content .entry.post:nth-of-type(3n + 1),
	.blog .content .entry:nth-of-type(3n + 1),
	.archive .content .entry:nth-of-type(3n + 1),
	.search-results .content .entry:nth-of-type(3n + 1) {
		margin-left: 0;
	}
	.pagination {
		padding: 5rem 0;
	}
	.wpmenucart-contents {
		margin-left: 1em;
	}
	.has-hero-slider .front-page-1 .slick-wrap {
		width: 92%;
		max-width: 1300px;
	}
	.has-before-header .has-hero-slider .front-page-1 .slick-wrap {
		padding-top: 14rem;
	}
	.has-nav-secondary .has-hero-slider .front-page-1 .slick-wrap {
		padding-top: 16rem;
	}
	.has-nav-secondary.has-before-header .has-hero-slider .front-page-1 .slick-wrap {
		padding-top: 20rem;
	}
}

@media (min-width: 1300px) {
	.header-widget-area {
		margin: 0 0 0 2em;
	}
	.menu-item {
		padding: 0 1em;
	}
	.front-page-2 .widget-wrap {
		width: calc(100% + 7.5rem);
		max-width: calc(100% + 7.5rem);
		margin: 0 -3.75rem;
	}
	.front-page-2 .gallery img {
		padding: 0 3.75rem;
	}
}

@media (min-width: 1280px) {
	.menu .rss,
	.menu .date,
	.menu .search,
	.menu .twitter {
		margin-left: 1.5em;
	}
	.comment-respond input[type='email'],
	.comment-respond input[type='text'],
	.comment-respond input[type='url'] {
		width: 50%;
	}
}

@media (max-width: 768px) {
	.pricing-table div {
		width: 100%;
	}
	.contact-page .agm-canvas {
		height: 30rem !important;
	}
}

@media print {
	*,
	*:before,
	*:after {
		color: #2a3139 !important;
		background: transparent !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) ')';
	}
	a[href^='javascript:']:after,
	a[href^='#']:after,
	.site-title > a:after {
		content: '';
	}
	thead {
		display: table-header-group;
	}
	img,
	tr {
		page-break-inside: avoid;
	}
	img {
		max-width: 100% !important;
	}
	@page {
		margin: 2cm 0.5cm;
	}
	p,
	h2,
	h3 {
		orphans: 3;
		widows: 3;
	}
	blockquote,
	pre {
		border: 1px solid #eceef1;
		page-break-inside: avoid;
	}
	.content,
	.content-sidebar {
		width: 100%;
	}
	button,
	input,
	select,
	textarea,
	.breadcrumb,
	.comment-edit-link,
	.comment-form,
	.comment-list .reply a,
	.comment-reply-title,
	.edit-link,
	.entry-comments-link,
	.entry-footer,
	.genesis-box,
	.header-widget-area,
	.hidden-print,
	.home-top,
	.nav-primary,
	.nav-secondary,
	.post-edit-link,
	.sidebar {
		display: none !important;
	}
	.title-area {
		width: 100%;
		text-align: center;
	}
	.site-title > a {
		margin: 0;
		text-decoration: none;
		text-indent: 0;
	}
	.site-inner {
		position: relative;
		top: -10rem;
		padding-top: 0;
	}
	.author-box {
		margin-bottom: 0;
	}
	h1,
	h2,
	h3,
	h4,
	h5,
	h6 {
		orphans: 3;
		page-break-after: avoid;
		page-break-inside: avoid;
		widows: 3;
	}
	img {
		page-break-after: avoid;
		page-break-inside: avoid;
	}
	blockquote,
	pre,
	table {
		page-break-inside: avoid;
	}
	dl,
	ol,
	ul {
		page-break-before: avoid;
	}
}

/*# sourceMappingURL=style.css.map */

/*** Start 321 CSS ***/

/* General */

@font-face {
	font-family: 'Font Awesome 6 Pro';
	font-style: normal;
	font-weight: 300;
	font-display: block;
	src: url(/wp-content/themes/expert-exteriors/assets/fonts/fontawesome/fa-light.woff2) format('woff2');
}

@font-face {
	font-family: 'Font Awesome 6 Pro';
	font-style: normal;
	font-weight: 400;
	font-display: block;
	src: url(/wp-content/themes/expert-exteriors/assets/fonts/fontawesome/fa-regular.woff2) format('woff2');
}

body {
	--es-green-one: #cca449;
	--es-green-two: #cca449;
	--es-green-three: #cca449;
	--es-dark-one: #231f20;
	--es-dark-two: #1c191a;
	--es-dark-three: #413c3d;
	--es-alt-one: #000;
	--es-alt-two: #fff;
	--es-alt-three: #d57400;
	color: var(--es-alt-one);
	font-weight: 400;
	font-family: 'Poppins';
	overflow-x: visible;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	/* font-family: 'Lato', sans-serif; */
}

.site-inner,
.site-footer {
	overflow-x: hidden;
}

*:before,
*:after {
	position: absolute;
}

a {
	text-decoration: none;
	transition: 0.25s ease-in-out all;
}

a.button {
	background-image: none;
	background-color: #cca449;
	width: fit-content;
	height: fit-content;
	font-size: 1.5rem;
	line-height: 1;
	margin: 0;
	padding: 1.5rem 2.5rem;
	border: 2px solid #000;
	border-radius: 0;
	outline: none;
	box-shadow: none !important;
	transition: 0.25s ease-in-out all;
}

a.button:hover {
	filter: brightness(1.1);
}

a.button.white:hover {
	filter: none;
}

.entry-content p a:not(.button) {
	color: #000;
	font-weight: 600;
	box-shadow: none;
	text-decoration: underline;
	transition: 0.25s ease-in-out all;
}

.entry-content p a:not(.button):hover,
.entry-content p a:not(.button):focus {
	color: #cca449;
}

.content-sidebar-wrap,
.content-sidebar-wrap .content,
.content-sidebar-wrap .content .entry {
	width: 100%;
	max-width: 100%;
	margin: 0;
	padding: 0;
}

.header-section,
.inner-section {
    position: relative;
    width: 100%;
	padding: 6rem 0;
    z-index: 1;
}

.header-section {
    background-color: var(--es-dark-one);
}

.header-section:before {
	background-color: var(--es-alt-one);
	opacity: 0.57;
}

.header-section > .gb-layout-column-wrap,
.inner-section > .gb-layout-column-wrap {
	row-gap: 6rem;
	column-gap: 8rem;
	width: 92%;
	max-width: 1300px;
	margin: 0 auto;
}

.gb-has-background-dim::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	/* background-color: inherit;
	opacity: 0; */
	z-index: 1;
}

.gb-block-layout-column-inner {
    display: flex;
    flex-direction: column;
	width: 100%;
	height: 100%;
}

@media (min-width: 1096px) {
	.fixed-header .site-header {
		background-color: #000;
		position: absolute;
		box-shadow: none;
		transition: none;
	}

	.fixed-header .site-header.shrink {
		/* background-color: var(--es-alt-two); */
		background-color: #000;
		position: fixed;
		margin-top: 0 !important;
		box-shadow: 0 0 2rem rgba(57, 62, 75, 0.38);
		animation: 0.5s linear header-drop-in;
	}

	.fixed-header .site-header.returning {
		position: fixed;
		margin-top: 0 !important;
		transform: translateY(-100%);
		transition: 0.5s ease-in-out transform, 0s 0.5s ease-in-out background-color;
	}

	.fixed-header:not(.home) .header-section {
		position: relative;
		padding: calc(12rem + 100px) 0 calc(12rem + 40px);
		z-index: 1;
	}

	.fixed-header:not(.home) .header-section:after {
		content: '';
		background-color: var(--es-alt-two);
		position: absolute;
		width: 100%;
		height: 40px;
		top: auto;
		bottom: 0;
		border-top-left-radius: 40px;
		border-top-right-radius: 40px;
		z-index: 2;
	}

	.fixed-header:not(.home) .header-section.green-bar:after {
		background-color: #27845e;
	}
}

/* Header */

.site-header {
	/* background-color: var(--es-green-two); */
	background-color: #000;
	position: sticky;
	top: 0;
	left: 0;
	border-bottom: none;
	box-shadow: 0 0 1rem rgba(57, 62, 75, 0.18);
	transition: 0.25s ease-in-out background-color, 0.25s ease-in-out box-shadow;
}

.site-header.shrink {
	/* background-color: var(--es-alt-two); */
	background-color: #000;
	box-shadow: 0 0 2rem rgba(57, 62, 75, 0.38);
}

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

.site-topbar {
	position: unset;
	display: flex;
    align-items: center;
	min-height: 40px;
}

.title-area a {
	position: relative;
	display: flex;
}

.title-area a img.primary {
	position: relative;
	opacity: 1;
	transition: 0.25s ease-in-out opacity;
}

.title-area a img.secondary {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	opacity: 0;
	transition: 0.25s ease-in-out opacity;
}

.site-header.shrink .title-area a img.primary {
	/* opacity: 0; */
}

.site-header.shrink .title-area a img.secondary {
	opacity: 1;
}

@keyframes header-drop-in {
	0% {
		-webkit-transform: translateY(-100%);
		transform: translateY(-100%);
	}

	100% {
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
}

@media (max-width: 782px) {
	.logged-in.admin-bar .site-header {
		top: 46px;
	}
}

@media (max-width: 600px) {
	.logged-in.admin-bar .site-header {
		top: 0;
	}
}

.site-header > .wrap {
	height: 100%;
}

.menu-toggle,
.menu-toggle.activated {
	position: unset;
	display: none;
	align-items: center;
	justify-content: flex-end;
	width: 40px;
    height: 40px;
    margin: 0 -7px 0 0;
    padding: 0 7px 0 0;
	outline: none;
	transition: none;
}

.menu-toggle span,
.menu-toggle.activated span {
	background-color: var(--es-alt-two);
	width: 20px;
	height: 3px;
	float: none;
	border-radius: 0;
	transition: 0s 0.2s ease-in-out background-color;
}

.menu-toggle span:before,
.menu-toggle span:after {
	background-color: var(--es-alt-two);
    width: 26px;
    height: 3px;
	border-radius: 0;
}

.shrink .menu-toggle span,
.shrink .menu-toggle span:before,
.shrink .menu-toggle span:after {
	background-color: var(--es-alt-two);
}

.menu-toggle span:before {
	top: -0.8rem;
	left: -0.6rem;
}

.menu-toggle span:after {
	bottom: -0.8rem;
	left: -0.6rem;
}

.menu-toggle.activated span {
	background-color: transparent;
	transition: 0.2s ease-in-out background-color;
}

.menu-toggle.activated span:before,
.menu-toggle.activated span:after {
	background-color: var(--es-alt-two);
}

.mobile-menu-backdrop {
	content: '';
	background-color: #000;
	position: fixed;
	width: 100vw;
	height: 100vh;
	top: 0;
	left: 0;
	opacity: 0;
	pointer-events: none;
	cursor: default;
	transition: 0.25s ease-in-out opacity;
	z-index: 99;
}

.sub-menu-toggle,
.sub-menu-toggle:hover,
.sub-menu-toggle:focus {
	display: none;
	outline: none;
}

.sub-menu-toggle {
    position: unset;
    align-items: center;
    justify-content: flex-end;
    width: 24px;
    height: 24px;
    margin: 0 -3.5px 0 0;
    padding: 0 3.5px 0 0;
}

.sub-menu-toggle:before {
    content: '\f078';
    display: flex;
    width: 17px;
    height: 17px;
	color: var(--es-alt-one);
	font-size: 17px;
    font-weight: 900;
    font-family: 'Font Awesome 6 Pro';
    line-height: 1;
    margin: 0;
    border: none;
	transition: 0.2s ease-in-out transform;
}

.sub-menu-toggle.activated:before {
	margin: 0;
	transform: rotate(-90deg);
}

/* .nav-primary ul.menu > li.menu-item > a > span:before {
	content: '';
	position: unset;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 300;
	font-family: 'Font Awesome 6 Pro';
	margin: 0;
} */

/* .nav-primary ul.menu > li.menu-item.solar > a > span:before {
	content: '\f5ba';
}

.nav-primary ul.menu > li.menu-item.battery > a > span:before {
	content: '\f5df';
}

.nav-primary ul.menu > li.menu-item.lighting > a > span:before {
	content: '\f672';
}

.nav-primary ul.menu > li.menu-item.ev-charging > a > span:before {
	content: '\f5e7';
}

.nav-primary ul.menu > li.menu-item.energy-analysis > a > span:before {
	content: '\e0fe';
}

.nav-primary ul.menu > li.menu-item.about > a > span:before {
	content: '\f05a';
} */

/* .nav-primary ul.menu>li.menu-item.phone-number>a>span:before {
	content: '\f05a';
	position: unset;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 300;
	font-family: 'Font Awesome 6 Pro';
	margin: 0;
} */
.nav-primary ul.menu li.menu-item a:hover {
	color: #cca449;
}

@media (min-width: 1096px) {
	.site-topbar {
		/* background-color: var(--es-green-one); */
		background-color: #cca449;
		position: relative;
		width: 100%;
		padding: 0.8rem 0;
	}

	.site-topbar > .wrap {
		display: flex;
		flex-wrap: nowrap;
		justify-content: space-between;
		gap: 8rem;
	}

    .site-topbar nav {
        flex: 0 1 fit-content;
        margin-left: auto;
    }

	.site-topbar ul.menu {
		justify-content: flex-end;
		gap: 3rem;
	}

	.site-topbar ul.menu li.menu-item {
		height: fit-content;
		padding: 0;
	}

    .site-topbar ul.menu li.menu-item a,
	.site-topbar .phone-cta a {
        color: #000;
        font-size: 1.35rem;
        font-weight: 500;
        margin: 0;
    }

	.site-topbar ul.menu li.menu-item a span {
		display: flex;
		align-items: center;
		gap: 1.25rem;
	}

	.site-topbar ul.menu li.menu-item a[target="_blank"] span:after {
		content: '\f08e';
		position: unset;
		display: flex;
		align-items: center;
		justify-content: center;
		width: 15px;
		height: 15px;
		font-size: 15px;
		font-weight: 400;
		font-family: 'Font Awesome 6 Pro';
	}

	/* .site-topbar ul.menu li.menu-item a svg {
		display: none;
	} */

	.site-topbar .phone-cta a {
		display: flex;
		align-items: center;
		gap: 1.25rem;
	}
	
	.site-topbar ul.menu li.menu-item a:hover,
	.site-topbar .phone-cta a:hover {
		color: #fff;
	}

	.site-topbar .phone-cta a span {
		display: flex;
	}

	.site-topbar .phone-cta a .phone-cta--icon:before {
		content: '\f3ce';
		position: unset;
		display: flex;
		align-items: center;
		justify-content: center;
		width: 15px;
		height: 15px;
		font-size: 15px;
		font-weight: 400;
		font-family: 'Font Awesome 6 Pro';
	}

	.site-topbar .phone-cta a svg {
		display: none;
	}


	.site-footer .phone-cta a {
		display: flex;
		align-items: center;
		gap: 1rem;
	}

	.site-footer ul.menu li.menu-item a:hover,
	.site-footer .phone-cta a:hover {
		color: #cca449;
	}

	.site-footer .phone-cta a span {
		display: flex;
	}
		
	.site-footer .phone-cta a .phone-cta--icon:before {
		content: '\f3ce';
		position: unset;
		display: flex;
		align-items: center;
		justify-content: center;
		/* width: 15px;
		height: 15px; */
		font-size: 3rem;
		font-weight: 400;
		font-family: 'Font Awesome 6 Pro';
	}

	span.phone-cta--text {
		font-size: 2rem;
	}

	.site-footer .phone-cta a svg {
		display: none;
	}


	.site-header > .wrap {
		display: grid;
		gap: min(2vw, 3rem);
	}

	.title-area {
		grid-column: 1;
		display: flex;
        align-items: center;
		width: min(13vw, 190px);
		height: 100%;
		margin: 0;
	}

	.nav-primary {
		display: contents;
	}

	.nav-primary > .wrap {
		grid-column: 2;
		height: 100%;
	}

	.nav-primary ul.menu {
		flex-wrap: nowrap;
		gap: min(3.2vw, 5rem);
		height: 100%;
	}

	.nav-primary ul.menu li.menu-item {
		height: 100%;
		padding: 3.8rem 0;
		transition: 0.25s ease-in-out padding-top, 0.25s ease-in-out padding-bottom;
	}

	.nav-primary ul.menu li.menu-item.mobile-only {
		display: none;
	}

	.site-header.shrink .nav-primary ul.menu li.menu-item {
		padding: 3rem 0;
	}

	.nav-primary ul.menu li.menu-item a {
		gap: min(0.7vw, 1.2rem);
        color: var(--es-alt-two);
		font-size: min(1.15vw, 1.45rem);
        font-weight: 500;
		line-height: 1.6;
        margin: 0;
		transition: 0.25s ease-in-out color;
    }

	.site-header.shrink .nav-primary ul.menu li.menu-item a {
		color: var(--es-alt-two);
	}

	.site-header.shrink .nav-primary ul.sub-menu li.menu-item a {
		color: var(--es-alt-one);
	}

	.nav-primary ul.menu li.menu-item a:after {
		font-weight: 400;
	}

	.nav-primary ul.menu li.menu-item.menu-item-has-children > a:after {
		/* content: ""; */
		position: unset;
		display: flex;
		align-items: center;
		justify-content: center;
		width: min(1.1vw, 1.4rem);
		height: min(1.1vw, 1.4rem);
		color: inherit;
		font-size: min(1.1vw, 1.4rem);
		font-weight: 400;
		font-family: 'Font Awesome 6 Pro';
		margin: 0;
	}

	.nav-primary ul.menu li.menu-item a span {
		display: flex;
    	align-items: center;
		gap: min(0.7vw, 1.25rem);
	}

	.nav-primary ul.menu > li.menu-item > a > span:before {
		/* width: min(1.5vw, 2rem); */
		height: min(1.5vw, 2rem);
		color: var(--es-alt-two);
		font-size: min(1.5vw, 2rem);
		transition: 0.25s ease-in-out all;
	}

	.site-header.shrink .nav-primary ul.menu > li.menu-item > a:not(:hover) > span:before {
		color: var(--es-alt-one);
	}

	.nav-primary ul.menu > li.menu-item > a:hover > span:before {
		color: var(--es-alt-three);
	}
	
	.primary-menu-ctas {
		grid-column: 3;
		display: flex;
		align-items: center;
		height: 100%;
	}

	.primary-menu-ctas .login-cta {
		display: none;
	}

	/* .primary-menu-ctas .gb-layout-column-wrap {
		display: flex;
        gap: 1.8vw;
	}

	.primary-menu-ctas .gb-block-layout-column {
		flex: 1 1 fit-content;
	} */

	.primary-menu-ctas a.button {
		font-size: min(1.15vw, 1.4rem);
		padding: 1.2rem min(1.8vw, 2.6rem);
		border: 2px solid #fff;
		border-radius: 0;
		outline: none;
		box-shadow: none !important;
	}

	/* .primary-menu-ctas a.button.white {
		border-color: var(--es-alt-two);
	} */


	.nav-primary ul.menu ul.sub-menu {
		background-color: var(--es-alt-two);
		position: absolute;
		display: block;
		width: fit-content;
		min-width: 25rem;
		top: 100% !important;
		left: -9999px;
		margin: 0;
        padding: 2.5rem;
        border: none;
        /* border-bottom: 4px solid var(--es-alt-three); */
		border-bottom: 4px solid #cca449;
		border-radius: 0;
		box-shadow: 0px 4px 14.4px 0px rgba(0, 0, 0, 0.25);
		opacity: 0;
		pointer-events: none;
		transform: none;
		transition: 0.25s ease-in-out opacity, 0s 0.25s ease-in-out left;
	}

	.nav-primary ul.menu ul.sub-menu:before {
		display: none;
	}

	.nav-primary ul.menu li.menu-item:hover > ul.sub-menu {
		left: -2rem;
		opacity: 1;
		pointer-events: all;
		transition: 0.25s ease-in-out opacity, 0s ease-in-out left;
	}

	.nav-primary ul.menu ul.sub-menu li.menu-item,
	.site-header.shrink .nav-primary ul.menu ul.sub-menu li.menu-item {
	    padding: 0;
	}

	.nav-primary ul.menu ul.sub-menu li.menu-item:not(:first-of-type),
	.site-header.shrink .nav-primary ul.menu ul.sub-menu li.menu-item:not(:first-of-type) {
		margin-top: 1.5rem;
		padding-top: 1.5rem;
		border-top: 1px solid #cacaca;
	}

	.nav-primary ul.menu ul.sub-menu li.menu-item a {
		color: var(--es-alt-one);
		font-size: min(1.1vw, 1.4rem);
		font-weight: 400;
        line-height: 1.3;
		margin: 0;
		transition: 0.25s ease-in-out all;
	}

	.nav-primary ul.menu ul.sub-menu li.menu-item a:hover {
		color: #cca449;
	}

	.nav-primary ul.menu li.menu-item.mega-menu > ul.sub-menu {
		display: flex;
		flex-wrap: nowrap;
		gap: 3rem;
		min-width: 55rem;
	}

	.nav-primary ul.menu li.menu-item.mega-menu:hover > ul.sub-menu {
		left: -15rem;
	}

	.nav-primary ul.menu li.menu-item.mega-menu > ul.sub-menu > li.menu-item,
	.site-header.shrink .nav-primary ul.menu li.menu-item.mega-menu > ul.sub-menu > li.menu-item {
		display: block;
		margin-top: 0;
		padding-top: 0;
		border-top: none;
	}

	.nav-primary ul.menu li.menu-item.mega-menu > ul.sub-menu > li.menu-item > p {
		font-size: min(1.1vw, 1.4rem);
		font-weight: 600;
		margin-bottom: 2.5rem;
		padding-bottom: 1.5rem;
		border-bottom: 1px solid #cacaca;
	}

	.nav-primary ul.menu li.menu-item.mega-menu > ul.sub-menu > li.menu-item > ul.sub-menu {
        position: unset;
        display: flex;
        flex-direction: column;
        gap: 1.5rem;
		margin: 0;
		padding: 0;
		border: none;
		border-radius: 0;
		box-shadow: none;
		transform: none;
		transition: none;
	}

	.nav-primary ul.menu li.menu-item.mega-menu > ul.sub-menu > li.menu-item > ul.sub-menu > li.menu-item {
		margin: 0;
		padding: 0;
		border-top: none;
	}

	.fixed-header .site-header {
		margin-top: 40px;
	}

	.fixed-header .site-header:not(.shrink):not(.returning) .nav-primary ul.menu > li.menu-item > a {
		text-shadow: 0px 3px 6px rgba(0, 0, 0, 0.37);
	}

	.fixed-header .site-header:not(.shrink):not(.returning) .nav-primary ul.menu > li.menu-item > a svg {
		filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.37));
	}
}

@media (max-width: 1095px) {
	.site-topbar {
		display: none;
	}

	.site-header {
    	padding: 2.5rem 0;
		transition: 0.25s ease-in-out box-shadow, 0.25s ease-in-out padding;
	}

	.site-header.shrink {
		padding: 1.75rem 0;
	}

	.site-header > .wrap {
		position: initial;
	}

	.menu-toggle,
	.menu-toggle.activated {
		display: flex;
	}

	.mobile-menu-backdrop.active {
		pointer-events: all;
		cursor: w-resize;
		opacity: 0.37;
	}

	.title-area {
		display: flex;
        align-items: center;
		width: 175px;
	}

	.title-area a img.primary {
		width: auto;
		max-height: 80px;
	}

	.nav-primary {
		background-color: var(--es-alt-two);
		position: fixed;
		display: flex;
        flex-direction: column;
		height: calc(100vh - 90px);
		margin-top: 90px;
        padding: 0;
		border: none;
		outline: none;
		transition: 0.25s ease-in-out margin, 0.3s ease-in-out right;
	}

	.site-header.shrink .nav-primary {
		background-color: var(--es-alt-two);
		display: flex;
        flex-direction: column;
		height: calc(100vh - 75px);
		margin-top: 75px;
	}

	.nav-primary:before {
		content: '';
		background-color: #fff;
		position: fixed;
		display: block;
        width: 93vw;
        max-width: 40rem;
		height: 15px;
		top: auto;
		bottom: 0;
		left: auto;
		right: -40rem;
		transition: 0s ease-in-out right;
	}

	.nav-primary.activated:before {
		right: 0;
		transition: 0s 0.3s ease-in-out right;
	}

	.nav-primary::-webkit-scrollbar {
		-webkit-appearance: none;
		appearance: none;
		width: 0.7rem;
	}

	.nav-primary::-webkit-scrollbar-track {
		background-color: #ececec;
	}

	.nav-primary::-webkit-scrollbar-thumb {
        background-color: #c5c5c5;
		border-radius: 8px;
    }

	.logged-in.admin-bar .nav-primary {
		height: calc(100vh - 90px - 32px);
		margin-top: calc(90px + 32px);
	}

	.logged-in.admin-bar .site-header.shrink .nav-primary {
		height: calc(100vh - 75px - 32px);
		margin-top: calc(75px + 32px);
	}

	.nav-primary > .wrap {
		width: 100%;
		padding: 5rem;
	}

	.nav-primary ul.menu {
        display: flex;
        flex-direction: column;
        gap: 2.75rem;
        width: 100%;
        padding: 0;
    }

	.nav-primary ul.menu li.menu-item {
		display: flex;
		flex-wrap: wrap;
        justify-content: space-between;
        column-gap: 4rem;
		margin: 0;
		padding: 0;
	}

	.nav-primary ul.menu li.menu-item a {
		flex: 0 1 fit-content;
		max-width: calc(100% - 4rem - 24px);
		color: var(--es-alt-one);
		font-size: 1.55rem;
		font-weight: 700;
		margin: 0;
	}

	.nav-primary ul.menu li.menu-item a span {
		display: flex;
		align-items: center;
		gap: 1.5rem;
	}

	.nav-primary ul.menu ul.sub-menu {
        background-color: transparent;
        position: unset;
        width: 100%;
        margin: 0;
		padding: 3rem 3.1rem;
        border: none;
        border-radius: 0;
        box-shadow: none;
        opacity: 1;
        transform: none;
        transition: none;
    }

	.nav-primary ul.menu ul.sub-menu li.menu-item:not(:first-child) {
		margin: 2rem 0 0;
	}

	.nav-primary ul.menu li.menu-item.about {
		order: -3;
	}

	.nav-primary ul.menu ul.sub-menu li.menu-item a {
		font-size: 1.4rem;
		font-weight: 500;
		padding: 0;
	}

	.nav-primary ul.menu > li.menu-item > a > span:before {
		font-weight: 900;
		width: 16px;
        height: 16px;
        font-size: 16px;
	}

	.sub-menu-toggle,
	.sub-menu-toggle:hover,
	.sub-menu-toggle:focus {
		flex: 0 1 24px;
		display: flex;
	}

	.primary-menu-ctas {
		display: flex;
		flex-direction: column;
		gap: 2.5rem;
		padding: 0 5rem 5rem;
	}

	.login-cta a.button {
		background-color: transparent;
		border-color: var(--es-alt-one);
		display: flex;
		justify-content: center;
		gap: 1rem;
		width: 100%;
		color: var(--es-alt-one);
		font-size: 1.4rem;
		border-width: 1.5px;
	}

	.login-cta a.button:hover,
	.login-cta a.button:focus {
		background-color: var(--es-alt-one);
		color: var(--es-alt-two);
	}

	.consultation-cta a.button {
		display: flex;
		justify-content: center;
		gap: 1rem;
		width: 100%;
		font-size: 1.4rem;
		border-width: 1.5px;
	}
}

@media (max-width: 782px) {
	.logged-in.admin-bar .nav-primary {
		height: calc(100vh - 90px - 46px);
		margin-top: calc(90px + 46px);
	}

	.logged-in.admin-bar .site-header.shrink .nav-primary {
		height: calc(100vh - 75px - 46px);
		margin-top: calc(75px + 46px);
	}
}

@media (max-width: 600px) {
	.logged-in.admin-bar .nav-primary {
		height: calc(100vh - 90px);
		margin-top: calc(90px + 46px);
	}

	.logged-in.admin-bar .site-header.shrink .nav-primary {
		height: calc(100vh - 75px);
		margin-top: 75px;
	}
}

@media (max-width: 1095px) {
	.nav-primary {
		background-color: var(--es-alt-two);
		position: fixed;
		display: flex;
		flex-direction: column;
		height: calc(100vh - 90px);
		margin-top: 154px;
		padding: 0;
		border: none;
		outline: none;
		transition: 0.25s ease-in-out margin, 0.3s ease-in-out right;
	}
}

/* Footer */

.site-footer {
	background-color: #000;
	border: none;
}

.footer-blocks {
	display: flex;
    flex-direction: column;
    gap: 6rem;
	padding: 6rem 0 6rem;
}

.footer-blocks > .widget {
    width: 92%;
    max-width: 1300px;
    margin: 0 auto;
}

.site-footer--widgets > .gb-layout-column-wrap {
    display: flex;
    flex-wrap: wrap;
    gap: 6rem;
}

.site-footer--widgets > .gb-layout-column-wrap > .gb-block-layout-column:first-of-type {
    flex: 1 1 calc(62% - 3rem);
}

.site-footer--widgets > .gb-layout-column-wrap > .gb-block-layout-column:last-of-type {
    flex: 1 1 calc(38% - 3rem);
}

.site-footer--widgets .wp-block-image {
	width: 200px;
}

.footer-contact-section {
	margin: 4rem 0;
}

.footer-contact-section > .gb-layout-column-wrap {
	display: flex;
	flex-wrap: wrap;
	row-gap: 4rem;
	column-gap: 7rem;
}

.footer-contact-section > .gb-layout-column-wrap > .gb-block-layout-column {
	flex: 0 1 fit-content;
}

.footer-contact-section .footer-label p {
    color: var(--es-green-three);
    font-size: 1.3rem;
    font-weight: 700;
    line-height: 1.2;
    margin: 0 0 1rem;
}

.footer-contact-section .footer-info p {
    color: var(--es-alt-two);
    font-size: 1.4rem;
    font-weight: 500;
    margin: 0;
}

.footer-contact-section .footer-info a {
	color: #f6c687;
}

.footer-contact-section .footer-info a:hover {
	filter: brightness(1.3);
}

.footer-menus > .gb-container-inside > .gb-container-content {
    display: flex;
	row-gap: 4rem;
    column-gap: 6rem;
    justify-content: flex-end;
    margin-right: 3rem;
}

.footer-menus ul.menu {
	flex-direction: column;
	align-items: flex-start;
	gap: 1.5rem;
}

.footer-menus ul.menu li.menu-item a {
	color: #f6c687;
    font-size: 1.4rem;
    font-weight: 600;
    line-height: 1.4;
    margin: 0;
}

.footer-menus ul.menu li.menu-item a:hover {
	filter: brightness(1.3);
}

body .tto-social-media .tto-social-media--container {
    gap: 1.8rem;
}

body .tto-social-media .tto-social-media--container .tto-social-media--icon-link svg {
    color: var(--es-green-three);
    width: 26px;
    height: 26px;
}

.site-footer--credits {
	padding: 4rem 0 0;
	border-top: 1.5px solid #f6c687;
}

.site-footer--credits > .gb-layout-column-wrap {
    display: flex;
    gap: 6rem;
}

.site-footer--credits > .gb-layout-column-wrap > .gb-block-layout-column:first-of-type {
    flex: 1;
	width: auto;
}

.site-footer--credits > .gb-layout-column-wrap > .gb-block-layout-column:last-of-type {
    flex: 0 1 fit-content;
	width: fit-content;
}

.site-footer--credits > .gb-layout-column-wrap > .gb-block-layout-column > .gb-block-layout-column-inner {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

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

.footer-credits p {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    row-gap: 1.75rem;
    column-gap: 1.25rem;
    color: #000;
	font-size: 1.4rem;
	font-weight: 600;
    line-height: 1;
}

.footer-credits a {
	color: #000;
	font-weight: 500;
	text-decoration: underline;
}

.footer-credits a:hover {
	color: #000;
	text-decoration: underline;
}

.footer-credits p .credit {
    display: flex;
    gap: 0.5rem;
}

.footer-credits p .separator {
	font-size: 3rem;
	line-height: 0;
	margin: 0 0 0.4rem;
}

.back-to-top-button button {
    background-image: none;
    background-color: transparent;
    height: fit-content;
    line-height: 1;
    padding: 0.8rem 1.7rem;
    border: 1.5px solid var(--es-green-three);
    border-radius: 8px;
    box-shadow: none;
    outline: none;
	transition: 0.25s ease-in-out all;
}

.back-to-top-button button:hover {
	background-color: var(--es-green-three);
}

.back-to-top-button span {
	display: flex;
}

.back-to-top-button svg {
	color: var(--es-green-three);
	width: 16px;
	height: 16px;
	transition: 0.25s ease-in-out all;
}

.back-to-top-button button:hover svg {
	color: var(--es-alt-two);
}

@media (max-width: 1095px) {
	.site-footer--widgets > .gb-layout-column-wrap > .gb-block-layout-column:first-of-type,
	.site-footer--widgets > .gb-layout-column-wrap > .gb-block-layout-column:last-of-type {
		flex: 1 1 calc(50% - 3rem);
	}
}

@media (max-width: 895px) {
	.site-footer--widgets > .gb-layout-column-wrap > .gb-block-layout-column:first-of-type {
		flex: 1 1 calc(40% - 3rem);
	}

	.site-footer--widgets > .gb-layout-column-wrap > .gb-block-layout-column:last-of-type {
		flex: 1 1 calc(60% - 3rem);
	}
}

@media (max-width: 649px) {
	.site-footer--widgets > .gb-layout-column-wrap {
		flex-direction: column;
	}

	.site-footer--widgets > .gb-layout-column-wrap > .gb-block-layout-column:first-of-type,
	.site-footer--widgets > .gb-layout-column-wrap > .gb-block-layout-column:last-of-type {
		flex: 1 1 calc(50% - 3rem);
	}

	.footer-menus > .gb-container-inside > .gb-container-content {
		flex-wrap: wrap;
		justify-content: flex-start;
	}

	.site-footer--credits {
		padding: 6rem 4vw 0;
	}

	.site-footer--credits > .gb-layout-column-wrap {
		flex-direction: column;
		align-items: center;
		gap: 4rem;
	}

	.footer-credits p {
		justify-content: center;
	}
}

/* Home Page */

.inner-section h2 {
	color: var(--es-alt-one);
	font-size: 5.6rem;
	font-weight: 700;
	line-height: 1.25;
	margin: 0 0 3rem;
	padding: 0;
}

.inner-section h2.small,
.inner-section h3 {
	color: var(--es-alt-one);
	font-size: 4.2rem;
	font-weight: 700;
	line-height: 1.25;
	margin: 0 0 2.5rem;
	padding: 0;
}

.inner-section h2.more-margin {
	margin: 0 0 6rem;
}

.inner-section h2 em,
.inner-section h3 em {
	color: var(--es-green-one) !important;
	font-style: normal;
}

.inner-section h2.has-white-color em,
.inner-section h3.has-white-color em {
	color: #cca449 !important;
}

.inner-section p,
.inner-section li {
	color: var(--es-alt-one);
	font-size: 1.7rem;
	font-weight: 500;
	line-height: 1.7;
	margin: 0 0 3rem;
}

.inner-section ul.has-white-color li {
	color: var(--es-alt-two);
}

.inner-section ul.has-white-color li::marker {
	color: #cca449;
	font-size: 3rem;
}

/* .inner-section ul.has-white-color li a svg::after {
	content: '\f061';
	position: absolute;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 1.4rem;
	height: 1.4rem;
	top: auto;
	right: 1.4rem;
	color: #cca449;
	font-size: 1.4rem;
	font-family: 'Font Awesome 6 Pro';
	font-weight: 400;
	pointer-events: none;
} */

.inner-section li {
	margin: 0;
}

.inner-section p:last-child {
	margin-bottom: 0;
}

.inner-section strong {
	font-weight: 700;
}

.inner-section .above-header-tagline p {
	color: var(--es-green-one);
	font-size: 1.5rem;
	font-weight: 600;
	line-height: 1.3;
	margin: 0 0 1rem;
}

.header-section .tto-custom-button,
.inner-section .tto-custom-button {
	height: auto;
}

.inner-section .tto-custom-button.align-center {
	display: flex;
	justify-content: center;
}

.inner-section a.button {
	display: flex;
    align-items: center;
    gap: 1rem;
    margin: 1rem 0 0;
}

.inner-section .wp-block-image {
	margin: 0;
}

.front-page-1,
.front-page-1 > .gb-layout-column-wrap,
.front-page-4,
.front-page-4 > .gb-layout-column-wrap {
	width: 100%;
	max-width: 100%;
	margin: 0;
	padding: 0;
}

.front-page-1:after,
.front-page-3:after {
    /* content: '';
    background-color: var(--es-alt-two);
    position: absolute;
    width: 100%;
    height: 40px;
    top: auto;
    bottom: 0;
    border-top-left-radius: 40px;
    border-top-right-radius: 40px;
    z-index: 2; */
}

.front-page-1 .fp1-video {
	position: absolute;
	width: 100%;
	height: 100%;
	z-index: -1;
}

.fp1-video .gb-container-inside,
.fp1-video .gb-container-content,
.fp1-video .wp-block-video {
    width: 100%;
    height: 100%;
	overflow: hidden;
}

.fp1-video video {
	object-fit: cover;
	object-position: center center;
	width: 100%;
	height: 100%;
}

.fp1-video img {
	position: absolute;
	object-position: center center;
	object-fit: cover;
	width: 100%;
	height: 100%;
	z-index: -1;
}

.front-page-1 .fp1-content {
	position: relative;
	padding: calc(20rem + 100px) 0 calc(20rem + 40px);
	z-index: 2;
}

.front-page-1 .fp1-content:before {
	content: '';
	background-color: var(--es-alt-one);
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	opacity: 0.62;
	z-index: 3;
}

.fp1-content .gb-container-inside {
    position: relative;
	width: 92%;
	max-width: 1300px;
	margin: 0 auto;
    z-index: 4;
}

.fp1-content .gb-container-content {
	max-width: 760px;
	margin: 0;
}

.front-page-1 h1 {
    color: #fff;
    font-size: 4.8rem;
    font-weight: 700;
    line-height: 1.2;
	margin: 0 0 2rem;
	text-shadow: 0px 3px 5px rgba(0, 0, 0, 0.27);
}

.front-page-1 p {
    color: #fff;
    font-size: 1.8rem;
    font-weight: 500;
	line-height: 1.7;
    margin: 0 0 3.5rem;
    text-shadow: 0px 3px 5px rgba(0, 0, 0, 0.27);
}

.front-page-1 .fp1-ctas > .gb-layout-column-wrap {
    display: flex;
    flex-wrap: wrap;
    row-gap: 2.5rem;
    column-gap: 4rem;
}

.front-page-1 .fp1-ctas > .gb-layout-column-wrap > .gb-block-layout-column {
    flex: 0 1 fit-content;
}

.front-page-1 a.button {
    background-color: var(--es-green-one);
    font-size: 1.6rem;
    font-weight: 700;
    padding: 1.8rem 3.2rem;
	border-color: var(--es-green-one);
}

.front-page-1 a.button.white {
	border-color: var(--es-alt-two);
}

/* .front-page-2 {
	padding-top: calc(12rem - 40px);
} */

.front-page-2 > .gb-layout-column-wrap {
    display: flex;
    flex-wrap: wrap;
}

.front-page-2 > .gb-layout-column-wrap > .gb-block-layout-column:first-of-type {
    flex: 1 1 calc(50% - 8rem);
}

.front-page-2 > .gb-layout-column-wrap > .gb-block-layout-column:last-of-type {
    flex: 1 1 50%;
}

.front-page-2 .gb-block-layout-column-inner {
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.front-page-2 .services .gb-block-layout-column-inner {
	/* border: solid 1px #000; */
}

.front-page-2 .services .gb-block-layout-column-inner p {
	margin: 0;
}

.front-page-2 .services .gb-block-layout-column-inner:hover {
	/* scale: 1.1; */
	zoom: 99%;
}

.custom-image-grid {
	aspect-ratio: 117 / 134;
	position: relative;
	display: block;
	width: 100%;
	height: auto;
	z-index: 1;
}

.custom-image-grid--icon {
	position: absolute;
	top: -3rem;
	left: -7rem;
	z-index: 9;
}

.custom-image-grid--icon svg {
	color: #cca449;
	width: 18rem;
	height: 18rem;
	opacity: 0.6;
}

.custom-image-grid--item.one {
	position: absolute;
	width: calc(100% * (91 / 117));
	height: calc(100% * (100 / 134));
	top: 0;
	left: 0;
	border-top-left-radius: 60px;
	overflow: hidden;
	z-index: 2;
}

.custom-image-grid--item.two {
	position: absolute;
	width: calc(100% * (86 / 117));
	height: calc(100% * (52 / 134));
	top: auto;
	bottom: 0;
	left: auto;
	right: 0;
	border-top-left-radius: 0;
	border-bottom-right-radius: 60px;
	overflow: hidden;
	z-index: 3;
}

.custom-image-grid--item img {
	object-fit: cover;
	object-position: center center;
	width: 100%;
	height: 100%;
}

.custom-image-grid--background {
	position: absolute;
	background-image: linear-gradient(45deg, #000, #000, #000, #cca449, #cca449, #cca449);
	width: calc(100% * (89 / 117));
	height: calc(100% * (92 / 134));
	top: auto;
	bottom: calc(100% * (11.5 / 134));
	left: calc(100% * (11.5 / 73));
	z-index: -1;
}

@media (min-width: 768px) {
	.inner-section.full-image-section .wp-block-image {
		display: block;
		width: 100%;
		height: 100%;
		overflow: hidden;
	}

	.inner-section.full-image-section img {
		object-fit: cover;
		object-position: center center;
		display: block;
		width: 100%;
		height: 100%;
		transition: 1s cubic-bezier(0.23, 0.14, 0.19, 1) transform;
	}

	.inner-section.full-image-section img:hover {
		transform: translateX(-90px) scale3d(1.4, 1.4, 1.4) translateY(-90px);
	}

	.inner-section.full-image-section > .gb-layout-column-wrap > .wp-block-genesis-blocks-gb-column {
		position: relative;
	}

	.inner-section.full-image-section > .gb-layout-column-wrap > .wp-block-genesis-blocks-gb-column:first-of-type > .gb-block-layout-column-inner {
		position: absolute;
		width: calc(100% + 4vw);
		height: calc(100% + 24rem);
		margin: -12rem 0 0 -4vw;
	}

	.inner-section.full-image-section.front-page-3 > .gb-layout-column-wrap > .wp-block-genesis-blocks-gb-column:first-of-type > .gb-block-layout-column-inner {
		height: calc(100% + 24rem + 40px);
	}
}

@media (min-width: 992px) {
	.inner-section.full-image-section > .gb-layout-column-wrap > .wp-block-genesis-blocks-gb-column:last-of-type > .gb-block-layout-column-inner {
		padding: 4rem 0 4rem 4rem;
	}
}

@media (min-width: calc(1300px / 0.92)) {
	.inner-section.full-image-section > .gb-layout-column-wrap > .wp-block-genesis-blocks-gb-column:first-of-type > .gb-block-layout-column-inner {
		width: calc(50vw - 4rem);
		margin: -12rem 0 0 calc((-100vw + 1300px) / 2);
	}
}

@media (min-width: 2000px) {
	.inner-section.full-image-section > .gb-layout-column-wrap > .wp-block-genesis-blocks-gb-column:first-of-type > .gb-block-layout-column-inner {
        width: 100%;
        margin: -12rem 0 0;
	}
}

.front-page-3 {
	padding-bottom: calc(6rem + 6px);
}

.front-page-4 .fp4-top {
	padding: calc(12rem - 40px) 0 12rem;
}

.front-page-4 .fp4-top > .gb-container-inside {
    width: 92%;
    max-width: 1300px;
    margin: 0 auto;
}

.front-page-4 .fp4-top > .gb-container-inside > .gb-container-content {
    max-width: 650px;
    margin: 0 auto;
}

.core-services {
    display: flex;
    flex-wrap: nowrap;
	align-items: stretch;
    gap: 0;
	max-width: 2000px;
	min-height: 550px;
	max-height: 550px;
	margin: 0 auto;
	/* padding: 25px 0; */
}

.core-service {
	flex: 4;
	background-color: var(--es-dark-one);
	transition: 0.4s ease-in-out all;
}

.core-service:hover {
	flex: 5.5;
	background-color: var(--es-alt-two);
}

.core-service--link {
	position: relative;
    display: flex;
    flex-direction: column;
    gap: 2rem;
	width: 100%;
	min-height: 550px;
	height: 100%;
	padding: 4rem;
	outline: none;
	transition: 0.4s ease-in-out all;
	z-index: 1;
}

.core-service:hover .core-service--link {
	min-height: 600px;
	margin-top: -25px;
	margin-bottom: -25px;
}

.core-service--link:before {
    content: '';
    background-color: var(--es-alt-one);
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    opacity: 0.35;
	transition: 0.4s ease-in-out all;
    z-index: 0;
}

.core-service:hover .core-service--link:before,
.core-service:focus .core-service--link:before {
	background-color: var(--es-alt-two);
	opacity: 0.85;
}

.core-service--background {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: -1;
}

.core-service--background img {
    object-fit: cover;
    object-position: center center;
    width: 100%;
    height: 100%;
}

.core-service--heading,
.core-service--content {
	position: relative;
	z-index: 2;
}

.core-service--heading h3 {
	color: var(--es-alt-two);
	font-size: 2.6rem;
	margin: 0;
	text-shadow: 0px 2px 4px rgba(0, 0, 0, 0.27);
	transition: 0.4s ease-in-out all;
}

.core-service:hover .core-service--heading h3 {
	color: var(--es-alt-one);
	text-shadow: none;
}

.core-service--content {
	display: flex;
    flex-direction: column;
    gap: 2rem;
	opacity: 0;
	transition: none;
}

.core-service:hover .core-service--content {
	opacity: 1;
	transition: 0.4s 0.25s ease-in-out opacity;
}

.core-service--content-copy p {
	color: var(--es-alt-two);
	font-size: 1.6rem;
}

.core-service:hover .core-service--content-copy p {
	color: var(--es-alt-one);
}

.core-service--content-cta {
    display: flex;
    align-items: center;
    gap: 1.25rem;
    width: fit-content;
    color: var(--es-alt-two);
    font-size: 1.8rem;
    font-weight: 700;
}

.core-service:hover .core-service--content-cta {
	color: #cca449;
}

.front-page-4 .fp4-bottom {
	padding: 22rem 0 calc(16rem - 40px);
}

.front-page-4 .fp4-bottom > .gb-container-inside {
    width: 92%;
    max-width: 1300px;
    margin: 0 auto;
}

.success-numbers {
    display: flex;
    flex-wrap: nowrap;
    align-items: stretch;
    gap: 4rem;
    padding: 4rem 0 1rem;
}

.success-number {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
	gap: 1rem;
    padding: 4rem;
    border: 3px solid var(--es-green-one);
    border-radius: 12px;
}

.success-number:nth-of-type(2n) {
	background-color: var(--es-green-one);
}

.success-number--icon,
.success-number--icon svg {
    color: #f6c687;
    width: 5.5rem;
    height: 5.5rem;
}

.success-number--copy p {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 1rem;
	color: var(--es-alt-one);
	font-size: 1.6rem;
    font-weight: 600;
    line-height: 1.4;
	text-align: center;
}

.success-number:nth-of-type(2n) .success-number--copy p {
	color: var(--es-alt-two);
}

.success-number--copy p .number-wrap {
    display: flex;
    gap: 0.5rem;
    font-size: 3.2rem;
    font-weight: 700;
    line-height: 1.2;
}

.inner-section.banner-section,
.inner-section.banner-section > .gb-layout-column-wrap {
    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: 0;
}

.inner-section.front-page-5.banner-section:before {
    content: '';
    background-color: #fff;
    position: absolute;
    width: 100%;
    height: 40px;
    top: 0;
    left: 0;
    border-bottom-left-radius: 40px;
    border-bottom-right-radius: 40px;
    z-index: 9;
}

.banner-section--container {
	position: relative;
	z-index: 1;
}

.banner-section--background {
	position: absolute;
	display: block;
	width: 100%;
	height: 100%;
	overflow: hidden;
	z-index: -1;
}

.banner-section--background img {
	object-fit: cover;
	object-position: center center;
	display: block;
	width: 100%;
	height: 100%;
	transition: 1s cubic-bezier(0.23, 0.14, 0.19, 1) transform;
}

.banner-section.active .banner-section--background img {
	transform: scale3d(1.4, 1.4, 1.4);
}

.banner-section--content {
    position: relative;
    padding: 12rem 0;
    z-index: 2;
}

.front-page-5 .banner-section--content {
    padding-top: calc(12rem + 40px);
}

.banner-section--content:before {
    content: '';
    background-color: #000;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    opacity: 0.25;
    z-index: 3;
}

.banner-section--content-wrapper {
	position: relative;
	width: 92%;
	max-width: 1300px;
	margin: 0 auto;
	z-index: 4;
}

.banner-section--content-inner {
	background-color: rgba(31, 106, 74, 0.78);
	width: 50%;
	max-width: 600px;
	padding: 5rem;
	backdrop-filter: blur(4px);
}

.banner-section--content-inner.right {
	margin-left: auto;
}

.inner-section.banner-section h2,
.inner-section.banner-section h3 {
    color: var(--es-alt-two);
    font-size: 4.2rem;
    font-weight: 700;
    line-height: 1.25;
	text-align: left;
	text-shadow: 0px 1px 2px rgba(0, 0, 0, 0.17);
}

.inner-section.banner-section h2 em,
.inner-section.banner-section h3 em {
	color: #f6c687 !important;
}

.inner-section.banner-section p {
	color: #fff;
	text-align: left;
	text-shadow: 0px 1px 2px rgba(0, 0, 0, 0.17);
}

.front-page-6 {
	background-image: none;
}

.front-page-7 .fp7-top > .gb-container-inside > .gb-container-content,
.testimonials-section .testimonials-top > .gb-container-inside > .gb-container-content {
    max-width: 650px;
    margin: 0 auto;
}

.fp7-top .wp-block-image,
.testimonials-top .wp-block-image {
    max-width: 250px;
    margin: 0 auto;
}

.customer-testimonials {
	margin: 6rem 0 0;
}

.customer-testimonials--wrapper:not(.slider) {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 3rem;
}

/* .testimonials-slider {
	width: 84%;
	max-width: 1040px;
	margin: 0 auto;
} */

/* .testimonials-slider .swiper {
	padding: 1rem;
} */

.testimonials-slider .swiper-button-prev,
.testimonials-slider .swiper-button-next {
    display: flex;
    width: 20px;
    height: 20px;
    /* top: 15px; */
	left: -4vw;
    margin: 0;
}

.testimonials-slider .swiper-button-next {
	left: auto;
	right: -4vw;
}

.testimonials-slider .swiper-button-prev:after,
.testimonials-slider .swiper-button-next:after {
    display: none;
}

.testimonials-slider .swiper-button-prev span,
.testimonials-slider .swiper-button-next span {
    display: flex;
	color: var(--es-alt-one);
	transition: 0.25s ease-in-out all;
}

.testimonials-slider .swiper-button-prev:hover span,
.testimonials-slider .swiper-button-next:hover span {
	color: #cca449;
}

@media (max-width: calc(1040px / 0.84)) {
	.testimonials-slider .swiper-button-prev {
		left: calc(4% - 10px);
	}

	.testimonials-slider .swiper-button-next {
		right: calc(4% - 10px);
	}
}

body .entry-content > .inner-section.has-black-background-color:last-child,
body.logged-in.admin-bar .entry-content > .inner-section.has-black-background-color:nth-last-child(2) {
	border-bottom: 2px solid #fff;
}

.swiper-wrapper {
    padding: 2rem 0;
}

.testimonial {
	background-color: var(--es-alt-two);
	display: flex;
    flex-direction: column;
	justify-content: space-between;
	height: 100%;
	gap: 3rem;
	padding: 3.5rem;
	border: 1px solid #dbdbdb;
	border-radius: 2rem;
	box-shadow: 0px 3px 9px -2px rgba(0, 0, 0, 0.19);
	box-sizing: border-box;
}

.testimonial-copy p {
	font-size: 1.5rem;
	font-weight: 600;
	text-align: left;
}

.testimonial-copy p a {
	color: var(--es-green-one);
	text-decoration: underline;
}

.testimonial-copy p a:hover {
	color: var(--es-alt-three);
}

.testimonial-info {
	min-height: 60px;
    display: flex;
    flex-wrap: wrap;
	align-items: center;
	row-gap: 1.5rem;
	column-gap: 2rem;
}

.testimonial-info--stars {
	min-height: 18px;
}

.testimonial-info--headshot {
	flex: 1 1 40px;
}

.testimonial-info--credit {
	flex: 1 1 calc(100% - 2rem - 40px);
}

.testimonial-info--credit p {
	font-size: 1.6rem;
	line-height: 1.4;
	text-align: left;
}

.testimonial-info--stars .stars {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    width: fit-content;
    min-height: 18px;
}

.testimonial-info--stars .star {
	display: flex;
}

.testimonial-info--stars .star svg {
	color: #cca449;
	width: 18px;
	height: 18px;
}

.front-page-9 .fp9-top > .gb-container-inside > .gb-container-content {
    max-width: 650px;
    margin: 0 auto;
}

.featured-articles {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 3rem;
	margin: 8rem 0 6rem;
}

.featured-article--image a {
	display: block;
	width: 100%;
	height: 100%;
	border-radius: 1.2rem;
	overflow: hidden;
}

.featured-article--image img {
	aspect-ratio: 1.8 / 1;
	object-fit: cover;
	object-position: center center;
	width: 100%;
	height: auto;
	transition: 1s cubic-bezier(0.23, 0.14, 0.19, 1) transform;
}

.featured-article--image a:hover img {
	transform: scale3d(1.4, 1.4, 1.4);
}

.featured-article--content {
	margin: 2.5rem 0 0;
}

.featured-article--content-info-title h3 {
	display: flex;
}

.featured-article--content-info-title h3 a {
    color: var(--es-alt-one);
    font-size: 2.1rem;
    font-weight: 800;
    line-height: 1.4;
    text-align: left;
}

.featured-article--content-info-title h3 a:hover {
	color: var(--es-green-two);
}

.featured-article--content-info-description p {
	font-size: 1.5rem;
	text-align: left;
}

.featured-article--content-cta {
	display: flex;
	margin: 2.5rem 0 0;
}

.featured-article--content-cta a {
    display: flex;
    align-items: center;
    gap: 1.2rem;
    color: #000;
    font-size: 1.6rem;
    font-weight: 700;
}

.featured-article--content-cta a:hover {
    gap: 1.6rem;
	filter: brightness(1.1);
}

.front-page-9 a.button {
	background-color: #cca449;
	color: #000;
	border-color: #000;
}

.front-page-9 a.button:hover {
	background-color: #cca449;
	color: #fff;
}

.front-page-10 h2 {
	font-size: 3.6rem;
	margin: 0 0 6rem;
}

.front-page-10 .swiper-button-prev:focus,
.front-page-10 .swiper-button-next:focus {
	outline: unset;
}

@media (max-width: 1095px) {
	.front-page-1 .fp1-content {
		padding: 16rem 0 calc(16rem + 40px);
	}
}

@media (max-width: 991px) {
	.front-page-2 > .gb-layout-column-wrap {
		flex-direction: column;
	}

	.custom-image-grid {
		max-width: 450px;
		margin: 0 auto;
	}

	.custom-image-grid--icon {
		left: auto;
		right: 0;
	}

	.core-services {
		flex-wrap: wrap;
		min-height: fit-content;
		max-height: fit-content;
	}

	.core-service,
	.core-service:hover {
		flex: 1 1 50%;
	}

	.core-service--link,
	.core-service:hover .core-service--link {
		min-height: 0;
		margin: 0;
	}

	.core-service--link {
		align-items: center;
		justify-content: center;
	}

	.core-service--content {
		display: none;
	}

	.customer-testimonials--wrapper:not(.slider) {
		grid-template-columns: repeat(2, 1fr);
	}

	.featured-articles {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 767px) {
	.header-section,
	.inner-section {
		position: relative;
		width: 100%;
		padding: 10rem 0;
		z-index: 1;
	}

	.header-section > .gb-layout-column-wrap,
	.inner-section > .gb-layout-column-wrap {
		display: flex;
		flex-direction: column;
	}

	.inner-section h2 {
		font-size: 3.8rem;
	}

	.inner-section h2.small,
	.inner-section h3 {
		font-size: 3.2rem;
	}

	.front-page-1,
	.front-page-1 > .gb-layout-column-wrap,
	.front-page-4,
	.front-page-4 > .gb-layout-column-wrap {
		width: 100%;
		max-width: 100%;
		margin: 0;
		padding: 0;
	}

	.front-page-1 .fp1-content {
		padding: 12rem 0 calc(12rem + 40px);
	}

	.front-page-1 .fp1-content:before {
		opacity: 0.72;
	}

	.front-page-1 h1 {
		font-size: 3.8rem;
	}

	.front-page-1 p {
		font-size: 1.7rem;
	}

	.front-page-1 a.button {
		font-size: 1.5rem;
		padding: 1.5rem 2.5rem;
	}

	.front-page-2 {
		/* padding-top: calc(10rem - 40px); */
	}

	.front-page-3 {
		padding-bottom: calc(10rem + 40px);
	}

	.inner-section.full-image-section {
		padding-top: 0;
	}

	.inner-section.full-image-section > .gb-layout-column-wrap {
		row-gap: 10rem;
	}

	.inner-section.full-image-section > .gb-layout-column-wrap > .wp-block-genesis-blocks-gb-column:first-of-type {
		width: 100vw;
		height: 250px;
		margin-left: -4vw;
	}

	.inner-section.full-image-section .wp-block-image {
		display: block;
		width: 100%;
		height: 100%;
		overflow: hidden;
	}

	.inner-section.full-image-section img {
		object-fit: cover;
		object-position: center center;
		display: block;
		width: 100%;
		height: 100%;
		transition: 1s cubic-bezier(0.23, 0.14, 0.19, 1) transform;
	}

	.front-page-4 .fp4-top {
		padding: calc(10rem - 40px) 0 10rem;
	}

	.core-service,
	.core-service:hover {
		flex: 1 1 100%;
	}

	.core-service--link:before {
		opacity: 0.55;
	}

	.core-service--heading h3 {
		font-size: 2.4rem;
	}

	.front-page-4 .fp4-bottom {
		padding: 10rem 0 calc(10rem - 40px);
	}

	.success-numbers {
		flex-direction: column;
	}

	.front-page-5 .banner-section--content {
		padding-top: calc(10rem + 40px);
	}

	.banner-section--content-inner {
		width: 100%;
		max-width: 100%;
	}

	.inner-section.banner-section h2,
	.inner-section.banner-section h3 {
		font-size: 3.2rem;
	}

	.banner-section.active .banner-section--background img {
		transform: none;
	}

	.banner-section--content:before {
		opacity: 0.35;
	}
	
	.customer-testimonials--wrapper:not(.slider) {
		grid-template-columns: auto;
	}

	.featured-articles {
		grid-template-columns: auto;
		gap: 6rem;
	}

	.featured-article--image img {
		max-height: 200px;
	}
}

/* Service Page */

.page:not(.home) .header-section:not(.full-width) .gb-block-layout-column-inner {
	max-width: 600px;
}

.page:not(.home) .header-section h1 {
	color: var(--es-alt-two);
	font-size: 5rem;
	font-weight: 700;
	line-height: 1.3;
	margin: 0 0 2rem;
	text-shadow: 0px 3px 5px rgba(0, 0, 0, 0.27);
}

.page:not(.home) .header-section h1:only-child {
	margin: 0;
}

.page:not(.home) .header-section p {
    color: var(--es-alt-two);
    font-size: 1.7rem;
    font-weight: 500;
    line-height: 1.7;
    margin: 0 0 3.5rem;
    text-shadow: 0px 3px 5px rgba(0, 0, 0, 0.27);
}

.page:not(.home) .header-section p:last-child {
    margin: 0;
}

/* .page:not(.home) .header-section a.button {
    background-color: var(--es-green-one);
    border-color: var(--es-green-one);
} */

.fixed-header:not(.home) .header-section + .inner-section {
    padding-top: calc(12rem - 40px);
}

.inner-section.no-padding-top {
	padding-top: 0;
}

.inner-section.no-padding-bottom {
	padding-bottom: 0;
}

.inner-section.intro-section .wp-block-image {
    position: relative;
    min-height: 300px;
    height: 100%;
    margin: 1.5rem 0 0;
    border-bottom-left-radius: 40px;
    overflow: hidden;
}

.inner-section.intro-section .wp-block-image img {
	object-fit: cover;
    object-position: center center;
	position: absolute;
	width: 100%;
	height: 100%;
}

.image-mosaic {
	display: flex;
	flex-direction: column;
	gap: 3rem;
	width: 100%;
	height: 100%;
}

.image-mosaic--top {
	flex: 1 1 300px;
	position: relative;
	height: 100%;
	border-top-right-radius: 40px;
	overflow: hidden;
}

.image-mosaic--top img {
	object-fit: cover;
	object-position: center center;
	position: absolute;
	width: 100%;
	height: 100%;
}

.image-mosaic--bottom {
	flex: 1 1 calc(100% - 300px);
	display: flex;
	gap: 3rem;
	width: 100%;
	height: 100%;
}

.image-mosaic--bottom-left {
    flex: 3;
    width: 100%;
    height: 100%;
}

.image-mosaic--bottom-right {
    flex: 5;
	display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
}

.image-mosaic--panel {
    display: block;
    width: 100%;
	min-height: 200px;
    height: 100%;
}

.image-mosaic--bottom-left .image-mosaic--panel {
	background-color: #0d8d56;
}

.image-mosaic--bottom-right .image-mosaic--panel {
	background-color: #e7ab67;
}

.image-mosaic--copy {
	padding: 3rem 0 8rem;
}

.image-mosaic--copy p {
	font-size: 1.5rem;
}

.inner-section.video-section {
	padding: 0;
}

.video-banner {
	background-color: var(--es-dark-one);
	position: relative;
	display: block;
	border-radius: 20px;
	overflow: hidden;
	z-index: 1;
}

.video-banner--image {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    overflow: hidden;
    z-index: 2;
}

.video-banner--image img {
	object-fit: cover;
	object-position: center center;
	display: block;
	width: 100%;
	height: 100%;
	transition: 1s cubic-bezier(0.23, 0.14, 0.19, 1) transform;
}

.video-banner:hover .video-banner--image img {
	transform: scale3d(1.4, 1.4, 1.4);
}

.video-banner--content {
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
	z-index: 3;
}

.video-banner--content:before {
    content: '';
    background-color: #000;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    opacity: 0.4;
    z-index: 4;
}

.video-banner--content .modal-trigger {
    background-image: none;
    position: relative;
    display: flex;
	align-items: center;
	justify-content: center;
    width: 100%;
	min-height: 500px;
    height: 100%;
	line-height: 1;
    margin: 0;
	padding: 12rem;
    border: none;
    border-radius: 20px;
    outline: none;
    box-shadow: none;
	overflow: hidden;
	white-space: pre-wrap;
    z-index: 5;
}

.video-banner--content .modal-trigger--icon {
	position: absolute;
	filter: drop-shadow(0px 3px 5px rgba(0, 0, 0, 0.27));
}

.video-banner--content .modal-trigger--icon svg {
    width: 10rem;
    height: 10rem;
	opacity: 0.75;
	transition: 0.25s ease-in-out all;
}

.video-banner:hover .modal-trigger--icon svg {
	opacity: 1;
}

.video-banner--content .modal-trigger--copy {
	color: #fff;
	font-size: 1.7rem;
	font-weight: 600;
	line-height: 1.7;
	padding: 18rem 0 0;
	text-shadow: 0px 3px 5px rgba(0, 0, 0, 0.27);
}

.modal[data-youtube-id] {
    z-index: 9999999999;
}

.modal-backdrop {
	background: rgba(0, 0, 0, 0.8);
}

.modal-backdrop.show {
	opacity: 1;
}

.modal[data-youtube-id] .modal-dialog {
	display: flex;
	flex-direction: column;
	justify-content: center;
	width: 100%;
	max-width: 85vw;
	height: 100%;
	margin: 0 auto;
	transform: none;
	overflow: hidden;
}

.modal[data-youtube-id] .modal-content {
	background: transparent;
	display: block;
	width: 100%;
	height: 100%;
	max-height: 85vh;
	margin: 0 auto;
}

.modal[data-youtube-id] .modal-header {
	position: fixed;
	justify-content: flex-end;
	width: 100%;
	height: auto;
	top: 0;
	left: 0;
	padding: 2vw;
}

.modal[data-youtube-id] .modal-header .btn-close {
	background: none;
	position: relative;
	display: block;
	height: fit-content;
	width: 25px;
	height: 25px;
	margin: 0;
	padding: 0;
	pointer-events: all;
	cursor: pointer;
	outline: none;
	z-index: 2;
}

.modal[data-youtube-id] .modal-header .btn-close svg {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
	color: #fff;
	opacity: 0.8;
	transition: 0.25s ease-in-out opacity;
}

.modal[data-youtube-id] .modal-header .btn-close:hover svg {
	opacity: 1;
}

.modal[data-youtube-id] .modal-body {
    display: flex;
    flex-direction: column;
    justify-content: center;
	width: 100%;
	height: 100%;
	padding: 0;
}

.modal[data-youtube-id] .modal-body iframe {
	aspect-ratio: 16 / 9;
	display: block;
	width: 100%;
	height: auto;
}

.inner-section.two-part-section:not(.no-gap) > .gb-layout-column-wrap > .gb-block-layout-column > .gb-block-layout-column-inner {
    gap: 4rem;
}

.inner-section .fa-icon-container {
	aspect-ratio: 1 / 1;
    display: flex;
    width: 100%;
    height: fit-content;
}

.inner-section .fa-icon-container svg {
	aspect-ratio: 1 / 1;
	width: 100%;
	height: fit-content;
}

.content-icon-section > .gb-layout-column-wrap {
    display: flex;
    flex-wrap: wrap;
	row-gap: 6rem;
    column-gap: 8rem;
}

.content-icon-section > .gb-layout-column-wrap > .gb-block-layout-column:first-of-type {
    flex: 1 1 calc(62% - 4rem);
}

.content-icon-section > .gb-layout-column-wrap > .gb-block-layout-column:last-of-type {
    flex: 1 1 calc(38% - 4rem);
}

.content-icon-section h2 {
    color: var(--es-alt-one);
    font-size: 4.2rem;
    font-weight: 700;
    line-height: 1.25;
    margin: 0 0 2.5rem;
    padding: 0;
}

.content-icon-section .tto-custom-button a.button {
	border: 2px solid #fff;
}

.content-icon-section .gb-block-layout-column-inner h2.wp-block-heading em {
	color: #cca449 !important;
}

.content-icon-section .fa-icon-container {
	aspect-ratio: unset;
	justify-content: flex-end;
}

.content-icon-section .fa-icon-container svg {
	width: 20rem;
	max-width: 50%;
	height: fit-content;
	color: #cca449;
	opacity: 0.3;
}

.before-after-images {
	display: flex;
	align-items: center;
	width: 100%;
	height: 100%;
	margin: 0 0 2rem;
	padding: 0 2rem;
}

.before-after-image {
	position: relative;
	margin: 0 0 4rem;
	z-index: 1;
}

.before-after-image.after {
	margin: 4rem 0 0;
}

.before-after-image--image {
	aspect-ratio: 1 / 1;
	position: relative;
    width: 100%;
    height: auto;
	border: 4px solid;
	border-color: #fbd0d0;
	border-top-left-radius: 50px;
	overflow: hidden;
	z-index: 2;
}

.before-after-image.after .before-after-image--image {
	border-color: #0a8552;
	border-top-left-radius: 0;
	border-top-right-radius: 50px;
}

.before-after-image--image img {
	object-fit: cover;
	object-position: center center;
	width: 100%;
	height: 100%;
}

.before-after-image--text {
	background-color: #fbd0d0;
	position: absolute;
	width: fit-content;
	height: 44px;
	top: auto;
	bottom: -20px;
	left: -2rem;
	padding: 1.2rem 2.5rem;
	z-index: 3;
}

.before-after-image.after .before-after-image--text {
	background-color: #0a8552;
	left: auto;
	right: -2rem;
}

.before-after-image--text p {
	color: var(--es-alt-one);
	font-size: 2rem;
	line-height: 1;
}

.before-after-image.after .before-after-image--text p {
	color: var(--es-alt-two);
}

.before-after-image.styled * {
	background-color: inherit !important;
    border-color: inherit !important;
}

.content-grid-section > .gb-container-inside > .gb-container-content {
    display: flex;
    flex-wrap: wrap;
    row-gap: 6rem;
    column-gap: 8rem;
}

.content-grid-section.three-column > .gb-container-inside > .gb-container-content {
	gap: 6rem;
}

.content-grid-section .wp-block-genesis-blocks-gb-columns,
.content-grid-section .wp-block-genesis-blocks-gb-columns > .gb-layout-column-wrap,
.content-grid-section .wp-block-genesis-blocks-gb-columns > .gb-layout-column-wrap > .gb-block-layout-column {
    display: contents;
}

.content-grid-section .gb-block-layout-column-inner {
	flex: 1 1 calc(50% - 4rem);
}

/* .content-grid-section.three-column .gb-block-layout-column-inner {
	flex: 1 1 calc((100% - 16rem) / 3);
} */

.why-choose-us-section .gb-block-layout-column-inner {
	flex: 1 1 calc((100% - 16rem) / 3);
}

.our-process-section .gb-block-layout-column-inner {
	flex: 1 1 calc((100% - 16rem) / 3);
}

.content-grid-section h3 {
	max-width: 350px;
	font-size: 2.2rem;
	line-height: 1.4;
}

.content-grid-section .fa-icon-container {
	aspect-ratio: 1 / 1;
	width: 70px;
	height: fit-content;
	margin: 0 0 2rem;
}

.content-grid-section .fa-icon-container svg {
	color: #cca449;
}

/* .services-page .two-part-section .content-grid-section .wp-block-heading a:after {
	content: '\f061';
	display: flex;
	font-size: 1.4rem;
	font-family: 'Font Awesome 6 Pro';
	font-weight: 400;
} */
 /* .services-page .two-part-section .content-grid-section .wp-block-heading a:after {
 	content: '\f061';
 	display: flex;
 	font-size: 1.4rem;
 	font-family: 'Font Awesome 6 Pro';
 	font-weight: 400;
 } */


/* .services-page .two-part-section .content-grid-section .wp-block-heading svg:after {
	content: '\f061';
	display: flex;
	font-size: 1.4rem;
	font-family: 'Font Awesome 6 Pro';
	font-weight: 400;
} */

.areas-served-page .content-grid-section .wp-block-list a::after {
	content: '\f061';
	position: absolute;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0.5rem;
	width: 1.4rem;
	height: 1.4rem;
	top: auto;
	right: 1.4rem;
	color: var(--es-alt-one);
	display: none;
	font-size: 1.4rem;
	font-family: 'Font Awesome 6 Pro';
	font-weight: 400;
	pointer-events: none;
}

.areas-served-page .content-grid-section .wp-block-list a {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	gap: 1.5rem;
	font-size: 2rem;
}

.areas-served-page .content-grid-section .wp-block-list a:hover {
	color: #cca449;
}

.inner-section.green-bg h2,
.inner-section.green-bg h3,
.inner-section.green-bg p,
.inner-section.green-bg li {
	color: var(--es-alt-two);
}

.inner-section.green-bg h2 em {
	color: #feffdc !important;
}

.inner-section.green-bg .content-grid-section .fa-icon-container svg {
	color: #cca449;
}

.inner-section.cta-section h2 {
	font-size: 3.6rem;
}

.content-image-grid > .gb-layout-column-wrap > .gb-block-layout-column > .gb-block-layout-column-inner {
	display: grid;
	grid-template-rows: repeat(16, 1fr);
}

.content-image-grid--image {
	grid-row: 1 / span 9;
	border-radius: 20px;
	overflow: hidden;
}

.content-image-grid--content {
	grid-row: 10 / span 7;
	margin: 4rem 0 0;
}

.content-image-grid > .gb-layout-column-wrap {
    gap: 4rem;
}

.content-image-grid > .gb-layout-column-wrap > .gb-block-layout-column:last-of-type .content-image-grid--image {
	grid-row-start: 8;
}

.content-image-grid > .gb-layout-column-wrap > .gb-block-layout-column:last-of-type .content-image-grid--content {
	grid-row-start: 1;
	margin: 0 0 4rem;
}

.content-image-grid--image .gb-container-inside,
.content-image-grid--image .gb-container-content,
.content-image-grid--image .wp-block-image {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
	overflow: hidden;
}

.content-image-grid--image .wp-block-image img {
	object-fit: cover;
	object-position: center center;
	position: absolute;
	width: 100%;
	height: 100%;
}

.content-image-grid--content h3 {
	font-size: 2.4rem;
	font-weight: 800;
}

.inner-section.cta-section {
	border-top: 1.5px solid #ececec;
}

.inner-section.form-section > .gb-layout-column-wrap {
	display: flex;
	flex-wrap: wrap;
	max-width: 1050px;
}

.inner-section.form-section > .gb-layout-column-wrap .gb-block-layout-column:first-of-type {
    flex: 1 1 calc(72% - 4rem);
}

.inner-section.form-section > .gb-layout-column-wrap .gb-block-layout-column:last-of-type {
    flex: 1 1 calc(28% - 4rem);
}

.inner-section.form-section .wp-block-image {
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
	border-radius: 20px;
	overflow: hidden;
}

.inner-section.form-section .wp-block-image img {
	object-fit: cover;
	object-position: top center;
	width: 100%;
	height: calc(100% + 250px);
	transform: none;
	transition: 1.5s cubic-bezier(0.23, 0.14, 0.19, 1) transform;
}

.inner-section.form-section.transitioned .wp-block-image img {
	transform: translateY(-250px);
}

.gform_wrapper.gravity-theme .gform_required_legend {
    display: none;
}

.gform_wrapper.gravity-theme .gform_fields {
	gap: 2rem;
}

.gform_wrapper.gravity-theme .gfield {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
}

.gform_wrapper.gravity-theme .gfield .gfield_label {
	display: flex;
	gap: 0.25rem;
	color: #fff;
	font-size: 1.5rem;
	font-weight: 600;
	margin: 0;
}

.about .gform_wrapper.gravity-theme .gfield .gfield_label {
	color: #000;
}

@media (max-width: 896px) {
	.gform_wrapper.gravity-theme .gfield .gfield_label {
		display: flex;
		gap: 0.25rem;
		color: #000;
		font-size: 1.5rem;
		font-weight: 600;
		margin: 0;
	}
}

.areas-served-pages .gform_wrapper.gravity-theme .gfield .gfield_label {
	display: flex;
	gap: 0.25rem;
	color: #fff;
	font-size: 1.5rem;
	font-weight: 600;
	margin: 0;
}

@media (max-width: 896px) {
	.areas-served-pages .gform_wrapper.gravity-theme .gfield .gfield_label {
		display: flex;
		gap: 0.25rem;
		color: #000;
		font-size: 1.5rem;
		font-weight: 600;
		margin: 0;
	}
}

.schedule-estimate .gform_wrapper.gravity-theme .gfield .gfield_label {
 	display: flex;
 	gap: 0.25rem;
 	color: #000;
 	font-size: 1.5rem;
 	font-weight: 600;
 	margin: 0;
}

.services-page .gform_wrapper.gravity-theme .gchoice label {
	color: #fff;
}

.gform_wrapper.gravity-theme .gfield.gfield--type-address .gfield_label {
	margin: 0 0 0.75rem;
}

.gform_wrapper.gravity-theme .gfield input,
.gform_wrapper.gravity-theme .gfield select,
.gform_wrapper.gravity-theme .gfield textarea,
.blog-select-container .blog-select select {
    color: var(--es-alt-one);
    font-size: 1.4rem;
    font-weight: 400;
    padding: 10px 13px !important;
    border: 1px solid #cca449;
    border-radius: 0;
	transition: 0.25s ease-in-out border-color;
}

.areas-served-pages .gform_wrapper.gravity-theme .gfield input,
.areas-served-pages .gform_wrapper.gravity-theme .gfield select,
.areas-served-pages .gform_wrapper.gravity-theme .gfield textarea,
.areas-served-pages .blog-select-container .blog-select select {
	color: var(--es-alt-one);
	font-size: 1.4rem;
	font-weight: 400;
	padding: 10px 13px !important;
	border: 1px solid #cca449;
	border-radius: 0;
	transition: 0.25s ease-in-out border-color;
}

.gform_wrapper.gravity-theme .gfield input:focus,
.gform_wrapper.gravity-theme .gfield select:focus,
.gform_wrapper.gravity-theme .gfield textarea:focus,
.blog-select-container .blog-select select:focus {
	border-color: #000;
}

.gform_wrapper.gravity-theme .gfield input[type="file"] {
	display: flex;
	background-color: transparent;
	padding: 0 !important;
	height: fit-content;
	line-height: unset;
	margin: 0;
	border: none;
	border-radius: 0;
}

.gform_wrapper.gravity-theme .gfield .gform_fileupload_rules {
	font-size: 1.2rem;
	font-weight: 500;
	padding: 0;
	margin: 1rem 0 0;
}

.gform_wrapper.gravity-theme .gfield select,
.blog-select-container .blog-select select {
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	pointer-events: all;
	cursor: pointer;
	line-height: 2rem;
}

.gform_wrapper.gravity-theme .gfield .ginput_container_select,
.gform_wrapper.gravity-theme .gfield .ginput_address_state,
.blog-select-container .blog-select {
	position: relative;
	display: flex;
	align-items: center;
}

.gform_wrapper.gravity-theme .gfield .ginput_address_state {
	display: block;
}

.gform_wrapper.gravity-theme .gfield .ginput_container_select:after,
.gform_wrapper.gravity-theme .gfield .ginput_address_state:after,
.blog-select-container .blog-select:after {
	content: '\f078';
	position: absolute;
	display: flex;
    align-items: center;
    justify-content: center;
	width: 1.4rem;
	height: 1.4rem;
	top: auto;
	right: 1.4rem;
	color: var(--es-alt-one);
	font-size: 1.4rem;
	font-family: 'Font Awesome 6 Pro';
	font-weight: 400;
	pointer-events: none;
}

.gform_wrapper.gravity-theme .gfield .ginput_container_select svg[data-fa-pseudo-element='::after'],
.gform_wrapper.gravity-theme .gfield .ginput_address_state svg[data-fa-pseudo-element='::after'],
.blog-select-container .blog-select svg[data-fa-pseudo-element='::after'] {
	display: none;
}

.gform_wrapper.gravity-theme .gfield .ginput_address_state:after {
    top: 1.4rem;
	right: calc(1.4rem + 0.9804%);
}

@media (min-width: 641px) {
	.gform_wrapper.gravity-theme .gfield .ginput_address_state:after {
		right: calc(1.4rem + (0.9804% * 2));
	}
}

.gform_wrapper.gravity-theme .gfield .ginput_container.ginput_container_textarea {
	display: flex;
}

.gform_wrapper.gravity-theme .gform_footer {
	margin: 3rem 0 0;
	padding: 0;
}

.gform_wrapper.gravity-theme .gform_footer input[type="submit"] {
	background-image: none;
	background-color: #cca449;
	width: 100%;
	height: fit-content;
	color: #000;
	font-size: 1.5rem;
	line-height: 1;
	margin: 0;
	padding: 1.5rem 2.5rem;
	border: none;
	border-radius: 0;
	box-shadow: none;
	transition: 0.25s ease-in-out all;
}

.areas-served-pages .gform_wrapper.gravity-theme .gform_footer input[type="submit"] {
	background-image: none;
	background-color: #cca449;
	width: 100%;
	height: fit-content;
	color: #fff;
	font-size: 1.5rem;
	line-height: 1;
	margin: 0;
	padding: 1.5rem 2.5rem;
	border: solid 2px #fff;
	border-radius: 0;
	box-shadow: none;
	transition: 0.25s ease-in-out all;
}

.gform_wrapper.gravity-theme .gform_footer input[type="submit"]:hover {
	filter: brightness(1.1);
}

@media (max-width: 991px) {
	.image-mosaic.with-copy .image-mosaic--bottom {
		flex-wrap: wrap;
	}

	.image-mosaic.with-copy .image-mosaic--bottom-left,
	.image-mosaic.with-copy .image-mosaic--bottom-right {
		display: contents;
	}

	.image-mosaic.with-copy .image-mosaic--bottom-left .image-mosaic--panel {
		flex: 1 1 calc((100% - 3rem) * (3 / 8));
		height: 200px;
	}

	.image-mosaic.with-copy .image-mosaic--bottom-right .image-mosaic--panel {
		flex: 1 1 calc((100% - 3rem) * (5 / 8));
		height: 200px;
	}

	.image-mosaic.with-copy .image-mosaic--copy {
		height: calc(100% - 3rem - 200px);
		padding: 0;
	}

	.content-image-grid--image {
		grid-row: 1 / span 7;
	}

	.content-image-grid--content {
		grid-row: 8 / span 9;
	}

	.content-image-grid > .gb-layout-column-wrap > .gb-block-layout-column:last-of-type .content-image-grid--content {
		grid-row-start: 1;
	}

	.content-image-grid > .gb-layout-column-wrap > .gb-block-layout-column:last-of-type .content-image-grid--image {
		grid-row-start: 10;
	}

	.content-image-grid > .gb-layout-column-wrap {
		display: flex;
		flex-direction: column;
		gap: 6rem;
	}
}

@media (max-width: 767px) {
	.page:not(.home) .header-section h1 {
		font-size: 4.2rem;
	}

	.inner-section.intro-section > .gb-layout-column-wrap .gb-block-layout-column:last-of-type,
	.inner-section.form-section > .gb-layout-column-wrap .gb-block-layout-column:last-of-type {
		display: none;
	}

	.inner-section.intro-section .wp-block-image {
		border-radius: 40px;
		min-height: 200px;
	}

	.video-banner--content .modal-trigger {
		min-height: 300px;
	}

	.video-banner--content .modal-trigger--copy {
		display: none;
	}

	.content-icon-section > .gb-layout-column-wrap > .gb-block-layout-column:last-of-type {
		display: none;
	}

	.content-grid-section > .gb-container-inside > .gb-container-content {
		flex-direction: column;
	}

	.content-icon-section h2 {
		font-size: 3.2rem;
	}

	.content-image-grid > .gb-layout-column-wrap > .gb-block-layout-column:last-of-type .content-image-grid--image {
		grid-row-start: 1;
	}

	.content-image-grid > .gb-layout-column-wrap > .gb-block-layout-column:last-of-type .content-image-grid--content {
		grid-row-start: 8;
		margin: 4rem 0 0;
	}

	.inner-section.cta-section > .gb-layout-column-wrap {
		display: block;
	}
}

/* Estimate Page */

.estimate-page .content-sidebar-wrap {
	width: 100%;
	height: 100vh;
	min-height: 0;
}

.logged-in.admin-bar.estimate-page .content-sidebar-wrap {
	height: calc(100vh - 32px);
}

@media (max-width: 782px) {
	.logged-in.admin-bar.estimate-page .content-sidebar-wrap {
		height: calc(100vh - 46px);
	}
}

@media (max-width: 600px) {
	.logged-in.admin-bar.estimate-page .content-sidebar-wrap {
		height: 100vh;
	}
}

.estimate-page .content,
.estimate-page .entry,
.estimate-page .entry-content {
    display: block;
    width: 100%;
    height: 100%;
}

/* Blog Page */

.blog-archive {
	width: 100%;
}

.blog .content > .entry {
	border: none;
	box-shadow: none;
}

.blog-archive--featured > .wrap,
.blog-archive--wrapper > .wrap {
	position: relative;
	width: 92%;
	max-width: 1300px;
	margin: 0 auto;
}

.blog-archive--featured h2,
.blog-archive--wrapper h2 {
	text-align: center;
	margin: 0 0 4rem;
}

.blog-archive--featured {
	padding: 12rem 0;
}

.blog-archive--featured .tto-recent-articles {
	margin: 0;
}

.blog-archive--featured .tto-recent-articles .tto-recent-articles--wrapper {
	display: block;
}

.blog-archive--featured .tto-recent-articles .recent-article {
	box-shadow: none !important;
}

@media (min-width: 992px) {
	.blog-archive--featured .tto-recent-articles .recent-article {
		border: none;
		border-radius: 0;
		box-shadow: none;
		transition: none;
	}

	.blog-archive--featured .tto-recent-articles .recent-article .recent-article--link {
		flex-direction: row;
		align-items: center;
		gap: 5rem;
		padding: 0;
	}

	.blog-archive--featured .tto-recent-articles .recent-article .recent-article--image {
		flex: 7;
		margin: 0;
	}

	.blog-archive--featured .tto-recent-articles .recent-article .recent-article--content {
		flex: 5;
		display: block;
		height: fit-content;
		margin: 0;
	}

	.blog-archive--featured .tto-recent-articles .recent-article .recent-article--content-info-description p {
		font-size: 1.7rem;
	}

	.blog-archive--featured .tto-recent-articles .recent-article .recent-article--content-cta p {
		margin: 3.5rem 0 0;
	}
}

.blog-archive--wrapper {
	background-color: #f9f9f9;
	padding: 12rem 0;
}

.blog:not(.first-page) .blog-archive--wrapper {
	background-color: var(--es-alt-two);
}

.blog-archive--wrapper .tto-recent-articles .tto-recent-articles--wrapper {
	row-gap: 3rem;
}

.blog-select-container {
	max-width: calc((100% - 6rem) / 3);
}

.blog-select-container .blog-select select {
	background-color: #fff;
	font-size: 1.5rem;
}

.blog-pagination ul {
    display: flex;
    align-items: center;
    gap: 2rem;
    margin: 5rem 0 0;
}

.blog-pagination ul li .current,
.blog-pagination ul li a {
	background-color: #f9f9f9;
	color: #222;
	display: block;
	font-size: 1.5rem;
	font-weight: 500;
	line-height: 1;
	padding: 1.2rem 1.5rem;
	text-decoration: none;
	word-spacing: 0.2px;
	border: 1px solid #ccc;
	border-radius: 4px;
	box-shadow: 0px 3px 5px -2px rgba(0, 0, 0, 0.17);
	overflow: hidden;
}

.blog-pagination ul li .current {
	background-color: var(--es-green-one);
	color: #fff;
	border-color: var(--es-green-one);
	box-shadow: none;
}

.blog-pagination ul li a {
	background-color: #fff;
}

.blog-pagination ul li a:hover {
	background-color: var(--es-green-three);
	color: #fff;
	border-color: var(--es-green-three);
	box-shadow: none;
}

.blog .tto-recent-articles {
	margin: 4rem 0 0;
}

.home .tto-recent-articles {
	margin: 8rem 0 6rem;
}

body .tto-recent-articles .recent-article {
	border-radius: 20px;
}

body .tto-recent-articles .recent-article .recent-article--link {
	text-align: left;
}

.blog-archive--featured .tto-recent-articles .recent-article .recent-article--image {
	border-radius: 40px;
    overflow: hidden;
}

body .tto-recent-articles .recent-article .recent-article--content h2,
body .tto-recent-articles .recent-article .recent-article--content h3 {
	color: var(--es-alt-one);
	font-size: 1.9rem;
	font-weight: 700;
	line-height: 1.4;
	margin: 0;
	padding: 0;
	text-align: left;
}

body .tto-recent-articles .recent-article .recent-article--content-info-title {
	margin: 0 0 2rem;
}

body .tto-recent-articles .recent-article .recent-article--content-info-date p {
	font-size: 1.3rem;
	font-weight: 500;
}

body .tto-recent-articles .recent-article .recent-article--content-info-description p {
	color: var(--es-alt-one);
	font-size: 1.5rem;
	font-weight: 500;
	line-height: 1.75;
}

body .tto-recent-articles .recent-article .recent-article--content-cta p {
    color: var(--es-alt-one);
    font-size: 1.6rem;
}

@media (max-width: 991px) {
	.blog-archive--featured .tto-recent-articles .recent-article {
		max-width: 350px;
		margin: 0 auto;
	}
}

@media (max-width: 767px) {
	.blog-archive--wrapper {
		padding: 10rem 0;
	}

	.blog-archive--featured > .wrap,
	.blog-archive--wrapper > .wrap {
		width: 100%;
		max-width: 100%;
		margin: 0;
		padding: 0 4vw;
	}

	.blog-select-container {
		max-width: 350px;
		margin: 0 auto;
	}

	.blog-pagination ul {
		flex-wrap: wrap;
		justify-content: center;
	}
}

/* About Page */

.inner-section.about-section > .gb-layout-column-wrap {
    gap: 0;
}

.inner-section.about-section > .gb-layout-column-wrap > .gb-block-layout-column:not(.moving-copy-container) {
	background-color: #29855e;
	margin: 0 0 12rem;
	padding: 6rem;
}

.inner-section.about-section .moving-copy-container > .gb-block-layout-column-inner {
	display: contents;
}

.inner-section.about-section .moving-copy {
	display: block;
	width: 100%;
	height: calc(100% - 12rem);
}

.inner-section.about-section .moving-copy .gb-container-inside,
.inner-section.about-section .moving-copy .gb-container-content,
.inner-section.about-section .wp-block-image {
	display: block;
	width: 100%;
	height: 100%;
}

.inner-section.about-section .wp-block-image img {
	object-fit: cover;
	object-position: center center;
	width: 100%;
	height: 100%;
}

.inner-section.about-section h2 {
	color: var(--es-alt-two);
	font-size: 4.2rem;
}

.inner-section.about-section p {
    color: var(--es-alt-two);
}

.moving-copy-container {
	display: block;
	width: 100%;
	height: 100%;
}

.moving-copy {
	position: sticky;
	top: 0;
	left: 0;
	height: fit-content;
}

.wide-image-section .wp-block-image img {
	aspect-ratio: 2 / 1;
	object-fit: cover;
	object-position: center center;
	width: 100%;
	height: auto;
}

.wide-image-section.contained .wp-block-image img {
	object-fit: contain;
	max-height: 250px;
}

.tight-section h2,
.tight-section h3 {
	font-size: 3.2rem;
}

.tight-section > .gb-container-inside {
    max-width: 760px;
    margin: 0 auto;
}

.not-found-page .inner-section.tight-section > .gb-container-inside {
	width: 92%;
}

@media (max-width: 767px) {
	.inner-section.about-section > .gb-layout-column-wrap > .gb-block-layout-column:not(.moving-copy-container) {
		order: 2;
		margin: 0;
		padding: 5rem;
	}

	.inner-section.about-section h2 {
		font-size: 3.2rem;
	}
}

/* Team Page */

.inner-section.team-archive-section,
.inner-section.team-archive-section > .gb-layout-column-wrap {
	width: 100%;
	max-width: 100%;
	margin: 0;
	padding: 0;
}

.team-members {
	padding: 12rem 0;
}

.team-members:nth-of-type(2n) {
	background-color: #f5f5f5;
}

.team-members--container {
	display: flex;
    flex-direction: column;
    gap: 6rem;
	width: 92%;
	max-width: 1300px;
	margin: 0 auto;
}

.team-members--heading h2 {
	font-size: 3.6rem;
	margin: 0;
}

.team-members--inner {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	row-gap: 6rem;
	column-gap: 4rem;
}

.team-member--headshot img {
	aspect-ratio: 7 / 5;
	object-fit: cover;
	object-position: center center;
	width: 100%;
	height: auto;
	border-radius: 12px;
}

.team-member--title {
	margin: 2rem 0 0.5rem;
	padding: 0 1rem;
}

.team-member--title h3 {
	font-size: 2rem;
	font-weight: 600;
	margin: 0;
	text-align: center;
}

.team-member--role p {
	font-size: 1.5rem;
	font-weight: 500;
	text-align: center;
}

@media (max-width: 1195px) {
	.team-members--inner {
		grid-template-columns: repeat(3, 1fr);
	}
}

@media (max-width: 895px) {
	.team-members--inner {
		grid-template-columns: repeat(2, 1fr);
	}

	.team-member--headshot img {
		object-position: center top;
		max-height: 250px;
	}
}

@media (max-width: 767px) {
	.team-members {
		padding: 10rem 0;
	}
}

@media (max-width: 512px) {
	.team-members--heading h2 {
		text-align: center;
	}

	.team-members--inner {
        grid-template-columns: auto;
    }

	.team-member--headshot img {
        max-width: 250px;
        margin: 0 auto;
    }
}

/* Contact Page */

.header-section.contact-header > .gb-layout-column-wrap > .gb-block-layout-column > .gb-block-layout-column-inner {
    justify-content: center;
}

.header-section.contact-header .gform_wrapper.gravity-theme {
	background-color: var(--es-alt-two);
	width: 100%;
	max-width: 500px;
	margin-left: auto;
	padding: 4rem;
	border-radius: 20px;
}

.contact-widgets .gb-layout-column-wrap {
	gap: 6rem;
}

.contact-widgets .fa-icon-container {
	width: 36px;
	margin: 0 0 2.5rem;
}

.contact-widgets .fa-icon-container svg {
	color: var(--es-green-one);
}

.contact-widgets h3 {
	font-size: 2.8rem;
	font-weight: 500;
}

.contact-widgets p {
	font-size: 1.5rem;
	margin: 0 0 1.5rem;
}

.entry-content .contact-widgets p a {
	color: var(--es-green-one);
	box-shadow: none;
	transition: 0.25s ease-in-out all;
}

.entry-content .contact-widgets p a:hover {
	color: var(--es-alt-three);
}

body .contact-widgets .tto-social-media .tto-social-media--container {
	flex-wrap: wrap;
	gap: 2.4rem;
}

body .contact-widgets .tto-social-media .tto-social-media--container .tto-social-media--icon-link svg {
    width: 36px;
    height: 36px;
}

.contact-locations .gb-layout-column-wrap {
	gap: 6rem;
}

.contact-locations .google-map-embed {
	display: block;
	width: 100%;
	height: 275px;
	margin: 0 0 4rem;
	border-radius: 2rem;
	overflow: hidden;
}

.contact-locations .google-map-embed--wrapper,
.contact-locations .google-map-embed iframe {
	display: block;
	width: 100%;
	height: 100%;
}

.contact-locations h3 {
	font-size: 3rem;
}

.contact-locations p {
	font-size: 1.5rem;
}

.partners-slider {
	position: relative;
}

.partners-slider--container {
	width: 80%;
	max-width: 960px;
	margin: 0 auto;
}

.partners-slider .swiper-slide {
	height: 60px;
}

.partners-slider .partner-slide {
	display: block;
	width: 100%;
	height: 100%;
	padding-left: 15px;
}

.partners-slider .partner-slide--link {
	display: block;
	height: 60px;
	margin: 0 auto;
}

.partners-slider .partner-slide img {
	object-fit: contain;
	display: block;
	width: 100%;
	height: 100%;
}

.partners-slider .swiper-button-prev,
.partners-slider .swiper-button-next {
    display: flex;
    width: 30px;
    height: 30px;
    top: 15px;
	left: calc(((100% - 960px) / 4) - 15px);
    margin: 0;
}

.partners-slider .swiper-button-next {
	left: auto;
	right: calc(((100% - 960px) / 4) - 15px);
}

.partners-slider .swiper-button-prev:after,
.partners-slider .swiper-button-next:after {
    display: none;
}

.partners-slider .swiper-button-prev span,
.partners-slider .swiper-button-next span {
    display: flex;
	color: #cca449;
	transition: 0.25s ease-in-out all;
}

.partners-slider .swiper-button-prev:hover span,
.partners-slider .swiper-button-next:hover span {
	color: #000;
}

@media (max-width: calc(960px / 0.8)) {
	.partners-slider .swiper-button-prev {
		left: calc(5% - 15px);
	}

	.partners-slider .swiper-button-next {
		right: calc(5% - 15px);
	}
}

@media (max-width: 767px) {
	.contact-widgets .gb-layout-column-wrap,
	.contact-locations .gb-layout-column-wrap {
		display: flex;
		flex-direction: column;
	}
}

.partners-slider--container .swiper {
	padding: 0 0 3rem 0;
	text-align: center;
}

a.partner-slide--link:hover {
	color: #cca449;
}
/* Single Post */

.single .header-section {
	background-color: var(--es-green-one);
}

.single .header-section:before {
    content: '';
    background-color: var(--es-alt-one);
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
	opacity: 0.68;
    z-index: 2;
}

.single .header-section > .wrap {
	position: relative;
    max-width: 960px;
    z-index: 3;
}

.single .header-section h1 {
    color: var(--es-alt-two);
    font-size: 4.2rem;
    font-weight: 700;
    line-height: 1.3;
    text-align: center;
	text-shadow: 0px 2px 4px rgba(0, 0, 0, 0.37);
}

.single .header-section .entry-meta {
	position: relative;
	margin: 3rem 0 0;
	z-index: 1;
}

.single .header-section .entry-meta .entry-meta--inner {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	row-gap: 2rem;
	column-gap: 3rem;
	color: var(--es-alt-two);
	font-size: 1.6rem;
	font-weight: 600;
	line-height: 1;
	margin: 0;
	text-shadow: 0px 2px 4px rgba(0, 0, 0, 0.37);
	opacity: 1;
}

.single .header-section .entry-meta .entry-meta--inner span {
	display: flex;
	align-items: center;
	gap: 1.25rem;
}

.single .header-section .entry-meta .entry-meta--inner span.entry-meta--separator {
	font-size: 3rem;
	line-height: 1.6rem;
	margin: 0 0 0.25rem;
}

.single .entry-before {
    display: flex;
    flex-direction: column;
	gap: 3rem;
	margin: 0 0 8rem;
}

.single .entry-before--time {
	flex: 0 1 fit-content;
}

.single .entry-before--time p {
	display: flex;
	align-items: center;
	gap: 1.2rem;
	font-size: 1.9rem;
	font-weight: 500;
	margin: 0;
}

.single .entry-before--time p strong {
	font-weight: 700;
	margin-right: 0.5rem;
}

.single .entry-before--thumbnail {
	border: 2.5px solid #ececec;
	border-radius: 4rem;
	box-shadow: 0px 7px 17px -4px rgba(0, 0, 0, 0.27);
	overflow: hidden;
}

.single .entry-before--thumbnail img {
    aspect-ratio: 5 / 2;
    object-fit: cover;
    object-position: center center;
    width: 100%;
    height: fit-content;
}

.single .entry-after {
	margin: 6rem 0 0;
	padding: 6rem 0 0;
	border-top: 1px solid #dbdbdb;
}

.single .entry-after a.button {
    display: flex;
    align-items: center;
    gap: 1.25rem;
    margin: 0;
}

.single .content-sidebar-wrap {
	width: 100%;
	max-width: 100%;
	margin: 0;
	padding: 12rem 0;
}

.single .content-sidebar-wrap .content {
	display: block;
	width: 90%;
	max-width: 786px;
	margin: 0 auto;
	padding: 0;
}

.single .content-sidebar-wrap .content:before {
	display: none;
}

.single .content-sidebar-wrap .content .entry {
	width: 100%;
	max-width: 100%;
	margin: 0;
	padding: 0;
}

.single .share-sidebar {
	position: fixed;
	display: block;
	top: 30%;
	right: 1%;
	opacity: 0;
	transition: 0.25s ease-in-out opacity;
}

.single .share-sidebar.visible {
	opacity: 1;
}

.single .share-sidebar .sharrre {
	display: block;
	margin: 1.5rem 0;
}

.single .share-medium .no-count .share {
    width: 100px;
	height: 40px;
    font-size: 16px;
	font-weight: 600;
    line-height: 40px;
	text-align: center;
}

.single .share-medium .share:before {
	height: 40px;
    top: 5px;
    left: 7px;
	font-size: 18px;
    line-height: 30px;
}

.single .share-medium .sharrre:hover .no-count .share {
    width: 100px;
    opacity: 0.85;
}

.single .entry-content h2 {
	font-size: 3.6rem;
	font-weight: 800;
	line-height: 1.4;
	margin: 8rem 0 3rem;
	padding: 0;
	letter-spacing: 0.02px;
	word-spacing: 0.09px;
}

.single .entry-content h3 {
	font-size: 3.2rem;
	font-weight: 600;
	line-height: 1.4;
	margin: 8rem 0 3rem;
	padding: 0;
	letter-spacing: 0.02px;
	word-spacing: 0.09px;
}

.single .entry-content h4 {
	font-size: 2.2rem;
	font-weight: 700;
	line-height: 1.4;
	margin: 8rem 0 3rem;
	padding: 0;
	letter-spacing: 0.02px;
}

.single .entry-content p,
.single .entry-content ul li {
    color: var(--es-alt-one);
    font-size: 1.9rem;
    line-height: 1.8;
    letter-spacing: 0.02px;
    word-spacing: 0.09px;
}

.single .entry-content p,
.single .entry-content ul {
	margin-bottom: 3rem;
}

.single .entry-content p:last-child,
.single .entry-content ul:last-child {
	margin-bottom: 0;
}

.single .entry-content img {
	border-radius: 12px;
}

@media (max-width: 1095px) {
	.single .content-sidebar-wrap {
		padding: 8rem 0;
	}

	.single .share-sidebar {
		position: unset;
		margin: 4rem 0 0;
		opacity: 1 !important;
	}

	.single .share-sidebar .sharrre {
		display: inline-flex;
		margin: 0 2rem 0 0;
	}

	.single .share-medium .no-count .share {
		width: 80px;
		height: 30px;
		font-size: 12px;
		line-height: 30px;
	}

	.single .share-medium .share:before {
		top: 0;
		height: 30px;
		font-size: 14px;
	}
}

@media (max-width: 767px) {
	.single .header-section h1 {
		font-size: 3.2rem;
		text-align: left;
	}

	.single .entry-content h2 {
	    font-size: 2.8rem;
	}

	.single .entry-content h3 {
    	font-size: 2.4rem;
	}

	.single .entry-content h4 {
    	font-size: 2rem;
	}
	
	.single .header-section .entry-meta .entry-meta--inner {
		justify-content: flex-start;
		column-gap: 2rem;
		font-size: 1.8rem;
	}

	.single .header-section .entry-meta .entry-meta--inner span.entry-meta--separator {
		font-size: 2.6rem;
		line-height: 1.8rem;
	}
}

@media (max-width: 512px) {
	.single .header-section .entry-meta .entry-meta--inner {
		flex-direction: column;
		align-items: flex-start;
	}

	.single .header-section .entry-meta .entry-meta--inner span.entry-meta--separator {
		display: none;
	}
}

/* Careers Page */

.careers-image-grid {
    display: grid;
    grid-template-rows: repeat(2, 1fr);
    grid-template-columns: repeat(24, 1fr);
    gap: 3rem;
}

.careers-image-grid--item.main-image {
	grid-row: 1 / span 2;
	grid-column: 1 / span 15;
	height: calc(500px + 3rem);
}

.careers-image-grid--item.small-image.one {
	grid-row: 1;
	grid-column: 16 / span 9;
	height: 250px;
}

.careers-image-grid--item.small-image.two {
	grid-row: 2;
	grid-column: 16 / span 9;
	height: 250px;
}

.careers-image-grid--item img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
	margin: 0;
}

.inner-section.background-left-section > .gb-layout-column-wrap > .gb-block-layout-column:first-of-type {
    position: relative;
    z-index: 1;
}

.inner-section.background-left-section > .gb-layout-column-wrap > .gb-block-layout-column:first-of-type:before {
	content: '';
	background-color: #0f3525;
    position: absolute;
	width: calc(50vw + 4rem);
	height: calc(100% + 24rem);
	top: -12rem;
	left: -4vw;
	border-top-right-radius: 70px;
	border-bottom-right-radius: 70px;
	overflow: hidden;
    z-index: 2;
}

.inner-section.background-left-section.consultation > .gb-layout-column-wrap > .gb-block-layout-column:first-of-type:before {
	border-top-right-radius: 0;
}

.inner-section.background-left-section > .gb-layout-column-wrap > .gb-block-layout-column:first-of-type > .gb-block-layout-column-inner {
    position: relative;
    z-index: 3;
}

.inner-section.background-left-section > .gb-layout-column-wrap > .gb-block-layout-column:last-of-type > .gb-block-layout-column-inner {
    padding-left: 8rem;
}

.background-left-section h1,
.background-left-section h2 {
	color: var(--es-alt-two);
	font-size: 4.2rem;
}

.heading-with-icon .gb-container-content {
	display: flex;
	flex-wrap: wrap;
}

.heading-with-icon .gb-container-content {
    display: flex;
    flex-wrap: wrap;
    row-gap: 4rem;
    column-gap: 6rem;
}

.heading-with-icon .gb-container-content > *:first-child {
    flex: 1 1 calc(68% - 3rem);
	margin: 0;
}

.heading-with-icon .fa-icon-container {
	flex: 1 1 calc(32% - 3rem);
	aspect-ratio: unset;
	justify-content: flex-end;
}

.heading-with-icon .fa-icon-container svg {
	max-width: 100px;
	color: #448260;
}

.heading-tagline {
	margin: 3rem 0;
}

.background-left-section h2.small,
.background-left-section h3,
.background-left-section .heading-tagline p {
	color: #fdc37e;
	font-size: 2rem;
	font-weight: 600;
	margin: 0;
}

.background-left-section ul {
	display: flex;
	flex-direction: column;
	gap: 2.5rem;
}

.background-left-section p,
.background-left-section li {
    font-size: 1.6rem;
    line-height: 2;
}

.icon-heading {
	margin: 0 0 1.5rem;
}

.icon-heading .gb-container-content {
	display: flex;
	align-items: center;
	gap: 2rem;
}

.icon-heading .fa-icon-container {
	width: 5rem;
}

.icon-heading .fa-icon-container svg {
	color: #fdc37e;
}

@media (min-width: calc(1300px / 0.92)) {
	.inner-section.background-left-section > .gb-layout-column-wrap > .gb-block-layout-column:first-of-type:before {
		left: calc((-100vw + 1300px) / 2);
	}
}

@media (max-width: 1095px) {
	.heading-with-icon .fa-icon-container {
		display: none;
	}
}

@media (max-width: 991px) {
	.inner-section.background-left-section > .gb-layout-column-wrap > .gb-block-layout-column:first-of-type:before {
		width: calc(50vw + 2rem);
	}

	.inner-section.background-left-section > .gb-layout-column-wrap > .gb-block-layout-column:last-of-type > .gb-block-layout-column-inner {
		padding-left: 4rem;
	}
}

@media (max-width: 767px) {
	.careers-image-grid {
        display: flex;
        flex-direction: column;
    }

	.careers-image-grid--item.main-image,
	.careers-image-grid--item.small-image.one,
	.careers-image-grid--item.small-image.two {
        height: 200px;
    }

	.inner-section.background-left-section {
		padding-bottom: 0;
	}

	.inner-section.background-left-section > .gb-layout-column-wrap > .gb-block-layout-column:first-of-type:before {
		width: 100vw;
		height: calc(100% + 20rem);
    	top: -10rem;
		border-radius: 0;
	}

	.inner-section.background-left-section > .gb-layout-column-wrap > .gb-block-layout-column:last-of-type > .gb-block-layout-column-inner {
		margin: 16rem 0 0;
		padding: 0;
	}
}

/* FAQ Page */

.faq-accordion-items .accordion {
	display: flex;
	flex-wrap: wrap;
	gap: 4rem;
}

.faq-accordion-items .faq-accordion-items--column {
    flex: 1 1 calc(50% - 2rem);
    display: flex;
    flex-direction: column;
    gap: 4rem;
}

.faq-accordion-items .accordion-item {
	background-color: #fff;
    border: 1px solid #ddd;
    border-radius: 1.2rem;
    box-shadow: 0 3px 7px -2px rgba(0, 0, 0, 0.2);
}

.faq-accordion-items .accordion-item .accordion-header {
	margin: 0;
    padding: 0;
}

.faq-accordion-items .accordion-item .accordion-header .accordion-button {
    background-image: none;
	background-color: transparent;
    display: flex;
    justify-content: space-between;
    gap: 3rem;
    height: 100%;
    color: #000;
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.2;
    margin: 0;
	padding: 1.8rem 3rem;
    border: none;
    border-radius: 0;
    box-shadow: none;
    white-space: pre-wrap;
    overflow: hidden;
    transition: 0.25s ease-in-out all;
    z-index: 1;
}

.faq-accordion-items .accordion-item .accordion-header .accordion-button:after {
    display: none;
}

.faq-accordion-items .accordion-item .accordion-header .accordion-button svg {
    width: 1.6rem;
    height: 1.6rem;
    transition: 0.25s ease-in-out all;
}

.faq-accordion-items .accordion-item .accordion-header .accordion-button:not(.collapsed) svg {
    transform: rotate(-90deg);
}

.faq-accordion-items .accordion-item .accordion-body {
    padding: 1rem 3rem 3rem;
}

.faq-accordion-items .accordion-item .accordion-body p,
.faq-accordion-items .accordion-item .accordion-body ul li,
.faq-accordion-items .accordion-item .accordion-body a {
	font-size: 1.5rem;
}

@media (max-width: 767px) {
    .faq-accordion-items .faq-accordion-items--column {
        flex: fit-content;
    }
}

/* Projects Archive */

.projects-archive {
	margin: 6rem 0 0;
}

.projects-archive--filter {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 2rem;
	margin: 0 0 4rem;
}

.projects-archive--filter button {
    background-image: none;
    background-color: var(--es-alt-two);
    width: fit-content;
    height: fit-content;
    color: var(--es-alt-one);
    font-size: 1.3rem;
    font-weight: 600;
    line-height: 1;
	margin: 0 !important;
    padding: 1.2rem 2.6rem;
    border: 1px solid #dedede;
    border-radius: 6px;
    box-shadow: 0px 2px 3px -1px rgba(0, 0, 0, 0.09);
    outline: none;
	transition: 0.25s ease-in-out all;
}

.projects-archive--filter button.active {
	background-color: var(--es-green-one);
	color: var(--es-alt-two);
	border-color: var(--es-green-one);
	box-shadow: none;
}

.projects-archive--filter button:not(.active):hover,
.projects-archive--filter button:not(.active):focus {
	color: var(--es-alt-one);
	box-shadow: 0px 3px 7px -2px rgba(0, 0, 0, 0.17);
}

.projects-archive--wrapper {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 3rem;
}

.portfolio-project {
	display: block;
	width: 100%;
	height: 100%;
}

.portfolio-project--link {
	position: relative;
	display: block;
	width: 100%;
    height: 100%;
	border-radius: 2rem;
	box-shadow: 0px 7px 17px -4px rgba(0, 0, 0, 0.27);
	outline: none;
	overflow: hidden;
	z-index: 1;
}

.portfolio-project--link:hover {
	transform: translateY(-2px);
	box-shadow: 0px 3px 8px -1px rgba(0, 0, 0, 0.17);
}

.portfolio-project--background {
	aspect-ratio: 2 / 1;
}

.portfolio-project--background img {
    object-fit: cover;
    object-position: center center;
    width: 100%;
    height: 100%;
}

.portfolio-project--title {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	padding: 3rem 5rem;
	z-index: 3;
}

.portfolio-project--title p {
	color: var(--es-alt-two);
}

.portfolio-project--content {
	padding: 3rem;
}

.portfolio-project--content-types p {
	font-size: 1.5rem;
	font-weight: 600;
	text-transform: uppercase;
}

.portfolio-project--content-title p {
	font-size: 1.8rem;
	font-weight: 800;
	line-height: 1.4;
	margin: 0.8rem 0 0;
}

@media (max-width: 991px) {
	.projects-archive--wrapper {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 600px) {
	.projects-archive--wrapper {
        grid-template-columns: auto;
        max-width: 400px;
        margin: 0 auto;
    }
}

ul.areas-served-list {
	position: relative;
	display: flex;
	flex-direction: column;
	gap: 2rem;
	margin: 0.5rem 0 0;
	padding: 3rem 0 0;
}

ul.areas-served-list:before {
	content: '';
	background-color: #ececec;
	position: absolute;
	width: 75%;
	max-width: 300px;
	height: 1.5px;
	top: calc(-0.75px - 0.25rem);
}

ul.areas-served-list li {
	list-style-type: none;
}

ul.areas-served-list li span,
ul.areas-served-list li a {
    display: flex;
    gap: 1.25rem;
    width: fit-content;
    color: var(--es-alt-one);
    font-size: 1.5rem;
    font-weight: 600;
    line-height: 1.5;
}

ul.areas-served-list li a:hover {
	color: var(--es-green-one);
}

ul.areas-served-list li span:before,
ul.areas-served-list li a:before {
	content: '\f105';
	position: unset;
	color: var(--es-alt-one);
	font-weight: 900;
	font-family: 'Font Awesome 6 Pro';
}

ul.areas-served-list li a:before {
	color: var(--es-green-three);
}

.areas-served-map {
	padding: 3rem 0;
}

.areas-served-map .areas-served-map--wrapper {
	max-width: 750px;
	margin: 0 auto;
}

.areas-served-map path[id*="label"] {
	display: none;
	fill: var(--es-alt-two);
}

.areas-served-map path[id*="border"] {
	fill: #999;
}

.areas-served-map a {
	pointer-events: all;
	cursor: pointer;
	outline: none;
	z-index: 99;
}

.areas-served-map a > g > path[id*="label"] {
	display: block;
	opacity: 0;
	transition: 0.25s ease-in-out all;
}

.areas-served-map a > g > path[id*="border"] {
    fill: var(--es-green-one);
    stroke: var(--es-green-two);
    stroke-width: 4;
    stroke-linejoin: round;
	transition: 0.25s ease-in-out all;
}

.areas-served-map a:hover > g > path[id*="label"] {
	opacity: 1;
}

.areas-served-map a:hover > g > path[id*="border"] {
	fill: var(--es-green-three);
}

.jumbotron-section > .gb-layout-column-wrap > .gb-block-layout-column {
    position: relative;
    padding: 8rem;
    border: 5px solid var(--es-green-three);
    border-radius: 4rem;
    box-shadow: 0px 4px 16px -2px rgba(0, 0, 0, 0.27);
    overflow: hidden;
    z-index: 1;
}

.jumbotron-section > .gb-layout-column-wrap > .gb-block-layout-column:after {
    content: '';
    background-image: url('/wp-content/uploads/2024/05/logo.png');
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
    position: absolute;
	display: block;
	width: 15rem;
    height: 5rem;
    top: auto;
    bottom: 4rem;
    left: auto;
    right: 4rem;
}

.jumbotron-section > .gb-layout-column-wrap > .gb-block-layout-column > .gb-block-layout-column-inner {
    max-width: 760px;
    margin: 0 auto;
}

.jumbotron-tagline {
	margin: 0 0 2rem;
}

.jumbotron-tagline p {
	background-color: #e0f1e8;
	color: #007843;
	font-size: 1.4rem;
	font-weight: 700;
	width: fit-content;
	margin: 0 auto;
	padding: 0.5rem 2rem;
	border-radius: 0.8rem;
	text-transform: uppercase;
}

.jumbotron-section h2,
.jumbotron-section h3 {
	font-size: 3.2rem;
}

@media (max-width: 767px) {
	.jumbotron-section > .gb-layout-column-wrap > .gb-block-layout-column {
		position: relative;
		padding: 4rem;
	}

	.jumbotron-section > .gb-layout-column-wrap > .gb-block-layout-column:after {
		display: none;
	}
}

/* WCAG Audit */

.screen-reader-text {
	background-color: var(--es-alt-one) !important;
	color: var(--es-alt-two) !important;
}

.fixed-header .site-header:not(.shrink) .nav-primary ul.menu {
    background-color: var(--es-alt-one);
	background-clip: text;
}

.twitter.sharrre .share {
	background-color: #007fad;
	/* background-clip: text; */
}

.section-with-id {
	outline: none;
}

/* 09/26/24 Edits */

.tall-image-section .wp-block-image {
	display: block;
	width: 100%;
	height: 100%;
	border-radius: 4rem;
	overflow: hidden;
}

.tall-image-section .wp-block-image img {
	object-fit: cover;
	object-position: center center;
	width: 100%;
	height: 100%;
}

@media (max-width: 767px) {
	.tall-image-section .wp-block-image {
		max-height: 200px;
	}
}

.site-title {
	display: none;
}

.menu-item.menu-item-has-children>a:first-child svg {
	display: none;
}

@media (min-width: 896px) {
	.menu-item.menu-item-has-children .sub-menu .menu-item.menu-item-has-children:hover .sub-menu {
		left: 15.5rem;
	}
}



/* schedule estimate */
.schedule-estimate .contact-steps {
	width: 100%;
	height: 100%;
	display: flex;
	flex-direction: column;
}

.schedule-estimate .contact-steps--items {
	width: 100%;
	height: 100%;
	padding: 0 0 5rem 4rem;
}

.schedule-estimate .contact-steps--items-wrapper {
	position: relative;
	width: 100%;
	height: 100%;
	z-index: 1;
}

.schedule-estimate .contact-steps--items-border {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 12px;
	left: -4rem;
	border-left: 2px solid #ddd;
	z-index: 2;
}

.schedule-estimate .contact-steps--items-inner {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	width: 100%;
	height: 100%;
	padding-right: 2rem;
}

.schedule-estimate .contact-step {
	position: relative;
	z-index: 3;
}

.schedule-estimate .contact-step::before {
	content: '';
	position: absolute;
	display: block;
	top: 7px;
	left: calc(-4rem - 6px);
	width: 14px;
	height: 14px;
	background-color: #cca449;
	border-radius: 50%;
	z-index: 9;
}

.schedule-estimate .contact-step:last-of-type::after {
	content: '';
	position: absolute;
	display: block;
	top: 12px;
	left: -4rem;
	width: 100%;
	height: 100%;
	z-index: -1;
}
.schedule-estimate .entry-content .contact-step--heading h3 {
	font-size: 2rem;
	font-weight: 700;
	padding: 0;
}

.schedule-estimate .entry-content .contact-step--copy p {
	color: #000;
	font-size: 1.6rem;
	line-height: 1.5;
	margin-bottom: 0;
}

/* Contact page */
.contact-page .contact-steps {
	width: 100%;
	height: 100%;
	display: flex;
	flex-direction: column;
}

.contact-page .contact-steps--items {
	width: 100%;
	height: 100%;
	padding: 0 0 5rem 4rem;
}

.contact-page .contact-steps--items-wrapper {
	position: relative;
	width: 100%;
	height: 100%;
	z-index: 1;
}

.contact-page .contact-steps--items-border {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 12px;
	left: -4rem;
	border-left: 2px solid #ddd;
	z-index: 2;
}

.contact-page .contact-steps--items-inner {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	width: 100%;
	height: 100%;
	padding-right: 2rem;
}

.contact-page .contact-step {
	position: relative;
	z-index: 3;
}

.contact-page .contact-step::before {
	content: '';
	position: absolute;
	display: block;
	top: 7px;
	left: calc(-4rem - 6px);
	width: 14px;
	height: 14px;
	background-color: #cca449;
	border-radius: 50%;
	z-index: 9;
}

.contact-page .contact-step:last-of-type::after {
	content: '';
	position: absolute;
	display: block;
	top: 12px;
	left: -4rem;
	width: 100%;
	height: 100%;
	z-index: -1;
}

.contact-page .entry-content .contact-step--heading h3 {
	font-size: 2rem;
	font-weight: 700;
	padding: 0;
}

.contact-page .entry-content .contact-step--copy p {
	color: #000;
	font-size: 1.6rem;
	line-height: 1.5;
	margin-bottom: 0;
}

.contact-page > .gb-layout-column-wrap {
	border: solid 2px #cca449;
}

.contact-page>.gb-layout-column-wrap>.gb-block-layout-column {
	padding: 4rem;
}

@media (max-width: 1250px) {

	.site-footer .gb-block-layout-column:nth-child(1)::before {
		display: none;
	}
}

label.gform-field-label.gform-field-label--type-sub {
	color: #fff;
}

@media (max-width: 896px) {

	label.gform-field-label.gform-field-label--type-sub {
			color: #000;
	}

	.contact-page>.gb-layout-column-wrap {
		border: unset;
	}

	.site-footer .gb-block-layout-column:nth-child(1)::before {
		display: none;
	}

	.site-footer h2.widgettitle:first-child {
		margin-top: 2rem;
	}

	.site-footer .widget.widget_nav_menu {
		margin-left: 1.7rem;
	}
}

.before-footer-ctas .contact-form {
	padding: 6rem;
}

/* Header section */

body.home .front-page-8 .disclaimer-text p,
body.page .inner-section.savings-section .disclaimer-text p,
body.page .header-section>.gb-layout-column-wrap>.gb-block-layout-column:last-of-type .disclaimer-text p,
body.single.geo-page .header-section>.gb-layout-column-wrap>.gb-block-layout-column:last-of-type .disclaimer-text p {
	font-size: 1.3rem;
	font-weight: 400;
	font-style: italic;
	margin: 2rem 0 0;
}

@media (max-width: 767px) {

	body.home .front-page-8 .disclaimer-text p,
	body.page .inner-section.savings-section .disclaimer-text p,
	body.page .header-section>.gb-layout-column-wrap>.gb-block-layout-column:last-of-type .disclaimer-text p body.single.geo-page .header-section>.gb-layout-column-wrap>.gb-block-layout-column:last-of-type .disclaimer-text p {
		margin: 3rem 0 0;
	}
}

body .header-section,
body .inner-section {
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	position: relative;
	padding: 10rem 0;
	z-index: 1;
}

body .header-section {
	background-color: #707070;
	overflow: hidden;
}

body .header-section:before {
	background: radial-gradient(at left bottom, rgba(3, 3, 3, 0.9), rgba(3, 3, 3, 0.2));
	opacity: 1;
	z-index: 3;
}

body .header-section>.gb-layout-column-wrap,
body .inner-section>.gb-layout-column-wrap {
	position: relative;
	gap: 6rem;
	width: 88%;
	max-width: 1152px;
	margin: 0 auto;
	padding: 0;
	z-index: 4;
}

body .header-section>.gb-layout-column-wrap {
	display: flex;
	flex-wrap: wrap;
	gap: 10rem;
}

body .header-section>.gb-layout-column-wrap>.gb-block-layout-column:first-of-type {
	flex: 1 1 calc(46.75% - 5rem);
	padding: 10rem 0 0;
}

body .header-section>.gb-layout-column-wrap>.gb-block-layout-column:last-of-type {
	flex: 1 1 calc(53.25% - 5rem);
}

@media (min-width: 896px) {
	body .header-section.basic>.gb-layout-column-wrap>.gb-block-layout-column:only-of-type {
		flex: 1 1 100%;
		max-width: 650px;
		padding: 0;
	}
}

body .header-section:not(.basic)>.gb-layout-column-wrap>.gb-block-layout-column:last-of-type>.gb-block-layout-column-inner {
	justify-content: flex-start;
	padding: 5rem 5rem 0;
}

body .header-section:not(.basic)>.gb-layout-column-wrap>.gb-block-layout-column:last-of-type>.gb-block-layout-column-inner:before {
	content: '';
	background-color: #000;
	position: absolute;
	display: block;
	width: 100%;
	height: calc(100% + 10rem);
	top: 0;
	left: 0;
	opacity: 0.5;
	z-index: -1;
}

body .header-section>.gb-layout-column-wrap>.gb-block-layout-column>.gb-block-layout-column-inner {
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	width: 100%;
	height: 100%;
}

body.page .header-section .above-header-text p,
body.single.geo-page .header-section .above-header-text p,
body.single-project .header-section .above-header-text p,
body.blog .header-section .above-header-text p {
	font-size: 2rem;
	font-weight: 600;
	margin: 0 0 0.5rem !important;
	text-transform: uppercase;
	letter-spacing: 0.13rem;
	text-shadow: 0px 2px 4px rgba(0, 0, 0, 0.3);
}

body.page .header-section h1,
body.single.geo-page .header-section h1,
body.single-project .header-section h1,
body.blog .header-section h1,
body.search .header-section h1 {
	color: #fff;
	font-size: 4.4rem;
	font-weight: 700;
	line-height: 1.1;
	margin: 0 0 2rem;
	text-shadow: 0px 2px 4px rgba(0, 0, 0, 0.3);
}

body.page .header-section p,
body.single.geo-page .header-section p,
body.single-project .header-section p,
body.blog .header-section p {
	color: #fff;
	font-size: 1.8rem;
	font-weight: 500;
}

body.page .header-section p:last-child,
body.single.geo-page .header-section p:last-child,
body.single-project .header-section p:last-child,
body.blog .header-section p:last-child {
	margin-bottom: 0;
}

body.page .header-section .disclaimer-text p,
body.single.geo-page .header-section .disclaimer-text p,
body.single-project .header-section .disclaimer-text p,
body.blog .header-section .disclaimer-text p {
	margin: 0;
}

body .header-section>.gb-layout-column-wrap>.gb-block-layout-column:last-of-type h2 {
	color: #fff;
	font-size: 2.8rem;
	font-weight: 500;
	margin: 0 0 2rem;
	padding: 0;
}

body .header-section:not(.basic)>.gb-layout-column-wrap>.gb-block-layout-column:last-of-type p {
	font-size: 1.7rem;
	font-weight: 400;
	margin: 0 0 2rem;
}

body .header-section:not(.basic)>.gb-layout-column-wrap>.gb-block-layout-column:last-of-type p:last-child {
	margin-bottom: 0;
}

body .header-section .energy-bill-slider .energy-bill-slider--form-fields-labels,
body .header-section .energy-bill-slider .energy-bill-slider--form-fields-inputs {
	display: contents;
}

body .header-section .energy-bill-slider .energy-bill-slider--form-fields label,
body .header-section .energy-bill-slider .energy-bill-slider--form-fields span {
	color: #fff;
}

body .header-section .energy-bill-slider .energy-bill-slider--form-fields label {
	order: 1;
}

body .header-section .energy-bill-slider .energy-bill-slider--form-fields input[type="range"] {
	order: 2;
}

body .header-section .energy-bill-slider .energy-bill-slider--form-fields span {
	order: 3;
}

@media (min-width: 896px) {
	body .header-section .energy-bill-slider .energy-bill-slider--form-submit .button {
		background-color: transparent;
		color: #fff;
		border: 2px solid;
	}

	body .header-section .energy-bill-slider .energy-bill-slider--form-submit .button:hover {
		background-color: rgba(255, 255, 255, 0.07);
	}
}

@media (max-width: 895px) {

	body:not(.single.single-post) .header-section,
	body:not(.single.single-post) .header-section>.gb-layout-column-wrap {
		display: contents;
	}

	body .header-section:before {
		display: none;
	}

	body .header-section>.gb-layout-column-wrap {
		background-image: inherit;
	}

	body .header-section>.gb-layout-column-wrap>.gb-block-layout-column:first-of-type {
		background-image: inherit;
		background-size: cover;
		background-position: center center;
		background-repeat: no-repeat;
		position: relative;
		padding: 8rem 0;
		z-index: 1;
	}

	body .header-section>.gb-layout-column-wrap>.gb-block-layout-column:first-of-type:before {
		content: '';
		background-color: #000;
		position: absolute;
		display: block;
		width: 100%;
		height: 100%;
		top: 0;
		left: 0;
		opacity: 0.6;
		z-index: 2;
	}

	body .header-section>.gb-layout-column-wrap>.gb-block-layout-column>.gb-block-layout-column-inner {
		position: relative;
		width: 88%;
		max-width: 1152px;
		margin: 0 auto;
		padding: 0;
		z-index: 3;
	}

	body .header-section>.gb-layout-column-wrap>.gb-block-layout-column:last-of-type {
		background-color: #ececec;
		padding: 8rem 0;
	}

	body .header-section:not(.basic)>.gb-layout-column-wrap>.gb-block-layout-column>.gb-block-layout-column-inner:last-of-type {
		padding: 0;
	}

	body .header-section:not(.basic)>.gb-layout-column-wrap>.gb-block-layout-column:last-of-type>.gb-block-layout-column-inner:before {
		display: none;
	}

	body .header-section>.gb-layout-column-wrap>.gb-block-layout-column:last-of-type:not(:only-of-type) h2 {
		color: initial !important;
		font-weight: 600;
	}

	body .header-section>.gb-layout-column-wrap>.gb-block-layout-column:last-of-type:not(:only-of-type) p {
		color: initial !important;
	}

	body .header-section .energy-bill-slider .energy-bill-slider--form {
		margin-left: 0;
	}

	body .header-section .energy-bill-slider .energy-bill-slider--form-fields-labels,
	body .header-section .energy-bill-slider .energy-bill-slider--form-fields-inputs {
		display: flex;
	}

	body .header-section .energy-bill-slider .energy-bill-slider--form-fields label,
	body .header-section .energy-bill-slider .energy-bill-slider--form-fields span {
		color: #333;
	}

	body .header-section .energy-bill-slider .energy-bill-slider--form-fields span {
		order: 1;
	}

	body .inner-section>.gb-layout-column-wrap {
		display: flex;
		flex-direction: column;
	}

	body .inner-section>.gb-layout-column-wrap>.gb-block-layout-column.with-padding {
		padding: 0;
	}
}

@media (max-width: 767px) {

	body .header-section,
	body .inner-section {
		padding: 8rem 0;
	}

	body .header-section>.gb-layout-column-wrap,
	body .inner-section>.gb-layout-column-wrap {
		width: 100%;
		max-width: 100%;
		margin: 0;
		padding: 0 5vw;
	}

	body.page .header-section .above-header-text p,
	body.single.geo-page .header-section .above-header-text p,
	body.single-project .header-section .above-header-text p,
	body.blog .header-section .above-header-text p {
		font-size: 1.8rem;
	}

	body.page .header-section h1,
	body.single.geo-page .header-section h1,
	body.single-project .header-section h1,
	body.blog .header-section h1,
	body.search .header-section h1 {
		font-size: 3.2rem;
		font-weight: 600;
	}

	body.page .header-section p,
	body.single.geo-page .header-section p,
	body.single-project .header-section p,
	body.blog .header-section p {
		font-size: 1.7rem;
		font-weight: 400;
	}
}

body.single.single-post .header-section {
	background-color: #707070;
}

body.single.single-post .header-section:before {
	content: '';
	background: #000;
	position: absolute;
	display: block;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	opacity: 0.6;
	z-index: 2;
}

body.single.single-human_of_uprise .header-section:before {
	display: none;
}

body.single.single-post .header-section>.wrap {
	position: relative;
	z-index: 3;
}

body.single.single-post .header-section .entry-header {
	display: flex;
	flex-direction: column;
	gap: 2.5rem;
	max-width: 960px;
	margin: 0 auto;
}

body.single.single-post .header-section .entry-header h1 {
	color: #fff;
	font-size: 4.4rem;
	font-weight: 600;
	margin: 0;
	text-align: center;
	text-shadow: 0px 2px 4px rgba(0, 0, 0, 0.3);
}

body.single.single-post .header-section .entry-meta p {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	row-gap: 0.2rem;
	column-gap: 1.2rem;
	color: #fff;
	font-size: 1.8rem;
	font-weight: 500;
	line-height: 1.7;
	margin: 0;
	text-align: center;
	text-shadow: 0px 2px 4px rgba(0, 0, 0, 0.3);
}

body.single.single-post .header-section .entry-meta p .entry-meta--separator {
	font-size: 2.3rem;
	line-height: 1;
}

@media (max-width: 767px) {
	body.single.single-post .header-section .entry-header h1 {
		font-size: 3.4rem;
		text-align: left;
	}

	body.single.single-post .header-section .entry-meta p {
		justify-content: flex-start;
	}
}


/* Custom Image */

.custom-image--wrapper {
	position: relative;
}

.custom-image {
	position: relative;
	display: block;
	border-radius: 16px;
	max-width: 100%;
	background: #fff;
	box-shadow: 0px 10px 28px -7px rgb(0 0 0 / 35%);
}

.custom-image.image-center {
	margin: 0 auto;
}

.custom-image.image-right {
	margin: 0 0 0 auto;
}

.custom-image.image-left {
	margin: 0 auto 0 0;
}

.custom-image img {
	object-fit: cover;
	object-position: center;
	width: 100%;
	opacity: 1;
}

img.custom-image--img-secondary {
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
}

.custom-image--tagline {
	display: inline-block;
	position: absolute;
	right: -12.5%;
	top: 20px;
	background: #cca449;
	color: #000;
	text-align: center;
	z-index: 3;
	border-radius: 20px;
	padding: 3px 15px;
	font-size: 1.6rem;
	font-weight: 600;
	text-transform: uppercase;
}

.custom-image--tagline.left {
	left: -12.5%;
	right: auto;
}

.custom-image--graphic img {
	display: block;
	box-shadow: none;
}

.custom-image--graphic {
	display: block;
	position: absolute;
}

.custom-image--graphic.custom-image--graphic-left {
	bottom: 10%;
	left: -20%;
	z-index: 10;
}

.custom-image--graphic.custom-image--graphic-right {
	top: 10%;
	right: -20%;
	z-index: -1;
}

.custom-image--graphic svg {
	font-size: 15rem;
}

@media (max-width: 896px) {
	.custom-image--tagline {
		display: none !important;
	}
}

.finance-section img {
	margin: 0 auto;
}

body .tto-custom-button {
	justify-content: unset;
}

.home .front-page-10 {
	display: none;
}


.testimonials-container {
	display: flex;
	flex-direction: column;
	gap: 6rem;
	max-width: 800px;
	padding: 6rem 0;
	margin: 0 auto;
}

.testimonial-box {
	background: #ffffff;
	border: 1px solid #e0e0e0;
	border-radius: 5px;
	padding: 20px;
	position: relative;
	box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
}

.testimonial-quote-icon {
	position: absolute;
	top: 10px;
	right: 20px;
	font-size: 24px;
	color: #cca449;
}

.testimonial-text {
	font-size: 16px;
	color: #333;
	margin-bottom: 15px;
	padding: 3rem;
}

.testimonial-author {
	font-size: 14px;
	font-weight: bold;
	color: #555;
	text-align: right;
}

.front-page-1 p + .wp-block-genesis-blocks-gb-columns {
    min-height: 144px;
	margin: 0;
}

@media (max-width: 600px) {
	.areas-served-va-md-block .gb-block-layout-column:nth-child(2) {
	margin-top: 3rem;
	}
}

/* 04/16/25 */

.home .wp-block-cover {
    min-height: 0 !important;
	padding: 0;
}

.home .wp-block-cover .wp-block-cover__inner-container {
    padding: 10rem 0;
}

.site-footer .menu > .menu-item {
    flex-direction: column;
    align-items: flex-start;
}

.site-footer .menu .sub-menu {
    background-color: transparent;
    position: unset;
    display: block;
    width: 100%;
    margin: 0;
    padding: 0;
    border: none;
    border-radius: 0;
    opacity: 1;
	transform: none;
}

.site-footer .menu .sub-menu:before {
    display: none;
}

.site-footer .menu .sub-menu .menu-item {
	margin: 0;
    padding: 0;
}

@media (max-width: 767px) {
	.home .wp-block-cover .wp-block-cover__inner-container {
    	padding: 8rem 0;
	}

	.front-page-1 p + .wp-block-genesis-blocks-gb-columns > .gb-layout-column-wrap > .gb-block-layout-column:not(:nth-of-type(2)) {
		display: none;
	}

	.front-page-3 {
		padding-left: 4vw;
		padding-right: 4vw;
	}
}

/* 05/01/25 */

.ti-widget:not(.loaded) {
  	visibility: hidden;
}



.wp-block-genesis-blocks-gb-columns.align-images-horizontally .gb-layout-column-wrap {
	display: flex !important;
}

@media (max-width: 600px) {
	.wp-block-genesis-blocks-gb-columns.align-images-horizontally .gb-layout-column-wrap {
		flex-direction: column;
	}
}

.add-bottom-padding h2 {
	padding-bottom: 3rem;
}


/*** End 321 CSS ***/