/* JenkinsCars brand styles, isolated from every other dealership. */
body.jenkinscars-theme {
    --jenkins-navy: #0b2442;
    --jenkins-navy-deep: #071a30;
    --jenkins-blue: #126ab2;
    --jenkins-pin: #52b0ff;
    --jenkins-ink: #1b2b3e;
    --jenkins-muted: #617083;
    --jenkins-line: #dce3ea;
    --jenkins-surface: #f4f6f8;
    --obfm-red: var(--jenkins-blue);
    --obfm-red-dark: var(--jenkins-navy);
    --obfm-blue: var(--jenkins-navy);
    --obfm-blue-soft: var(--jenkins-blue);
    --obfm-blue-deep: var(--jenkins-navy-deep);
    --obfm-ink: var(--jenkins-ink);
    --obfm-ink-soft: var(--jenkins-navy);
    --obfm-slate: var(--jenkins-muted);
    --obfm-copy: var(--jenkins-ink);
    --obfm-copy-soft: var(--jenkins-muted);
    --obfm-surface: var(--jenkins-surface);
    --obfm-line: var(--jenkins-line);
    --bs-primary: var(--jenkins-navy);
    --bs-primary-rgb: 11, 36, 66;
    --bs-link-color: var(--jenkins-blue);
    --bs-link-hover-color: var(--jenkins-navy);
    --obfm-header-safe-offset: 9rem;
    background: #ffffff;
    color: var(--jenkins-ink);
    color-scheme: light;
}
body.jenkinscars-theme :where(h1, h2, h3, h4, h5, h6) { color: var(--jenkins-navy); }
body.jenkinscars-theme :where(a, button, input, select, textarea):focus-visible {
    outline: 3px solid var(--jenkins-blue);
    outline-offset: 4px;
}

/* Navy navigation with a white panel preserving the supplied logo colors. */
body.jenkinscars-theme :is(#headerbgdk, #headerbg, .top-header, .obfm-site-footer) {
    background: var(--jenkins-navy) !important;
    color: #ffffff;
}
body.jenkinscars-theme .top-header {
    background: var(--jenkins-navy-deep) !important;
    border-bottom: 1px solid #ffffff18;
}
body.jenkinscars-theme .obfm-topbar-shell { min-height: 46px; }
body.jenkinscars-theme .obfm-topbar-label { color: #b8cce1; }
body.jenkinscars-theme .obfm-topbar-icon { color: var(--jenkins-pin); background: #ffffff0c; box-shadow: none; }
body.jenkinscars-theme .obfm-topbar-phone { border-radius: 4px; box-shadow: none; }
body.jenkinscars-theme .obfm-topbar-phone-label { color: #bed0e3; }
body.jenkinscars-theme .obfm-topbar-phone-value { font-weight: 600; }
body.jenkinscars-theme #headerbg { min-height: 86px; border-radius: 0; box-shadow: none; }
body.jenkinscars-theme #headerbg .obfm-logo {
    width: clamp(240px, 29vw, 350px);
    max-width: calc(100% - 56px);
    padding: 10px 12px !important;
    background: #ffffff;
    border-radius: 4px;
    flex-shrink: 0;
}
body.jenkinscars-theme #headerbg #logoImage { width: 100%; height: auto; max-width: none; object-fit: contain; }
body.jenkinscars-theme #headerbg .navbar-nav .nav-link { color: #ffffff !important; }
body.jenkinscars-theme #headerbg .navbar-nav .nav-link:hover,
body.jenkinscars-theme #headerbg .navbar-nav .nav-link.active { color: #a8d7ff !important; }
body.jenkinscars-theme #headerbg .navbar-nav .nav-link::after { background: var(--jenkins-pin); }
body.jenkinscars-theme #headerbg .obfm-header-cta,
body.jenkinscars-theme #headerbg .navbar-toggler {
    border-radius: 4px; background: #ffffff; color: var(--jenkins-navy) !important; box-shadow: none;
}
body.jenkinscars-theme #headerbg .obfm-header-cta:hover { background: #e8f2fb; }
body.jenkinscars-theme #headerbg .navbar-collapse { background: var(--jenkins-navy); }

/* White content panels, quiet gray surfaces, and blue interactive states. */
body.jenkinscars-theme :is(.obfm-detail-page, .obfm-contact-page, .obfm-finance-page, .obfm-calculator-page) {
    --obfm-red: var(--jenkins-blue);
    --obfm-red-dark: var(--jenkins-navy);
    --obfm-blue: var(--jenkins-navy);
    --obfm-blue-deep: var(--jenkins-navy-deep);
    background: var(--jenkins-surface);
}
body.jenkinscars-theme :is(
    .obfm-vehicle-card, .obfm-detail-gallery, .obfm-detail-panel,
    .obfm-detail-highlight, .obfm-inquiry-card, .obfm-contact-card,
    .obfm-contact-point, .obfm-contact-box, .obfm-contact-form-shell,
    .obfm-finance-card, .obfm-finance-side, .obfm-form-shell
) { background: #ffffff; color: var(--jenkins-ink); border-color: var(--jenkins-line); }
body.jenkinscars-theme :is(.form-control, .form-select) {
    background-color: #ffffff; color: var(--jenkins-ink); border-color: var(--jenkins-line); accent-color: var(--jenkins-blue);
}
body.jenkinscars-theme :is(.form-control, .form-select):focus {
    border-color: var(--jenkins-blue); box-shadow: 0 0 0 3px #126ab218;
}
body.jenkinscars-theme .form-check-input:checked {
    background-color: var(--jenkins-blue); border-color: var(--jenkins-blue);
}
body.jenkinscars-theme :is(.btn-primary, .obfm-button-primary, .obfm-floating-filter-btn, .obfm-vehicle-badge, .page-item.active .page-link) {
    background: var(--jenkins-navy); color: #ffffff; border-color: var(--jenkins-navy);
}
body.jenkinscars-theme :is(.btn-primary, .obfm-button-primary):hover {
    background: var(--jenkins-blue); border-color: var(--jenkins-blue);
}
body.jenkinscars-theme :is(.obfm-card-cta, .obfm-button-secondary, .obfm-contact-link) {
    background: #ffffff; color: var(--jenkins-navy); border-color: var(--jenkins-line);
}
body.jenkinscars-theme :is(.obfm-card-cta, .obfm-button-secondary, .obfm-contact-link):hover {
    color: var(--jenkins-blue); border-color: var(--jenkins-blue); background: #f0f6fc;
}
body.jenkinscars-theme :is(.obfm-contact-side, .obfm-finance-side) :is(p, span) { color: var(--jenkins-muted); }
body.jenkinscars-theme :is(.obfm-contact-point, .obfm-contact-box, .obfm-finance-point, .obfm-finance-contact-box) {
    background: var(--jenkins-surface); border: 1px solid var(--jenkins-line); box-shadow: none;
}
body.jenkinscars-theme .obfm-finance-action {
    background: #ffffff; color: var(--jenkins-navy); border-color: var(--jenkins-line);
}
body.jenkinscars-theme .obfm-finance-action:hover { color: var(--jenkins-blue); border-color: var(--jenkins-blue); }
body.jenkinscars-theme .obfm-contact-link {
    max-width: 100%; gap: 8px; justify-content: flex-start; text-align: left;
    text-transform: none; letter-spacing: 0; padding: 0.75rem 0.85rem; overflow-wrap: anywhere;
}
body.jenkinscars-theme :is(.obfm-contact-form-shell, .obfm-finance-form-card, .obfm-form-shell) button[type="submit"] {
    background: var(--jenkins-navy) !important; border-color: var(--jenkins-navy);
    box-shadow: 0 8px 20px #0b24421c !important;
}
body.jenkinscars-theme .obfm-detail-inquiry-submit {
    background: var(--jenkins-navy);
}
body.jenkinscars-theme .obfm-detail-inquiry-submit:hover { background: var(--jenkins-blue); }
body.jenkinscars-theme .obfm-calculator-panel .card-header {
    background: var(--jenkins-navy) !important; color: #ffffff;
}
body.jenkinscars-theme .obfm-contact-links { min-width: 0; }
body.jenkinscars-theme .genesis-hero-details a {
    display: inline-flex; align-items: center; gap: 7px; color: var(--jenkins-navy); text-decoration: none; font-weight: 700;
}
body.jenkinscars-theme .genesis-hero-details a:hover { color: var(--jenkins-blue); }
body.jenkinscars-theme .genesis-hero-background { filter: none; }
body.jenkinscars-theme .genesis-inventory-hero::after {
    background: linear-gradient(90deg, #fffffffa 0%, #fffffff0 22%, #ffffff90 42%, #ffffff00 62%);
}
body.jenkinscars-theme .genesis-section-eyebrow,
body.jenkinscars-theme .genesis-hero-eyebrow { color: var(--jenkins-blue); }
body.jenkinscars-theme .genesis-results-description { color: var(--jenkins-muted); }

/* Footer contact links remain readable at every viewport width. */
body.jenkinscars-theme .obfm-site-footer { border-top: 4px solid var(--jenkins-blue); }
body.jenkinscars-theme .obfm-site-footer :is(h2, h3, a) { color: #ffffff; }
body.jenkinscars-theme .obfm-site-footer :is(p, .obfm-footer-meta) { color: #d2dfec; }
body.jenkinscars-theme .obfm-footer-column { min-width: 0; }
body.jenkinscars-theme .obfm-footer-link { overflow-wrap: anywhere; align-items: flex-start; }
body.jenkinscars-theme .obfm-footer-link i { color: var(--jenkins-pin); flex-shrink: 0; }
body.jenkinscars-theme .obfm-site-footer .obfm-footer-pill { border-color: #ffffff66; border-radius: 4px; }
body.jenkinscars-theme .obfm-site-footer :is(.obfm-footer-link, .obfm-footer-pill):hover {
    color: #a8d7ff; border-color: var(--jenkins-pin);
}

@media (max-width: 991.98px) {
    body.jenkinscars-theme .obfm-topbar-intro { display: none; }
    body.jenkinscars-theme .obfm-topbar-shell { padding: 6px 0; min-height: 46px; }
    body.jenkinscars-theme .obfm-topbar-phones { justify-content: center; overflow: visible; flex-wrap: wrap; }
    body.jenkinscars-theme #headerbg { min-height: 76px; }
    body.jenkinscars-theme #headerbg .obfm-logo { width: 300px; }
    body.jenkinscars-theme #headerbg .navbar-collapse { box-shadow: none; border-top: 1px solid #ffffff20; border-radius: 0; }
}
/* Keep the contact form first and immediately usable on phones. */
@media (max-width: 767.98px) {
    body.jenkinscars-theme .obfm-contact-page {
        --obfm-header-safe-offset: 7.6875rem;
        padding: calc(var(--obfm-header-safe-offset) + 0.75rem) 0 1.5rem;
    }
    body.jenkinscars-theme .obfm-contact-shell { width: calc(100% - 24px); }
    body.jenkinscars-theme .obfm-contact-grid { gap: 16px; }
    body.jenkinscars-theme .obfm-contact-form-card {
        display: flex;
        flex-direction: column;
        padding: 18px 16px;
        border: 1px solid #126ab22b;
        border-top: 4px solid var(--jenkins-blue);
        border-radius: 12px;
        box-shadow: 0 10px 28px #0b244212;
    }
    body.jenkinscars-theme .obfm-contact-header { order: 0; }
    body.jenkinscars-theme .obfm-contact-header > span { font-size: 10px; letter-spacing: 0.12em; }
    body.jenkinscars-theme .obfm-contact-header > span::before { width: 20px; height: 3px; }
    body.jenkinscars-theme .obfm-contact-header h1 {
        margin-top: 8px; font-size: 2rem; line-height: 1.05; letter-spacing: 0;
    }
    body.jenkinscars-theme .obfm-contact-header p { margin-top: 8px; font-size: 14px; line-height: 1.45; }
    body.jenkinscars-theme .obfm-contact-form-shell {
        order: 1; margin-top: 16px; padding: 0; border-radius: 0; box-shadow: none;
        scroll-margin-top: calc(var(--obfm-header-safe-offset) + 12px);
    }
    body.jenkinscars-theme .obfm-contact-form-shell form > h4:first-of-type,
    body.jenkinscars-theme .obfm-contact-form-shell form > h4:first-of-type + hr { display: none; }
    body.jenkinscars-theme .obfm-contact-form-shell :is(.form-control, .form-select) {
        min-height: 50px; padding-inline: 12px; border-radius: 8px; font-size: 16px;
    }
    body.jenkinscars-theme .obfm-contact-form-shell .row > .col-4 { width: 50%; }
    body.jenkinscars-theme .obfm-contact-form-shell .row > .col-12 + .col-4 { width: 100%; }
    body.jenkinscars-theme .obfm-contact-form-shell form > hr { margin-block: 16px !important; }
    body.jenkinscars-theme .obfm-contact-form-shell button[type="submit"] {
        min-height: 54px; border-radius: 8px; font-size: 16px; box-shadow: none !important;
    }
    body.jenkinscars-theme .obfm-contact-strip { order: 2; gap: 6px; margin-top: 16px; }
    body.jenkinscars-theme .obfm-contact-strip span { min-height: 28px; padding: 6px 8px; font-size: 10px; }
    body.jenkinscars-theme .obfm-contact-side {
        padding: 16px; border: 1px solid var(--jenkins-line); border-radius: 12px; box-shadow: none;
    }
    body.jenkinscars-theme .obfm-contact-side > h2,
    body.jenkinscars-theme .obfm-contact-side > p,
    body.jenkinscars-theme .obfm-contact-points { display: none; }
    body.jenkinscars-theme .obfm-contact-box {
        margin: 0; padding: 0; border: 0; border-radius: 0; background: transparent;
    }
}

@media (max-width: 575.98px) {
    body.jenkinscars-theme .obfm-topbar-phones { flex-direction: column; gap: 1px; }
    body.jenkinscars-theme .obfm-topbar-phone { min-height: 26px; padding: 4px 8px; background: transparent; }
    body.jenkinscars-theme .obfm-topbar-phone-value { font-size: 11px; }
    body.jenkinscars-theme #headerbg .obfm-logo { width: 260px; max-width: calc(100% - 64px); padding: 8px !important; }
    body.jenkinscars-theme .obfm-contact-link { font-size: 11px; }
    body.jenkinscars-theme .genesis-hero-details { flex-wrap: wrap; gap: 10px 18px; }
}
