/*
Theme Name: Greengrass
Theme URI: https://flythemes.net/wordpress-themes/free-greengrass-wordpress-theme/
Author: Flythemes
Author URI: https://flythemes.net
Description: Greengrass block editor garden WordPress theme perfect solution for your gardern WordPress theme. Are you a garden enthusiast or a professional landscaper looking to create a stunning website that showcases your work? Look no further! The Garden WordPress Theme is here to provide you with a powerful and intuitive tool for designing and customizing your garden-focused website. The Garden WordPress Theme offers a block-based approach to website design, allowing you to effortlessly create visually striking and engaging layouts. With an extensive collection of blocks specifically tailored for garden-related content, you can easily arrange and customize various elements to build the garden website of your dreams. Whether you want to showcase different garden styles, highlight specific plants and flowers, or provide gardening tips and tutorials, the block editor provides you with the flexibility to create unique and captivating web pages. Simply drag and drop the blocks, adjust the settings, and watch your garden website come to life. Each block is thoughtfully designed to showcase your garden projects, plant collections, and gardening expertise in the most captivating way possible. Customize the colors, fonts, and styles to match your branding and create a seamless user experience.
Requires at least: 6.1
Tested up to: 6.7
Requires PHP: 7.2
Version: 1.0.2
License: GNU General Public License
License URI: https://www.gnu.org/licenses/gpl-3.0.en.html
Text Domain: greengrass
Tags: portfolio, e-commerce, blog, one-column, two-columns, three-columns, custom-colors, custom-menu, custom-logo, editor-style, featured-images, full-site-editing, block-patterns, rtl-language-support, sticky-post, threaded-comments, right-sidebar, custom-background, wide-blocks

Greengrass is based on Underscores theme(Underscores is distributed under the terms of the GNU GPL v2 or later).
Greengrass WordPress Theme has been created by Flythemes(flythemes.net), 2025.
Greengrass WordPress Theme is released under the terms of GNU GPL
*/

a{
    -webkit-transition: all .2s ease-in-out;
    transition: all .2s ease-in-out;
}
.wp-block-navigation:not(.has-background) .wp-block-navigation__submenu-container{
    background-color: var(--wp--preset--color--white);
}

.wp-block-navigation__responsive-container .wp-block-navigation-link a{
    color: var(--wp--preset--color--white);
}

.pos-relative{
    position: relative;
}

.vertical-middle img{
    vertical-align: middle;
}

.shadow{
    box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
}

.section_head {
    margin-bottom: 50px;
}

h4.section_sub_title {
    letter-spacing: 2px;
    color: var(--wp--preset--color--primary);
    margin-bottom: 5px;
}

h2.section_title {
    color: var(--wp--preset--color--secondary);
    position: relative;
    margin-bottom: 30px;
    padding-bottom: 20px;
    letter-spacing: 2px;
}

h2.section_title:after {
    content: "";
    border-top: 3px double var(--wp--preset--color--primary);
    position: absolute;
    width: 100px;
    height: 1px;
    bottom: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
}

.no-pesdue:before,
.no-pesdue:after{
    content: none !important;
}

/**** Service Box ****/
.service-box-content{
    position: relative;
    text-align: center;
    padding: 70px 0 20px;
    z-index: 0;
}
.service-box-icon{
    position: absolute;
    width: 100px;
    height: 100px;
    background-color: #ffffff;
    padding: 25px;
    border-radius: 50px;
    top: 0;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
    box-shadow: 0px 16px 32px 0px rgba(0, 0, 0, 0.04);
    z-index: 1;
}
.service-number{
    width: 100%;
    font-size: 150px;
    font-weight: 700;
    font-family: 'Dosis';
    -webkit-text-fill-color: transparent;
    -webkit-text-stroke-width: 1px;
    -webkit-text-stroke-color: #e7e7e7;
    line-height: 1;
    transition: 0.3s;
    position: absolute;
    z-index: -1;
    left: 50%;
    top: 100%;
    transform: translate(-50%, -100%);
}

/**** About Box ****/
.about-since{ 
    width: 46%;
    position: absolute;
    bottom: 20px;
    left: 20px;
}

/**** Whyus Box ****/
.whyus-icon{
    width: 85px;
    height: 85px;
    margin: 0 auto 30px;
    position: relative;
    z-index: 1;
}

/**** Portfolio Box ****/
.portfolio-box{
    position: relative;
}
.portfolio-info{
    position: absolute;
    left: 20px;
    right: 20px;
    bottom: 20px;
}

/**** Team Members ****/
.member-social-icon{
    margin-top: -44px !important;
    position: relative;
}

/**** Working Process ****/
.process-icon{
    width: 100px;
    height: 100px;
    margin: 0 auto 25px;
    position: relative;
}

.process-icon figure{
    position: relative;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.process-num {
    width: 50px;
    height: 50px;
    border-radius: 30px;
    background-color: var(--wp--preset--color--secondary);
    color: #ffffff;
    font-size: initial;
    font-weight: 700;
    line-height: 50px;
    position: absolute;
    right: -15px;
    top: -15px;
    text-align: center;
}

/**** Testimonials ****/
.testi-thumb{
    margin-top: -70px !important;
}

.news-box {
    position: relative;
    margin: 15px 0;
}

.news-box .news-thumb {
    position: relative;
    margin-bottom: 30px;
}

.news-box .news-thumb .news-thumb-wrap {
    overflow: hidden;
    margin-bottom: 0;
    border-radius: 12px;
    position: relative;
}

.news-box .news-content {
    position: relative;
    overflow: hidden;
}

.footer-info .wp-block-image img{
    vertical-align: middle;
}

.newsletter input[type="email"] {
    margin: 0 0 10px;
    height: 50px;
    text-align: left;
    box-shadow: none;
    color: inherit;
    border-radius: 40px;
}

.newsletter input[type="submit"] {
    width: 100%;
    height: 40px;
    background-color: var(--wp--preset--color--primary);
    border: none;
    color: #ffffff;
    cursor: pointer;
    -webkit-appearance: button;
    -moz-appearance: button;
    appearance: button;
    box-shadow: none;
    border-radius: 40px;
}

.newsletter form p {
    margin-bottom: 0;
}

form {
    position: relative;
}

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,
select {
    width: 100%;
    margin: 0;
    padding: 10px 15px;
    border: 1px solid #ebebeb;
    outline: 0;
    resize: none;
    line-height: 20px;
    background: none;
    color: #000000;
    font-weight: 400;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}
select::-ms-expand {
    display: none; /* hide the default arrow in ie10 and ie11 */
}

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,
select:focus {
    border-color: var(--wp--preset--color--primary);
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
    -webkit-appearance: button;
    -moz-appearance: button;
    appearance: button;
    cursor: pointer;
    border: none;
    outline: none;
    padding: 12px 20px;
    -webkit-transition: all 0.3s ease-in-out;
    transition: all 0.3s ease-in-out;
    background-color: var(--wp--preset--color--primary);
    color: #ffffff;
}
html input[type="button"],
input[type="reset"],
input[type="submit"] {
    text-align: center;
    letter-spacing: 2px;
}

.wpcf7-form label {
    display: block;
    text-transform: uppercase;
    font-size: 12px;
    margin: 0 0 8px;
    color: #000000;
    font-weight: 700;
}

.form-group {
    margin-bottom: 20px;
}

.form-group p{
    margin: 0;
}

.form-group.half {
    width: 48%;
    margin-right: 4%;
    float: left;
}

.form-group.half.last {
    margin-right: 0;
}

.form-group.third {
    width: 32%;
    margin-right: 2%;
    float: left;
}

.form-group.third.last {
    margin-right: 0;
}


/* --- Block Media Quries
-------------------------------------------------------- */
/* --- > Media Queries
-------------------------------------------------------- */
/* --- > 781px
-------------------------------------------------------- */
@media screen and (max-width:999px) {
    .wp-block-navigation__responsive-container,
    .wp-block-navigation__responsive-container .wp-block-navigation__responsive-container-content{
        display: none;
    }

    .wp-block-navigation__responsive-container-close,
    .wp-block-navigation__responsive-container-open{
        background: var(--wp--preset--color--primary);
    }

    .wp-block-navigation__responsive-container-close svg,
    .wp-block-navigation__responsive-container-open svg{
        width: 42px;
        height: 42px;
    }
    
    .wp-block-navigation__responsive-container-open svg path,
    .wp-block-navigation__responsive-container-close svg path{
        fill: var(--wp--preset--color--white);
    }

    .wp-block-navigation__responsive-container-close{
        top: 20px;
        right: 20px;
    }

    .wp-block-navigation__responsive-container-open:not(.always-shown){
        display: block;
    }

    .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
        display: none; 
    }

    .wp-block-navigation:not(.has-background) .wp-block-navigation__responsive-container.is-menu-open{
        background-color: var(--wp--preset--color--secondary);
    }

    .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content{
        padding: 1.5em;
    }

    .wp-block-navigation .wp-block-navigation__responsive-container-content ul.wp-block-navigation__container {
        width: 100%;
        gap: 0 !important;
        border-bottom: none;
    }
    .wp-block-navigation .wp-block-navigation__responsive-container-content ul.wp-block-navigation__container li.wp-block-navigation-item {
        width: 100%;
        gap: 0 !important;
        border: none !important;
    }
    .wp-block-navigation .wp-block-navigation__responsive-container-content ul.wp-block-navigation__container li.wp-block-navigation-item a {
        width: calc( 100% - 48px );
        padding: 12px 24px 12px;
        line-height: 30px;
    }

    /*
    * Submenu Css
    */

    .wp-block-navigation .wp-block-navigation__responsive-container-content ul.wp-block-navigation__container li.wp-block-navigation-item .wp-block-navigation__submenu-icon {
        display: block !important;
        margin-left: 15px;
        padding: 3px 10px;
        float: right;
        font-size: 19px;
        line-height: 1;
        position: absolute;
        right: 0;
        top: 0;
        height: 42px;
        width: 42px;
    }
    .wp-block-navigation .wp-block-navigation__responsive-container-content ul.wp-block-navigation__container li.wp-block-navigation-item .wp-block-navigation__submenu-icon svg {
        stroke: var(--wp--preset--color--secondary);
        display: block;
        width: 30px;
        height: 13px;
        margin: 0 !important;
        padding: 0 !important;
    }
    .wp-block-navigation .wp-block-navigation__responsive-container-content ul.wp-block-navigation__container li.wp-block-navigation-item ul.wp-block-navigation__submenu-container {
        width: 100%;
        gap: 0;
        margin: 0;
        padding: 0;
        display: none;
        box-shadow: none;
    }
    .wp-block-navigation .wp-block-navigation__responsive-container-content ul.wp-block-navigation__container li.wp-block-navigation-item ul.wp-block-navigation__submenu-container li.wp-block-navigation-item a {
        padding-left: 35px;
    }
    .wp-block-navigation .wp-block-navigation__responsive-container-content ul.wp-block-navigation__container li.wp-block-navigation-item .wp-block-navigation-submenu__toggle[aria-expanded=true] + ul.wp-block-navigation__submenu-container {
        display: block;
        margin: 0;
        padding: 0;
    }
	
}

/** 
* Image slider in WordPress by WPCookie - Convert Gallery block into image slider
* https://redpishi.com/wordpress-tutorials/image-slider-in-wordpress-without-plugins/
*/
add_filter( 'wp_footer', function ( ) {  ?>
<script>
document.querySelectorAll(".wp-slider")?.forEach( slider => {
    var src = [];
    var alt = [];
    var img = slider.querySelectorAll("img");
    img.forEach( e => { src.push(e.src);   if (e.alt) { alt.push(e.alt); } else { alt.push("image"); } })
    let i = 0;
    let image = "";
    let myDot = "";
    src.forEach ( e => { image = image + `<div class="wpcookie-slide" > <img decoding="async" loading="lazy" src="${src[i]}" alt="${alt[i]}" > </div>`; i++ })
    i = 0;
    src.forEach ( e => { myDot = myDot + `<span class="wp-dot"></span>`; i++ })
    let dotDisply = "none";
    if (slider.classList.contains("dot")) dotDisply = "block";    
    const main = `<div class="wp-slider">${image}<span class="wpcookie-controls wpcookie-left-arrow"  > <svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" width="35" height="35" color="#fff" style="enable-background:new 0 0 50 50" viewBox="0 0 512 512"><path d="M352 115.4 331.3 96 160 256l171.3 160 20.7-19.3L201.5 256z"/></svg> </span> <span class="wpcookie-controls wpcookie-right-arrow" > <svg xmlns="http://www.w3.org/2000/svg" xml:space="preserve" width="35" height="35" color="#fff" style="enable-background:new 0 0 50 50" viewBox="0 0 512 512"><path d="M180.7 96 352 256 180.7 416 160 396.7 310.5 256 160 115.4z"/></svg> </span> <div class="dots-con" style="display: ${dotDisply}"> ${myDot}</div></div> `       
    slider.insertAdjacentHTML("afterend",main  );
    slider.remove();
})

document.querySelectorAll(".wp-slider")?.forEach( slider => { 
var slides = slider.querySelectorAll(".wpcookie-slide");
var dots = slider.querySelectorAll(".wp-dot");
var index = 0;
slider.addEventListener("click", e => {if(e.target.classList.contains("wpcookie-left-arrow")) { prevSlide(-1)} } )
slider.addEventListener("click", e => {if(e.target.classList.contains("wpcookie-right-arrow")) { nextSlide(1)} } )
function prevSlide(n){
  index+=n;
  console.log("prevSlide is called");
  changeSlide();
}
function nextSlide(n){
  index+=n;
  changeSlide();
}
changeSlide();
function changeSlide(){   
  if(index>slides.length-1)
    index=0;  
  if(index<0)
    index=slides.length-1;  
    for(let i=0;i<slides.length;i++){
      slides[i].style.display = "none";
      dots[i].classList.remove("wpcookie-slider-active");      
    }
    slides[index].style.display = "block";
    dots[index].classList.add("wpcookie-slider-active");
}
 } )

</script>

<style>
wp-slider * {
padding = 0;
margin = 0;
}
.wp-slider{
  margin:0 auto;
  position:relative;
  overflow:hidden;
}
.wpcookie-slide{
  max-height: 100%;
  width:100%;
  display:none;
  animation-name:fade;
  animation-duration:1s;
}
.wpcookie-slide img{
 width:100%; 
}
@keyframes fade{
  from{opacity:0.5;}
  to{opacity:1;}
}
.wpcookie-controls{
  position:absolute;
  top:50%;
  font-size:1.5em;
  padding:15px 10px;
  border-radius:5px;
  background:white;
  cursor: pointer;
  transition: 0.3s all ease;
  opacity: 15%;
  transform: translateY(-50%);
}
.wpcookie-controls:hover{
  opacity: 60%;
}
.wpcookie-left-arrow{
  left:0px;
   border-radius: 0px 5px 5px 0px;   
}
.wpcookie-right-arrow{
  right:0px;
 border-radius: 5px 0px 0px 5px;
 
}
.wp-slider svg {
    pointer-events: none;
}
.dots-con{
  text-align:center;
}
.wp-dot{
  display:inline-block;
  background:#c4c4c4;
  padding:8px;
  border-radius:50%;
  margin:10px 5px;
}
.wpcookie-slider-active{
  background:#818181;
}
@media (max-width:576px){
  .wp-slider{width:100%;
  }  
  .wpcookie-controls{
    font-size:1em;
    position: absolute;
    display: flex;
    align-items: center;
  }  
  .dots-con{
    display:none;
  }
}
</style>
<?php });