.nvi-inventory,
.nvi-single,
.nvi-inventory *,
.nvi-single * { box-sizing: border-box; }
.nvi-inventory,
.nvi-single {
  --nvi-gold: #e8b22e;
  --nvi-black: #0b0b0b;
  --nvi-dark: #171717;
  --nvi-panel: #202020;
  --nvi-field: #292929;
  --nvi-line: #3d3d3d;
  --nvi-muted: #bdbdbd;
  color: #fff;
  font-family: Inter, Arial, Helvetica, sans-serif;
}
.nvi-inventory { width: 100%; max-width: 1320px; margin: 0 auto; padding: 24px 12px 60px; }
.nvi-inventory a,
.nvi-single a { text-decoration: none; }

/* Filters */
.nvi-filters { display: grid; grid-template-columns: 1.35fr repeat(4, 1fr) auto; gap: 14px; align-items: end; padding: 25px; border: 1px solid var(--nvi-line); border-top: 4px solid var(--nvi-gold); border-radius: 15px; background: var(--nvi-dark); box-shadow: 0 18px 45px rgba(0,0,0,.26); }
.nvi-filters-category { grid-template-columns: 1.35fr repeat(3, 1fr) auto; }
.nvi-filter-heading { grid-column: 1 / -1; display: flex; align-items: baseline; gap: 13px; margin-bottom: 4px; }
.nvi-filter-heading span { color: var(--nvi-gold); font-size: 11px; font-weight: 900; letter-spacing: 1.8px; }
.nvi-filter-heading strong { color: #fff; font-size: 25px; line-height: 1.2; }
.nvi-filters label { display: block; min-width: 0; margin: 0; }
.nvi-filters label > span { display: block; margin: 0 0 7px; color: #fff; font-size: 12px; font-weight: 800; }
.nvi-filters input,
.nvi-filters select { width: 100%; height: 49px; margin: 0; padding: 0 13px; border: 1px solid #555; border-radius: 8px; outline: none; background: var(--nvi-field); color: #fff; font: inherit; font-size: 14px; color-scheme: dark; }
.nvi-filters input::placeholder { color: #aaa; opacity: 1; }
.nvi-filters input:focus,
.nvi-filters select:focus { border-color: var(--nvi-gold); box-shadow: 0 0 0 3px rgba(232,178,46,.2); }
.nvi-filters button { display: flex; align-items: center; justify-content: center; gap: 10px; height: 49px; margin: 0; padding: 0 20px; border: 0; border-radius: 8px; background: var(--nvi-gold); color: #111; cursor: pointer; font: inherit; font-size: 14px; font-weight: 900; white-space: nowrap; transition: transform .2s, filter .2s; }
.nvi-filters button:hover { filter: brightness(.94); transform: translateY(-1px); }
.nvi-clear { grid-column: 1 / -1; width: max-content; color: var(--nvi-gold) !important; font-size: 12px; font-weight: 800; }
.nvi-results-bar { display: flex; align-items: baseline; justify-content: space-between; gap: 15px; margin: 28px 2px 15px; }
.nvi-results-bar strong { color: #fff; font-size: 21px; }
.nvi-results-bar span { color: var(--nvi-muted); font-size: 13px; }

/* Inventory cards */
.nvi-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.nvi-card { min-width: 0; overflow: hidden; border: 1px solid var(--nvi-line); border-radius: 14px; background: var(--nvi-dark); box-shadow: 0 15px 38px rgba(0,0,0,.28); transition: transform .25s, border-color .25s, box-shadow .25s; }
.nvi-card:hover { transform: translateY(-5px); border-color: #6a5420; box-shadow: 0 22px 48px rgba(0,0,0,.4); }
.nvi-card-media { position: relative; display: block; width: 100%; aspect-ratio: 16/10; overflow: hidden; background: #0d0d0d; }
.nvi-card-media img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .55s; }
.nvi-card:hover .nvi-card-media img { transform: scale(1.045); }
.nvi-media-shade { position: absolute; inset: 45% 0 0; background: linear-gradient(transparent, rgba(0,0,0,.55)); pointer-events: none; }
.nvi-no-photo { display: grid; width: 100%; height: 100%; place-items: center; color: #777; font-size: 12px; font-weight: 900; letter-spacing: 1.5px; }
.nvi-badge { position: absolute; top: 14px; left: 14px; z-index: 2; padding: 7px 10px; border-radius: 5px; font-size: 10px; font-weight: 900; letter-spacing: .8px; }
.nvi-badge-gold { background: var(--nvi-gold); color: #111; }
.nvi-body-badge { position: absolute; right: 14px; bottom: 13px; z-index: 2; padding: 5px 8px; border: 1px solid rgba(255,255,255,.35); border-radius: 5px; background: rgba(0,0,0,.63); color: #fff; font-size: 10px; font-weight: 800; letter-spacing: .7px; backdrop-filter: blur(5px); }
.nvi-card-body { padding: 20px; }
.nvi-card-title-row { display: flex; align-items: flex-start; justify-content: space-between; gap: 14px; margin-bottom: 15px; }
.nvi-card-title-row > div:first-child { min-width: 0; }
.nvi-card h3 { margin: 0; color: #fff; font-size: 20px; line-height: 1.2; }
.nvi-card h3 a { color: #fff !important; }
.nvi-card h3 a:hover { color: var(--nvi-gold) !important; }
.nvi-trim { margin: 5px 0 0; color: var(--nvi-muted); font-size: 12px; line-height: 1.35; }
.nvi-card-price { flex: 0 0 auto; text-align: right; }
.nvi-card-price del { display: block; color: #999; font-size: 11px; }
.nvi-card-price strong { display: block; color: var(--nvi-gold); font-size: 21px; line-height: 1.1; }
.nvi-mileage { display: flex; align-items: center; gap: 6px; margin-bottom: 15px; padding: 10px 12px; border-radius: 7px; background: #0f0f0f; color: #ddd; font-size: 13px; }
.nvi-mileage .nvi-icon { color: var(--nvi-gold); font-size: 10px; }
.nvi-mileage strong { color: #fff; }
.nvi-card-specs { display: grid; grid-template-columns: 1fr 1fr; gap: 0; margin: 0; border-top: 1px solid #333; }
.nvi-card-specs div { min-width: 0; padding: 11px 8px 10px 0; border-bottom: 1px solid #333; }
.nvi-card-specs div:nth-child(even) { padding-right: 0; padding-left: 12px; border-left: 1px solid #333; }
.nvi-card-specs dt { margin: 0 0 3px; color: #929292; font-size: 9px; font-weight: 900; letter-spacing: .7px; text-transform: uppercase; }
.nvi-card-specs dd { overflow: hidden; margin: 0; color: #fff; font-size: 12px; font-weight: 700; line-height: 1.35; text-overflow: ellipsis; white-space: nowrap; }
.nvi-card-links { display: flex; justify-content: space-between; gap: 12px; margin: 14px 0; }
.nvi-card-links a { font-size: 11px; font-weight: 800; }
.nvi-carfax { color: #65b8ff !important; }
.nvi-details-link { margin-left: auto; color: var(--nvi-gold) !important; }
.nvi-card-actions { display: grid; grid-template-columns: .8fr 1.2fr; gap: 9px; }
.nvi-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 48px; padding: 12px 15px; border-radius: 8px; font-size: 13px; font-weight: 900; line-height: 1.2; text-align: center; transition: transform .2s, filter .2s, background .2s; }
.nvi-btn:hover { transform: translateY(-1px); filter: brightness(.96); }
.nvi-btn-gold { border: 1px solid var(--nvi-gold); background: var(--nvi-gold); color: #111 !important; }
.nvi-btn-gold span { color: #111 !important; }
.nvi-btn-dark { border: 1px solid #4b4b4b; background: #292929; color: #fff !important; }
.nvi-btn-outline { border: 1px solid #555; background: transparent; color: #fff !important; }
.nvi-btn-outline:hover { border-color: var(--nvi-gold); }
.nvi-btn-carfax { border: 1px solid #2687d8; background: #1166ae; color: #fff !important; }
.nvi-pagination { display: flex; flex-wrap: wrap; justify-content: center; gap: 7px; margin-top: 35px; }
.nvi-pagination .page-numbers { display: grid; min-width: 42px; height: 42px; place-items: center; padding: 0 10px; border: 1px solid #444; border-radius: 7px; background: #1e1e1e; color: #fff !important; font-size: 13px; font-weight: 800; }
.nvi-pagination .current { border-color: var(--nvi-gold); background: var(--nvi-gold); color: #111 !important; }
.nvi-no-results { padding: 45px 25px; border: 1px solid #3d3d3d; border-radius: 13px; background: #191919; color: #fff; text-align: center; }
.nvi-no-results strong { font-size: 22px; }
.nvi-no-results p { margin: 8px 0 0; color: var(--nvi-muted); }
.nvi-no-results a { color: var(--nvi-gold) !important; }

/* Individual vehicle page */
.nvi-single { width: 100%; min-height: 70vh; padding: 32px 12px 70px; background: #0d0d0d; }
.nvi-single-shell { width: 100%; max-width: 1280px; margin: 0 auto; }
.nvi-breadcrumbs { display: flex; flex-wrap: wrap; align-items: center; gap: 9px; margin-bottom: 20px; color: #8e8e8e; font-size: 12px; }
.nvi-breadcrumbs a { color: var(--nvi-gold) !important; font-weight: 800; }
.nvi-single-top { display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(350px, .85fr); gap: 28px; align-items: start; }
.nvi-gallery { min-width: 0; }
.nvi-gallery-main { position: relative; width: 100%; aspect-ratio: 16/10; overflow: hidden; border: 1px solid #3d3d3d; border-radius: 15px; background: #111; }
.nvi-gallery-slide { position: absolute; inset: 0; visibility: hidden; margin: 0; opacity: 0; transition: opacity .25s; }
.nvi-gallery-slide.is-active { visibility: visible; opacity: 1; }
.nvi-gallery-slide img { display: block; width: 100%; height: 100%; object-fit: cover; }
.nvi-single-no-photo { display: grid; width: 100%; height: 100%; place-items: center; color: #777; font-size: 14px; font-weight: 900; letter-spacing: 2px; }
.nvi-gallery-arrow { position: absolute; top: 50%; z-index: 3; display: grid; width: 44px; height: 55px; place-items: center; margin: 0; padding: 0 0 4px; transform: translateY(-50%); border: 1px solid rgba(255,255,255,.25); border-radius: 8px; background: rgba(0,0,0,.62); color: #fff; cursor: pointer; font-size: 38px; line-height: 1; backdrop-filter: blur(4px); }
.nvi-gallery-arrow:hover { background: var(--nvi-gold); color: #111; }
.nvi-prev { left: 14px; }
.nvi-next { right: 14px; }
.nvi-gallery-count { position: absolute; right: 14px; bottom: 14px; z-index: 3; padding: 7px 10px; border-radius: 6px; background: rgba(0,0,0,.72); color: #fff; font-size: 11px; }
.nvi-single-badge { position: absolute; top: 16px; left: 16px; z-index: 3; padding: 8px 11px; border-radius: 5px; background: var(--nvi-gold); color: #111; font-size: 11px; font-weight: 900; letter-spacing: .8px; }
.nvi-gallery-thumbs { display: flex; gap: 9px; margin-top: 10px; padding-bottom: 5px; overflow-x: auto; scrollbar-color: var(--nvi-gold) #222; }
.nvi-gallery-thumb { flex: 0 0 92px; width: 92px; height: 64px; overflow: hidden; margin: 0; padding: 0; border: 2px solid transparent; border-radius: 7px; background: #1d1d1d; cursor: pointer; opacity: .65; }
.nvi-gallery-thumb.is-active { border-color: var(--nvi-gold); opacity: 1; }
.nvi-gallery-thumb img { display: block; width: 100%; height: 100%; object-fit: cover; }
.nvi-vehicle-summary { position: sticky; top: 25px; overflow: hidden; padding: 28px; border: 1px solid #414141; border-top: 5px solid var(--nvi-gold); border-radius: 15px; background: var(--nvi-dark); box-shadow: 0 18px 45px rgba(0,0,0,.35); }
.nvi-summary-kicker { display: block; margin-bottom: 8px; color: var(--nvi-gold); font-size: 10px; font-weight: 900; letter-spacing: 1.5px; }
.nvi-vehicle-summary h1 { margin: 0; color: #fff; font-size: clamp(30px, 3vw, 43px); line-height: 1.06; }
.nvi-summary-trim { margin: 8px 0 0; color: var(--nvi-muted); font-size: 15px; }
.nvi-summary-price { margin: 22px 0 18px; padding-bottom: 18px; border-bottom: 1px solid #3b3b3b; }
.nvi-summary-price del { display: block; color: #888; font-size: 14px; }
.nvi-summary-price strong { display: block; color: var(--nvi-gold); font-size: 42px; line-height: 1.1; }
.nvi-summary-price.is-email-for-price strong { font-size: clamp(27px, 3vw, 36px); }
.nvi-summary-price small { display: block; margin-top: 5px; color: #aaa; font-size: 10px; }
.nvi-summary-price .nvi-summary-cash-price { margin-top: 10px; color: #fff; font-size: 13px; font-weight: 900; }
.nvi-summary-highlights { display: grid; grid-template-columns: 1fr 1fr; margin-bottom: 22px; border: 1px solid #383838; border-radius: 9px; }
.nvi-summary-highlights div { min-width: 0; padding: 12px; }
.nvi-summary-highlights div:nth-child(odd) { border-right: 1px solid #383838; }
.nvi-summary-highlights div:nth-child(-n+2) { border-bottom: 1px solid #383838; }
.nvi-summary-highlights span { display: block; margin-bottom: 3px; color: #8f8f8f; font-size: 9px; font-weight: 900; letter-spacing: .6px; text-transform: uppercase; }
.nvi-summary-highlights strong { display: block; overflow: hidden; color: #fff; font-size: 12px; line-height: 1.35; text-overflow: ellipsis; white-space: nowrap; }
.nvi-summary-actions { display: grid; gap: 10px; }
.nvi-summary-actions .nvi-btn { min-height: 52px; font-size: 14px; }
.nvi-carfax-report-link { display: grid; min-height: 150px; place-items: center; padding: 14px 16px 12px; overflow: hidden; border: 2px solid #1683c5; border-radius: 10px; background: #fff; text-align: center; transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease; }
.nvi-carfax-report-link:hover { transform: translateY(-2px); border-color: var(--nvi-gold); box-shadow: 0 9px 22px rgba(0,0,0,.32); text-decoration: none; }
.nvi-carfax-report-link > span { color: #111 !important; font-size: 14px; font-weight: 950; letter-spacing: 1.25px; line-height: 1.1; }
.nvi-carfax-report-link img { display: block; width: auto; max-width: 205px; height: 88px; margin: 4px auto 2px; object-fit: contain; }
.nvi-carfax-report-link small { color: #4f4f4f; font-size: 9px; font-weight: 850; letter-spacing: .35px; line-height: 1.25; text-transform: uppercase; }
.newcombs-carfax-report { display: flex; align-items: center; margin: 15px 0; }
.newcombs-carfax-link { display: inline-flex; flex-direction: column; align-items: center; gap: 4px; min-width: 190px; padding: 11px 16px; border: 2px solid var(--nvi-gold, #e8b22e); border-radius: 8px; background: #fff; color: #171717; text-align: center; text-decoration: none !important; transition: transform .2s ease, box-shadow .2s ease; }
.newcombs-carfax-link:hover { transform: translateY(-2px); box-shadow: 0 5px 14px rgba(0,0,0,.3); }
.newcombs-carfax-link .carfax-small-text { color: #171717 !important; font-size: 12px; font-weight: 800; line-height: 1; }
.newcombs-carfax-link img { display: block; width: 155px; max-width: 100%; height: 66px; object-fit: contain; }
.newcombs-carfax-link small { color: #555 !important; font-size: 9px; font-weight: 800; letter-spacing: .35px; line-height: 1.2; text-transform: uppercase; }
@media (max-width: 767px) { .newcombs-carfax-report { justify-content: center; } }
.nvi-summary-note { margin: 15px 0 0; color: #999; font-size: 10px; line-height: 1.5; text-align: center; }
.nvi-trust-message { margin-top: 46px; overflow: hidden; border: 1px solid #4c4124; border-top: 5px solid var(--nvi-gold); border-radius: 15px; background: var(--nvi-dark); box-shadow: 0 18px 45px rgba(0,0,0,.3); }
.nvi-price-disclosure { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 22px; align-items: center; padding: 20px 24px; border-bottom: 1px solid #4b4022; background: #211d12; }
.nvi-price-disclosure > p { margin: 0; color: #fff; font-size: 14px; font-weight: 700; line-height: 1.55; }
.nvi-price-disclosure > p strong { color: var(--nvi-gold); font-weight: 950; }
.nvi-cash-price { display: flex; min-height: 50px; align-items: center; justify-content: center; padding: 12px 18px; border-radius: 8px; background: var(--nvi-gold); color: #111 !important; font-size: 13px; font-weight: 950; line-height: 1.25; text-align: center; white-space: nowrap; }
.nvi-trust-content { padding: clamp(25px,4vw,42px); color: #d4d4d4; }
.nvi-trust-kicker { display: block; margin-bottom: 7px; color: var(--nvi-gold) !important; font-size: 10px; font-weight: 950; letter-spacing: 1.6px; }
.nvi-trust-content h2 { margin: 0 0 20px; color: #fff !important; font-size: clamp(30px,4vw,45px); line-height: 1.08; }
.nvi-trust-content > p { max-width: 960px; margin: 0 0 16px; color: #d4d4d4; font-size: 15px; line-height: 1.72; }
.nvi-trust-content > p strong { color: #fff; }
.nvi-trust-content .nvi-credit-message { max-width: none; margin: 24px 0; padding: 15px 18px; border-left: 5px solid var(--nvi-gold); border-radius: 7px; background: #24200f; color: #fff; font-size: clamp(17px,2vw,22px); font-weight: 850; line-height: 1.35; }
.nvi-credit-message strong { color: var(--nvi-gold) !important; font-weight: 950; }
.nvi-trust-content h3 { margin: 28px 0 15px; color: #fff !important; font-size: 21px; }
.nvi-trust-benefits { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 13px; margin: 0 0 25px; padding: 0; list-style: none; }
.nvi-trust-benefits li { display: grid; grid-template-columns: 26px minmax(0,1fr); gap: 10px; min-width: 0; padding: 18px; border: 1px solid #3d3d3d; border-radius: 10px; background: #202020; }
.nvi-trust-benefits li > span { display: grid; width: 25px; height: 25px; place-items: center; border-radius: 50%; background: var(--nvi-gold); color: #111 !important; font-size: 13px; font-weight: 950; }
.nvi-trust-benefits strong { display: block; margin-bottom: 5px; color: #fff; font-size: 14px; line-height: 1.35; }
.nvi-trust-benefits p { margin: 0; color: #aaa; font-size: 12px; line-height: 1.5; }
.nvi-trust-content .nvi-trust-closing { margin-bottom: 0; color: #fff; font-weight: 850; }
.nvi-detail-section { margin-top: 55px; padding-top: 8px; }
.nvi-section-heading { margin-bottom: 21px; }
.nvi-section-heading span { display: block; margin-bottom: 6px; color: var(--nvi-gold); font-size: 10px; font-weight: 900; letter-spacing: 1.5px; }
.nvi-section-heading h2 { margin: 0; color: #fff; font-size: clamp(27px, 4vw, 39px); line-height: 1.1; }
.nvi-spec-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 0; overflow: hidden; border: 1px solid #3b3b3b; border-radius: 13px; background: var(--nvi-dark); }
.nvi-spec-grid div { min-width: 0; padding: 18px; border-right: 1px solid #353535; border-bottom: 1px solid #353535; }
.nvi-spec-grid div:nth-child(4n) { border-right: 0; }
.nvi-spec-grid dt { margin: 0 0 5px; color: #8f8f8f; font-size: 9px; font-weight: 900; letter-spacing: .8px; text-transform: uppercase; }
.nvi-spec-grid dd { margin: 0; color: #fff; font-size: 14px; font-weight: 800; line-height: 1.35; overflow-wrap: anywhere; }
.nvi-description { display: grid; grid-template-columns: .65fr 1.35fr; gap: 45px; align-items: start; }
.nvi-prose { color: #d0d0d0; font-size: 15px; line-height: 1.8; }
.nvi-prose > *:first-child { margin-top: 0; }
.nvi-prose a { color: var(--nvi-gold) !important; }
.nvi-feature-groups { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 17px; }
.nvi-feature-group { padding: 22px; border: 1px solid #393939; border-radius: 12px; background: var(--nvi-dark); }
.nvi-feature-group h3 { margin: 0 0 16px; padding-bottom: 12px; border-bottom: 1px solid #393939; color: #fff; font-size: 18px; }
.nvi-feature-group ul { display: grid; grid-template-columns: 1fr 1fr; gap: 10px 16px; margin: 0; padding: 0; list-style: none; }
.nvi-feature-group li { display: flex; gap: 8px; color: #d5d5d5; font-size: 13px; line-height: 1.4; }
.nvi-feature-group li span { color: var(--nvi-gold); font-weight: 900; }
.nvi-history-box { margin-top: 35px; padding: 26px; border: 1px solid #59491f; border-left: 5px solid var(--nvi-gold); border-radius: 10px; background: #1d1a12; }
.nvi-history-box > span { display: block; margin-bottom: 8px; color: var(--nvi-gold); font-size: 10px; font-weight: 900; letter-spacing: 1.4px; }
.nvi-history-box p { margin: 0; color: #ddd; font-size: 14px; line-height: 1.7; }
.nvi-history-box a { display: inline-block; margin-top: 13px; color: var(--nvi-gold) !important; font-size: 13px; font-weight: 900; }
.nvi-video { width: 100%; overflow: hidden; border-radius: 13px; background: #171717; }
.nvi-video iframe { display: block; width: 100%; aspect-ratio: 16/9; height: auto; border: 0; }
.nvi-final-cta { display: flex; align-items: center; justify-content: space-between; gap: 30px; margin-top: 60px; padding: 34px; border: 1px solid #5b4b21; border-radius: 15px; background: linear-gradient(120deg, #1b1b1b 0%, #24200f 100%); }
.nvi-final-cta > div:first-child { max-width: 670px; }
.nvi-final-cta > div:last-child { display: flex; gap: 10px; }
.nvi-final-cta span { color: var(--nvi-gold); font-size: 10px; font-weight: 900; letter-spacing: 1.4px; }
.nvi-final-cta h2 { margin: 6px 0 7px; color: #fff; font-size: 31px; line-height: 1.15; }
.nvi-final-cta p { margin: 0; color: #bbb; font-size: 14px; }

/* Theme/Elementor protection */
.nvi-inventory .nvi-filters button,
.nvi-inventory .nvi-btn-gold,
.nvi-single .nvi-btn-gold { background: var(--nvi-gold) !important; color: #111 !important; }
.nvi-inventory .nvi-filters button span,
.nvi-inventory .nvi-btn-gold span,
.nvi-single .nvi-btn-gold span { color: #111 !important; }
.nvi-inventory .nvi-card,
.nvi-inventory .nvi-filters,
.nvi-single .nvi-vehicle-summary,
.nvi-single .nvi-feature-group,
.nvi-single .nvi-spec-grid { background-color: var(--nvi-dark) !important; }
.nvi-inventory h3,
.nvi-single h1,
.nvi-single h2,
.nvi-single h3 { color: #fff !important; }

@media (max-width: 1100px) {
  .nvi-filters,
  .nvi-filters-category { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .nvi-filters button { width: 100%; }
  .nvi-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .nvi-single-top { grid-template-columns: minmax(0, 1.2fr) minmax(320px, .8fr); gap: 20px; }
  .nvi-spec-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .nvi-spec-grid div:nth-child(4n) { border-right: 1px solid #353535; }
  .nvi-spec-grid div:nth-child(3n) { border-right: 0; }
  .nvi-final-cta { align-items: flex-start; flex-direction: column; }
}
@media (max-width: 780px) {
  .nvi-price-disclosure { grid-template-columns: minmax(0,1fr); gap: 15px; padding: 19px 17px; }
  .nvi-cash-price { width: 100%; white-space: normal; }
  .nvi-trust-benefits { grid-template-columns: minmax(0,1fr); }
}
@media (max-width: 820px) {
  .nvi-single-top { grid-template-columns: 1fr; }
  .nvi-vehicle-summary { position: static; }
  .nvi-spec-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .nvi-spec-grid div:nth-child(3n) { border-right: 1px solid #353535; }
  .nvi-spec-grid div:nth-child(2n) { border-right: 0; }
  .nvi-description { grid-template-columns: 1fr; gap: 8px; }
}
@media (max-width: 640px) {
  .nvi-inventory { padding: 15px 10px 45px; }
  .nvi-filters { grid-template-columns: 1fr; gap: 17px; padding: 20px 16px; }
  .nvi-filter-heading { display: block; }
  .nvi-filter-heading span { display: block; margin-bottom: 5px; }
  .nvi-filter-heading strong { font-size: 23px; }
  .nvi-filters input,
  .nvi-filters select,
  .nvi-filters button { width: 100% !important; height: 52px !important; min-height: 52px !important; margin: 0 !important; font-size: 16px !important; }
  .nvi-results-bar { display: block; margin: 25px 2px 14px; }
  .nvi-results-bar strong,
  .nvi-results-bar span { display: block; }
  .nvi-results-bar span { margin-top: 4px; }
  .nvi-grid { grid-template-columns: 1fr; gap: 20px; }
  .nvi-card-body { padding: 18px 16px; }
  .nvi-card h3 { font-size: 19px; }
  .nvi-card-actions { grid-template-columns: 1fr; }
  .nvi-card-actions .nvi-btn { width: 100%; min-height: 50px; }
  .nvi-single { padding: 20px 10px 50px; }
  .nvi-breadcrumbs { padding: 0 3px; }
  .nvi-gallery-main { aspect-ratio: 4/3; border-radius: 11px; }
  .nvi-gallery-arrow { width: 38px; height: 48px; font-size: 32px; }
  .nvi-prev { left: 8px; }
  .nvi-next { right: 8px; }
  .nvi-gallery-thumb { flex-basis: 78px; width: 78px; height: 55px; }
  .nvi-vehicle-summary { padding: 23px 17px; border-radius: 12px; }
  .nvi-vehicle-summary h1 { font-size: 32px; }
  .nvi-summary-price strong { font-size: 39px; }
  .nvi-summary-actions .nvi-btn { width: 100%; min-height: 54px; font-size: 14px; }
  .nvi-detail-section { margin-top: 43px; }
  .nvi-spec-grid { grid-template-columns: 1fr; }
  .nvi-spec-grid div,
  .nvi-spec-grid div:nth-child(n) { border-right: 0; }
  .nvi-feature-groups { grid-template-columns: 1fr; }
  .nvi-feature-group { padding: 20px 17px; }
  .nvi-feature-group ul { grid-template-columns: 1fr; }
  .nvi-history-box { padding: 21px 17px; }
  .nvi-final-cta { margin-top: 45px; padding: 25px 18px; }
  .nvi-final-cta > div:last-child { display: grid; width: 100%; }
  .nvi-final-cta .nvi-btn { width: 100%; min-height: 52px; }
  .nvi-final-cta h2 { font-size: 27px; }
}
@media (prefers-reduced-motion: reduce) {
  .nvi-inventory *, .nvi-single * { scroll-behavior: auto !important; transition: none !important; animation: none !important; }
}

/* v1.2 horizontal Newcombs inventory cards */
.nvi-inventory .nvi-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: 24px !important;
  width: 100% !important;
}
.nvi-inventory .nvi-card {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  overflow: hidden !important;
  border: 1px solid #d7d7d7 !important;
  border-radius: 18px !important;
  background: #f1f1f1 !important;
  color: #111 !important;
  box-shadow: 0 14px 34px rgba(0,0,0,.2) !important;
  transform: none !important;
}
.nvi-inventory .nvi-card:hover {
  border-color: #e8b22e !important;
  box-shadow: 0 18px 42px rgba(0,0,0,.3) !important;
  transform: translateY(-2px) !important;
}
.nvi-inventory .nvi-card-accent {
  width: 100% !important;
  height: 14px !important;
  background: linear-gradient(90deg,#e8b22e 0%,#ffd331 55%,#e8b22e 100%) !important;
}
.nvi-inventory .nvi-card-layout {
  display: grid !important;
  grid-template-columns: 285px minmax(0,1fr) 230px !important;
  gap: 26px !important;
  align-items: stretch !important;
  padding: 18px !important;
}
.nvi-inventory .nvi-card-visual {
  display: flex !important;
  min-width: 0 !important;
  flex-direction: column !important;
}
.nvi-inventory .nvi-card-media {
  position: relative !important;
  display: block !important;
  width: 100% !important;
  height: 190px !important;
  min-height: 190px !important;
  overflow: hidden !important;
  border-radius: 9px 9px 0 0 !important;
  background: #151515 !important;
  aspect-ratio: auto !important;
}
.nvi-inventory .nvi-card-media img {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
}
.nvi-inventory .nvi-card:hover .nvi-card-media img { transform: scale(1.025) !important; }
.nvi-inventory .nvi-no-photo {
  display: flex !important;
  width: 100% !important;
  height: 100% !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 5px !important;
  background: radial-gradient(circle at center,#292929 0%,#0e0e0e 75%) !important;
  color: #e8b22e !important;
}
.nvi-inventory .nvi-no-photo b { font-size: 24px !important; letter-spacing: 2px !important; }
.nvi-inventory .nvi-no-photo small { color: #fff !important; font-size: 10px !important; font-weight: 900 !important; letter-spacing: 1.5px !important; }
.nvi-inventory .nvi-badge {
  position: absolute !important;
  top: 10px !important;
  left: 10px !important;
  z-index: 2 !important;
  padding: 7px 10px !important;
  border: 0 !important;
  border-radius: 5px !important;
  background: #e8b22e !important;
  color: #111 !important;
  font-size: 9px !important;
  font-weight: 950 !important;
  letter-spacing: .7px !important;
}
.nvi-inventory .nvi-body-badge {
  position: absolute !important;
  right: 10px !important;
  bottom: 10px !important;
  z-index: 2 !important;
  padding: 6px 9px !important;
  border: 1px solid rgba(255,255,255,.4) !important;
  border-radius: 5px !important;
  background: rgba(0,0,0,.72) !important;
  color: #fff !important;
  font-size: 9px !important;
  font-weight: 900 !important;
  letter-spacing: .7px !important;
}
.nvi-inventory .nvi-photo-footer {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 8px !important;
  min-height: 32px !important;
  padding: 7px 9px !important;
  border-radius: 0 0 9px 9px !important;
  background: #171717 !important;
  color: #fff !important;
  font-size: 8px !important;
  font-weight: 900 !important;
  letter-spacing: .45px !important;
}
.nvi-inventory .nvi-photo-footer strong { color: #e8b22e !important; font-size: 10px !important; white-space: nowrap !important; }
.nvi-inventory .nvi-card-content {
  display: flex !important;
  min-width: 0 !important;
  flex-direction: column !important;
  padding: 7px 0 0 !important;
}
.nvi-inventory .nvi-card-heading { margin: 0 0 14px !important; }
.nvi-inventory .nvi-card-heading h3 {
  margin: 0 !important;
  color: #111 !important;
  font-size: clamp(22px,2.1vw,31px) !important;
  font-weight: 950 !important;
  line-height: 1.08 !important;
  text-transform: uppercase !important;
}
.nvi-inventory .nvi-card-heading h3 a { color: #111 !important; }
.nvi-inventory .nvi-card-heading h3 a:hover { color: #8a6500 !important; }
.nvi-inventory .nvi-trim { margin: 5px 0 0 !important; color: #555 !important; font-size: 12px !important; font-weight: 750 !important; }
.nvi-inventory .nvi-quick-specs {
  display: grid !important;
  grid-template-columns: repeat(2,minmax(0,1fr)) !important;
  gap: 11px 20px !important;
  margin: 0 0 19px !important;
}
.nvi-inventory .nvi-quick-specs > div {
  display: grid !important;
  grid-template-columns: 24px minmax(0,1fr) !important;
  gap: 7px !important;
  align-items: center !important;
  min-width: 0 !important;
}
.nvi-inventory .nvi-spec-icon { color: #111 !important; font-size: 20px !important; font-weight: 900 !important; text-align: center !important; }
.nvi-inventory .nvi-quick-specs p { min-width: 0 !important; margin: 0 !important; }
.nvi-inventory .nvi-quick-specs small { display: block !important; margin-bottom: 1px !important; color: #777 !important; font-size: 8px !important; font-weight: 900 !important; letter-spacing: .55px !important; line-height: 1.1 !important; text-transform: uppercase !important; }
.nvi-inventory .nvi-quick-specs strong { display: block !important; overflow: hidden !important; color: #111 !important; font-size: 12px !important; font-weight: 800 !important; line-height: 1.3 !important; text-overflow: ellipsis !important; white-space: nowrap !important; }
.nvi-inventory .nvi-card-actions {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 9px !important;
  margin-top: auto !important;
}
.nvi-inventory .nvi-card-button {
  display: inline-flex !important;
  min-height: 42px !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 10px 17px !important;
  border: 1px solid #111 !important;
  border-radius: 999px !important;
  background: #111 !important;
  color: #fff !important;
  font-size: 11px !important;
  font-weight: 900 !important;
  line-height: 1.1 !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}
.nvi-inventory .nvi-card-button:hover { background: #292929 !important; color: #fff !important; transform: translateY(-1px) !important; }
.nvi-inventory .nvi-card-button-gold { border-color: #e8b22e !important; background: #e8b22e !important; color: #111 !important; }
.nvi-inventory .nvi-card-button-gold:hover { background: #f6c531 !important; color: #111 !important; }
.nvi-inventory .nvi-card-offer {
  display: flex !important;
  min-width: 0 !important;
  flex-direction: column !important;
  align-items: stretch !important;
  justify-content: center !important;
  gap: 16px !important;
  padding: 7px 0 !important;
  text-align: center !important;
}
.nvi-inventory .nvi-price-pill {
  display: flex !important;
  min-height: 47px !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 8px !important;
  padding: 10px 15px !important;
  border-radius: 999px !important;
  background: #e8b22e !important;
  color: #111 !important;
}
.nvi-inventory .nvi-price-pill del { color: #6e5200 !important; font-size: 10px !important; }
.nvi-inventory .nvi-price-pill strong { color: #111 !important; font-size: 20px !important; font-weight: 950 !important; }
.nvi-inventory .nvi-price-pill.is-email-for-price strong { font-size: 15px !important; letter-spacing: .2px !important; text-transform: uppercase !important; }
.nvi-inventory .nvi-price-pill.has-cash-price { min-height: 63px !important; flex-direction: column !important; gap: 2px !important; }
.nvi-inventory .nvi-price-main { display: flex !important; align-items: baseline !important; justify-content: center !important; gap: 8px !important; }
.nvi-inventory .nvi-card-cash-price { color: #332800 !important; font-size: 10px !important; font-weight: 900 !important; line-height: 1.2 !important; }
.nvi-inventory .nvi-mpg { display: grid !important; grid-template-columns: 42px 1fr !important; align-items: center !important; padding: 4px 12px !important; }
.nvi-inventory .nvi-mpg > span { grid-row: 1/3 !important; color: #111 !important; font-size: 34px !important; }
.nvi-inventory .nvi-mpg small { color: #666 !important; font-size: 10px !important; font-weight: 800 !important; }
.nvi-inventory .nvi-mpg strong { color: #111 !important; font-size: 13px !important; }
.nvi-inventory .nvi-carfax-box,
.nvi-inventory .nvi-stock-box {
  display: flex !important;
  min-height: 83px !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 12px !important;
  border: 2px solid #111 !important;
  border-radius: 8px !important;
  background: #fff !important;
  color: #111 !important;
}
.nvi-inventory .nvi-carfax-box span,
.nvi-inventory .nvi-stock-box small { color: #111 !important; font-size: 9px !important; font-weight: 900 !important; letter-spacing: .5px !important; }
.nvi-inventory .nvi-carfax-box strong { padding: 3px 6px !important; background: #1269ab !important; color: #fff !important; font-size: 20px !important; letter-spacing: 2px !important; line-height: 1 !important; }
.nvi-inventory .nvi-carfax-box small { margin-top: 5px !important; color: #555 !important; font-size: 8px !important; font-weight: 750 !important; }
.nvi-inventory .nvi-stock-box strong { margin-top: 5px !important; color: #111 !important; font-size: 16px !important; }

@media (max-width: 1050px) {
  .nvi-inventory .nvi-card-layout { grid-template-columns: 250px minmax(0,1fr) 190px !important; gap: 18px !important; }
  .nvi-inventory .nvi-card-media { height: 175px !important; min-height: 175px !important; }
  .nvi-inventory .nvi-quick-specs { gap: 9px 12px !important; }
  .nvi-inventory .nvi-card-button { padding: 10px 13px !important; font-size: 10px !important; }
}
@media (max-width: 820px) {
  .nvi-inventory .nvi-card-layout { grid-template-columns: 240px minmax(0,1fr) !important; }
  .nvi-inventory .nvi-card-offer { grid-column: 1/-1 !important; display: grid !important; grid-template-columns: 1fr 1fr 1fr !important; align-items: center !important; padding: 0 !important; }
  .nvi-inventory .nvi-price-pill { min-height: 60px !important; }
  .nvi-inventory .nvi-carfax-box,.nvi-inventory .nvi-stock-box { min-height: 60px !important; }
}
@media (max-width: 620px) {
  .nvi-inventory .nvi-card-accent { height: 10px !important; }
  .nvi-inventory .nvi-card-layout { grid-template-columns: minmax(0,1fr) !important; gap: 18px !important; padding: 14px !important; }
  .nvi-inventory .nvi-card-media { height: auto !important; min-height: 220px !important; aspect-ratio: 16/10 !important; }
  .nvi-inventory .nvi-card-content { padding: 0 !important; }
  .nvi-inventory .nvi-card-heading h3 { font-size: 25px !important; }
  .nvi-inventory .nvi-quick-specs { grid-template-columns: minmax(0,1fr) minmax(0,1fr) !important; gap: 13px 8px !important; }
  .nvi-inventory .nvi-quick-specs strong { font-size: 11px !important; }
  .nvi-inventory .nvi-card-actions { display: grid !important; grid-template-columns: 1fr !important; }
  .nvi-inventory .nvi-card-button { width: 100% !important; min-height: 48px !important; font-size: 11px !important; }
  .nvi-inventory .nvi-card-offer { grid-column: auto !important; grid-template-columns: 1fr !important; }
  .nvi-inventory .nvi-price-pill { min-height: 52px !important; }
  .nvi-inventory .nvi-mpg { max-width: 190px !important; margin: 0 auto !important; }
  .nvi-inventory .nvi-carfax-box,.nvi-inventory .nvi-stock-box { min-height: 75px !important; }
}

/* v1.3 automatic homepage inventory showcases */
.nvi-showcase,
.nvi-showcase * { box-sizing: border-box; }
.nvi-showcase {
  --nvi-gold: #e8b22e;
  --nvi-dark: #171717;
  width: 100%;
  max-width: 1280px;
  margin: 0 auto;
  padding: 34px 12px 44px;
  color: #fff;
  font-family: Inter, Arial, Helvetica, sans-serif;
}
.nvi-showcase-header { display: flex; align-items: flex-end; justify-content: space-between; gap: 30px; margin: 0 0 25px; }
.nvi-showcase-header > div { max-width: 760px; }
.nvi-showcase-header > div > span { display: block; margin-bottom: 7px; color: var(--nvi-gold) !important; font-size: 11px; font-weight: 950; letter-spacing: 1.8px; }
.nvi-showcase-header h2 { margin: 0; color: #fff !important; font-size: clamp(31px,4vw,48px); font-weight: 950; line-height: 1.05; text-transform: uppercase; }
.nvi-showcase-header p { max-width: 670px; margin: 10px 0 0; color: #c6c6c6 !important; font-size: 15px; line-height: 1.55; }
.nvi-showcase-all { display: inline-flex; min-height: 48px; flex: 0 0 auto; align-items: center; justify-content: center; gap: 10px; padding: 12px 20px; border: 2px solid var(--nvi-gold); border-radius: 999px; background: transparent; color: #fff !important; font-size: 12px; font-weight: 900; text-transform: uppercase; transition: background .2s,color .2s,transform .2s; }
.nvi-showcase-all span { color: var(--nvi-gold) !important; font-size: 18px; }
.nvi-showcase-all:hover { background: var(--nvi-gold); color: #111 !important; transform: translateY(-1px); }
.nvi-showcase-all:hover span { color: #111 !important; }
.nvi-showcase-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 22px; }
.nvi-showcase-card { min-width: 0; overflow: hidden; border: 1px solid #373737; border-radius: 15px; background: var(--nvi-dark) !important; box-shadow: 0 16px 36px rgba(0,0,0,.32); transition: border-color .22s,transform .22s,box-shadow .22s; }
.nvi-showcase-card:hover { border-color: var(--nvi-gold); transform: translateY(-4px); box-shadow: 0 22px 46px rgba(0,0,0,.44); }
.nvi-showcase-media { position: relative; display: block; width: 100%; aspect-ratio: 16/10; overflow: hidden; border-bottom: 4px solid var(--nvi-gold); background: #0d0d0d; }
.nvi-showcase-media img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .45s; }
.nvi-showcase-card:hover .nvi-showcase-media img { transform: scale(1.04); }
.nvi-showcase-no-photo { display: flex; width: 100%; height: 100%; flex-direction: column; align-items: center; justify-content: center; background: radial-gradient(circle at center,#292929 0%,#080808 78%); color: var(--nvi-gold) !important; }
.nvi-showcase-no-photo b { font-size: 25px; letter-spacing: 2px; }
.nvi-showcase-no-photo small { margin-top: 4px; color: #fff !important; font-size: 9px; font-weight: 900; letter-spacing: 1.5px; }
.nvi-showcase-badge,.nvi-showcase-body { position: absolute; z-index: 2; padding: 7px 10px; border-radius: 5px; font-size: 9px; font-weight: 950; letter-spacing: .75px; }
.nvi-showcase-badge { top: 11px; left: 11px; background: var(--nvi-gold); color: #111 !important; }
.nvi-showcase-body { right: 11px; bottom: 11px; border: 1px solid rgba(255,255,255,.45); background: rgba(0,0,0,.76); color: #fff !important; }
.nvi-showcase-card-body { padding: 19px; }
.nvi-showcase-title-row { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 12px; align-items: start; }
.nvi-showcase-title-row h3 { margin: 0; color: #fff !important; font-size: 20px; font-weight: 900; line-height: 1.18; text-transform: uppercase; }
.nvi-showcase-title-row h3 a { color: #fff !important; }
.nvi-showcase-title-row h3 a:hover { color: var(--nvi-gold) !important; }
.nvi-showcase-title-row > div:first-child > small { display: block; margin-top: 6px; color: #929292 !important; font-size: 9px; font-weight: 800; letter-spacing: .5px; text-transform: uppercase; }
.nvi-showcase-price { min-width: 98px; text-align: right; }
.nvi-showcase-price del { display: block; color: #8f8f8f !important; font-size: 10px; }
.nvi-showcase-price strong { display: block; color: var(--nvi-gold) !important; font-size: 20px; font-weight: 950; line-height: 1.15; }
.nvi-showcase-specs { display: grid; grid-template-columns: 1fr 1fr; margin: 17px 0; overflow: hidden; border: 1px solid #363636; border-radius: 8px; }
.nvi-showcase-specs > span { min-width: 0; padding: 10px 11px; }
.nvi-showcase-specs > span + span { border-left: 1px solid #363636; }
.nvi-showcase-specs small { display: block; margin-bottom: 3px; color: #8e8e8e !important; font-size: 8px; font-weight: 900; letter-spacing: .65px; }
.nvi-showcase-specs strong { display: block; overflow: hidden; color: #fff !important; font-size: 11px; font-weight: 800; line-height: 1.3; text-overflow: ellipsis; white-space: nowrap; }
.nvi-showcase-links { display: grid; grid-template-columns: .9fr 1.1fr; gap: 8px; }
.nvi-showcase-links a { display: flex; min-height: 44px; align-items: center; justify-content: center; padding: 10px 12px; border-radius: 999px; font-size: 10px; font-weight: 950; text-align: center; text-transform: uppercase; }
.nvi-showcase-details { border: 1px solid #5b5b5b; background: #272727; color: #fff !important; }
.nvi-showcase-details:hover { border-color: #fff; background: #333; color: #fff !important; }
.nvi-showcase-finance { border: 1px solid var(--nvi-gold); background: var(--nvi-gold); color: #111 !important; }
.nvi-showcase-finance:hover { filter: brightness(1.08); color: #111 !important; }
.nvi-showcase-secondary { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: 13px; }
.nvi-showcase-secondary a { color: #bdbdbd !important; font-size: 9px; font-weight: 800; }
.nvi-showcase-secondary a:hover { color: var(--nvi-gold) !important; }
.nvi-showcase-empty { padding: 38px 22px; border: 1px solid #3b3b3b; border-left: 5px solid var(--nvi-gold); border-radius: 12px; background: var(--nvi-dark); color: #fff; }
.nvi-showcase-empty strong { font-size: 21px; }
.nvi-showcase-empty p { margin: 7px 0 0; color: #bbb; }
.nvi-showcase-empty a { color: var(--nvi-gold) !important; }
@media (max-width: 1020px) { .nvi-showcase-grid { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media (max-width: 680px) {
  .nvi-showcase { padding: 26px 10px 36px; }
  .nvi-showcase-header { align-items: flex-start; flex-direction: column; gap: 18px; }
  .nvi-showcase-header h2 { font-size: 33px; }
  .nvi-showcase-header p { font-size: 14px; }
  .nvi-showcase-all { width: 100%; }
  .nvi-showcase-grid { grid-template-columns: minmax(0,1fr); gap: 19px; }
  .nvi-showcase-card-body { padding: 18px 16px; }
  .nvi-showcase-title-row { grid-template-columns: minmax(0,1fr); }
  .nvi-showcase-price { text-align: left; }
  .nvi-showcase-price del,.nvi-showcase-price strong { display: inline; }
  .nvi-showcase-price del { margin-right: 7px; }
  .nvi-showcase-links { grid-template-columns: 1fr; }
  .nvi-showcase-links a { min-height: 48px; font-size: 11px; }
  .nvi-showcase-secondary { align-items: flex-start; flex-direction: column; }
}
@media (prefers-reduced-motion: reduce) { .nvi-showcase * { transition: none !important; } }

/* v1.7 unified vehicle-photo sizing */
.nvi-inventory .nvi-card-media,
.nvi-showcase .nvi-showcase-media {
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  aspect-ratio: var(--nvi-image-ratio, 4 / 3) !important;
  background: #0b0b0b !important;
}
.nvi-inventory .nvi-card-media img,
.nvi-showcase .nvi-showcase-media img,
.nvi-single .nvi-gallery-slide img,
.nvi-single .nvi-gallery-thumb img {
  width: 100% !important;
  height: 100% !important;
  object-fit: var(--nvi-image-fit, contain) !important;
  object-position: center center !important;
  background: #0b0b0b !important;
}
.nvi-single .nvi-gallery-main {
  height: auto !important;
  min-height: 0 !important;
  aspect-ratio: var(--nvi-image-ratio, 4 / 3) !important;
  background: #0b0b0b !important;
}
.nvi-inventory .nvi-badge.nvi-badge-carfax {
  top: auto !important;
  right: auto !important;
  bottom: 10px !important;
  left: 10px !important;
}
.nvi-single .nvi-single-badge.nvi-single-badge-carfax {
  top: auto !important;
  right: 16px !important;
  bottom: 16px !important;
  left: auto !important;
}

/* v1.8 automatic dealership photo branding */
.nvi-inventory .nvi-card-media {
  container-type: inline-size !important;
  isolation: isolate !important;
}
.nvi-inventory .nvi-card-media > img.nvi-vehicle-photo {
  position: relative !important;
  z-index: 0 !important;
}
.nvi-inventory .nvi-auto-photo-banner {
  position: absolute !important;
  top: 0 !important;
  right: 0 !important;
  left: 0 !important;
  z-index: 4 !important;
  display: grid !important;
  grid-template-columns: minmax(0, 59fr) minmax(0, 41fr) !important;
  width: 100% !important;
  min-height: 20% !important;
  pointer-events: none !important;
}
.nvi-inventory .nvi-auto-inspection {
  display: flex !important;
  min-width: 0 !important;
  flex-direction: column !important;
  justify-content: center !important;
  padding: 2.2% 7% 2.8% 5.5% !important;
  border-bottom: 2px solid var(--nvi-gold) !important;
  border-bottom-right-radius: 28% 44% !important;
  background: #171717 !important;
  box-shadow: 5px 2px 0 rgba(0,0,0,.8) !important;
  color: #fff !important;
  font-family: Inter, Arial, Helvetica, sans-serif !important;
  font-size: clamp(6.5px, 3cqw, 11px) !important;
  font-weight: 800 !important;
  line-height: 1.08 !important;
  text-align: left !important;
}
.nvi-inventory .nvi-auto-inspection span,
.nvi-inventory .nvi-auto-inspection strong {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #fff !important;
  font: inherit !important;
  line-height: inherit !important;
}
.nvi-inventory .nvi-auto-phone {
  display: flex !important;
  min-width: 0 !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 4% !important;
  padding: 2.5% 4% !important;
  background: var(--nvi-gold) !important;
  color: #111 !important;
  font-family: Inter, Arial, Helvetica, sans-serif !important;
  font-size: clamp(6.5px, 3.05cqw, 11px) !important;
  font-weight: 950 !important;
  line-height: 1 !important;
  text-align: center !important;
  white-space: nowrap !important;
}
.nvi-inventory .nvi-auto-phone b,
.nvi-inventory .nvi-auto-phone strong {
  margin: 0 !important;
  padding: 0 !important;
  color: #111 !important;
  font: inherit !important;
  line-height: inherit !important;
  white-space: nowrap !important;
}
.nvi-inventory .nvi-auto-phone b {
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: 1.2em !important;
}
.nvi-inventory .nvi-card-media img.nvi-carfax-art {
  position: absolute !important;
  right: auto !important;
  bottom: 0 !important;
  left: 1.5% !important;
  z-index: 5 !important;
  display: block !important;
  width: 26% !important;
  max-width: 128px !important;
  height: auto !important;
  max-height: 41% !important;
  object-fit: contain !important;
  object-position: left bottom !important;
  background: transparent !important;
  filter: drop-shadow(0 2px 2px rgba(0,0,0,.35)) !important;
  pointer-events: none !important;
  transform: none !important;
}
.nvi-inventory .nvi-card:hover .nvi-card-media img.nvi-carfax-art {
  transform: none !important;
}
.nvi-inventory .nvi-card-media .nvi-badge {
  top: auto !important;
  right: 10px !important;
  bottom: 10px !important;
  left: auto !important;
  z-index: 6 !important;
}
.nvi-inventory .nvi-body-badge,
.nvi-inventory .nvi-photo-footer {
  display: none !important;
}
@supports not (font-size: 1cqw) {
  .nvi-inventory .nvi-auto-inspection { font-size: 8px !important; }
  .nvi-inventory .nvi-auto-phone { font-size: 8px !important; }
}
