/* Custom Styles for Lettings24 Theme */

/* --- Mobile Sidebar --- */
@media only screen and (max-width: 767px) {
	.sidebar {
		display: none !important;
	}

    /* --- Mobile Post List Layout (Revised v8 - More Specificity) --- */
    /* Apply to index and search results using body classes */
    body.home .post-wrap article.post,
    body.search-results .post-wrap article.post {
        display: flex !important;
        flex-direction: row !important; /* Force row */
        gap: 15px !important;
        padding-top: 0 !important;
        position: static !important;
        border-bottom: 1px solid #eee !important;
        margin-bottom: 20px !important;
        padding-bottom: 20px !important;
        opacity: 1 !important;
        transform: none !important;
        min-height: auto !important;
        align-items: flex-start !important; /* Align items to the top */
    }
    body.home .post-wrap article.post:last-child,
    body.search-results .post-wrap article.post:last-child {
        border-bottom: none !important;
        margin-bottom: 0 !important;
        padding-bottom: 0 !important;
    }
    body.home .post-wrap article.post .cat,
    body.search-results .post-wrap article.post .cat {
        position: static !important;
        margin-bottom: 5px !important;
        padding-bottom: 0 !important;
        order: 1;
        line-height: 1.2 !important;
        display: block;
    }
    body.home .post-wrap article.post .thumb,
    body.search-results .post-wrap article.post .thumb {
        flex: 0 0 100px !important; /* Fixed width */
        width: 100px !important;
        height: auto !important; /* Maintain aspect ratio */
        float: none !important;
        margin-right: 0 !important;
        margin-bottom: 0 !important;
        order: 0;
        align-self: flex-start;
    }
     body.home .post-wrap article.post .thumb a,
     body.search-results .post-wrap article.post .thumb a {
        display: block; /* Ensure link takes up space */
     }
     body.home .post-wrap article.post .thumb img,
     body.search-results .post-wrap article.post .thumb img {
        display: block; /* Ensure image behaves like block */
        width: 100%;
        height: auto;
     }
    body.home .post-wrap article.post .content,
    body.search-results .post-wrap article.post .content {
       flex: 1 !important; /* Take remaining space */
       display: flex !important;
       flex-direction: column !important;
       order: 1;
       overflow: visible !important;
       justify-content: flex-start;
       min-width: 0; /* Prevent content from pushing thumb */
    }
     body.home .post-wrap article.post .content h3,
     body.search-results .post-wrap article.post .content h3 {
        font-size: 1.05em !important;
        margin-top: 0 !important;
        margin-bottom: 5px !important;
        overflow: visible !important;
        order: 2;
        line-height: 1.3 !important;
    }
    body.home .post-wrap article.post .excerpt-entry,
    body.search-results .post-wrap article.post .excerpt-entry {
       clear: none !important;
       text-align: left !important;
       padding-top: 0 !important;
       font-size: 0.85em !important;
       margin-bottom: 8px !important;
       order: 3;
       line-height: 1.4 !important;
    }
     body.home .post-wrap article.post .post-meta,
     body.search-results .post-wrap article.post .post-meta {
        text-align: left !important;
        margin-top: auto; /* Push meta to bottom */
        order: 4;
        font-size: 0.8em !important;
    }

    /* Specific adjustments for very small mobile if needed */
    @media only screen and (max-width: 479px) {
        body.home .post-wrap article.post .thumb,
        body.search-results .post-wrap article.post .thumb {
             flex: 0 0 80px !important;
             width: 80px !important;
        }
         body.home .post-wrap article.post .content h3,
         body.search-results .post-wrap article.post .content h3 {
            font-size: 1em !important;
        }
         body.home .post-wrap article.post,
         body.search-results .post-wrap article.post {
            gap: 10px !important;
         }
    }
}

/* --- Dim iframe when menu overlay is active --- */
body:has(.menu-overlay.active) #grwf2_zPhZU_nm998 iframe {
    opacity: 0.5 !important;
    pointer-events: none !important;
    transition: opacity 0.3s ease !important;
}
body.slideout-menu-active #grwf2_zPhZU_nm998 iframe {
    opacity: 0.5 !important;
    pointer-events: none !important;
    transition: opacity 0.3s ease !important;
}

/* --- Iframe Alignment & Stacking Context --- */
#grwf2_zPhZU_nm998 {
    width: 100% !important;
    margin: 0 auto !important;
    padding: 0 !important;
    box-sizing: border-box;
    position: relative; /* Establish stacking context */
    z-index: 1 !important; /* Keep below header/menu */
    transform: translateZ(0); /* Force hardware acceleration/new stacking context */
}
#grwf2_zPhZU_nm998 iframe {
    display: block !important; /* Ensure block display */
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    z-index: 1 !important; /* Explicitly set iframe z-index lower */
    position: relative !important; /* Ensure positioning context for z-index */
    vertical-align: top !important; /* Align iframe to top */
}

/* --- Slideout Menu Close Button Visibility & Color --- */
button#close-menu.close-menu {
    color: #000 !important;
    z-index: 1000002 !important;
}
button#close-menu.close-menu i.fa-times {
     color: #000 !important; /* Force icon color */
}
button#close-menu.close-menu.active {
    opacity: 1 !important;
    pointer-events: auto !important;
}

/* --- Header Z-index Adjustment --- */
/* Lower than slideout menu/overlay/close button */
#header {
    z-index: 999990 !important;
}


/* --- Accent Link Color - Targeted Approach v3 --- */

/* Links that SHOULD be Green */
.author a,
.post-meta a,
.entry-meta a,
.widget-categories li a,
.tabs .comments p a,
.tabs .pop-posts .text a,
.featured-posts .author a,
.popular-posts .content-left .author a,
.posts .meta a,
.comments-list .comment-head a,
.activity span a,
.widget-most-popular li a,
.most-popular li a,
.widget-recent .content h3 a,
.popular-posts .content-right h3 a, /* Titles in popular posts widget */
.editors-posts h3 a,               /* Titles in editor posts */
.relate-posts h3 a,                /* Titles in related posts */
.highlights-posts h3 a,            /* Titles in highlight posts */
.recommend-posts h3 a,           /* Titles in recommend posts */
.related-title a,                  /* Titles in related articles section */
.article-meta .article-author a,   /* Author link on single post */
.post-meta .author a,              /* Author link on index/search */
.contact-page .contact-info a, /* Added contact info links */
.about-page .about-links li a, /* Added about page links */
.error-wrap .go-home a /* Added 404 page link */
{
  color: #00824d !important;
}

/* Hover/Focus states for Green links */
.author a:hover,
.post-meta a:hover,
.entry-meta a:hover,
.widget-categories li a:hover,
.tabs .comments p a:hover,
.tabs .pop-posts .text a:hover,
.featured-posts .author a:hover,
.popular-posts .content-left .author a:hover,
.posts .meta a:hover,
.comments-list .comment-head a:hover,
.activity span a:hover,
.widget-most-popular li a:hover,
.most-popular li a:hover,
.widget-recent .content h3 a:hover,
.popular-posts .content-right h3 a:hover,
.editors-posts h3 a:hover,
.relate-posts h3 a:hover,
.highlights-posts h3 a:hover,
.recommend-posts h3 a:hover,
.related-title a:hover,
.article-meta .article-author a:hover,
.post-meta .author a:hover,
.contact-page .contact-info a:hover,
.about-page .about-links li a:hover,
.error-wrap .go-home a:hover
{
  color: #005c36 !important; /* Darker green */
  text-decoration: none !important;
}


/* --- Links that should KEEP their Original Color (Overrides) --- */

/* Header/Top Bar */
.top-wrap .social-links li a, .top-wrap .social-links li a:before { color: #a1a1a1 !important; }
.top-wrap .member-area .login-popup a { color: #fff !important; }
.top-wrap .signup-popup a { color: #181818 !important; background-color: #fff !important; }
.top-wrap .member-area .options li a, .top-wrap .member-area .logout a { color: #181818 !important; }
.header-wrap #searchform #searchsubmit { color: #989a9e !important; }

/* Navigation */
#mainnav > ul > li > a, #mainnav ul.sub-menu > li > a { color: #181818 !important; }
#mainnav li.gn-mega-menu .mega-item-wrap .mega-item h5 a { color: #282828 !important; }
#mainnav li.gn-mega-menu .nav-mega-item a { color: #282828 !important; }
#mainnav-mobi ul > li > a, #mainnav-mobi > ul > li.menu-addon span a, #mainnav-mobi .social-mobi a { color: #fff !important; }
.navigation-panel ul li a { color: #181818 !important; }
#slideout-menu li a { color: #000 !important; } /* Slideout menu links */

/* Buttons & Similar Elements */
button, input[type="button"], input[type="reset"], input[type="submit"], .posts .load-comment a { color: #fff !important; }
.about-page .about-twitter .follow-us a { color: #fff !important; }
.post-single .helpful a.like { color: #fff !important; background-color: #1ca458 !important; }
.post-single .helpful a.dislike { color: #7d7d7d !important; background-color: #ebebeb !important; }
.posts .tags a { color: #b7b7b7 !important; border: 1px solid #e5e5e5 !important; }
.article-category a { color: #333 !important; background-color: #f0f0f0 !important; }
.tag { color: #444 !important; background: #f5f5f5 !important; }

/* Widgets & Tabs */
.tabs .menu-tab li a { color: #2d3340 !important; background-color: #f5f5f5 !important; }
.tabs .menu-tab li.active a { background-color: #fff !important; border: 1px solid #ebebeb !important; color: #2d3340 !important; }
.tabs.style2 .menu-tab li a { color: #929292 !important; background-color: transparent !important; }
.tabs.style2 .menu-tab li.active a { color: #181818 !important; border: none !important; }
.widget-follow-us a { color: #fff !important; }

/* Footer */
.footer-widgets a, .footer-widgets .widget-list li a { color: #b0b1b4 !important; }
.footer-copyright, .footer-copyright a { color: #949494 !important; }

/* Misc */
.go-top { color: #181818 !important; }
.post-single .share-post ul li a { color: #a1a1a1 !important; }
.banner .banner-text h2 a { color: #fff !important; }
.banner .banner-items h4 a { color: #fff !important; }
.featured-posts .content-left h3 a { color: #181818 !important; }
.posts h2 a { color: #181818 !important; }
.article-title { color: #222 !important; }
.section-title h4 a { color: #181818 !important; }


/* --- Re-apply specific original hover/focus states (Overrides) --- */

/* Header/Top Bar */
.top-wrap .social-links li.facebook a:hover, .top-wrap .social-links li.facebook a:hover:before { color: #3a5795 !important; }
.top-wrap .social-links li.twitter a:hover, .top-wrap .social-links li.twitter a:hover:before { color: #1fc1f1 !important; }
.top-wrap .social-links li.google a:hover, .top-wrap .social-links li.google a:hover:before { color: #dd4b39 !important; }
.top-wrap .social-links li.linkedin a:hover, .top-wrap .social-links li.linkedin a:hover:before { color: #0077b5 !important; }
.top-wrap .social-links li.pinterest a:hover, .top-wrap .social-links li.pinterest a:hover:before { color: #bd081c !important; }
.top-wrap .member-area .login-popup a:hover { color: #ccc !important; }
.top-wrap .signup-popup a:hover { background-color: #eee !important; color: #181818 !important; }
.top-wrap .member-area .options li a:hover, .top-wrap .member-area .logout a:hover { color: #005c36 !important; } /* Keep hover green here */
.header-wrap #searchform #searchsubmit:hover { color: #000 !important; }

/* Navigation */
#mainnav > ul > li > a:hover, #mainnav ul.sub-menu > li > a:hover { color: #005c36 !important; } /* Keep hover green here */
#mainnav li.gn-mega-menu .mega-item-wrap .mega-item h5 a:hover { color: #005c36 !important; } /* Keep hover green here */
#mainnav li.gn-mega-menu .nav-mega-item a:hover { color: #005c36 !important; } /* Keep hover green here */
#mainnav-mobi ul > li > a:hover { font-weight: 700; color: #fff !important; }
.navigation-panel > ul > li:hover > a { font-weight: 700; color: #181818 !important; }
#slideout-menu li a:hover { opacity: 0.7; color: #000 !important; } /* Slideout menu link hover */

/* Buttons & Similar Elements */
.posts .tags a:hover { border-color: #cacaca !important; color: #959595 !important; }
.article-category a:hover { background-color: #e0e0e0 !important; color: #000 !important; }
.tag:hover { background: #e0e0e0 !important; color: #000 !important; }

/* Widgets & Tabs */
.tabs .menu-tab li a:hover { background-color: #efefef !important; color: #2d3340 !important; }
.tabs.style2 .menu-tab li a:hover { color: #929292 !important; }
.widget-follow-us a:hover { opacity: 0.7 !important; }

/* Footer */
.footer-widgets a:hover, .footer-widgets .widget-list li a:hover { color: #ffffff !important; }
.footer-copyright a:hover { color: #ffffff !important; }

/* Misc */
.post-single .share-post ul li a:hover, .post-single .share-post ul li a:hover:before { color: #1fc1f1 !important; }
.banner .banner-text h2 a:hover { color: #eee !important; }
.banner .banner-items h4 a:hover { color: #eee !important; }
.featured-posts .content-left h3 a:hover { color: #005c36 !important; } /* Green hover for main titles */
.posts h2 a:hover { color: #005c36 !important; } /* Green hover for main titles */
.article-title:hover { color: #005c36 !important; } /* Green hover for main titles */

/* --- Footer Layout Adjustments (Refined v2) --- */
#footer {
    padding-top: 15px !important;
    padding-bottom: 15px !important;
    min-height: auto !important;
}

/* Hide empty footer widget columns if not used */
#footer .row > div:not(:has(*:not(script):not(style))) {
    display: none;
}
/* Fallback if :has() not supported */
/* #footer .col-md-3:empty, #footer .col-sm-6:empty { display: none; } */

/* Adjust footer menu spacing */
.footer-menu-wrap {
    margin: 15px 0 !important;
    padding: 10px 0 !important;
    border-top: 1px solid rgba(255,255,255,0.1) !important;
    border-bottom: 1px solid rgba(255,255,255,0.1) !important;
}
.footer-menu-wrap:empty { /* Hide if menu is empty */
    display: none;
}
/* Remove top border if widgets are hidden */
#footer .row:has(> div:empty) + .footer-menu-wrap {
     border-top: none !important;
}

/* Adjust copyright spacing */
.copyright {
    margin-top: 15px !important;
    padding-top: 15px !important;
    border-top: 1px solid rgba(255,255,255,0.1);
}
/* Remove copyright border if footer menu exists and is not empty */
.footer-menu-wrap:not(:empty) + .copyright {
    border-top: none !important;
    padding-top: 0 !important; /* Remove padding if border is removed */
}
/* Remove copyright border and spacing if no widgets and no menu */
#footer .row:has(> div:empty) + .footer-menu-wrap:empty + .copyright {
     border-top: none !important;
     padding-top: 0 !important;
     margin-top: 0 !important;
}

/* End Custom Overrides & Enhancements */
