/*
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.2
Requires PHP: 5.6
Version: 1.0.1
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), 2023.
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 {
    margin-bottom: 10px;
    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;
    border-radius: 0;
    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;
    }

    /* Mobile: stack archive menu buttons; stop Thai text stacking vertically */
    html,
    body {
        overflow-x: clip;
    }

    /* Green menu buttons replace the overlay toggle on small screens */
    .wp-block-navigation__responsive-container-open {
        display: none !important;
    }

    .wp-block-columns {
        flex-direction: column !important;
    }

    .wp-block-column {
        flex-basis: 100% !important;
        width: 100% !important;
    }

    .wp-block-group.is-content-justification-space-between.is-layout-flex {
        flex-direction: column !important;
        align-items: stretch !important;
        gap: 16px !important;
    }

    .rru-archive-topbar .wp-block-group.is-content-justification-space-between.is-layout-flex,
    .rru-archive-topbar .alignwide.is-layout-flex {
        flex-direction: row !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 10px !important;
    }

    .wp-block-buttons.is-nowrap,
    .wp-block-buttons.is-horizontal {
        flex-direction: column !important;
        flex-wrap: wrap !important;
        align-items: stretch !important;
        width: 100% !important;
        gap: 10px !important;
    }

    .wp-block-button,
    .wp-block-button.has-custom-width,
    .wp-block-button[class*="wp-block-button__width-"] {
        width: 100% !important;
    }

    .wp-block-button .wp-block-button__link {
        display: block !important;
        width: 100% !important;
        box-sizing: border-box !important;
        white-space: normal !important;
        writing-mode: horizontal-tb !important;
        text-orientation: mixed !important;
        text-align: center !important;
        line-height: 1.45 !important;
        padding: 14px 16px !important;
        height: auto !important;
        min-height: 0 !important;
    }

    .wp-block-site-title {
        font-size: clamp(1.35rem, 6vw, 2rem) !important;
        line-height: 1.25 !important;
    }

    img,
    video,
    iframe,
    .wp-block-image img {
        max-width: 100% !important;
        height: auto !important;
    }

    .ultp-block-wrapper,
    .ultp-block-items-wrap,
    .ultp-block-item {
        max-width: 100% !important;
    }

    .wp-block-group.has-primary-background-color {
        padding: 12px 16px !important;
    }

    .wp-block-button .wp-block-button__link {
        border-radius: 12px !important;
        font-size: 0.95rem !important;
        padding: 12px 14px !important;
    }

    .wp-block-site-title {
        margin-block: 4px 8px !important;
    }
}

/* --- Archive polish (desktop + shared)
-------------------------------------------------------- */
body {
    color: #1a1f24;
    -webkit-font-smoothing: antialiased;
}

.wp-block-group.has-primary-background-color {
    font-size: 0.9rem;
    letter-spacing: 0.01em;
}

.wp-block-group.has-primary-background-color a {
    color: #fff !important;
    text-decoration: none !important;
    transition: opacity 0.2s ease;
}

.wp-block-group.has-primary-background-color a:hover,
.wp-block-group.has-primary-background-color a:focus-visible {
    opacity: 0.88;
}

.wp-block-site-title {
    font-size: clamp(1.6rem, 3.2vw, 2.75rem) !important;
    line-height: 1.2 !important;
    max-width: 100%;
}

.wp-block-site-title,
.wp-block-site-title a {
    color: #1a1f24 !important;
    text-wrap: balance;
    overflow-wrap: anywhere;
    word-break: break-word;
}

/* Stop pill menu clipping off the right edge */
.wp-block-buttons.is-nowrap {
    flex-wrap: wrap !important;
    row-gap: 10px !important;
    column-gap: 10px !important;
    max-width: 100%;
}

@media screen and (min-width: 1000px) {
    .wp-block-button[class*="wp-block-button__width-"] {
        width: auto !important;
    }

    .wp-block-button[class*="wp-block-button__width-"] .wp-block-button__link {
        width: auto !important;
    }
}

.wp-block-button .wp-block-button__link {
    transition: background-color 0.2s ease, box-shadow 0.2s ease, transform 0.15s ease;
    box-shadow: 0 1px 0 rgba(0, 0, 0, 0.04);
}

.wp-block-button .wp-block-button__link:hover {
    background-color: #017a38 !important;
    box-shadow: 0 4px 14px rgba(1, 148, 68, 0.22);
}

.wp-block-button .wp-block-button__link:focus-visible {
    outline: 3px solid #0b5cab;
    outline-offset: 2px;
}

.wp-block-image img {
    border-radius: 8px;
}

.wp-block-heading {
    letter-spacing: 0.03em;
}

.ultp-block-item {
    border-radius: 10px;
    overflow: hidden;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.ultp-block-item:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
}

.ultp-block-content,
.ultp-block-title a {
    overflow-wrap: anywhere;
}

/* --- New archive header
-------------------------------------------------------- */
.rru-archive-header {
    width: 100%;
}

.rru-archive-topbar {
    border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}

.rru-archive-topbar .alignwide {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    width: 100% !important;
}

.rru-archive-topbar__meta {
    margin: 0 !important;
    line-height: 1.4;
    flex: 1 1 auto;
    min-width: 0;
}

.rru-archive-topbar__meta a {
    color: #fff !important;
    text-decoration: underline;
    text-underline-offset: 2px;
}

.rru-archive-topbar__social,
.rru-archive-topbar__social.is-layout-flex {
    margin: 0 !important;
    margin-left: auto !important;
    flex: 0 0 auto !important;
    width: auto !important;
    max-width: none !important;
    gap: 0 !important;
    justify-content: flex-end !important;
}

.rru-archive-topbar__social .wp-social-link {
    margin: 0 !important;
    background: rgba(255, 255, 255, 0.18) !important;
    border-radius: 999px !important;
    width: 34px !important;
    height: 34px !important;
}

.rru-archive-topbar__social .wp-social-link:hover {
    background: rgba(255, 255, 255, 0.28) !important;
}

.rru-archive-topbar__social .wp-social-link a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 34px !important;
    height: 34px !important;
    padding: 0 !important;
    color: #fff !important;
}

.rru-archive-topbar__social .wp-social-link svg {
    width: 15px !important;
    height: 15px !important;
    fill: #fff !important;
}

.rru-archive-brandbar {
    border-bottom: 1px solid #e6ece7;
    background: #fff;
}

.rru-archive-eyebrow {
    margin: 0 !important;
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: none;
}

.rru-archive-title,
.rru-archive-title a {
    margin: 0 !important;
    font-size: clamp(1.5rem, 3vw, 2.4rem) !important;
    line-height: 1.2 !important;
    font-weight: 700 !important;
    color: #1a1f24 !important;
    text-decoration: none !important;
}

.rru-archive-nav {
    gap: 10px !important;
    width: 100%;
}

.rru-archive-nav .wp-block-button {
    width: auto !important;
    margin: 0 !important;
}

.rru-archive-nav .wp-block-button__link {
    border-radius: 999px !important;
    padding: 11px 18px !important;
    font-size: 0.95rem !important;
    line-height: 1.35 !important;
    white-space: normal !important;
}

@media screen and (max-width: 999px) {
    .rru-archive-topbar {
        padding-top: 12px !important;
        padding-bottom: 12px !important;
    }

    .rru-archive-topbar .alignwide {
        flex-direction: row !important;
        align-items: center !important;
        gap: 10px !important;
    }

    .rru-archive-topbar__meta {
        font-size: 0.8rem !important;
    }

    .rru-archive-brandbar .alignwide {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 10px !important;
    }

    .rru-archive-nav {
        flex-direction: column !important;
        align-items: stretch !important;
    }

    .rru-archive-nav .wp-block-button,
    .rru-archive-nav .wp-block-button__link {
        width: 100% !important;
        text-align: center !important;
        border-radius: 12px !important;
    }
}