/* Scoped palette and readability repairs; original animation rules stay intact. */
:root { --conen-green: #087347; --conen-ink: #303d37; }
.sub-heading,
.contact-us-sec .contact-details .contact-sub-heading,
.qoute-sec .qoute span, .qoute-sec .writer,
.services-sec .our-services .service-card:hover .service-card-heading,
.cube-portfolio1 .cbp-l-filters-button .cbp-filter-item.cbp-filter-item-active,
.cube-portfolio1 .cbp-l-filters-button .cbp-filter-item:hover,
.pricing-sec .pricing-card:is(.active, :hover) .pricing-card-heading,
.pricing-sec .pricing-card:is(.active, :hover) .pricing-amount,
.pricing-sec .pricing-card:is(.active, :hover) .pricing-amount span,
.pricing-sec .pricing-card.active:nth-child(2) .pricing-card-heading,
.pricing-sec .pricing-card.active:nth-child(2) .pricing-amount,
.pricing-sec .pricing-card.active:nth-child(2) .pricing-amount span {
    color: var(--conen-green);
}
.green-btn, .header-appear, .scroll-top-arrow {
    background-color: var(--conen-green);
    border-color: var(--conen-green);
}
.bg-green { background-color: var(--conen-green) !important; }
.side-menu .bg-overlay { background: rgba(4, 65, 42, .94); }
.pricing-sec .pricing-card.active:nth-child(2) .green-trans-btn,
.pricing-sec .pricing-card:hover .green-trans-btn {
    color: var(--conen-green); border-color: var(--conen-green);
}
.green-trans-btn span { background-color: var(--conen-green); }
.green-trans-btn:hover { background-color: var(--conen-green); }
.grey-btn:hover { background-color: #fff; }
.text, .service-card-detail, .pricing-sec .pricing-card .pricing-card-text,
.pricing-sec .pricing-card .pricing-features li { font-weight: 400; }
.slider-form .contact-form input,
.slider-form .contact-form input::placeholder,
.slider-form .contact-form label { color: #52615a; opacity: 1; }
.slider-form .contact-form { box-shadow: 0 8px 32px rgb(14 48 34 / 12%); }
.slider-area .slider-overlay {
    background: linear-gradient(180deg, rgba(12,24,19,.58), transparent 23%),
        radial-gradient(ellipse at 50% 48%, rgba(12,24,19,.68) 0%, rgba(12,24,19,.53) 35%, rgba(12,24,19,.16) 80%);
}
.slider-area .slider-content .text { font-weight: 400; }
.slider-area .banner-social { background: rgb(12 24 19 / 70%); border-radius: 24px; padding: 12px; }
.project-sec .project-detail-area .project-detail-slide .inner-content .text { opacity: 1; }
.cube-portfolio1 .cbp-caption-activeWrap { background: #123c2c; }
.client-sec .client-sec-overlay {
    height: 100%; opacity: 1;
    background: linear-gradient(180deg, rgb(4 61 39 / 88%) 0%, rgb(4 61 39 / 80%) 34%, rgb(4 61 39 / 12%) 51%, rgb(4 61 39 / 18%) 100%);
}
.client-sec .client-container .client-img-overlay .client-text { font-weight: 400; line-height: 1.8; }
.client-sec .client-container .client-detail {
    width: max-content; max-width: calc(100% - 40px); padding: 20px 30px 65px;
    border-radius: 12px; background: rgb(255 255 255 / 96%);
}
.client-sec .client-container .client-detail .client-name { color: var(--conen-green); }
.client-sec .client-container .client-detail .client-des { color: var(--conen-ink); }
.client-sec .client-container .client-detail .client-s-media { top: 8px; }
.pricing-sec .pricing-card .pricing-amount { font-size: 48px; }
.pricing-sec .pricing-card .pricing-amount span { display: block; margin: 8px 0 0; }
#map { position: relative; min-height: 420px; overflow: hidden; border-radius: 12px; background: #e8eee8; }
#map .conen-city-map { width: 100%; height: 100%; position: absolute; inset: 0; object-fit: cover; }
#map .conen-map-caption { position: absolute; bottom: 18px; left: 18px; right: 18px; margin: 0; padding: 14px 18px; color: #253c30; background: #fff; border-radius: 8px; font-size: 15px; }
#map .conen-map-caption small { font-size: 12px; }
a:focus-visible, input:focus-visible { outline: 3px solid #087347; outline-offset: 4px; }
.side-menu a:focus-visible, .slider-area a:focus-visible { outline-color: #fff; }
@media (max-width: 991px) {
    .slider-area .slider-overlay { background: linear-gradient(180deg, rgb(12 24 19 / 40%), rgb(12 24 19 / 62%) 30%, rgb(12 24 19 / 62%) 68%, rgb(12 24 19 / 15%)); }
    .slider-area .slider-content { max-width: 620px; padding: 0 12px; }
    .client-sec { background-attachment: scroll; }
    .client-sec .client-container .client-img-overlay .client-text { font-size: 16px; }
    .client-sec .client-sec-overlay { background: linear-gradient(180deg, rgb(4 61 39 / 90%), rgb(4 61 39 / 84%) 38%, rgb(4 61 39 / 16%) 55%); }
    #map { min-height: 340px; margin-bottom: 38px; }
}
