/*
Theme Name: Aether Design
Author: David Jenkins
Version: 1.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/

:root {
/* 	--color-primary: #CDA244; */
/* 	--color-primary: #eed9a6; */
/* 	--color-primary: #E4C17C; */
	--color-primary: #C9A054;
/* 	--color-primary2: #ae9459; */
	--color-primary2: #684D19;
	

	--color-dark-gray: #0f0f0b;
	--color-white: #f7f7e4;
/* 	--color-light2:  */
	--color-black: #0F0F0B;
	--color-gray-dark: #333;
/* 	--color-gray: #666; */
	--color-gray: #cccccc;
	--color-gray2: #070707;
	--color-gray-light: #ebebeb;
/* 	--color-gray-pale: #f6f6f6; */
	--color-gray-pale: #cccccc;
/* 	--font-primary: "Source Sans Pro", sans-serif; */
	--font-primary: "Jost", sans-serif;
/* 	--font-custom: "Playfair Display", sans-serif;	 */
	--font-custom: "DM Serif Text", sans-serif;	
	
}

* {
	box-sizing: border-box;
}

body {
	margin: 0;
	color: var(--color-gray);
	font-family: var(--font-primary);
	font-size: 18px;
	line-height: 1.5;
/* 	text-align: justify; */
	background-color: #0F0F0B;
}

html, body {
  width: 100%;
  max-width: 100%;
  overflow-x: hidden;
}

:focus-visible {
    outline: none;
}

h1, h2, h3, h4, h5, h6 {
/* 	color: var(--color-black); */
	color: #fff;
	font-family: var(--font-custom);
	line-height: normal;
	font-weight: 400;
}

h1 {
	font-size: 40px;
}
h2 {
	font-size: 32px;
}
h3 {
	font-size: 28px;
}
h4 {
	font-size: 24px;
}
@media (max-width: 767px) {
	body {
		font-size: 14px;
		overflow-x: hidden;
	}
	h1 {
		font-size: 30px;
	}
	h2 {
		font-size: 24px;
	}
	h3 {
		font-size: 20px;
	}
	h4 {
		font-size: 16px;
	}
}

p,
ul {
	margin-top: 0;
	margin-bottom: 15px;
}
p:last-child,
ul:last-child {
	margin-bottom: 0;
}

a {
	color: inherit;
	text-decoration: none;
	transition: .2s;
}

img {
	max-width: 100%;
	height: auto;
	vertical-align: middle;
}
.text-primary {
	color: var(--color-primary);
}
.text-green {
	color: var(--color-primary);
}
.text-black {
	color: var(--color-black);
}
.text-gray-dark {
	color: var(--color-gray-dark);
}
.text-gray {
	color: var(--color-gray);
}
.text-white {
	color: #fff !important;
}

.bg-gray-dark {
	background-color: var(--color-gray-dark);
}
.bg-gray-light {
	background-color: var(--color-gray-light);
}
.bg-gray-pale {
	background-color: var(--color-gray-pale);
}

.text-left {
	text-align: left;
}
.text-right {
	text-align: right;
}
.text-center {
	text-align: center;
}

.uppercase {
	text-transform: uppercase;
}

.relative {
	position: relative;
}
.absolute {
	position: absolute;
}
.inset-0 {
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}

.my-30 {
	margin-top: 30px !important;
	margin-bottom: 30px !important;
}
.mt-30 {
	margin-top: 30px !important;
}
.mb-30 {
	margin-bottom: 30px !important;
}

.my-60 {
	margin-top: 60px !important;
	margin-bottom: 60px !important;
}
.mt-60 {
	margin-top: 60px !important;
}
.mb-60 {
	margin-bottom: 60px !important;
}

.font-bold {
	font-weight: 700;
}
.font-semibold {
	font-weight: 600;
}
.font-medium {
	font-weight: 500;
}
.font-regular {
	font-weight: 400;
}
.font-light {
	font-weight: 300;
}

.text-lg {
	font-size: 18px;
}
.text-xl {
	font-size: 20px;
}

@media (min-width: 768px) {
	.columns-2 {
		columns: 2;
	}
	.columns-3 {
		columns: 3;
	}
}

.container {
	max-width: 1200px;
	padding: 0 15px;
	margin: 0 auto;
}
.container-sm {
	max-width: 600px;
	padding: 0 15px;
	margin: 0 auto;
}

@media (max-width: 767px) {
	.hidden-phone {
		display: none !important;
	}
}
@media (min-width: 768px) {
	.hidden-desktop {
		display: none !important;
	}
}

.full-img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.sd-button {
	display: inline-block;
	padding: 2px 15px 2px;
/* 	font-family: var(--font-custom); */
	font-size: 16px;
	line-height: 35px;
/* 	background-color: var(--color-primary); */
	border: 2px solid var(--color-primary);
/* 	color: #fff; */
	color: var(--color-primary);
}
.sd-button:hover {
	background-color: var(--color-gray-dark);
}

.main-title {
/* 	color: var(--color-black); */
/* 	color: var(--color-white); */
	color: #ffffff;
	font-family: var(--font-custom);
	font-size: 40px;
	font-weight: 300;
	line-height: normal;
	margin-block-end: 0;
	margin-block-start: 0;
/* 	text-transform: uppercase; */
	letter-spacing: 0.01em;
}

.title-underline:after {
	content: '';
	width: 50px;
	display: block;
	height: 2px;
	background-color: var(--color-primary);
	margin-top: 10px;
}
.title-underline.text-center:after {
	margin-left: auto;
	margin-right: auto;
}

.separator {
	height: 1px;
	background-color: #252525;
}

.topbar {
	position: absolute;
	z-index: 1;
	top: 0;
	width: 100%;
	padding: 10px 0;
	background-color: rgba(0, 0, 0, .2);
	color: #fff;
	font-size: 14px;
}
.topbar-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.topbar-content,
.topbar-social {
	display: flex;
	grid-gap: 20px;
}

.header {
	position: absolute;
	z-index: 1;
	top: 43px;
	width: 100vw;
	padding: 20px 0;
	background-color: transparent;
}
.header-inner {
	display: flex;
	align-items: center;
}
.header-nav {
	margin-left: auto;
	margin-right: auto;
}
.header-button {
	margin-left: 15px;
}
.header .container {
    max-width: 100vw;
/* 	padding: 0 100px; */
}
@media (min-width: 1200px){
	.header .container {
		padding: 0 100px;
	}
}
.menu {
	position: relative;
	padding-left: 0;
	list-style: none;
	display: flex;
}
.menu > li {
	position: relative;
}
.menu a {
	display: block;
	padding: 4px 15px 0;
/* 	font-family: var(--font-custom); */
	font-size: 16px;
	line-height: 35px;
	text-transform: uppercase;
	color: #ccc;
}
.menu > li > a {
	color: #fff;
}
.menu > li.current-menu-item > a,
.menu > li.current-menu-parent > a,
.menu > li > a:hover {
	color: var(--color-primary);
}
.sub-menu {
	position: absolute;
	top: 100%;
	left: 0;
	visibility: hidden;
	opacity: 0;
	z-index: 999;
	list-style: none;
	padding: 0;
	background-color: #fff;
	box-shadow: 0 0 30px 0 rgba(0, 0, 0, .1);
	width: 330px;
	transition: .2s;
}
@media (min-width: 1025px) {
	.menu > li:hover .sub-menu {
		visibility: visible;
		opacity: 1;
	}
}
.sub-menu li {
	border-bottom: 1px solid var(--color-gray-dark);
}
.sub-menu li a {
	background-color: var(--color-black);
}
.sub-menu li a:hover {
	color: var(--color-primary);
}

.sticky .header {
	position: fixed;
	z-index: 9;
	top: 0;
	background-color: rgba(50, 50, 50, .95);
	padding: 12px 0;
}
.logo-wide,
.sticky .logo-main {
	display: none;
}
.sticky .logo-wide {
	display: inline;
}

.mobile-button {
	display: none;
	margin-left: auto;
	font-size: 30px;
	color: var(--color-primary2);
}
.mobile-button img {
	width: 30px;
	height: 30px;
}
.mobile-overlay {
	opacity: 0;
	visibility: hidden;
	position: fixed;
	background: rgba(0, 0, 0, 0.8);
	z-index: 9999;
	transition: all ease 0.3s;
}
.mobile-open .mobile-overlay {
	opacity: 1;
	visibility: visible;
}
.mobile-overlay .close {
	position: absolute;
	top: 30px;
	right: 18px;
	color: #fff;
	font-size: 30px;
	line-height: 1;
	
}
.mobile-overlay .close img {
	width: 20px;
	height: 20px;
}
.mobile-menu {
	position: fixed;
	z-index: 9999;
	top: 0;
	left: -300px;
	width: 300px;
	max-width: 100%;
	height: 100%;
	padding-bottom: 50px;
	overflow-x: hidden;
	overflow-y: auto;
	background-color: var(--color-black);
	color: #fff;
	transition: .2s;
}
.mobile-open .mobile-menu {
	left: 0;
}
.mobile-logo {
	position: relative;
	padding: 25px;
}
@media (max-width: 1024px) {
	.topbar {
		display: none;
	}

	.header {
		top: 0;
	}
	.logo-main {
		display: none;
	}
	.logo-wide {
		display: inline;
		width: 153px;
	}
	.header-nav,
	.header-button {
		display: none;
	}

	.mobile-button {
		display: block;
	}

	.menu {
		display: block;
	}
	.menu > li {
		margin: 0;
		border-top: 1px solid rgba(255, 255, 255, 0.1);
	}
	.menu > li > a {
		position: relative;
		padding: 10px 25px;
	}
	.menu > li.menu-item-has-children > a:after {
		content: "\f105";
		font-family: "Font Awesome 5 Free";
		font-weight: 900;
		position: absolute;
		top: 10px;
		right: 20px;
	}
	.menu > li.menu-item-has-children.open > a:after {
		content: "\f107";
	}
	.sub-menu {
		position: static;
		visibility: visible;
		opacity: 1;
		width: 100%;
		padding: 0;
		background-color: transparent;
		box-shadow: none;
		max-height: 0;
		overflow: hidden;
		transition: .5s;
	}
	.sub-menu li:last-child {
		border-bottom: none;
	}
	.open .sub-menu {
		border-top: 1px solid var(--color-gray-dark);
		padding-left: 25px;
		max-height: 1000px;
	}
	.sub-menu li a {
		padding-top: 10px;
		padding-bottom: 10px;
	}
}

.footer {
	padding: 60px 0;
	background-color: var(--color-gray2);
	
	color: #ccc;
}
.footer-inner {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-gap: 20px;
}
.footer-logo {
    max-width: 250px;
}
@media (max-width: 767px) {
	.footer-inner {
		grid-template-columns: repeat(1, 1fr);
	}
	.footer-logo {
		text-align: center;
	}
}
@media (min-width: 768px) {
	.footer-hours {
		padding-left: 40px;
	}
}
.footer-info {
	line-height: normal;
	margin-bottom: 10px;
	padding-bottom: 10px;
	border-bottom: 1px solid rgba(255, 255, 255, .1);
}
.footer-info span {
	display: inline-block;
	width: 60px;
	font-weight: 300;
}
.footer-info a {
	color: var(--color-primary);
}
.footer-hours ul {
	list-style: none;
	padding-left: 0;
}
.footer-hours ul li span {
	display: inline-block;
	width: 120px;
}
.footer-heading {
	color: #fff;
	font-family: var(--font-custom);
	font-size: 20px;
	margin-bottom: 20px;
}
.footer-map iframe {
	width: 100%;
	height: 240px;
}

.bottombar {
	padding: 20px 0;
	background-color: #0F0F0B;
	color: #ccc;
}
.bottombar-inner {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.bottombar p {
	margin-bottom: 0;
}
.bottombar ul {
	list-style: none;
	padding-left: 0;
	display: flex;
	grid-gap: 15px;
}
.bottombar a {
	color: #fff;
}
@media (max-width: 767px) {
	.bottombar {
		padding-bottom: 80px;
	}
}

.page-header {
	position: relative;
	padding: 220px 0 80px;
	background-image: url(images/header.webp);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}
.page-header:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: rgba(0, 0, 0, .65);
}
.page-header:not(.service-page) h1 {
	color: #eceff3;
	font-family: var(--font-custom);
	font-size: 32px;
	text-transform: uppercase;
	text-align: center;
	border-bottom: 1px solid rgba(255, 255, 255, .1);
	position: relative;
	padding-bottom: 20px;
}
.page-header:not(.service-page) h1:after {
	content: "";
	position: absolute;
	left: calc(50% - 50px);
	bottom: 0;
	width: 100px;
	height: 2px;
	background-color: var(--color-primary);
}
.page-header.service-page .container {
	position: relative;
	color: #fff;
}
.page-header.service-page h1 {
	color: var(--color-primary);
	font-family: var(--font-primary);
	font-size: 16px;
	text-transform: uppercase;
	font-weight: 300;
}
.page-header.service-page .big_text {
/* 	color: var(--color-white); */
/* 	font-family: var(--font-primary); */
	font-family: var(--font-custom);
	font-size: 75px;
	line-height: 1em;
	margin-bottom: 0.4em;
}
.page-header.service-page .subtitle {
	font-size: 18px;
	margin-bottom: 0.4em;
}
.page-header.service-page .phone {
	font-size: 32px;
	display: block;
}
.page-header.service-page .btn {
	margin: 20px 0;
}
@media (max-width: 767px) {
	.page-header {
		padding-top: 120px;
	}
	.page-header h1 {
		font-size: 24px;
	}
}

.ug-gallery-wrapper {
	margin-bottom: 40px !important;
}
@media (max-width: 1200px) {
	.ug-gallery-wrapper {
		height: 700px !important;
	}
}
@media (max-width: 767px) {
	.ug-gallery-wrapper {
		height: 400px !important;
	}
}
@media (max-width: 479px) {
	.ug-gallery-wrapper {
		height: 220px !important;
	}
}

.callnow {
	display: none;
}
.callnow a {
	position: fixed;
	z-index: 1;
	display: block;
	left: 0;
	bottom: 0;
/* 	width: 100vw; */
	width: 100%;
	padding: 10px 0;
	background-color: var(--color-primary);
	color: var(--color-black);
	font-size: 24px;
	text-align: center;
}
.mobile_only {
	display: none;
}
@media (max-width: 767px) {
	.callnow {
		display: block;
	}
	.hide_on_mobile {
		display: none;
	}
	.mobile_only {
		display: block;
	}
}

.home-banner {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	position: relative;
	min-height: 100vh;
	color: #e2dbc7;
}
.banner-small-text {
	font-size: 12px;
	line-height: 22px;
    letter-spacing: .34em;
    text-transform: uppercase;
    color: var(--color-primary);
    display: inline-flex;
    align-items: center;
    gap: 14px;
    font-weight: 600;
	text-align: center;
	flex-wrap: wrap;
    justify-content: center;
}
.banner-bottom-text {
	margin-top: 20px;
}
.banner-large-text {
	font-family: var(--font-custom);
	font-size: 94px;
	font-weight: 600;
	text-align: center;
	font-size: clamp(48px, 9vw, 90px);
    line-height: .98;
    font-weight: 300;
    color: var(--white);
    text-shadow: 0 6px 50px rgba(0, 0, 0, .6);
    letter-spacing: .01em;
}
.hero-buttons {
	margin-top: 30px;
    display: flex;
    gap: 20px;
	flex-wrap: wrap;
    justify-content: center;
}
@media (max-width: 767px) {
	.banner-large-text {
		font-size: 32px;
		line-height: 1.2;
	}
}

.home-cta-wrap {
	padding: 25px 0;
}
.home-cta {
	display: flex;
	align-items: center;
	justify-content: center;
}
.home-cta p {
	margin: 0;
	font-family: var(--font-custom);
	font-size: 32px;
	font-weight: 700;
}
@media (max-width: 767px) {
	.home-cta {
		flex-direction: column;
	}
	.home-cta p {
		font-size: 18px;
		text-align: center;
	}
}

.home-service-wrap {
/* 	display: flex; */
	flex-wrap: wrap;
	align-items: stretch;
	display: grid;
	grid-template-columns: 1.1fr .9fr ;
}
.home-service-wrap.reverse {
	grid-template-columns: .9fr 1.1fr;
}
@media (max-width: 1080px) {
    .home-service-wrap {
/*         grid-template-columns: 1fr !important; */
		display: flex;
    }
	.svc-ghost {
		display: none;
	}
}
.home-service-wrap.bg-gray-pale {
	background: var(--color-dark-gray);
	color: var(--color-gray-pale);
}
.home-service-wrap .home-service-image {
	overflow: hidden;
}
.home-service-wrap .home-service-image img {
	transition: transform 1.3s ease;
}
.home-service-wrap:hover .home-service-image img {
	transform: scale(1.16);
}
.home-service-image {
/* 	width: 50%; */
	max-height: 540px;
}
.home-service-content {
/* 	width: 50%; */
	padding: 60px 15px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	grid-gap: 20px;
	padding-left: 60px;
	position: relative;
}
@media (min-width: 1081px) {
    .home-service-content {
        padding-top: 120px;
		max-width: 600px;
/* 		min-height: 550px; */
    }
	.home-service-wrap .home-service-image {
		min-height: 550px;
	}
	.home-service-wrap .home-service-image img {
		min-height: 550px;
	}
}
  
.svc-ghost {
	--line: rgba(201, 160, 82, .32);
    position: absolute;
    top: 20px;
    right: 10px;
    font-family: var(--font-custom);
    font-size: 140px;
    font-weight: 400;
/*     color: transparent; */
/*     -webkit-text-stroke: 1px var(--line); */
	color: #232323;
    line-height: 1;
    pointer-events: none;
}
.home-service-wrap.reverse .svc-ghost {
    right: auto;
    left: 10px;
}
@media (min-width: 1081px) {
	.reverse .home-service-image {
		order: 1;
	}
}
.reverse .home-service-content {
	padding-left: 15px;
	padding-right: 60px;
	margin-left: auto;
}
@media (max-width: 1024px) {
	.home-service-content {
		padding: 40px 15px;
	}
	.reverse .home-service-content {
		padding-right: 15px;
	}
}
@media (max-width: 767px) {
	.home-service-image {
		width: 100%;
	}
	.home-service-content {
		width: 100%;
	}
}

.home-gallery-wrap {
	padding: 60px 0;
}
.home-gallery {
	margin-top: 40px;
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	grid-gap: 30px;
}
.home-gallery-item {
	position: relative;
}
.home-gallery-title {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: var(--color-black);
	opacity: 0;
	transition: .2s;
}
.home-gallery-title a {
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--color-primary);
	font-size: 24px;
	font-weight: 700;
	text-transform: uppercase;
	width: 100%;
	height: 100%;
}
.home-gallery-item:hover .home-gallery-title {
	opacity: 0.9;
}
@media (max-width: 767px) {
	.home-gallery {
		grid-template-columns: repeat(1, 1fr);
	}
}

.home-profile-wrap {
	padding: 60px 0;
}
.home-profile {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	justify-content: center;
	margin: 30px 0 60px;
}
.home-profile-item {
	width: 16%;
	text-align: center;
}
@media (min-width: 768px) {
	.home-profile-item:not(:first-child) {
		border-left: 1px dashed var(--color-gray-dark);
	}
}
@media (max-width: 1024px) {
	.home-profile-item {
		width: 33.33%;
	}
}
@media (max-width: 767px) {
	.home-profile-item {
		width: 50%;
	}
}

/* .home-about-wrap {
	padding: 60px 0;
} */

.owl-carousel .owl-item img {
	display: inline;
	width: auto;
}

.testimonial-wrap {
	padding: 60px 0;
	background: #090909;
}
.testimonial {
	padding: 0 20px;
}
.testimonial-inner {
	max-width: 840px;
	margin: 0 auto;
/* 	background-color: #f6f6f6; */
	padding: 30px;
	border-radius: 10px;
/* 	color: var(--color-black); */
	display: flex;
    flex-direction: column;
    align-items: center;
}
.testimonial .image {
	display: inline-block;
	width: 100px;
	height: 100px;
	border-radius: 150px;
	overflow: hidden;
	text-align: center;
/* 	margin-bottom: 30px; */
}
.testimonial .name {
	margin-top: 10px;
	color: #222;
	font-size: 20px;
/* 	font-weight: 700; */
}
.testimonials .owl-nav {
	font-size: 48px;
}
.testimonials.owl-carousel .owl-nav button.owl-next,
.testimonials.owl-carousel .owl-nav button.owl-prev {
	line-height: 1;
}
.testimonials .testi-text {
	margin-top: 20px;
}
.testi-mark {
/*     font-family: var(--serif); */
    font-size: 90px;
    color: var(--color-primary);
    font-style: italic;
    line-height: 0.3;
    margin-bottom: 10px;
    font-family: var(--font-custom);
}
.testimonials .testi-meta-box {
	display: flex;
	margin: 0 auto;
}
.testimonials .testi-avatar {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 44px;
	width: 44px;
	border: 1px solid var(--color-primary);
	border-radius: 100px;
	margin-right: 20px;
}
.testimonials .testi-meta {
	text-align: center;
}
.testimonials .testi-name {
	
}
.testimonials .testi-address {
	font-size: 11.5px;
    color: var(--color-primary);
    letter-spacing: .1em;
    text-transform: uppercase;
    margin-top: 3px;
}
.testimonials.owl-theme .owl-dots .owl-dot {
	width: 8px;
    height: 8px;
    border-radius: 50%;
    border: 1px solid var(--color-primary);
    background: transparent ;
    cursor: pointer;
    padding: 0;
    transition: .4s;
	margin: 2px;
}
.testimonials.owl-theme .owl-dots .owl-dot span {
	display: none;
}
.testimonials.owl-theme .owl-dots .owl-dot.active {
	background: var(--color-primary2);
    width: 26px;
    border-radius: 5px;
}

.main-content {
	padding: 40px 0;
}
.main-content h2 {
	text-align: left;
}

.cta-bar {
	margin: 40px 0;
	text-align: center;
}
.cta-inner {
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	padding: 15px 0;
	font-size: 25px;
}
.cta-inner > * {
	vertical-align: middle;
}
@media (max-width: 767px) {
	.cta-inner > span {
		display: block;
		font-size: 18px;
	}
	.cta-inner > a {
		margin-top: 10px;
	}
}

table.profile {
	width: 100%;
	margin: 10px auto;
	border-spacing: 0;
	border-collapse: collapse;
}
table.profile td {
	padding: 5px 10px;
	border: 1px solid var(--color-gray-light);
}
table.profile td:last-child {
	text-align: center;
	width: 50px;
}
table.profile td a,
table.profile td i {
	color: var(--color-primary);
}

.black-overlay:after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
/* 	background-color: rgba(0, 0, 0, .35); */
	background: linear-gradient(
    to bottom, 
    rgba(0, 0, 0, 0.8) 0%, 
    rgba(0, 0, 0, 0.5) 100%
  );
}

.wpcf7-form-control-wrap {
	width: 100%;
}
.wpcf7 input[type=text],
.wpcf7 input[type=email],
.wpcf7 input[type=tel],
.wpcf7 textarea,
.wpcf7 select {
	border-radius: 0;
	border: solid 1px var(--color-primary);
    background: inherit;
    color: var(--color-primary) !important;
	font-family: var(--font-primary);
	padding: 10px;
	width: 100%;
    margin-bottom: 15px;
}
.wpcf7 input[type=submit] {
/* 	border: none; */
	cursor: pointer;
	transition: .2s;
	text-transform: uppercase;
	font-family: var(--font-primary);
}
.wpcf7 textarea {
    height: 60px; /* Adjust height as needed */
    resize: vertical; /* Allows users to drag vertical resize, but not horizontal */
}
.wpcf7-spinner {
	position: absolute;
}
input::placeholder,
textarea::placeholder{
/* 	color: color-mix(in srgb, var(--color-primary) 70%, transparent); */
	color: var(--color-primary);
}

.contact-page-inner {
	display: flex;
}
.contact-form {
	width: 50%;
	padding-right: 40px;
}
.contact-content {
	width: 50%;
}

.footer-quote-wrap {
	padding: 60px 0;
/* 	background-color: #f6f6f6; */
	position: relative;
	background-image: url(images/contact.webp);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}
.why-section {
	padding: 60px 0;
	position: relative;
	background-image: url(images/section-1.webp);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
/* 	background-image: url(../../uploads/2026/07/about.webp); */
}
.why-section:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: rgba(0, 0, 0, .85);
}
.footer-quote-wrap:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: rgba(0, 0, 0, .7);
}
.footer-quote-inner, .why-inner {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	position: relative;
}
.why-inner {
	display: grid;
	align-items: center;
	grid-template-columns: 1fr;
	grid-template-rows: auto;
	gap: 0 5rem;

}
.why-inner .main-title {
    text-transform: uppercase;
    line-height: 1.1;
}
@media (min-width: 992px){
	.why-inner {
		grid-template-columns: 1fr 1fr;
	}
}
.footer-form-wrap {
	width: 50%;
/* 	padding-right: 30px; */
	border: 1px solid var(--color-primary);
}
.footer-contact-wrap {
	width: 50%;
	padding-left: 30px;
}
.footer-contact-wrap .main-title {
	text-transform: uppercase;
	line-height: 1.1;
	
}
.footer-form-inner {
/* 	background-color: var(--color-white); */
	background-color: #0F0F0B;
	padding: 30px;
/* 	border-radius: 10px; */
	color: #C4C4C4;
}
.footer-form-inner .main-title {
/* 	color: #C4C4C4; */
	line-height: 1.1;
}
.input-title {
	
}
.form_note {
	color: #C4C4C4;
	font-size: 0.8em;
	text-align: center;
}
.form_note a {
	font-size: 1.2em;
	color: var(--color-primary);
}
@media (max-width: 767px) {
	.footer-form-wrap {
		width: 100%;
		padding-right: 0;
	}
	.footer-contact-wrap {
		margin-top: 30px;
		width: 100%;
		padding-left: 0;
	}
	.footer-quote-wrap .main-title {
		font-size: 24px;
	}
}

.info-box {
	display: flex;
	align-items: center;
	border-bottom: 1px solid #252525;
	padding-bottom: 20px;
	margin-bottom: 10px;
}
.info-box-icon-inner {
	width: 70px;
	height: 70px;
	border: 1px solid var(--color-primary);
/* 	color: #fff; */
/* 	color: #090909; */
	border-radius: 40px;
	font-size: 32px;
	text-align: center;
	line-height: 70px;
}
.info-box-icon-inner i {
	background: linear-gradient(
    -45deg, 
    var(--color-primary2) 0%, 
    var(--color-primary) 100%
  );
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  display: inline-block; /* Required to properly bound the gradient box */
}
.info-box-content {
	margin-left: 30px;
}
.info-box-heading {
	margin-bottom: 0;
	font-size: 18px;
	font-weight: 600;
}
.info-box-content a.info-box-text{
	color: var(--color-primary);
}
.shimmer {
/* 	--gold:#c9a052;
    --gold-2:#e9c878;
    --gold-3:#fbe9b4;
    --gold-deep:#8a6a34; */
/*     background: linear-gradient(100deg, var(--gold-deep) 20%, var(--gold-3) 40%, var(--gold-2) 50%, var(--gold-deep) 70%); */
	background: linear-gradient(
    100deg, 
    var(--color-primary2) 0%, 
    var(--color-primary) 25%, 
    var(--color-primary2) 50%, 
    var(--color-primary) 75%, 
    var(--color-primary2) 100%
  );
    background-size: 250% auto;
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    font-style: italic;
    animation: shimmerMove 5s linear infinite;
	
  
  /* Necessary to give the animation room to shift horizontally */
/*   background-size: 200% 100%; */
}
@keyframes shimmerMove{0%{background-position:0% 50%}100%{background-position:250% 50%}}
.gold-button {
  /* Background gradient (Top: #eed9a6 -> Bottom: #ae9459) */
  background: linear-gradient(to bottom, var(--color-primary), var(--color-primary2));
  
  /* Solid border fallback + width */
  border: 2px solid transparent;
  
  /* Reversed border gradient (Top: #ae9459 -> Bottom: #eed9a6) */
  border-image: linear-gradient(to bottom, var(--color-primary2), var(--color-primary)) 1;
  
  /* Text styling & padding */
  color: #2b2313; /* Dark gold-brown text for good contrast */
/*   font-weight: bold;/ */
/*   padding: 6px 20px; */
  cursor: pointer;
  text-transform: uppercase;
  letter-spacing: 1px;
  
  /* Smooth transition for hover effects */
  transition: 0.3s ease;
}
.gold-button:hover {
	  background: linear-gradient(to bottom, var(--color-primary2), var(--color-primary));
  
  /* Solid border fallback + width */
  border: 2px solid transparent;
  
  /* Reversed border gradient (Top: #ae9459 -> Bottom: #eed9a6) */
  border-image: linear-gradient(to bottom, var(--color-primary), var(--color-primary2)) 1;
}
/* Stats Container */
    .stats-section {
      width: 100%;
      max-width: 1200px;
/*       background-color: #0f0f0d; */
      padding: 0rem 1rem;
	  margin: 0 auto;
    }

    .stats-grid {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      align-items: center;
    }

    /* Counter Item */
    .stat-item {
      display: flex;
      flex-direction: column;
      align-items: center;
      justify-content: center;
      text-align: center;
      position: relative;
      padding: 1rem 0;
    }

    /* Thin vertical dividers between items */
    .stat-item:not(:last-child)::after {
      content: '';
      position: absolute;
      right: 0;
      top: 15%;
      height: 70%;
      width: 1px;
      background-color: rgba(255, 255, 255, 0.12);
    }

    /* Number Styling */
    .stat-number {
      font-family: var(--font-custom);
      font-size: 4rem;
      font-weight: 500;
      color: var(--color-primary);
      line-height: 1;
      margin-bottom: 1.2rem;
      letter-spacing: -0.02em;
    }

    /* Label Styling */
    .stat-label {
      font-size: 0.68rem;
      font-weight: 500;
      text-transform: uppercase;
      letter-spacing: 0.22em;
      color: #cccccc; /* Subtle muted gold-gray */
      line-height: 1.4;
    }

    /* Responsive Design for Smaller Screens */
    @media (max-width: 850px) {
      .stats-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 2.5rem 0;
      }

      .stat-item:nth-child(2)::after {
        display: none;
      }
    }

    @media (max-width: 500px) {
      .stats-grid {
        grid-template-columns: 1fr;
        gap: 2rem 0;
      }

      .stat-item::after {
        display: none !important;
      }

      .stat-number {
        font-size: 3.2rem;
      }
    }

.section-results .main-title {
/* 	color: var(--color-black); */
	line-height: 1.2;
}
.section-results .main-title.gold {
	color: var(--color-primary);
}
.section-results .middle-text {
	margin-top: 10px;
/* 	color: #090909; */
}
.section-results ul {
	list-style-type: none;
	padding: 0;
	display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto;
    gap: 0 1rem;
}
.section-results li {
    border-top: 1px solid var(--color-primary);
	font-size: 0.8em;
	padding: 0.6em 0;
/*     color: var(--color-black); */
}
.section-results li:before {
	content: "\f00c";
	font-family: "Font Awesome 5 Free";
	-webkit-font-smoothing: antialiased;
    display: inline-block;
    font-style: normal;
    font-variant: normal;
    text-rendering: auto;
    line-height: 1;
	font-weight: 700;
    font-size: 0.8em;
    margin-right: 7px;
	color: var(--color-primary);
}
.cta-bar-2col .cta-inner {
	display: grid;
    grid-template-columns: 2fr 1fr;
    grid-template-rows: auto;
    gap: 0 1rem;
	align-items: center;
	border: none;
	padding: 0;
}
.cta-bar-2col .right {
	text-align: right;
}
.cta-bar-2col .left {
	text-align: left;
}
.cta-bar-2col .title {
	font-size: 2em;
	color: #fff;
	font-family: var(--font-custom);
}
.cta-bar-2col .small {
	font-size: 0.8em;
}
.cta-bar-2col .sd-button {
	margin-top: 8px;
}

.path_steps .step_number {
	color: var(--color-primary);
	font-size: 40px;
}
.path_steps .step_name {
 	color: var(--color-primary);
/* 	font-weight: bold; */
	font-size: 1.2em;
}
.path_steps .step_description {
	font-size: 0.8em;
/* 	color: #090909; */
}
.mb20 {
	margin-bottom: 20px;
}
.with_container > .vc_column_container {
	max-width: 1200px;
	margin: 0 auto;
    float: none;
}
.inner-no-padding .vc_column-inner {
	padding-top: 0 !important;
}
.inner-no-padding .wpb_single_image {
	margin-bottom: 0;
}
.ticker-bar {
	--line-soft: rgba(201, 160, 82, .16);
	position: relative;
    overflow: hidden;
    border-bottom: 1px solid var(--line-soft);
    padding: 12px 0;
    white-space: nowrap;
    z-index: 5;
}
.ticker-track {
    display: inline-flex;
    animation: tickerScroll 34s linear infinite;
}
.ticker-track span {
    display: inline-flex;
    align-items: center;
    gap: 16px;
    font-size: 11.5px;
    letter-spacing: .28em;
    text-transform: uppercase;
    color: var(--color-gray-pale);
    padding: 0 34px;
    font-weight: 500;
}
.ticker-track span:after {
    content: "◆";
    color: var(--color-primary);
    font-size: 8px;
    margin-left: 34px;
}
@keyframes tickerScroll{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
@media (max-width: 768px){
	.ticker-track span {
		padding: 0 10px;
	}
	.ticker-track span:after {
		margin-left: 10px;
	}
}
.two_col_half_cols {
	display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto;
    gap: 0 1rem;
}
.two_col_form .wpcf7-submit {
	margin: 0 auto;
    display: block;
}
.page-id-19 {
	display: flex;
	flex-direction: column;
}
.page-id-19 .bottombar {
	order: 200;
}
.page-id-19 .footer {
	order: 100;
}
.page-id-19 .testimonial-wrap {
	order: 50;
}
.service-row h2 {
	margin-top: 0;
}
@media (max-width: 1200px){
	.cta-bar-2col {
		padding: 0 20px;
	}
}

@media (max-width: 992px){
	.cta-bar-2col .cta-inner {
		grid-template-columns: 1fr;
	}
	.cta-bar-2col .left {
		text-align: center;
	}
	.cta-bar-2col .right {
		text-align: center;
		margin-top: 20px;
	}
	.cta-bar-2col .title {
		font-size: 1.5em;
		line-height: 1.2;
		margin-bottom: 15px;
	}
	.page-header.service-page .big_text {
		font-size: 32px;
	}
	.not_mobile {
		font-size: 0;
		display: block;
	}
}

@media (max-width: 768px){
	.main-title {
		font-size: 32px;
	}
	.stat-item {
		padding: 0;
	}
	.reverse-mobile {
	  display: flex;
	  flex-direction: column; /* or 'row' depending on your layout */
	}

	.reverse-mobile > :nth-child(1) {
	  order: 2;
	}

	.reverse-mobile > :nth-child(2) {
	  order: 1;
	}
	
}
.project_line {
	display: flex;
	justify-content: space-between;
	align-items: center;
    font-size: 1.2em;
}
.project_line .project_name {
	font-family: var(--font-custom);
}

  .process{
	  
	  --line: rgba(201, 160, 82, .32);
	  --line-soft: rgba(201, 160, 82, .16);
	  padding: 60px 0 20px;border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);position:relative;overflow:hidden;}
  .proc-grid{
	  margin-top: 60px;
	  display:grid;grid-template-columns:repeat(5,1fr);gap:30px;position:relative;z-index:1;}
  .proc-step{
	  
	  position:relative;
	  padding-top:120px;
}
  .proc-ghost{position:absolute;top:-40px;left:-8px;font-family:var(--font-custom);font-size:130px;
/* 	  color:transparent; */
/* 	  -webkit-text-stroke:1px var(--line); */
	  color: #232323;
	  line-height:1;}
  .proc-step h4{
	  color: var(--color-primary);
	  font-size:1.2;
/* 	  font-weight:500; */
	  margin-bottom:10px;
	  font-family: inherit;
}
  .proc-step p{
/* 	  color:var(--gray); */
/* 	  font-size:13.8px; */
/* 	  line-height:1.75; */
/* 	  font-weight:300; */
	  font-size: 0.8em;
}
  .proc-line{position:absolute;top:98px;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--line),var(--line),transparent);z-index:0;}

@media (max-width:1080px){
    .proc-grid{grid-template-columns:repeat(5,1fr);gap:16px;}
  }
  @media (max-width:860px){
    .proc-grid{grid-template-columns:1fr 1fr;padding: 0 20px;}
    .proc-line{display:none;}
	  .proc-ghost {
		top: -10px;
	}
  }
  @media (max-width:480px){
    .proc-grid{grid-template-columns:1fr 1fr;}
  }

@keyframes parallax-scroll {
  from {
    transform: translateY(0);
  }
  to {
    transform: translateY(-40%);
  }
}
.page-template-front-page-tpl .home-banner-wrap {
	position: relative;
    width: 100%;
    height: 100vh;
    overflow: hidden;
}
.page-template-front-page-tpl .home-banner-wrap .black-overlay {
/* 	position: relative; */
    width: 100%;
    height: 100vh;
    overflow: hidden;
}
.page-template-front-page-tpl .home-banner-wrap img {
	position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 140%; /* Extra height gives room to shift downward */
  object-fit: cover;
  
  /* Bind movement directly to page scroll */
  animation: parallax-scroll linear;
  animation-timeline: scroll(root);
}

.why-item{
	--gray:#aca38f;
	--line: rgba(201, 160, 82, .32);
	--line-soft: rgba(201, 160, 82, .16);
	display:grid;grid-template-columns:74px 1fr;gap:28px;padding:34px 0;border-top:1px solid var(--line-soft);transition:padding-left .4s ease;}
  .why-item:hover{padding-left:12px;}
  .why-list .why-item:last-child{border-bottom:1px solid var(--line-soft);}
  .why-item .ic{width:50px;height:50px;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;color:var(--color-primary2);transition:.4s;}
  .why-item:hover .ic{border-color:var(--color-primary);background:rgba(201,160,82,.08);}
  .why-item .ic svg{width:22px;height:22px;font-size: 32px;color:var(--color-primary);}
.why-item .ic i {
	width:22px;height:22px;font-size: 18px;color:var(--color-primary);
	display: flex;
    justify-content: center;
    align-items: center;
}
  .why-item h4{font-size:20px;font-weight:500;margin-bottom:9px;margin-top:0px;color: white;font-family:var(--font-custom);}
  .why-item p{
/* 	  color:var(--gray);
	  font-size:14.5px;
	  line-height:1.8;
	  font-weight:300; */
	  font-size: 0.8em;
}

.why-pull {
	--line-soft: rgba(201, 160, 82, .16);
    margin-top: 40px;
    padding: 32px 0 0;
    border-top: 1px solid var(--line-soft);
}

.why-pull p {
    font-family: var(--font-custom);
    font-size: 24px;
    font-style: italic;
    color: var(--color-primary);
    line-height: 1.5;
}
.small-text {
	font-size: 14.5px;
    line-height: 1.8;
    font-weight: 300;
}
.svg-gradient-icon {
  background: linear-gradient(
    -45deg, 
    var(--color-primary2) 0%, 
    var(--color-primary) 100%
  );
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  display: inline-block; /* Essential to bound the element box */
}

.wpcf7 form.sent .wpcf7-response-output {
    border: none;
    text-align: center;
    color: var(--color-primary);
}
