/*!
Theme Name: AWI Revamped
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: awi-revamped
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

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

AWI Revamped is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

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

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Generic
	- Normalize
	- Box sizing
# Base
	- Typography
	- Elements
	- Links
	- Forms
## Layouts
# Components
	- Navigation
	- Posts and pages
	- Comments
	- Widgets
	- Media
	- Captions
	- Galleries
# plugins
	- Jetpack infinite scroll
# Utilities
	- Accessibility
	- Alignments

--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/

/* Normalize
--------------------------------------------- */

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
	 ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
	line-height: 1.15;
	-webkit-text-size-adjust: 100%;
}

/* Sections
	 ========================================================================== */

/**
 * Remove the margin in all browsers.
 */
body {
	margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
	display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
	font-size: 2em;
	margin: 0.67em 0;
}

/* Grouping content
	 ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
	box-sizing: content-box;
	height: 0;
	overflow: visible;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
	font-family: monospace, monospace;
	font-size: 1em;
}

/* Text-level semantics
	 ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */
a {
	background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
	border-bottom: none;
	text-decoration: underline;
	text-decoration: underline dotted;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
	font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

/**
 * Add the correct font size in all browsers.
 */
small {
	font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

/* Embedded content
	 ========================================================================== */

/**
 * Remove the border on images inside links in IE 10.
 */
img {
	border-style: none;
}

/* Forms
	 ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
	font-family: inherit;
	font-size: 100%;
	line-height: 1.15;
	margin: 0;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
	overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
	text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
	-webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
	border-style: none;
	padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
	outline: 1px dotted ButtonText;
}
.button,input[type=submit],button{
	transition:.2s all;
	background-color:gray;
	color:#000;
	padding:7px 15px;
}
/**
 * Correct the padding in Firefox.
 */
fieldset {
	padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *		`fieldset` elements in all browsers.
 */
legend {
	box-sizing: border-box;
	color: inherit;
	display: table;
	max-width: 100%;
	padding: 0;
	white-space: normal;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
	vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
	overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"],
[type="radio"] {
	box-sizing: border-box;
	padding: 0;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
	-webkit-appearance: textfield;
	outline-offset: -2px;
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
	-webkit-appearance: button;
	font: inherit;
}

/* Interactive
	 ========================================================================== */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
	display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
	display: list-item;
}

/* Misc
	 ========================================================================== */

/**
 * Add the correct display in IE 10+.
 */
template {
	display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
	display: none;
}

/* Box sizing
--------------------------------------------- */

/* Inherit box-sizing to more easily change it's value on a component level.
@link http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
*,
*::before,
*::after {
	box-sizing: inherit;
}

html {
	box-sizing: border-box;
}

/*--------------------------------------------------------------
# Base
--------------------------------------------------------------*/

@font-face {
    font-family: 'Poppins';
    src: url('fonts/Poppins-SemiBold.woff2') format('woff2'),
        url('fonts/Poppins-SemiBold.woff') format('woff');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Poppins';
    src: url('fonts/Poppins-Regular.woff2') format('woff2'),
        url('fonts/Poppins-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Poppins';
    src: url('fonts/Poppins-Bold.woff2') format('woff2'),
        url('fonts/Poppins-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Poppins';
    src: url('fonts/Poppins-SemiBoldItalic.woff2') format('woff2'),
        url('fonts/Poppins-SemiBoldItalic.woff') format('woff');
    font-weight: 600;
    font-style: italic;
    font-display: swap;
}


/* Typography
--------------------------------------------- */
body,
button,
input,
select,
optgroup,
textarea {
	color: #404040;
	font-family: 'Poppins', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
	font-size: 1rem;
	line-height: 1.2;
	overflow-x: hidden;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-weight: 600;
    font-style: normal;
	margin: 0;
	/*clear: both;*/
}

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

blockquote {
	margin: 0 1.5em;
}

address {
	margin: 0 0 1.5em;
}

pre {
	background: #eee;
	font-family: "Courier 10 Pitch", courier, monospace;
	line-height: 1.6;
	margin-bottom: 1.6em;
	max-width: 100%;
	overflow: auto;
	padding: 1.6em;
}
*[style^="background-image"]{
	background-size:cover;
	background-position:center;
}
code,
kbd,
tt,
var {
	font-family: monaco, consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
}

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

mark,
ins {
	background: #fff9c0;
	text-decoration: none;
}

big {
	font-size: 125%;
}

/* Elements
--------------------------------------------- */
body {
	background: #fff;
}

hr {
	background-color: #ccc;
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
}

ul,
ol {
	margin: 0 0 1.5em 3em;
}

ul {
	list-style: disc;
}

ol {
	list-style: decimal;
}

li > ul,
li > ol {
	margin-bottom: 0;
	margin-left: 1.5em;
}

dt {
	font-weight: 700;
}

dd {
	margin: 0 1.5em 1.5em;
}

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

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

figure {
	margin: 1em 0;
}

table {
	margin: 0 0 1.5em;
	width: 100%;
}


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

a:hover,
a:active {
	color: #2e5126;
}


a:hover,
a:active {
	outline: 0;
}

/* Forms
--------------------------------------------- */
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	/*border: 1px solid;
	border-color: #ccc #ccc #bbb;
	border-radius: 3px;
	background: #e6e6e6;
	color: rgba(0, 0, 0, 0.8);
	line-height: 1;
	padding: 0.6em 1em 0.4em;*/
	background: #487e3b;
	padding: 15px 35px;
	color: #fff;
	display: inline-block;
	transition: .2s all;
	font-size: 21px;
	font-family: 'Poppins';
	font-weight: 600;
	font-style: normal;
	border: 0;
	border-radius: 30px;
	text-align: center;
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
	border-color: #ccc #bbb #aaa;
}

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

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
	color: #666;
	border: 1px solid #ccc;
	border-radius: 3px;
	padding: 3px;
	width: 100%;
	height: 42px;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
	color: #111;
}

select {
	border: 1px solid #ccc;
	width: 100%;
	height: 42px;
}

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

input.wpcf7-form-control.wpcf7-submit {
	display: block;
	margin: 0 auto;
}

form .list--unstyled {
	margin: 0 -6px;
}

form .list--unstyled li {
	margin: 12px 6px;
}

.list--unstyled .form-field--half {
	float: left;
	width: calc(50% - 12px);
	margin: 6px;
}

.list--unstyled .form-field--third {
	float: left;
	width: calc(33.3333% - 12px);
	margin: 6px;
}

form .list--unstyled li:first-child,
form .list--unstyled .form-field--half:first-child,
form .list--unstyled .form-field--half:first-child + .form-field--half,
form .list--unstyled .form-field--third:first-child,
form .list--unstyled .form-field--third:first-child + .form-field--third,
form .list--unstyled .form-field--third:first-child + .form-field--third + .form-field--third {
	margin-top: 0;
}

form .list--unstyled li:last-child,
form .list--unstyled .form-field--half:last-child,
form .list--unstyled li:not(.form-field--half) + .form-field--half:nth-last-child(2),
form .list--unstyled .form-field--third:last-child,
form .list--unstyled li:not(.form-field--third) + .form-field--third:nth-last-child(3),
form .list--unstyled li:not(.form-field--third) + .form-field--third:nth-last-child(3) + .form-field--third:nth-last-child(2) {
	margin-bottom: 0;
}

.form-field--half + li:not(.form-field--half):not(.form-field--third),
.form-field--third + li:not(.form-field--half):not(.form-field--third) {
	clear: both;
	margin-top: 0;
	padding-top: 6px;
}

li:not(.form-field--half):not(.form-field--third) + .form-field--half,
li:not(.form-field--half):not(.form-field--third) + .form-field--half + .form-field--half,
li:not(.form-field--half):not(.form-field--third) + .form-field--third,
li:not(.form-field--half):not(.form-field--third) + .form-field--third + .form-field--third,
li:not(.form-field--half):not(.form-field--third) + .form-field--third + .form-field--third + .form-field--third {
	margin-top: 0;
}

@media screen and (max-width: 567px) {
	.list--unstyled .form-field--half,
	.list--unstyled .form-field--third {
		float: none;
		width: auto;
		margin: 12px 6px;
	}

	.form-field--half + li:not(.form-field--half):not(.form-field--third),
	.form-field--third + li:not(.form-field--half):not(.form-field--third) {
		margin-top: 12px;
		padding-top: 0;
	}

	form .list--unstyled .form-field--half:first-child + .form-field--half,
	form .list--unstyled .form-field--third:first-child + .form-field--third,
	form .list--unstyled .form-field--third:first-child + .form-field--third + .form-field--third,
	li:not(.form-field--half):not(.form-field--third) + .form-field--half,
	li:not(.form-field--half):not(.form-field--third) + .form-field--half + .form-field--half,
	li:not(.form-field--half):not(.form-field--third) + .form-field--third,
	li:not(.form-field--half):not(.form-field--third) + .form-field--third + .form-field--third,
	li:not(.form-field--half):not(.form-field--third) + .form-field--third + .form-field--third + .form-field--third {
		margin-top: 12px;
	}

	form .list--unstyled li:not(.form-field--half) + .form-field--half:nth-last-child(2),
	form .list--unstyled li:not(.form-field--third) + .form-field--third:nth-last-child(3),
	form .list--unstyled li:not(.form-field--third) + .form-field--third:nth-last-child(3) + .form-field--third:nth-last-child(2) {
		margin-bottom: 12px;
	}
}


/* Interior banner
--------------------------------------------- */
/*.interior-banner {
	height: 500px;
	position: relative;
}

.interior-banner .container{
	position: static;
}

.interior-banner .interior-banner-content{
	position: absolute;
	top: 50%;
	left: 0;
	right: 0;
	margin: 0 auto;
	transform: translateY(-50%);
	width: 50%;
	background-color: rgba(20, 21, 20, 0.749);
	padding: 35px 55px;
	text-align: center;
}

.interior-banner .interior-banner-content h1{
	font-size: 45px;
	color: #fff;
}

@media screen and (max-width: 1023px){
	.interior-banner .interior-banner-content{
		width: 75%;
	}
}

@media screen and (max-width: 767px){
	.interior-banner{
		height: 350px;
	}
	.interior-banner .interior-banner-content{
		width: 90%;
	}
	.interior-banner .interior-banner-content h1{
		font-size: 32px;
	}
}*/


.interior-banner {
    height: 500px !important;
    position: relative !important;
    overflow: hidden !important;
    z-index: 1 !important; /* Establishes a local stacking context */
}

.interior-banner::after {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background: linear-gradient(180deg, rgba(14, 33, 22, 0.55) 0%, rgba(10, 21, 14, 0.85) 100%) !important;
    z-index: 2 !important; /* Locks directly above the background image asset */
}


.interior-banner .container {
    position: static !important;
}


.interior-banner .interior-banner-content {
    position: absolute !important;
    top: 50% !important;
    left: 0 !important;
    right: 0 !important;
    margin: 0 auto !important;
    transform: translateY(-50%) !important;
    width: 85% !important;
    max-width: 1100px !important;
    background-color: transparent !important; 
    background: transparent !important;
    padding: 0 !important;
    text-align: center !important;
    z-index: 3 !important; /* Forces copy elements safely above the dark mask layer */
    box-shadow: none !important;
    border: none !important;
}


.interior-banner .interior-banner-content h1 {
    font-family: 'Cormorant Garamond', Georgia, serif !important;
    font-size: 3.8rem !important; 
    font-weight: 400 !important;
    color: #FFFFFF !important;
    text-transform: none !important; 
    letter-spacing: -0.5px !important;
    line-height: 1.2 !important;
    margin: 0 auto !important;
    text-shadow: 0 3px 20px rgba(0, 0, 0, 0.4) !important; 
}

@media (max-width: 1023px) {
    .interior-banner .interior-banner-content {
        width: 85% !important;
    }
    
    .interior-banner .interior-banner-content h1 {
        font-size: 3rem !important;
    }
}

@media (max-width: 767px) {

    .interior-banner {
        height: 380px !important; 
    }

    .interior-banner .interior-banner-content {
        width: 90% !important;
    }

    .interior-banner .interior-banner-content h1 {
        font-size: 2.3rem !important;
        line-height: 1.3 !important;
    }
}

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

/* Widgets
--------------------------------------------- */
.widget {
	margin: 0 0 1.5em;
}

.widget select {
	max-width: 100%;
}

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

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

/* Captions
--------------------------------------------- */
.wp-caption {
	margin-bottom: 1.5em;
	max-width: 100%;
}

.wp-caption img[class*="wp-image-"] {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.wp-caption .wp-caption-text {
	margin: 0.8075em 0;
}

.wp-caption-text {
	text-align: center;
}

/* Galleries
--------------------------------------------- */
.gallery {
	margin-bottom: 1.5em;
	display: grid;
	grid-gap: 1.5em;
}

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

.gallery-columns-2 {
	grid-template-columns: repeat(2, 1fr);
}

.gallery-columns-3 {
	grid-template-columns: repeat(3, 1fr);
}

.gallery-columns-4 {
	grid-template-columns: repeat(4, 1fr);
}

.gallery-columns-5 {
	grid-template-columns: repeat(5, 1fr);
}

.gallery-columns-6 {
	grid-template-columns: repeat(6, 1fr);
}

.gallery-columns-7 {
	grid-template-columns: repeat(7, 1fr);
}

.gallery-columns-8 {
	grid-template-columns: repeat(8, 1fr);
}

.gallery-columns-9 {
	grid-template-columns: repeat(9, 1fr);
}

.gallery-caption {
	display: block;
}

/*--------------------------------------------------------------
# Plugins
--------------------------------------------------------------*/

/* Jetpack infinite scroll
--------------------------------------------- */

/* Hide the Posts Navigation and the Footer when Infinite Scroll is in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
	display: none;
}

/* Re-display the Theme Footer when Infinite Scroll has reached its end. */
.infinity-end.neverending .site-footer {
	display: block;
}

/*--------------------------------------------------------------
# Utilities
--------------------------------------------------------------*/

/* Accessibility
--------------------------------------------- */

/* Text meant only for screen readers. */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

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

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


/***************************************
 *************Blog Styling**************
 ***************************************/
.blog main .container{
	display: flex;
}

.blog h1{
	font-size: 36px;
	margin-top: 0;
}

.blog h2 {
	text-align: left;
}

.blog main{
	padding: 50px 0;
}

.blog main .wp-posts-list{
	padding-top: 40px;
}

article{
	/*float: left;*/
	width: calc(100% - 330px);
	display: block;
}

aside{
	width: 330px;
	padding: 30px 30px 10px 30px;
	float: left;
	display: block;
	border: 1px solid #ccc;
	border-radius: 18px;
}

aside h2{
	font-size: 27px;
	margin: 0 0 20px;
}

aside ul{
	margin: 0;
}

.single-post main .container{
	display: flex;
}

.single-post main{
	padding: 50px 0;
}

.single-post h1{
	margin-top: 0;
}

.wp-posts-list > li:last-child{
	border-bottom: none;
}

@media screen and (max-width: 767px){
	.blog main .container{
		flex-wrap: wrap;
	}
	.single-post main .container{
		flex-wrap: wrap;
	}
	article{
		float: none;
		width: 100%;
	}
	aside {
		float: none;
		width: 100%;
		padding: 20px;
		margin-top: 20px;
	}
}

@media only screen and (max-width: 767px) {
    img.alignnone, img.aligncenter, img.alignright, img.alignleft, a>img.alignnone, a>img.aligncenter, a>img.alignright, a>img.alignleft, .wp-caption, .wp-caption.alignnone, .wp-caption.alignleft, .wp-caption.alignright {
        display: block;
        margin: 0 auto 20px;
        float: none;
    }
}

/********************************
 ****** full width **************
 ********************************/

.full-width{
	max-width: 70em;
	margin: 0 auto;
}


/* Alignments
--------------------------------------------- */
.alignleft {
	float: left;
	margin-right: 1.5em;
	margin-bottom: 1.5em;
	border-top-left-radius: 30px 30px;
	border-bottom-right-radius: 30px 30px;
}

.alignright {
	float: right;
	margin-left: 1.5em;
	margin-bottom: 1.5em;
	border-top-left-radius: 30px 30px;
	border-bottom-right-radius: 30px 30px;
}

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

.container {
	margin:0 auto;
	position: relative;
	max-width:1450px;
	padding:0 15px;
}

.list--unstyled{
	list-style: none;
	margin:0;
	padding:10px;
}

.button{
	background: #487e3b;
	padding: 15px 35px;
	color:#fff;
	display: inline-block;
	transition:.2s all;
	font-size: 21px;
	font-family: 'Poppins';
	font-weight: 600;
    font-style: normal;
    border-radius: 30px;
    text-align: center;
}

.button-dark-green{
	background: #0d4923;
	padding: 15px 35px;
	color:#fff;
	display: inline-block;
	transition:.2s all;
	font-size: 21px;
	font-family: 'Poppins';
	font-weight: 600;
    font-style: normal;
    border-radius: 30px;
    text-align: center;
}

.button:hover{
	background:#fff;
	color:#487e3b;
	text-decoration: none;
}

.button-dark-green:hover{
	background:#fff;
	color:#0d4923;
	text-decoration: none;
}


svg{
	height: 18px;
	width: 18px;
}

@media screen and (max-width: 767px){
	.button-dark-green{
		font-size: 18px;
	}
	.button{
		font-size: 18px;
	}
}

/****************************************
 ************* Header *******************
 ****************************************/

header{
	background-color: #000000;
	padding: 20px 0;
}

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

header .logo{
	display: block;
	width: 286px;
	height: auto;
	max-width: 100%;
}

header .client-portal-button{
	font-size: 18px;
	text-transform: uppercase;
}

.right-header-wrapper{
	margin-left: auto;
}

header .phone-wrapper{
	text-align: right;
	padding-bottom: 20px;
}

header .phone-wrapper .header-phone-link{
	font-size: 24px;
	font-weight: 600;
    font-style: normal;
    color: #fff;
}

.header-phone-link svg{
	width: 20px;
	height: 20px;
	fill: #fff;
	vertical-align: middle;
}

header .phone-wrapper .header-phone-link:hover{
	color: #487e3b;
}

header .phone-wrapper .header-phone-link:hover svg{
	fill: #487e3b;
}

.nav-area{
	display: flex;
	align-items: center;
}

.responsive-button-header{
	display: none;
	font-size: 18px;
	text-transform: uppercase;
}

.mobile-top-header{
	display: none;
	justify-content: center;
    align-items: center;
    background-color: #0d4923;
    padding: 10px 0;
}

@media screen and (max-width: 1400px){
	header .phone-wrapper{
		display: flex;
		gap: 20px;
		align-items: center;
		justify-content: flex-end;
		padding-bottom: 10px;
	}
	.client-portal-button{
		display: none;
	}
	.responsive-button-header{
		display: inline-block;
	}
}

@media screen and (max-width: 767px){
	.mobile-top-header{
		display: block;
	}
	header .phone-wrapper-mobile{
		display: flex !important;
		flex-wrap: wrap;
		padding-bottom: 0 !important;
		justify-content: center;
		row-gap: 10px;
	}
	header{
		padding: 0 0 20px 0;
	}
	header .inner-header{
		padding: 20px 0 0 0;
	}
	header .logo{
		width: 250px;
	}
	header .phone-wrapper{
		display: none;
	}
	header .phone-wrapper .header-phone-link{
		font-size: 20px;
	}
	.responsive-button-header{
		padding: 10px 35px;
	}
}

@media screen and (max-width: 567px){
    header .logo {
        width: 212px;
    }
}

/************** Navigation **************/
.awiNav__trigger,
.awiNav-wrap .awiNav__close,
.awiNav-wrap .awiNav__togglesub,
.awiNav-cover {
	display: none;
}

.awiNav__trigger,
.awiNav-wrap .awiNav__close,
.awiNav-wrap .awiNav__togglesub,
.awiNav-cover {
	display: none;
}

.awiNav {
	font-size: 0;
	position: relative;
	z-index: 200;
	margin: 0;
	padding: 0;
	list-style: none;
}

.awiNav.collapsable {
	white-space: nowrap;
}

.awiNav li {
	position: relative;
	margin: 0;
}

.awiNav > li {
	font-size: 1rem;
	line-height: 70px;
	display: inline-block;
	height: 70px;
}

.awiNav a {
	font-size: 18px;
	display: block;
	padding: 0 15px;
	white-space: nowrap;
	text-decoration: none;
	text-transform: uppercase;
	color: #fff;
	font-weight: 600;
    font-style: normal;
}

.awiNav a:hover {
	color: #487e3b;
}

.awiNav ul {
	line-height: 1;
	position: absolute;
	top: 100%;
	left: 0;
	display: none;
	margin: 0;
	padding: .5em 0;
	list-style: none;
	background: #487e3b;
}

.awiNav > li:last-child ul {
	right: 0;
	left: auto;
}

.awiNav ul ul {
	top: -.5em;
	right: auto;
	left: 100%;
}

.awiNav > li:last-child ul ul {
	right: 100%;
	left: auto;
}

.awiNav ul a {
	padding-top: .5em;
	padding-bottom: .5em;
	color: #fff;
}

.awiNav ul a:hover {
	color: #fff;
	background-color: #37602d;
}

@media screen and (min-width: 1024px) {
	.awiNav li:hover > ul {
		display: block;
	}
}

@media screen and (max-width: 1200px) {
	.awiNav a {
		font-size: 16px;
		display: block;
		padding: 0 10px;
		white-space: nowrap;
		text-decoration: none;
		text-transform: uppercase;
		color: #fff;
	}
}

@media screen and (max-width: 1023px) {
	nav{
		margin-left: auto;
	}
	.awiNav-cover {
		position: fixed;
		z-index: 999;
		top: 0;
		left: 0;
		width: 100%;
		height: calc(100vh + 200px);
		cursor: pointer;
		background: rgba(0, 0, 0, .6);
	}

	.awiNav__trigger {
		line-height: 0;
		position: relative;
		display: block;
		width: 50px;
		height: 80px;
		margin: 0 10px 0 0;
		padding: 0;
		cursor: pointer;
		border: 0;
		border-radius: 0;
		outline: 0;
	}

	.awiNav__trigger,
	.awiNav__trigger:hover {
		background: transparent;
	}

	.awiNav__trigger:active {
		-webkit-transform: none;
			-ms-transform: none;
				transform: none;
	}

	.awiNav__trigger span {
		position: absolute;
		top: 50%;
		left: 50%;
		width: 40px;
		height: 4px;
		margin: -2px 0 0 -20px;
		border-radius: 2px / 50%;
		background: #fff;
		-webkit-box-shadow: 0 -10px 0 #fff, 0 10px 0 #fff;
				box-shadow: 0 -10px 0 #fff, 0 10px 0 #fff;
	}

	.awiNav-wrap {
		position: fixed;
		z-index: 999999;
		top: 0;
		left: 100%;
		width: calc(100% - 45px);
		max-width: 320px;
		height: calc(100vh + 200px);
		padding-bottom: 200px;
		-webkit-transition: -webkit-transform .3s ease-out;
			 -o-transition:         transform .3s ease-out;
				transition: -webkit-transform .3s ease-out;
				transition:         transform .3s ease-out;
				transition:         transform .3s ease-out, -webkit-transform .3s ease-out;
		background: #0d4923;
	}

	.awiNav-wrap.nav-shown {
		-webkit-transform: translateX(-100%);
			-ms-transform: translateX(-100%);
				transform: translateX(-100%);
	}

	.awiNav-wrap .awiNav__close {
		font-size: .9rem;
		font-weight: 700;
		position: relative;
		display: block;
		width: 100%;
		height: 45px;
		padding-left: 50px;
		text-align: left;
		text-transform: uppercase;
		border-bottom: 1px solid #fff;
		border-radius: 0;
		background: none;
		color: #fff;
	}

	.awiNav-wrap .awiNav__close:hover,
	.awiNav a:hover {
		background: rgba(255, 255, 255, .1);
	}

	.awiNav-wrap .awiNav__close:active {
		-webkit-transform: none;
			-ms-transform: none;
				transform: none;
	}

	.awiNav__close span {
		position: absolute;
		top: 10px;
		left: 10px;
		width: 20px;
		height: 3px;
		-webkit-transform: rotate(45deg) translateX(4px);
			-ms-transform: rotate(45deg) translateX(4px);
				transform: rotate(45deg) translateX(4px);
		-webkit-transform-origin: left center;
			-ms-transform-origin: left center;
				transform-origin: left center;
		border-radius: 2px;
		background: #fff;
	}

	.awiNav__close span ~ span {
		-webkit-transform: rotate(-45deg) translateX(-4px);
			-ms-transform: rotate(-45deg) translateX(-4px);
				transform: rotate(-45deg) translateX(-4px);
		-webkit-transform-origin: right center;
			-ms-transform-origin: right center;
				transform-origin: right center;
	}

	.awiNav {
		overflow-y: auto;
		width: 100%;
		max-height: calc(100% - 45px);
		text-align: left;
	}

	.awiNav.nav-hidden,
	.awiNav .nav-hidden {
		display: none;
	}

	.awiNav.nav-shown,
	.awiNav .nav-shown {
		display: block;
	}

	.awiNav li,
	.awiNav > li {
		font-size: 0;
		line-height: 1.2;
		display: block;
		width: 100%;
		height: auto;
		border-bottom: 1px dotted rgba(255, 255, 255, .1);
	}

	.awiNav__links {
		position: relative;
	}

	.awiNav a,
	.awiNav ul a {
		font-size: 1rem;
		display: block;
		padding: calc(22.5px - .6rem) 15px;
		white-space: normal;
		color: #fff;
	}

	.awiNav a:hover {
		color: #fff;
	}

	.awiNav .awiNav__links > a {
		display: inline-block;
		width: calc(100% - 45px);
		vertical-align: middle;
	}

	.awiNav-wrap .awiNav .awiNav__togglesub {
		font-size: 0;
		position: absolute;
		top: 0;
		right: 0;
		display: inline-block;
		width: 45px;
		height: 100%;
		vertical-align: middle;
		text-indent: -9999px;
		background: rgba(255, 255, 255, .1);
	}

	.awiNav-wrap .awiNav__togglesub.nav-hidden {
		display: none;
	}

	.awiNav__togglesub::before {
		position: absolute;
		top: calc(50% - 5px);
		left: calc(50% - 5px);
		width: 0;
		height: 0;
		content: '';
		-webkit-transition: -webkit-transform .3s ease-out;
			 -o-transition:         transform .3s ease-out;
				transition: -webkit-transform .3s ease-out;
				transition:         transform .3s ease-out;
				transition:         transform .3s ease-out, -webkit-transform .3s ease-out;
		border-width: 10px 5px 0 5px;
		border-style: solid;
		border-color: #fff transparent transparent transparent;
	}

	.sub-shown > .awiNav__links > .awiNav__togglesub::before {
		-webkit-transform: rotate(180deg);
			-ms-transform: rotate(180deg);
				transform: rotate(180deg);
	}

	.awiNav ul {
		position: static;
		padding: 0;
		border: 0;
		background: rgba(255, 255, 255, .1);
		-webkit-box-shadow: none;
				box-shadow: none;
	}
}


/****************************************
 ************* Banner *******************
 ****************************************
.banner {
	height: 810px;
	position: relative;
}

.banner .container{
	position: static;
}

.banner-content{
	position: absolute;
	top: 50%;
	left: 0;
	right: 0;
	margin: 0 auto;
	transform: translateY(-50%);
	width: 50%;
	background-color: rgba(20, 21, 20, 0.749);
	padding: 35px 55px;
	text-align: center;
}

.banner-content h1{
	font-size: 50px;
	color: #fff;
	font-weight: 600;
    font-style: normal;
}

.banner-content h2{
	color: #fff;
	font-size: 30px;
	font-weight: 600;
	padding: 35px 0;
    font-style: italic;
}

.banner-content p{
	margin: 0 0 35px 0;
	font-size: 18px;
	color: #fff;
}

.banner-ctas{
	display: flex;
	gap: 20px;
	flex-wrap: wrap;
	justify-content: center;
}

@media screen and (max-width: 1390px){
	.banner-content{
		width: 75%;
	}
}

@media screen and (max-width: 1023px){
	.banner-content{
		width: 90%;
	}
}

@media screen and (max-width: 767px){
	.banner-content{
		padding: 40px;
	}
	.banner-content h1{
		font-size: 32px;
	}
	.banner-content h2{
		font-size: 24px;
	}
}

@media screen and (max-width: 450px){
	.banner	{
		min-height: 900px;
	}
}

/*******************************************
 ********* green callout strip *************
 *******************************************
.green-callout-strip{
	padding: 60px 0;
	background-image: url('img/green-bk.png');
}


.green-callout-strip h2{
	text-align: center;
	font-size: 45px;
	font-weight: bold;
	color: #fff;
}

.green-callout-strip h2 span{
	font-weight: normal;
}


@media screen and (max-width: 767px){
	.green-callout-strip h2{
		font-size: 32px;
	}
}
/**********************************************
 ************* transforming *******************
 **********************************************
.transforming{

}

.transforming .full-width{
	max-width: none;
}

.transforming .inner-content{
	display: flex;
	align-items: center;
}

.transforming article{
	float: none;
	width: 50%;
}

.transforming article .entry-content{
	margin: 0 80px 0 240px;
}

.transforming article h2{
	color: #000;
	font-size: 55px;
}

.transforming .transforming-image{
	width: 50%;
	height: 833px;
}

.transforming article p{
	color: #000;
	font-size: 20px;
	margin: 40px 0;
}

.transforming article .button-dark-green:hover{
	background-color: #487e3b;
	color: #fff;
}

@media screen and (max-width: 1650px){
	.transforming article .entry-content{
		margin: 0 80px;
	}
}

@media screen and (max-width: 1100px){
	.transforming .inner-content{
		flex-wrap: wrap;
	}
	.transforming article{
		width: 100%;
	}
	.transforming article .entry-content{
		padding: 60px;
		margin: 0;
	}
	.transforming .transforming-image{
		width: 100%;
		height: 500px;
	}
	.transforming article p{
		margin: 20px 0;
	}
}

@media screen and (max-width: 767px){
	.transforming article h2{
		font-size: 32px;
	}
	.transforming article p{
		font-size: 18px;
	}
	.transforming .transforming-image{
		height: 350px;
	}
	.transforming article .entry-content{
		padding: 30px 20px;
	}
}

/****************************************
 ************* services ******************
 ****************************************
.services{
	background-color: #000;
	padding: 110px 0;
}

.services .container{
	max-width: 1660px;
}

.services h2{
	font-size: 50px;
	color: #fff;
	width: 60%;
	margin: 0 auto;
	text-align: center;
	padding-bottom: 40px;
}

.services ul{
	display: flex;
	padding: 0;
	justify-content: center;
	flex-wrap: wrap;
	gap: 15px;
}

.services ul li{
	width: calc(100%/4 - 20px);
}


.services ul li a {
	display: block;
	transition: transform .3s ease;
	height: 417px;
}

.services ul li a .service-bucket-image{
	width: 100%;
	height: 100%;
	position: relative;
}

.services ul li a .service-bucket-image-overlay{
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(33, 34, 33, 0.45);
}

.services ul li a .service-bucket-image h3{
	font-size: 36px;
	font-weight: bold;
	color: #fff;
	position: absolute;
	width: 70%;
    left: 7%;
    top: 7%;
    transition: .3 ease;
}

.services ul li a:hover .service-bucket-image-overlay{
	background-color: rgba(33, 34, 33, 0.65);
}

.services ul li a:hover .service-bucket-image h3{
	transform: scale(1.1);
}

@media screen and (max-width: 1200px){
	.services ul li{
		width: calc(100%/3 - 20px);
	}
}

@media screen and (max-width: 1023px){
	.services h2{
		width: 100%;
	}
	.services ul li a {
		height: 300px;
	}
	.services ul li a .service-bucket-image h3{
		font-size: 26px;
	}
}


@media screen and (max-width: 767px){
	.services{
		padding: 80px 0;
	}
	.services h2{
		font-size: 32px;
	}
	.services ul li{
		width: calc(100%/2 - 20px);
	}
	.services ul li a {
		height: 250px;
	}
	.services ul li a .service-bucket-image h3{
		font-size: 21px;
	}
}


/****************************************
 ************* reviews *******************
 ****************************************
.reviews{
	padding: 120px 0;

}

.reviews-slider-wrapper{
	width: 585px;
	max-width: 100%;
	margin-left: auto;
}

.reviews .ti-widget.ti-goog .ti-col-2 .ti-review-item{
	flex: 0 0 100% !important;
    max-width: 100% !important;
}

.ti-widget.ti-goog .ti-review-item>.ti-inner{
	border-radius: 0 !important;
	padding: 50px !important;
}

.ti-inner{
	border-radius: 0 !important;
	padding: 50px !important;
}

.ti-widget.ti-goog .ti-review-content{
	font-size: 24px !important;
	line-height: 1.2 !important;
	height: auto !important;
}

.ti-widget.ti-goog .ti-widget-container .ti-name{
	font-size: 24px !important;
	color: #487e3b !important;
}


@media screen and (max-width: 767px){
	.ti-widget.ti-goog .ti-review-content{
		font-size: 21px !important;
	}

	.ti-widget.ti-goog .ti-widget-container .ti-name{
		font-size: 21px !important;
	}
}
/****************************************
 ************* News  *******************
 ****************************************
.news{
	padding: 100px 0;
}

.news h2{
	text-align: center;
	font-size: 50px;
	color: #000;
}

.news-posts-wrapper ul {
    display: flex;
    gap: 40px;
    flex-wrap: wrap;
    padding: 40px 0 0 0;
}

.news-posts-wrapper ul li {
    flex: 1 1 calc(33.333% - 40px);
}

.news .blog-image {
    display: block;
    width: 100%;
    height: 303px;
    position: relative;
    overflow: hidden;
}

.news .blog-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform .4s ease;
}

.news .blog-item:hover .blog-image img {
    transform: scale(1.05);
}

.news .blog-date {
    position: absolute;
    top: 15px;
    right: 15px;
    background: #fff;
    color: #494646;
    padding: 10px 14px;
    text-align: center;
    border-bottom: 4px solid #0d4923;
}

.news .blog-date-month {
    display: block;
    font-size: 18px;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.news .blog-date-day {
    display: block;
    font-size: 30px;
    font-weight: bold;
    line-height: 1;
}

.news .blog-date-year {
    display: block;
    font-size: 12px;
}

.news-posts-wrapper ul li {
    background: #f1f1f1;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0,0,0,0.06);
    transition: transform .3s ease, box-shadow .3s ease;
}

.news .blog-item:hover {
    transform: translateY(-6px);
    box-shadow: 0 20px 40px rgba(0,0,0,0.1);
}

.news .blog-content {
    padding: 30px;
}

.news .blog-title a{
	font-size: 21px;
	color: #494646;
}

.news .blog-excerpt{
	font-size: 18px;
	color: #494646;
}

.news .blog-cta{
	display: flex;
	justify-content: center;
}

.news .blog-cta .button-dark-green{
	padding: 15px 95px;
}

.news .blog-cta .button-dark-green:hover{
	background-color: #0d4923;
	color: #fff;
}

@media (max-width: 1024px) {
    .news-posts-wrapper ul li {
        flex: 1 1 calc(50% - 40px);
    }
}

@media (max-width: 640px) {
	.news{
		padding: 80px 0;
	}
    .news-posts-wrapper ul {
        gap: 25px;
    }

    .news-posts-wrapper ul li {
        flex: 1 1 100%;
    }

    .news .blog-image {
        height: 240px;
    }
    .news h2{
    	font-size: 32px;
    }
}

/****************************************
 ************* hp-contact ****************
 ****************************************

.hp-contact{
	padding: 200px 0;
}

.hp-contact .inner-content{
	background-color: rgba(72, 126, 59, 0.749);
	margin: 0 auto;
    width: 50%;
    text-align: center;
    color: #fff;
    padding: 45px;
}

.hp-contact .inner-content h2{
	font-size: 50px;
	padding-bottom: 20px;
}

@media screen and (max-width: 1200px){
	.hp-contact .inner-content{
		width: 75%;
	}
}

@media screen and (max-width: 767px){
	.hp-contact{
		padding: 100px 0;
	}
	.hp-contact .inner-content{
		width: 90%;
	}
	.hp-contact .inner-content h2{
		font-size: 32px;
	}
}

/* ==========================================================================
   EDWARDS LANDSCAPING - CUSTOM HOME PAGE MODULE
   ========================================================================== */

#edwards-premium-rebuild-v1 main{
    padding: 0 !important;
}

#edwards-premium-rebuild-v1 {
    width: 100% !important;
    max-width: 100% !important;
    overflow-x: hidden !important;
    background-color: #FFFFFF !important;
    box-sizing: border-box !important;
}

#edwards-premium-rebuild-v1 * {
    box-sizing: border-box !important;
}

#edwards-premium-rebuild-v1 *::before {
    box-sizing: border-box !important;
}

#edwards-premium-rebuild-v1 *::after {
    box-sizing: border-box !important;
}

#edwards-premium-rebuild-v1 section {
    padding: 140px 0 !important;
    width: 100% !important;
    display: block !important;
    position: relative !important;
}

#edwards-premium-rebuild-v1 .ep-container {
    width: 100% !important;
    max-width: 1400px !important;
    margin: 0 auto !important;
    padding: 0 20px !important;
}

#edwards-premium-rebuild-v1 .ep-serif-title {
    font-family: 'Cormorant Garamond', Georgia, serif !important;
    font-weight: 400 !important;
    line-height: 1.1 !important;
    letter-spacing: -0.5px !important;
    margin: 0 !important;
}

#edwards-premium-rebuild-v1 .ep-sans-text {
    font-family: 'Montserrat', Helvetica, Arial, sans-serif !important;
    font-size: 1.15rem !important;
    line-height: 1.75 !important;
    letter-spacing: 0.5px !important;
    color: #333333 !important;
    margin: 0 0 20px 0 !important;
}

/* --- Shared Color Tokens --- */

.ep-bg-sage {
    background-color: #DCE1D3 !important;
}

.ep-bg-white {
    background-color: #FFFFFF !important;
}

.ep-bg-forest {
    background-color: #143825 !important;
}

.ep-bg-warm-cream {
    background-color: #F4F4F0 !important;
}

/* --- Interactive Elements --- */

#edwards-premium-rebuild-v1 .ep-btn-pill {
    display: inline-block !important;
    align-self: flex-start !important;
    padding: 18px 42px !important;
    background-color: #143825 !important;
    border: 1px solid #143825 !important;
    border-radius: 4px !important;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 0.85rem !important;
    font-weight: 700 !important;
    letter-spacing: 2px !important;
    color: #FFFFFF !important;
    text-decoration: none !important;
    text-transform: uppercase !important;
    box-shadow: 0 12px 35px rgba(20, 56, 37, 0.12) !important;
    transition: all 0.35s cubic-bezier(0.25, 1, 0.5, 1) !important;
}

#edwards-premium-rebuild-v1 .ep-btn-pill:hover {
    background-color: #B56141 !important;
    border-color: #B56141 !important;
    color: #FFFFFF !important;
    transform: translateY(-3px) !important;
    box-shadow: 0 16px 40px rgba(181, 97, 65, 0.2) !important;
}

/* ==========================================================================
   2. SECTION 1: HERO CONTAINER
   ========================================================================== */

#edwards-premium-rebuild-v1 .ep-hero {
    padding: 0 !important;
}

.ep-hero-split {
    display: flex !important;
    align-items: stretch !important;
    min-height: 85vh !important;
    width: 100% !important;
}

.ep-hero-content {
    flex: 0 0 45% !important;
    background-color: #DCE1D3 !important;
    padding: 6% 5% 6% 8% !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
}

#edwards-premium-rebuild-v1 .ep-hero-content .ep-serif-title {
    font-size: 4.2rem !important;
    color: #143825 !important;
    margin-bottom: 25px !important;
    text-transform: uppercase !important;
}

.ep-hero-image {
    flex: 0 0 55% !important;
    height: 85vh !important;
    position: relative !important;
}

.ep-hero-image img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
}

/* ==========================================================================
   3. SECTION 2: EDITORIAL INTRODUCTION
   ========================================================================== */

#edwards-premium-rebuild-v1 .ep-editorial-intro {
    background-color: #FFFFFF !important;
    padding: 150px 0 !important;
}

.ep-intro-magazine-row {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 60px !important;
}

.ep-intro-text-column {
    flex: 1 !important;
    display: flex !important;
    flex-direction: column !important;
}

#edwards-premium-rebuild-v1 .ep-process-meta {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 0.85rem !important;
    font-weight: 700 !important;
    letter-spacing: 2px !important;
    color: #B56141 !important;
    text-transform: uppercase !important;
    margin-bottom: 15px !important;
    display: block !important;
}

#edwards-premium-rebuild-v1 .ep-intro-text-column .ep-serif-title {
    text-transform: none !important;
    font-size: 3.5rem !important;
    color: #1C1C1C !important;
    line-height: 1.2 !important;
    margin: 0 0 35px 0 !important;
}

.ep-wysiwyg-wrapper {
    width: 100% !important;
    max-width: 760px !important;
}

.ep-wysiwyg-wrapper p {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 1.05rem !important;
    font-weight: 400 !important;
    line-height: 1.8 !important;
    color: #555555 !important;
    margin: 0 0 25px 0 !important;
}

.ep-wysiwyg-wrapper p:last-child {
    margin-bottom: 0 !important;
}

.ep-wysiwyg-wrapper strong {
    color: #143825 !important;
    font-weight: 600 !important;
}

.ep-intro-image-column {
    flex: 0 0 500px !important;
    width: 500px !important;
    display: flex !important;
    justify-content: flex-end !important;
}

.ep-magazine-portrait-frame {
    width: 100% !important;
    max-width: 500px !important;
    aspect-ratio: 4 / 5 !important;
    overflow: hidden !important;
    box-shadow: 0 30px 70px rgba(0,0,0,0.07) !important;
    transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1) !important;
}

.ep-magazine-portrait-frame img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
}

.ep-magazine-portrait-frame:hover {
    transform: scale(1.02) translateY(-4px) !important;
}

/* ==========================================================================
   4. SECTION 3: CORE SERVICES GRID
   ========================================================================== */

#edwards-premium-rebuild-v1 .ep-services .ep-services-meta {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 0.85rem !important;
    font-weight: 700 !important;
    letter-spacing: 3px !important;
    color: #DCE1D3 !important;
    text-transform: uppercase !important;
    display: block !important;
    text-align: center !important;
    margin-bottom: 12px !important;
}

#edwards-premium-rebuild-v1 .ep-services .ep-serif-title {
    color: #FFFFFF !important;
    font-size: 3.4rem !important;
    text-align: center !important;
    margin-bottom: 80px !important;
    text-transform: uppercase !important;
}

.ep-services-grid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 40px !important;
    align-items: stretch !important;
}

a.ep-service-card {
    display: block !important;
    text-decoration: none !important;
    transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), box-shadow 0.4s ease !important;
}

.ep-card-img-wrap {
    overflow: hidden !important;
    position: relative !important;
    height: 270px !important;
}

.ep-card-img-wrap img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
    transition: transform 0.5s ease !important;
}

a.ep-service-card:hover {
    transform: translateY(-8px) !important;
}

a.ep-service-card:hover .ep-card-img-wrap img {
    transform: scale(1.04) !important;
}

.ep-service-card .ep-card-body {
    padding: 35px 25px !important;
}

.ep-service-card h3 {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 1.15rem !important;
    font-weight: 700 !important;
    letter-spacing: 1px !important;
    text-transform: uppercase !important;
    margin: 0 0 15px 0 !important;
}

.ep-service-card p {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 0.98rem !important;
    font-weight: 400 !important;
    line-height: 1.65 !important;
}

.ep-service-card.bg-terracotta {
    background-color: #B56141 !important;
}

.ep-service-card.bg-terracotta h3, 
.ep-service-card.bg-terracotta p {
    color: #FFFFFF !important;
}

.ep-service-card.bg-cream {
    background-color: #F9F9F6 !important;
}

.ep-service-card.bg-cream h3 {
    color: #143825 !important;
}

.ep-service-card.bg-cream p {
    color: #222222 !important;
}

/* High-Contrast Limestone Sage Card Layout Variant */
#edwards-premium-rebuild-v1 .ep-services-grid a.ep-service-card.bg-light-sage {
    background-color: #DCE1D3 !important;
}

#edwards-premium-rebuild-v1 .ep-services-grid a.ep-service-card.bg-light-sage h3 {
    color: #143825 !important;
}

#edwards-premium-rebuild-v1 .ep-services-grid a.ep-service-card.bg-light-sage p {
    color: #2F3E2B !important;
}
/* ==========================================================================
   SECTION 4: COLOR-BLOCKED PORTFOLIO LOOKBOOK CARD ENGINE
   ========================================================================== */

#edwards-premium-rebuild-v1 .ep-portfolio {
    background-color: #DCE1D3 !important;
}

#edwards-premium-rebuild-v1 .ep-portfolio .section-meta-tag {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 0.85rem !important;
    font-weight: 700 !important;
    letter-spacing: 3px !important;
    color: #B56141 !important;
    text-transform: uppercase !important;
    display: block;
    text-align: center;
    margin-bottom: 10px !important;
}

#edwards-premium-rebuild-v1 .ep-portfolio .ep-serif-title {
    font-size: 3.6rem !important;
    color: #1C1C1C !important;
    text-align: center !important;
    margin-bottom: 70px !important;
    text-transform: none !important;
}

.ep-lookbook-wrapper {
    display: flex !important;
    justify-content: space-between !important;
    align-items: stretch !important; /* Forces cards to stay perfectly balanced in height */
    gap: 40px !important;
    width: 100% !important;
}

/* Premium Card Enclosures */
#edwards-premium-rebuild-v1 a.ep-lookbook-card {
    display: flex !important;
    flex-direction: column !important;
    flex: 0 0 calc(50% - 20px) !important;
    max-width: calc(50% - 20px) !important;
    background-color: #FFFFFF !important; /* Solid architectural frame base */
    padding: 0 !important;
    text-decoration: none !important;
    box-shadow: 0 25px 60px rgba(0, 0, 0, 0.04) !important;
    overflow: hidden !important; /* Clips the footer panel edges perfectly */
    transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), box-shadow 0.4s ease !important;
}

/* Removes the old staggering offset to lock both blocks onto a level line */
a.ep-lookbook-card.item-right {
    margin-top: 0 !important;
}

#edwards-premium-rebuild-v1 a.ep-lookbook-card:hover {
    transform: translateY(-8px) !important;
    box-shadow: 0 35px 70px rgba(20, 56, 37, 0.08) !important;
}

.ep-mosaic-grid {
    display: flex !important;
    gap: 0px !important; /* Tightened flush matrix */
    width: 100% !important;
    height: 400px !important;
}

.ep-mosaic-left-col {
    flex: 0 0 65% !important;
    width: 65% !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 0px !important;
    height: 100% !important;
}

.ep-mosaic-main-img {
    height: 100% !important;
    flex: 1 !important;
    overflow: hidden !important;
    width: 100% !important;
}

.ep-mosaic-main-img img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block;
}

.ep-mosaic-sub-row {
    display: none !important; /* Keeps the modern layout clean and uncluttered */
}

.ep-mosaic-right-col {
    flex: 0 0 35% !important;
    width: 35% !important;
    height: 100% !important;
    position: relative !important;
    overflow: hidden !hidden;
    overflow: hidden !important;
}

.ep-mosaic-tall-img {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
}

.ep-mosaic-tall-img img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
}

.ep-lookbook-single-frame {
    width: 100% !important;
    height: 400px !important;
    overflow: hidden !important;
    position: relative !important;
}

.ep-lookbook-single-frame img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
}

/* 
   THE COLOR-BLOCKED FOOTER ACCENT BAND 
   Replaces floating labels with an intentional full-width highlight footer
*/
.ep-lookbook-caption {
    background-color: #FFFFFF !important; /* Clean architectural white frame base */
    padding: 30px 25px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 12px !important;
    flex-grow: 1 !important; 
}

#edwards-premium-rebuild-v1 .ep-lookbook-caption h3 {
    font-family: 'Cormorant Garamond', Georgia, serif !important;
    font-size: 1.6rem !important;
    font-weight: 400 !important;
    color: #143825 !important; /* Signature dark forest green replaces white for sharp contrast */
    text-transform: none !important;
    letter-spacing: -0.2px !important;
    margin: 0 !important;
    line-height: 1.2 !important;
}

.ep-lookbook-link-label {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 0.78rem !important;
    font-weight: 700 !important;
    letter-spacing: 1.5px !important;
    color: #B56141 !important; /* Terracotta label stands out beautifully on white */
    text-transform: uppercase !important;
    text-decoration: underline !important;
    display: inline-block !important;
}

#edwards-premium-rebuild-v1 a.ep-lookbook-card:hover .ep-lookbook-link-label {
    color: #143825 !important; /* Smooth hover transition back to signature green */
}

.ep-portfolio-btn-wrap {
    text-align: center !important;
    margin-top: 75px !important;
    width: 100% !important;
    display: flex !important;
    justify-content: center !important;
}

/* ==========================================================================
   6. SECTION 5: CLIENT TESTIMONIALS & DESIGN IDEAS
   ========================================================================== */

#edwards-premium-rebuild-v1 .ep-testimonials {
    background-color: #F4F4F0 !important;
}

#edwards-premium-rebuild-v1 .ep-testimonials .ep-serif-title {
    font-size: 3.6rem !important;
    text-align: center !important;
    color: #1C1C1C !important;
    text-transform: none !important;
    margin-bottom: 20px !important;
}

.ep-testimonial-sub {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 0.95rem !important;
    font-weight: 700 !important;
    letter-spacing: 2px !important;
    text-transform: uppercase !important;
    text-align: center !important;
    color: #143825 !important;
    margin-bottom: 70px !important;
}

.ep-testimonial-row {
    display: flex !important;
    justify-content: space-between !important;
    align-items: flex-start !important;
    gap: 60px !important;
}

.ep-testimonial-quote-panel {
    flex: 0 0 45% !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important;
    padding-right: 20px !important;
}

.ep-testimonial-avatar {
    width: 90px !important;
    height: 90px !important;
    border-radius: 50% !important;
    object-fit: cover !important;
    margin-bottom: 25px !important;
}

.ep-testimonial-blockquote {
    font-family: 'Cormorant Garamond', Georgia, serif !important;
    font-style: italic !important;
    font-size: 1.45rem !important;
    line-height: 1.65 !important;
    color: #222222 !important;
    margin: 0 0 25px 0 !important;
    position: relative !important;
}

.ep-testimonial-author {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 600 !important;
    font-size: 0.9rem !important;
    color: #666666 !important;
    text-transform: uppercase !important;
}

.ep-design-ideas-panel {
    flex: 0 0 50% !important;
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 30px !important;
}

#edwards-premium-rebuild-v1 .ep-design-ideas-panel a.ep-idea-card {
    display: block !important;
    background-color: #FFFFFF !important;
    border-radius: 14px !important;
    overflow: hidden !important;
    text-decoration: none !important;
    box-shadow: 0 20px 45px rgba(0,0,0,0.06) !important;
    width: 100% !important;
    transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1) !important;
}

#edwards-premium-rebuild-v1 .ep-design-ideas-panel a.ep-idea-card:hover {
    transform: translateY(-6px) !important;
}

.ep-idea-img-wrap {
    height: 190px !important;
    overflow: hidden !important;
    width: 100% !important;
    position: relative !important;
    display: block !important;
}

.ep-idea-img-wrap img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
}

.ep-idea-body {
    padding: 25px 20px !important;
    background-color: #FFFFFF !important;
    display: block !important;
}

.ep-idea-body h4 {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 700 !important;
    font-size: 1rem !important;
    color: #1C1C1C !important;
    margin: 0 0 12px 0 !important;
    text-transform: none !important;
}

.ep-idea-body p {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 0.92rem !important;
    font-weight: 400 !important;
    line-height: 1.6 !important;
    color: #555555 !important;
}

/* ==========================================================================
   7. SECTION 6: CONTACT & FORM SPLIT
   ========================================================================== */

#edwards-premium-rebuild-v1 section#contact {
    padding: 0 !important;
    margin: 0 !important;
    background-color: #FFFFFF !important;
}

.ep-contact-split {
    display: flex !important;
    align-items: stretch !important;
    width: 100% !important;
    min-height: 80vh !important;
}

.ep-contact-form-block {
    flex: 0 0 50% !important;
    width: 50% !important;
    padding: 8% 8% 8% 8% !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
}

.ep-contact-meta {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 0.85rem !important;
    font-weight: 700 !important;
    letter-spacing: 3px !important;
    color: #B56141 !important;
    text-transform: uppercase !important;
    margin-bottom: 10px !important;
}

#edwards-premium-rebuild-v1 .ep-contact-form-block .ep-serif-title {
    font-size: 3.8rem !important;
    color: #1C1C1C !important;
    text-transform: none !important;
    margin-bottom: 40px !important;
}

.ep-styled-form-fallback {
    width: 100% !important;
}

.ep-form-group {
    margin-bottom: 25px !important;
    width: 100% !important;
}

.ep-form-group input, 
.ep-form-group textarea {
    width: 100% !important;
    padding: 14px 18px !important;
    border: 1px solid #DCE1D3 !important;
    background-color: #F9F9F6 !important;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 0.95rem !important;
    color: #1C1C1C !important;
    border-radius: 4px !important;
    outline: none !important;
    transition: border-color 0.3s ease !important;
}

#edwards-premium-rebuild-v1 .ep-form-group input:focus, 
#edwards-premium-rebuild-v1 .ep-form-group textarea:focus {
    border-color: #143825 !important;
    box-shadow: 0 0 0 1px #143825 !important;
    background-color: #FFFFFF !important;
}

.ep-form-group textarea {
    height: 110px !important;
    resize: none !important;
}

.ep-submit-btn {
    display: inline-block !important;
    padding: 16px 45px !important;
    background-color: #143825 !important;
    color: #FFFFFF !important;
    border: none !important;
    border-radius: 4px !important;
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 700 !important;
    font-size: 0.85rem !important;
    letter-spacing: 1.5px !important;
    text-transform: uppercase !important;
    cursor: pointer !important;
    transition: background-color 0.3s ease, transform 0.2s ease !important;
}

.ep-submit-btn:hover {
    background-color: #B56141 !important;
    transform: translateY(-2px) !important;
}

.ep-contact-image-block {
    flex: 0 0 50% !important;
    width: 50% !important;
    position: relative !important;
    overflow: hidden !important;
}

.ep-contact-image-block img {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
}

/* ==========================================================================
   8. MOBILE RESPONSIVE ENGINE BREAKOUT
   ========================================================================== */

@media (max-width: 991px) {
    #edwards-premium-rebuild-v1 section {
        padding: 55px 0 !important;
    }

    #edwards-premium-rebuild-v1 .ep-container {
        padding: 0 24px !important;
    }

    #edwards-premium-rebuild-v1 .ep-hero-content .ep-serif-title {
        font-size: 2.6rem !important;
        line-height: 1.3 !important;
        color: #FFFFFF !important;
        letter-spacing: 0px !important;
        margin-bottom: 20px !important;
    }

    #edwards-premium-rebuild-v1 .ep-intro-text-column .ep-serif-title,
    #edwards-premium-rebuild-v1 .ep-services .ep-serif-title,
    #edwards-premium-rebuild-v1 .ep-portfolio .ep-serif-title,
    #edwards-premium-rebuild-v1 .ep-testimonials .ep-serif-title,
    #edwards-premium-rebuild-v1 .ep-contact-form-block .ep-serif-title {
        font-size: 2.0rem !important;
        line-height: 1.35 !important;
        letter-spacing: 0px !important;
        margin-bottom: 20px !important;
    }

    #edwards-premium-rebuild-v1 .ep-lookbook-card h3 {
        font-size: 1.15rem !important;
        line-height: 1.4 !important;
        letter-spacing: 1px !important;
        margin-bottom: 15px !important;
    }

    #edwards-premium-rebuild-v1 .ep-testimonial-blockquote {
        font-size: 1.35rem !important;
        line-height: 1.5 !important;
        margin-bottom: 20px !important;
    }

    #edwards-premium-rebuild-v1 .ep-hero {
        padding: 0 !important;
    }

    .ep-hero-split {
        flex-direction: column !important;
        position: relative !important;
        min-height: 75vh !important;
        display: block !important;
    }

    #edwards-premium-rebuild-v1 .ep-hero-image {
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        width: 100% !important;
        height: 100% !important;
        z-index: 1 !important;
    }

    #edwards-premium-rebuild-v1 .ep-hero-image::after {
        content: '' !important;
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        width: 100% !important;
        height: 100% !important;
        background: linear-gradient(180deg, rgba(20, 56, 37, 0.65) 0%, rgba(10, 26, 18, 0.85) 100%) !important;
        z-index: 2 !important;
    }

    #edwards-premium-rebuild-v1 .ep-hero-content {
        position: relative !important;
        z-index: 3 !important;
        background: transparent !important;
        padding: 90px 24px 70px 24px !important;
        min-height: 75vh !important;
        justify-content: center !important;
    }

    #edwards-premium-rebuild-v1 .ep-hero-content .ep-sans-text {
        color: #EDEDED !important;
    }

    #edwards-premium-rebuild-v1 .ep-hero-content .ep-btn-pill {
        background-color: #FFFFFF !important;
        border-color: #FFFFFF !important;
        color: #143825 !important;
        box-shadow: 0 10px 30px rgba(0,0,0,0.15) !important;
    }

    #edwards-premium-rebuild-v1 .ep-hero-content .ep-btn-pill:hover {
        background-color: #B56141 !important;
        border-color: #B56141 !important;
        color: #FFFFFF !important;
    }

    #edwards-premium-rebuild-v1 .ep-editorial-intro {
        padding: 50px 0 20px 0 !important;
    }

    .ep-intro-magazine-row {
        flex-direction: column !important;
        gap: 0px !important;
    }

    .ep-intro-image-column {
        justify-content: center !important;
        margin-top: 25px !important;
        margin-bottom: 25px !important;
    }

    .ep-magazine-portrait-frame {
        max-width: 100% !important;
        aspect-ratio: 1.2 / 1 !important;
    }

    .ep-services-grid {
        grid-template-columns: 1fr !important;
        gap: 40px !important;
    }

    #edwards-premium-rebuild-v1 .ep-services-grid a.ep-service-card.bg-cream {
        transform: none !important;
        box-shadow: 0 15px 40px rgba(0,0,0,0.15) !important;
    }

   .ep-lookbook-wrapper {
        flex-direction: column !important;
        gap: 30px !important;
    }

    #edwards-premium-rebuild-v1 a.ep-lookbook-card {
        flex: 0 0 100% !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    a.ep-lookbook-card.item-right {
        margin-top: 0 !important;
    }

    .ep-mosaic-grid {
        flex-direction: column !important;
        height: auto !important;
    }

    .ep-mosaic-left-col, 
    .ep-mosaic-right-col {
        flex: 0 0 100% !important;
        width: 100% !important;
    }

    .ep-mosaic-main-img {
        height: 240px !important;
    }

    .ep-lookbook-single-frame {
        height: 240px !important;
    }

    .ep-lookbook-caption {
        padding: 24px 20px !important;
    }

    #edwards-premium-rebuild-v1 .ep-lookbook-caption h3 {
        font-size: 1.4rem !important;
    }

    .ep-testimonial-row {
        flex-direction: column !important;
    }

    .ep-design-ideas-panel {
        grid-template-columns: 1fr !important;
        gap: 30px !important;
    }

    .ep-idea-img-wrap {
        height: 160px !important;
        min-height: 160px !important;
        max-height: 160px !important;
    }

    .ep-idea-img-wrap img {
        height: 100% !important;
        width: 100% !important;
        object-fit: cover !important;
    }

    .ep-testimonial-quote-panel {
        padding-right: 0 !important;
        margin-bottom: 45px !important;
    }

    #edwards-premium-rebuild-v1 section#contact {
        padding: 0 !important;
    }

    .ep-contact-split {
        flex-direction: column !important;
        align-items: stretch !important;
    }

    .ep-contact-form-block {
        flex: 0 0 100% !important;
        width: 100% !important;
        padding: 50px 24px !important;
    }

    .ep-contact-image-block {
        flex: 0 0 100% !important;
        width: 100% !important;
        height: 320px !important;
        position: relative !important;
        display: block !important;
    }

    .ep-contact-image-block img {
        position: absolute !important;
        top: 0 !important;
        left: 0 !important;
        width: 100% !important;
        height: 100% !important;
        object-fit: cover !important;
        display: block !important;
    }

    .ep-portfolio-btn-wrap {
        margin-top: 45px !important;
    }
}
/****************************************
 ************* footer *******************
 ****************************************/

footer{
	clear: both;
	background-image: url('img/footer-bg.png');
	padding: 70px 0 0 0;
}

.inner-footer{
	display: flex;
	justify-content: space-between;
	gap: 40px;
	padding-bottom: 70px;
	align-items: flex-start;
}

.logo-social-info-wrapper{
	display: flex;
	width: 50%;
	align-items: center;
	gap: 40px
}

.footer-navs-wrapper{
	width: 50%;
	display: flex;
	justify-content: space-between;
}

.logo-social{
	width: 45%;
}

.footer-nav ul{
	padding: 0;
}

footer h3{
	font-size: 24px;
	font-weight: 600;
	color: #fff;
	padding-bottom: 20px;
}

.footer-nav ul li a{
	font-size: 18px;
	color: #fff;
}

.footer-nav ul li a:hover{
	color: #487e3b
}

.footer-logo{
	display: block;
	width: 286px;
	max-width: 100%;
	height: auto;
	margin: 0 auto;
}

footer .google-maps-link{
	display: flex;
	gap: 10px;
	font-size: 18px;
}

footer .google-maps-link svg{
	fill: #fff;
}

footer .google-maps-link:hover .address-content{
	color: #487e3b
}

footer .google-maps-link .address-content{
	color: #fff;
}

footer .google-maps-link .address-content p{
	margin: 0;
}

footer .phone-wrapper{
	display: flex;
	gap: 10px;
	padding-top: 20px;
}

footer .phone-wrapper svg{
	fill: #fff;
}

footer .phone-wrapper .phone-content{
	font-size: 18px;
	color: #fff;
}

footer .phone-wrapper .phone-content p{
	margin: 0;
}

footer .phone-wrapper .phone-content a{
	color: #fff;
}

footer .phone-wrapper .phone-content a:hover{
	color: #487e3b;
}

footer .social-list{
	display: flex;	
	gap: 10px;
	flex-wrap: wrap;
	padding: 10px 0 0 0;
	justify-content: center;
}

footer .social-list li a{
	display: block;
	width: 39px;
	height: 39px;
	border-radius: 50%;
	padding: 10px;
	transition: .3s ease;
	background-color: #487e3b;
}

footer .social-list li a svg{
	width: 100%;
	height: 100%;
	fill: #fff;
}

footer .social-list li a:hover{
	transform: scale(1.1);
}

.copyright-area {
    padding: 20px 0;
    border-top: 1px solid #4d4c4c;
}

.copyright-area ul {
    padding: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    text-align: center;
}

.copyright-area ul li {
    font-size: 14px;
    color: #fff;
    border-right: 1px solid #fff;
    display: inline-block;
    padding: 0 5px;
}

.copyright-area ul li:last-child {
    border-right: none;
}

.copyright-area ul li a {
    color: #fff;
}

.copyright-area ul li a:hover{
	color: #487e3b;
}

@media screen and (max-width: 1400px){
	.inner-footer{
		justify-content: center;
	}
}

@media screen and (max-width: 1160px){
	.inner-footer{
		flex-wrap: wrap;
	}
	.logo-social-info-wrapper{
		width: 100%;
		flex-wrap: wrap;
	}
	.logo-social{
		width: 100%;
	}
	.footer-contact-info-wrapper{
		width: 100%;
		text-align: center;
	}
	footer .google-maps-link{
		flex-wrap: wrap;
		justify-content: center;
	}
	footer .google-maps-link svg{
		width: 100%;
	}
	footer .phone-wrapper{
		flex-wrap: wrap;
		justify-content: center;
	}
	footer .phone-wrapper svg{
		width: 100%;
	}
	.footer-navs-wrapper{
		width: 100%;
		gap: 60px;
		justify-content: center;
		text-align: center;
		flex-wrap: wrap;
	}
}

/******************************************
 ************* Interior pages *************
 ******************************************/
body.page-template-default:not(.home) main{
	padding: 60px 0;
}

body.page-template-default:not(.home) article{
	width:calc(100% - 340px);
	display: inline-block;
	vertical-align: top;
}

body.page-template-default:not(.home) aside{
	max-width:320px;
	display: inline-block;
	vertical-align: top;
	padding-left:10px;
}

body.page-template-page-full-width:not(.home) main,
body.page-template-page-about-us:not(.home) main,
body.page-template-page-history:not(.home) main,
body.page-template-page-giving-back:not(.home) main,
body.page-template-page-residential-services:not(.home) main,
body.page-template-page-commercial-services:not(.home) main,
body.page-template-page-landscape-design-and-build:not(.home) main,
body.page-template-page-specials:not(.home) main{
	padding: 60px 0;
}

body.page-template-page-full-width:not(.home) article,
body.page-template-page-about-us:not(.home) article,
body.page-template-page-history:not(.home) article,
body.page-template-page-giving-back:not(.home) article,
body.page-template-page-residential-services:not(.home) article,
body.page-template-page-commercial-services:not(.home) article,
body.page-template-page-landscape-design-and-build:not(.home) article,
body.page-template-page-specials:not(.home)article{
	max-width: 78%;
    width: 100%;
	margin: 0 auto;
    float: unset;
}

main {
	padding: 60px 0 40px 0;
}

article .entry {
	line-height: 24px;
}

article h2 {
	font-size: 36px;
	color: #487e3b;
	text-align: center;
	line-height: 35px;
}

article h3 {
	font-size: 30px;
	color: #487e3b;
	text-align: center;
}

.quick-contact-form-wrapper {
	background: #0b4823;
	padding: 30px;
}

.quick-contact-form-wrapper h2 {
	color: #fff;
	font-size: 36px;
	text-align: center;
	margin-bottom: 15px;
}

.quick-contact-form-wrapper form .list--unstyled li:last-child {
	margin-bottom: -20px;
}

.quick-contact-form-wrapper .wpcf7-response-output {
	border-color: #46b450 !important;
	color: #fff !important;
	text-align: center !important;
}

.about-us-blocks,
.fence-types-blocks {
	padding-top: 40px;
}

.about-us-blocks ul li,
.fence-types-blocks ul li {
	display: -webkit-box;
	display: -ms-flexbox;
	/*display: flex;*/
	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
}

.about-us-blocks ul li .image-wrap,
.fence-types-blocks ul li .image-wrap {
	width: 50%;
	min-height: 350px;
}

.about-us-blocks ul li .text-wrap,
.fence-types-blocks ul li .text-wrap {
	width: 50%;
	padding: 70px 50px;
}

.about-us-blocks ul li .text-wrap img,
.fence-types-blocks ul li .text-wrap img {
	width: 75px;
	height: 75px;
}

.about-us-blocks ul li .text-wrap h2,
.fence-types-blocks ul li .text-wrap h2 {
	text-align: center;
	margin-bottom: 10px;
}

.about-us-blocks ul li .text-wrap p,
.fence-types-blocks ul li .text-wrap p {
	margin-bottom: 20px;
}

.about-us-blocks ul li:nth-child(2n) .image-wrap,
.fence-types-blocks ul li:nth-child(2n) .image-wrap {
	-webkit-box-ordinal-group: 3;
	-ms-flex-order: 2;
	order: 2;
}

.landing-page-buttons {
	display: -webkit-box;
	display: -ms-flexbox;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    width: 100%;
    margin-left: 0;
}

.landing-page-buttons li {
    flex: 10%;
    list-style: none;
    display: inline-block;
	font-size: 26px;
    text-align: center;
    margin-bottom: 35px;
}

.landing-page-buttons .button {
	background: #487e3b;
	color: #fff;
	padding: 80px;
    width: 430px;
}

.landing-page-buttons .button:hover {
	background: #0b4823;
	color: #fff;
	transition: .3s;
}

.coupons ul li {
    margin: 0 0 25px 0;
    padding: 50px 45px;
    text-align: center;
    border: 3px dashed #ccc;
}

.callout-box {
    box-shadow: 0.5rem 0.5rem 0 #0b4823;
    border: 1px solid #0b4823;
    margin: 50px 0;
    padding: 25px;
}

.callout-box h2 {
	text-align: center;
}

.secondary-callout-box {
	border: 1px solid #ccc;
	border-radius: 18px;
	padding: 30px;
	margin-top: 40px;
}

.careers-callout-box {
	background: #0b4823;
	color: #fff;
	padding: 30px;
	margin-top: 35px;
}

.careers-form-wrapper {
	background: #f1f1f1;
	border: 1px solid #ccc;
	border-top-left-radius: 30px 30px;
	border-bottom-right-radius: 80px 80px;
	padding: 30px;
	margin: 75px 0 35px 0;
}

.careers-form-wrapper h2 {
	text-align: center;
}

.section-callout-box-1 {
	background: #000;
	color: #fff;
	padding: 30px;
	margin: 40px 0 60px 0;
	box-shadow: 5px 5px 10px grey;
	border-radius: 10px;
}

.section-callout-box-1 h2 {
	color: #fff;
}

.section-callout-box-1 h3 {
	padding-bottom: 25px;
}

.section-callout-box-1 h3::after {
	content: "";
	display: block;
	border-bottom: 3px solid #578341;
	width: 10%;
	position: relative;
	bottom: -24px;
	margin: 0 auto;
}

.section-callout-box-2 {
	padding: 30px;
	margin: 40px 0 60px 0;
	box-shadow: 5px 5px 10px grey;
	border-radius: 10px;
}

.vision-callout-box {
	background: #487e3b;
	border-top-left-radius: 80px 80px;
	color: #fff;
	text-align: center;
	padding: 30px;
}

.vision-callout-box h3 {
	color: #fff;
}

/*.core-value-buckets-wrapper {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
}

.core-value-bucket {
	flex: 30%;
	background: #0b4823;
	color: #fff;
	padding: 20px;
	margin: 16px 6px;
}

.core-value-bucket img {
    width: 50px;
    height: 50px;
    border: 0;
}

.core-value-bucket h3 {
	color: #fff;
	text-align: center;
	margin-top: 10px;
}

.core-value-bucket h3:after {
    content: "";
    display: block;
    margin: 0 auto;
    border-bottom: 3px solid #fff;
    width: 10%;
    position: relative;
    bottom: -6px;
}

.core-values-list ul {
	text-align: left !important;
}

.core-values-list li {
    padding: 0 0 15px;
}*/

.spacer {
	margin: 30px 0 45px 0;
}

.clearfix {
	clear: both;
}

ul.bullet-list {
    text-align: left;
    padding-left: 0;
    list-style: none;
}

.page-id-151 ul.bullet-list,
.page-id-159 ul.bullet-list,
.page-id-173 ul.bullet-list,
.page-id-4172 ul.bullet-list,
.page-id-4173 ul.bullet-list,
.page-id-5066 ul.bullet-list {
	max-width: 90%;
	margin: 0 auto;
}

.bullet-list li {
    padding-left: 2em;
    position: relative;
    margin: 0.35em 0;
}

.bullet-list.items li:before {
    top: 0.4em;
    border-radius: 50%;
    background-color: rgb(102, 160, 56);
    height: 0.8em;
    width: 0.8em;
}

.bullet-list li:before {
    content: '';
    position: absolute;
    left: 0;
    width: 1em;
    height: 1em;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: 50% 50%;
}

.columns {
	-moz-column-count: 2;
	-moz-column-gap: 60px;
	-webkit-column-count: 2;
	-webkit-column-gap: 60px;
	column-count: 2;
	column-gap: 60px;
}

.coverage-area-columns {
	-moz-column-count: 3;
	-moz-column-gap: 60px;
	-webkit-column-count: 3;
	-webkit-column-gap: 60px;
	column-count: 3;
	column-gap: 60px;
}

.financing-box {
	border: 2px solid #487e3b;
	border-top-left-radius: 80px 80px;
	text-align: center;
	padding: 30px 30px 0 30px;
	margin-top: 50px;
}

.financing-box h2 {
	position: relative;
	padding-bottom: 20px;
}

.financing-box h2:before {
	content: '';
	position: absolute;
	bottom: 0;
	left: 02px;
	right: 0;
	width: 100px;
	height: 6px;
	background: #487e3b;
	margin: 0 auto 0;
	max-width: 100%;
}

.financing-box h2::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 52px;
	right: 0;
	width: 50px;
	height: 6px;
	background: #0b4823;
	margin: 0 auto 0;
	max-width: 100%;
}

.about-us-buckets,
.service-buckets,
.residential-service-buckets,
.commercial-service-buckets,
.landscape-design-and-build-service-buckets {
	margin-top: 28px;
}

.about-us-buckets ul li,
.service-buckets ul li,
.commercial-service-buckets ul li,
.landscape-design-and-build-service-buckets ul li {
	width: calc(48% - 25px);
	display: inline-block;
    overflow: hidden;
    margin: 10px;
}

.page-template-page-residential-services .full-width{
	max-width: 100%;
}

.page-template-page-residential-services article{
	width: 100%;
}

.residential-service-buckets ul{
	justify-content: center;
    display: flex;
    flex-wrap: wrap;
}

.residential-service-buckets ul li{
	width: calc(100%/3 - 25px);
	display: inline-block;
    overflow: hidden;
    margin: 10px;
}

.about-us-buckets ul li a,
.service-buckets ul li a,
.residential-service-buckets ul li a,
.commercial-service-buckets ul li a,
.landscape-design-and-build-service-buckets ul li a {
	position: relative;
	display: block;
	height: 320px;
	-webkit-transform: scale(1);
		-ms-transform: scale(1);
			transform: scale(1);
	text-align: center;
}

.about-us-buckets ul li a:hover,
.service-buckets ul li a:hover,
.residential-service-buckets ul li a:hover,
.commercial-service-buckets ul li a:hover,
.landscape-design-and-build-service-buckets ul li a:hover {
	-webkit-transform: scale(1.05);
		-ms-transform: scale(1.05);
			transform: scale(1.05);
	text-decoration: none;
}

.about-us-buckets ul li a:before,
.service-buckets ul li a:before,
.residential-service-buckets ul li a:before,
.commercial-service-buckets ul li a:before,
.landscape-design-and-build-service-buckets ul li a:before {
	position: absolute;
	z-index: 2;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	content: '';
	background: rgba(0, 0, 0, .5);
}

.about-us-buckets ul li a h4,
.service-buckets ul li a h4,
.commercial-service-buckets ul li a h4,
.landscape-design-and-build-service-buckets ul li a h4 {
	position: absolute;
	z-index: 3;
	top: 85%;
	left: 50%;
	width: 100%;
	padding: 0 10px;
	-webkit-transform: translate(-50%, -50%);
		-ms-transform: translate(-50%, -50%);
			transform: translate(-50%, -50%);
	text-transform: uppercase;
	color: #fff;
	font-size: 30px;
	background: #487e3b;
}

.residential-service-buckets ul li a h4{
	font-size: 24px;
	position: absolute;
	z-index: 3;
	display: flex;
	align-items: center;
	justify-content: center;
	top: 79%;
	left: 50%;
	width: 100%;
	-webkit-transform: translate(-50%, -50%);
		-ms-transform: translate(-50%, -50%);
			transform: translate(-50%, -50%);
	text-transform: uppercase;
	color: #fff;
	background: #487e3b;
	padding: 10px;
	min-height: 75px;
}


.build-a-career-wrapper {
	background: #487e3b;
	padding: 40px;
	margin-top: -60px;
}

.build-a-career-container {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}

.build-a-career-column {
	flex: 48%;
	color: #fff;
	padding: 20px;
	margin: 16px 6px;
}

.build-a-career-column .build-a-career-image {
	height: 500px;
	border-radius: 50% 20% / 10% 40%;
}

.build-a-career-column h2 {
	font-size: 36px;
	color: #fff;
}

.full-width-image {
	height: 500px;
}

.career-offerings-wrapper {
	background: #000;
	padding: 40px;
}

.career-offerings-container {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}

.career-offerings-column {
	flex: 48%;
	color: #fff;
	padding: 20px;
	margin: 16px 6px;
}

.career-offerings-column .career-offerings-image {
	height: 500px;
	border-radius: 50% 20% / 10% 40%;
}

.career-offerings-column h2 {
	font-size: 36px;
	color: #fff;
}

.core-values-wrapper {
	padding: 60px 60px 0 60px;
}

.core-values-wrapper h2 {
	font-size: 36px;
	text-align: center;
}

.core-value-boxes ul {
	display: flex;
	flex-wrap: wrap;
	margin: 20px 0 16px 0;
	gap: 10px;
}

.core-value-boxes ul li {
	flex: 30%;
	display: flex;
	flex-direction: column;
	list-style: none;
	margin: 16px 0;
}

.core-value-boxes ul.bullet-list {
    flex-direction: column;
}

.core-value-boxes .core-value-bucket-image {
	height: 345px;
}

.core-value-box {
	background: #f1f1f1;
	text-align: center;
	min-height: 455px;
	padding: 40px 30px 0 30px;
}

.core-value-boxes .bullet-list.items li:before {
    top: 0.2em;
    border-radius: 50%;
    background-color: rgb(191, 170, 163);
    height: 0.8em;
    width: 0.8em;
}

.core-value-box h3 {
	font-size: 30px;
	color: #487e3b;
}

.career-images-wrapper {}

.career-images-wrapper ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
	margin: 0px 0 16px 0;
}

.career-images-wrapper ul li {
	flex: 30%;
	display: flex;
	flex-direction: column;
	list-style: none;
	padding: 20px;
	margin: 16px 6px;
}

.career-images-wrapper ul li .career-single-image {
	height: 400px;
	border-bottom-left-radius: 50px;
	border-top-right-radius: 20px;
}

.join-team-wrapper {
	background: #000;
	padding: 40px;
	margin-top: 40px;
}

.join-team-container {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}

.join-team-column {
	flex: 48%;
	color: #fff;
	padding: 20px;
	margin: 16px 6px;
}

.join-team-column .join-team-image {
	height: 500px;
	border-radius: 50% 20% / 10% 40%;
}

.join-team-column h2 {
	font-size: 36px;
	color: #fff;
}

.join-team-column .button {
	margin-top: 10px;
}

.giving-back-blocks-wrapper{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
	margin-top: 18px;
}
.region-wrapper {
	margin-top: 18px;
	width:calc(100% / 2);
	display: flex;
	flex-direction: column;
}
.region-box h2{
	margin-bottom: 15px;
}

.geo_wrap_total{
    display: flex;
    flex-wrap: wrap;
}
.giving-back-block-column,
.region-box {
	flex: 48%;
  	padding: 20px;
	border: 1px solid #f1f1f1;
	margin: 16px 6px;
}

.giving-back-block-column .giving-back-block-image {
	height: 400px;
}

.giving-back-block-column h2 {
	text-align: center;
}

.giving-back-block-column .button {
	display: block;
	margin: 0 auto;
}

#tab_container_416 .wpsm_nav-tabs > li > a {
    font-family: ralewayregular !important;
	background: rgb(247,245,245);
	background: linear-gradient(90deg, rgba(247,245,245,1) 1%, rgba(241,241,241,1) 100%);
}

#tab_container_416 .wpsm_nav-tabs > li.active > a,
#tab_container_416 .wpsm_nav-tabs > li.active > a:hover,
#tab_container_416 .wpsm_nav-tabs > li.active > a:focus {
    border-top: 3px solid #487e3b !important;
}

.aigpl-gallery-wrp .aigpl-img,
.aigpl-gallery-album-wrp .aigpl-im {
	border: 3px solid #ccc;
}

.latest-news {
	padding: 0 0 95px 0;
	text-align: center;
	color: #444;
	border-top: 1px solid #ccc;
}

.latest-news h2 {
	font-size: 36px;
	color: #487e3b;
	text-align: center;
	line-height: 35px;
	padding: 40px 0 18px 0;
}

.latest-news ul {
	font-size: 0;
}

.latest-news ul li {
	font-size: 1rem;
	display: inline-block;
	width: 33.333%;
	padding: 0 15px;
	vertical-align: top;
}

.latest-news ul li a {
	text-decoration: none;
	color: #487e3b;
}

.latest-news ul li a:hover {
	color: #0b4823;
}

.latest-news ul li a:hover p.date svg {
	fill: #0b4823;
}

.latest-news ul li a:hover .blog-image {
    border-bottom-color: #fff;
}

.latest-news ul li a .blog-image {
	width: 100%;
	height: 200px;
	margin: 0 auto;
	border-bottom: 3px solid #0b4823;
}

.latest-news .content {
	background: #f1f1f1;
	padding: 18px;
	height: 130px;
}

.latest-news ul li a p.date {
	font-size: 0;
	font-weight: 600;
	margin: 0 auto 15px;
}

.latest-news ul li a p.date svg {
	width: 20px;
	height: 20px;
	margin-right: 10px;
	fill: #487e3b;
}

.latest-news ul li a p.date svg,
.latest-news ul li a p.date span {
	font-size: 1rem;
	display: inline-block;
	vertical-align: middle;
}

.page-id-179 article h2 {
	background: #000;
	color: #fff;
	text-align: center;
	padding: 10px 0 10px 0;
}

.gallery-navigation {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	gap: 30px;
	margin: 30px 0 65px 0;
}

.gallery-navigation .button {
    padding: 20px;
    width: 425px;
}

.gallery-navigation li {
	flex: 30%;
	text-align: center;
}

.commercial-landscape-maintenance-wrapper {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	flex-wrap: wrap;
	flex-wrap: wrap;
}

.commercial-landscape-maintenance-box {
	flex: 30%;
	padding: 20px;
	margin: 16px 6px;
}

.contact-method-boxes ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
	margin: 0;
}

.contact-method-boxes ul li {
	flex: 30%;
	display: flex;
	flex-direction: column;
	list-style: none;
	text-align: center;
	background: #f1f1f1;
	border: 2px solid #ccc;
	border-radius: 18px;
	padding: 20px;
	margin: 6px 6px;
}

.contact-method-boxes ul li svg {
	height: 50px;
	width: 50px;
	fill: #487e3b;
	display: block;
	margin: 0 auto;
	margin-bottom: 10px;
}

.contact-method-boxes ul li h3 {
	font-size: 28px;
	color: #0c1323;
	padding-bottom: 0;
    margin: 0;
}

.contact-method-boxes ul li a {
	color: #404040;
	font-weight: 100;
}

.contact-method-boxes ul li a:hover {
	color: #bfaaa3;
}

.contact-instructions-wrapper {
	border: 1px solid #ccc;
	border-radius: 10px;
	padding: 40px;
	margin-top: 40px;
}

.contact-instructions-wrapper img {
	width: 28px;
	margin: 21px 5px -4px 0;
}

.contact-instructions-wrapper h3 {
	margin-bottom: 12px;
}

.contact-instructions-wrapper ul{
	margin: 0;
}

.contact-form-wrapper {
	padding: 40px 0 60px 0;
}

.contact-form-wrapper iframe {
	width: 100%;
}

@media screen and (max-width: 1023px) {
	main {
		padding: 46px 0 46px 0;
	}

	.about-us-blocks ul li,
	.fence-types-blocks ul li	{
		display: block;
	}

	.about-us-blocks ul li .image-wrap,
	.fence-types-blocks ul li .image-wrap {
		width: 100%;
		min-height: 400px;
	}

	.about-us-blocks ul li .text-wrap,
	.fence-types-blocks ul li .text-wrap {
		width: 100%;
		padding: 30px 15px;
		text-align: center;
	}

	.about-us-buckets,
	.service-buckets,
	.residential-service-buckets,
	.commercial-service-buckets,
	.landscape-design-and-build-service-buckets {
        padding: 25px 0 25px 0;
    }

	.latest-news {
		padding: 25px 0 25px 0;
	}

	.residential-service-buckets ul li{
		width: calc(100%/2 - 25px);
	}
}

@media screen and (max-width: 900px) {
	.latest-news ul li {
		padding: 0 10px;
	}

	.region-wrapper {
		width: calc(100% / 2);
	}
}

@media screen and (max-width:870px){
	body.page-template-default:not(.home) article{
		width:calc(100%);
	}
	body.page-template-default:not(.home) aside{
		max-width:100%;
	}
	body.page-template-page-full-width:not(.home) main,
	body.page-template-page-about-us:not(.home) main,
	body.page-template-page-history:not(.home) main,
	body.page-template-page-giving-back:not(.home) main,
	body.page-template-page-residential-services:not(.home) main,
	body.page-template-page-commercial-services:not(.home) main,
	body.page-template-page-landscape-design-and-build:not(.home) main,
	body.page-template-page-specials:not(.home) main{
		padding: 40px 0;
	}
	body.page-template-default:not(.home) main{
		padding: 40px 0;
	}
}

@media screen and (max-width: 767px) {
	.about-us-blocks ul li .image-wrap,
	.fence-types-blocks ul li .image-wrap {
		min-height: 350px;
	}

	.about-us-buckets,
	.service-buckets,
	.residential-service-buckets,
	.commercial-service-buckets,
	.landscape-design-and-build-service-buckets {
        padding: 20px 0 20px 0;
    }

	.latest-news {
		padding: 20px 0 20px 0;
	}

	.latest-news ul li {
		width: 400px;
		max-width: 100%;
		margin: 0 auto 20px;
		padding: 0;
	}

	.contact-instructions-wrapper h3{
		font-size: 26px;
	}
	.page-template-page-contact-us article h2{
		font-size: 30px;
	}

	 .residential-service-buckets{
	 	margin-top: 0;
	 }
	 .residential-service-buckets ul li a h4{
	 	font-size: 21px;
	 }

}

@media screen and (max-width: 567px) {
	.about-us-blocks ul li .image-wrap,
	.fence-types-blocks ul li .image-wrap {
		min-height: 250px;
	}

	.about-us-blocks ul li .text-wrap h3,
	.fence-types-blocks ul li .text-wrap h3 {
		font-size: 32px;
	}

	.landing-page-buttons .button {
		padding: 75px;
		width: 335px;
	}

	.about-us-buckets ul li,
	.service-buckets ul li,
	.residential-service-buckets ul li,
	.commercial-service-buckets ul li,
	.landscape-design-and-build-service-buckets ul li,
	.giving-back-block-column {
		float: none;
		width: 100%;
		margin: 15px 0 0 0;
	}
	
	.full-width-image {
		height: 250px;
	}
	
	.core-value-boxes ul li,
	.career-images-wrapper ul li {
		flex: 100%;
		margin: 15px 6px 0 6px;
	}
	
	.build-a-career-wrapper,
	.career-offerings-wrapper {
		padding: 12px 12px 40px 12px;
	}
	
	.build-a-career-column,
	.join-team-column {
		flex: 100%;
		margin: 15px 6px 0 6px;
		padding: 0;
	}
	
	.build-a-career-column .build-a-career-image {
		height: 310px;
	}
	
	.career-offerings-column .career-offerings-image {
		height: 375px;
	}
	
	.core-values-wrapper {
		padding: 50px 12px 40px 12px;
	}
	
	.core-value-boxes .core-value-bucket-image {
		height: 285px;
	}
	
	.career-images-wrapper ul li .career-single-image {
		height: 330px;
	}
	
	.join-team-column .join-team-image {
		height: 300px;
	}

	.latest-news {
		padding: 15px 0 15px 0;
	}

	.gallery-navigation {
		margin-top: 24px;
	}

	.gallery-navigation li {
		flex: 100%;
		margin: 4px 6px 0 6px;
	}

	.gallery-navigation .button {
		padding: 35px;
		width: 315px;
	}
	
	.commercial-landscape-maintenance-box {
		flex: 100%;
		margin: 15px 6px 0 6px;
	}

	.region-wrapper {
		width:calc(100% / 1);
	}
	
	.contact-method-boxes ul li	{
		flex: 100%;
		margin: 15px 6px 0 0;
	}
	
	.spacer {
		margin: 36px 0 45px 0;
	}
	
	.columns,
	.coverage-area-columns {
		-moz-column-count: 1;
		-moz-column-gap: 60px;
		-webkit-column-count: 1;
		-webkit-column-gap: 60px;
		column-count: 1;
		column-gap: 60px;
	}
	
	ul, ol {
		margin: 0 0 1.5em 1em;
	}
}



/* Geo Landing*/

.single-post_geo .banner {
	height: 600px
}

.single-post_geo main {
	padding: 0;
}

.cta {
	background: #ffd700;
    padding: 30px 10px;
    margin: 0 0 75px;
    text-align: center;
}

.cta h2 {
	font-size: 36px;
	color: #487e3b;
}

.expert-care {
    padding: 30px 10px;
    margin: 40px 0 0;
	background: #0b4823;
    color: #fff;
    text-align: center;
}

.expert-care h2 {
	font-size: 36px;
}

.expert-care p a{
	color: #fff;
}

.page-template-page-styled-service_areas main .geo_wrap_total .region-wrapper{
	width: 100%;
}

.page-template-page-styled-service_areas main .geo_wrap_total .region-wrapper .region-box{
	border-radius: 10px;
}

.page-template-page-styled-service_areas main .geo_wrap_total .region-wrapper:nth-child(odd) .region-box{
	background-color: #487e3b;
    color: #fff;
}

.page-template-page-styled-service_areas main .geo_wrap_total .region-wrapper:nth-child(odd) h2{
	color: #fff;
}

.page-template-page-styled-service_areas main .geo_wrap_total .region-wrapper:nth-child(odd) a{
	color: #fff;
}

.page-template-page-styled-service_areas main .geo_wrap_total .region-wrapper:nth-child(even) .region-box{
	background-color: #f1f1f1;
}

.page-template-page-styled-service_areas main .entry p{
	text-align: center;
	padding-top: 30px;
}

@media screen and (max-width: 867px) {
	.page-template-page-styled-service_areas main .entry iframe{
		width: 90% !important;
	}


	.page-template-page-styled-service_areas main .container{
		padding-left: 10px !important;
		padding-right: 10px !important;
	}
}

.single-post_geo .banner .inner-banner-content{
	text-align: center;
}

.single-post_geo .banner .inner-banner-content h1{
	font-family: 'ralewaybold' !important;
	color: #fff;
}

.single-post_geo .banner .inner-banner-content .banner-ctas{
	display: flex;
	gap: 20px;
	justify-content: center;
	flex-wrap: wrap;
}

.single-post_geo .banner .inner-banner-content .banner-ctas .button{
	display: flex;
	align-items: center;
	gap: 5px;
}

.single-post_geo main article .navigation{
	display: none;
}

.single-post_geo .banner .inner-banner-content h1:before, .single-post_geo .banner .inner-banner-content h1:after{
	display: none;
}

.single-post_geo .cta .icon-title{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	padding-top: 10px;
	justify-content: center;
	text-align: center;
	gap: 10px;
}

.single-post_geo .cta .icon-title h2{
	font-size: 34px;
}

.single-post_geo .cta .icon{
	margin: 0;
	height: 38px;
	width: 38px;
}



@media screen and (max-width: 860px){
	.single-post_geo .cta .icon-title h2{
		margin-top: 0;
		font-size: 28px;
	}
}

@media screen and (max-width: 767px) {
	.single-post_geo .banner{
		min-height: 500px !important;
		height: 500px;
	}
    .single-post_geo .banner .banner-content {
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%);
    }
    .single-post_geo main h1{
    	font-size: 30px;
    	text-align: center;
    	margin-bottom: 30px;
    }
    .single-post_geo .services h2{
    	font-size: 26px;
    }
    .cta{
    	margin-bottom: 40px;
    }
    .cta h2{
    	font-size: 28px;
    }
}


.page-id-504 main .entry h4{
	font-size: 21px;
}

.page-id-141 main .entry h3{
	line-height: 1.2;
	font-size: 28px;
}

.section-callout-box-3{
	background: #000;
	color: #fff;
	padding: 30px;
	margin: 40px 0 60px 0;
	box-shadow: 5px 5px 10px grey;
	border-radius: 10px;
}

.section-callout-box-3 h3{
	position: relative;
	line-height: 1.2;
}

.page-id-151 .section-callout-box-3 h3{
	padding-bottom: 25px;
}

.page-id-151 .section-callout-box-3 h3:after{
	position: absolute !important;
	bottom: 4px !important;
	right: 19% !important;
	content: "";
	display: block;
	border-bottom: 3px solid #578341;
	width: 10%;
}

.page-id-153 .interior-banner{
	background-position: bottom;
}

.page-id-137 .full-width{
	max-width: 100%;
}
.page-id-137 article{
	width: 100%;
}

.page-id-145 main h3{
	line-height: 1.2;
}

@media screen and (max-width: 767px){
	.page-id-504 main .entry h4{
		font-size: 18px;
	}
	.quick-contact-form-wrapper h2{
		font-size: 28px;
		margin-bottom: 10px;
	}
	.page-id-141 main .entry h3{
		font-size: 24px;
	}
	article h2{
		font-size: 30px;
	}
	.about-us-buckets ul li a h4, .service-buckets ul li a h4, .commercial-service-buckets ul li a h4, .landscape-design-and-build-service-buckets ul li a h4{
		font-size: 26px;
	}
	.about-us-buckets {
		padding: 0 0 20px 0;
	}
	.build-a-career-column h2{
		font-size: 30px;
	}
	.career-offerings-column h2{
		font-size: 30px;
	}
	.core-values-wrapper h2{
		font-size: 30px;
	}
	.core-value-box h3{
		font-size: 26px;
	}
	.join-team-column h2{
		font-size: 30px;
	}
	.giving-back-block-column{
		flex: 100%;
	}
	.giving-back-block-column .giving-back-block-image{
		height: 250px;
	}
	article h3{
		font-size: 26px;
	}
}

/* =========================================================
   Areas Served – Two-Column Location List
   Page ID: 504 - Service Areas Page
   ========================================================= */

.page-id-504 ul.bullet-list.items.geo-columns {
	-webkit-column-count: 2;
	-moz-column-count: 2;
	column-count: 2;

	-webkit-column-gap: 30px;
	-moz-column-gap: 30px;
	column-gap: 30px;

	width: 100%;
	max-width: 660px;
	margin: 0 auto 1.5em;
	padding-left: 0;
	padding-top:40px
}

.page-id-504 ul.bullet-list.items.geo-columns > li {
	-webkit-column-break-inside: avoid;
	page-break-inside: avoid;
	break-inside: avoid;

	margin-bottom: 6px;
}

/* Stack the locations on mobile */
@media screen and (max-width: 767px) {
	.page-id-504 ul.bullet-list.items.geo-columns {
		-webkit-column-count: 1;
		-moz-column-count: 1;
		column-count: 1;

		max-width: 440px;
		column-gap: 0;
		padding-left: 15px;
		padding-right: 15px;
	}
}

/*Financing Page style updates */

.rps-text-column .rps-copy ul li::marker  { color: #B56141!important; font-family: 'Montserrat', sans-serif !important;}
.page-id-135 .ep-benefits-stripe-sec {display: none;}
.rps-copy li {font-family: 'Montserrat', sans-serif !important; line-height:40px;}
.page-id-135, html :where([style*=border-color]) {border-style: none!important;}

/* =========================================================
   Service Areas Archive
   ========================================================= */

/*
 * Keep the Service Areas post list and the standard sidebar
 * side-by-side on desktop. The generic blog flex rule only
 * applies to body.blog, so CPT archives need their own layout.
 */
.service-areas-archive .service-areas-archive-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 330px;
	gap: 40px;
	align-items: start;
	width: 100%;
}

.service-areas-archive .service-areas-archive-main {
	width: 100%;
	min-width: 0;
	margin: 0;
	float: none;
}

.service-areas-archive .service-areas-archive-sidebar {
	width: 100%;
	min-width: 0;
}

.service-areas-archive .service-areas-archive-sidebar aside,
.service-areas-archive .service-areas-archive-sidebar #secondary,
.service-areas-archive .service-areas-archive-sidebar .widget-area {
	width: 100%;
	max-width: 100%;
	margin: 0;
	float: none;
}

/*
 * Left align the main Service Areas archive heading.
 */
.service-areas-archive > .container > .page-title {
	text-align: left;
	margin-bottom: 30px;
}

/*
 * Left align each Service Area post title and add a little
 * breathing room before the metadata.
 */
.service-areas-archive .blog-column h2 {
	text-align: left;
	margin-bottom: 10px;
}

/*
 * Left align the date, separator and dynamic "Posted in" term.
 * Add space below the metadata before the excerpt begins.
 */
.service-areas-archive .service-areas-postmetadata {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center;
	gap: 6px;
	width: 100%;
	margin: 0 0 18px 0;
	padding: 0;
	text-align: left;
}

.service-areas-archive .service-areas-postmetadata li {
	margin: 0;
	padding: 0;
}

/*
 * Stack the sidebar below the archive posts on mobile.
 */
@media screen and (max-width: 767px) {

	.service-areas-archive .service-areas-archive-layout {
		grid-template-columns: 1fr;
		gap: 30px;
	}

	.service-areas-archive .service-areas-archive-main,
	.service-areas-archive .service-areas-archive-sidebar,
	.service-areas-archive .service-areas-archive-sidebar aside,
	.service-areas-archive .service-areas-archive-sidebar #secondary,
	.service-areas-archive .service-areas-archive-sidebar .widget-area {
		width: 100%;
		max-width: 100%;
	}

	.service-areas-archive .service-areas-archive-sidebar aside,
	.service-areas-archive .service-areas-archive-sidebar #secondary,
	.service-areas-archive .service-areas-archive-sidebar .widget-area {
		margin-top: 0;
	}
}

/* =========================================================
   Service Areas Directory + Region Core Service Listings
   Templates:
   - archive-post_geo.php
   - taxonomy-regions.php
   ========================================================= */

/* ---------------------------------------------------------
   Shared directory spacing
   --------------------------------------------------------- */

main.edwards-service-areas-directory,
main.edwards-region-directory {
	padding: 0;
}

#edwards-service-areas-directory,
#edwards-region-directory {
	padding: 80px 0 90px;
}

#edwards-service-areas-directory .container,
#edwards-region-directory .container {
	max-width: 1350px;
}

/* ---------------------------------------------------------
   Service Areas main directory
   --------------------------------------------------------- */

#edwards-service-areas-directory,
#edwards-region-directory {
	position: relative;
	overflow: hidden;
	background-color: #edf4eb;
}

#edwards-service-areas-directory::before {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 540px;
	background-image: url('https://staging.awpserver.com/edwardslawnllc.com/wp-content/uploads/2026/03/lawn-mowing-and-maintenance-banner.jpg');
	background-position: top center;
	background-repeat: no-repeat;
	background-size: cover;
	opacity: 0.12;
	-webkit-mask-image: linear-gradient(
		to bottom,
		#000 0%,
		#000 45%,
		rgba(0, 0, 0, 0.75) 68%,
		rgba(0, 0, 0, 0.28) 84%,
		transparent 100%
	);
	mask-image: linear-gradient(
		to bottom,
		#000 0%,
		#000 45%,
		rgba(0, 0, 0, 0.75) 68%,
		rgba(0, 0, 0, 0.28) 84%,
		transparent 100%
	);
	content: "";
	pointer-events: none;
}

/* Individual Region pages keep the same pale green background,
   but intentionally do not use the parent Service Areas image. */
#edwards-region-directory::before {
	display: none;
	content: none;
}

#edwards-service-areas-directory .container,
#edwards-region-directory .container {
	position: relative;
	z-index: 1;
}

/*
 * Override the theme's global header rule so these content headers
 * never inherit the site's black masthead background.
 */
.service-area-directory__header,
.region-directory__header {
	background: transparent;
	padding: 0;
}

.service-area-directory__header {
	max-width: 820px;
	margin: 0 0 50px;
}

.service-area-directory__eyebrow,
.region-directory__eyebrow,
.region-directory__section-eyebrow {
	display: block;
	margin-bottom: 10px;
	color: #b56141;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 2px;
	text-transform: uppercase;
}

.service-area-directory__title,
.region-directory__title {
	margin: 0;
	color: #143825;
	font-size: 48px;
	font-weight: 600;
	line-height: 1.12;
}

.service-area-directory__intro,
.region-directory__intro {
	max-width: 760px;
	margin: 18px 0 0;
	color: #4d5751;
	font-size: 18px;
	line-height: 1.7;
}

.service-area-directory__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 24px;
}

.service-area-card {
	--service-area-logo-icon: url('https://staging.awpserver.com/edwardslawnllc.com/wp-content/uploads/2026/08/edwards-icon-white-light-green.png');

	position: relative;
	display: flex;
	min-height: 190px;
	padding: 30px;
	overflow: hidden;
	border: 1px solid #d8ddd5;
	border-radius: 14px;
	background: rgba(255, 255, 255, 0.96);
	box-shadow: 0 12px 30px rgba(20, 56, 37, 0.06);
	text-decoration: none;
	transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease, background-color 0.3s ease;
}

.service-area-card::before {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 6px;
	background: #487e3b;
	content: "";
}

.service-area-card:hover,
.service-area-card:focus-visible {
	border-color: #487e3b;
	background: #ffffff;
	box-shadow: 0 18px 42px rgba(20, 56, 37, 0.12);
	transform: translateY(-5px);
}

.service-area-card__content {
	position: relative;
	z-index: 2;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	width: 100%;
}

.service-area-card__name {
	max-width: calc(100% - 145px);
	color: #143825;
	font-size: 28px;
	font-weight: 600;
	line-height: 1.2;
}

.service-area-card__action,
.region-service-card__action {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	margin-top: 24px;
	color: #487e3b;
	font-size: 14px;
	font-weight: 600;
	letter-spacing: 0.6px;
	text-transform: uppercase;
}

.service-area-card__arrow,
.region-service-card__arrow {
	font-size: 20px;
	line-height: 1;
	transition: transform 0.25s ease;
}

.service-area-card:hover .service-area-card__arrow,
.service-area-card:focus-visible .service-area-card__arrow,
.region-service-card__link:hover .region-service-card__arrow,
.region-service-card__link:focus-visible .region-service-card__arrow {
	transform: translateX(5px);
}

/* Edwards icon used directly as a subtle watermark, with no box behind it. */
.service-area-card__watermark {
	position: absolute;
	right: 20px;
	top: 50%;
	z-index: 1;
	width: 160px;
	height: 160px;
	transform: translateY(-50%);
	pointer-events: none;
	transition: transform 0.3s ease, opacity 0.3s ease;
}

.service-area-card__watermark::before {
	position: absolute;
	inset: 0;
	background-color: #edf4eb;
	-webkit-mask-image: var(--service-area-logo-icon);
	mask-image: var(--service-area-logo-icon);
	-webkit-mask-position: center;
	mask-position: center;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-size: contain;
	mask-size: contain;
	opacity: 1;
	content: "";
}

.service-area-card:hover .service-area-card__watermark,
.service-area-card:focus-visible .service-area-card__watermark {
	transform: translateY(-50%) scale(1.04);
}

.service-area-directory__empty,
.region-directory__empty {
	padding: 30px;
	border: 1px solid #d8ddd5;
	border-radius: 12px;
	background: #fff;
}

.service-area-directory__empty p,
.region-directory__empty p {
	margin: 0;
}

/* ---------------------------------------------------------
   Individual Region directory
   --------------------------------------------------------- */

.region-directory__header {
	max-width: 900px;
	margin: 0 0 38px;
}

.region-directory__back {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin-bottom: 34px;
	color: #487e3b;
	font-size: 15px;
	font-weight: 600;
	text-decoration: none;
}

.region-directory__back:hover,
.region-directory__back:focus-visible {
	color: #2e5126;
	text-decoration: none;
}

.region-directory__back-arrow {
	display: inline-block;
	text-decoration: none;
}

.region-directory__back:hover .region-directory__back-text,
.region-directory__back:focus-visible .region-directory__back-text {
	text-decoration: underline;
	text-underline-offset: 2px;
}

.region-directory__services {
	padding-top: 0;
}

.region-directory__section-heading {
	max-width: 820px;
	margin: 0 0 34px;
}

.region-directory__section-title {
	margin: 0;
	color: #143825;
	font-family: 'Cormorant Garamond', Georgia, serif;
	font-size: 38px;
	font-weight: 400;
	line-height: 1.2;
	text-align: left;
}

.region-directory__section-copy {
	max-width: 720px;
	margin: 14px 0 0;
	color: #555;
	font-size: 16px;
	line-height: 1.7;
}

.region-directory__grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 20px;
}

.region-service-card {
	float: none;
	width: 100%;
	margin: 0;
}

.region-service-card__link {
	display: block;
	height: 100%;
	min-height: 165px;
	padding: 26px 28px;
	border: 1px solid #d8ddd5;
	border-left: 5px solid #487e3b;
	border-radius: 10px;
	background: #fff;
	box-shadow: 0 8px 24px rgba(20, 56, 37, 0.05);
	text-decoration: none;
	transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
}

.region-service-card__link:hover,
.region-service-card__link:focus-visible {
	border-color: #487e3b;
	box-shadow: 0 14px 32px rgba(20, 56, 37, 0.1);
	transform: translateY(-3px);
}

.region-service-card__body {
	display: flex;
	flex-direction: column;
	height: 100%;
}

.region-service-card__title {
	margin: 0;
	color: #143825;
	font-size: 20px;
	font-weight: 600;
	line-height: 1.4;
	text-align: left;
}

.region-service-card__action {
	margin-top: auto;
	padding-top: 22px;
}

/* ---------------------------------------------------------
   Tablet
   --------------------------------------------------------- */

@media screen and (max-width: 1023px) {
	#edwards-service-areas-directory,
	#edwards-region-directory {
		padding: 65px 0 75px;
	}

	#edwards-service-areas-directory::before {
		height: 460px;
	}

	.service-area-directory__grid,
	.region-directory__grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.service-area-directory__title,
	.region-directory__title {
		font-size: 40px;
	}
}

/* ---------------------------------------------------------
   Mobile
   --------------------------------------------------------- */

@media screen and (max-width: 767px) {
	#edwards-service-areas-directory,
	#edwards-region-directory {
		padding: 50px 0 60px;
	}

	#edwards-service-areas-directory::before {
		height: 390px;
		opacity: 0.1;
	}

	.service-area-directory__header,
	.region-directory__header {
		margin-bottom: 34px;
	}

	.service-area-directory__title,
	.region-directory__title {
		font-size: 34px;
	}

	.service-area-directory__intro,
	.region-directory__intro {
		font-size: 16px;
	}

	.service-area-directory__grid,
	.region-directory__grid {
		grid-template-columns: 1fr;
	}

	.service-area-card {
		min-height: 160px;
		padding: 26px;
	}

	.service-area-card__name {
		max-width: calc(100% - 105px);
		font-size: 25px;
	}

	.service-area-card__watermark {
		width: 112px;
		height: 112px;
		right: 12px;
		top: 50%;
	}

	.region-directory__back {
		margin-bottom: 26px;
	}

	.region-directory__section-title {
		font-size: 30px;
	}

	.region-service-card__link {
		min-height: 145px;
		padding: 24px;
	}
}

/* =========================================================
   Geo Page Hero Breadcrumbs
   Template: single-post_geo.php
   ========================================================= */

/*
 * Dedicated wrapper for the GEO detail hero content.
 * This avoids conflicts with the homepage .ep-hero-content rules.
 */
.single-post_geo #edwards-premium-rebuild-v1 .ep-geo-hero-content {
	position: relative;
	z-index: 2;
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
	padding: 0 25px;
	text-align: center;
}

.single-post_geo #edwards-premium-rebuild-v1 .ep-geo-hero-content .ep-hero-title {
	padding-left: 0;
	padding-right: 0;
}

.single-post_geo #edwards-premium-rebuild-v1 .ep-geo-breadcrumbs {
	margin-top: 20px;
	font-family: 'Poppins', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
}

.single-post_geo #edwards-premium-rebuild-v1 .ep-geo-breadcrumbs ol {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 9px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.single-post_geo #edwards-premium-rebuild-v1 .ep-geo-breadcrumbs li {
	margin: 0;
	padding: 0;
	color: rgba(255, 255, 255, 0.72);
	font-size: 13px;
	font-weight: 500;
	line-height: 1.4;
	letter-spacing: 0.3px;
}

.single-post_geo #edwards-premium-rebuild-v1 .ep-geo-breadcrumbs a {
	color: rgba(255, 255, 255, 0.82);
	text-decoration: none;
	transition: color 0.25s ease;
}

.single-post_geo #edwards-premium-rebuild-v1 .ep-geo-breadcrumbs a:hover,
.single-post_geo #edwards-premium-rebuild-v1 .ep-geo-breadcrumbs a:focus-visible {
	color: #ffffff;
	text-decoration: underline;
}

.single-post_geo #edwards-premium-rebuild-v1 .ep-geo-breadcrumbs__separator {
	color: rgba(255, 255, 255, 0.4);
}

@media screen and (max-width: 767px) {
	.single-post_geo #edwards-premium-rebuild-v1 .ep-geo-hero-content {
		padding: 0 20px;
	}

	.single-post_geo #edwards-premium-rebuild-v1 .ep-geo-breadcrumbs {
		margin-top: 16px;
	}

	.single-post_geo #edwards-premium-rebuild-v1 .ep-geo-breadcrumbs ol {
		gap: 7px;
	}

	.single-post_geo #edwards-premium-rebuild-v1 .ep-geo-breadcrumbs li {
		font-size: 12px;
	}
}
/* ==========================================================================
   GEO RESOURCE HERO
   GEO pages are local Blog & News resources, with a secondary CTA back to
   the applicable Service Area page.
   ========================================================================== */

.single-post_geo #edwards-premium-rebuild-v1 .ep-geo-resource-label {
	display: block;
	margin: 0 0 14px;
	color: rgba(255, 255, 255, 0.78);
	font-family: 'Poppins', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 1.8px;
	line-height: 1.4;
	text-align: center;
	text-transform: uppercase;
}

.single-post_geo #edwards-premium-rebuild-v1 .ep-geo-region-cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 9px;
	margin-top: 20px;
	padding: 11px 20px;
	border: 1px solid rgba(255, 255, 255, 0.55);
	border-radius: 30px;
	background: rgba(255, 255, 255, 0.1);
	color: #ffffff;
	font-family: 'Poppins', -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
	font-size: 13px;
	font-weight: 600;
	line-height: 1.35;
	text-decoration: none;
	-webkit-backdrop-filter: blur(5px);
	backdrop-filter: blur(5px);
	transition: background-color 0.25s ease, border-color 0.25s ease, transform 0.25s ease;
}

.single-post_geo #edwards-premium-rebuild-v1 .ep-geo-region-cta:hover,
.single-post_geo #edwards-premium-rebuild-v1 .ep-geo-region-cta:focus-visible {
	border-color: rgba(255, 255, 255, 0.9);
	background: rgba(255, 255, 255, 0.18);
	color: #ffffff;
	text-decoration: none;
	transform: translateY(-2px);
}

.single-post_geo #edwards-premium-rebuild-v1 .ep-geo-region-cta__arrow {
	display: inline-block;
	font-size: 18px;
	line-height: 1;
	transition: transform 0.25s ease;
}

.single-post_geo #edwards-premium-rebuild-v1 .ep-geo-region-cta:hover .ep-geo-region-cta__arrow,
.single-post_geo #edwards-premium-rebuild-v1 .ep-geo-region-cta:focus-visible .ep-geo-region-cta__arrow {
	transform: translateX(4px);
}

@media screen and (max-width: 767px) {
	.single-post_geo #edwards-premium-rebuild-v1 .ep-geo-resource-label {
		margin-bottom: 11px;
		font-size: 11px;
		letter-spacing: 1.4px;
	}

	.single-post_geo #edwards-premium-rebuild-v1 .ep-geo-region-cta {
		margin-top: 17px;
		padding: 10px 17px;
		font-size: 12px;
	}
}


/* ==========================================================================
   BLOG & NEWS
   Primary content: standard WordPress Posts
   Secondary content: GEO/local resources
   ========================================================================== */

body.blog main.edwards-blog-news {
	padding: 70px 0 85px;
}

.edwards-blog-news .blog-news-layout {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 330px;
	gap: 42px;
	align-items: start;
}

.edwards-blog-news .blog-news-main {
	width: 100%;
	min-width: 0;
	margin: 0;
	float: none;
}

.edwards-blog-news .blog-news-sidebar {
	width: 100%;
	min-width: 0;
}

.edwards-blog-news .blog-news-sidebar aside,
.edwards-blog-news .blog-news-sidebar #secondary,
.edwards-blog-news .blog-news-sidebar .widget-area {
	width: 100%;
	max-width: 100%;
	margin: 0;
	float: none;
}

.edwards-blog-news .blog-news-header {
	margin: 0 0 42px;
}

.edwards-blog-news .blog-news-title {
	margin: 0;
	color: #143825;
	font-family: 'Cormorant Garamond', Georgia, serif;
	font-size: 52px;
	font-weight: 400;
	line-height: 1.1;
}

.edwards-blog-news .blog-news-intro {
	max-width: 760px;
	margin: 14px 0 0;
	color: #555;
	font-size: 17px;
	line-height: 1.65;
}

.edwards-blog-news .blog-news-posts {
	margin: 0;
	padding: 0;
	list-style: none;
}

.edwards-blog-news .blog-news-post {
	margin: 0 0 32px;
	padding: 0 0 32px;
	border-bottom: 1px solid #e4e8e1;
}

.edwards-blog-news .blog-news-post:last-child {
	margin-bottom: 0;
}

.edwards-blog-news .blog-news-meta {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin: 0 0 12px;
	color: #70766f;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 1px;
	text-transform: uppercase;
}

.edwards-blog-news .blog-news-post-title {
	margin: 0 0 12px;
	color: #143825;
	font-family: 'Cormorant Garamond', Georgia, serif;
	font-size: 30px;
	font-weight: 400;
	line-height: 1.2;
	text-align: left;
}

.edwards-blog-news .blog-news-post-title a {
	color: inherit;
	text-decoration: none;
}

.edwards-blog-news .blog-news-post-title a:hover,
.edwards-blog-news .blog-news-post-title a:focus-visible {
	color: #487e3b;
}

.edwards-blog-news .blog-news-excerpt {
	color: #4a4a4a;
	font-size: 15px;
	line-height: 1.7;
}

.edwards-blog-news .blog-news-excerpt p {
	margin: 0 0 14px;
}

.edwards-blog-news .blog-news-read-more {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	color: #143825;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.8px;
	text-transform: uppercase;
	text-decoration: none;
}

.edwards-blog-news .blog-news-read-more:hover,
.edwards-blog-news .blog-news-read-more:focus-visible {
	color: #487e3b;
}

.edwards-blog-news .blog-news-pagination {
	margin-top: 34px;
}

.edwards-blog-news .blog-news-pagination .nav-links {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}

.edwards-blog-news .blog-news-pagination a,
.edwards-blog-news .blog-news-pagination span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 38px;
	min-height: 38px;
	padding: 7px 11px;
	border: 1px solid #d8ddd5;
	border-radius: 5px;
	background: #fff;
	color: #143825;
	text-decoration: none;
}

.edwards-blog-news .blog-news-pagination .current,
.edwards-blog-news .blog-news-pagination a:hover,
.edwards-blog-news .blog-news-pagination a:focus-visible {
	border-color: #487e3b;
	background: #487e3b;
	color: #fff;
}

/* Secondary GEO resource section */
.edwards-blog-news .blog-local-resources {
	margin-top: 70px;
	padding: 44px 0 0;
	border-top: 1px solid #dfe5dc;
}

.edwards-blog-news .blog-local-resources__header {
	margin-bottom: 26px;
}

.edwards-blog-news .blog-local-resources__eyebrow {
	display: block;
	margin-bottom: 8px;
	color: #b56141;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 1.8px;
	text-transform: uppercase;
}

.edwards-blog-news .blog-local-resources__title {
	margin: 0;
	color: #143825;
	font-family: 'Cormorant Garamond', Georgia, serif;
	font-size: 34px;
	font-weight: 400;
	line-height: 1.2;
	text-align: left;
}

.edwards-blog-news .blog-local-resources__intro {
	max-width: 720px;
	margin: 10px 0 0;
	color: #5f655e;
	font-size: 15px;
	line-height: 1.65;
}

.edwards-blog-news .blog-local-resources__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 18px;
}

.edwards-blog-news .blog-local-resource-card {
	display: block;
	padding: 22px 24px;
	border: 1px solid #d8ddd5;
	border-left: 4px solid #487e3b;
	border-radius: 8px;
	background: #f4f8f2;
	text-decoration: none;
	transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

.edwards-blog-news .blog-local-resource-card:hover,
.edwards-blog-news .blog-local-resource-card:focus-visible {
	border-color: #487e3b;
	box-shadow: 0 10px 26px rgba(20, 56, 37, 0.08);
	transform: translateY(-2px);
}

.edwards-blog-news .blog-local-resource-card__region {
	display: block;
	margin-bottom: 7px;
	color: #6b7569;
	font-size: 11px;
	font-weight: 600;
	letter-spacing: 1px;
	text-transform: uppercase;
}

.edwards-blog-news .blog-local-resource-card__title {
	display: block;
	color: #143825;
	font-family: 'Cormorant Garamond', Georgia, serif;
	font-size: 21px;
	font-weight: 400;
	line-height: 1.3;
}

@media screen and (max-width: 1023px) {
	body.blog main.edwards-blog-news {
		padding: 58px 0 70px;
	}

	.edwards-blog-news .blog-news-layout {
		grid-template-columns: minmax(0, 1fr) 290px;
		gap: 30px;
	}

	.edwards-blog-news .blog-news-title {
		font-size: 44px;
	}
}

@media screen and (max-width: 767px) {
	body.blog main.edwards-blog-news {
		padding: 46px 0 55px;
	}

	.edwards-blog-news .blog-news-layout {
		grid-template-columns: 1fr;
		gap: 34px;
	}

	.edwards-blog-news .blog-news-title {
		font-size: 36px;
	}

	.edwards-blog-news .blog-news-post-title {
		font-size: 26px;
	}

	.edwards-blog-news .blog-local-resources {
		margin-top: 48px;
		padding-top: 34px;
	}

	.edwards-blog-news .blog-local-resources__grid {
		grid-template-columns: 1fr;
	}
}


/* ==========================================================================
   BLOG & NEWS LAYOUT CONFLICT CLEANUP
   ========================================================================== */

/*
 * The base theme applies styling to every <header> and <article> element.
 * Keep Blog & News completely isolated from those legacy rules.
 */
body.blog .edwards-blog-news .blog-news-header,
body.blog .edwards-blog-news .blog-local-resources__header {
	background: transparent !important;
	padding: 0 !important;
}

body.blog .edwards-blog-news .blog-news-main {
	display: block !important;
	width: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
	float: none !important;
}

body.blog .edwards-blog-news .blog-news-layout {
	width: 100%;
}

body.blog .edwards-blog-news .blog-news-sidebar {
	width: 100%;
}

/* Restore the original blog concept: featured image beside article copy. */
.edwards-blog-news .blog-news-post__layout {
	display: grid;
	grid-template-columns: 250px minmax(0, 1fr);
	gap: 28px;
	align-items: start;
}

.edwards-blog-news .blog-news-post__layout.no-featured-image {
	grid-template-columns: 1fr;
}

.edwards-blog-news .blog-news-post__image {
	display: block;
	width: 100%;
	height: 185px;
	overflow: hidden;
	border-radius: 8px;
	background: #eef2ec;
	text-decoration: none;
}

.edwards-blog-news .blog-news-post__image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 0.35s ease;
}

.edwards-blog-news .blog-news-post__image:hover img,
.edwards-blog-news .blog-news-post__image:focus-visible img {
	transform: scale(1.035);
}

.edwards-blog-news .blog-news-post__content {
	min-width: 0;
}

/* Ensure the secondary GEO resource section stays clean and light. */
.edwards-blog-news .blog-local-resources {
	background: transparent !important;
}

.edwards-blog-news .blog-local-resources__header {
	background: transparent !important;
}

/*
 * Prevent legacy global header/article rules from creating the black
 * vertical blocks seen in the Blog & News screenshots.
 */
.edwards-blog-news .blog-news-title,
.edwards-blog-news .blog-news-intro,
.edwards-blog-news .blog-local-resources__eyebrow,
.edwards-blog-news .blog-local-resources__title,
.edwards-blog-news .blog-local-resources__intro {
	position: relative;
	z-index: 1;
}

@media screen and (max-width: 1023px) {
	.edwards-blog-news .blog-news-post__layout {
		grid-template-columns: 210px minmax(0, 1fr);
		gap: 22px;
	}

	.edwards-blog-news .blog-news-post__image {
		height: 165px;
	}
}

@media screen and (max-width: 700px) {
	.edwards-blog-news .blog-news-post__layout,
	.edwards-blog-news .blog-news-post__layout.no-featured-image {
		grid-template-columns: 1fr;
	}

	.edwards-blog-news .blog-news-post__image {
		height: 230px;
	}
}


/* ==========================================================================
   BLOG & NEWS FINAL LAYOUT TWEAKS
   ========================================================================== */

/*
 * The legacy theme sets .blog main .container to display:flex.
 * Force the Blog & News page container back to normal block flow so the
 * page heading spans the full content width above the articles/sidebar.
 */
body.blog main.edwards-blog-news > .container {
	display: block !important;
	width: 100%;
}

/* Add space BETWEEN Latest Posts items without changing title line-height. */
.edwards-blog-news .blog-news-sidebar .widget_recent_entries ul li {
	margin-bottom: 10px;
}

.edwards-blog-news .blog-news-sidebar .widget_recent_entries ul li:last-child {
	margin-bottom: 0;
}

/* ==========================================================================
   CONTACT FORM IFRAME
   ========================================================================== */

#edwards-contact-framework-v1 .edwards-contact-form-iframe {
    display: block !important;
    width: 100% !important;
    height: 1100px !important;
    border: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Tablet */
@media (max-width: 1024px) {
    #edwards-contact-framework-v1 .edwards-contact-form-iframe {
        height: 1700px !important;
    }
}

/* Mobile */
@media (max-width: 767px) {
    #edwards-contact-framework-v1 .edwards-contact-form-iframe {
        height: 1900px !important;
    }
}
