/*
 Theme Name:   Greenserve
 Theme URI:    https://www.energycircle.com
 Description:  Greenserve
 Author:       Energy Circle
 Author URI:   https://www.energycircle.com
 Template:     generatepress
 Version:      0.1
*/

/* ------------------- Desktop navigation & sticky styles -------------------- */
#sticky-navigation,
#mobile-header.is_stuck {
    box-shadow: 0 5px 2px -2px rgb(0 0 0 / 20%);
}

.main-navigation.sticky-navigation-transition .main-nav > ul > li > a {
    font-size: 16px;
}

/* -------------------- Auxiliary menu styles -------------------- */
.secondary-navigation .menu-toggle {
    display: none;
}

@media (max-width: 1024px) {
    #secondary-navigation {
        display: none;
    }
}

@media (max-width: 992px) {
    .secondary-navigation ul,
    .secondary-navigation:not(.toggled) .main-nav > ul {
        display: none;
    }
}

@media (max-width: 768px) {
    .secondary-navigation {
        text-align: center !important;
    }
    .secondary-navigation ul {
        display: block;
    }
    .secondary-navigation .sf-menu > li {
        float: none;
        display: inline-block !important;
    }
}

/* -------------------- Mobile header and hamburger menu styles -------------------- */
.mobile-header-navigation {
    box-sizing: border-box;
    padding: 10px;
    position: relative;
    background: transparent;
}

.mobile-header-navigation .gp-icon {
    font-size: 24px;
  line-height: inherit;
}

.mobile-header-navigation .gp-icon svg {
  height: 1.1em;
  width: 1.1em;
}

#generate-slideout-menu .gb-button-wrapper .gb-button,
.slideout-navigation.do-overlay .inside-navigation .main-nav,
.slideout-navigation.do-overlay .inside-navigation .slideout-widget {
    width: 100%;
}

.slideout-navigation.do-overlay .inside-navigation .main-nav {
    padding-left: 20px;
}

#generate-slideout-menu.main-navigation .main-nav ul ul {
    left: 20px !important;
}

.main-navigation.slideout-navigation .main-nav > ul > li > a {
    line-height: 30px;
}

#generate-slideout-menu .gb-block-image {
    display: flex;
}

#generate-slideout-menu .gb-block-image img {
    height: auto;
    width: 150px;
    margin-left: 20px;
}

#generate-slideout-menu.do-overlay .slideout-menu li {
    text-align: left !important;
    margin-bottom: 10px;
}

#generate-slideout-menu #menu-aux-menu-2 a[href*="tel"] {
    display: none;
}

#menu-aux-menu-2.gp-collapsible-menu {
    display: block;
}

#menu-aux-menu-2.gp-collapsible-menu li {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
  align-items: flex-start;
  margin-bottom: 15px;
}

#menu-aux-menu-2.gp-collapsible-menu li a {
    color: var(--global-color-4);
    padding-left: 10px;
}

#menu-aux-menu-2.gp-collapsible-menu li a:hover, 
#menu-aux-menu-2.gp-collapsible-menu li.current-menu-ancestor > a, 
#menu-aux-menu-2.gp-collapsible-menu li.current-menu-item a 
 {
     color: var(--global-color-3);
}

#menu-aux-menu-2.gp-collapsible-menu .sub-menu-toggle {
    color: var(--global-color-4);
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
    position: absolute;
    right: 20px;
}

#menu-aux-menu-2.gp-collapsible-menu li.open > .sub-menu {
  display: unset;
  position: relative;
  left: 0;
  opacity: 1;
  height: auto;
  padding: 5px 0 0 15px;
}

#menu-aux-menu-2.gp-collapsible-menu li.open > .sub-menu li {
    position: relative;
    left: 0;
}

#menu-aux-menu-2.gp-collapsible-menu .toggle-icon {
    transition: transform 0.3s ease;
}

#menu-aux-menu-2.gp-collapsible-menu li.open .toggle-icon {
    transform: rotate(180deg);
}


.slideout-navigation .main-nav {
    margin-bottom: 20px;
}

/* Update color */
.slideout-exit .gp-icon svg {
    fill: var(--global-color-4);
}

.slideout-navigation.main-navigation .main-nav ul li a {
    color: var(--global-color-1);
}


#generate-slideout-menu.slideout-navigation.do-overlay .menu-item-has-children .dropdown-menu-toggle {
    border-left: unset;
}

body:not(.resize-header) #mobile-header img {
    filter: brightness(0) invert(1);
    height: 100px;
}

@media (max-width: 1279px) {
    #generate-slideout-menu.main-navigation ul.ec_menu_ul {
        display: block !important;
    }
    .slideout-navigation.do-overlay .slideout-exit {
        position: fixed !important;
        right: 20px !important;
    }

    .slideout-navigation.do-overlay .inside-navigation {
        padding: 0 !important;
    }
}

/* -------------------- Testimonials -------------------- */
.testimonials .testimonial-quote:before {
    content: open-quote;
    top: -30px;
    left: -80px;
}

.testimonials .testimonial-quote:after {
    content: close-quote;
    bottom: 0;
    right: -80px;
}

.testimonials .testimonial-quote:before,
.testimonials .testimonial-quote:after {
    position: absolute;
    display: block;
    width: 40px;
    height: 40px;
    font-size: 4em;
    color: var(--global-color-1);
}

.testimonials :is(.custom-field-name, .custom-field-location) {
    text-transform: uppercase;
    margin-bottom: 0;
}

.testimonials.wp-block-getwid-post-carousel.has-arrows-inside
    .slick-prev:before,
.testimonials.wp-block-getwid-post-carousel.has-arrows-inside
    .slick-next:before {
    color: var(--global-color-4);
    font-size: 32px;
    opacity: 1;
}

.testimonials.wp-block-getwid-post-carousel.has-arrows-inside .slick-prev,
.testimonials.wp-block-getwid-post-carousel.has-arrows-inside .slick-next {
    text-shadow: none;
}

@media (max-width: 1024px) {
    .testimonials .testimonial-quote:before,
    .testimonials .testimonial-quote:after {
        display: none;
    }

    .testimonials .slick-next,
    .testimonials .slick-prev {
        top: 80%;
    }
}

/* -------------------- Distinctions -------------------- */
/* Check if all are needed */
.distinctions .wp-block-getwid-post-carousel__post-title {
    display: none;
}

.distinctions .wp-block-getwid-post-carousel__post-thumbnail img {
    object-fit: contain;
}

.distinctions.wp-block-getwid-post-carousel .slick-track {
    align-items: center;
}

/* -------------------- Footer styles -------------------- */
.ec_menu_ul {
    margin-left: 0em;
    list-style-type: none;
}

.ec_menu_ul ul.sub-menu {
    list-style-type: none;
}

/* Update color */
.footer .ec_menu_ul li a {
    color: var(--contrast);
}

/* Update color */
.footer .ec_menu_ul li a:hover {
    color: var(--global-color-2);
}

@media (max-width: 768px) {
    .footer {
        text-align: center;
    }
}

/* -------------------- WP Forms styles -------------------- */
/* Check if needed */
/* Update color */
/* Submit button footer style - .btn-footer custom class in WPForms */
.wpforms-submit.btn-footer {
    color: var(--contrast) !important;
    background-color: var(--global-color-2) !important;
    border: none !important;
}

/* Check if needed */
/* Update color */
/* Submit button footer hover style - .btn-footer custom class in WPForms */
.wpforms-submit.btn-footer:hover {
    color: var(--base-1) !important;
    background-color: var(--global-color-1) !important;
    border: none !important;
}

/* Update color */
/* Submit button style */
div.wpforms-container-full .wpforms-form input[type='submit'],
div.wpforms-container-full .wpforms-form button[type='submit'],
div.wpforms-container-full .wpforms-form .wpforms-page-button {
    transition: all 0.5s ease 0s !important;
    margin-top: 40px;
	display: inline-flex;
    font-family: Lato, sans-serif;
    text-transform: uppercase;
    padding: 15px 40px !important;
    border-radius: 10px !important;
    background-color: var(--primary-page-blue) !important;
	line-height: 50%;
    color: var(--base-1) !important;
}

/* Update color */
/* Submit button hover style */
div.wpforms-container-full .wpforms-form input[type='submit']:hover,
div.wpforms-container-full .wpforms-form input[type='submit']:focus,
div.wpforms-container-full .wpforms-form input[type='submit']:active,
div.wpforms-container-full .wpforms-form button[type='submit']:hover,
div.wpforms-container-full .wpforms-form button[type='submit']:focus,
div.wpforms-container-full .wpforms-form button[type='submit']:active,
div.wpforms-container-full .wpforms-form .wpforms-page-button:hover,
div.wpforms-container-full .wpforms-form .wpforms-page-button:active,
div.wpforms-container-full .wpforms-form .wpforms-page-button:focus {
    color: var(--base-1) !important;
    background-color: var(--dark-blue-bg) !important;
}

@media (max-width: 500px) {
    div.wpforms-field-container .wpforms-field-name .wpforms-one-half {
        width: 100% !important;
    }

    div.wpforms-field-container
        .wpforms-field-name
        .wpforms-field-row
        > .wpforms-one-half:last-child {
        margin: 20px 0 0;
    }
}


/* -------------------- General styles -------------------- */
.italic-text {
	font-style: italic;
}

.main-navigation .main-nav ul ul li a {
  padding: 10px;
}

.main-navigation .main-nav ul ul li[class*="current-menu-"]
{
	background-color: var(--primary-page-blue) !important;
}

#sticky-navigation, #mobile-header.is_stuck {
	background: white;
}

#generate-slideout-menu a.gb-button {
	color: var(--base-1);
}


#generate-slideout-menu.do-overlay .slideout-menu a:hover {
	color: var(--orange-highlight);
}

#generate-slideout-menu .main-nav ul ul li[class*="current-menu-"] {
	background-color: white !important;
}

#generate-slideout-menu .main-nav ul ul li[class*="current-menu-"] > a,
#generate-slideout-menu .main-nav ul ul li:not([class*="current-menu-"]):hover > a {
	color: var(--orange-highlight);
}

#generate-slideout-menu .main-nav ul ul li.sfHover:not([class*="current-menu-"]) > a {
	color: var(--primary-page-blue) !important;
}

#rotate h1 {
	background: linear-gradient(180deg, var(--dark-blue-bg) 25%, var(--light-green) 57.35%);
background-clip: text;
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
	margin-bottom: 0;
}

nav#secondary-navigation ul.sub-menu li, nav#site-navigation ul.sub-menu li, #sticky-navigation .inside-navigation .sub-menu li {
	margin-bottom: 3px;
	background: white;
		box-shadow: 1px 1px 1px 0 rgba(0,0,0, 0.5);
}

nav#site-navigation ul.sub-menu li:hover, #sticky-navigation .inside-navigation .sub-menu li:hover, nav#site-navigation ul.sub-menu li.current-menu-item, #sticky-navigation .inside-navigation .sub-menu li.current-menu-item  {
	background: var(--primary-page-blue);
}

nav#secondary-navigation ul.sub-menu li:hover, nav#secondary-navigation ul.sub-menu li.current-menu-item {
	background: var(--primary-green);
}

.map-embed iframe {
	width: 100%;
	height: 400px;
}

.services img {
	width: 100%;
	height: 200px;
	object-fit: cover;
	border-radius: 10px;
}

.footer .ec_menu_ul {
	text-align: left;

}

.footer .ec_menu_ul li a {
	color: var(--base-1);
}

.footer .ec_menu_ul li a:hover {
	color: var(--link-blue);
}

.footer .ec_menu_ul li a[href*="tel"] {
	display: none;
}

@media only screen and (min-width: 768px) {
	.footer .services .ec_menu_ul {
	columns: 2;
		text-align: left;
}
	
	.site-logo  {
	max-width: 180px;
	margin-top: -50px;
}
}

.site-footer footer {
	padding: 30px;
}


.distinctions .slick-track {
	align-items: center;
	justify-content: center;
	    width: 100% !important;
}

.distinctions .slick-slide {
	width: 20% !important;
}

.distinctions .wp-block-getwid-template-post-featured-image img {
    width: auto;
    display: block;
    max-height: 150px;
}

.rounded-borders img {
	border-radius: 20px;
    height: 100%;
    width: 100%;
    object-fit: cover;
}

.rounded-borders .wp-block-getwid-images-stack__media-inner-wrapper img {
	border-radius: 30px !important;
}

.video-gallery .video-container iframe {
	width: 100% !important;
	height: 315px !important;
}

.gradient-overlay-container {
  position: relative;
  color: white;
		background-blend-mode: multiply, normal;
}

.gradient-overlay-container::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, var(--dark-blue-bg) 37.5%, var(--primary-green) 99.6%);
  pointer-events: none;
  z-index: 0;
	opacity: 0.8;
}

.gradient-overlay-container > * {
  position: relative;
  z-index: 2;
}

.gradient-overlay-container-270 {
  position: relative;
  color: white;
		background-blend-mode: multiply, normal;
}

.gradient-overlay-container-270::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(270deg, var(--primary-green) 10%, var(--dark-blue-bg) 100%);
  pointer-events: none;
  z-index: 0;
	opacity: 0.8;
}

.gradient-overlay-container-270 > * {
  position: relative;
  z-index: 2;
}

.gb-highlight {
    background-color: transparent !important;
    background-image: linear-gradient(227deg, var(--dark-blue-bg) 0%, var(--primary-green) 100%) !important;
    background-clip: text !important;
    -webkit-background-clip: text !important;
    -webkit-text-fill-color: transparent !important;
}


body:not(.resize-header) #mobile-header img {
  filter: unset;
}


