/* OffMarketNow Brand Colors */
:root {
    --omn-golden-bronze: #B49B43;
    --omn-black: #000000;
    --omn-sand: #B9A556;
    --omn-dark-khaki: #493D18;
    --omn-rich-mahogany: #400000;

    /* Bootstrap color overrides */
    --bs-primary: #B49B43;
    --bs-primary-rgb: 180, 155, 67;
    --bs-link-color: #B49B43;
    --bs-link-hover-color: #493D18;
}

html {
    font-size: 14px;
}

@media (min-width: 768px) {
    html {
        font-size: 16px;
    }
}

html {
    position: relative;
    min-height: 100%;
}

body {
    margin-bottom: 60px;
}

/* Primary button styling */
.btn-primary {
    background-color: var(--omn-golden-bronze);
    border-color: var(--omn-golden-bronze);
    color: #fff;
}

.btn-primary:hover,
.btn-primary:focus {
    background-color: var(--omn-dark-khaki);
    border-color: var(--omn-dark-khaki);
    color: #fff;
}

.btn-primary:active,
.btn-primary.active {
    background-color: var(--omn-dark-khaki);
    border-color: var(--omn-dark-khaki);
}

.btn-primary:disabled,
.btn-primary.disabled {
    background-color: var(--omn-sand);
    border-color: var(--omn-sand);
}

/* Outline primary button */
.btn-outline-primary {
    color: var(--omn-golden-bronze);
    border-color: var(--omn-golden-bronze);
}

.btn-outline-primary:hover,
.btn-outline-primary:focus {
    background-color: var(--omn-golden-bronze);
    border-color: var(--omn-golden-bronze);
    color: #fff;
}

.btn-outline-primary:active,
.btn-outline-primary.active {
    background-color: var(--omn-dark-khaki);
    border-color: var(--omn-dark-khaki);
}

/* Links */
a {
    color: var(--omn-golden-bronze);
}

a:hover {
    color: var(--omn-dark-khaki);
}

/* Navbar styling */
.navbar {
    background-color: var(--omn-black) !important;
}

.navbar .navbar-brand,
.navbar .nav-link {
    color: var(--omn-sand) !important;
}

.navbar .nav-link:hover,
.navbar .nav-link:focus {
    color: var(--omn-golden-bronze) !important;
}

.navbar .nav-link.active {
    color: var(--omn-golden-bronze) !important;
}

/* Dropdown menu styling */
.dropdown-item:hover,
.dropdown-item:focus {
    background-color: var(--omn-sand);
    color: var(--omn-black);
}

.dropdown-item.active,
.dropdown-item:active {
    background-color: var(--omn-golden-bronze);
    color: #fff;
}

/* Focus states */
.btn:focus,
.btn:active:focus,
.btn-link.nav-link:focus,
.form-control:focus,
.form-check-input:focus {
    box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem var(--omn-golden-bronze);
}

/* Form check inputs */
.form-check-input:checked {
    background-color: var(--omn-golden-bronze);
    border-color: var(--omn-golden-bronze);
}

/* Badge primary */
.badge.bg-primary {
    background-color: var(--omn-golden-bronze) !important;
}

/* Alert primary */
.alert-primary {
    background-color: rgba(180, 155, 67, 0.15);
    border-color: var(--omn-golden-bronze);
    color: var(--omn-dark-khaki);
}

/* Progress bar */
.progress-bar {
    background-color: var(--omn-golden-bronze);
}

/* Pagination */
.page-link {
    color: var(--omn-golden-bronze);
}

.page-link:hover {
    color: var(--omn-dark-khaki);
}

.page-item.active .page-link {
    background-color: var(--omn-golden-bronze);
    border-color: var(--omn-golden-bronze);
}

/* List group */
.list-group-item.active {
    background-color: var(--omn-golden-bronze);
    border-color: var(--omn-golden-bronze);
}

/* Footer styling */
footer {
    background-color: var(--omn-black);
    color: var(--omn-sand);
}

footer a {
    color: var(--omn-golden-bronze);
}

footer a:hover {
    color: var(--omn-sand);
}

/* Text utilities */
.text-primary {
    color: var(--omn-golden-bronze) !important;
}

/* Background utilities */
.bg-primary {
    background-color: var(--omn-golden-bronze) !important;
}

/* Border utilities */
.border-primary {
    border-color: var(--omn-golden-bronze) !important;
}

/* Override Leaflet link color */
.leaflet-container a {
    color: white !important;
}

/* Card header with brand color */
.card-header.bg-brand {
    background-color: var(--omn-golden-bronze);
    color: #fff;
}

/* Hero/Jumbotron sections */
.hero-section {
    background: linear-gradient(135deg, var(--omn-black) 0%, var(--omn-rich-mahogany) 100%);
    color: #fff;
}

.hero-section h1,
.hero-section h2 {
    color: var(--omn-golden-bronze);
}

/* Brand primary button with smooth hover transition */
.btn-brand-primary {
    background-color: var(--omn-golden-bronze);
    border-color: var(--omn-golden-bronze);
    color: #fff;
    transition: all 0.3s ease;
}

.btn-brand-primary:hover,
.btn-brand-primary:focus {
    background-color: var(--omn-dark-khaki);
    border-color: var(--omn-dark-khaki);
    color: #fff;
}

.btn-brand-primary:active,
.btn-brand-primary.active {
    background-color: var(--omn-dark-khaki);
    border-color: var(--omn-dark-khaki);
    color: #fff;
}

/* Brand outline button */
.btn-brand-outline {
    background-color: transparent;
    border-color: var(--omn-sand);
    color: var(--omn-sand);
    transition: all 0.3s ease;
}

.btn-brand-outline:hover,
.btn-brand-outline:focus {
    background-color: var(--omn-sand);
    border-color: var(--omn-sand);
    color: var(--omn-black);
}

.btn-brand-outline:active,
.btn-brand-outline.active {
    background-color: var(--omn-golden-bronze);
    border-color: var(--omn-golden-bronze);
    color: #fff;
}

/* Brand utility classes */
.bg-brand {
    background-color: var(--omn-golden-bronze) !important;
}

.border-brand {
    border-color: var(--omn-golden-bronze) !important;
}

.text-brand {
    color: var(--omn-golden-bronze) !important;
}

/* Override Bootstrap primary button to use brand colors */
.btn-primary {
    background-color: var(--omn-golden-bronze);
    border-color: var(--omn-golden-bronze);
    color: #fff;
    transition: all 0.3s ease;
}

.btn-primary:hover,
.btn-primary:focus {
    background-color: var(--omn-dark-khaki);
    border-color: var(--omn-dark-khaki);
    color: #fff;
}

.btn-primary:active,
.btn-primary.active,
.btn-primary:first-child:active {
    background-color: var(--omn-dark-khaki) !important;
    border-color: var(--omn-dark-khaki) !important;
    color: #fff !important;
}

/* Override Bootstrap nav-pills active state to use brand colors */
.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
    background-color: var(--omn-golden-bronze);
    color: #fff;
}

.nav-pills .nav-link {
    color: var(--omn-golden-bronze);
    transition: all 0.3s ease;
}

.nav-pills .nav-link:hover,
.nav-pills .nav-link:focus {
    color: var(--omn-dark-khaki);
}

/* Override default link colors to use brand colors */
a {
    color: var(--omn-golden-bronze);
    transition: color 0.3s ease;
}

a:hover,
a:focus {
    color: var(--omn-dark-khaki);
}

/* Keep navbar links dark */
.navbar .nav-link,
.navbar a {
    color: inherit;
}

.navbar .nav-link:hover,
.navbar a:hover {
    color: inherit;
}

/* Override Bootstrap btn-link to use brand colors */
.btn-link {
    color: var(--omn-golden-bronze);
    text-decoration: none;
    transition: color 0.3s ease;
}

.btn-link:hover,
.btn-link:focus {
    color: var(--omn-dark-khaki);
    text-decoration: underline;
}

/* Custom navbar toggler (hamburger menu) with brand color */
.navbar-toggler {
    border-color: var(--omn-golden-bronze) !important;
}

.navbar-light .navbar-toggler-icon,
.navbar-toggler-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='%23B49B43' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") !important;
}

.navbar-toggler:focus {
    box-shadow: 0 0 0 0.25rem rgba(180, 155, 67, 0.25) !important;
}
