/* Local accessibility and finish; shared theme assets remain unchanged. */
:root { --personal-ink: #4b514d; --personal-accent: #22752c; }
body { color: var(--personal-ink); font-weight: 400; }
.main-color,
a:hover, a:active,
.btn-link, .btn-link:hover, .btn-link:focus,
.site-main-menu li.active > a,
.site-main-menu li.active > a i,
.site-main-menu li > a:hover i,
.site-main-menu li > a:hover span { color: var(--personal-accent); }
.btn-link::after { color: #174f21; }
.site-main-menu li > a { color: var(--personal-ink); }
.site-main-menu li > a i { color: #647168; }
.site-main-menu li.active > a::before { background-color: var(--personal-accent); }
.btn.btn-green { background: var(--personal-accent); border-color: var(--personal-accent); color: #fff; }
.btn.btn-green:hover, .btn.btn-green:focus { border-color: var(--personal-accent); color: var(--personal-accent) !important; }
.services-about .content { background-color: #206b2a; }
.services-about .content::before { opacity: .045; pointer-events: none; }
.feature-item { border: 1px solid #e3e9e4; box-shadow: 0 8px 28px rgba(26, 54, 34, .07); }
.feature-item .title { overflow-wrap: anywhere; }
.feature-item .r-icon { color: var(--personal-accent); }
.feature-item > i.f-icon,
#js-grid-mosaic-flat .p-icon { background-color: var(--personal-accent); }
#js-grid-mosaic-flat.cbp-caption-zoom .cbp-caption-activeWrap { background: rgba(255,255,255,.96); }
.client-box { border: 1px solid #e3e9e4; box-shadow: 0 8px 28px rgba(26, 54, 34, .07); }
#client-nav button { border-color: var(--personal-accent); }
#client-nav button > span { color: var(--personal-accent); }
#client-nav button:hover { background: var(--personal-accent); }
#client-nav button:hover > span { color: #fff; }
.partners-slider .logo-item img { width: 170px; height: 70px; object-fit: contain; opacity: 1; }
.contact-form .form-control { color: #343c36; border-bottom-color: #7b877e; }
.contact-form .form-control::placeholder { color: #59645c; opacity: 1; }
.contact-form .form-control:focus { border-color: var(--personal-accent); }
.address-item { border-radius: 8px; }
.address-item .content { min-width: 0; overflow-wrap: anywhere; }
.bg-map { background: #edf0e8 url('original-personal-conen/budapest-map.jpg') center / cover no-repeat; border-radius: 12px; border: 1px solid #dde4da; }
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible { outline: 3px solid #22752c; outline-offset: 4px; }
@media (max-width: 767px) {
    .heading-box h2 { line-height: 1.2; }
    .services-about .content { padding: 28px; }
    .address-item { padding: 24px; }
}
