:root {
    --homecura-primary: #004182;
    --homecura-secondary: #0b4023;
    --primary-color: var(--homecura-primary);
    --accent-color: var(--homecura-primary);
    --dark-divider-color: #ffffff26;
}

.main-header .header-sticky,
.main-header.header-gold .header-sticky,
.main-footer-gold,
.bg-section.dark-section {
    border-color: var(--homecura-primary);
}

/* Buttons: secondary background with high contrast text/icons in every state */
.btn-default,
.btn-default.btn-highlighted,
.btn-highlighted,
.newsletter-btn,
.footer-newsletter-form-gold .newsletter-btn,
.footer-newsletter-form-prime .newsletter-btn,
.hero-cta-form-btn .btn-default,
.hero-btn-gold .btn-default,
.pricing-item-btn .btn-default,
.pricing-item-btn-gold .btn-default {
    background: var(--homecura-secondary) !important;
    border-color: var(--homecura-secondary) !important;
    color: #fff !important;
    box-shadow: none !important;
}

.btn-default:hover,
.btn-default:focus,
.btn-default:active,
.btn-highlighted:hover,
.btn-highlighted:focus,
.btn-highlighted:active,
.newsletter-btn:hover,
.newsletter-btn:focus,
.newsletter-btn:active,
.hero-cta-form-btn .btn-default:hover,
.hero-btn-gold .btn-default:hover,
.footer-newsletter-form-gold .newsletter-btn:hover,
.footer-newsletter-form-prime .newsletter-btn:hover,
.pricing-item-btn .btn-default:hover,
.pricing-item-btn-gold .btn-default:hover {
    background: var(--homecura-secondary) !important;
    border-color: var(--homecura-secondary) !important;
    color: #fff !important;
}

.btn-default::after,
.btn-default.btn-highlighted::after,
.pricing-item-btn .btn-default::after,
.pricing-item-btn-gold .btn-default::after,
.btn-default.btn-highlighted:hover::after,
.pricing-item-gold.highlighted-box .pricing-item-btn-gold .btn-default::after {
    background-color: var(--homecura-secondary) !important;
}

.btn-default::before,
.btn-default.btn-highlighted:hover::before,
.footer-newsletter-form-gold .newsletter-btn img,
.footer-newsletter-form-prime .newsletter-btn i {
    filter: brightness(0) invert(1);
    color: #fff !important;
}

.btn-default:disabled,
.btn-default.disabled,
.newsletter-btn:disabled,
.newsletter-btn.disabled {
    background: var(--homecura-secondary) !important;
    border-color: var(--homecura-secondary) !important;
    color: #fff !important;
    opacity: 0.75;
}

.btn-default:focus-visible,
.btn-highlighted:focus-visible,
.newsletter-btn:focus-visible {
    outline: 2px solid #fff !important;
    outline-offset: 2px;
    box-shadow: 0 0 0 4px var(--homecura-primary) !important;
}

/* Light surface text/link contrast */
.section-sub-title,
.readmore-btn,
.main-header .navbar-nav .nav-link:hover,
.main-header .navbar-nav .nav-link.active,
.footer-links-gold ul li a:hover,
.footer-privacy-policy-gold a:hover,
.about-us-item-content-gold h3,
.service-item-content-gold h2 a:hover,
.post-item-content h2 a:hover,
.post-item-btn .readmore-btn {
    color: var(--homecura-primary) !important;
}

/* Dark surface contrast: readable text, links, and icon treatments */
.dark-section,
.dark-section p,
.dark-section li,
.dark-section h1,
.dark-section h2,
.dark-section h3,
.dark-section h4,
.dark-section h5,
.dark-section h6 {
    color: #fff !important;
}

.dark-section a:not(.btn-default):not(.newsletter-btn) {
    color: #fff !important;
}

.dark-section a:not(.btn-default):not(.newsletter-btn):hover,
.dark-section a:not(.btn-default):not(.newsletter-btn):focus-visible {
    color: #fff !important;
    text-decoration: underline;
}

.dark-section .section-title .section-sub-title {
    color: #fff !important;
    border: 1px solid #ffffff40;
    background: var(--dark-divider-color) !important;
}

.dark-section .section-title .section-sub-title::before,
.dark-section .readmore-btn::before {
    filter: brightness(0) invert(1);
}

.dark-section .readmore-btn {
    color: #fff !important;
}

.dark-section .footer-info-item-gold .icon-box img,
.dark-section .section-footer-text.section-satisfy-img .satisfy-client-image.add-more img {
    filter: brightness(0) invert(1);
}

a {
    transition: all 0.3s ease;
}

.leaflet-container {
    width: 100%;
    min-height: 320px;
    border-radius: 8px;
    border: 1px solid var(--homecura-primary);
}

.consultation-map-help {
    margin-top: 10px;
    font-size: 14px;
    color: var(--homecura-secondary);
}
