/*
Theme Name: GeneratePress
Theme URI: https://generatepress.com
Author: Tom Usborne
Author URI: https://tomusborne.com
Description: GeneratePress is a lightweight WordPress theme built with a focus on speed and usability. Performance is important to us, which is why a fresh GeneratePress install adds less than 10kb (gzipped) to your page size. We take full advantage of the block editor (Gutenberg), which gives you more control over creating your content. If you use page builders, GeneratePress is the right theme for you. It is completely compatible with all major page builders, including Beaver Builder and Elementor. Thanks to our emphasis on WordPress coding standards, we can boast full compatibility with all well-coded plugins, including WooCommerce. GeneratePress is fully responsive, uses valid HTML/CSS, and is translated into over 25 languages by our amazing community of users. A few of our many features include 60+ color controls, powerful dynamic typography, 5 navigation locations, 5 sidebar layouts, dropdown menus (click or hover), and 9 widget areas. Learn more and check out our powerful premium version at https://generatepress.com
Version: 3.5.1
Requires at least: 6.1
Tested up to: 6.6
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: generatepress
Tags: two-columns, three-columns, one-column, right-sidebar, left-sidebar, footer-widgets, blog, e-commerce, flexible-header, full-width-template, buddypress, custom-header, custom-background, custom-menu, custom-colors, sticky-post, threaded-comments, translation-ready, rtl-language-support, featured-images, theme-options

GeneratePress, Copyright 2014-2024 EDGE22 Studios LTD.
GeneratePress is distributed under the terms of the GNU GPL

GeneratePress is based on Underscores http://underscores.me/, (C) 2012-2024 Automattic, Inc.

Actual CSS can be found in /assets/css/ folder.
*/
@font-face {
    src: url('https://thegp.us/thegp/wp-content/themes/generatepress/assets/fonts/Americana Font Regular.otf') format('opentype');
    font-family: Americana;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: Questrial;
    font-style: normal;
    font-display: swap;
    src: url('https://thegp.us/thegp/wp-content/themes/generatepress/assets/fonts/Questrial-Regular.ttf') format('truetype');
}

body,
p,
span,
li,
a,
button,
input,
textarea {
    font-family: Questrial, sans-serif !important;
    letter-spacing: 0.5px;
}


h1,
h2,
h3,
h4,
h5,
h6 {
    font-family: Americana, serif !important;
}

.banner_section .elementor-heading-title.elementor-size-default {
	font-family: "Montserrat", Sans-serif !important;
	font-size: 47px !important;
	font-weight: 500 !important;
}

.banner_section h1.elementor-heading-title.elementor-size-default {
	font-family: "Poppins", Sans-serif !important;
	font-size: 21px !important;
	font-weight: 300 !important;
}

.breadcrumb a {
    color: #fff !important;
}

a.carousel-arrow {
    background: #0c71c3;
    color: #fff;
    padding: 20px;
    border-radius: 20px;
}

button,
input[type="button"],
input[type="reset"],
input[type="submit"],
input[type="email"],
input[type="number"],
input[type="password"],
input[type="search"],
input[type="tel"],
input[type="text"],
input[type="url"],
select,
textarea {
    padding: 15px 40px 15px 40px;
}

/* Timeline CSS */
.timeline-container {
    max-width: 1000px;
    margin: 0 auto;
}

#timeline .timeline-item:after,
#timeline .timeline-item:before {
    content: '';
    display: block;
    width: 100%;
    clear: both;
}

#timeline {
    width: 100%;
    margin: 30px auto;
    position: relative;
    padding: 0 20px;
    -webkit-transition: all 0.4s ease;
    -moz-transition: all 0.4s ease;
    -ms-transition: all 0.4s ease;
    transition: all 0.4s ease;
}

#timeline:before {
    content: "";
    height: 100%;
    left: 50%;
    top: 0;
    position: absolute;
}

#timeline:after {
    content: "";
    clear: both;
    display: table;
    width: 100%;
}

#timeline .timeline-item {
    margin-bottom: 50px;
    position: relative;
}

#timeline .timeline-item .timeline-icon i {
    position: relative;
}

#timeline .timeline-item .timeline-icon {
    width: 50px;
    height: 50px;
    position: absolute;
    top: 0;
    left: 50%;
    overflow: hidden;
    margin-left: -23px;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -ms-border-radius: 50%;
    border-radius: 50%;
}

#timeline .timeline-item .timeline-content {
    width: 45%;
    box-shadow: rgba(0, 0, 0, 0.1) 0px 10px 15px -3px, rgba(0, 0, 0, 0.05) 0px 4px 6px -2px;
    -webkit-border-radius: 20px;
    -moz-border-radius: 20px;
    -ms-border-radius: 20px;
    border-radius: 20px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -ms-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

#timeline .timeline-item .timeline-content h2 {
    padding: 15px;
    margin: -20px -20px 0 -20px;
    font-weight: 300;
    -webkit-border-radius: 3px 3px 0 0;
    -moz-border-radius: 3px 3px 0 0;
    -ms-border-radius: 3px 3px 0 0;
    border-radius: 20px 20px 0 0;
    font-size: 22px;
}

#timeline .timeline-item .timeline-content p {
    padding-top: 10px;
    padding-bottom: 0px;
    margin-bottom: 10px;
}

#timeline .timeline-item .timeline-content:before {
    content: '';
    position: absolute;
    left: 45%;
    top: 20px;
    width: 0;
    height: 0;
    border-top: 7px solid transparent;
    border-bottom: 7px solid transparent;
}

#timeline .timeline-item .timeline-content.right {
    float: right;
}

#timeline .timeline-item .timeline-content.right:before {
    content: '';
    right: 45%;
    left: inherit;
    border-left: 0;
}

.service_sidebar_sec .widget-title {
	margin-bottom: 20px;
	font-size: 30px;
	line-height: 1.5;
	font-weight: 600;
	text-transform: none;
	color: #3aa348;
}

.ns {
    width: 90%;
}

.ns p {
    margin: 0;
}

.ns .wpcf7-spinner {
    display: none;
}

input.email-getconnected {
    width: 100%;
    border: none;
    background: #fff;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="tel"],
input[type="number"],
textarea,
select {
    color: var(--contrast);
    background-color: var(--base-2);
    border-color: var(--base);
    width: 100%;
}

.contact-page input[type="submit"] {
    background-color: #0C71C3;
    border-radius: 10px;
}

.service_sidebar_sec .widget ul li::after {
    content: "";
    display: block;
    width: 100%;
    border-bottom: 1px solid #b7b7b7;
    margin-top: 10px;
}


/* Timeline CSS */
.premium_slider_section .elementor-widget-container {
    min-height: 300px !important;
}

.future_forward_section .elementor-widget-container {
    min-height: 350px !important;
}

.future_forward_section .elementor-element>.elementor-widget-container {
    background: #fff;
}

.one-container .site-content {
    padding: 0;
}

.allpoints .elementor-widget-icon-box {
    border-radius: 25px 25px 25px 25px;
    box-shadow: 0px 0px 10px 0px rgba(189, 189, 189, 0.5);

}

.allpoints .elementor-widget-icon-box:hover {
    background: #f6fff4;
}

.clientlogo img {
    background: #fff;
    border-radius: 10px;
}

.ns input[type="submit"] {
    background-color: #0C71C3;
    border-radius: 10px;
    position: absolute;
    right: 5px;
    top: 4px;
}

.thegp_button .elementor-button,
.wpcf7-form-control.wpcf7-submit.thegp_button {
    /*background-image: linear-gradient(to right, #3aa348, #c1d82f, #c1d82f, #3aa348);*/
    background-color: #3aa348;
    /*box-shadow: 0 4px 15px 0 #3aa348;*/
    border-radius: 10px !important;
    border: none;
    background-size: 310% 100%;
    moz-transition: all .4s ease-in-out;
    -o-transition: all .4s ease-in-out;
    -webkit-transition: all .4s ease-in-out;
    transition: all .4s ease-in-out;
}

.thegp_button .elementor-button:hover,
.wpcf7-form-control.wpcf7-submit.thegp_button:hover {
    background-position: 105% 0;
    moz-transition: all 0.6s ease-in-out;
    -o-transition: all 0.6s ease-in-out;
    -webkit-transition: all 0.6s ease-in-out;
    transition: all 0.6s ease-in-out;
}

.premium-testimonial-box .slick-arrow, .premium-carousel-wrapper .slick-arrow {
    color: #FFFFFF;
    background-color: #3aa348;
    /*background-image: linear-gradient(to right, #3aa348, #c1d82f70, #c1d82f, #3aa348);*/
    border-radius: 10px !important;
    border: none;
    background-size: 310% 100%;
    moz-transition: all .4s ease-in-out;
    -o-transition: all .4s ease-in-out;
    -webkit-transition: all .4s ease-in-out;
    transition: all .4s ease-in-out;
}

/*header .hfe-nav-menu li {
    display: inline-flex;
    align-items: center;
}

header .hfe-nav-menu li a {
    font-weight: 400 !important;
    padding: 15px 25px !important;
}

header .menu-item.current-menu-item a.hfe-menu-item {
    background-image: linear-gradient(to right, #3aa348, #c1d82f, #c1d82f, #3aa348);
    background-size: 310% 100%;
    color: #fff !important;
    border-radius: 10px;
    font-weight: 600 !important;
    padding: 10px 25px !important;
}*/

.elementor-widget-navigation-menu .hfe-nav-menu-layout:not(.hfe-pointer__framed) .menu-item.parent a.hfe-menu-item::before,
.elementor-widget-navigation-menu .hfe-nav-menu-layout:not(.hfe-pointer__framed) .menu-item.parent a.hfe-menu-item::after {
    content: "____";
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: transparent !important;
    font-family: 'americana';
    position: absolute;
    top: 25px;
}

.future_forward_section .elementor-icon svg path,
.premium_slider_section .elementor-icon svg path,
.allpoints .elementor-icon svg path {
    fill: #3aa348;
}

.service_sidebar_sec #menu-service-sidebar-menu li a {
	color: #000 !important;
}

.ehf-header #masthead {
    z-index: 99;
    position: sticky;
    top: 0;
}

.cf7-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
}

.cf7-half {
  width: 48%;
}

.cf7-full {
  width: 100%;
}

.cf7-upload-wrap {
  position: relative;
  display: inline-block;
  width: 100%;
}

.cf7-upload-wrap label {
  display: block;
  font-weight: 500;
  font-size: 15px;
}

.cf7-upload-input {
  position: relative;
  width: 100%;
  max-width: 100%;
  padding: 15px 20px;
  font-size: 14px;
  background-color: #f7f8f9;
	border: 1px solid #f0f0f0;
  color: #333;
  cursor: pointer;
  transition: border-color 0.3s ease, background-color 0.3s ease;
}

.cf7-upload-input:hover {
  border-color: #888;
  background-color: #fafafa;
}

.service_points_section .elementor-widget-container ul li::marker, 
.service_points_section .elementor-widget-container ul li strong {
	color: #3aa348;
}

.service_points_section .elementor-widget-container ul {
	margin-left: 15px;
}
/* for back to top buttom */
a.generate-back-to-top:hover, 
a.generate-back-to-top:focus, 
a.generate-back-to-top {
    background-color: #a1cd3a;
    box-shadow: rgba(0, 0, 0, 0.12) 0px 1px 3px, rgba(0, 0, 0, 0.24) 0px 1px 2px;
}
.gp-icon svg {
    top: .150em;
}
/* for recaptcha hide */
.grecaptcha-badge {
    display: none !important;
}
@media screen and (max-width: 768px) {
	.banner_section .elementor-heading-title.elementor-size-default {
		font-size: 30px !important;
	}

	.banner_section h1.elementor-heading-title.elementor-size-default {
		font-size: 15px !important;
	}
	
	 .cf7-half {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
    #timeline {
        margin: 30px;
        padding: 0px;
        width: 90%;
    }

    #timeline:before {
        left: 0;
    }

    #timeline .timeline-item .timeline-content {
        width: 90%;
        float: right;
    }

    #timeline .timeline-item .timeline-content:before,
    #timeline .timeline-item .timeline-content.right:before {
        left: 10%;
        margin-left: -6px;
        border-left: 0;
    }

    #timeline .timeline-item .timeline-icon {
        left: 0;
    }
}

@media only screen and (max-width: 600px) {

    .ns input[type="submit"] {
        position: relative !important;
        right: unset !important;
        top: unset !important;
        width: 100% !important;
    }
}