:root {
    --bg: #090909;
    --panel: #111111;
    --panel-soft: #161616;
    --text: #f6f1e7;
    --muted: #b8ab8f;
    --gold: #d4af37;
    --gold-soft: #f2d57a;
    --gold-deep: #8b6a16;
    --line: rgba(212, 175, 55, 0.22);
    --shadow: 0 20px 60px rgba(0, 0, 0, 0.35);
    --radius: 24px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
    margin: 0;
    font-family: 'Inter', sans-serif;
    background:
        radial-gradient(circle at top right, rgba(212, 175, 55, 0.10), transparent 28%),
        radial-gradient(circle at bottom left, rgba(212, 175, 55, 0.06), transparent 24%),
        linear-gradient(180deg, #040404, #0a0a0a 32%, #090909 100%);
    color: var(--text);
}

a { color: inherit; text-decoration: none; }
p { color: rgba(246, 241, 231, 0.82); line-height: 1.75; margin: 0; }
h1, h2, h3, h4 {
    font-family: 'Cormorant Garamond', serif;
    font-weight: 600;
    margin: 0;
    color: #fffaf0;
}

.page-shell {
    max-width: 1400px;
    margin: 0 auto;
    padding: 24px;
}

.site-header {
    position: sticky;
    top: 0;
    z-index: 20;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    padding: 18px 24px;
    margin-bottom: 28px;
    border: 1px solid var(--line);
    background: rgba(9, 9, 9, 0.74);
    backdrop-filter: blur(18px);
    border-radius: 999px;
    box-shadow: var(--shadow);
    transition: transform 0.25s ease, background 0.25s ease, border-color 0.25s ease;
}
.site-header.is-scrolled {
    transform: translateY(6px);
    background: rgba(9, 9, 9, 0.90);
    border-color: rgba(242, 213, 122, 0.36);
}

.brand-kicker {
    display: block;
    font-size: 0.78rem;
    letter-spacing: 0.4em;
    text-transform: uppercase;
    color: var(--gold-soft);
}
.brand-name {
    font-size: 2rem;
    font-family: 'Cormorant Garamond', serif;
}
.site-nav {
    display: flex;
    flex-wrap: wrap;
    gap: 18px;
}
.site-nav a {
    color: var(--muted);
    text-transform: uppercase;
    letter-spacing: 0.12em;
    font-size: 0.8rem;
    position: relative;
}
.site-nav a::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: -6px;
    width: 100%;
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--gold-soft), transparent);
    transform: scaleX(0);
    transition: transform 0.2s ease;
}
.site-nav a:hover::after { transform: scaleX(1); }
.site-nav a:hover,
.text-link,
.button-secondary { color: var(--gold-soft); }

.hero, .split-section {
    display: grid;
    grid-template-columns: 1.08fr 0.92fr;
    gap: 28px;
}
.hero {
    min-height: 76vh;
    align-items: center;
    padding: 56px 0 46px;
}
.hero-copy h1,
.page-banner h1 {
    font-size: clamp(3.2rem, 6vw, 5.7rem);
    line-height: 0.95;
    max-width: 11ch;
    margin: 14px 0 18px;
}
.hero-copy p,
.page-banner p { max-width: 66ch; }
.eyebrow,
.mini-kicker {
    display: inline-block;
    color: var(--gold-soft);
    letter-spacing: 0.28em;
    text-transform: uppercase;
    font-size: 0.74rem;
}
.mini-kicker { letter-spacing: 0.18em; }
.hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 28px;
}
.button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 14px 22px;
    border-radius: 999px;
    border: 1px solid var(--line);
    font-weight: 600;
    transition: transform 0.2s ease, border-color 0.2s ease;
}
.button:hover { transform: translateY(-2px); }
.button.small { padding: 10px 16px; font-size: 0.9rem; }
.button-primary {
    color: #16110a;
    background: linear-gradient(135deg, #fae39b, var(--gold));
}
.button-secondary {
    background: rgba(255,255,255,0.02);
}
.hero-panel,
.page-banner,
.lux-card,
.form-card,
.service-card,
.feature-strip,
.glass-card,
.metric-card {
    border: 1px solid var(--line);
    border-radius: var(--radius);
    background: linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0.01));
    box-shadow: var(--shadow);
}
.hero-home .hero-panel-home {
    padding: 22px;
    min-height: 560px;
    display: flex;
    flex-direction: column;
    justify-content: end;
    background:
        linear-gradient(180deg, rgba(0,0,0,0.12), rgba(0,0,0,0.62)),
        radial-gradient(circle at 50% 25%, rgba(212,175,55,0.22), rgba(0,0,0,0.02) 52%),
        linear-gradient(135deg, #171717, #0a0a0a 54%, #17120a);
    overflow: hidden;
    position: relative;
}
.hero-home .hero-panel-home::before {
    content: '';
    position: absolute;
    inset: 18px;
    border-radius: calc(var(--radius) - 8px);
    border: 1px solid rgba(255,255,255,0.05);
    pointer-events: none;
}
.glass-card {
    padding: 28px;
    max-width: 430px;
    background: rgba(17,17,17,0.72);
    backdrop-filter: blur(14px);
}
.glass-floating { margin-bottom: 18px; }
.card-label, .pill {
    display: inline-flex;
    padding: 8px 12px;
    border-radius: 999px;
    border: 1px solid rgba(242, 213, 122, 0.35);
    color: var(--gold-soft);
    background: rgba(212, 175, 55, 0.08);
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.14em;
}
.hero-metrics,
.stats-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}
.metric-card {
    padding: 18px 20px;
    background: linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0.02));
}
.metric-card strong {
    display: block;
    font-size: 2rem;
    color: var(--gold-soft);
    margin-bottom: 8px;
}
.metric-card span { color: var(--muted); }
.metric-card-wide { min-height: 100%; }

.brand-ribbon {
    padding-top: 0;
}
.logo-row {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 14px;
}
.logo-row span {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 78px;
    border: 1px solid rgba(255,255,255,0.05);
    border-radius: 18px;
    color: rgba(246,241,231,0.6);
    letter-spacing: 0.14em;
    text-transform: uppercase;
    font-size: 0.78rem;
    background: rgba(255,255,255,0.02);
}

.section { padding: 38px 0; }
.section-heading { margin-bottom: 24px; }
.split-heading {
    display: flex;
    justify-content: space-between;
    align-items: end;
    gap: 20px;
}
.section-heading h2,
.split-section h2,
.form-card h2,
.service-card h2 {
    font-size: clamp(2rem, 4vw, 3.3rem);
    margin-top: 8px;
}
.card-grid { display: grid; gap: 18px; }
.card-grid-4 { grid-template-columns: repeat(4, 1fr); }
.card-grid-3 { grid-template-columns: repeat(3, 1fr); }
.card-grid-2 { grid-template-columns: repeat(2, 1fr); }
.lux-card,
.service-card,
.feature-strip,
.form-card { padding: 24px; }
.lead {
    font-size: 1.05rem;
    color: var(--gold-soft);
    margin: 10px 0 12px;
}
.meta-list {
    list-style: none;
    padding: 0;
    margin: 14px 0 18px;
    display: grid;
    gap: 8px;
    color: var(--muted);
}
.meta-list.compact { gap: 6px; }
.stack, .service-list { display: grid; gap: 16px; }

.vehicle-card { overflow: hidden; padding: 0; }
.vehicle-visual {
    min-height: 180px;
    padding: 18px;
    display: flex;
    align-items: start;
    justify-content: space-between;
    background:
        radial-gradient(circle at top, rgba(212,175,55,0.24), transparent 34%),
        linear-gradient(135deg, #1a1a1a, #080808 56%, #15100b);
}
.dark-visual {
    min-height: 165px;
    align-items: end;
}
.ghost-year {
    font-size: 2.2rem;
    font-family: 'Cormorant Garamond', serif;
    color: rgba(255,255,255,0.24);
}
.vehicle-copy { padding: 24px; }
.tag-row {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0 0 18px;
}
.tag-row span,
.check-item,
.bullet-item {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 12px;
    border-radius: 999px;
    background: rgba(255,255,255,0.03);
    border: 1px solid rgba(255,255,255,0.06);
    color: var(--muted);
}
.check-list,
.bullet-stack {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 24px 0;
}
.compact-checks { margin-bottom: 28px; }
.lift-card,
.service-tile,
.showroom-card {
    transition: transform 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}
.lift-card:hover,
.service-tile:hover,
.showroom-card:hover,
.vehicle-card:hover {
    transform: translateY(-4px);
    border-color: rgba(242,213,122,0.38);
}

.page-banner {
    padding: 36px;
    margin-bottom: 22px;
    background:
      linear-gradient(180deg, rgba(212,175,55,0.08), rgba(255,255,255,0.01)),
      linear-gradient(135deg, #151515, #090909);
}
.banner-angled {
    position: relative;
    overflow: hidden;
}
.banner-angled::after {
    content: '';
    position: absolute;
    top: -40px;
    right: -80px;
    width: 260px;
    height: 260px;
    background: radial-gradient(circle, rgba(212,175,55,0.18), transparent 62%);
}
.filter-bar,
.form-grid,
.chip-grid,
.steps {
    display: grid;
    gap: 14px;
}
.filter-bar { grid-template-columns: repeat(4, minmax(0,1fr)); margin-bottom: 18px; }
.filter-bar-stock { grid-template-columns: repeat(5, minmax(0,1fr)); }
.form-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
input, select, textarea {
    width: 100%;
    padding: 15px 16px;
    border-radius: 16px;
    border: 1px solid rgba(255,255,255,0.08);
    background: rgba(255,255,255,0.03);
    color: var(--text);
    font: inherit;
}
textarea { min-height: 160px; resize: vertical; }
.full, .full-span { grid-column: 1 / -1; }
.steps { grid-template-columns: repeat(5, 1fr); margin-bottom: 16px; }
.step, .chip {
    border: 1px solid var(--line);
    border-radius: 16px;
    padding: 12px 14px;
    background: rgba(255,255,255,0.02);
}
.premium-steps .step {
    text-align: center;
    color: var(--muted);
}
.chip-grid { grid-template-columns: repeat(4, 1fr); }
.checkbox {
    display: block;
    margin: 14px 0;
    color: var(--muted);
}
.contact-form,
.info-panel { height: fit-content; }
.form-shell-v2 {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 18px;
}
.stage-head {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 18px;
}
.results-bar,
.card-actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}
.results-bar { margin-bottom: 18px; }
.service-featured {
    display: grid;
    grid-template-columns: auto 1fr auto;
    gap: 20px;
    align-items: start;
}
.service-icon,
.avatar-badge {
    width: 58px;
    height: 58px;
    border-radius: 18px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, rgba(242,213,122,0.18), rgba(212,175,55,0.08));
    border: 1px solid rgba(242,213,122,0.26);
    color: var(--gold-soft);
    font-weight: 700;
    letter-spacing: 0.08em;
}
.timeline {
    display: grid;
    gap: 12px;
    margin-top: 24px;
}
.timeline-item {
    display: grid;
    grid-template-columns: 88px 1fr;
    gap: 12px;
    padding: 16px;
    border-radius: 18px;
    border: 1px solid rgba(255,255,255,0.06);
    background: rgba(255,255,255,0.02);
}
.timeline-item span {
    color: var(--gold-soft);
    font-weight: 700;
    letter-spacing: 0.12em;
}
.empty-state {
    grid-column: 1 / -1;
    text-align: center;
}
.site-footer {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin-top: 38px;
    padding: 26px;
    border-top: 1px solid var(--line);
    color: var(--muted);
}
.site-footer h4 { margin-bottom: 10px; }

@media (max-width: 1200px) {
    .card-grid-4 { grid-template-columns: repeat(2, 1fr); }
    .filter-bar-stock { grid-template-columns: repeat(3, minmax(0,1fr)); }
    .chip-grid { grid-template-columns: repeat(3, 1fr); }
    .logo-row { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 980px) {
    .hero,
    .split-section,
    .card-grid-3,
    .card-grid-2,
    .form-shell-v2,
    .service-featured {
        grid-template-columns: 1fr;
    }
    .stats-grid,
    .hero-metrics,
    .filter-bar,
    .steps,
    .chip-grid { grid-template-columns: 1fr 1fr; }
    .split-heading,
    .results-bar,
    .card-actions {
        flex-direction: column;
        align-items: start;
    }
}

@media (max-width: 760px) {
    .site-header,
    .site-footer,
    .hero,
    .split-section,
    .card-grid-4,
    .card-grid-3,
    .card-grid-2,
    .filter-bar,
    .filter-bar-stock,
    .steps,
    .form-grid,
    .chip-grid,
    .stats-grid,
    .hero-metrics,
    .logo-row {
        grid-template-columns: 1fr;
        display: grid;
    }
    .site-header {
        padding: 20px;
        border-radius: 28px;
    }
    .brand-name { font-size: 1.7rem; }
    .hero { min-height: auto; padding-top: 18px; }
    .page-shell { padding: 16px; }
    .hero-copy h1,
    .page-banner h1 { max-width: none; }
    .timeline-item { grid-template-columns: 1fr; }
}

main { display:block; }
.flash-stack { display:grid; gap:12px; margin: 8px 0 20px; }
.flash { padding:14px 18px; border:1px solid var(--line); border-radius:16px; background:rgba(17,17,17,0.8); }
.flash-success { color: var(--gold-soft); }
.menu-toggle { display:none; border:1px solid var(--line); background: transparent; color: var(--text); padding: 12px 16px; border-radius: 999px; }
.nav-cta { color: var(--gold-soft) !important; }
.section { padding: 36px 0; }
.page-banner { padding: 42px; }
.filter-bar, .results-bar, .card-actions, .tag-row, .steps-row, .spec-grid, .admin-list, .detail-badge-stack, .visual-fade-copy { display:flex; gap:12px; flex-wrap:wrap; }
.filter-bar { margin-bottom: 18px; }
.filter-bar select, .lux-form input, .lux-form select, .lux-form textarea {
  width:100%; background:#0e0e0e; color:var(--text); border:1px solid rgba(255,255,255,0.08); border-radius:16px; padding:14px 16px; font: inherit;
}
.filter-bar select { max-width: 220px; }
.form-grid { display:grid; gap:14px; }
.form-grid.two-cols { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.lux-form label, .lux-form fieldset { display:grid; gap:8px; color:var(--muted); }
.lux-form { display:grid; gap:18px; }
.form-card { padding:28px; }
.contact-card { padding:24px; }
.options-grid { display:grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap:10px; border:1px solid var(--line); border-radius:20px; padding:18px; }
.checkbox-pill { position:relative; }
.checkbox-pill input { position:absolute; opacity:0; inset:0; }
.checkbox-pill span { display:block; padding:12px 14px; border:1px solid rgba(255,255,255,0.08); border-radius:999px; }
.checkbox-pill input:checked + span { border-color: rgba(242,213,122,0.5); color: var(--gold-soft); }
.align-start { align-items:start; }
.vehicle-visual { min-height:220px; position:relative; border-radius:20px; margin-bottom:18px; background: radial-gradient(circle at top, rgba(212,175,55,0.24), transparent 34%), linear-gradient(180deg, #1b1b1b, #090909); }
.dark-visual::after { content:''; position:absolute; inset:0; border-radius:20px; background: linear-gradient(180deg, transparent, rgba(0,0,0,0.55)); }
.ghost-year, .visual-fade-copy, .detail-badge-stack { position:absolute; z-index:1; }
.ghost-year { right:18px; bottom:18px; color:rgba(255,255,255,0.18); font-size:2.2rem; font-family:'Cormorant Garamond', serif; }
.visual-fade-copy { left:18px; bottom:18px; flex-direction:column; gap:4px; }
.vehicle-copy { display:grid; gap:12px; }
.tag-row span, .detail-badge-stack span { padding:8px 12px; border-radius:999px; background:rgba(212,175,55,0.08); border:1px solid rgba(242,213,122,0.15); color:var(--gold-soft); font-size:0.82rem; }
.meta-list { padding-left:18px; margin:0; color:var(--muted); display:grid; gap:6px; }
.lead { color: var(--gold-soft); }
.detail-hero { display:grid; grid-template-columns: 1fr 1fr; gap:28px; align-items:stretch; padding: 18px 0 36px; }
.detail-visual { min-height: 520px; border:1px solid var(--line); border-radius:32px; box-shadow: var(--shadow); position:relative; background: radial-gradient(circle at 50% 20%, rgba(212,175,55,0.28), transparent 30%), linear-gradient(135deg, #1f1b13, #0b0b0b 62%, #171717); }
.detail-badge-stack { left:24px; bottom:24px; }
.detail-copy { padding:24px 0; }
.price-line { font-size:2rem; color:var(--gold-soft); margin:14px 0; }
.spec-grid { display:grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap:12px; margin: 24px 0; }
.spec-grid > div { border:1px solid var(--line); border-radius:18px; padding:16px; background: rgba(255,255,255,0.015); }
.spec-grid strong { display:block; margin-bottom:6px; color:#fff; }
.admin-layout { grid-template-columns: 1fr 1fr; }
.admin-item { padding:14px 0; border-bottom:1px solid rgba(255,255,255,0.06); display:grid; gap:6px; }
.faq-item { display:grid; gap:8px; padding:10px 0; }
.site-footer { display:grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap:22px; padding: 34px 0 24px; margin-top: 24px; border-top:1px solid var(--line); }
.card-grid { display:grid; gap:22px; }
.card-grid-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.card-grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.card-grid-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.split-heading, .results-bar { display:flex; justify-content:space-between; align-items:end; gap:16px; }
@media (max-width: 980px) {
  .menu-toggle { display:inline-flex; }
  .site-header { border-radius: 28px; padding: 16px 18px; align-items:flex-start; }
  .site-nav { display:none; width:100%; flex-direction:column; padding-top: 14px; }
  .site-nav.is-open { display:flex; }
  .hero, .split-section, .detail-hero, .admin-layout { grid-template-columns: 1fr; }
  .card-grid-2, .card-grid-3, .card-grid-4, .logo-row, .hero-metrics, .stats-grid, .spec-grid, .form-grid.two-cols, .options-grid, .site-footer { grid-template-columns: 1fr; }
  .filter-bar select { max-width:none; }
}

.nav-ghost {
    color: var(--muted);
}
.nav-cta {
    padding: 10px 14px;
    border: 1px solid rgba(242, 213, 122, 0.28);
    border-radius: 999px;
    background: rgba(212, 175, 55, 0.08);
}
.filter-bar input,
.filter-bar select,
.lux-form input,
.lux-form textarea,
.lux-form select {
    width: 100%;
    background: rgba(255,255,255,0.03);
    color: var(--text);
    border: 1px solid var(--line);
    border-radius: 16px;
    padding: 14px 16px;
    font: inherit;
}
.lux-form label span,
.options-grid legend {
    display: block;
    margin-bottom: 10px;
    color: var(--gold-soft);
    font-size: 0.85rem;
    text-transform: uppercase;
    letter-spacing: 0.12em;
}
.lux-form { display: grid; gap: 18px; }
.form-grid { display: grid; gap: 16px; }
.form-grid.two-cols { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.full-span { grid-column: 1 / -1; }
.section { padding: 28px 0 24px; }
.page-banner { padding: 56px 34px; margin-bottom: 18px; }
.banner-angled { position: relative; overflow: hidden; }
.banner-angled::after {
    content: '';
    position: absolute;
    inset: auto -10% -28% 35%;
    height: 220px;
    background: radial-gradient(circle, rgba(212,175,55,0.18), transparent 62%);
}
.reveal {
    opacity: 0;
    transform: translateY(24px);
    transition: opacity .7s ease, transform .7s ease;
}
.reveal.is-visible { opacity: 1; transform: translateY(0); }
.detail-visual,
.vehicle-visual,
.dark-visual {
    background-size: cover;
    background-position: center;
    position: relative;
}
.vehicle-visual.has-image,
.detail-visual.has-image { background-color: #0d0d0d; }
.ghost-year,
.visual-fade-copy,
.detail-badge-stack {
    position: relative;
    z-index: 2;
}
.detail-hero {
    display: grid;
    grid-template-columns: 1.05fr .95fr;
    gap: 28px;
    align-items: stretch;
}
.detail-visual {
    min-height: 560px;
    border-radius: var(--radius);
    border: 1px solid var(--line);
    box-shadow: var(--shadow);
    padding: 24px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    background:
        linear-gradient(180deg, rgba(0,0,0,.12), rgba(0,0,0,.72)),
        radial-gradient(circle at 52% 30%, rgba(212,175,55,.22), transparent 46%),
        linear-gradient(140deg, #191919, #090909 60%, #161009);
}
.detail-copy {
    border: 1px solid var(--line);
    border-radius: var(--radius);
    padding: 34px;
    background: linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,.01));
}
.price-line { font-size: 2rem; color: var(--gold-soft); margin: 8px 0 14px; }
.spec-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin: 24px 0;
}
.spec-grid div,
.inline-note,
.admin-list-item,
.faq-item,
.bullet-item,
.check-item {
    border: 1px solid var(--line);
    background: rgba(255,255,255,0.02);
    border-radius: 16px;
    padding: 14px 16px;
}
.options-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    border: 1px solid var(--line);
    border-radius: 22px;
    padding: 18px;
}
.checkbox-pill input { display: none; }
.checkbox-pill span {
    display: block;
    padding: 12px 14px;
    border-radius: 999px;
    border: 1px solid var(--line);
    cursor: pointer;
}
.checkbox-pill input:checked + span {
    background: rgba(212,175,55,.15);
    border-color: rgba(242,213,122,.45);
    color: var(--gold-soft);
}
.process-strip {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 16px;
}
.process-card { padding: 20px; }
.contact-card,
.form-card { padding: 28px; }
.auth-shell { display: flex; justify-content: center; }
.auth-card { width: min(560px, 100%); }
.admin-table-wrap {
    overflow-x: auto;
    border: 1px solid var(--line);
    border-radius: 24px;
    background: rgba(255,255,255,0.02);
}
.admin-table {
    width: 100%;
    border-collapse: collapse;
}
.admin-table th,
.admin-table td {
    padding: 16px 18px;
    border-bottom: 1px solid rgba(255,255,255,0.06);
    text-align: left;
    vertical-align: top;
}
.admin-table th { color: var(--gold-soft); font-size: .85rem; letter-spacing: .08em; text-transform: uppercase; }
.table-actions { display: flex; gap: 14px; align-items: center; flex-wrap: wrap; }
.text-button {
    background: none;
    border: none;
    padding: 0;
    color: var(--gold-soft);
    cursor: pointer;
    font: inherit;
}
.text-button.danger { color: #ff8d8d; }
.admin-list { display: grid; gap: 12px; }
.admin-list-item span,
.muted { color: var(--muted); }
.flash-stack { display: grid; gap: 12px; margin-bottom: 16px; }
.flash { padding: 14px 16px; border-radius: 16px; border: 1px solid var(--line); }
.flash-success { background: rgba(78, 166, 92, 0.15); }
.flash-warning { background: rgba(212, 175, 55, 0.11); }
.flash-error { background: rgba(177, 60, 60, 0.18); }
.site-footer {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
    padding: 34px 0 46px;
    margin-top: 30px;
    border-top: 1px solid var(--line);
}
.menu-toggle {
    display: none;
    background: rgba(255,255,255,.03);
    color: var(--text);
    border: 1px solid var(--line);
    padding: 10px 14px;
    border-radius: 999px;
}
@media (max-width: 1100px) {
    .hero, .split-section, .detail-hero, .card-grid-4, .card-grid-3, .card-grid-2, .process-strip {
        grid-template-columns: 1fr !important;
    }
    .logo-row { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 860px) {
    .site-header { border-radius: 24px; align-items: flex-start; }
    .menu-toggle { display: inline-flex; }
    .site-nav {
        width: 100%;
        display: none;
        flex-direction: column;
        padding-top: 12px;
    }
    .site-nav.is-open { display: flex; }
    .form-grid.two-cols, .spec-grid, .options-grid, .hero-metrics, .stats-grid, .site-footer { grid-template-columns: 1fr; }
    .page-shell { padding: 16px; }
    .hero-copy h1, .page-banner h1 { font-size: clamp(2.6rem, 12vw, 4rem); }
}

.stock-banner,
.filter-shell,
.gallery-panel,
.preview-card,
.rich-copy-card {
    position: relative;
    overflow: hidden;
}
.stock-filter-grid,
.admin-filter-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 16px;
    align-items: end;
}
.stock-filter-grid label,
.admin-filter-grid label { display: grid; gap: 8px; }
.compact-actions { align-self: end; }
.table-pill {
    display: inline-flex;
    padding: 6px 10px;
    border-radius: 999px;
    background: rgba(212,175,55,.12);
    border: 1px solid rgba(212,175,55,.24);
}
.form-layout-grid,
.detail-story-grid {
    display: grid;
    grid-template-columns: 1.25fr .75fr;
    gap: 22px;
}
.field-label,
.rich-toolbar + textarea + .editor-hint { color: var(--muted); }
.rich-toolbar {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin: 10px 0 12px;
}
.rich-toolbar button {
    background: rgba(255,255,255,.04);
    color: var(--text);
    border: 1px solid var(--line);
    border-radius: 999px;
    padding: 9px 14px;
    cursor: pointer;
}
.preview-shell,
.rich-copy {
    display: grid;
    gap: 14px;
    color: #f7f1de;
}
.preview-shell h3,
.rich-copy h3 {
    font-family: 'Cormorant Garamond', serif;
    font-size: 1.8rem;
    margin: 4px 0;
    color: var(--gold-soft);
}
.preview-shell p,
.rich-copy p {
    margin: 0;
    color: rgba(255,255,255,.82);
    line-height: 1.8;
}
.admin-gallery-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    margin: 22px 0;
}
.admin-gallery-item {
    display: grid;
    gap: 10px;
    padding: 10px;
    border-radius: 18px;
    border: 1px solid var(--line);
    background: rgba(255,255,255,.02);
}
.admin-gallery-item img,
.gallery-thumb img {
    width: 100%;
    height: 120px;
    object-fit: cover;
    border-radius: 14px;
}
.detail-hero-v2 {
    display: grid;
    grid-template-columns: 1.1fr .9fr;
    gap: 24px;
    align-items: start;
}
.gallery-stage {
    min-height: 520px;
    border-radius: 30px;
    border: 1px solid rgba(212,175,55,.14);
    background: radial-gradient(circle at top, rgba(212,175,55,.15), transparent 42%), linear-gradient(180deg, #181512, #090909);
    box-shadow: 0 30px 80px rgba(0,0,0,.36);
    position: relative;
    background-size: cover;
    background-position: center;
}
.gallery-thumbs {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin-top: 14px;
}
.gallery-thumb {
    padding: 0;
    background: transparent;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 16px;
    overflow: hidden;
    cursor: pointer;
    opacity: .72;
    transition: .25s ease;
}
.gallery-thumb.active,
.gallery-thumb:hover { opacity: 1; transform: translateY(-2px); border-color: rgba(212,175,55,.35); }
.detail-subtitle { color: var(--muted); max-width: 56ch; }
.premium-spec-grid > div {
    background: rgba(255,255,255,.03);
    border: 1px solid rgba(255,255,255,.06);
    border-radius: 18px;
    padding: 16px;
}
.vehicle-topline,
.vehicle-meta {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    flex-wrap: wrap;
    color: var(--muted);
    font-size: .92rem;
}
.price-standalone { font-size: 1.3rem; color: var(--gold-soft); }
.corner-pill {
    position: absolute;
    top: 16px;
    right: 16px;
    background: rgba(0,0,0,.55);
    border: 1px solid rgba(212,175,55,.25);
    border-radius: 999px;
    padding: 8px 12px;
    color: var(--gold-soft);
}
.related-section .showroom-card,
.stock-banner,
.admin-filter-shell {
    background: linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,.015));
}
body.menu-open { overflow: hidden; }
@media (max-width: 1100px) {
    .detail-hero-v2,
    .form-layout-grid,
    .detail-story-grid,
    .stock-filter-grid,
    .admin-filter-grid { grid-template-columns: 1fr 1fr; }
    .gallery-stage { min-height: 420px; }
}
@media (max-width: 860px) {
    .detail-hero-v2,
    .form-layout-grid,
    .detail-story-grid,
    .stock-filter-grid,
    .admin-filter-grid,
    .gallery-thumbs,
    .admin-gallery-grid { grid-template-columns: 1fr; }
    .gallery-stage { min-height: 320px; }
}


.wysiwyg-surface{min-height:260px;padding:18px;border:1px solid rgba(212,175,55,.22);background:rgba(14,14,14,.72);border-radius:20px;color:#f7f1df;line-height:1.7;box-shadow:inset 0 0 0 1px rgba(255,255,255,.02)}
.wysiwyg-surface:focus{outline:none;border-color:rgba(212,175,55,.45);box-shadow:0 0 0 3px rgba(212,175,55,.08)}
.wysiwyg-toolbar button{min-width:48px}
.admin-gallery-grid.sortable-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:16px;margin:24px 0}
.admin-gallery-item{position:relative;border:1px solid rgba(212,175,55,.18);padding:10px;border-radius:18px;background:rgba(255,255,255,.02);display:flex;flex-direction:column;gap:10px;cursor:grab}
.admin-gallery-item.dragging{opacity:.45;transform:scale(.98)}
.admin-gallery-item img{width:100%;height:110px;object-fit:cover;border-radius:12px}
.drag-handle{font-size:.8rem;color:#d4af37;letter-spacing:.12em;text-transform:uppercase}
.inline-form{display:flex;gap:12px;align-items:end;flex-wrap:wrap}
.inline-form label{flex:1;min-width:220px}
.chip-grid{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}
.chip-card{display:flex;align-items:center;gap:10px;padding:10px 14px;border:1px solid rgba(212,175,55,.18);border-radius:999px;background:rgba(255,255,255,.02)}
.chip-card .text-button{padding:0;background:none;border:none}
.stock-banner,.banner-angled{position:relative;overflow:hidden}
.stock-banner::after,.banner-angled::after{content:'';position:absolute;inset:auto -20% -40% auto;width:340px;height:340px;background:radial-gradient(circle,rgba(212,175,55,.13),transparent 70%);pointer-events:none}
.vehicle-card.showroom-card{transition:transform .35s ease, box-shadow .35s ease}
.vehicle-card.showroom-card:hover{transform:translateY(-8px);box-shadow:0 26px 60px rgba(0,0,0,.35)}
.metric-card{position:relative;overflow:hidden}
.metric-card::before{content:'';position:absolute;inset:0;background:linear-gradient(135deg,rgba(212,175,55,.08),transparent 40%);pointer-events:none}
@media (max-width: 768px){.inline-form{flex-direction:column;align-items:stretch}}
.brand-logo{width:46px;height:46px;object-fit:contain;border-radius:12px;background:rgba(255,255,255,.04);padding:6px;border:1px solid rgba(212,175,55,.2)}
.brand-mark{display:flex;align-items:center;gap:12px}
.admin-logo-preview{margin-top:18px;padding:14px;border:1px solid rgba(212,175,55,.14);border-radius:20px;background:rgba(255,255,255,.02)}
.admin-logo-preview img{max-width:180px;max-height:88px;object-fit:contain}
.inline-form-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.inline-form-row input{flex:1;min-width:180px}
.checkbox-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border:1px solid rgba(212,175,55,.16);border-radius:16px;background:rgba(255,255,255,.02)}


.brand-mark{display:flex;align-items:center;gap:12px;text-decoration:none}
.brand-logo-only{max-height:56px;width:auto;display:block}
.brand-name-fallback{font-size:1.2rem;font-weight:700;color:var(--text)}
.request-summary-card{display:grid;gap:10px;padding:18px;border:1px solid rgba(255,255,255,.08);border-radius:18px;background:rgba(255,255,255,.02)}
.request-summary-grid,.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px}
.summary-label{display:block;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;opacity:.65;margin-bottom:6px}
.request-detail-layout{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.full-span-card{grid-column:1 / -1}
.request-message-box{min-height:140px;padding:18px;border-radius:18px;background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.08);white-space:pre-wrap;line-height:1.7}
.request-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-top:18px}
.request-gallery img{width:100%;height:180px;object-fit:cover;border-radius:16px;border:1px solid rgba(255,255,255,.08)}
@media (max-width: 900px){.request-detail-layout{grid-template-columns:1fr}}


/* Version 8 - refined services page */
.services-hero-compact {
    min-height: auto;
    padding-top: 72px;
    padding-bottom: 64px;
}
.services-hero-compact .eyebrow {
    display: inline-flex;
    margin-bottom: 12px;
}
.services-hero-compact h1 {
    max-width: 820px;
    margin-bottom: 0;
}
.services-hero-compact p {
    display: none;
}
.services-section {
    padding-top: 34px;
}
.services-grid-four {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 28px;
}
.service-luxury-tile {
    min-height: 360px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    position: relative;
    overflow: hidden;
    border-color: rgba(212,175,55,.22);
    background:
        radial-gradient(circle at top right, rgba(212,175,55,.13), transparent 34%),
        linear-gradient(145deg, rgba(255,255,255,.045), rgba(255,255,255,.012));
}
.service-luxury-tile::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(120deg, transparent 0%, rgba(212,175,55,.055) 42%, transparent 72%);
    opacity: .75;
    pointer-events: none;
}
.service-luxury-tile > * {
    position: relative;
    z-index: 1;
}
.service-topline {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 34px;
}
.service-luxury-tile .service-icon {
    width: 64px;
    height: 64px;
    border-radius: 20px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(212,175,55,.28);
    background: rgba(0,0,0,.28);
    color: var(--gold-soft);
    font-size: .82rem;
    letter-spacing: .14em;
}
.service-count {
    font-family: var(--serif);
    font-size: 3.3rem;
    color: rgba(212,175,55,.18);
    line-height: 1;
}
.service-luxury-tile h2 {
    font-size: clamp(1.7rem, 2.3vw, 2.35rem);
    margin-bottom: 14px;
}
.service-luxury-tile .lead {
    color: var(--gold-soft);
    margin-bottom: 14px;
}
.luxury-strip {
    display: grid;
    grid-template-columns: .9fr 1.1fr;
    gap: 32px;
    align-items: center;
    border: 1px solid rgba(212,175,55,.18);
    border-radius: 30px;
    background:
        linear-gradient(135deg, rgba(212,175,55,.08), transparent 35%),
        rgba(255,255,255,.025);
    padding: 36px;
}
.luxury-strip h2 {
    margin: 8px 0 0;
}
.luxury-strip p {
    margin: 0;
    line-height: 1.8;
}
@media (max-width: 900px) {
    .services-grid-four,
    .luxury-strip {
        grid-template-columns: 1fr;
    }
    .service-luxury-tile {
        min-height: 300px;
    }
}


/* Version 8b - service refinements requested */
.services-hero-compact {
    padding-top: 56px;
    padding-bottom: 54px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}
.services-hero-compact h1 {
    max-width: none;
    width: 100%;
    white-space: nowrap;
    font-size: clamp(2.45rem, 5.2vw, 5rem);
    line-height: 1;
}
.services-hero-compact::after,
.services-hero-compact.banner-angled::after {
    display: none !important;
}
.service-clean-tile::before,
.service-clean-tile::after,
.service-luxury-tile::before,
.service-luxury-tile::after {
    content: none !important;
    display: none !important;
}
.service-clean-tile {
    overflow: hidden;
    background:
        linear-gradient(145deg, rgba(255,255,255,.048), rgba(255,255,255,.015)),
        #101010;
}
.service-clean-tile .service-copy {
    margin-bottom: 26px;
}
.service-button {
    width: 100%;
    justify-content: center;
    text-align: center;
    margin-top: 24px;
    padding: 17px 22px;
    border-radius: 999px;
    font-weight: 800;
    letter-spacing: .08em;
}
.service-clean-tile .text-link {
    display: none;
}
.luxury-strip .mini-kicker {
    letter-spacing: .24em;
}
@media (max-width: 680px) {
    .services-hero-compact h1 {
        white-space: normal;
        font-size: clamp(2.35rem, 13vw, 3.2rem);
    }
}


/* Version 8.3 - remove service tile top badges */
.service-clean-tile .service-topline,
.service-clean-tile .service-icon,
.service-clean-tile .service-count {
    display: none !important;
}
.service-clean-tile {
    justify-content: space-between;
}


/* Version 8.4 - richer premium background */
body {
    background:
        radial-gradient(circle at 15% 8%, rgba(242, 213, 122, 0.18), transparent 24%),
        radial-gradient(circle at 88% 16%, rgba(212, 175, 55, 0.13), transparent 28%),
        radial-gradient(circle at 50% 94%, rgba(139, 106, 22, 0.16), transparent 34%),
        linear-gradient(135deg, rgba(255,255,255,0.018) 0 1px, transparent 1px 38px),
        linear-gradient(180deg, #020202 0%, #080808 28%, #0d0b08 58%, #050505 100%);
    background-attachment: fixed;
    position: relative;
}

body::before {
    content: "";
    position: fixed;
    inset: 0;
    pointer-events: none;
    z-index: -2;
    background:
        linear-gradient(115deg, transparent 0%, rgba(212,175,55,0.075) 42%, transparent 67%),
        radial-gradient(ellipse at top, rgba(255,255,255,0.045), transparent 52%);
    opacity: .9;
}

body::after {
    content: "";
    position: fixed;
    inset: 0;
    pointer-events: none;
    z-index: -1;
    background-image:
        linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,.018) 1px, transparent 1px);
    background-size: 72px 72px;
    mask-image: radial-gradient(circle at center, black 0%, transparent 78%);
    opacity: .34;
}

.page-shell {
    position: relative;
}

.page-shell::before {
    content: "";
    position: fixed;
    left: 50%;
    top: 110px;
    width: min(1120px, 82vw);
    height: 360px;
    transform: translateX(-50%);
    border-radius: 999px;
    background: radial-gradient(ellipse, rgba(212,175,55,.13), transparent 68%);
    filter: blur(16px);
    pointer-events: none;
    z-index: -1;
}

.site-header,
.page-banner,
.hero-visual,
.car-card,
.service-card,
.admin-card,
.form-card,
.luxury-strip,
.contact-card,
.panel,
.stat-card {
    box-shadow:
        0 24px 70px rgba(0,0,0,.42),
        inset 0 1px 0 rgba(255,255,255,.04);
}

.page-banner,
.hero-visual,
.service-clean-tile,
.luxury-strip {
    background:
        linear-gradient(145deg, rgba(255,255,255,.055), rgba(255,255,255,.012)),
        radial-gradient(circle at top right, rgba(212,175,55,.13), transparent 36%),
        rgba(10,10,10,.86);
    border-color: rgba(212,175,55,.24);
}

.service-clean-tile:hover,
.car-card:hover {
    transform: translateY(-5px);
    border-color: rgba(242,213,122,.42);
    box-shadow:
        0 30px 90px rgba(0,0,0,.52),
        0 0 0 1px rgba(242,213,122,.08),
        inset 0 1px 0 rgba(255,255,255,.06);
}

@media (max-width: 760px) {
    body {
        background-attachment: scroll;
    }
    body::after {
        background-size: 48px 48px;
        opacity: .22;
    }
}


/* VERSION 9 CONTACT */
.contact-hero {
    width: 100%;
    height: 65vh;
    overflow: hidden;
}
.contact-hero img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.contact-form-section {
    display: flex;
    justify-content: center;
    margin-top: -80px;
    padding: 0 20px 80px;
}

.contact-form-card {
    width: 100%;
    max-width: 800px;
    background: rgba(10, 10, 10, 0.92);
    border: 1px solid rgba(212, 175, 55, 0.25);
    border-radius: 24px;
    padding: 40px;
    box-shadow: 0 30px 80px rgba(0,0,0,0.6);
    backdrop-filter: blur(20px);
}

.contact-form-card input,
.contact-form-card textarea {
    width: 100%;
    padding: 16px;
    border-radius: 14px;
    border: 1px solid rgba(255,255,255,0.08);
    background: rgba(255,255,255,0.03);
    color: white;
    margin-bottom: 14px;
}

.contact-form-card textarea {
    min-height: 140px;
}

.button-primary {
    width: 100%;
    padding: 18px;
    border-radius: 999px;
    background: linear-gradient(90deg, #d4af37, #f2d57a);
    color: black;
    font-weight: 700;
    border: none;
    cursor: pointer;
}

.button-primary:hover {
    transform: translateY(-2px);
}


/* VERSION 9.1 CONTACT FORM UPDATES */
.contact-form-title {
    text-align: center;
    font-size: clamp(2rem, 4vw, 3.2rem);
    margin: 0 0 28px;
    color: #fffaf0;
}

.contact-select {
    width: 100%;
    padding: 16px;
    border-radius: 14px;
    border: 1px solid rgba(255,255,255,0.08);
    background: #050505;
    color: #ffffff;
    margin-bottom: 14px;
    font: inherit;
    appearance: auto;
}

.contact-select option {
    background: #050505;
    color: #ffffff;
}

.privacy-check {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin: 6px 0 22px;
    color: rgba(246, 241, 231, 0.86);
    font-size: 0.95rem;
    line-height: 1.55;
}

.privacy-check input {
    width: 18px;
    height: 18px;
    min-width: 18px;
    margin-top: 3px;
    accent-color: #d4af37;
}

.privacy-check a {
    color: #f2d57a;
    text-decoration: underline;
    text-underline-offset: 3px;
}


/* VERSION 10 - lighter gold logo header */
:root {
    --gold: #d8b46a;
    --gold-soft: #f7dfaa;
    --gold-deep: #a9833f;
    --muted: #d8c7a4;
    --line: rgba(247, 223, 170, 0.24);
}

.site-header {
    background:
        linear-gradient(135deg, rgba(247,223,170,.16), rgba(255,255,255,.035) 32%, rgba(9,9,9,.78)),
        rgba(12, 10, 8, 0.82);
    border-color: rgba(247,223,170,.34);
}

.brand-mark {
    display: inline-flex;
    align-items: center;
    min-width: 190px;
}

.brand-logo-only {
    display: block;
    width: 172px;
    max-width: 22vw;
    height: 58px;
    object-fit: contain;
    object-position: left center;
    filter:
        drop-shadow(0 0 10px rgba(247,223,170,.24))
        drop-shadow(0 7px 18px rgba(0,0,0,.46));
}

.site-nav a {
    color: #ead7ad;
    font-weight: 700;
}

.site-nav a:hover {
    color: #fff1c7;
}

.nav-cta {
    background: linear-gradient(90deg, #c79b4d, #f7dfaa, #b98a3b);
    color: #111 !important;
    box-shadow: 0 10px 30px rgba(247,223,170,.18);
}

.menu-toggle {
    border-color: rgba(247,223,170,.35);
    color: #f7dfaa;
}

@media (max-width: 760px) {
    .brand-mark {
        min-width: auto;
    }
    .brand-logo-only {
        width: 138px;
        height: 48px;
        max-width: 48vw;
    }
}


/* VERSION 10.1 - cleaner header + lighter site */

/* remove header frame */
.site-header {
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    background: linear-gradient(180deg, rgba(240,230,210,0.95), rgba(200,185,150,0.6));
}

/* bigger logo */
.brand-logo-only {
    width: 220px !important;
    height: auto !important;
    max-width: 28vw;
    filter: none !important;
}

/* lighter site background */
body {
    background:
        linear-gradient(180deg, #f1ebe2 0%, #e2d6c3 50%, #d6c4a8 100%) !important;
    color: #2b2b2b;
}

/* make cards lighter */
.service-card,
.car-card,
.contact-form-card,
.admin-card,
.panel {
    background: rgba(255,255,255,0.7) !important;
    color: #2b2b2b !important;
    border: 1px solid rgba(0,0,0,0.08);
}

/* nav text darker */
.site-nav a {
    color: #4a3d2a !important;
}

.site-nav a:hover {
    color: #000 !important;
}

/* buttons softer gold */
.button-primary,
.nav-cta {
    background: linear-gradient(90deg, #d6b56e, #f0dba5);
    color: #000 !important;
}


/* VERSION 10.2 - sharper black typography + clearer logo */

/* General text more readable */
body,
p,
li,
label,
input,
select,
textarea,
.card,
.service-card,
.car-card,
.contact-form-card,
.admin-card,
.panel,
.luxury-strip,
.page-banner {
    color: #111111 !important;
}

h1, h2, h3, h4,
.hero-copy h1,
.page-banner h1,
.contact-form-title,
.service-card h2,
.car-card h3 {
    color: #050505 !important;
}

/* Muted text still dark, not grey-on-grey */
.lead,
.muted,
small,
.card p,
.service-card p,
.car-card p,
.luxury-strip p,
.page-banner p {
    color: #262626 !important;
}

/* Gold accents remain premium */
.eyebrow,
.mini-kicker,
.text-link,
.price,
.highlight,
.service-card .lead {
    color: #8a6420 !important;
}

/* Boxes: light fill + clear black outline */
.service-card,
.car-card,
.contact-form-card,
.admin-card,
.form-card,
.panel,
.luxury-strip,
.page-banner,
.stock-filter-card,
.contact-card,
.stat-card {
    background: rgba(255, 255, 255, 0.74) !important;
    border: 1.5px solid rgba(0, 0, 0, 0.72) !important;
    box-shadow:
        0 18px 46px rgba(0,0,0,.16),
        inset 0 1px 0 rgba(255,255,255,.55) !important;
}

/* Inputs/selects/textareas: black readable text */
input,
select,
textarea,
.contact-select {
    color: #050505 !important;
    background: rgba(255,255,255,.86) !important;
    border: 1.3px solid rgba(0,0,0,.55) !important;
}

input::placeholder,
textarea::placeholder {
    color: rgba(0,0,0,.62) !important;
}

.contact-select option {
    color: #050505 !important;
    background: #ffffff !important;
}

/* Header cleaner and logo much clearer */
.site-header {
    background: rgba(239, 230, 212, 0.92) !important;
    border-bottom: 1.5px solid rgba(0,0,0,.25) !important;
    padding-top: 12px !important;
    padding-bottom: 12px !important;
}

.brand-mark {
    min-width: 280px !important;
    padding: 0 !important;
    background: transparent !important;
    border: none !important;
}

.brand-logo-only {
    width: 285px !important;
    height: 92px !important;
    max-width: 32vw !important;
    object-fit: contain !important;
    object-position: left center !important;
    filter:
        contrast(1.18)
        saturate(1.08)
        drop-shadow(0 2px 2px rgba(255,255,255,.55))
        drop-shadow(0 12px 20px rgba(0,0,0,.22)) !important;
}

/* Navigation black with subtle gold hover */
.site-nav a {
    color: #111111 !important;
    font-weight: 800 !important;
}

.site-nav a:hover {
    color: #8a6420 !important;
}

/* Buttons still gold but text black */
.button,
.button-primary,
.nav-cta,
.service-button {
    color: #050505 !important;
    border: 1.5px solid rgba(0,0,0,.7) !important;
}

/* Dark cards leftovers forced lighter */
.service-clean-tile,
.hero-visual {
    background:
        linear-gradient(145deg, rgba(255,255,255,.82), rgba(228,216,194,.62)),
        rgba(255,255,255,.8) !important;
    border: 1.5px solid rgba(0,0,0,.72) !important;
}

/* Contact form privacy readable */
.privacy-check,
.privacy-check span {
    color: #111111 !important;
}
.privacy-check a {
    color: #7b5619 !important;
}

/* Mobile logo visible */
@media (max-width: 760px) {
    .brand-mark {
        min-width: 190px !important;
    }
    .brand-logo-only {
        width: 190px !important;
        height: 70px !important;
        max-width: 58vw !important;
    }
    .site-header {
        padding-left: 14px !important;
        padding-right: 14px !important;
    }
}


/* VERSION 10.3 - Onze stock refinement */
.stock-banner-clean {
    padding: 46px 42px !important;
    background: rgba(255,255,255,.78) !important;
    border: 1.5px solid rgba(0,0,0,.72) !important;
}
.stock-banner-clean .eyebrow {
    color: #8a6420 !important;
    font-size: .82rem;
    letter-spacing: .28em;
    margin-bottom: 10px;
}
.stock-banner-clean h1 {
    color: #050505 !important;
    font-size: clamp(3rem, 6vw, 5.6rem) !important;
    line-height: .95;
    margin: 0 !important;
}
.stock-banner-clean p {
    display: none !important;
}

.filter-shell {
    background: rgba(255,255,255,.78) !important;
    border: 1.5px solid rgba(0,0,0,.72) !important;
    box-shadow: 0 18px 46px rgba(0,0,0,.15) !important;
}
.filter-form label span {
    color: #111111 !important;
    font-weight: 800;
}

/* Stock vehicle cards: black typography + black outlines */
.vehicle-card,
.showroom-card,
.lux-card.vehicle-card {
    background: rgba(255,255,255,.78) !important;
    border: 1.7px solid rgba(0,0,0,.82) !important;
    color: #080808 !important;
    box-shadow:
        0 18px 46px rgba(0,0,0,.16),
        inset 0 1px 0 rgba(255,255,255,.65) !important;
}

.vehicle-card h3,
.showroom-card h3,
.vehicle-copy h3 {
    color: #050505 !important;
}

.vehicle-card p,
.vehicle-card span,
.vehicle-copy,
.vehicle-copy p,
.vehicle-topline,
.vehicle-meta span {
    color: #111111 !important;
}

.vehicle-copy .lead {
    color: #242424 !important;
}

.vehicle-topline {
    border-bottom: 1.3px solid rgba(0,0,0,.58) !important;
    padding-bottom: 10px;
    margin-bottom: 14px;
}

.vehicle-meta span {
    border: 1.3px solid rgba(0,0,0,.72) !important;
    background: rgba(255,255,255,.65) !important;
    color: #080808 !important;
}

.price-standalone {
    color: #050505 !important;
    font-weight: 900 !important;
}

.vehicle-card .text-link {
    color: #080808 !important;
    border: 1.5px solid rgba(0,0,0,.82);
    border-radius: 999px;
    padding: 12px 18px;
    display: inline-flex;
    justify-content: center;
    margin-top: 10px;
    font-weight: 900;
    background: linear-gradient(90deg, #d6b56e, #f0dba5);
}

.vehicle-visual {
    border-bottom: 1.7px solid rgba(0,0,0,.82) !important;
}
.corner-pill,
.ghost-year {
    border: 1.2px solid rgba(0,0,0,.65) !important;
}


/* VERSION 10.4 - filters terug richting 10.2 + mooiere meta pills */

/* Filters terug subtieler zoals 10.2 */
.filter-shell {
    background: rgba(255, 255, 255, 0.74) !important;
    border: 1.5px solid rgba(0, 0, 0, 0.72) !important;
    box-shadow:
        0 18px 46px rgba(0,0,0,.16),
        inset 0 1px 0 rgba(255,255,255,.55) !important;
    border-radius: 24px !important;
}

.filter-form label span {
    color: #111111 !important;
    font-weight: 700 !important;
    letter-spacing: .04em;
}

.filter-form input,
.filter-form select {
    background: rgba(255,255,255,.86) !important;
    border: 1.3px solid rgba(0,0,0,.55) !important;
    color: #050505 !important;
    border-radius: 16px !important;
}

/* Zoekknop blijft "Zoeken", maar visueel rustig goud zoals 10.2 */
.filter-actions .button-primary,
.filter-actions .button {
    border-radius: 999px !important;
    border: 1.5px solid rgba(0,0,0,.7) !important;
}

/* Mooier afgeronde wagen meta-boxjes */
.vehicle-meta {
    gap: 10px !important;
}

.vehicle-meta span {
    border-radius: 999px !important;
    padding: 10px 14px !important;
    border: 1.15px solid rgba(0,0,0,.58) !important;
    background:
        linear-gradient(180deg, rgba(255,255,255,.92), rgba(237,226,207,.74)) !important;
    color: #080808 !important;
    font-weight: 700 !important;
    box-shadow:
        0 8px 18px rgba(0,0,0,.08),
        inset 0 1px 0 rgba(255,255,255,.78) !important;
}

/* Wagenkaart omlijning iets verfijnder, niet te hard */
.vehicle-card,
.showroom-card,
.lux-card.vehicle-card {
    border: 1.45px solid rgba(0,0,0,.68) !important;
    border-radius: 28px !important;
}

.vehicle-visual {
    border-bottom: 1.35px solid rgba(0,0,0,.62) !important;
}


/* VERSION 10.5 - clean filters + 4 meta inline */

/* remove filter outer box completely */
.filter-shell {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
}

/* keep only inputs visible */
.filter-form {
    background: transparent !important;
}

/* vehicle meta always 4 inline */
.vehicle-meta {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 8px !important;
}

/* make sure no wrapping weirdness */
.vehicle-meta span {
    text-align: center;
    white-space: nowrap;
}


/* VERSION 10.6 - text fixes & fine tuning */

/* fix truncated words */
.vehicle-meta span,
.vehicle-topline span {
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: unset !important;
    font-size: 0.9rem;
}

/* allow wrapping if needed */
.vehicle-meta {
    grid-template-columns: repeat(4, minmax(0,1fr)) !important;
}

/* fix button text rendering */
.button,
.button-primary {
    letter-spacing: 0.04em !important;
    font-weight: 800 !important;
}

/* fix weird "Zoeken" rendering */
.filter-actions button {
    font-family: 'Inter', sans-serif !important;
    font-weight: 700 !important;
    letter-spacing: 0.05em !important;
}

/* prevent text cutting in cards */
.vehicle-copy,
.vehicle-card h3,
.vehicle-card p {
    overflow: visible !important;
}

/* improve readability of small labels */
.vehicle-topline span {
    font-size: 0.85rem;
    opacity: 0.9;
}

/* ensure buttons not clipped */
.vehicle-card .text-link {
    white-space: nowrap;
}

/* global font smoothing */
body {
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}


/* VERSION 10.7 - clean stock filters + elegant vehicle info */

/* Stock filters: no bulky outer box, no clipping */
.filter-shell {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    padding: 0 !important;
    overflow: visible !important;
}

.stock-filter-grid,
.filter-form.stock-filter-grid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(180px, 1fr)) !important;
    gap: 16px !important;
    align-items: end !important;
    overflow: visible !important;
}

.stock-filter-grid label,
.filter-form label {
    min-width: 0 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 7px !important;
}

.stock-filter-grid label span,
.filter-form label span {
    color: #111 !important;
    font-size: .78rem !important;
    font-weight: 800 !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
    line-height: 1.2 !important;
}

.stock-filter-grid input,
.stock-filter-grid select {
    height: 48px !important;
    min-height: 48px !important;
    padding: 0 14px !important;
    border-radius: 12px !important;
    border: 1.2px solid rgba(0,0,0,.48) !important;
    background: rgba(255,255,255,.78) !important;
    color: #050505 !important;
    box-shadow: none !important;
    font-size: .95rem !important;
    line-height: 1.2 !important;
}

.filter-actions,
.compact-actions {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 10px !important;
    align-items: stretch !important;
    min-width: 0 !important;
    height: auto !important;
}

.filter-actions .button,
.compact-actions .button,
.filter-actions button,
.compact-actions button,
.filter-actions a,
.compact-actions a {
    height: 48px !important;
    min-height: 48px !important;
    padding: 0 16px !important;
    border-radius: 12px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1 !important;
    overflow: visible !important;
    white-space: nowrap !important;
    font-size: .88rem !important;
    letter-spacing: .04em !important;
}

/* Vehicle cards: less bulky, cleaner spacing */
.vehicle-card,
.showroom-card,
.lux-card.vehicle-card {
    border-radius: 22px !important;
    overflow: hidden !important;
}

.vehicle-copy {
    padding: 22px !important;
}

.vehicle-topline {
    display: flex !important;
    justify-content: space-between !important;
    gap: 12px !important;
    border-bottom: 1px solid rgba(0,0,0,.22) !important;
    padding-bottom: 9px !important;
    margin-bottom: 12px !important;
}

.vehicle-topline span {
    font-size: .78rem !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
}

/* Vehicle info: elegant line layout, not chunky pills */
.vehicle-meta {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 0 !important;
    margin: 18px 0 14px !important;
    border-top: 1px solid rgba(0,0,0,.22) !important;
    border-bottom: 1px solid rgba(0,0,0,.22) !important;
    background: transparent !important;
}

.vehicle-meta span {
    border: 0 !important;
    border-right: 1px solid rgba(0,0,0,.18) !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    padding: 11px 8px !important;
    color: #111 !important;
    font-size: .78rem !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    text-align: center !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
    min-width: 0 !important;
}

.vehicle-meta span:last-child {
    border-right: 0 !important;
}

.price-standalone {
    margin-top: 10px !important;
    margin-bottom: 14px !important;
    font-size: 1.45rem !important;
    line-height: 1.1 !important;
}

.vehicle-card .text-link {
    width: 100% !important;
    min-height: 46px !important;
    border-radius: 12px !important;
    padding: 0 16px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin-top: 6px !important;
    line-height: 1 !important;
    white-space: nowrap !important;
}

/* Better responsive behaviour */
@media (max-width: 1180px) {
    .stock-filter-grid,
    .filter-form.stock-filter-grid {
        grid-template-columns: repeat(3, minmax(180px, 1fr)) !important;
    }
}

@media (max-width: 860px) {
    .stock-filter-grid,
    .filter-form.stock-filter-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 560px) {
    .stock-filter-grid,
    .filter-form.stock-filter-grid {
        grid-template-columns: 1fr !important;
    }

    .vehicle-meta {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }

    .vehicle-meta span:nth-child(2) {
        border-right: 0 !important;
    }

    .vehicle-meta span:nth-child(1),
    .vehicle-meta span:nth-child(2) {
        border-bottom: 1px solid rgba(0,0,0,.18) !important;
    }
}


/* VERSION 11 - verkoop page cleanup */
.sell-banner-clean {
    padding: 46px 42px !important;
    background: rgba(255,255,255,.78) !important;
    border: 1.5px solid rgba(0,0,0,.72) !important;
}
.sell-banner-clean .eyebrow {
    color: #8a6420 !important;
    font-size: .82rem;
    letter-spacing: .28em;
    margin-bottom: 10px;
}
.sell-banner-clean h1 {
    color: #050505 !important;
    font-size: clamp(2.7rem, 5.4vw, 5.2rem) !important;
    line-height: .98;
    margin: 0 !important;
}
.sell-banner-clean p,
.process-strip {
    display: none !important;
}
.sell-form-section {
    padding-top: 18px !important;
}
.sell-form-card {
    width: 100% !important;
    max-width: 1120px !important;
    margin: 0 auto !important;
    border-radius: 26px !important;
    border: 1.5px solid rgba(0,0,0,.72) !important;
    background: rgba(255,255,255,.78) !important;
}
.sell-form-card h2 {
    color: #050505 !important;
}
.sell-form-card .mini-kicker,
.upload-title {
    color: #8a6420 !important;
}
.photo-upload-box {
    border: 1.4px solid rgba(0,0,0,.42);
    border-radius: 18px;
    padding: 18px;
    background: rgba(255,255,255,.48);
}
.upload-title {
    display: block;
    font-size: .82rem;
    font-weight: 900;
    letter-spacing: .13em;
    text-transform: uppercase;
    margin-bottom: 6px;
}
.photo-upload-box p {
    color: #222 !important;
    margin-bottom: 16px;
}
.photo-upload-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}
.photo-upload-list input[type="file"] {
    padding: 12px !important;
    height: auto !important;
}
.sell-submit {
    width: 100%;
    min-height: 52px;
    margin-top: 18px;
}
@media (max-width: 760px) {
    .photo-upload-list {
        grid-template-columns: 1fr;
    }
}


/* VERSION 11.1 - verkoop title, form text and photo picker */
.sell-banner-clean h1 {
    max-width: none !important;
    width: 100% !important;
    white-space: nowrap !important;
    font-size: clamp(2.35rem, 4.7vw, 4.6rem) !important;
    line-height: 1 !important;
}

.sell-form-card label span,
.sell-form-card legend,
.sell-form-card input,
.sell-form-card select,
.sell-form-card textarea,
.sell-form-card .checkbox-pill span {
    color: #050505 !important;
}

.sell-form-card label span,
.sell-form-card legend {
    font-weight: 800 !important;
}

.sell-form-card input,
.sell-form-card select,
.sell-form-card textarea {
    background: rgba(255,255,255,.88) !important;
    border: 1.3px solid rgba(0,0,0,.55) !important;
}

.photo-upload-box {
    color: #050505 !important;
}

.upload-button {
    width: 100%;
    min-height: 54px;
    border-radius: 14px;
    border: 1.5px solid rgba(0,0,0,.72);
    background: linear-gradient(90deg, #d6b56e, #f0dba5);
    color: #050505 !important;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    font-weight: 900 !important;
    letter-spacing: .08em;
    text-transform: uppercase;
    cursor: pointer;
    margin-top: 6px;
    transition: transform .2s ease, box-shadow .2s ease;
}

.upload-button:hover {
    transform: translateY(-2px);
    box-shadow: 0 14px 32px rgba(0,0,0,.16);
}

.visually-hidden-file {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

.selected-photo-list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
    gap: 12px;
    margin-top: 16px;
}

.selected-photo-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    border: 1.2px solid rgba(0,0,0,.42);
    border-radius: 14px;
    padding: 11px 12px;
    background: rgba(255,255,255,.72);
    color: #050505;
    min-width: 0;
}

.selected-photo-name {
    font-size: .88rem;
    font-weight: 700;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.remove-photo-btn {
    border: 1px solid rgba(0,0,0,.45);
    background: #ffffff;
    color: #050505;
    border-radius: 999px;
    min-width: 30px;
    height: 30px;
    cursor: pointer;
    font-weight: 900;
}

@media (max-width: 900px) {
    .sell-banner-clean h1 {
        white-space: normal !important;
        font-size: clamp(2.35rem, 10vw, 3.7rem) !important;
    }
}


/* VERSION 11.2 - verkoop info + options refinement */
.sell-info-section {
    padding-top: 8px !important;
    padding-bottom: 12px !important;
}

.sell-info-card {
    max-width: 1120px;
    margin: 0 auto;
    padding: 34px 38px;
    border-radius: 24px;
    background: rgba(255,255,255,.78);
    border: 1.5px solid rgba(0,0,0,.72);
    box-shadow: 0 18px 46px rgba(0,0,0,.14), inset 0 1px 0 rgba(255,255,255,.6);
}

.sell-info-card h2 {
    color: #050505 !important;
    font-size: clamp(2rem, 3.4vw, 3.2rem);
    line-height: 1.05;
    margin-bottom: 18px;
}

.sell-info-card p {
    color: #111111 !important;
    margin-bottom: 12px;
    line-height: 1.72;
}

.sell-info-card p:last-child {
    margin-bottom: 0;
}

.sell-form-section {
    padding-top: 10px !important;
}

.options-grid {
    border: 1.6px solid rgba(0,0,0,.78) !important;
    border-radius: 20px !important;
    padding: 22px !important;
    background: rgba(255,255,255,.52) !important;
}

.options-grid legend {
    color: #050505 !important;
    padding: 0 10px;
    font-weight: 900 !important;
}

.checkbox-pill {
    border: 1.25px solid rgba(0,0,0,.62) !important;
    background: rgba(255,255,255,.76) !important;
    color: #050505 !important;
}

.checkbox-pill span {
    color: #050505 !important;
}

.photo-upload-box-minimal {
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
}

.photo-upload-box-minimal .upload-button {
    margin-top: 0 !important;
}

.sell-form-card select {
    color: #050505 !important;
    background: rgba(255,255,255,.88) !important;
    border: 1.3px solid rgba(0,0,0,.55) !important;
}

.sell-form-card select option {
    color: #050505 !important;
    background: #ffffff !important;
}








/* VERSION 11.6 - correct structure: big box + pills */

/* BIG outer box (what you asked now) */
.options-grid {
    border: 2px solid #000 !important;
    border-radius: 24px !important;
    padding: 20px !important;
    background: rgba(255,255,255,0.65) !important;
}

/* clickable pills */
.options-grid .checkbox-pill {
    border-radius: 999px !important;
    border: 1.5px solid #000 !important;
    background: transparent !important;
    color: #000 !important;
    padding: 10px 16px !important;
}

/* text inside */
.options-grid .checkbox-pill span {
    color: #000 !important;
}

/* selected state */
.options-grid .checkbox-pill input:checked + span {
    font-weight: 800;
}

/* remove gold */
.options-grid .checkbox-pill,
.options-grid .checkbox-pill span {
    border-color: #000 !important;
    color: #000 !important;
}


/* VERSION 11.6 FIX - keep 11.6, remove double inner border/text box */
.options-grid .checkbox-pill span {
    border: none !important;
    background: transparent !important;
    box-shadow: none !important;
    outline: none !important;
    color: #000 !important;
}

.options-grid .checkbox-pill input {
    border: none !important;
    box-shadow: none !important;
    outline: none !important;
}


/* VERSION 12 - remove inner wrapper box only */

.options-grid .checkbox-pill {
    box-shadow: none !important;
}

.options-grid .checkbox-pill span {
    border: none !important;
    background: transparent !important;
}

/* if there is any inner container inside pill, kill it */
.options-grid .checkbox-pill * {
    box-shadow: none !important;
}


/* VERSION 12.1 - restore click functionality */

.options-grid .checkbox-pill {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    cursor: pointer !important;
    position: relative;
}

/* make whole pill clickable */
.options-grid .checkbox-pill input {
    position: absolute;
    inset: 0;
    opacity: 0;
    cursor: pointer;
}

/* keep visual clean */
.options-grid .checkbox-pill span {
    pointer-events: none;
}


/* VERSION 12.2 - real clickable equipment checkboxes */

/* Undo old display:none that killed the checkbox click state */
.options-grid .checkbox-pill input[type="checkbox"] {
    display: block !important;
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    opacity: 0 !important;
    cursor: pointer !important;
    z-index: 2 !important;
    margin: 0 !important;
}

/* keep label clickable */
.options-grid .checkbox-pill {
    position: relative !important;
    cursor: pointer !important;
    user-select: none !important;
}

/* text does not block click */
.options-grid .checkbox-pill span {
    pointer-events: none !important;
    position: relative !important;
    z-index: 1 !important;
}

/* visible selected state */
.options-grid .checkbox-pill:has(input[type="checkbox"]:checked) {
    background: #000 !important;
    border-color: #000 !important;
}

.options-grid .checkbox-pill:has(input[type="checkbox"]:checked) span {
    color: #fff !important;
    font-weight: 800 !important;
}


/* VERSION 13 - premium vehicle detail page */
.car-detail-v13 {
    padding-bottom: 56px;
}

.detail-title-v13 {
    text-align: center;
    padding: 42px 20px 26px;
}

.detail-title-v13 .eyebrow {
    color: #8a6420 !important;
}

.detail-title-v13 h1 {
    color: #050505 !important;
    font-size: clamp(2.6rem, 5vw, 5.4rem);
    line-height: .95;
    text-transform: uppercase;
    letter-spacing: .02em;
}

.detail-title-v13 p {
    margin-top: 12px;
    color: #2a2a2a !important;
    font-size: 1.08rem;
}

.detail-photo-triptych {
    width: calc(100vw - 48px);
    margin-left: 50%;
    transform: translateX(-50%);
    display: grid;
    grid-template-columns: .62fr 1.28fr .62fr;
    gap: 22px;
    align-items: stretch;
}

.main-photo,
.side-photo {
    min-height: 470px;
    border-radius: 18px;
    background:
        linear-gradient(135deg, rgba(214,181,110,.24), rgba(255,255,255,.62)),
        #e8dcc7;
    background-position: center;
    background-size: cover;
    border: 1.5px solid rgba(0,0,0,.32);
    box-shadow: 0 24px 64px rgba(0,0,0,.18);
    position: relative;
    overflow: hidden;
}

.side-photo {
    opacity: .92;
}

.detail-label {
    position: absolute;
    top: 18px;
    left: 18px;
    background: linear-gradient(90deg, #d6b56e, #f0dba5);
    color: #050505;
    border: 1.2px solid rgba(0,0,0,.62);
    padding: 10px 14px;
    border-radius: 999px;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.detail-thumbs-v13 {
    display: flex;
    justify-content: center;
    gap: 10px;
    margin: 18px auto 0;
    max-width: 960px;
    flex-wrap: wrap;
}

.detail-thumb-v13 {
    width: 86px;
    height: 58px;
    border-radius: 12px;
    overflow: hidden;
    border: 1.5px solid rgba(0,0,0,.3);
    padding: 0;
    background: transparent;
    cursor: pointer;
    opacity: .72;
}

.detail-thumb-v13.active,
.detail-thumb-v13:hover {
    opacity: 1;
    border-color: #000;
}

.detail-thumb-v13 img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.performance-panel-v13 {
    max-width: 1050px;
    margin: 28px auto 52px;
    background: rgba(255,255,255,.78);
    border: 1.6px solid rgba(0,0,0,.68);
    border-radius: 24px;
    box-shadow: 0 22px 58px rgba(0,0,0,.14);
    display: grid;
    grid-template-columns: 1.4fr repeat(3, .75fr) 1.25fr;
    align-items: center;
    gap: 18px;
    padding: 24px;
}

.gauge-card {
    display: grid;
    justify-items: center;
    gap: 6px;
    color: #050505;
}

.gauge-ring {
    width: 76px;
    height: 76px;
    border-radius: 50%;
    display: grid;
    place-items: center;
    background:
      radial-gradient(circle at center, rgba(255,255,255,.9) 0 54%, transparent 55%),
      conic-gradient(#d6b56e calc(var(--value) * 1%), rgba(0,0,0,.18) 0);
    border: 1px solid rgba(0,0,0,.32);
}

.gauge-ring span {
    color: #050505;
    font-weight: 900;
    font-size: .92rem;
    text-align: center;
    max-width: 58px;
    overflow: hidden;
    text-overflow: ellipsis;
}

.gauge-card small {
    color: #1d1d1d;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .08em;
    font-size: .72rem;
}

.price-card-v13 {
    border: 1.4px solid rgba(0,0,0,.54);
    border-radius: 16px;
    padding: 14px 18px;
    background: linear-gradient(145deg, rgba(255,255,255,.75), rgba(214,181,110,.22));
}

.price-card-v13 span {
    display: block;
    color: #2a2a2a;
    font-size: .78rem;
    text-transform: uppercase;
    letter-spacing: .08em;
    font-weight: 800;
}

.price-card-v13 strong {
    display: block;
    color: #050505;
    font-size: 1.55rem;
    margin-top: 4px;
}

.quick-specs-v13 {
    max-width: 1050px;
    margin: 0 auto 56px;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0;
    border-top: 1.3px solid rgba(0,0,0,.28);
    border-bottom: 1.3px solid rgba(0,0,0,.28);
}

.quick-specs-v13 div {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    padding: 18px 22px;
    border-right: 1px solid rgba(0,0,0,.22);
}

.quick-specs-v13 div:nth-child(3n) {
    border-right: 0;
}

.quick-specs-v13 strong {
    color: #050505;
    font-weight: 900;
}

.quick-specs-v13 span {
    color: #2b2b2b;
}

.contact-strip-v13 {
    max-width: 1050px;
    margin: 0 auto 56px;
    padding: 20px 24px;
    border-radius: 999px;
    border: 1.5px solid rgba(0,0,0,.62);
    background:
      linear-gradient(90deg, rgba(255,255,255,.84), rgba(214,181,110,.2));
    display: grid;
    grid-template-columns: 1.25fr auto 1fr 1fr;
    align-items: center;
    gap: 18px;
    box-shadow: 0 18px 46px rgba(0,0,0,.12);
}

.contact-strip-v13 h2 {
    color: #050505 !important;
    font-size: clamp(1.7rem, 2.6vw, 2.6rem);
    text-transform: uppercase;
}

.contact-strip-v13 span {
    color: #111;
    font-weight: 700;
}

.detail-tabs-v13 {
    max-width: 1050px;
    margin: 0 auto 60px;
    border: 1.5px solid rgba(0,0,0,.68);
    border-radius: 24px;
    padding: 32px;
    background: rgba(255,255,255,.74);
    box-shadow: 0 20px 52px rgba(0,0,0,.13);
}

.tab-buttons-v13 {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    margin-bottom: 26px;
}

.tab-buttons-v13 button {
    border: 1.4px solid rgba(0,0,0,.62);
    background: transparent;
    color: #050505;
    border-radius: 999px;
    padding: 12px 20px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .06em;
}

.tab-buttons-v13 button.active {
    background: linear-gradient(90deg, #d6b56e, #f0dba5);
}

.spec-table-v13 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0 34px;
    margin-bottom: 34px;
}

.spec-table-v13 div {
    display: flex;
    justify-content: space-between;
    gap: 16px;
    padding: 11px 0;
    border-bottom: 1px solid rgba(0,0,0,.16);
}

.spec-table-v13 strong,
.description-v13 h3,
.options-v13 h3 {
    color: #050505;
}

.spec-table-v13 span,
.description-v13,
.description-v13 p {
    color: #242424 !important;
}

.options-v13 .check-item {
    border-color: rgba(0,0,0,.56) !important;
    color: #050505 !important;
    background: rgba(255,255,255,.55) !important;
}

.bottom-gallery-v13 {
    max-width: 1050px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 22px;
}

.bottom-gallery-v13 img {
    width: 100%;
    height: 340px;
    object-fit: cover;
    border-radius: 18px;
    border: 1.4px solid rgba(0,0,0,.42);
    box-shadow: 0 18px 42px rgba(0,0,0,.14);
}

@media (max-width: 1050px) {
    .detail-photo-triptych {
        width: 100%;
        grid-template-columns: 1fr;
    }
    .side-photo {
        display: none;
    }
    .performance-panel-v13,
    .contact-strip-v13 {
        grid-template-columns: 1fr 1fr;
        border-radius: 24px;
    }
    .quick-specs-v13,
    .spec-table-v13 {
        grid-template-columns: 1fr 1fr;
    }
    .quick-specs-v13 div:nth-child(3n) {
        border-right: 1px solid rgba(0,0,0,.22);
    }
    .quick-specs-v13 div:nth-child(2n) {
        border-right: 0;
    }
}

@media (max-width: 650px) {
    .main-photo,
    .side-photo {
        min-height: 320px;
    }
    .performance-panel-v13,
    .contact-strip-v13,
    .quick-specs-v13,
    .spec-table-v13,
    .bottom-gallery-v13 {
        grid-template-columns: 1fr;
    }
    .quick-specs-v13 div,
    .quick-specs-v13 div:nth-child(3n),
    .quick-specs-v13 div:nth-child(2n) {
        border-right: 0;
    }
}


/* VERSION 14 - minimal about page */
.about-single-section {
    min-height: 62vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-top: 56px;
    padding-bottom: 76px;
}

.about-single-card {
    width: 100%;
    max-width: 1040px;
    padding: clamp(32px, 5vw, 62px);
    border-radius: 28px;
    border: 1.6px solid rgba(0,0,0,.68);
    background:
        linear-gradient(145deg, rgba(255,255,255,.86), rgba(226,211,184,.64)),
        rgba(255,255,255,.78);
    box-shadow:
        0 24px 70px rgba(0,0,0,.16),
        inset 0 1px 0 rgba(255,255,255,.7);
}

.about-single-card .eyebrow {
    color: #8a6420 !important;
    margin-bottom: 14px;
}

.about-single-card h1 {
    color: #050505 !important;
    font-size: clamp(2.7rem, 5.5vw, 5.4rem);
    line-height: .96;
    max-width: 980px;
    margin-bottom: 28px;
}

.about-story-text {
    max-width: 900px;
}

.about-story-text p {
    color: #111111 !important;
    font-size: clamp(1.02rem, 1.4vw, 1.18rem);
    line-height: 1.82;
    margin-bottom: 18px;
}

.about-story-text p:last-child {
    margin-bottom: 0;
}


/* VERSION 14.1 - center title */
.about-single-card h1 {
    text-align: center !important;
    margin-left: auto;
    margin-right: auto;
}


/* VERSION 15 - New homepage inspired by premium dealer references */
.home15-hero {
    position: relative;
    min-height: 72vh;
    border-radius: 30px;
    overflow: hidden;
    border: 1.5px solid rgba(0,0,0,.38);
    box-shadow: 0 28px 80px rgba(0,0,0,.18);
    background: linear-gradient(135deg, #d8c7aa, #f5efe5);
}

.home15-hero-bg {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(135deg, rgba(214,181,110,.25), rgba(255,255,255,.52)),
        url('/static/images/contact-hero.jpg');
    background-size: cover;
    background-position: center;
    transform: scale(1.02);
}

.home15-hero-overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(90deg, rgba(245,239,229,.78), rgba(245,239,229,.32) 45%, rgba(0,0,0,.12)),
        linear-gradient(0deg, rgba(0,0,0,.10), transparent 40%);
}

.home15-hero-content {
    position: relative;
    z-index: 2;
    max-width: 720px;
    padding: clamp(42px, 7vw, 92px);
    min-height: 72vh;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}

.home15-hero-content h1 {
    color: #050505 !important;
    text-transform: uppercase;
    font-size: clamp(3.5rem, 8vw, 8rem);
    line-height: .86;
    letter-spacing: -.03em;
    margin: 14px 0 18px;
}

.home15-hero-content p {
    color: #111 !important;
    font-size: clamp(1.02rem, 1.5vw, 1.22rem);
    max-width: 560px;
}

.home15-actions {
    display: flex;
    gap: 14px;
    flex-wrap: wrap;
    margin-top: 28px;
}

.home15-preview-strip {
    position: absolute;
    right: 28px;
    bottom: 28px;
    z-index: 3;
    display: flex;
    gap: 14px;
}

.home15-preview {
    width: 150px;
    height: 86px;
    border-radius: 16px;
    background-size: cover;
    background-position: center;
    border: 1.4px solid rgba(0,0,0,.42);
    overflow: hidden;
    position: relative;
    box-shadow: 0 16px 38px rgba(0,0,0,.2);
}

.home15-preview span {
    position: absolute;
    left: 10px;
    bottom: 9px;
    color: #fff;
    background: rgba(0,0,0,.58);
    border-radius: 999px;
    padding: 5px 9px;
    font-size: .74rem;
    font-weight: 900;
}

.home15-intro {
    display: grid;
    grid-template-columns: 1.1fr .9fr;
    gap: 46px;
    align-items: center;
    min-height: 560px;
}

.home15-intro-visual {
    min-height: 480px;
    border-radius: 28px;
    background:
        linear-gradient(135deg, rgba(214,181,110,.2), rgba(255,255,255,.45)),
        url('/static/images/contact-hero.jpg');
    background-size: cover;
    background-position: center;
    box-shadow: 0 24px 70px rgba(0,0,0,.16);
    border: 1.4px solid rgba(0,0,0,.34);
}

.home15-intro-copy h2,
.home15-section-title h2,
.home15-stock-head h2 {
    color: #050505 !important;
    font-size: clamp(2.7rem, 5vw, 5.2rem);
    line-height: .94;
    text-transform: uppercase;
}

.home15-intro-copy p {
    color: #181818 !important;
    margin: 20px 0 26px;
    max-width: 620px;
}

.home15-services {
    padding-top: 72px;
    padding-bottom: 72px;
}

.home15-section-title {
    max-width: 760px;
    margin-bottom: 38px;
}

.home15-service-layout {
    display: grid;
    grid-template-columns: .9fr 1.2fr .85fr;
    gap: 24px;
    align-items: end;
}

.home15-service-small {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 18px;
}

.home15-service-card,
.home15-service-big {
    position: relative;
    overflow: hidden;
    border-radius: 24px;
    border: 1.4px solid rgba(0,0,0,.38);
    box-shadow: 0 22px 56px rgba(0,0,0,.14);
    background: #eadfcf;
}

.home15-service-card {
    min-height: 230px;
}

.home15-service-image,
.home15-service-big {
    background-size: cover;
    background-position: center;
}

.home15-service-image {
    position: absolute;
    inset: 0;
}

.home15-service-card::after,
.home15-service-big::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(0deg, rgba(0,0,0,.54), transparent 62%);
}

.home15-service-card span,
.home15-service-big span {
    position: absolute;
    z-index: 2;
    left: 18px;
    bottom: 16px;
    background: rgba(255,255,255,.88);
    color: #050505;
    border: 1.3px solid rgba(0,0,0,.42);
    border-radius: 999px;
    padding: 10px 16px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .05em;
    font-size: .78rem;
}

.home15-service-big {
    min-height: 430px;
}

.home15-service-text {
    align-self: center;
}

.home15-service-text h3 {
    color: #050505 !important;
    font-size: clamp(2rem, 3vw, 3rem);
    line-height: .95;
    text-transform: uppercase;
}

.home15-service-text p {
    color: #1d1d1d !important;
    margin: 18px 0;
}

.home15-contact {
    max-width: 1050px;
    margin: 40px auto 80px;
    padding: 24px 28px;
    border-radius: 28px;
    border: 1.5px solid rgba(0,0,0,.55);
    background:
        linear-gradient(135deg, rgba(255,255,255,.82), rgba(214,181,110,.22));
    box-shadow: 0 22px 58px rgba(0,0,0,.13);
    display: grid;
    grid-template-columns: 1.4fr auto .9fr .75fr;
    gap: 18px;
    align-items: center;
}

.home15-contact h2 {
    color: #050505 !important;
    text-transform: uppercase;
    font-size: clamp(1.8rem, 3vw, 3rem);
}

.home15-contact p,
.home15-contact span {
    color: #111 !important;
}

.home15-contact span {
    font-weight: 800;
}

.home15-stock {
    padding-bottom: 84px;
}

.home15-stock-head {
    display: flex;
    justify-content: space-between;
    gap: 22px;
    align-items: end;
    margin-bottom: 28px;
}

.home15-stock-row {
    display: grid;
    grid-template-columns: repeat(4, minmax(260px, 1fr));
    gap: 28px;
}

.home15-car-card {
    border-radius: 24px;
    overflow: hidden;
    background: rgba(255,255,255,.78);
    border: 1.5px solid rgba(0,0,0,.46);
    box-shadow: 0 22px 58px rgba(0,0,0,.14);
}

.home15-car-image {
    display: block;
    height: 250px;
    background:
        linear-gradient(135deg, rgba(214,181,110,.16), rgba(255,255,255,.4));
    background-size: cover;
    background-position: center;
}

.home15-car-copy {
    padding: 18px;
}

.home15-car-copy h3 {
    color: #050505 !important;
    font-size: 1.65rem;
    text-transform: uppercase;
}

.home15-car-copy p {
    color: #1b1b1b !important;
    min-height: 42px;
}

.home15-car-price {
    margin: 14px 0;
    border: 1.2px solid rgba(0,0,0,.42);
    border-radius: 14px;
    padding: 10px 12px;
    background: rgba(255,255,255,.6);
}

.home15-car-price span {
    display: block;
    color: #333;
    font-size: .72rem;
    text-transform: uppercase;
    font-weight: 900;
}

.home15-car-price strong {
    color: #050505;
    font-size: 1.15rem;
}

.home15-car-meta {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 6px;
    border-top: 1px solid rgba(0,0,0,.18);
    padding-top: 12px;
}

.home15-car-meta span {
    color: #111;
    font-weight: 700;
    font-size: .82rem;
}

@media (max-width: 1100px) {
    .home15-intro,
    .home15-service-layout,
    .home15-contact {
        grid-template-columns: 1fr;
    }
    .home15-stock-row {
        grid-template-columns: repeat(2, minmax(0,1fr));
    }
    .home15-preview-strip {
        position: relative;
        right: auto;
        bottom: auto;
        margin: -110px 32px 32px;
        justify-content: flex-end;
    }
}

@media (max-width: 680px) {
    .home15-hero,
    .home15-hero-content {
        min-height: 640px;
    }
    .home15-preview-strip,
    .home15-service-small,
    .home15-stock-row {
        grid-template-columns: 1fr;
        display: grid;
    }
    .home15-preview {
        width: 100%;
    }
}


/* VERSION 16 - detailed vehicle specs/admin-editable structure */
.performance-panel-v16 {
    grid-template-columns: 1.15fr repeat(3, .78fr) 1.25fr;
}

.quick-specs-v16 {
    grid-template-columns: repeat(3, 1fr);
    border: 1.5px solid rgba(0,0,0,.56);
    border-radius: 22px;
    overflow: hidden;
    background: rgba(255,255,255,.64);
}

.quick-specs-v16 div {
    border-right: 1px solid rgba(0,0,0,.18);
    border-bottom: 1px solid rgba(0,0,0,.12);
}

.quick-specs-v16 div:nth-child(3n) {
    border-right: 0;
}

.quick-specs-v16 div:nth-last-child(-n+3) {
    border-bottom: 0;
}

.detail-tabs-v16 {
    margin-top: 42px;
}

.tab-buttons-v16 button {
    cursor: pointer;
}

.detail-tab-panel {
    display: none;
}

.detail-tab-panel.active {
    display: block;
}

.spec-table-v16 {
    grid-template-columns: repeat(3, 1fr);
}

.spec-table-v16 div {
    min-height: 42px;
}

.options-v13 .compact-checks {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.options-v13 .check-item {
    border-radius: 999px !important;
    padding: 10px 14px !important;
}

@media (max-width: 1050px) {
    .performance-panel-v16,
    .quick-specs-v16,
    .spec-table-v16 {
        grid-template-columns: 1fr 1fr;
    }
    .quick-specs-v16 div:nth-child(3n) {
        border-right: 1px solid rgba(0,0,0,.18);
    }
    .quick-specs-v16 div:nth-child(2n) {
        border-right: 0;
    }
    .quick-specs-v16 div:nth-last-child(-n+3) {
        border-bottom: 1px solid rgba(0,0,0,.12);
    }
}

@media (max-width: 650px) {
    .performance-panel-v16,
    .quick-specs-v16,
    .spec-table-v16 {
        grid-template-columns: 1fr;
    }
    .quick-specs-v16 div,
    .quick-specs-v16 div:nth-child(2n),
    .quick-specs-v16 div:nth-child(3n) {
        border-right: 0;
    }
}


/* VERSION 17 */

.vrb17-hero{
    position:relative;
    min-height:92vh;
    border-radius:34px;
    overflow:hidden;
    border:1.5px solid rgba(0,0,0,.35);
    box-shadow:0 30px 90px rgba(0,0,0,.18);
    margin-bottom:70px;
}

.vrb17-hero-image{
    position:absolute;
    inset:0;
    background-size:cover;
    background-position:center;
    transform:scale(1.02);
}

.vrb17-hero-overlay{
    position:absolute;
    inset:0;
    background:
        linear-gradient(180deg, rgba(255,255,255,.04), rgba(0,0,0,.08)),
        linear-gradient(90deg, rgba(245,238,226,.12), transparent 40%);
}

.vrb17-hero-content{
    position:relative;
    z-index:2;
    min-height:92vh;
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
    padding:clamp(38px,6vw,90px);
}

.vrb17-hero-content h1{
    color:#111 !important;
    font-size:clamp(3.5rem,8vw,7rem);
    line-height:.9;
    text-transform:uppercase;
    max-width:720px;
    margin-top:10px;
}

.vrb17-story{
    display:grid;
    grid-template-columns:1.15fr .85fr;
    gap:50px;
    align-items:center;
    margin-bottom:90px;
}

.vrb17-story-image{
    min-height:650px;
    border-radius:30px;
    background-size:cover;
    background-position:center;
    border:1.5px solid rgba(0,0,0,.35);
    box-shadow:0 25px 70px rgba(0,0,0,.16);
}

.vrb17-story-copy h2{
    color:#0b0b0b !important;
    font-size:clamp(2.6rem,5vw,5rem);
    line-height:.95;
    margin:14px 0 24px;
    text-transform:uppercase;
}

.vrb17-story-copy p{
    color:#171717 !important;
    font-size:1.05rem;
    line-height:1.9;
    margin-bottom:30px;
    max-width:560px;
}

@media(max-width:980px){

    .vrb17-story{
        grid-template-columns:1fr;
    }

    .vrb17-story-image{
        min-height:480px;
    }

    .vrb17-hero,
    .vrb17-hero-content{
        min-height:72vh;
    }
}


/* VERSION 17.1 */

.vrb17-hero,
.vrb17-story{
    width:100vw;
    max-width:100vw;
    margin-left:calc(50% - 50vw);
    margin-right:calc(50% - 50vw);
}

.vrb17-story{
    padding-left:40px;
    padding-right:40px;
    box-sizing:border-box;
}

.vrb17-hero{
    border-radius:0;
    margin-top:-20px;
}

.vrb17-hero-image{
    background-size:cover;
    background-position:center center;
}

.vrb17-story-image{
    background-size:contain;
    background-repeat:no-repeat;
    background-color:#d7c0a0;
}

.stock-card-button{
    width:100%;
    margin-top:16px;
    justify-content:center;
}

.home15-car-card{
    display:flex;
    flex-direction:column;
}

.home15-car-copy{
    display:flex;
    flex-direction:column;
    flex:1;
}

.home15-car-meta{
    margin-bottom:16px;
}


/* VERSION 17.2 */

.vrb17-hero-content h1{
    color:#cfa56a !important;
    text-shadow:
        0 4px 18px rgba(0,0,0,.18),
        0 0 24px rgba(207,165,106,.22);
}

.vrb17-story-image{
    border:none !important;
    box-shadow:none !important;
    background-color:transparent !important;
    border-radius:0 !important;
}


/* VERSION 17.3 */

.vrb17-story{
    align-items:center !important;
}

.vrb17-story-copy{
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
    text-align:center;
}

.vrb17-story-copy p{
    margin-left:auto;
    margin-right:auto;
}

.vrb17-story-image{
    margin-left:auto;
    margin-right:auto;
    background-position:center center !important;
}


/* VERSION 17.4 */

.vrb17-story-image{
    width:100%;
    min-height:650px;
    background-size:contain !important;
    background-repeat:no-repeat !important;
    background-position:center center !important;
    display:block !important;
}


/* VERSION 18 - clean navbar */

header,
.site-header,
.navbar,
.nav-shell,
.nav-wrapper{
    background:transparent !important;
    border:none !important;
    box-shadow:none !important;
    backdrop-filter:none !important;
}

/* remove all boxes around navigation */
header *,
.site-header *,
.navbar *,
.nav-shell *,
.nav-wrapper *{
    box-shadow:none !important;
}

/* navigation links only */
.nav-links a,
nav a{
    background:transparent !important;
    border:none !important;
    padding:0 16px !important;
    border-radius:0 !important;
}

/* bigger logo without box */
.logo,
.brand-logo,
.nav-logo,
.logo-wrap img,
.navbar-brand img{
    background:transparent !important;
    border:none !important;
    border-radius:0 !important;
    box-shadow:none !important;
    height:82px !important;
    width:auto !important;
    object-fit:contain !important;
}

/* if text logo exists */
.logo-text,
.brand-text{
    display:none !important;
}


/* ADMIN PRO FINAL */
.admin-service-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:18px;
    margin:18px 0 24px;
}
.admin-service-editor{
    border:1.4px solid rgba(0,0,0,.45);
    border-radius:20px;
    padding:18px;
    background:rgba(255,255,255,.55);
}
.admin-service-editor h3{
    color:#050505!important;
    margin-bottom:12px;
}
.admin-pro-card h2{
    color:#050505!important;
    margin:28px 0 16px;
}
@media(max-width:800px){
    .admin-service-grid{grid-template-columns:1fr;}
}


/* VERSION 18.2 - REAL ADMIN ONLY DARK MODE */
body.admin-dark-mode {
    background:
        radial-gradient(circle at top right, rgba(207,165,106,.14), transparent 30%),
        linear-gradient(180deg, #070707, #101010 45%, #080808) !important;
    color: #f7f1e8 !important;
}

body.admin-dark-mode .page-shell {
    max-width: 1500px;
}

body.admin-dark-mode .site-header {
    background: rgba(12,12,12,.82) !important;
    border-bottom: 1px solid rgba(207,165,106,.35) !important;
}

body.admin-dark-mode .site-nav a {
    color: #f7f1e8 !important;
}

body.admin-dark-mode .site-nav a:hover {
    color: #cfa56a !important;
}

body.admin-dark-mode .page-banner,
body.admin-dark-mode .form-card,
body.admin-dark-mode .metric-card,
body.admin-dark-mode .admin-table-wrap,
body.admin-dark-mode .filter-shell,
body.admin-dark-mode .admin-service-editor,
body.admin-dark-mode .admin-list-item,
body.admin-dark-mode .preview-card,
body.admin-dark-mode .lux-card,
body.admin-dark-mode .contact-card {
    background: #171717 !important;
    border: 1.4px solid rgba(207,165,106,.55) !important;
    color: #f7f1e8 !important;
    box-shadow: 0 18px 45px rgba(0,0,0,.42) !important;
}

body.admin-dark-mode h1,
body.admin-dark-mode h2,
body.admin-dark-mode h3,
body.admin-dark-mode h4,
body.admin-dark-mode p,
body.admin-dark-mode label,
body.admin-dark-mode span,
body.admin-dark-mode strong,
body.admin-dark-mode td,
body.admin-dark-mode th,
body.admin-dark-mode .muted,
body.admin-dark-mode .lead {
    color: #f7f1e8 !important;
}

body.admin-dark-mode .eyebrow,
body.admin-dark-mode .mini-kicker,
body.admin-dark-mode .text-link {
    color: #cfa56a !important;
}

body.admin-dark-mode input,
body.admin-dark-mode textarea,
body.admin-dark-mode select,
body.admin-dark-mode .wysiwyg-surface {
    background: #0d0d0d !important;
    color: #ffffff !important;
    border: 1.2px solid rgba(207,165,106,.72) !important;
}

body.admin-dark-mode input::placeholder,
body.admin-dark-mode textarea::placeholder {
    color: rgba(255,255,255,.52) !important;
}

body.admin-dark-mode select option {
    background: #0d0d0d !important;
    color: #fff !important;
}

body.admin-dark-mode .button-primary,
body.admin-dark-mode .nav-cta {
    background: linear-gradient(90deg, #b98a3b, #f0d49b) !important;
    color: #080808 !important;
    border: 1px solid rgba(255,255,255,.18) !important;
}

body.admin-dark-mode .button-secondary {
    background: transparent !important;
    color: #f7f1e8 !important;
    border: 1.2px solid rgba(207,165,106,.65) !important;
}

body.admin-dark-mode .admin-table {
    color: #f7f1e8 !important;
}

body.admin-dark-mode .admin-table th {
    background: #0d0d0d !important;
    color: #cfa56a !important;
}

body.admin-dark-mode .admin-table td {
    border-color: rgba(207,165,106,.22) !important;
}

body.admin-dark-mode .table-pill {
    border: 1px solid rgba(207,165,106,.55) !important;
    color: #f7f1e8 !important;
    background: rgba(207,165,106,.12) !important;
}

.admin-quick-nav {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin: -8px 0 34px;
}

.admin-quick-nav a {
    padding: 12px 16px;
    border-radius: 999px;
    background: #171717;
    border: 1px solid rgba(207,165,106,.55);
    color: #f7f1e8;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .06em;
    font-size: .8rem;
}

.admin-upload-box {
    border: 1.4px dashed rgba(207,165,106,.7) !important;
    border-radius: 18px !important;
    padding: 18px !important;
    background: rgba(207,165,106,.06) !important;
}

.admin-upload-box small {
    display: block;
    margin-top: 8px;
    color: rgba(255,255,255,.72) !important;
}

.admin-upload-preview {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(130px, 1fr));
    gap: 10px;
    margin-top: 14px;
}

.admin-upload-preview div {
    border: 1px solid rgba(207,165,106,.45);
    border-radius: 12px;
    padding: 8px;
    color: #f7f1e8;
    background: rgba(0,0,0,.22);
    font-size: .82rem;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.admin-dark-mode .site-footer {
    background: #111 !important;
    border-top: 1px solid rgba(207,165,106,.35) !important;
}


/* V18.4 Gallery Pro */
.gallery-thumbs{display:flex;gap:10px;overflow:auto;margin-top:15px}
.gallery-thumbs img{width:120px;height:80px;object-fit:cover;cursor:pointer;border:2px solid #cfa56a;border-radius:10px}
.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.92);display:none;align-items:center;justify-content:center;z-index:9999}
.lightbox.active{display:flex}
.lightbox img{max-width:92vw;max-height:92vh}
.lightbox-close,.lightbox-prev,.lightbox-next{
position:absolute;color:white;font-size:40px;cursor:pointer;padding:20px
}
.lightbox-close{top:10px;right:20px}
.lightbox-prev{left:20px}
.lightbox-next{right:20px}


/* V18.5 Detail Page Pro - real gallery */
.car-detail-gallery-pro {
    width: min(1280px, calc(100vw - 40px));
    margin: 26px auto 34px;
}

.gallery-pro-main-wrap {
    position: relative;
    width: 100%;
    min-height: min(72vh, 760px);
    border-radius: 26px;
    overflow: hidden;
    border: 1.5px solid rgba(0,0,0,.48);
    background: #e8dcc7;
    box-shadow: 0 28px 78px rgba(0,0,0,.18);
    display: grid;
    place-items: center;
}

.gallery-pro-main {
    width: 100%;
    height: min(72vh, 760px);
    object-fit: contain;
    background:
        radial-gradient(circle at top right, rgba(207,165,106,.12), transparent 30%),
        #e8dcc7;
    cursor: zoom-in;
    user-select: none;
    display: block;
}

.gallery-pro-placeholder {
    color: #111;
    font-weight: 800;
}

.gallery-pro-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 54px;
    height: 54px;
    border-radius: 999px;
    border: 1.4px solid rgba(0,0,0,.45);
    background: rgba(255,255,255,.82);
    color: #111;
    font-size: 2.2rem;
    line-height: 1;
    cursor: pointer;
    display: grid;
    place-items: center;
    z-index: 4;
    transition: transform .2s ease, background .2s ease;
}

.gallery-pro-arrow:hover {
    background: #f0d49b;
    transform: translateY(-50%) scale(1.04);
}

.gallery-pro-prev { left: 18px; }
.gallery-pro-next { right: 18px; }

.gallery-pro-label {
    top: 18px !important;
    left: 18px !important;
}

.gallery-pro-counter,
.gallery-pro-lightbox-counter {
    position: absolute;
    right: 18px;
    bottom: 18px;
    background: rgba(0,0,0,.68);
    color: #fff;
    padding: 9px 14px;
    border-radius: 999px;
    font-weight: 800;
    letter-spacing: .04em;
    z-index: 5;
}

.gallery-pro-thumbs {
    display: grid !important;
    grid-template-columns: repeat(auto-fill, minmax(135px, 1fr));
    gap: 12px;
    margin-top: 16px;
    overflow: visible !important;
}

.gallery-pro-thumb {
    height: 92px;
    border-radius: 14px;
    padding: 0;
    overflow: hidden;
    border: 2px solid transparent;
    background: transparent;
    cursor: pointer;
    opacity: .74;
    transition: opacity .2s ease, border-color .2s ease, transform .2s ease;
}

.gallery-pro-thumb.active,
.gallery-pro-thumb:hover {
    opacity: 1;
    border-color: #cfa56a;
    transform: translateY(-2px);
}

.gallery-pro-thumb img,
.gallery-thumbs .gallery-thumb {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    border: 0 !important;
    border-radius: 0 !important;
    display: block;
}

.gallery-pro-lightbox {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,.94);
    display: none;
    align-items: center;
    justify-content: center;
    z-index: 99999;
    touch-action: pan-y;
}

.gallery-pro-lightbox.active {
    display: flex;
}

.gallery-pro-lightbox img {
    max-width: 92vw;
    max-height: 88vh;
    object-fit: contain;
    user-select: none;
}

.gallery-pro-lightbox .lightbox-close,
.gallery-pro-lightbox .lightbox-prev,
.gallery-pro-lightbox .lightbox-next {
    position: absolute;
    border: none;
    background: rgba(255,255,255,.08);
    color: white;
    cursor: pointer;
    z-index: 100000;
    border-radius: 999px;
}

.gallery-pro-lightbox .lightbox-close {
    top: 22px;
    right: 26px;
    width: 54px;
    height: 54px;
    font-size: 2.2rem;
}

.gallery-pro-lightbox .lightbox-prev,
.gallery-pro-lightbox .lightbox-next {
    top: 50%;
    transform: translateY(-50%);
    width: 62px;
    height: 62px;
    font-size: 3rem;
}

.gallery-pro-lightbox .lightbox-prev { left: 24px; }
.gallery-pro-lightbox .lightbox-next { right: 24px; }

.gallery-pro-lightbox-counter {
    right: 50%;
    transform: translateX(50%);
    bottom: 26px;
}

@media (max-width: 760px) {
    .car-detail-gallery-pro {
        width: calc(100vw - 20px);
    }

    .gallery-pro-main-wrap,
    .gallery-pro-main {
        height: 64vh;
        min-height: 420px;
    }

    .gallery-pro-arrow {
        width: 44px;
        height: 44px;
        font-size: 1.8rem;
    }

    .gallery-pro-thumbs {
        grid-template-columns: repeat(auto-fill, minmax(94px, 1fr));
    }

    .gallery-pro-thumb {
        height: 68px;
    }

    .gallery-pro-lightbox .lightbox-prev,
    .gallery-pro-lightbox .lightbox-next {
        width: 48px;
        height: 48px;
        font-size: 2.3rem;
    }
}


/* V21 Privacy */
.privacy-banner {
    text-align: center;
}

.privacy-section {
    max-width: 1120px;
    margin: 0 auto;
}

.privacy-card {
    background: rgba(255,255,255,.82);
    border: 1.5px solid rgba(0,0,0,.45);
    border-radius: 28px;
    padding: clamp(28px, 5vw, 64px);
    box-shadow: 0 24px 70px rgba(0,0,0,.14);
}

.privacy-block {
    padding: 22px 0;
    border-bottom: 1px solid rgba(0,0,0,.14);
}

.privacy-block:last-child {
    border-bottom: 0;
}

.privacy-block h2 {
    color: #050505 !important;
    font-size: clamp(1.65rem, 3vw, 2.6rem);
    margin-bottom: 14px;
}

.privacy-block p {
    color: #171717 !important;
    line-height: 1.75;
    margin: 0 0 8px;
    white-space: pre-line;
}

.legal-admin-sections {
    display: grid;
    gap: 18px;
    margin: 22px 0;
}

.legal-admin-block {
    border: 1.4px solid rgba(207,165,106,.58);
    border-radius: 18px;
    padding: 18px;
    background: rgba(255,255,255,.04);
}


/* V21.5 - readable success/thank-you messages */
.flash,
.flash-message,
.alert,
.alert-success,
.form-success,
.success-message,
.thank-you-message,
.notice-success {
    color: #050505 !important;
}

.flash *,
.flash-message *,
.alert-success *,
.form-success *,
.success-message *,
.thank-you-message *,
.notice-success * {
    color: #050505 !important;
}

/* Admin verkoopaanvraag foto's */
.request-gallery-pro {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(170px, 1fr));
    gap: 14px;
    margin-top: 22px;
}

.request-gallery-pro button {
    padding: 0;
    border: 1.4px solid rgba(207,165,106,.55);
    border-radius: 16px;
    overflow: hidden;
    background: transparent;
    cursor: zoom-in;
    min-height: 130px;
}

.request-gallery-pro img {
    width: 100%;
    height: 170px;
    object-fit: cover;
    display: block;
}

.request-photo-lightbox {
    position: fixed;
    inset: 0;
    z-index: 99999;
    display: none;
    align-items: center;
    justify-content: center;
    background: rgba(0,0,0,.94);
}

.request-photo-lightbox.active {
    display: flex;
}

.request-photo-lightbox img {
    max-width: 92vw;
    max-height: 88vh;
    object-fit: contain;
}

.request-photo-lightbox button {
    position: absolute;
    border: 1px solid rgba(255,255,255,.25);
    background: rgba(255,255,255,.10);
    color: #fff;
    border-radius: 999px;
    cursor: pointer;
}

.request-lightbox-close {
    top: 22px;
    right: 24px;
    width: 54px;
    height: 54px;
    font-size: 2rem;
}

.request-lightbox-prev,
.request-lightbox-next {
    top: 50%;
    transform: translateY(-50%);
    width: 58px;
    height: 58px;
    font-size: 2.5rem;
}

.request-lightbox-prev { left: 22px; }
.request-lightbox-next { right: 22px; }

/* Same clean uploader in admin as on verkoop page */
.admin-photo-upload {
    grid-column: 1 / -1;
    border: 1.5px dashed rgba(207,165,106,.72);
    border-radius: 20px;
    padding: 20px;
    background: rgba(207,165,106,.06);
}

.admin-photo-upload .upload-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.admin-photo-upload input[type="file"] {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none;
}

.admin-selected-photo-list {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
    gap: 12px;
    margin-top: 16px;
}

.admin-selected-photo-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    border: 1px solid rgba(207,165,106,.42);
    border-radius: 13px;
    padding: 10px 12px;
    background: rgba(0,0,0,.12);
}

.admin-selected-photo-name {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.admin-selected-photo-remove {
    border: 0;
    background: transparent;
    color: #cfa56a;
    cursor: pointer;
    font-weight: 900;
    font-size: 1rem;
}

/* Legal editor */
.legal-admin-block {
    position: relative;
}

.legal-admin-index {
    display: inline-block;
    margin-bottom: 12px;
    color: #cfa56a !important;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .08em;
}


/* V21.9 persistent uploaded media */
.request-gallery-pro img,
.admin-gallery-grid img,
.gallery-pro-thumb img {
    background: #ece7df;
}

.request-gallery-pro img:not([src]),
.request-gallery-pro img[src=""] {
    display: none;
}


/* =========================================================
   V21.10 — Responsive layout for desktop, tablet and mobile
   ========================================================= */

html {
    overflow-x: hidden;
}

body {
    overflow-x: hidden;
}

img,
video,
svg {
    max-width: 100%;
}

.container,
.section,
.page-banner,
.site-footer-inner {
    width: min(100% - 32px, 1320px);
    margin-inline: auto;
}

/* Prevent long content from pushing layouts wider */
* {
    min-width: 0;
}

input,
select,
textarea,
button {
    max-width: 100%;
}

/* Medium desktop and tablet landscape */
@media (max-width: 1180px) {
    .site-header-inner,
    .header-inner,
    .nav-shell {
        padding-inline: 22px;
    }

    .main-nav,
    .site-nav,
    .nav-links {
        gap: 14px;
    }

    .home-story-grid,
    .story-grid,
    .split-section,
    .two-column-section,
    .car-detail-top,
    .detail-hero-grid {
        grid-template-columns: 1fr 1fr;
        gap: 32px;
    }

    .stock-grid,
    .car-grid,
    .selection-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .specifications-grid,
    .spec-grid,
    .details-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .footer-grid,
    .site-footer-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 28px;
    }

    .admin-layout,
    .admin-shell {
        grid-template-columns: 240px minmax(0, 1fr);
    }
}

/* Tablet and iPad portrait */
@media (max-width: 900px) {
    :root {
        --page-padding: 20px;
    }

    h1 {
        font-size: clamp(2rem, 7vw, 3.4rem);
        line-height: 1.06;
    }

    h2 {
        font-size: clamp(1.7rem, 5vw, 2.6rem);
    }

    .hero-title,
    .page-title,
    .detail-title {
        font-size: clamp(2.1rem, 8vw, 4rem);
        text-wrap: balance;
    }

    .site-header,
    .main-header {
        position: relative;
    }

    .site-header-inner,
    .header-inner,
    .nav-shell {
        min-height: 78px;
        flex-wrap: wrap;
        gap: 12px;
        padding: 12px 18px;
    }

    .site-logo img,
    .brand-logo img,
    .header-logo img {
        max-height: 58px;
        width: auto;
    }

    .main-nav,
    .site-nav,
    .nav-links {
        width: 100%;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 8px 14px;
        padding-bottom: 8px;
    }

    .main-nav a,
    .site-nav a,
    .nav-links a {
        font-size: .94rem;
        padding: 8px 6px;
    }

    .hero,
    .home-hero,
    .hero-section {
        min-height: 68vh;
        background-position: center;
    }

    .hero-content,
    .home-hero-content {
        padding-inline: 22px;
        max-width: 760px;
        margin-inline: auto;
        text-align: center;
    }

    .home-story-grid,
    .story-grid,
    .split-section,
    .two-column-section,
    .car-detail-top,
    .detail-hero-grid,
    .contact-grid,
    .sell-grid {
        grid-template-columns: 1fr;
    }

    .story-copy,
    .story-content,
    .home-story-copy {
        order: 2;
        text-align: center;
    }

    .story-image,
    .home-story-image {
        order: 1;
        min-height: 380px;
    }

    .story-image img,
    .home-story-image img {
        width: 100%;
        height: auto;
        max-height: 620px;
        object-fit: contain;
    }

    .stock-grid,
    .car-grid,
    .selection-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 20px;
    }

    .filter-grid,
    .stock-filters,
    .form-grid,
    .form-grid.two-cols,
    .admin-form-grid,
    .admin-editor-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .full-span,
    .form-grid .full-width,
    .form-grid textarea,
    .admin-photo-upload {
        grid-column: 1 / -1;
    }

    .gallery-main,
    .detail-main-image,
    .car-gallery-main {
        min-height: 420px;
    }

    .gallery-thumbnails,
    .detail-thumbnails,
    .car-gallery-thumbs {
        overflow-x: auto;
        display: flex;
        scroll-snap-type: x mandatory;
        gap: 10px;
        padding-bottom: 8px;
    }

    .gallery-thumbnails > *,
    .detail-thumbnails > *,
    .car-gallery-thumbs > * {
        flex: 0 0 120px;
        scroll-snap-align: start;
    }

    .meter-row,
    .performance-meters,
    .detail-meters {
        flex-wrap: wrap;
        justify-content: center;
        gap: 18px;
    }

    .meter,
    .performance-meter {
        flex: 0 1 140px;
    }

    .price-card,
    .detail-price {
        width: 100%;
        text-align: center;
    }

    .specifications-grid,
    .spec-grid,
    .details-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .tabs,
    .detail-tabs,
    .admin-tabs {
        overflow-x: auto;
        white-space: nowrap;
        display: flex;
        gap: 8px;
        padding-bottom: 6px;
    }

    .tabs > *,
    .detail-tabs > *,
    .admin-tabs > * {
        flex: 0 0 auto;
    }

    .footer-grid,
    .site-footer-grid {
        grid-template-columns: 1fr 1fr;
    }

    .admin-layout,
    .admin-shell {
        grid-template-columns: 1fr;
    }

    .admin-sidebar,
    .admin-nav {
        position: static;
        width: 100%;
        display: flex;
        gap: 8px;
        overflow-x: auto;
        padding: 12px;
    }

    .admin-sidebar a,
    .admin-nav a {
        flex: 0 0 auto;
        white-space: nowrap;
    }

    .admin-table-wrap,
    .table-scroll {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    table {
        min-width: 760px;
    }
}

/* Mobile */
@media (max-width: 640px) {
    .container,
    .section,
    .page-banner,
    .site-footer-inner {
        width: min(100% - 24px, 1320px);
    }

    body {
        font-size: 15px;
    }

    .section,
    section {
        padding-top: 54px;
        padding-bottom: 54px;
    }

    .site-header-inner,
    .header-inner,
    .nav-shell {
        padding-inline: 12px;
    }

    .site-logo img,
    .brand-logo img,
    .header-logo img {
        max-height: 50px;
    }

    .main-nav,
    .site-nav,
    .nav-links {
        justify-content: flex-start;
        overflow-x: auto;
        flex-wrap: nowrap;
        padding: 4px 2px 10px;
        scrollbar-width: thin;
    }

    .main-nav a,
    .site-nav a,
    .nav-links a {
        flex: 0 0 auto;
        white-space: nowrap;
    }

    .hero,
    .home-hero,
    .hero-section {
        min-height: 62vh;
    }

    .hero-content,
    .home-hero-content {
        padding-inline: 16px;
    }

    .hero-subtitle,
    .lead,
    .intro-text {
        font-size: 1rem;
        line-height: 1.65;
    }

    .button,
    button,
    input[type="submit"] {
        min-height: 46px;
    }

    .hero-actions,
    .form-actions,
    .card-actions {
        flex-direction: column;
        align-items: stretch;
        width: 100%;
    }

    .hero-actions .button,
    .form-actions .button,
    .card-actions .button {
        width: 100%;
        justify-content: center;
    }

    .home-story-grid,
    .story-grid,
    .split-section,
    .two-column-section {
        gap: 24px;
    }

    .story-image,
    .home-story-image {
        min-height: 0;
    }

    .stock-grid,
    .car-grid,
    .selection-grid {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .car-card,
    .stock-card,
    .selection-card {
        width: 100%;
    }

    .car-card img,
    .stock-card img,
    .selection-card img {
        aspect-ratio: 16 / 10;
        object-fit: cover;
    }

    .filter-grid,
    .stock-filters,
    .form-grid,
    .form-grid.two-cols,
    .admin-form-grid,
    .admin-editor-grid,
    .specifications-grid,
    .spec-grid,
    .details-grid {
        grid-template-columns: 1fr;
    }

    .form-grid > *,
    .admin-form-grid > * {
        grid-column: 1;
    }

    .form-card,
    .admin-card,
    .content-card,
    .legal-admin-block {
        padding: 18px;
        border-radius: 18px;
    }

    input,
    select,
    textarea {
        font-size: 16px; /* prevents iOS zoom */
        width: 100%;
    }

    .equipment-options,
    .option-buttons,
    .feature-buttons {
        display: grid;
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .equipment-options label,
    .option-buttons label,
    .feature-buttons label {
        width: 100%;
    }

    .gallery-main,
    .detail-main-image,
    .car-gallery-main {
        min-height: 260px;
        border-radius: 18px;
    }

    .gallery-main img,
    .detail-main-image img,
    .car-gallery-main img {
        width: 100%;
        height: auto;
        max-height: 70vh;
        object-fit: contain;
    }

    .gallery-thumbnails > *,
    .detail-thumbnails > *,
    .car-gallery-thumbs > * {
        flex-basis: 92px;
    }

    .meter-row,
    .performance-meters,
    .detail-meters {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        width: 100%;
    }

    .meter,
    .performance-meter {
        width: 100%;
        min-width: 0;
    }

    .price-card,
    .detail-price {
        grid-column: 1 / -1;
    }

    .detail-summary,
    .car-summary,
    .detail-specs {
        padding: 18px;
    }

    .tabs,
    .detail-tabs {
        margin-inline: -12px;
        padding-inline: 12px;
    }

    .request-gallery-pro,
    .admin-selected-photo-list,
    .admin-gallery-grid {
        grid-template-columns: 1fr;
    }

    .request-gallery-pro img,
    .admin-gallery-grid img {
        height: auto;
        max-height: 420px;
        object-fit: contain;
    }

    .request-lightbox-prev,
    .request-lightbox-next {
        width: 44px;
        height: 44px;
        font-size: 2rem;
    }

    .request-lightbox-prev {
        left: 8px;
    }

    .request-lightbox-next {
        right: 8px;
    }

    .request-lightbox-close {
        top: 12px;
        right: 12px;
        width: 44px;
        height: 44px;
    }

    .footer-grid,
    .site-footer-grid {
        grid-template-columns: 1fr;
        text-align: center;
    }

    .footer-grid > *,
    .site-footer-grid > * {
        align-items: center;
    }

    .admin-sidebar,
    .admin-nav {
        margin-inline: -12px;
        width: calc(100% + 24px);
        border-radius: 0;
    }

    .page-banner {
        text-align: center;
    }

    .page-banner p {
        margin-inline: auto;
    }
}

/* Very small phones */
@media (max-width: 390px) {
    .container,
    .section,
    .page-banner,
    .site-footer-inner {
        width: min(100% - 18px, 1320px);
    }

    .site-logo img,
    .brand-logo img,
    .header-logo img {
        max-height: 44px;
    }

    .meter-row,
    .performance-meters,
    .detail-meters {
        grid-template-columns: 1fr;
    }

    .hero-title,
    .page-title,
    .detail-title {
        font-size: clamp(1.9rem, 11vw, 2.8rem);
    }

    .form-card,
    .admin-card,
    .content-card {
        padding: 14px;
    }
}

/* Touch improvements */
@media (hover: none) and (pointer: coarse) {
    a,
    button,
    .button,
    input[type="checkbox"] + label,
    input[type="radio"] + label {
        min-height: 44px;
    }

    .gallery-thumbnails,
    .detail-thumbnails,
    .car-gallery-thumbs {
        scroll-behavior: smooth;
    }
}


/* =========================================================
   V21.11 — Mobile fine-tuning only
   ========================================================= */

@media (max-width: 640px) {

    /* Menu button must be clearly visible */
    #menu-toggle,
    .menu-toggle,
    .mobile-menu-toggle,
    .hamburger,
    .nav-toggle {
        color: #050505 !important;
        border-color: #050505 !important;
        background: rgba(255,255,255,.92) !important;
        box-shadow: 0 8px 24px rgba(0,0,0,.14);
    }

    #menu-toggle span,
    .menu-toggle span,
    .mobile-menu-toggle span,
    .hamburger span,
    .nav-toggle span,
    #menu-toggle::before,
    #menu-toggle::after,
    .menu-toggle::before,
    .menu-toggle::after,
    .hamburger::before,
    .hamburger::after {
        background: #050505 !important;
        color: #050505 !important;
        border-color: #050505 !important;
    }

    #menu-toggle svg,
    .menu-toggle svg,
    .mobile-menu-toggle svg,
    .hamburger svg,
    .nav-toggle svg {
        color: #050505 !important;
        fill: #050505 !important;
        stroke: #050505 !important;
    }

    /* Less empty space between homepage sections */
    .home-page .section,
    .home-page section,
    body.home .section,
    body.home section,
    .home-section,
    .home-selection-section,
    .home-story-section,
    .home-brands-section {
        padding-top: 34px !important;
        padding-bottom: 34px !important;
    }

    .home-page .hero + section,
    body.home .hero + section,
    .home-hero + section {
        padding-top: 30px !important;
    }

    .home-page section + section,
    body.home section + section {
        margin-top: 0 !important;
    }

    /* Sell form: two compact columns on phones where possible */
    .sell-form-section .form-grid,
    .sell-form-card .form-grid,
    .sell-form-section .form-grid.two-cols,
    .sell-form-card .form-grid.two-cols {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 12px !important;
    }

    .sell-form-section .form-grid > label,
    .sell-form-card .form-grid > label {
        grid-column: auto !important;
    }

    .sell-form-section .photo-upload-box,
    .sell-form-card .photo-upload-box,
    .sell-form-section .full-span,
    .sell-form-card .full-span,
    .sell-form-section fieldset,
    .sell-form-card fieldset,
    .sell-form-section textarea,
    .sell-form-card textarea,
    .sell-form-section .sell-submit,
    .sell-form-card .sell-submit {
        grid-column: 1 / -1 !important;
    }

    .sell-form-card {
        padding: 15px !important;
    }

    .sell-form-card label span {
        font-size: .82rem;
        line-height: 1.2;
    }

    .sell-form-card input,
    .sell-form-card select {
        min-height: 44px;
        padding-inline: 10px;
    }

    /* Services: two cards next to each other on mobile */
    .services-grid,
    .service-grid,
    .services-cards,
    .service-cards,
    .services-layout {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 12px !important;
    }

    .service-card,
    .services-card,
    .service-item {
        padding: 14px !important;
        border-radius: 16px !important;
    }

    .service-card h2,
    .service-card h3,
    .services-card h2,
    .services-card h3,
    .service-item h2,
    .service-item h3 {
        font-size: clamp(1.15rem, 5vw, 1.55rem) !important;
        line-height: 1.08;
    }

    .service-card p,
    .services-card p,
    .service-item p {
        font-size: .86rem !important;
        line-height: 1.45 !important;
    }

    .service-card .button,
    .services-card .button,
    .service-item .button {
        width: 100%;
        padding: 10px 8px !important;
        font-size: .8rem !important;
        line-height: 1.2;
        white-space: normal;
    }
}

/* Extra-small phones: preserve two columns but reduce spacing */
@media (max-width: 390px) {
    .sell-form-section .form-grid,
    .sell-form-card .form-grid,
    .services-grid,
    .service-grid,
    .services-cards,
    .service-cards,
    .services-layout {
        gap: 8px !important;
    }

    .service-card,
    .services-card,
    .service-item {
        padding: 11px !important;
    }

    .service-card p,
    .services-card p,
    .service-item p {
        font-size: .78rem !important;
    }
}


/* =========================================================
   V21.12 — Functional mobile menu and compact mobile grids
   ========================================================= */

/* Desktop: hamburger hidden */
.mobile-menu-toggle {
    display: none;
}

/* Mobile/tablet navigation */
@media (max-width: 760px) {
    .site-header-inner,
    .header-inner,
    .nav-shell {
        position: relative;
        flex-wrap: nowrap !important;
        align-items: center;
        justify-content: space-between;
        min-height: 66px;
        padding: 9px 14px !important;
    }

    .mobile-menu-toggle {
        display: inline-flex !important;
        width: 40px;
        height: 40px;
        flex: 0 0 40px;
        padding: 9px;
        margin-left: auto;
        border: 1px solid #111 !important;
        border-radius: 8px;
        background: #fff !important;
        align-items: center;
        justify-content: center;
        flex-direction: column;
        gap: 4px;
        cursor: pointer;
        z-index: 1002;
        box-shadow: 0 4px 14px rgba(0,0,0,.12);
    }

    .mobile-menu-toggle span {
        display: block;
        width: 20px;
        height: 2px;
        min-height: 2px !important;
        background: #111 !important;
        border-radius: 99px;
        transition: transform .2s ease, opacity .2s ease;
    }

    .mobile-menu-toggle.is-open span:nth-child(1) {
        transform: translateY(6px) rotate(45deg);
    }

    .mobile-menu-toggle.is-open span:nth-child(2) {
        opacity: 0;
    }

    .mobile-menu-toggle.is-open span:nth-child(3) {
        transform: translateY(-6px) rotate(-45deg);
    }

    #primaryNavigation,
    .main-nav,
    .site-nav,
    .nav-links {
        display: none !important;
        position: absolute;
        top: calc(100% + 1px);
        left: 12px;
        right: 12px;
        width: auto !important;
        max-height: calc(100vh - 90px);
        overflow-y: auto;
        flex-direction: column !important;
        flex-wrap: nowrap !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        gap: 0 !important;
        padding: 8px !important;
        background: rgba(255,255,255,.98);
        border: 1px solid rgba(0,0,0,.12);
        border-radius: 12px;
        box-shadow: 0 18px 40px rgba(0,0,0,.20);
        z-index: 1001;
    }

    #primaryNavigation.is-open,
    .main-nav.is-open,
    .site-nav.is-open,
    .nav-links.is-open {
        display: flex !important;
    }

    #primaryNavigation a,
    .main-nav a,
    .site-nav a,
    .nav-links a {
        width: 100%;
        min-height: 44px;
        display: flex;
        align-items: center;
        padding: 11px 12px !important;
        color: #111 !important;
        border-bottom: 1px solid rgba(0,0,0,.08);
        white-space: normal !important;
    }

    #primaryNavigation a:last-child,
    .main-nav a:last-child,
    .site-nav a:last-child,
    .nav-links a:last-child {
        border-bottom: 0;
    }

    /* Homepage: remove excess vertical gaps */
    .home-page section,
    .home-page .section,
    .home-page-content section,
    .home-page-content .section {
        padding-top: 24px !important;
        padding-bottom: 24px !important;
        margin-top: 0 !important;
        margin-bottom: 0 !important;
    }

    .home-page .hero,
    .home-page .home-hero,
    .home-page-content .hero,
    .home-page-content .home-hero {
        margin-bottom: 0 !important;
    }

    .home-page .hero + *,
    .home-page .home-hero + *,
    .home-page-content .hero + *,
    .home-page-content .home-hero + * {
        margin-top: 0 !important;
        padding-top: 18px !important;
    }

    .home-story-grid,
    .story-grid,
    .home-page .split-section,
    .home-page-content .split-section {
        gap: 14px !important;
    }

    .home-story-copy,
    .story-copy,
    .home-page .section-copy,
    .home-page-content .section-copy {
        max-width: 100% !important;
        width: 100%;
        padding-inline: 4px;
    }

    .home-story-copy p,
    .story-copy p,
    .home-page .section-copy p,
    .home-page-content .section-copy p {
        max-width: 42rem !important;
        margin-inline: auto;
        line-height: 1.65;
        text-align: left;
    }

    /* Home and stock cars: two per row */
    .home-page .stock-grid,
    .home-page .car-grid,
    .home-page .selection-grid,
    .home-page-content .stock-grid,
    .home-page-content .car-grid,
    .home-page-content .selection-grid,
    .stock-page .stock-grid,
    .stock-page .car-grid,
    .stock-page-content .stock-grid,
    .stock-page-content .car-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 10px !important;
    }

    .home-page .car-card,
    .home-page .stock-card,
    .home-page .selection-card,
    .stock-page .car-card,
    .stock-page .stock-card {
        border-radius: 14px;
        overflow: hidden;
    }

    .home-page .car-card-content,
    .home-page .stock-card-content,
    .home-page .selection-card-content,
    .stock-page .car-card-content,
    .stock-page .stock-card-content {
        padding: 10px !important;
    }

    .home-page .car-card h3,
    .home-page .stock-card h3,
    .stock-page .car-card h3,
    .stock-page .stock-card h3 {
        font-size: 1rem !important;
        line-height: 1.2;
    }

    /* Stock filters: 4 next to each other, then next 4 */
    .stock-page .filter-grid,
    .stock-page .stock-filters,
    .stock-page-content .filter-grid,
    .stock-page-content .stock-filters {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        gap: 7px !important;
    }

    .stock-page .filter-grid label,
    .stock-page .stock-filters label,
    .stock-page-content .filter-grid label,
    .stock-page-content .stock-filters label {
        font-size: .7rem !important;
    }

    .stock-page .filter-grid input,
    .stock-page .filter-grid select,
    .stock-page .stock-filters input,
    .stock-page .stock-filters select,
    .stock-page-content .filter-grid input,
    .stock-page-content .filter-grid select,
    .stock-page-content .stock-filters input,
    .stock-page-content .stock-filters select {
        min-height: 38px;
        padding: 7px 6px !important;
        font-size: .76rem !important;
    }

    .stock-page .filter-actions,
    .stock-page-content .filter-actions {
        grid-column: 1 / -1;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 8px;
    }

    /* Wider text blocks on sales/about/contact */
    .sell-page .container,
    .sell-page-content .container,
    .about-page .container,
    .about-page-content .container,
    .contact-page .container,
    .contact-page-content .container {
        width: calc(100% - 18px) !important;
        max-width: none !important;
    }

    .sell-page p,
    .sell-page-content p,
    .about-page p,
    .about-page-content p,
    .contact-page p,
    .contact-page-content p {
        max-width: 48rem !important;
        line-height: 1.65;
    }

    /* Sell form: 3 columns, including equipment */
    .sell-page .form-grid,
    .sell-page-content .form-grid,
    .sell-form-card .form-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 8px !important;
    }

    .sell-page .form-grid label,
    .sell-page-content .form-grid label,
    .sell-form-card .form-grid label {
        font-size: .72rem;
    }

    .sell-page input,
    .sell-page select,
    .sell-page-content input,
    .sell-page-content select,
    .sell-form-card input,
    .sell-form-card select {
        min-height: 40px;
        padding: 7px 6px !important;
        font-size: .76rem !important;
    }

    .sell-page textarea,
    .sell-page-content textarea,
    .sell-form-card textarea,
    .sell-page fieldset,
    .sell-page-content fieldset,
    .sell-form-card fieldset,
    .sell-page .photo-upload-box,
    .sell-page-content .photo-upload-box,
    .sell-form-card .photo-upload-box,
    .sell-page .form-actions,
    .sell-page-content .form-actions,
    .sell-form-card .form-actions {
        grid-column: 1 / -1 !important;
    }

    .sell-page .equipment-options,
    .sell-page .option-buttons,
    .sell-page .feature-buttons,
    .sell-page-content .equipment-options,
    .sell-page-content .option-buttons,
    .sell-page-content .feature-buttons,
    .sell-form-card .equipment-options,
    .sell-form-card .option-buttons,
    .sell-form-card .feature-buttons {
        display: grid !important;
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 7px !important;
    }

    .sell-page .equipment-options label,
    .sell-page .option-buttons label,
    .sell-page .feature-buttons label,
    .sell-page-content .equipment-options label,
    .sell-page-content .option-buttons label,
    .sell-page-content .feature-buttons label {
        min-height: 40px;
        padding: 7px 5px !important;
        font-size: .7rem !important;
    }

    /* Services: two cards per row */
    .services-page .services-grid,
    .services-page .service-grid,
    .services-page-content .services-grid,
    .services-page-content .service-grid,
    .services-grid,
    .service-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 10px !important;
    }

    .services-page .service-card,
    .services-page-content .service-card,
    .service-card {
        min-width: 0;
        padding: 12px !important;
    }

    /* About and contact text alignment */
    .about-page .about-copy,
    .about-page-content .about-copy,
    .about-page .content-copy,
    .about-page-content .content-copy,
    .contact-page .contact-copy,
    .contact-page-content .contact-copy {
        width: 100% !important;
        max-width: 100% !important;
    }

    .about-page p,
    .about-page-content p,
    .contact-page p,
    .contact-page-content p {
        text-align: left;
    }
}

/* Keep the 3-column sales grid usable on the smallest phones */
@media (max-width: 390px) {
    .sell-page .form-grid,
    .sell-page-content .form-grid,
    .sell-form-card .form-grid,
    .sell-page .equipment-options,
    .sell-page-content .equipment-options,
    .sell-form-card .equipment-options {
        gap: 5px !important;
    }

    .sell-page input,
    .sell-page select,
    .sell-page-content input,
    .sell-page-content select,
    .sell-form-card input,
    .sell-form-card select {
        font-size: .70rem !important;
        padding-inline: 4px !important;
    }

    .stock-page .filter-grid,
    .stock-page .stock-filters,
    .stock-page-content .filter-grid,
    .stock-page-content .stock-filters {
        gap: 5px !important;
    }
}


/* =========================================================
   V21.13 exact mobile header + homepage repair
   ========================================================= */

.mobile-menu-toggle {
    display: none;
}

@media (max-width: 760px) {
    .page-shell {
        padding-top: 10px !important;
    }

    .site-header {
        position: relative !important;
        display: grid !important;
        grid-template-columns: 42px 1fr !important;
        align-items: center !important;
        gap: 10px !important;
        padding: 8px 10px !important;
        min-height: 60px !important;
        border-radius: 0 !important;
    }

    #menu-toggle.mobile-menu-toggle {
        display: inline-flex !important;
        grid-column: 1 !important;
        grid-row: 1 !important;
        position: relative !important;
        inset: auto !important;
        width: 38px !important;
        height: 38px !important;
        min-width: 38px !important;
        min-height: 38px !important;
        padding: 8px !important;
        margin: 0 !important;
        border: 1px solid #111 !important;
        border-radius: 8px !important;
        background: #fff !important;
        color: #111 !important;
        box-shadow: 0 4px 12px rgba(0,0,0,.12) !important;
        flex-direction: column !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 4px !important;
        font-size: 0 !important;
        z-index: 1003 !important;
    }

    #menu-toggle.mobile-menu-toggle span {
        display: block !important;
        width: 19px !important;
        height: 2px !important;
        min-height: 2px !important;
        background: #111 !important;
        border-radius: 20px !important;
        transition: transform .2s ease, opacity .2s ease !important;
    }

    #menu-toggle.is-open span:nth-child(1) { transform: translateY(6px) rotate(45deg); }
    #menu-toggle.is-open span:nth-child(2) { opacity: 0; }
    #menu-toggle.is-open span:nth-child(3) { transform: translateY(-6px) rotate(-45deg); }

    .site-header .brand-mark {
        grid-column: 2 !important;
        grid-row: 1 !important;
        justify-self: center !important;
        margin-right: 42px !important;
    }

    .site-header .brand-logo {
        max-height: 46px !important;
        width: auto !important;
    }

    .site-header #site-nav {
        display: none !important;
        position: absolute !important;
        top: calc(100% + 4px) !important;
        left: 8px !important;
        right: 8px !important;
        width: auto !important;
        padding: 7px !important;
        background: #fff !important;
        border: 1px solid rgba(0,0,0,.14) !important;
        border-radius: 12px !important;
        box-shadow: 0 16px 40px rgba(0,0,0,.22) !important;
        flex-direction: column !important;
        gap: 0 !important;
        z-index: 1002 !important;
    }

    .site-header #site-nav.is-open {
        display: flex !important;
    }

    .site-header #site-nav a {
        display: flex !important;
        width: 100% !important;
        min-height: 42px !important;
        padding: 10px 12px !important;
        align-items: center !important;
        color: #111 !important;
        background: transparent !important;
        border-bottom: 1px solid rgba(0,0,0,.08) !important;
        font-size: .94rem !important;
        white-space: normal !important;
    }

    .site-header #site-nav a:last-child {
        border-bottom: 0 !important;
    }

    .vrb17-hero {
        min-height: 58vh !important;
        margin-top: 0 !important;
        margin-bottom: 12px !important;
    }

    .vrb17-hero-content {
        min-height: 58vh !important;
        padding: 24px 16px !important;
    }

    .vrb17-hero-content h1 {
        font-size: clamp(2.25rem, 12vw, 3.45rem) !important;
        max-width: 100% !important;
    }

    .vrb17-story.section {
        grid-template-columns: 1fr !important;
        gap: 10px !important;
        margin-top: 0 !important;
        margin-bottom: 16px !important;
        padding: 8px 12px 18px !important;
    }

    .vrb17-story-image {
        width: 100% !important;
        min-height: 0 !important;
        height: auto !important;
        aspect-ratio: 16 / 10 !important;
        background-size: contain !important;
        background-repeat: no-repeat !important;
        background-position: center !important;
    }

    .vrb17-story-copy {
        width: 100% !important;
        max-width: 680px !important;
        margin-inline: auto !important;
        padding-inline: 4px !important;
    }

    .vrb17-story-copy h2 {
        margin: 6px 0 12px !important;
        font-size: clamp(2rem, 10vw, 3rem) !important;
    }

    .vrb17-story-copy p {
        width: 100% !important;
        max-width: 42rem !important;
        margin: 0 auto 18px !important;
        font-size: .98rem !important;
        line-height: 1.65 !important;
        text-align: center !important;
    }

    .home15-stock.section {
        padding-top: 18px !important;
        padding-bottom: 38px !important;
    }

    .home15-stock-head {
        margin-bottom: 14px !important;
    }

    .home15-stock-row {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 10px !important;
    }

    .home15-car-card {
        min-width: 0 !important;
        border-radius: 14px !important;
    }

    .home15-car-image {
        height: auto !important;
        aspect-ratio: 16 / 10 !important;
    }

    .home15-car-copy {
        padding: 10px !important;
    }

    .home15-car-copy h3 {
        font-size: 1rem !important;
        line-height: 1.15 !important;
    }

    .home15-car-copy p {
        min-height: 32px !important;
        font-size: .78rem !important;
    }

    .home15-car-meta {
        grid-template-columns: 1fr !important;
    }
}


/* =========================================================
   V21.14 — Mobile header order correction
   Logo left, hamburger right
   ========================================================= */

@media (max-width: 760px) {
    .site-header {
        grid-template-columns: 1fr 42px !important;
    }

    .site-header .brand-mark {
        grid-column: 1 !important;
        grid-row: 1 !important;
        justify-self: start !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    #menu-toggle.mobile-menu-toggle {
        grid-column: 2 !important;
        grid-row: 1 !important;
        justify-self: end !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }
}

/* =========================================================
   V21.16 — REAL TEMPLATE MOBILE FIX
   Exact selectors taken from stock/sell/services/about/contact templates
   ========================================================= */

@media (max-width: 760px) {
    /* OUR STOCK — 4 filters per row */
    .filter-form.stock-filter-grid {
        display: grid !important;
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        gap: 7px !important;
        align-items: end !important;
    }

    .filter-form.stock-filter-grid > label {
        min-width: 0 !important;
        width: 100% !important;
    }

    .filter-form.stock-filter-grid > label > span {
        display: block !important;
        margin-bottom: 4px !important;
        font-size: .66rem !important;
        line-height: 1.1 !important;
        white-space: normal !important;
    }

    .filter-form.stock-filter-grid input,
    .filter-form.stock-filter-grid select {
        width: 100% !important;
        min-width: 0 !important;
        height: 37px !important;
        min-height: 37px !important;
        padding: 5px 4px !important;
        font-size: .68rem !important;
        border-radius: 7px !important;
    }

    .filter-form.stock-filter-grid .filter-actions {
        grid-column: 1 / -1 !important;
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 8px !important;
        width: 100% !important;
    }

    /* OUR STOCK — 1 car per row on mobile */
    .card-grid.card-grid-3 {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 8px !important;
    }

    .card-grid.card-grid-3 > .vehicle-card {
        min-width: 0 !important;
        width: 100% !important;
        border-radius: 11px !important;
        overflow: hidden !important;
    }

    .card-grid.card-grid-3 .vehicle-visual {
        min-height: 0 !important;
        height: auto !important;
        aspect-ratio: 16 / 10 !important;
    }

    .card-grid.card-grid-3 .vehicle-copy {
        padding: 8px 6px !important;
    }

    .card-grid.card-grid-3 .vehicle-topline {
        gap: 3px !important;
        font-size: .56rem !important;
        line-height: 1.1 !important;
    }

    .card-grid.card-grid-3 .vehicle-copy h3 {
        margin: 5px 0 3px !important;
        font-size: .82rem !important;
        line-height: 1.12 !important;
        overflow-wrap: anywhere !important;
    }

    .card-grid.card-grid-3 .vehicle-copy .lead {
        min-height: 0 !important;
        margin-bottom: 6px !important;
        font-size: .62rem !important;
        line-height: 1.2 !important;
    }

    .card-grid.card-grid-3 .vehicle-meta {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 2px !important;
        font-size: .56rem !important;
    }

    .card-grid.card-grid-3 .price-standalone {
        margin: 7px 0 5px !important;
        font-size: .76rem !important;
    }

    .card-grid.card-grid-3 .text-link {
        font-size: .62rem !important;
    }

    /* SELL — wider text and form */
    .sell-info-section,
    .sell-form-section {
        width: calc(100% - 12px) !important;
        max-width: none !important;
        margin-left: auto !important;
        margin-right: auto !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .sell-info-card,
    .form-card.sell-form-card {
        width: 100% !important;
        max-width: none !important;
        padding-left: 12px !important;
        padding-right: 12px !important;
    }

    .sell-info-card h2 {
        max-width: 100% !important;
        font-size: clamp(1.55rem, 7.5vw, 2.15rem) !important;
        line-height: 1.12 !important;
    }

    .sell-info-card p {
        width: 100% !important;
        max-width: 48rem !important;
        margin-left: auto !important;
        margin-right: auto !important;
        line-height: 1.7 !important;
        text-align: left !important;
    }

    .form-card.sell-form-card .lux-form {
        width: 100% !important;
        max-width: none !important;
    }

    /* SELL EQUIPMENT — exact options-grid, 4 per row */
    .form-card.sell-form-card fieldset.options-grid {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 6px !important;
        width: 100% !important;
        max-width: none !important;
        padding: 12px 8px 8px !important;
    }

    .form-card.sell-form-card fieldset.options-grid > legend {
        grid-column: 1 / -1 !important;
    }

    .form-card.sell-form-card .options-grid .checkbox-pill {
        min-width: 0 !important;
        width: 100% !important;
        margin: 0 !important;
    }

    .form-card.sell-form-card .options-grid .checkbox-pill span {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        width: 100% !important;
        min-height: 58px !important;
        padding: 5px 3px !important;
        font-size: .82rem !important;
        line-height: 1.25 !important;
        text-align: center !important;
        white-space: normal !important;
        overflow-wrap: anywhere !important;
        border-radius: 9px !important;
    }

    /* SERVICES — exact class, 2 per row */
    .services-grid-four {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 10px !important;
    }

    .services-grid-four > .service-card {
        min-width: 0 !important;
        width: 100% !important;
        padding: 13px 10px !important;
    }

    .services-grid-four .service-card h2 {
        font-size: 1.05rem !important;
        line-height: 1.15 !important;
    }

    .services-grid-four .service-card p {
        font-size: .74rem !important;
        line-height: 1.45 !important;
    }

    .services-grid-four .service-button {
        width: 100% !important;
        min-height: 38px !important;
        padding: 7px 5px !important;
        font-size: .67rem !important;
        white-space: normal !important;
    }

    /* ABOUT — exact card, wider and calmer text */
    .about-single-section {
        width: calc(100% - 12px) !important;
        max-width: none !important;
        margin-left: auto !important;
        margin-right: auto !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .about-single-card {
        width: 100% !important;
        max-width: none !important;
        padding: 22px 14px !important;
    }

    .about-single-card h1 {
        width: 100% !important;
        max-width: 100% !important;
        font-size: clamp(2rem, 9vw, 3rem) !important;
        line-height: 1.08 !important;
    }

    .about-story-text {
        width: 100% !important;
        max-width: 48rem !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    .about-story-text p {
        width: 100% !important;
        max-width: none !important;
        line-height: 1.72 !important;
        text-align: left !important;
    }

    /* CONTACT — exact card, use more screen width */
    .contact-form-section {
        width: calc(100% - 12px) !important;
        max-width: none !important;
        margin-left: auto !important;
        margin-right: auto !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
    }

    .contact-form-card {
        width: 100% !important;
        max-width: none !important;
        padding: 20px 12px !important;
    }

    .contact-form-card form {
        width: 100% !important;
        max-width: none !important;
    }

    .contact-form-card input,
    .contact-form-card select,
    .contact-form-card textarea {
        width: 100% !important;
        max-width: none !important;
    }

    .contact-form-card textarea {
        min-height: 150px !important;
    }
}

@media (max-width: 390px) {
    .card-grid.card-grid-3 {
        gap: 5px !important;
    }

    .card-grid.card-grid-3 .vehicle-copy {
        padding: 6px 4px !important;
    }

    .card-grid.card-grid-3 .vehicle-copy h3 {
        font-size: .73rem !important;
    }

    .form-card.sell-form-card fieldset.options-grid {
        gap: 4px !important;
        padding-left: 5px !important;
        padding-right: 5px !important;
    }

    .form-card.sell-form-card .options-grid .checkbox-pill span {
        font-size: .76rem !important;
        padding-left: 2px !important;
        padding-right: 2px !important;
    }
}


/* v21.18 mobile fixes */
@media (max-width:768px){
.hero .eyebrow,
.home15-hero .eyebrow,
.home15-hero-kicker,
.hero-content .eyebrow,
.hero-label{
 color:#fff3bf!important;
 text-shadow:0 0 4px #000,0 2px 10px rgba(0,0,0,.95),0 0 18px rgba(0,0,0,.9)!important;
}
.options-grid,
.sell-equipment-grid{
 display:grid!important;
 grid-template-columns:1fr 1fr!important;
 gap:10px!important;
}
.options-grid .checkbox-pill,
.sell-equipment-grid .checkbox-pill{
 width:100%!important;
}
.options-grid .checkbox-pill span,
.sell-equipment-grid .checkbox-pill span{
 display:flex!important;
 align-items:center;
 justify-content:center;
 white-space:normal!important;
 word-break:keep-all!important;
 overflow-wrap:anywhere!important;
 overflow:visible!important;
 text-overflow:unset!important;
 min-height:64px!important;
 height:auto!important;
 font-size:.82rem!important;
 line-height:1.2!important;
 padding:8px!important;
}
}


/* =========================================================
   V21.19 — EXACTE GSM FIX (juiste selectors + hoogste prioriteit)
   ========================================================= */
@media screen and (max-width: 760px) {
    /* Werkelijke homepageklasse */
    body .vrb17-hero .vrb17-hero-content > .eyebrow {
        color: #fff1b8 !important;
        background: rgba(0, 0, 0, .32) !important;
        display: inline-block !important;
        width: fit-content !important;
        padding: 6px 10px !important;
        border-radius: 6px !important;
        text-shadow:
            0 2px 3px rgba(0, 0, 0, 1),
            0 0 12px rgba(0, 0, 0, .95) !important;
    }

    /* Werkelijke verkooppagina-selector */
    body .form-card.sell-form-card fieldset.options-grid {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 9px !important;
        width: 100% !important;
        padding: 14px 9px 10px !important;
    }

    body .form-card.sell-form-card fieldset.options-grid > .checkbox-pill {
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        margin: 0 !important;
    }

    body .form-card.sell-form-card fieldset.options-grid > .checkbox-pill > span {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        box-sizing: border-box !important;
        width: 100% !important;
        min-width: 0 !important;
        min-height: 60px !important;
        height: auto !important;
        padding: 10px 7px !important;
        font-size: .82rem !important;
        line-height: 1.25 !important;
        text-align: center !important;
        white-space: normal !important;
        overflow: visible !important;
        text-overflow: clip !important;
        overflow-wrap: break-word !important;
        word-break: normal !important;
        border-radius: 10px !important;
    }
}

@media screen and (max-width: 390px) {
    body .form-card.sell-form-card fieldset.options-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 7px !important;
    }

    body .form-card.sell-form-card fieldset.options-grid > .checkbox-pill > span {
        min-height: 62px !important;
        padding: 9px 5px !important;
        font-size: .76rem !important;
    }
}


/* =========================================================
   V21.20 — Herohoofdtitel leesbaar + uitrusting onder elkaar
   ========================================================= */

/* Uitrustingsopties op alle schermen volledig onder elkaar */
body .form-card.sell-form-card fieldset.options-grid,
body fieldset.options-grid {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    gap: 10px !important;
    width: 100% !important;
}

body .form-card.sell-form-card fieldset.options-grid > .checkbox-pill,
body fieldset.options-grid > .checkbox-pill {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
}

body .form-card.sell-form-card fieldset.options-grid > .checkbox-pill > span,
body fieldset.options-grid > .checkbox-pill > span {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    box-sizing: border-box !important;
    width: 100% !important;
    min-height: 50px !important;
    height: auto !important;
    padding: 12px 16px !important;
    font-size: .9rem !important;
    line-height: 1.35 !important;
    text-align: left !important;
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
    overflow-wrap: break-word !important;
    word-break: normal !important;
    border-radius: 12px !important;
}

@media screen and (max-width: 760px) {
    /* De grote titel “Waar luxe begint” krijgt dezelfde leesbare afwerking */
    body .vrb17-hero .vrb17-hero-content > h1 {
        display: block !important;
        width: fit-content !important;
        max-width: 100% !important;
        padding: 10px 14px 12px !important;
        margin-top: 10px !important;
        color: #fff1b8 !important;
        background: rgba(0, 0, 0, .32) !important;
        border-radius: 8px !important;
        text-shadow:
            0 2px 3px rgba(0, 0, 0, 1),
            0 0 12px rgba(0, 0, 0, .95) !important;
    }

    body .form-card.sell-form-card fieldset.options-grid,
    body fieldset.options-grid {
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 8px !important;
    }

    body .form-card.sell-form-card fieldset.options-grid > .checkbox-pill > span,
    body fieldset.options-grid > .checkbox-pill > span {
        min-height: 52px !important;
        padding: 12px 14px !important;
        font-size: .84rem !important;
    }
}


/* v21.21 dynamisch wagenveld op contactpagina */
.contact-dynamic-field {
    display: grid;
    gap: 8px;
    width: 100%;
}
.contact-dynamic-field[hidden] {
    display: none !important;
}
.contact-dynamic-field label {
    font-size: .88rem;
    font-weight: 700;
}
.contact-dynamic-field small {
    color: var(--muted);
    line-height: 1.45;
}


/* =========================================================
   V21.22 EXACT — Onze stock op gsm: één volledige kaart per rij
   ========================================================= */
@media screen and (max-width: 760px) {
    html body main section.section > div.card-grid.card-grid-3 {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 24px !important;
        width: 100% !important;
    }

    html body main section.section > div.card-grid.card-grid-3 > article.lux-card.vehicle-card.showroom-card {
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        margin: 0 !important;
        border-radius: 20px !important;
        overflow: hidden !important;
    }

    html body main section.section > div.card-grid.card-grid-3 .vehicle-visual {
        width: 100% !important;
        min-height: 0 !important;
        height: auto !important;
        aspect-ratio: 16 / 10 !important;
        background-size: cover !important;
        background-position: center !important;
    }

    html body main section.section > div.card-grid.card-grid-3 .vehicle-copy {
        padding: 18px 16px 20px !important;
    }

    html body main section.section > div.card-grid.card-grid-3 .vehicle-topline {
        gap: 10px !important;
        font-size: .78rem !important;
        line-height: 1.25 !important;
    }

    html body main section.section > div.card-grid.card-grid-3 .vehicle-copy h3 {
        margin: 10px 0 6px !important;
        font-size: 1.45rem !important;
        line-height: 1.12 !important;
        overflow-wrap: normal !important;
    }

    html body main section.section > div.card-grid.card-grid-3 .vehicle-copy .lead {
        min-height: 0 !important;
        margin: 0 0 14px !important;
        font-size: .92rem !important;
        line-height: 1.45 !important;
    }

    html body main section.section > div.card-grid.card-grid-3 .vehicle-meta {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 8px !important;
        font-size: .78rem !important;
    }

    html body main section.section > div.card-grid.card-grid-3 .vehicle-meta span {
        padding: 8px 9px !important;
        text-align: center !important;
    }

    html body main section.section > div.card-grid.card-grid-3 .price-standalone {
        margin: 16px 0 10px !important;
        font-size: 1.35rem !important;
        line-height: 1.2 !important;
    }

    html body main section.section > div.card-grid.card-grid-3 .text-link {
        display: flex !important;
        width: 100% !important;
        min-height: 48px !important;
        margin-top: 8px !important;
        padding: 0 16px !important;
        align-items: center !important;
        justify-content: center !important;
        font-size: .9rem !important;
        line-height: 1 !important;
    }
}


/* =========================================================
   V21.23 — Homepage hero: dezelfde badge-stijl op pc en gsm
   ========================================================= */
body .vrb17-hero .vrb17-hero-content > .eyebrow {
    display: inline-block !important;
    width: fit-content !important;
    max-width: 100% !important;
    padding: 6px 10px !important;
    color: #fff1b8 !important;
    background: rgba(0, 0, 0, .32) !important;
    border-radius: 6px !important;
    text-shadow:
        0 2px 3px rgba(0, 0, 0, 1),
        0 0 12px rgba(0, 0, 0, .95) !important;
}

body .vrb17-hero .vrb17-hero-content > h1 {
    display: block !important;
    width: fit-content !important;
    max-width: 100% !important;
    padding: 10px 14px 12px !important;
    margin-top: 10px !important;
    color: #fff1b8 !important;
    background: rgba(0, 0, 0, .32) !important;
    border-radius: 8px !important;
    text-shadow:
        0 2px 3px rgba(0, 0, 0, 1),
        0 0 12px rgba(0, 0, 0, .95) !important;
}

/* Melding wanneer de Render-adminvariabelen nog ontbreken */
.admin-env-warning {
    margin: 0 0 18px;
    padding: 14px 16px;
    border: 1px solid rgba(155, 92, 0, .45);
    border-radius: 12px;
    background: rgba(255, 211, 128, .18);
    color: #17120a;
    line-height: 1.45;
}


/* =========================================================
   V21.24 — Algemene voorwaarden + mobiele titel
   ========================================================= */

.sell-terms-check {
    display: flex !important;
    align-items: flex-start !important;
    gap: 10px !important;
    width: 100% !important;
    margin: 18px 0 6px !important;
}

.sell-terms-check input {
    flex: 0 0 auto !important;
    width: auto !important;
    margin-top: 4px !important;
}

.sell-terms-check span {
    line-height: 1.5 !important;
}

.sell-terms-check a {
    font-weight: 700 !important;
    text-decoration: underline !important;
}

@media screen and (max-width: 760px) {
    body .legal-page h1,
    body .legal-hero h1,
    body .legal-card h1,
    body .privacy-page h1,
    body .page-banner h1 {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: auto !important;
        margin-right: auto !important;
        padding-left: 2px !important;
        padding-right: 2px !important;
        font-size: clamp(1.55rem, 7.5vw, 2.35rem) !important;
        line-height: 1.08 !important;
        letter-spacing: -.02em !important;
        overflow-wrap: anywhere !important;
        word-break: normal !important;
        text-align: center !important;
    }

    body .legal-page,
    body .legal-card,
    body .privacy-page,
    body .page-banner {
        max-width: 100% !important;
        overflow: hidden !important;
    }

    .sell-terms-check {
        padding: 10px 2px !important;
        font-size: .88rem !important;
    }
}


/* =========================================================
   V21.25 — Algemene voorwaarden titel centreren op pc
   ========================================================= */

@media screen and (min-width: 761px) {
    body .legal-page h1,
    body .legal-hero h1,
    body .legal-card h1,
    body .privacy-page h1,
    body .page-banner h1 {
        width: 100% !important;
        max-width: 100% !important;
        margin-left: auto !important;
        margin-right: auto !important;
        text-align: center !important;
    }

    body .legal-page .eyebrow,
    body .legal-hero .eyebrow,
    body .legal-card .eyebrow,
    body .privacy-page .eyebrow,
    body .page-banner .eyebrow {
        display: block !important;
        width: 100% !important;
        text-align: center !important;
    }
}


/* =========================================================
   V21.26 — Stockfoto's zoals op de homepage
   ========================================================= */

.vehicle-card .stock-vehicle-image {
    display: block !important;
    position: relative !important;
    width: 100% !important;
    height: 250px !important;
    min-height: 250px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-bottom: 1.35px solid rgba(0, 0, 0, .62) !important;
    border-radius: 0 !important;
    background-color: #eee9df !important;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    overflow: hidden !important;
    text-decoration: none !important;
}

/* Verwijder de oude donkere stock-overlay volledig. */
.vehicle-card .stock-vehicle-image::after,
.vehicle-card .stock-vehicle-image.dark-visual::after {
    display: none !important;
    content: none !important;
}

/* Label blijft subtiel boven de heldere foto staan. */
.vehicle-card .stock-vehicle-image .corner-pill {
    position: absolute !important;
    top: 14px !important;
    left: 14px !important;
    z-index: 2 !important;
    border: 1px solid rgba(0, 0, 0, .65) !important;
    background: rgba(255, 255, 255, .90) !important;
    color: #111 !important;
    backdrop-filter: blur(8px);
}

/* Kleine zoom bij hover, zoals een moderne premium stockkaart. */
@media (hover: hover) and (pointer: fine) {
    .vehicle-card .stock-vehicle-image {
        transition: background-size .35s ease, filter .35s ease !important;
    }

    .vehicle-card:hover .stock-vehicle-image {
        background-size: 105% !important;
        filter: brightness(1.03) !important;
    }
}

@media screen and (max-width: 760px) {
    .vehicle-card .stock-vehicle-image {
        height: auto !important;
        min-height: 0 !important;
        aspect-ratio: 16 / 10 !important;
        background-size: cover !important;
        background-position: center !important;
    }
}


/* =========================================================
   V21.27 — Volledige redesign van de stockkaart
   ========================================================= */

.card-grid.card-grid-3 {
    align-items: stretch !important;
}

.card-grid.card-grid-3 > .vehicle-card {
    display: flex !important;
    flex-direction: column !important;
    min-height: 100% !important;
    border-radius: 20px !important;
    background: #fff !important;
    box-shadow: 0 16px 42px rgba(0, 0, 0, .10) !important;
}

.vehicle-card .stock-vehicle-image {
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: 16 / 10 !important;
    border-bottom: 1px solid rgba(0, 0, 0, .12) !important;
}

.stock-card-copy {
    display: flex !important;
    flex: 1 1 auto !important;
    flex-direction: column !important;
    gap: 0 !important;
    padding: 20px 20px 18px !important;
}

.stock-card-heading {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 12px !important;
    margin: 0 !important;
}

.stock-card-brand {
    display: block !important;
    margin: 0 0 3px !important;
    color: #8d6b21 !important;
    font-size: .76rem !important;
    font-weight: 800 !important;
    letter-spacing: .14em !important;
    line-height: 1.1 !important;
    text-transform: uppercase !important;
}

.stock-card-heading h3 {
    margin: 0 !important;
    color: #080808 !important;
    font-family: "Cormorant Garamond", serif !important;
    font-size: clamp(1.55rem, 2.2vw, 2.1rem) !important;
    line-height: 1.02 !important;
    letter-spacing: -.02em !important;
}

.stock-photo-count {
    flex: 0 0 auto !important;
    padding: 6px 8px !important;
    border: 1px solid rgba(0, 0, 0, .16) !important;
    border-radius: 999px !important;
    background: #f5f2eb !important;
    color: #34312c !important;
    font-size: .68rem !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
}

.stock-card-subtitle {
    min-height: 0 !important;
    margin: 8px 0 14px !important;
    color: #64615b !important;
    font-size: .9rem !important;
    line-height: 1.45 !important;
}

.stock-card-specs {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
    margin: 0 0 16px !important;
}

.stock-card-specs > span {
    display: grid !important;
    gap: 3px !important;
    min-width: 0 !important;
    padding: 10px 11px !important;
    border: 1px solid rgba(0, 0, 0, .10) !important;
    border-radius: 10px !important;
    background: #f8f6f1 !important;
}

.stock-card-specs small {
    color: #817c73 !important;
    font-size: .62rem !important;
    font-weight: 700 !important;
    letter-spacing: .05em !important;
    line-height: 1.1 !important;
    text-transform: uppercase !important;
}

.stock-card-specs strong {
    overflow: hidden !important;
    color: #171717 !important;
    font-size: .82rem !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

.stock-card-footer {
    display: grid !important;
    grid-template-columns: 1fr auto !important;
    align-items: end !important;
    gap: 14px !important;
    margin-top: auto !important;
    padding-top: 15px !important;
    border-top: 1px solid rgba(0, 0, 0, .10) !important;
}

.stock-card-price {
    display: grid !important;
    gap: 2px !important;
}

.stock-card-price small {
    color: #777268 !important;
    font-size: .65rem !important;
    font-weight: 700 !important;
    letter-spacing: .06em !important;
    text-transform: uppercase !important;
}

.stock-card-price strong {
    color: #080808 !important;
    font-size: 1.35rem !important;
    font-weight: 900 !important;
    line-height: 1.05 !important;
}

.vehicle-card .stock-card-link {
    width: auto !important;
    min-width: 132px !important;
    min-height: 42px !important;
    margin: 0 !important;
    padding: 0 15px !important;
    border: 1px solid #111 !important;
    border-radius: 9px !important;
    background: #111 !important;
    color: #fff !important;
    font-size: .76rem !important;
    font-weight: 800 !important;
    text-decoration: none !important;
}

@media (max-width: 980px) and (min-width: 761px) {
    .stock-card-footer {
        grid-template-columns: 1fr !important;
        align-items: stretch !important;
    }

    .vehicle-card .stock-card-link {
        width: 100% !important;
    }
}

@media screen and (max-width: 760px) {
    .card-grid.card-grid-3 > .vehicle-card {
        border-radius: 18px !important;
    }

    .stock-card-copy {
        padding: 17px 15px 16px !important;
    }

    .stock-card-heading {
        gap: 8px !important;
    }

    .stock-card-heading h3 {
        font-size: 1.7rem !important;
    }

    .stock-card-subtitle {
        margin: 7px 0 12px !important;
        font-size: .88rem !important;
    }

    .stock-card-specs {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 7px !important;
        margin-bottom: 14px !important;
    }

    .stock-card-specs > span {
        padding: 9px 8px !important;
    }

    .stock-card-specs strong {
        font-size: .78rem !important;
    }

    .stock-card-footer {
        grid-template-columns: 1fr !important;
        align-items: stretch !important;
        gap: 12px !important;
        padding-top: 13px !important;
    }

    .stock-card-price strong {
        font-size: 1.45rem !important;
    }

    .vehicle-card .stock-card-link {
        width: 100% !important;
        min-height: 46px !important;
        font-size: .84rem !important;
    }
}


/* =========================================================
   V21.28 — Gouden Bekijk wagen-knop + premium homekaarten
   ========================================================= */

/* Stockknop goud */
.vehicle-card .stock-card-link,
.gold-view-button {
    border: 1px solid #b88d2e !important;
    background: linear-gradient(135deg, #c9a24c 0%, #f1d894 48%, #b88a2d 100%) !important;
    color: #111 !important;
    box-shadow:
        0 8px 20px rgba(184, 141, 46, .22),
        inset 0 1px 0 rgba(255, 255, 255, .5) !important;
}

.vehicle-card .stock-card-link:hover,
.gold-view-button:hover {
    filter: brightness(1.05) !important;
    transform: translateY(-1px) !important;
}

/* Homepage kaarten in dezelfde premium stijl */
.home15-stock-row {
    align-items: stretch !important;
}

.home-premium-card {
    display: flex !important;
    flex-direction: column !important;
    min-height: 100% !important;
    overflow: hidden !important;
    border: 1.45px solid rgba(0, 0, 0, .68) !important;
    border-radius: 20px !important;
    background: #fff !important;
    box-shadow: 0 16px 42px rgba(0, 0, 0, .10) !important;
}

.home-premium-image {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: 16 / 10 !important;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    border-bottom: 1px solid rgba(0, 0, 0, .12) !important;
}

.home-premium-copy {
    display: flex !important;
    flex: 1 1 auto !important;
    flex-direction: column !important;
    padding: 20px 20px 18px !important;
}

.home-premium-heading {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 12px !important;
}

.home-premium-brand {
    display: block !important;
    margin-bottom: 3px !important;
    color: #8d6b21 !important;
    font-size: .76rem !important;
    font-weight: 800 !important;
    letter-spacing: .14em !important;
    line-height: 1.1 !important;
    text-transform: uppercase !important;
}

.home-premium-heading h3 {
    margin: 0 !important;
    color: #080808 !important;
    font-family: "Cormorant Garamond", serif !important;
    font-size: clamp(1.55rem, 2.2vw, 2.1rem) !important;
    line-height: 1.02 !important;
    letter-spacing: -.02em !important;
}

.home-premium-year {
    flex: 0 0 auto !important;
    padding: 6px 8px !important;
    border: 1px solid rgba(0, 0, 0, .16) !important;
    border-radius: 999px !important;
    background: #f5f2eb !important;
    color: #34312c !important;
    font-size: .68rem !important;
    font-weight: 700 !important;
    line-height: 1 !important;
}

.home-premium-subtitle {
    margin: 8px 0 14px !important;
    color: #64615b !important;
    font-size: .9rem !important;
    line-height: 1.45 !important;
}

.home-premium-specs {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 8px !important;
    margin-bottom: 16px !important;
}

.home-premium-specs > span {
    display: grid !important;
    gap: 3px !important;
    min-width: 0 !important;
    padding: 10px 11px !important;
    border: 1px solid rgba(0, 0, 0, .10) !important;
    border-radius: 10px !important;
    background: #f8f6f1 !important;
}

.home-premium-specs small {
    color: #817c73 !important;
    font-size: .62rem !important;
    font-weight: 700 !important;
    letter-spacing: .05em !important;
    line-height: 1.1 !important;
    text-transform: uppercase !important;
}

.home-premium-specs strong {
    overflow: hidden !important;
    color: #171717 !important;
    font-size: .82rem !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

.home-premium-footer {
    display: grid !important;
    grid-template-columns: 1fr auto !important;
    align-items: end !important;
    gap: 14px !important;
    margin-top: auto !important;
    padding-top: 15px !important;
    border-top: 1px solid rgba(0, 0, 0, .10) !important;
}

.home-premium-price {
    display: grid !important;
    gap: 2px !important;
}

.home-premium-price small {
    color: #777268 !important;
    font-size: .65rem !important;
    font-weight: 700 !important;
    letter-spacing: .06em !important;
    text-transform: uppercase !important;
}

.home-premium-price strong {
    color: #080808 !important;
    font-size: 1.35rem !important;
    font-weight: 900 !important;
    line-height: 1.05 !important;
}

.home-premium-footer .gold-view-button {
    min-width: 132px !important;
    min-height: 42px !important;
    margin: 0 !important;
    padding: 0 15px !important;
    border-radius: 9px !important;
    font-size: .76rem !important;
    font-weight: 800 !important;
}

@media screen and (max-width: 760px) {
    .home-premium-card {
        border-radius: 18px !important;
    }

    .home-premium-copy {
        padding: 17px 15px 16px !important;
    }

    .home-premium-heading h3 {
        font-size: 1.7rem !important;
    }

    .home-premium-specs {
        gap: 7px !important;
        margin-bottom: 14px !important;
    }

    .home-premium-specs > span {
        padding: 9px 8px !important;
    }

    .home-premium-specs strong {
        font-size: .78rem !important;
    }

    .home-premium-footer {
        grid-template-columns: 1fr !important;
        align-items: stretch !important;
        gap: 12px !important;
        padding-top: 13px !important;
    }

    .home-premium-price strong {
        font-size: 1.45rem !important;
    }

    .home-premium-footer .gold-view-button {
        width: 100% !important;
        min-height: 46px !important;
        font-size: .84rem !important;
    }
}
\n\n/* =========================================================\n   V21.29 — Status is label, sold price hidden\n   ========================================================= */\n\n.stock-vehicle-image,\n.home-premium-image {\n    position: relative !important;\n}\n\n/* Uses the same visual language as the detail-page label. */\n.public-status-label {\n    position: absolute !important;\n    top: 14px !important;\n    left: 14px !important;\n    z-index: 5 !important;\n    display: inline-flex !important;\n    align-items: center !important;\n    justify-content: center !important;\n    width: auto !important;\n    max-width: calc(100% - 28px) !important;\n    padding: 9px 13px !important;\n    border: 1.2px solid rgba(0,0,0,.62) !important;\n    border-radius: 999px !important;\n    background: linear-gradient(90deg, #d6b56e, #f0dba5) !important;\n    color: #050505 !important;\n    font-size: .72rem !important;\n    font-weight: 900 !important;\n    letter-spacing: .08em !important;\n    line-height: 1 !important;\n    text-transform: uppercase !important;\n    box-shadow: 0 8px 22px rgba(0,0,0,.16) !important;\n}\n\n.sold-price-hidden strong,\n.sold-detail-card strong {\n    color: #8b1d1d !important;\n    text-transform: uppercase !important;\n    letter-spacing: .06em !important;\n}\n\n@media screen and (max-width: 760px) {\n    .public-status-label {\n        top: 10px !important;\n        left: 10px !important;\n        max-width: calc(100% - 20px) !important;\n        padding: 8px 11px !important;\n        font-size: .66rem !important;\n    }\n}\n

/* =========================================================
   V21.30 — Home label linksboven op de foto
   ========================================================= */

.home-premium-image,
.home15-car-image {
    position: relative !important;
}

.home-image-status-label {
    position: absolute !important;
    top: 14px !important;
    left: 14px !important;
    z-index: 5 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 34px !important;
    padding: 7px 12px !important;
    border: 1px solid #b88d2e !important;
    border-radius: 999px !important;
    background: linear-gradient(135deg, #c9a24c 0%, #f1d894 48%, #b88a2d 100%) !important;
    color: #111 !important;
    box-shadow:
        0 8px 20px rgba(0, 0, 0, .18),
        inset 0 1px 0 rgba(255, 255, 255, .55) !important;
    font-size: .72rem !important;
    font-weight: 900 !important;
    letter-spacing: .04em !important;
    line-height: 1 !important;
    text-transform: uppercase !important;
    pointer-events: none !important;
}

@media screen and (max-width: 760px) {
    .home-image-status-label {
        top: 10px !important;
        left: 10px !important;
        min-height: 30px !important;
        padding: 6px 10px !important;
        font-size: .66rem !important;
    }
}


/* =========================================================
   V21.32 — Herstelde en overzichtelijke admin + favicon
   ========================================================= */

.admin-dark-mode {
    background: #0c0e12 !important;
}

.admin-dark-mode .page-shell {
    width: 100% !important;
    max-width: none !important;
    padding: 0 !important;
}

.admin-dark-mode > .page-shell > .site-header {
    display: none !important;
}

.admin-workspace {
    display: grid;
    grid-template-columns: 255px minmax(0, 1fr);
    min-height: 100vh;
    background: #12151b;
}

.admin-sidebar {
    position: sticky;
    top: 0;
    height: 100vh;
    display: flex;
    flex-direction: column;
    padding: 25px 17px 18px;
    border-right: 1px solid rgba(255, 255, 255, .08);
    background: #090b0e;
    color: #fff;
    overflow-y: auto;
}

.admin-sidebar-brand {
    display: grid;
    gap: 5px;
    padding: 0 10px 23px;
    border-bottom: 1px solid rgba(255, 255, 255, .09);
}

.admin-sidebar-brand span {
    color: #d8b966;
    font-size: .7rem;
    font-weight: 900;
    letter-spacing: .18em;
}

.admin-sidebar-brand strong {
    font-family: "Cormorant Garamond", serif;
    font-size: 1.65rem;
    line-height: 1;
}

.admin-sidebar-nav {
    display: grid;
    gap: 6px;
    margin-top: 22px;
}

.admin-sidebar-nav a,
.admin-sidebar-footer a {
    display: flex;
    align-items: center;
    min-height: 43px;
    padding: 10px 12px;
    border: 1px solid transparent;
    border-radius: 10px;
    color: rgba(255,255,255,.7);
    font-size: .86rem;
    font-weight: 700;
    text-decoration: none;
}

.admin-sidebar-nav a:hover,
.admin-sidebar-nav a.active {
    border-color: rgba(216,185,102,.34);
    background: rgba(216,185,102,.12);
    color: #f2db98;
}

.admin-sidebar-footer {
    display: grid;
    gap: 5px;
    margin-top: auto;
    padding-top: 20px;
    border-top: 1px solid rgba(255,255,255,.09);
}

.admin-main {
    min-width: 0;
    padding: 34px clamp(18px, 4vw, 56px) 70px;
    background:
        radial-gradient(circle at top right, rgba(208,168,73,.08), transparent 32%),
        #12151b;
}

.admin-main .page-banner,
.admin-page-head {
    width: 100% !important;
    max-width: none !important;
    margin: 0 0 27px !important;
    padding: 0 0 25px !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(255,255,255,.1) !important;
    border-radius: 0 !important;
    background: transparent !important;
    text-align: left !important;
}

.admin-main .page-banner h1,
.admin-page-head h1 {
    max-width: 1000px !important;
    margin: 7px 0 10px !important;
    color: #fff !important;
    font-size: clamp(2.2rem, 4vw, 4.2rem) !important;
    line-height: .98 !important;
    text-align: left !important;
}

.admin-main .page-banner p,
.admin-page-head p {
    max-width: 780px !important;
    margin: 0 !important;
    color: rgba(255,255,255,.57) !important;
    line-height: 1.65 !important;
    text-align: left !important;
}

.admin-main .section {
    width: 100% !important;
    max-width: none !important;
    padding: 18px 0 !important;
}

.admin-layout-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.65fr) minmax(300px, .75fr);
    gap: 22px;
    align-items: start;
}

.admin-panel,
.admin-main .form-card,
.admin-main .filter-shell,
.admin-main .admin-table-wrap,
.admin-main .metric-card {
    border: 1px solid rgba(255,255,255,.1) !important;
    border-radius: 18px !important;
    background: #191d24 !important;
    color: #fff !important;
    box-shadow: 0 18px 48px rgba(0,0,0,.22) !important;
}

.admin-panel {
    padding: 24px;
}

.admin-panel-heading {
    display: grid;
    gap: 7px;
    margin-bottom: 23px;
    padding-bottom: 17px;
    border-bottom: 1px solid rgba(255,255,255,.09);
}

.admin-panel-heading h2 {
    margin: 3px 0 0;
    color: #fff;
    font-size: 1.75rem;
}

.admin-panel-heading p {
    margin: 0;
    color: rgba(255,255,255,.52);
    line-height: 1.55;
}

.admin-settings-group {
    margin-top: 26px;
    padding-top: 23px;
    border-top: 1px solid rgba(255,255,255,.08);
}

.admin-settings-group:first-child {
    margin-top: 0;
    padding-top: 0;
    border-top: 0;
}

.admin-settings-group h3 {
    margin: 0 0 15px;
    color: #f2db98;
    font-size: .92rem;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.admin-main label span,
.admin-main legend {
    color: rgba(255,255,255,.78) !important;
}

.admin-main input,
.admin-main select,
.admin-main textarea {
    border: 1px solid rgba(255,255,255,.13) !important;
    background: #0f1217 !important;
    color: #fff !important;
}

.admin-main input:focus,
.admin-main select:focus,
.admin-main textarea:focus {
    border-color: rgba(216,185,102,.72) !important;
    box-shadow: 0 0 0 3px rgba(216,185,102,.1) !important;
}

.admin-upload-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.admin-upload-card {
    display: grid !important;
    gap: 8px !important;
    align-content: start;
    min-height: 240px;
    padding: 18px !important;
    border: 1px dashed rgba(216,185,102,.36) !important;
    border-radius: 14px;
    background: rgba(255,255,255,.025);
}

.admin-upload-card strong {
    color: #fff;
}

.admin-upload-card small {
    min-height: 38px;
    color: rgba(255,255,255,.48);
    line-height: 1.45;
}

.admin-media-preview,
.admin-empty-preview {
    min-height: 92px;
    display: grid;
    place-items: center;
    margin-top: auto;
    border-radius: 10px;
    background: #0e1116;
}

.admin-media-preview img {
    max-width: 100%;
    max-height: 88px;
    object-fit: contain;
}

.admin-favicon-preview img {
    width: 64px;
    height: 64px;
    border-radius: 12px;
}

.admin-empty-preview {
    color: rgba(255,255,255,.38);
    font-size: .8rem;
}

.admin-form-actions {
    display: flex;
    justify-content: flex-end;
    margin-top: 28px;
    padding-top: 20px;
    border-top: 1px solid rgba(255,255,255,.09);
}

.admin-inline-add,
.admin-list-edit {
    display: grid;
    grid-template-columns: minmax(0,1fr) auto;
    gap: 8px;
}

.admin-clean-list {
    display: grid;
    gap: 8px;
    margin-top: 18px;
}

.admin-clean-list-item {
    display: grid;
    grid-template-columns: minmax(0,1fr) auto;
    gap: 8px;
    align-items: center;
    padding: 10px;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 10px;
    background: rgba(255,255,255,.025);
}

.admin-empty-state {
    color: rgba(255,255,255,.45);
}

.admin-main .admin-quick-nav {
    display: none !important;
}

.admin-main .admin-stats {
    grid-template-columns: repeat(3, minmax(0,1fr)) !important;
    gap: 14px !important;
}

.admin-main .metric-card {
    min-height: 128px;
    padding: 20px !important;
}

.admin-main .metric-card strong {
    color: #f2db98 !important;
}

.admin-main .admin-table-wrap {
    overflow-x: auto;
}

.admin-main .admin-table {
    min-width: 920px;
}

.admin-main .admin-table th {
    background: #101318 !important;
    color: rgba(255,255,255,.62) !important;
}

.admin-main .admin-table td {
    border-color: rgba(255,255,255,.07) !important;
    color: rgba(255,255,255,.78) !important;
}

.admin-main .admin-table tbody tr:hover {
    background: rgba(216,185,102,.05) !important;
}

.admin-main .split-section.admin-panels {
    grid-template-columns: repeat(2, minmax(0,1fr)) !important;
    gap: 20px !important;
}

.admin-main .admin-service-grid {
    grid-template-columns: repeat(2, minmax(0,1fr)) !important;
}

@media (max-width: 1050px) {
    .admin-workspace {
        grid-template-columns: 220px minmax(0,1fr);
    }

    .admin-layout-grid {
        grid-template-columns: 1fr;
    }

    .admin-main .admin-stats {
        grid-template-columns: repeat(2, minmax(0,1fr)) !important;
    }
}

@media (max-width: 760px) {
    .admin-workspace {
        display: block;
    }

    .admin-sidebar {
        position: sticky;
        top: 0;
        z-index: 100;
        width: 100%;
        height: auto;
        padding: 10px;
        border-right: 0;
        border-bottom: 1px solid rgba(255,255,255,.1);
    }

    .admin-sidebar-brand {
        display: none;
    }

    .admin-sidebar-nav {
        display: flex;
        gap: 6px;
        margin: 0;
        overflow-x: auto;
    }

    .admin-sidebar-nav a {
        flex: 0 0 auto;
        min-height: 40px;
        white-space: nowrap;
    }

    .admin-sidebar-footer {
        display: none;
    }

    .admin-main {
        padding: 24px 10px 50px;
    }

    .admin-main .page-banner h1,
    .admin-page-head h1 {
        font-size: clamp(2rem, 10vw, 3rem) !important;
    }

    .admin-panel {
        padding: 16px;
    }

    .admin-upload-grid,
    .admin-main .admin-stats,
    .admin-main .split-section.admin-panels,
    .admin-main .admin-service-grid {
        grid-template-columns: 1fr !important;
    }

    .admin-main .form-grid.two-cols {
        grid-template-columns: 1fr !important;
    }

    .admin-clean-list-item {
        grid-template-columns: 1fr;
    }
}


/* =========================================================
   V21.33 — Dagelijks gebruiksvriendelijk admin-dashboard
   ========================================================= */

.admin-dashboard-head {
    display: flex !important;
    align-items: flex-end !important;
    justify-content: space-between !important;
    gap: 28px !important;
}

.admin-head-actions {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    flex: 0 0 auto;
}

.admin-attention-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
    margin-bottom: 18px;
}

.admin-attention-card {
    display: grid;
    gap: 8px;
    min-height: 165px;
    padding: 22px;
    border: 1px solid rgba(255,255,255,.10);
    border-radius: 16px;
    background: #191d24;
    color: #fff;
    text-decoration: none;
    box-shadow: 0 14px 36px rgba(0,0,0,.16);
    transition: transform .2s ease, border-color .2s ease;
}

.admin-attention-card:hover {
    transform: translateY(-2px);
    border-color: rgba(216,185,102,.45);
}

.admin-attention-card span {
    color: rgba(255,255,255,.62);
    font-size: .82rem;
    font-weight: 800;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.admin-attention-card strong {
    margin-top: auto;
    color: #f2db98;
    font-size: 3rem;
    line-height: 1;
}

.admin-attention-card small {
    color: rgba(255,255,255,.45);
}

.admin-attention-gold {
    background: linear-gradient(145deg, #322817, #1b1b1c);
    border-color: rgba(216,185,102,.32);
}

.admin-attention-light {
    background: linear-gradient(145deg, #20252c, #171a20);
}

.admin-daily-shortcuts {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin-bottom: 28px;
}

.admin-daily-shortcuts a {
    display: grid;
    gap: 5px;
    min-height: 98px;
    padding: 16px;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 13px;
    background: rgba(255,255,255,.025);
    color: #fff;
    text-decoration: none;
}

.admin-daily-shortcuts a:hover {
    background: rgba(216,185,102,.08);
    border-color: rgba(216,185,102,.28);
}

.admin-daily-shortcuts strong {
    color: #f2db98;
    font-size: .9rem;
}

.admin-daily-shortcuts span {
    color: rgba(255,255,255,.46);
    font-size: .75rem;
    line-height: 1.45;
}

.admin-dashboard-section {
    margin-top: 20px;
    padding: 24px;
    border: 1px solid rgba(255,255,255,.10);
    border-radius: 18px;
    background: #191d24;
    box-shadow: 0 18px 48px rgba(0,0,0,.20);
}

.admin-section-title {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 18px;
    padding-bottom: 17px;
    border-bottom: 1px solid rgba(255,255,255,.09);
}

.admin-section-title h2 {
    margin: 4px 0 5px;
    color: #fff;
    font-size: 1.75rem;
}

.admin-section-title p {
    max-width: 720px;
    margin: 0;
    color: rgba(255,255,255,.48);
    font-size: .86rem;
    line-height: 1.55;
}

.admin-count-pill {
    flex: 0 0 auto;
    padding: 7px 11px;
    border: 1px solid rgba(216,185,102,.34);
    border-radius: 999px;
    background: rgba(216,185,102,.10);
    color: #f2db98;
    font-size: .72rem;
    font-weight: 900;
    text-transform: uppercase;
}

.admin-message-list {
    display: grid;
    gap: 7px;
}

.admin-message-row {
    display: grid;
    grid-template-columns: 150px minmax(150px, 1fr) minmax(180px, .9fr) minmax(100px, .55fr);
    gap: 14px;
    align-items: center;
    min-height: 72px;
    padding: 12px 14px;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 11px;
    background: #12151a;
    color: #fff;
    text-decoration: none;
}

.admin-message-row:hover {
    border-color: rgba(216,185,102,.30);
    background: #161a20;
}

.admin-message-row.is-new {
    border-left: 3px solid #d8b966;
}

.admin-message-status,
.admin-message-main,
.admin-message-contact,
.admin-message-meta {
    display: grid;
    gap: 3px;
    min-width: 0;
}

.admin-message-status span {
    width: fit-content;
    padding: 5px 8px;
    border-radius: 999px;
    background: rgba(216,185,102,.12);
    color: #f2db98;
    font-size: .68rem;
    font-weight: 900;
}

.admin-message-row small,
.admin-message-row span {
    overflow: hidden;
    color: rgba(255,255,255,.48);
    font-size: .75rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.admin-message-main strong {
    color: #fff;
    font-size: .92rem;
}

.admin-message-contact > span {
    color: rgba(255,255,255,.78);
    font-size: .8rem;
}

.admin-message-meta {
    text-align: right;
}

.admin-message-meta strong {
    color: #f2db98;
    font-size: .75rem;
}

.admin-empty-message {
    padding: 24px;
    border: 1px dashed rgba(255,255,255,.10);
    border-radius: 12px;
    color: rgba(255,255,255,.42);
    text-align: center;
}

.admin-stock-heading {
    align-items: center;
}

.admin-stock-table td:first-child {
    display: grid;
    gap: 3px;
}

.admin-stock-table td:first-child small {
    color: rgba(255,255,255,.42);
}

.admin-yes-pill {
    display: inline-flex;
    padding: 5px 8px;
    border-radius: 999px;
    background: rgba(216,185,102,.12);
    color: #f2db98;
    font-size: .7rem;
    font-weight: 900;
}

.admin-action-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 34px;
    padding: 6px 9px;
    border: 1px solid rgba(255,255,255,.13);
    border-radius: 7px;
    background: transparent;
    color: rgba(255,255,255,.72);
    font: inherit;
    font-size: .7rem;
    font-weight: 800;
    text-decoration: none;
    cursor: pointer;
}

.admin-action-link.primary {
    border-color: rgba(216,185,102,.36);
    background: rgba(216,185,102,.10);
    color: #f2db98;
}

.admin-action-link.danger {
    color: #ff9c9c;
}

@media (max-width: 1100px) {
    .admin-daily-shortcuts {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .admin-message-row {
        grid-template-columns: 130px minmax(140px, 1fr) minmax(160px, .9fr);
    }

    .admin-message-meta {
        grid-column: 2 / -1;
        display: flex;
        justify-content: space-between;
        text-align: left;
    }
}

@media (max-width: 760px) {
    .admin-dashboard-head {
        display: grid !important;
        align-items: start !important;
    }

    .admin-head-actions {
        display: grid;
        grid-template-columns: 1fr;
        width: 100%;
    }

    .admin-attention-grid,
    .admin-daily-shortcuts {
        grid-template-columns: 1fr;
    }

    .admin-attention-card {
        min-height: 125px;
    }

    .admin-dashboard-section {
        padding: 15px 10px;
    }

    .admin-section-title {
        align-items: flex-start;
        flex-direction: column;
    }

    .admin-message-row {
        grid-template-columns: 1fr;
        gap: 8px;
        padding: 13px;
    }

    .admin-message-meta {
        grid-column: auto;
        display: flex;
        justify-content: space-between;
        text-align: left;
    }

    .admin-message-row small,
    .admin-message-row span {
        white-space: normal;
    }

    .admin-stock-heading {
        align-items: stretch;
    }

    .admin-stock-heading .button {
        width: 100%;
    }
}


/* =========================================================
   V21.34 — Compact admin + aparte aanvraagpagina's
   ========================================================= */

.admin-main {
    padding-left: 30px !important;
    padding-right: 30px !important;
}

.admin-main > * {
    width: min(100%, 1320px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

.admin-home-request-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
    margin-top: 20px;
}

.admin-home-request-panel {
    min-width: 0;
    padding: 22px !important;
}

.admin-panel-heading-row {
    display: flex !important;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
}

.admin-small-link {
    flex: 0 0 auto;
    color: #f2db98;
    font-size: .76rem;
    font-weight: 800;
    text-decoration: none;
}

.admin-compact-request-list {
    display: grid;
    gap: 8px;
}

.admin-compact-request {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 12px;
    min-height: 64px;
    padding: 11px 12px;
    border: 1px solid rgba(255,255,255,.07);
    border-radius: 10px;
    background: #111419;
    color: #fff;
    text-decoration: none;
}

.admin-compact-request:hover {
    border-color: rgba(216,185,102,.30);
}

.admin-compact-request.is-new {
    border-left: 3px solid #d8b966;
}

.admin-compact-request > div {
    display: grid;
    gap: 3px;
    min-width: 0;
}

.admin-compact-request strong {
    overflow: hidden;
    color: #fff;
    font-size: .86rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.admin-compact-request span {
    overflow: hidden;
    color: rgba(255,255,255,.48);
    font-size: .73rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.admin-compact-request small {
    padding: 5px 8px;
    border-radius: 999px;
    background: rgba(216,185,102,.10);
    color: #f2db98;
    font-size: .66rem;
    font-weight: 800;
}

.admin-compact-head {
    display: flex !important;
    align-items: flex-end !important;
    justify-content: space-between !important;
    gap: 20px !important;
}

.admin-request-page-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.admin-request-card {
    display: flex;
    flex-direction: column;
    min-width: 0;
    padding: 20px;
    border: 1px solid rgba(255,255,255,.10);
    border-radius: 16px;
    background: #191d24;
    color: #fff;
    box-shadow: 0 14px 36px rgba(0,0,0,.16);
}

.admin-request-card.is-new {
    border-top: 3px solid #d8b966;
}

.admin-request-card-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 14px;
}

.admin-request-card-top small {
    color: rgba(255,255,255,.42);
    font-size: .7rem;
}

.admin-request-card h2 {
    margin: 0 0 4px;
    color: #fff;
    font-size: 1.35rem;
}

.admin-request-topic {
    margin: 0 0 16px;
    color: #f2db98;
    font-size: .84rem;
    font-weight: 700;
}

.admin-request-details {
    display: grid;
    gap: 8px;
    margin-bottom: 18px;
}

.admin-request-details > div {
    display: grid;
    grid-template-columns: 90px minmax(0, 1fr);
    gap: 10px;
    padding: 8px 0;
    border-bottom: 1px solid rgba(255,255,255,.07);
}

.admin-request-details span {
    color: rgba(255,255,255,.42);
    font-size: .72rem;
}

.admin-request-details strong {
    overflow-wrap: anywhere;
    color: rgba(255,255,255,.82);
    font-size: .78rem;
}

.admin-request-open {
    width: 100%;
    margin-top: auto;
}

.admin-dashboard-section {
    padding: 22px !important;
}

.admin-filter-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
}

.admin-filter-grid .filter-actions {
    grid-column: 1 / -1;
    justify-content: flex-end;
}

@media (max-width: 1050px) {
    .admin-request-page-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 760px) {
    .admin-main {
        padding-left: 10px !important;
        padding-right: 10px !important;
    }

    .admin-home-request-grid,
    .admin-request-page-grid {
        grid-template-columns: 1fr;
    }

    .admin-compact-head {
        align-items: flex-start !important;
        flex-direction: column;
    }

    .admin-filter-grid {
        grid-template-columns: 1fr !important;
    }

    .admin-request-details > div {
        grid-template-columns: 1fr;
        gap: 3px;
    }
}


/* v21.37 — verkoopaanvraagfoto's */
.request-gallery-button.image-load-error {
    display: none !important;
}

.request-gallery-button img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 180px;
    object-fit: cover;
}


/* =========================================================
   V21.39 — Aparte voorwaarden- en privacypagina
   ========================================================= */

.legal-consent-check span {
    line-height: 1.55 !important;
}

.legal-consent-check a {
    display: inline !important;
    color: inherit !important;
    font-weight: 800 !important;
    text-decoration: underline !important;
    text-underline-offset: 2px;
}

.legal-document-section {
    width: min(1080px, calc(100% - 36px)) !important;
    margin-inline: auto !important;
}

.legal-card {
    padding: clamp(24px, 5vw, 58px);
    border: 1px solid rgba(0,0,0,.14);
    border-radius: 22px;
    background: #fff;
    box-shadow: 0 18px 48px rgba(0,0,0,.08);
}

.legal-document-block + .legal-document-block {
    margin-top: 34px;
    padding-top: 30px;
    border-top: 1px solid rgba(0,0,0,.10);
}

.legal-document-block h2 {
    margin: 0 0 15px;
    font-size: clamp(1.45rem, 2.5vw, 2.15rem);
}

.legal-document-copy p {
    margin: 0 0 13px;
    color: #494641;
    line-height: 1.75;
}

.legal-empty-public {
    color: #66615a;
    line-height: 1.7;
    text-align: center;
}

.admin-legal-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 20px;
}

.admin-legal-editor {
    min-width: 0;
}

.legal-admin-new-block {
    border-style: dashed !important;
    opacity: .92;
}

.footer-legal-links {
    display: grid;
    align-content: start;
    gap: 7px;
}

.footer-legal-links a {
    color: inherit;
    font-size: .88rem;
    text-decoration: none;
}

.footer-legal-links a:hover {
    text-decoration: underline;
}

.footer-legal-links p {
    margin-top: 8px !important;
    opacity: .65;
    font-size: .76rem;
}

@media screen and (max-width: 900px) {
    .admin-legal-grid {
        grid-template-columns: 1fr;
    }
}

@media screen and (max-width: 760px) {
    .legal-card {
        padding: 22px 15px;
        border-radius: 16px;
    }

    body .legal-hero h1 {
        font-size: clamp(1.55rem, 7.5vw, 2.35rem) !important;
        text-align: center !important;
    }
}


/* =========================================================
   V21.40 — Juridische links en eenvoudige teksteditor
   ========================================================= */

/* Juridische links buiten de footer: goud en duidelijk onderlijnd. */
.legal-consent-check a,
.legal-page a,
.legal-document-section a {
    color: #a97916 !important;
    font-weight: 900 !important;
    text-decoration: underline !important;
    text-decoration-thickness: 2px !important;
    text-underline-offset: 3px !important;
}

/* Footer heeft een gouden achtergrond: links daarom zwart. */
.site-footer .footer-legal-links {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    gap: 9px !important;
}

.site-footer .footer-legal-links a {
    display: inline-block !important;
    color: #080808 !important;
    font-weight: 900 !important;
    text-decoration: underline !important;
    text-decoration-thickness: 2px !important;
    text-underline-offset: 3px !important;
    opacity: 1 !important;
}

.site-footer .footer-legal-links a:hover {
    color: #080808 !important;
    opacity: .72 !important;
}

.site-footer .footer-legal-links p {
    color: #080808 !important;
}

/* Eén groot tekstvak per document. */
.legal-editor-shell {
    display: grid;
    gap: 10px;
    margin-top: 22px;
}

.legal-editor-toolbar {
    display: flex;
    align-items: center;
    gap: 12px;
    min-height: 48px;
    padding: 8px 10px;
    border: 1px solid rgba(255,255,255,.10);
    border-radius: 10px;
    background: #101318;
}

.legal-editor-toolbar span {
    color: rgba(255,255,255,.50);
    font-size: .76rem;
}

.legal-format-button {
    width: 38px;
    height: 34px;
    border: 1px solid rgba(216,185,102,.45);
    border-radius: 7px;
    background: rgba(216,185,102,.12);
    color: #f2db98;
    font-weight: 900;
    cursor: pointer;
}

.legal-format-button:hover {
    background: rgba(216,185,102,.22);
}

.legal-single-editor {
    display: grid !important;
    gap: 8px !important;
}

.legal-single-editor textarea {
    width: 100% !important;
    min-height: 600px !important;
    resize: vertical !important;
    font-family: Inter, sans-serif !important;
    font-size: .9rem !important;
    line-height: 1.65 !important;
}

.legal-editor-help {
    color: rgba(255,255,255,.48);
    font-size: .75rem;
    line-height: 1.55;
}

.legal-editor-help code {
    color: #f2db98;
}

.legal-rich-content h3 {
    margin: 30px 0 12px;
    color: #111;
    font-size: clamp(1.25rem, 2vw, 1.7rem);
}

.legal-rich-content strong {
    color: #111;
    font-weight: 900;
}

@media screen and (max-width: 760px) {
    .legal-single-editor textarea {
        min-height: 440px !important;
    }

    .legal-editor-toolbar {
        align-items: flex-start;
        flex-direction: column;
    }
}


/* =========================================================
   V21.42 — Mobiele home verfijning
   ========================================================= */
@media screen and (max-width: 760px) {
    body:not(.admin-dark-mode) .site-header .mobile-menu-toggle,
    body:not(.admin-dark-mode) .site-header .menu-toggle {
        width: 42px !important;
        height: 42px !important;
        padding: 9px !important;
        border: 1px solid rgba(255, 255, 255, .22) !important;
        border-radius: 10px !important;
        background: rgba(0, 0, 0, .18) !important;
        box-shadow: none !important;
        backdrop-filter: blur(8px) !important;
        -webkit-backdrop-filter: blur(8px) !important;
    }

    body:not(.admin-dark-mode) .site-header .mobile-menu-toggle span,
    body:not(.admin-dark-mode) .site-header .menu-toggle span {
        display: block !important;
        width: 100% !important;
        height: 2px !important;
        margin: 4px 0 !important;
        border-radius: 999px !important;
        background: rgba(255, 255, 255, .92) !important;
        box-shadow: 0 1px 3px rgba(0, 0, 0, .35) !important;
    }

    body:not(.admin-dark-mode) .site-header .mobile-menu-toggle:hover,
    body:not(.admin-dark-mode) .site-header .mobile-menu-toggle:focus-visible,
    body:not(.admin-dark-mode) .site-header .menu-toggle:hover,
    body:not(.admin-dark-mode) .site-header .menu-toggle:focus-visible {
        background: rgba(0, 0, 0, .28) !important;
        border-color: rgba(255, 255, 255, .34) !important;
    }

    body .home15-stock-row {
        display: grid !important;
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 22px !important;
        width: 100% !important;
    }

    body .home15-stock-row > .home15-car-card,
    body .home15-stock-row > .home-premium-card {
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        margin: 0 !important;
    }

    body .home15-stock-row .home-premium-image,
    body .home15-stock-row .home15-car-image {
        width: 100% !important;
        aspect-ratio: 16 / 10 !important;
        background-size: cover !important;
        background-position: center !important;
    }
}


/* =========================================================
   V21.43 — Hamburger clean/minimal op gsm
   ========================================================= */
@media screen and (max-width: 760px) {
    body:not(.admin-dark-mode) .site-header .mobile-menu-toggle,
    body:not(.admin-dark-mode) .site-header .menu-toggle {
        width: 38px !important;
        height: 38px !important;
        min-width: 38px !important;
        min-height: 38px !important;
        padding: 7px !important;
        border: 0 !important;
        border-radius: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
        outline: none !important;
    }

    body:not(.admin-dark-mode) .site-header .mobile-menu-toggle:hover,
    body:not(.admin-dark-mode) .site-header .mobile-menu-toggle:focus,
    body:not(.admin-dark-mode) .site-header .mobile-menu-toggle:active,
    body:not(.admin-dark-mode) .site-header .menu-toggle:hover,
    body:not(.admin-dark-mode) .site-header .menu-toggle:focus,
    body:not(.admin-dark-mode) .site-header .menu-toggle:active {
        border: 0 !important;
        background: transparent !important;
        box-shadow: none !important;
        transform: none !important;
    }

    body:not(.admin-dark-mode) .site-header .mobile-menu-toggle span,
    body:not(.admin-dark-mode) .site-header .menu-toggle span {
        display: block !important;
        width: 24px !important;
        height: 2px !important;
        margin: 4px auto !important;
        border: 0 !important;
        border-radius: 999px !important;
        background: #111 !important;
        box-shadow: none !important;
        opacity: .9 !important;
        transition: transform .2s ease, opacity .2s ease !important;
    }

    /* Wanneer het menu open staat: eenvoudige X */
    body:not(.admin-dark-mode) .site-header .mobile-menu-toggle[aria-expanded="true"] span:nth-child(1),
    body:not(.admin-dark-mode) .site-header .menu-toggle[aria-expanded="true"] span:nth-child(1) {
        transform: translateY(6px) rotate(45deg) !important;
    }

    body:not(.admin-dark-mode) .site-header .mobile-menu-toggle[aria-expanded="true"] span:nth-child(2),
    body:not(.admin-dark-mode) .site-header .menu-toggle[aria-expanded="true"] span:nth-child(2) {
        opacity: 0 !important;
    }

    body:not(.admin-dark-mode) .site-header .mobile-menu-toggle[aria-expanded="true"] span:nth-child(3),
    body:not(.admin-dark-mode) .site-header .menu-toggle[aria-expanded="true"] span:nth-child(3) {
        transform: translateY(-6px) rotate(-45deg) !important;
    }
}


/* =========================================================
   V21.44 — DEFINITIEVE hamburger fix
   De knop wordt rechtstreeks via #menu-toggle gestyled.
   ========================================================= */
@media (max-width: 760px) {
    #menu-toggle.mobile-menu-toggle {
        display: inline-flex !important;
        position: relative !important;
        width: 36px !important;
        height: 36px !important;
        min-width: 36px !important;
        min-height: 36px !important;
        padding: 6px !important;
        margin: 0 !important;
        border: none !important;
        border-width: 0 !important;
        border-style: none !important;
        border-radius: 0 !important;
        outline: none !important;
        background: none !important;
        background-color: transparent !important;
        background-image: none !important;
        box-shadow: none !important;
        filter: none !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
        appearance: none !important;
        -webkit-appearance: none !important;
        color: #151515 !important;
        align-items: center !important;
        justify-content: center !important;
        flex-direction: column !important;
        gap: 4px !important;
    }

    #menu-toggle.mobile-menu-toggle:hover,
    #menu-toggle.mobile-menu-toggle:focus,
    #menu-toggle.mobile-menu-toggle:focus-visible,
    #menu-toggle.mobile-menu-toggle:active {
        border: none !important;
        outline: none !important;
        background: none !important;
        background-color: transparent !important;
        box-shadow: none !important;
        filter: none !important;
    }

    #menu-toggle.mobile-menu-toggle span {
        display: block !important;
        flex: 0 0 2px !important;
        width: 23px !important;
        height: 2px !important;
        min-height: 2px !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        border-radius: 99px !important;
        background: #151515 !important;
        box-shadow: none !important;
        opacity: 1 !important;
    }

    #menu-toggle.mobile-menu-toggle.is-open span:nth-child(1),
    #menu-toggle.mobile-menu-toggle[aria-expanded="true"] span:nth-child(1) {
        transform: translateY(6px) rotate(45deg) !important;
    }

    #menu-toggle.mobile-menu-toggle.is-open span:nth-child(2),
    #menu-toggle.mobile-menu-toggle[aria-expanded="true"] span:nth-child(2) {
        opacity: 0 !important;
    }

    #menu-toggle.mobile-menu-toggle.is-open span:nth-child(3),
    #menu-toggle.mobile-menu-toggle[aria-expanded="true"] span:nth-child(3) {
        transform: translateY(-6px) rotate(-45deg) !important;
    }
}
