:root {
  --bg: #f7f8f8;
  --bg-warm: #f4f2ef;
  --surface: #ffffff;
  --surface-soft: #edf1f3;
  --surface-dark: #111a20;
  --ink: #0d151a;
  --ink-2: #26343d;
  --muted: #64717a;
  --muted-2: #8d989f;
  --line: #d9e0e4;
  --line-dark: rgba(13, 21, 26, .13);
  --accent: #2c9ec3;
  --accent-dark: #187997;
  --accent-soft: #dff3fa;
  --success: #188461;
  --warning: #a8781b;
  --danger: #b74242;
  --shadow-sm: 0 12px 34px rgba(20, 35, 44, .08);
  --shadow-md: 0 28px 80px rgba(20, 35, 44, .13);
  --radius-sm: 14px;
  --radius: 24px;
  --radius-lg: 36px;
  --header-height: 86px;
  --container: 1280px;
  --container-wide: 1460px;
  --gutter: clamp(18px, 4vw, 64px);
  --section-space: clamp(68px, 7vw, 112px);
  --section-space-small: clamp(44px, 5vw, 76px);
  --touch-target: 44px;
  --safe-top: env(safe-area-inset-top, 0px);
  --safe-right: env(safe-area-inset-right, 0px);
  --safe-bottom: env(safe-area-inset-bottom, 0px);
  --safe-left: env(safe-area-inset-left, 0px);
  --floating-edge: max(12px, var(--safe-right));
  --floating-bottom: max(12px, var(--safe-bottom));
  --floating-stack-gap: 12px;
  --ease-premium: cubic-bezier(.22, .78, .18, 1);
  color-scheme: light;
}

* { box-sizing: border-box; }
[hidden] { display: none !important; }
html { scroll-behavior: smooth; background: var(--bg); overflow-x:clip; }
body { margin: 0; min-width: 320px; overflow-x:clip; background: var(--bg); color: var(--ink); font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
body.modal-open { overflow: hidden; }
img { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
button, input, select, textarea { font: inherit; color: inherit; }
button { border: 0; }
button, a { -webkit-tap-highlight-color: transparent; }
::selection { background: var(--accent); color: #fff; }
:focus-visible { outline: 3px solid rgba(44, 158, 195, .35); outline-offset: 3px; }

.sr-only { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; overflow: hidden !important; clip: rect(0,0,0,0) !important; white-space: nowrap !important; border: 0 !important; }
.skip-link { position: fixed; top: 10px; left: 10px; z-index: 9999; transform: translateY(-150%); background: var(--ink); color: #fff; padding: 12px 18px; border-radius: 10px; }
.skip-link:focus { transform: none; }
.noscript { padding: 18px; text-align: center; background: #fff3cd; color: #5c4712; }
.container-wide { width: min(calc(100% - (var(--gutter) * 2)), var(--container-wide)); margin-inline: auto; }
.container { width: min(calc(100% - (var(--gutter) * 2)), var(--container)); margin-inline: auto; }
.section-space { padding-block: var(--section-space); }
.section-space-small { padding-block: var(--section-space-small); }
#app-outlet { min-height: 100svh; }
.page-shell { min-height: 75vh; padding-top: var(--header-height); }

.icon { flex: none; }
.eyebrow { display: flex; align-items: center; gap: 12px; margin: 0 0 18px; color: var(--accent-dark); font-size: 11px; font-weight: 750; letter-spacing: .28em; line-height: 1.3; text-transform: uppercase; }
.eyebrow > span:first-child { width: 32px; height: 1px; background: currentColor; }
h1, h2, h3, p { margin-top: 0; }
h1, h2, h3 { letter-spacing: -.045em; }
h1 { font-size: clamp(54px, 7vw, 112px); line-height: .91; font-weight: 530; }
h2 { font-size: clamp(42px, 5vw, 76px); line-height: .98; font-weight: 520; }
h3 { font-size: 24px; line-height: 1.1; font-weight: 580; }
p { color: var(--muted); line-height: 1.65; }

.button { display: inline-flex; align-items: center; justify-content: center; gap: 12px; min-height: 52px; padding: 0 25px; border-radius: 999px; font-size: 13px; font-weight: 690; letter-spacing: .035em; transition: transform .28s var(--ease-premium), background .28s, color .28s, border-color .28s, box-shadow .28s; cursor: pointer; white-space: nowrap; }
.button:hover { transform: translateY(-2px); }
.button-dark { background: var(--ink); color: #fff; box-shadow: 0 10px 24px rgba(13,21,26,.14); }
.button-dark:hover { background: #1b2b34; box-shadow: 0 16px 32px rgba(13,21,26,.2); }
.button-light { background: rgba(255,255,255,.88); color: var(--ink); border: 1px solid var(--line-dark); }
.button-light:hover { background: #fff; border-color: rgba(13,21,26,.28); }
.button-outline { background: transparent; border: 1px solid rgba(255,255,255,.35); color: #fff; }
.button-outline:hover { border-color: #fff; }
.button-compact { min-height: 42px; padding-inline: 19px; font-size: 12px; }
.icon-button { width: 44px; height: 44px; border-radius: 50%; display: inline-grid; place-items: center; background: rgba(255,255,255,.86); border: 1px solid var(--line-dark); color: var(--ink); cursor: pointer; transition: .25s var(--ease-premium); }
.icon-button:hover { transform: translateY(-2px); background: #fff; }
.icon-button.is-active { background: var(--ink); color: #fff; border-color: var(--ink); }
.text-link { display: inline-flex; align-items: center; gap: 9px; font-size: 13px; font-weight: 700; letter-spacing: .04em; border-bottom: 1px solid rgba(13,21,26,.32); padding-bottom: 7px; transition: gap .25s, border-color .25s; }
.text-link:hover { gap: 14px; border-color: var(--accent); }
.text-link-large { font-size: 14px; }
.text-button { border: 0; background: transparent; color: var(--ink); border-bottom: 1px solid var(--line-dark); padding: 7px 0; font-size: 12px; font-weight: 700; cursor: pointer; }

/* Header */
.site-header { position: fixed; inset: 0 0 auto; height: var(--header-height); z-index: 1000; background: rgba(248,249,249,.96); backdrop-filter: blur(22px) saturate(1.4); border-bottom: 1px solid rgba(13,21,26,.06); }
.header-inner { height: 100%; display: grid; grid-template-columns: 250px 1fr auto; align-items: center; gap: 34px; }
.brand-link img { width: 205px; height: auto; }
.desktop-nav { display: flex; justify-content: center; gap: clamp(22px, 3vw, 48px); }
.desktop-nav a { position: relative; padding: 33px 0 29px; font-size: 12px; font-weight: 700; letter-spacing: .07em; text-transform: uppercase; }
.desktop-nav a::after { content: ""; position: absolute; left: 0; right: 100%; bottom: 22px; height: 2px; background: var(--accent); transition: right .3s var(--ease-premium); }
.desktop-nav a:hover::after, .desktop-nav a.is-active::after { right: 0; }
.header-actions { display: flex; align-items: center; gap: 14px; }
.header-phone { display: flex; align-items: center; gap: 8px; font-size: 13px; font-weight: 620; white-space: nowrap; }
.mobile-menu-button { display: none; }
.mobile-menu { position: fixed; top: var(--header-height); left: 0; right: 0; padding: 22px 24px 28px; background: rgba(248,249,249,.98); border-bottom: 1px solid var(--line); box-shadow: var(--shadow-md); }
.mobile-menu nav { display: grid; }
.mobile-menu nav a { display: flex; justify-content: space-between; padding: 18px 4px; border-bottom: 1px solid var(--line); font-size: 17px; font-weight: 650; }
.mobile-contact { display: flex; gap: 8px; align-items: center; margin-top: 20px; font-weight: 650; }

/* Homepage hero */
.home-hero { position: relative; min-height: max(790px, 100svh); overflow: hidden; background: linear-gradient(180deg, #fbfcfc 0%, #f6f8f8 58%, #eef2f3 100%); padding-top: var(--header-height); }
.home-hero-architecture { position: absolute; inset: 0; overflow: hidden; pointer-events: none; }
.architecture-curve { position: absolute; width: 46vw; height: 42vw; border: 1px solid rgba(13,21,26,.06); background: linear-gradient(150deg, rgba(255,255,255,.94), rgba(235,239,241,.75)); box-shadow: 0 30px 120px rgba(44,70,82,.08); }
.architecture-left { left: -31vw; top: 9%; border-radius: 0 48% 48% 0; transform: rotate(-4deg); }
.architecture-right { right: -23vw; top: -13vw; border-radius: 50%; transform: rotate(8deg); }
.architecture-right::before { content:""; position:absolute; inset:20%; border-radius:50%; border:1px solid rgba(44,158,195,.18); box-shadow:0 0 0 8px rgba(255,255,255,.4); }
.skyline { position: absolute; left: 18%; right: 0; bottom: 12.5%; width: 82%; height: 40%; opacity: .82; }
.studio-floor { position: absolute; left: -10%; right: -10%; bottom: -9%; height: 43%; background: radial-gradient(ellipse at 67% 10%, rgba(255,255,255,.98) 0 13%, rgba(224,230,233,.5) 41%, rgba(255,255,255,.9) 73%), linear-gradient(180deg, rgba(255,255,255,.2), #fff); transform: perspective(800px) rotateX(63deg); transform-origin: bottom; border-top: 1px solid rgba(13,21,26,.08); }
.studio-floor::after { content:""; position:absolute; inset:0; background: repeating-linear-gradient(90deg, transparent 0 170px, rgba(43,63,73,.04) 171px 172px); opacity:.7; }
.hero-layout { position: relative; z-index: 3; min-height: calc(max(790px, 100svh) - var(--header-height)); display: grid; grid-template-columns: minmax(410px, .83fr) minmax(620px, 1.3fr); align-items: center; gap: 20px; padding-block: 50px 104px; }
.hero-copy { position: relative; z-index: 4; align-self: center; max-width: 610px; padding-top: 20px; }
.hero-copy h1 { margin: 0 0 24px; text-transform: uppercase; font-size: clamp(70px, 7.1vw, 116px); letter-spacing: -.065em; }
.hero-copy h1 em { font-style: normal; color: var(--accent); font-weight: 690; }
.hero-lead { max-width: 480px; margin-bottom: 26px; color: var(--ink-2); font-size: 18px; }
.hero-trust-mini { display: flex; gap: 22px; flex-wrap: wrap; margin-bottom: 28px; color: var(--ink-2); font-size: 12px; font-weight: 650; }
.hero-trust-mini span { display: flex; align-items: center; gap: 8px; }
.hero-actions { display: flex; gap: 12px; flex-wrap: wrap; }
.hero-note { margin: 28px 0 0; color: var(--muted-2); font-size: 9px; font-weight: 700; letter-spacing: .26em; text-transform: uppercase; }
.hero-bottom { position: absolute; z-index: 5; left: 50%; bottom: 28px; transform: translateX(-50%); display: flex; align-items: center; gap: 16px; color: var(--muted); font-size: 10px; letter-spacing: .16em; text-transform: uppercase; }
.hero-bottom-line { width: 90px; height: 1px; background: linear-gradient(90deg, var(--accent), var(--line)); }

/* Hero stage is implemented by CinematicVehicleStage near the end of this file. */

/* Selected-vehicle cinematic introduction */
.vehicle-cinematic-hero { position:relative; min-height:720px; padding:30px 0 42px; overflow:hidden; background:radial-gradient(circle at 54% 43%,#fff 0 21%,rgba(255,255,255,.75) 39%,transparent 63%),linear-gradient(145deg,#f7f9fa,#e6edf0); border-bottom:1px solid var(--line); }
.vehicle-cinematic-hero::after { content:""; position:absolute; inset:auto -8% -20% 22%; height:46%; border-radius:50%; background:radial-gradient(ellipse,rgba(23,48,60,.14),transparent 66%); filter:blur(30px); pointer-events:none; }
.vehicle-cinematic-hero .breadcrumbs { position:relative; z-index:8; margin-bottom:10px; }
.vehicle-cinematic-grid { position:relative; z-index:2; display:grid; grid-template-columns:minmax(190px,.55fr) minmax(520px,1.45fr) minmax(240px,.65fr); align-items:center; min-height:610px; gap:18px; }
.vehicle-editorial { position:relative; z-index:7; align-self:center; }
.vehicle-editorial h1 { margin:12px 0 18px; font-size:clamp(54px,5.2vw,86px); line-height:.82; letter-spacing:-.065em; text-transform:uppercase; }
.vehicle-editorial h1 em { color:var(--accent-dark); font-style:normal; font-weight:430; }
.vehicle-editorial > p:last-child { color:var(--muted); font-size:12px; letter-spacing:.12em; text-transform:uppercase; }
.vehicle-detail-stage { position:relative; align-self:stretch; min-height:600px; margin-inline:-8%; }
.vehicle-minimal-data { position:relative; z-index:8; display:grid; align-content:center; gap:18px; padding:26px 0; }
.vehicle-detail-price { margin:0; color:var(--ink); font-size:clamp(32px,3vw,48px); font-weight:760; letter-spacing:-.055em; }
.vehicle-minimal-data dl { display:grid; margin:0; border-top:1px solid var(--line-dark); }
.vehicle-minimal-data dl div { display:flex; justify-content:space-between; gap:20px; padding:11px 0; border-bottom:1px solid var(--line-dark); }
.vehicle-minimal-data dt { color:var(--muted); font-size:10px; text-transform:uppercase; letter-spacing:.1em; }
.vehicle-minimal-data dd { margin:0; font-size:12px; font-weight:700; text-align:right; }
.vehicle-secondary-actions { display:grid; gap:1px; border-block:1px solid var(--line-dark); }
.vehicle-secondary-actions a,.vehicle-secondary-actions button { display:flex; align-items:center; gap:9px; padding:11px 0; border:0; background:transparent; color:var(--ink); font:inherit; font-size:10px; font-weight:760; letter-spacing:.07em; text-transform:uppercase; cursor:pointer; }
.vehicle-save-actions { display:flex; gap:8px; }
.vehicle-stage-note { position:relative; z-index:4; max-width:780px; margin:-10px auto 0; color:var(--muted-2); font-size:9px; text-align:center; }
.vehicle-gallery-strip { padding-top:64px; scroll-margin-top:calc(var(--header-height) + 16px); }
.vehicle-gallery-strip .vehicle-main-image { height:min(62vw,720px); }
.vehicle-reveal { animation:vehicle-detail-reveal .7s .72s var(--ease-premium) both; }
@keyframes vehicle-detail-reveal { from { opacity:0; transform:translateY(12px); } to { opacity:1; transform:none; } }

/* Journey and homepage content */
.journey-section { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; margin-top: -58px; position: relative; z-index: 12; padding-top: 0; }
.journey-panel { position: relative; min-height: 330px; padding: 44px 42% 40px 42px; border-radius: var(--radius); overflow: hidden; background: #fff; border: 1px solid var(--line-dark); box-shadow: var(--shadow-sm); }
.journey-panel::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,#fff 0 52%,rgba(255,255,255,.76) 66%,transparent 100%); pointer-events:none; }
.journey-panel > *:not(img,.valuation-teaser) { position:relative; z-index:2; }
.journey-index { position:absolute !important; top:28px; right:30px; color:var(--muted-2); font-size:11px; letter-spacing:.2em; }
.journey-icon { width:52px; height:52px; display:grid; place-items:center; border-radius:50%; background:var(--surface-soft); margin-bottom:24px; }
.journey-panel h2 { font-size: clamp(38px,4vw,58px); margin-bottom:16px; }
.journey-panel p:not(.eyebrow) { font-size:15px; max-width:370px; }
.journey-panel img { position:absolute; inset:0 0 0 auto; width:53%; height:100%; object-fit:cover; }
.journey-sell { color:#fff; background:var(--surface-dark); border-color:transparent; }
.journey-sell::after { background:linear-gradient(90deg,var(--surface-dark) 0 52%,rgba(17,26,32,.92) 64%,transparent 100%); }
.journey-sell p, .journey-sell .eyebrow { color:rgba(255,255,255,.67); }
.journey-sell .journey-icon { background:rgba(255,255,255,.1); }
.journey-sell .text-link { border-color:rgba(255,255,255,.35); }
.valuation-teaser { position:absolute; right:0; top:0; bottom:0; width:48%; padding:74px 30px 30px; display:flex; flex-direction:column; justify-content:center; background:radial-gradient(circle at 70% 50%,rgba(44,158,195,.35),transparent 48%),linear-gradient(140deg,#1f3039,#0d151a); color:#fff; }
.valuation-teaser span { font-size:10px; letter-spacing:.18em; text-transform:uppercase; color:rgba(255,255,255,.55); }
.valuation-teaser strong { font-size:30px; margin:9px 0 4px; }
.valuation-teaser small { color:rgba(255,255,255,.55); }
.valuation-teaser svg { margin-top:28px; color:var(--accent); }
.trust-ribbon { display:grid; grid-template-columns:repeat(4,1fr); background:#fff; border:1px solid var(--line); border-radius:20px; padding:24px 28px; box-shadow:var(--shadow-sm); }
.trust-ribbon > div { display:flex; align-items:center; gap:14px; padding:0 26px; border-right:1px solid var(--line); }
.trust-ribbon > div:last-child { border-right:0; }
.trust-ribbon span { display:grid; gap:3px; }
.trust-ribbon strong { font-size:13px; }
.trust-ribbon small { color:var(--muted); font-size:11px; }
.section-heading { display:flex; justify-content:space-between; align-items:end; gap:30px; margin-bottom:38px; }
.section-heading h2 { margin:0; max-width:750px; }
.featured-rail { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }
.featured-car { background:#fff; border:1px solid var(--line); border-radius:20px; padding:10px 10px 24px; transition:.35s var(--ease-premium); }
.featured-car:hover { transform:translateY(-6px); box-shadow:var(--shadow-md); }
.featured-car-image { height:210px; border-radius:14px; overflow:hidden; background:var(--surface-soft); margin-bottom:20px; }
.featured-car-image img { width:100%; height:100%; object-fit:cover; transition:transform .5s var(--ease-premium); }
.featured-car:hover img { transform:scale(1.035); }
.featured-car > div:last-of-type { padding:0 12px; }
.featured-car span { color:var(--accent-dark); font-size:9px; font-weight:800; letter-spacing:.18em; text-transform:uppercase; }
.featured-car h3 { margin:7px 0 8px; font-size:21px; }
.featured-car p { margin:0 0 14px; font-size:12px; }
.featured-car strong { font-size:17px; }
.featured-car > .icon { float:right; margin:-26px 11px 0 0; }
.preview-data-note { margin:22px 0 0; font-size:11px; color:var(--muted-2); }
.closing-cta { padding:100px 0; background:var(--surface-dark); color:#fff; overflow:hidden; position:relative; }
.closing-cta::after { content:""; position:absolute; width:680px; height:680px; right:-180px; top:-300px; border:1px solid rgba(255,255,255,.08); border-radius:50%; box-shadow:0 0 0 80px rgba(255,255,255,.015),0 0 0 160px rgba(255,255,255,.012); }
.closing-cta-inner { position:relative; z-index:1; display:flex; align-items:end; justify-content:space-between; gap:50px; }
.closing-cta h2 { margin:0; }
.closing-cta-inner > div { display:flex; gap:12px; }
.reveal { opacity:0; transform:translateY(24px); transition:opacity .75s var(--ease-premium),transform .75s var(--ease-premium); }
.reveal.is-visible { opacity:1; transform:none; }

/* Generic page hero */
.page-hero { padding:90px 0 70px; background:linear-gradient(160deg,#fbfcfc,#eef2f3); border-bottom:1px solid var(--line); }
.page-hero-compact { padding-bottom:82px; }
.page-hero h1 { margin-bottom:25px; }
.page-hero p { max-width:650px; font-size:17px; }
.page-hero-grid { display:grid; grid-template-columns:1.15fr .85fr; gap:80px; align-items:center; }
.page-hero-proof { justify-self:end; min-width:270px; padding:30px; background:#fff; border:1px solid var(--line); border-radius:24px; box-shadow:var(--shadow-sm); display:grid; }
.page-hero-proof strong { font-size:70px; line-height:1; letter-spacing:-.07em; }
.page-hero-proof span { margin-top:8px; font-weight:700; }
.page-hero-proof small { margin-top:14px; color:var(--muted); line-height:1.5; }
.breadcrumbs { display:flex; align-items:center; gap:6px; color:var(--muted); font-size:12px; margin-bottom:28px; }
.breadcrumbs a:hover { color:var(--accent-dark); }

/* Inventory */
.inventory-command { position:relative; z-index:4; margin-top:-36px; background:#fff; border:1px solid var(--line); border-radius:24px; padding:18px; box-shadow:var(--shadow-md); }
.category-chips { display:flex; gap:4px; overflow:auto; padding-bottom:14px; scrollbar-width:none; }
.category-chips::-webkit-scrollbar { display:none; }
.category-chips button { flex:none; padding:10px 17px; border-radius:999px; background:transparent; color:var(--muted); font-size:11px; font-weight:700; cursor:pointer; }
.category-chips button.is-active { background:var(--ink); color:#fff; }
.inventory-searchbar { display:grid; grid-template-columns:1fr auto auto; gap:10px; }
.search-field { display:flex; align-items:center; gap:12px; min-height:54px; padding:0 18px; background:var(--surface-soft); border-radius:14px; }
.search-field input { width:100%; border:0; outline:0; background:transparent; }
.mobile-filter-open { display:none; }
.inventory-filters { display:grid; grid-template-columns:repeat(5,1fr) auto auto; gap:12px; align-items:end; margin-top:14px; padding-top:14px; border-top:1px solid var(--line); }
.inventory-filters label:not(.checkbox-control), .results-toolbar label { display:grid; gap:7px; color:var(--muted); font-size:9px; font-weight:750; letter-spacing:.12em; text-transform:uppercase; }
.inventory-filters select, .results-toolbar select { width:100%; min-height:44px; padding:0 12px; border:1px solid var(--line); border-radius:10px; background:#fff; font-size:12px; letter-spacing:0; text-transform:none; }
.checkbox-control { display:flex; align-items:flex-start; gap:10px; color:var(--ink-2); font-size:12px; line-height:1.45; }
.inventory-filters .checkbox-control { align-items:center; min-height:44px; }
.inventory-filters [data-clear-filters] { min-height:44px; display:inline-flex; align-items:center; }
.checkbox-control input { width:18px; height:18px; accent-color:var(--accent-dark); flex:none; }
.results-toolbar { display:flex; justify-content:space-between; align-items:center; margin-bottom:24px; }
.results-toolbar p { margin:0; color:var(--ink); }
.results-toolbar label { grid-template-columns:auto 190px; align-items:center; }
.vehicle-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.vehicle-card { background:#fff; border:1px solid var(--line); border-radius:22px; overflow:hidden; transition:.35s var(--ease-premium); }
.vehicle-card:hover { transform:translateY(-5px); box-shadow:var(--shadow-md); }
.vehicle-card-media { position:relative; height:285px; background:var(--surface-soft); overflow:hidden; }
.vehicle-card-media > a { display:block; height:100%; }
.vehicle-card-media img { width:100%; height:100%; object-fit:cover; transition:transform .55s var(--ease-premium); }
.vehicle-card:hover .vehicle-card-media img { transform:scale(1.035); }
.vehicle-card-status { position:absolute; top:14px; left:14px; padding:8px 11px; border-radius:999px; background:rgba(255,255,255,.9); backdrop-filter:blur(10px); font-size:9px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; }
.status-reserved { color:#765313; background:#fff6d8; }
.status-coming-soon { color:#156681; background:#e5f7fc; }
.status-sold { color:#7d3333; background:#fbeaea; }
.vehicle-card-tools { position:absolute; top:12px; right:12px; display:flex; gap:6px; }
.vehicle-card-tools .icon-button { width:38px; height:38px; }
.vehicle-card-body { padding:25px 24px 23px; }
.vehicle-card-heading { display:flex; justify-content:space-between; gap:18px; align-items:start; }
.vehicle-make { margin:0 0 6px; color:var(--accent-dark); font-size:9px; font-weight:800; letter-spacing:.18em; text-transform:uppercase; }
.vehicle-card h3 { margin:0; font-size:23px; }
.vehicle-card h3 span { color:var(--muted); font-weight:450; }
.vehicle-price { color:var(--ink); font-size:16px; font-weight:750; white-space:nowrap; }
.vehicle-meta { display:flex; flex-wrap:wrap; gap:13px; margin:22px 0; padding:16px 0; border-block:1px solid var(--line); color:var(--muted); font-size:11px; }
.vehicle-meta span { display:flex; align-items:center; gap:6px; }
.vehicle-card-footer { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.vehicle-inspection { display:flex; align-items:center; gap:6px; color:var(--success); font-size:10px; font-weight:700; }
.vehicle-card-footer .text-link { font-size:11px; }
.empty-state { text-align:center; padding:90px 30px; background:#fff; border:1px dashed var(--line-dark); border-radius:24px; }
.empty-state h2 { font-size:44px; margin:18px 0 10px; }
.empty-state p { max-width:500px; margin:0 auto 25px; }
.empty-state > div { display:flex; justify-content:center; gap:10px; }
.compare-bar { position:fixed; z-index:800; left:50%; bottom:22px; transform:translateX(-50%); min-width:min(600px,calc(100% - 30px)); display:flex; align-items:center; justify-content:space-between; gap:25px; padding:12px 14px 12px 20px; background:rgba(17,26,32,.96); color:#fff; border-radius:999px; box-shadow:0 22px 60px rgba(0,0,0,.25); backdrop-filter:blur(16px); }
.compare-bar > div { display:flex; align-items:center; gap:12px; }
.compare-bar [data-compare-count] { width:36px; height:36px; display:grid; place-items:center; border-radius:50%; background:var(--accent); font-weight:800; }
.compare-table article { position:relative; }
.compare-remove { position:absolute; z-index:2; top:10px; right:10px; width:34px; height:34px; display:grid; place-items:center; border-radius:50%; background:rgba(255,255,255,.92); color:var(--ink); box-shadow:var(--shadow-sm); cursor:pointer; }
.compare-bar p { margin:0; display:grid; color:#fff; line-height:1.2; }
.compare-bar small { color:rgba(255,255,255,.56); }
.compare-table { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.compare-table article { padding:12px; border:1px solid var(--line); border-radius:16px; }
.compare-table img { width:100%; height:140px; object-fit:cover; border-radius:10px; }
.compare-table h3 { font-size:21px; margin:16px 0 7px; }
.compare-table dl div { display:flex; justify-content:space-between; gap:12px; padding:8px 0; border-bottom:1px solid var(--line); font-size:11px; }
.compare-table dt { color:var(--muted); }

/* Vehicle detail */
.vehicle-detail-hero { padding-top:48px; }
.vehicle-detail-grid { display:grid; grid-template-columns:minmax(0,1.35fr) minmax(400px,.65fr); gap:56px; align-items:start; }
.vehicle-main-image { height:610px; border-radius:24px; overflow:hidden; background:var(--surface-soft); }
.vehicle-main-image img { width:100%; height:100%; object-fit:cover; }
.vehicle-thumbnails { display:flex; gap:10px; margin-top:12px; }
.vehicle-thumbnails button { width:112px; height:72px; padding:3px; border-radius:10px; background:#fff; border:1px solid var(--line); cursor:pointer; }
.vehicle-thumbnails button.is-active { border-color:var(--accent); box-shadow:0 0 0 2px var(--accent-soft); }
.vehicle-thumbnails img { width:100%; height:100%; object-fit:cover; border-radius:7px; }
.vehicle-detail-copy { position:sticky; top:calc(var(--header-height) + 26px); }
.vehicle-detail-topline { display:flex; justify-content:space-between; align-items:center; margin-bottom:30px; color:var(--muted); font-size:10px; letter-spacing:.13em; text-transform:uppercase; }
.status-pill { padding:8px 12px; border-radius:999px; background:var(--accent-soft); color:var(--accent-dark); font-weight:800; }
.vehicle-detail-copy h1 { font-size:clamp(56px,5.5vw,84px); margin:0 0 22px; }
.vehicle-detail-copy h1 em { font-style:normal; color:var(--muted); font-weight:430; }
.vehicle-detail-price { color:var(--ink); font-size:31px; font-weight:760; margin-bottom:8px; }
.vehicle-finance-teaser { font-size:12px; }
.vehicle-key-specs { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin:28px 0; }
.vehicle-key-specs > div { display:flex; align-items:center; gap:12px; padding:14px; background:#fff; border:1px solid var(--line); border-radius:14px; }
.vehicle-key-specs span { display:grid; gap:3px; }
.vehicle-key-specs small { color:var(--muted); font-size:9px; text-transform:uppercase; letter-spacing:.1em; }
.vehicle-key-specs strong { font-size:12px; }
.vehicle-detail-actions { display:flex; gap:9px; flex-wrap:wrap; margin-bottom:28px; }
.vehicle-assurance { border-top:1px solid var(--line); }
.vehicle-assurance > div { display:flex; gap:13px; padding:18px 0; border-bottom:1px solid var(--line); }
.vehicle-assurance span { display:grid; gap:4px; }
.vehicle-assurance small { color:var(--muted); line-height:1.45; }
.vehicle-content { display:grid; grid-template-columns:minmax(0,1fr) 380px; gap:80px; align-items:start; }
.detail-section { padding:0 0 70px; margin-bottom:70px; border-bottom:1px solid var(--line); scroll-margin-top:calc(var(--header-height) + 16px); }
.detail-section h2 { margin-bottom:24px; }
.spec-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:0 42px; margin:0; }
.spec-grid div { display:flex; justify-content:space-between; gap:20px; padding:18px 0; border-bottom:1px solid var(--line); }
.spec-grid dt { color:var(--muted); }
.spec-grid dd { margin:0; font-weight:700; text-align:right; }
.feature-list { list-style:none; padding:0; display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.feature-list li { display:flex; align-items:center; gap:10px; padding:15px; background:#fff; border:1px solid var(--line); border-radius:12px; }
.feature-list .icon { color:var(--success); }
.section-copy { max-width:720px; }
.inspection-bars { display:grid; gap:18px; margin-top:36px; }
.inspection-bars > div { display:grid; gap:8px; }
.inspection-bars span { display:flex; justify-content:space-between; text-transform:capitalize; }
.inspection-bars small { color:var(--muted); }
.inspection-bars progress { appearance:none; width:100%; height:8px; border:0; border-radius:99px; overflow:hidden; background:var(--surface-soft); }
.inspection-bars progress::-webkit-progress-bar { background:var(--surface-soft); }
.inspection-bars progress::-webkit-progress-value { background:linear-gradient(90deg,var(--accent-dark),var(--accent)); border-radius:99px; }
.finance-card { position:sticky; top:calc(var(--header-height) + 26px); padding:30px; background:#fff; border:1px solid var(--line); border-radius:24px; box-shadow:var(--shadow-sm); }
.finance-card h2 { font-size:42px; }
.finance-card label { display:grid; gap:9px; margin:22px 0; color:var(--muted); font-size:11px; }
.finance-card input[type=range] { width:100%; accent-color:var(--accent-dark); }
.finance-card select { height:46px; border:1px solid var(--line); border-radius:10px; background:#fff; padding:0 12px; }
.finance-card output { justify-self:end; margin-top:-25px; color:var(--ink); font-weight:750; }
.finance-result { display:grid; gap:7px; padding:22px; margin:24px 0; background:var(--surface-dark); color:#fff; border-radius:16px; }
.finance-result span { color:rgba(255,255,255,.55); font-size:10px; text-transform:uppercase; letter-spacing:.12em; }
.finance-result strong { font-size:34px; }
.finance-result small { color:rgba(255,255,255,.58); line-height:1.45; }
.compact-grid { grid-template-columns:repeat(3,1fr); }
.vehicle-sticky-bar { display:none; }

/* Seller */
.sell-hero { padding:105px 0 85px; background:linear-gradient(155deg,#0f191f,#1e323d); color:#fff; overflow:hidden; position:relative; }
.sell-hero::after { content:""; position:absolute; width:760px; height:760px; right:-200px; top:-370px; border-radius:50%; border:1px solid rgba(255,255,255,.08); box-shadow:0 0 0 90px rgba(255,255,255,.015),0 0 0 180px rgba(255,255,255,.01); }
.sell-hero-grid { position:relative; z-index:2; display:grid; grid-template-columns:1fr .85fr; gap:100px; align-items:center; }
.sell-hero h1 { margin-bottom:25px; }
.sell-hero p { color:rgba(255,255,255,.65); max-width:650px; font-size:17px; }
.sell-hero-proof { display:flex; flex-wrap:wrap; gap:20px; margin-top:34px; color:rgba(255,255,255,.8); font-size:11px; font-weight:650; }
.sell-hero-proof span { display:flex; align-items:center; gap:8px; }
.market-visual { display:grid; place-items:center; }
.market-phone { width:min(100%,500px); padding:34px; border:1px solid rgba(255,255,255,.16); border-radius:30px; background:linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,255,255,.035)); backdrop-filter:blur(18px); box-shadow:0 35px 90px rgba(0,0,0,.28); transform:rotate(2deg); }
.market-phone > span { color:rgba(255,255,255,.5); font-size:9px; letter-spacing:.18em; }
.market-phone strong { display:block; margin:10px 0 5px; font-size:40px; }
.market-phone small { color:#8ed7ef; }
.market-phone svg { margin-top:28px; color:var(--accent); }
.seller-workspace { display:grid; grid-template-columns:330px minmax(0,1fr); gap:28px; align-items:start; }
.seller-progress-panel { position:sticky; top:calc(var(--header-height) + 24px); padding:28px; background:#fff; border:1px solid var(--line); border-radius:24px; box-shadow:var(--shadow-sm); }
.seller-progress-heading { display:flex; align-items:end; justify-content:space-between; gap:15px; }
.seller-progress-heading h2 { font-size:35px; margin:0; }
.seller-progress-heading > span { color:var(--accent-dark); font-size:20px; font-weight:760; }
.progress-track { height:6px; margin:22px 0 28px; border-radius:99px; background:var(--surface-soft); overflow:hidden; }
.progress-track span { display:block; height:100%; background:linear-gradient(90deg,var(--accent-dark),var(--accent)); transition:width .35s var(--ease-premium); }
.seller-steps { list-style:none; margin:0; padding:0; display:grid; }
.seller-steps li { position:relative; display:flex; gap:13px; padding:10px 0 20px; opacity:.46; }
.seller-steps li::after { content:""; position:absolute; left:16px; top:39px; bottom:0; width:1px; background:var(--line); }
.seller-steps li:last-child::after { display:none; }
.seller-steps li > span { width:34px; height:34px; display:grid; place-items:center; border-radius:50%; border:1px solid var(--line); font-size:9px; font-weight:800; }
.seller-steps li div { display:grid; gap:2px; }
.seller-steps small { color:var(--muted); }
.seller-steps li.is-active, .seller-steps li.is-complete { opacity:1; }
.seller-steps li.is-active > span { background:var(--ink); color:#fff; border-color:var(--ink); }
.seller-steps li.is-complete > span { background:var(--accent-soft); color:var(--accent-dark); border-color:var(--accent); }
.seller-confidence-card { margin-top:20px; padding:19px; border-radius:16px; background:var(--surface-soft); text-align:center; }
.seller-confidence-card > span { font-size:9px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; color:var(--muted); }
.confidence-ring { --confidence:28; width:90px; aspect-ratio:1; margin:14px auto; border-radius:50%; display:grid; place-items:center; background:conic-gradient(var(--accent) calc(var(--confidence)*1%),#dce3e7 0); position:relative; }
.confidence-ring::after { content:""; position:absolute; inset:8px; border-radius:50%; background:#f3f6f7; }
.confidence-ring strong { position:relative; z-index:1; font-size:20px; }
.seller-confidence-card small { color:var(--muted); line-height:1.45; }
.seller-form-card { min-height:610px; background:#fff; border:1px solid var(--line); border-radius:28px; box-shadow:var(--shadow-sm); padding:40px; }
.seller-form-head { display:flex; justify-content:space-between; gap:25px; align-items:start; padding-bottom:24px; border-bottom:1px solid var(--line); }
.seller-form-head h2 { font-size:clamp(37px,4vw,58px); margin:0; }
.save-state { display:flex; align-items:center; gap:6px; color:var(--success); font-size:10px; white-space:nowrap; }
.seller-form-card form { padding:32px 0 18px; }
.seller-form-actions { display:flex; justify-content:space-between; align-items:center; padding-top:22px; border-top:1px solid var(--line); }
.form-grid { display:grid; grid-template-columns:1fr 1fr; gap:22px; }
.form-stack { display:grid; gap:18px; }
.form-two { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.form-grid label, .form-stack label, .finance-form-grid label { display:grid; gap:8px; color:var(--ink-2); font-size:11px; font-weight:650; }
.form-grid input,.form-grid select,.form-stack input,.form-stack select,.form-stack textarea,.finance-form-grid input,.finance-form-grid select { width:100%; min-height:50px; padding:0 14px; border:1px solid var(--line); border-radius:11px; background:#fff; outline:0; transition:border-color .2s,box-shadow .2s; }
.form-stack textarea { padding-block:13px; resize:vertical; }
.form-grid input:focus,.form-grid select:focus,.form-stack input:focus,.form-stack select:focus,.form-stack textarea:focus { border-color:var(--accent); box-shadow:0 0 0 4px var(--accent-soft); }
.form-grid small[data-error], .form-stack small[data-error], small[data-error] { min-height:15px; color:var(--danger); font-weight:550; }
.has-error input,.has-error select { border-color:var(--danger); }
.inline-insight { display:flex; align-items:start; gap:12px; margin-top:25px; padding:17px; background:var(--accent-soft); border-radius:13px; color:var(--accent-dark); }
.inline-insight span { display:grid; gap:3px; font-size:12px; }
.inline-insight strong { color:var(--ink); }
.condition-group { display:grid; gap:28px; }
.condition-group fieldset { border:0; padding:0; margin:0; }
.condition-group legend { margin-bottom:13px; font-size:11px; font-weight:650; }
.choice-grid { display:grid; grid-template-columns:1fr 1fr; gap:11px; }
.choice-card { position:relative; display:flex; gap:12px; align-items:center; min-height:78px; padding:14px; border:1px solid var(--line); border-radius:13px; cursor:pointer; transition:.25s; }
.choice-card input { position:absolute; opacity:0; }
.choice-card.is-selected { border-color:var(--accent); background:var(--accent-soft); box-shadow:0 0 0 2px rgba(44,158,195,.12); }
.choice-icon { width:38px; height:38px; display:grid; place-items:center; border-radius:50%; background:#fff; }
.choice-card > span:last-child { display:grid; gap:3px; }
.choice-card small { color:var(--muted); }
.photo-dropzone { min-height:210px; display:grid; place-items:center; text-align:center; gap:7px; padding:28px; border:1px dashed #aab8c0; border-radius:18px; background:linear-gradient(145deg,#fbfcfc,#eef3f5); cursor:pointer; transition:.25s; }
.photo-dropzone input { position:absolute; width:1px; height:1px; opacity:0; }
.photo-dropzone.is-dragging { border-color:var(--accent); background:var(--accent-soft); transform:scale(.995); }
.photo-dropzone span,.photo-dropzone small { color:var(--muted); }
.photo-previews { display:grid; grid-template-columns:repeat(4,1fr); gap:10px; margin-top:16px; }
.photo-previews figure { position:relative; margin:0; height:128px; border-radius:12px; overflow:hidden; background:var(--surface-soft); }
.photo-previews img { width:100%; height:100%; object-fit:cover; }
.photo-previews button { position:absolute; top:7px; right:7px; width:44px; height:44px; display:grid; place-items:center; border-radius:50%; background:rgba(13,21,26,.8); color:#fff; cursor:pointer; }
.photo-previews figcaption { position:absolute; left:7px; bottom:7px; padding:5px 7px; border-radius:7px; background:rgba(13,21,26,.72); color:#fff; font-size:8px; }
.photo-empty { grid-column:1/-1; padding:18px; border:1px solid var(--line); border-radius:12px; text-align:center; font-size:12px; }
.photo-slot-progress { display:grid; grid-template-columns:repeat(4,1fr); gap:8px; margin-top:16px; }
.photo-slot-progress span { display:flex; align-items:center; gap:7px; min-height:38px; padding:8px 10px; border:1px solid var(--line); border-radius:10px; color:var(--muted); font-size:9px; }
.photo-slot-progress span.is-complete { border-color:rgba(23,147,104,.4); background:rgba(23,147,104,.07); color:var(--success); }
.evidence-boundary { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:18px; }
.evidence-boundary > div { display:grid; gap:5px; padding:16px; border:1px solid var(--line); border-radius:12px; background:#fff; }
.evidence-boundary strong { color:var(--accent-dark); font-size:9px; letter-spacing:.12em; text-transform:uppercase; }
.evidence-boundary span { color:var(--muted); font-size:11px; line-height:1.45; }
.photo-guidance { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; margin-top:20px; }
.photo-guidance > div { display:flex; gap:9px; padding:14px; border:1px solid var(--line); border-radius:12px; }
.photo-guidance .icon { color:var(--success); }
.photo-guidance span { display:grid; gap:3px; }
.photo-guidance small { color:var(--muted); line-height:1.35; }
.valuation-summary { display:grid; grid-template-columns:1.3fr .7fr .7fr; gap:10px; margin-bottom:22px; }
.valuation-summary > div { display:grid; gap:5px; padding:18px; background:var(--surface-soft); border-radius:12px; }
.valuation-summary span { color:var(--muted); font-size:9px; text-transform:uppercase; letter-spacing:.1em; }
.valuation-summary strong { font-size:13px; }
.consent { margin-top:18px; }
.seller-assurance { display:grid; grid-template-columns:repeat(3,1fr); gap:1px; margin-bottom:90px; background:var(--line); border:1px solid var(--line); border-radius:22px; overflow:hidden; }
.seller-assurance > div { background:#fff; padding:34px; }
.seller-assurance > div > span { color:var(--accent-dark); font-size:10px; letter-spacing:.2em; }
.seller-assurance h3 { margin:15px 0 10px; }
.seller-assurance p { font-size:13px; }
.valuation-result { display:grid; gap:24px; }
.valuation-result-hero { display:flex; justify-content:space-between; align-items:end; gap:40px; }
.valuation-result-hero h2 { margin-bottom:12px; }
.result-confidence { width:130px; aspect-ratio:1; display:grid; place-items:center; align-content:center; border-radius:50%; background:var(--accent-soft); border:1px solid var(--accent); }
.result-confidence span,.result-confidence small { color:var(--accent-dark); font-size:9px; text-transform:uppercase; letter-spacing:.12em; }
.result-confidence strong { font-size:30px; }
.market-value-main { padding:50px; text-align:center; background:var(--surface-dark); color:#fff; border-radius:28px; }
.market-value-main > span { color:rgba(255,255,255,.55); font-size:10px; letter-spacing:.17em; text-transform:uppercase; }
.market-value-main > strong { display:block; margin:9px 0; font-size:clamp(52px,7vw,92px); letter-spacing:-.065em; }
.market-value-main p { color:rgba(255,255,255,.65); }
.range-scale { position:relative; height:6px; max-width:740px; margin:35px auto 10px; border-radius:99px; background:linear-gradient(90deg,#52636d,var(--accent),#8ed7ef); }
.range-scale span,.range-scale i { position:absolute; top:50%; width:16px; height:16px; border-radius:50%; border:3px solid #fff; transform:translate(-50%,-50%); background:var(--surface-dark); }
.range-scale i { width:24px; height:24px; background:var(--accent); }
.range-labels { max-width:740px; margin:auto; display:flex; justify-content:space-between; color:rgba(255,255,255,.55); }
.valuation-bands { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.valuation-bands article { padding:28px; background:#fff; border:1px solid var(--line); border-radius:20px; display:grid; gap:8px; }
.valuation-bands article.is-primary { border-color:var(--accent); background:var(--accent-soft); }
.valuation-bands p { margin:0; font-size:11px; font-weight:750; color:var(--accent-dark); text-transform:uppercase; letter-spacing:.1em; }
.valuation-bands strong { font-size:27px; }
.valuation-bands span { color:var(--muted); font-size:11px; }
.valuation-detail-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.valuation-detail-grid > section { padding:32px; background:#fff; border:1px solid var(--line); border-radius:22px; }
.valuation-detail-grid h3 { font-size:32px; }
.factor-list,.comparable-list { display:grid; }
.factor,.comparable-list > div { display:flex; justify-content:space-between; gap:14px; padding:15px 0; border-bottom:1px solid var(--line); }
.factor > span { width:62px; font-weight:800; }
.factor-up > span { color:var(--success); }
.factor-down > span { color:var(--danger); }
.factor div,.comparable-list span { display:grid; gap:3px; }
.factor small,.comparable-list small { color:var(--muted); line-height:1.35; }
.comparable-list > div > span:last-child { text-align:right; }
.valuation-next-step { display:flex; align-items:center; justify-content:space-between; gap:30px; padding:32px; background:var(--accent-soft); border:1px solid var(--accent); border-radius:22px; }
.valuation-next-step > div { display:flex; align-items:center; gap:18px; }
.valuation-next-step h3 { margin:5px 0; }
.valuation-next-step small { color:var(--muted); }
.valuation-disclaimer { font-size:11px; }
.booking-summary { display:grid; gap:6px; padding:16px; background:var(--surface-soft); border-radius:12px; }

/* Finance */
.finance-hero-art { justify-self:end; width:340px; min-height:260px; padding:36px; display:grid; place-items:center; align-content:center; gap:12px; border-radius:32px; background:linear-gradient(145deg,#fff,#e9eff2); box-shadow:var(--shadow-md); transform:rotate(2deg); }
.finance-hero-art .icon { color:var(--accent); }
.finance-hero-art strong { font-size:22px; }
.finance-hero-art span { color:var(--muted); font-size:12px; }
.finance-workspace { display:grid; grid-template-columns:minmax(0,1fr) 390px; gap:26px; align-items:start; }
.finance-calculator,.finance-documents { padding:36px; background:#fff; border:1px solid var(--line); border-radius:24px; }
.preview-pill { padding:8px 11px; border-radius:999px; background:var(--accent-soft); color:var(--accent-dark); font-size:9px; text-transform:uppercase; letter-spacing:.1em; }
.finance-form-grid { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.finance-form-grid output { justify-self:end; margin-top:-27px; }
.money-input { display:grid; grid-template-columns:auto 1fr; align-items:center; border:1px solid var(--line); border-radius:11px; overflow:hidden; }
.money-input b { padding:0 14px; color:var(--muted); font-size:11px; }
.money-input input { border:0; border-left:1px solid var(--line); border-radius:0; }
.finance-summary { display:grid; grid-template-columns:repeat(4,1fr); gap:10px; margin:28px 0; }
.finance-summary > div { padding:20px; background:var(--surface-soft); border-radius:13px; display:grid; gap:7px; }
.finance-summary span { color:var(--muted); font-size:9px; text-transform:uppercase; letter-spacing:.1em; }
.finance-summary strong { font-size:20px; }
.form-disclaimer,.page-disclaimer { font-size:10px; color:var(--muted-2); margin-top:22px; }
.finance-documents { position:sticky; top:calc(var(--header-height) + 24px); }
.finance-documents h2 { font-size:38px; }
.finance-documents ul { list-style:none; padding:0; margin:26px 0; display:grid; gap:11px; }
.finance-documents li { display:flex; align-items:center; gap:10px; padding:14px; background:var(--surface-soft); border-radius:11px; }
.finance-note { display:flex; gap:12px; padding:16px; background:var(--accent-soft); border-radius:12px; }
.finance-note p { margin:0; display:grid; gap:5px; font-size:12px; }
.benefit-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.benefit-grid article { padding:30px; background:#fff; border:1px solid var(--line); border-radius:20px; }
.benefit-grid .icon { color:var(--accent-dark); }
.benefit-grid h3 { margin:20px 0 10px; }

/* About */
.about-hero,.contact-hero { padding:120px 0 90px; background:linear-gradient(145deg,#fbfcfc,#e9eff2); }
.about-hero h1,.contact-hero h1 { max-width:1050px; }
.about-hero p,.contact-hero p { max-width:720px; font-size:18px; }
.about-manifesto { display:grid; grid-template-columns:.8fr 1.2fr; gap:120px; }
.about-manifesto p { font-size:18px; }
.proof-numbers { display:grid; grid-template-columns:repeat(4,1fr); background:var(--surface-dark); color:#fff; border-radius:26px; overflow:hidden; }
.proof-numbers article { padding:44px 32px; border-right:1px solid rgba(255,255,255,.12); }
.proof-numbers article:last-child { border-right:0; }
.proof-numbers strong { display:block; font-size:50px; letter-spacing:-.06em; }
.proof-numbers span { color:rgba(255,255,255,.6); }
.about-values { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.about-values article { padding:34px; background:#fff; border:1px solid var(--line); border-radius:22px; }
.about-values .icon { color:var(--accent); }
.about-values .eyebrow { margin-top:30px; }
.about-closing { padding:100px 0; background:linear-gradient(145deg,#eaf2f5,#fff); }
.about-closing > div { display:flex; justify-content:space-between; align-items:end; gap:50px; }
.about-closing h2 { margin:0; }
.about-closing > div > div { display:flex; gap:10px; }

/* Contact */
.contact-grid { display:grid; grid-template-columns:.8fr 1.2fr; gap:20px; }
.contact-cards { display:grid; gap:12px; }
.contact-cards > a { display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:18px; padding:24px; background:#fff; border:1px solid var(--line); border-radius:18px; transition:.25s var(--ease-premium); }
.contact-cards > a:hover { transform:translateX(5px); border-color:var(--accent); }
.contact-cards span { display:grid; gap:3px; }
.contact-cards p { margin:0; color:var(--accent-dark); font-size:9px; text-transform:uppercase; letter-spacing:.12em; }
.contact-cards small { color:var(--muted); }
.showroom-card { overflow:hidden; background:#fff; border:1px solid var(--line); border-radius:24px; }
.showroom-directions { min-height:360px; padding:clamp(30px,4vw,54px); background:radial-gradient(circle at 88% 18%,rgba(44,158,195,.22),transparent 34%),linear-gradient(145deg,#16232b,#0d151a); color:#fff; }
.showroom-location-icon { width:58px; height:58px; display:grid; place-items:center; margin-bottom:44px; border:1px solid rgba(255,255,255,.18); border-radius:50%; color:#8bd6ef; }
.showroom-directions .eyebrow { color:#8bd6ef; }
.showroom-directions h2 { margin-bottom:20px; font-size:clamp(42px,4.5vw,66px); }
.showroom-directions > p:not(.eyebrow) { max-width:520px; color:rgba(255,255,255,.68); }
.showroom-address { display:flex; align-items:flex-start; gap:12px; margin-top:30px; color:#fff; line-height:1.55; }
.showroom-actions { padding:30px; }
.showroom-actions h3 { margin-bottom:10px; font-size:30px; }
.showroom-actions > div { display:flex; flex-wrap:wrap; gap:10px; margin-top:22px; }
.contact-form-section { display:grid; grid-template-columns:.7fr 1.3fr; gap:80px; align-items:start; }
.contact-form-section form { padding:32px; background:#fff; border:1px solid var(--line); border-radius:22px; }

/* Modal, toast, contact rail */
.modal-backdrop { position:fixed; inset:0; z-index:5000; display:grid; place-items:center; padding:22px; background:rgba(5,12,16,.62); backdrop-filter:blur(12px); opacity:0; transition:opacity .22s; }
.modal-backdrop.is-open { opacity:1; }
.modal { position:relative; width:min(620px,100%); max-height:min(90vh,900px); overflow:auto; padding:36px; background:#fff; border-radius:26px; box-shadow:0 35px 120px rgba(0,0,0,.3); transform:translateY(15px) scale(.985); transition:transform .25s var(--ease-premium); }
.modal-backdrop.is-open .modal { transform:none; }
.modal-wide { width:min(1000px,100%); }
.modal-close { position:absolute; right:18px; top:18px; }
.modal h2 { font-size:43px; margin-right:40px; }
.modal-body { margin-top:23px; }
.modal-actions { display:flex; justify-content:flex-end; gap:10px; margin-top:28px; padding-top:20px; border-top:1px solid var(--line); }
.toast-region { position:fixed; z-index:6000; right:20px; bottom:20px; display:grid; gap:9px; }
.toast { display:flex; align-items:center; gap:10px; max-width:400px; padding:14px 17px; background:var(--surface-dark); color:#fff; border-radius:12px; box-shadow:var(--shadow-md); transform:translateY(15px); opacity:0; transition:.25s; }
.toast.is-visible { transform:none; opacity:1; }
.toast-success .icon { color:#79e6bf; }
.contact-rail { position:fixed; z-index:700; right:18px; bottom:18px; display:grid; justify-items:end; gap:8px; }
.contact-rail-toggle { display:flex; align-items:center; gap:9px; min-height:48px; padding:0 18px; border-radius:999px; background:var(--ink); color:#fff; box-shadow:0 15px 35px rgba(0,0,0,.2); cursor:pointer; }
.contact-rail-menu { width:245px; padding:8px; background:#fff; border:1px solid var(--line); border-radius:18px; box-shadow:var(--shadow-md); transform:translateY(10px); opacity:0; transition:.25s; }
.contact-rail-menu.is-open { transform:none; opacity:1; }
.contact-rail-menu a { display:flex; align-items:center; gap:12px; padding:13px; border-radius:12px; }
.contact-rail-menu a:hover { background:var(--surface-soft); }
.contact-rail-menu span { display:grid; gap:2px; }
.contact-rail-menu small { color:var(--muted); }

/* Footer and empty */
.site-footer { padding:68px 0 24px; background:#fff; border-top:1px solid var(--line); }
.footer-grid { display:grid; grid-template-columns:1.45fr .6fr 1fr .8fr; gap:55px; }
.footer-logo { width:190px; margin-bottom:18px; }
.footer-grid p { max-width:360px; font-size:12px; }
.footer-disclaimer { color:var(--muted-2); font-size:9px !important; }
.footer-title { color:var(--ink) !important; font-size:10px !important; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
.footer-grid > div:not(:first-child) { display:grid; align-content:start; gap:10px; }
.footer-grid a { color:var(--muted); font-size:12px; }
.footer-grid a:hover { color:var(--ink); }
.footer-action { display:flex; align-items:center; gap:8px; }
.footer-bottom { display:flex; justify-content:space-between; gap:30px; margin-top:52px; padding-top:20px; border-top:1px solid var(--line); color:var(--muted-2); font-size:9px; }
.empty-page { min-height:65vh; display:grid; place-items:start; align-content:center; }
.empty-page h1 { max-width:900px; }
.empty-page p { max-width:600px; font-size:18px; }
.empty-page > div { display:flex; gap:10px; }

/* Responsive */
@media (max-width: 1180px) {
  :root { --header-height:78px; }
  .container-wide,.container { width:min(calc(100% - 40px),var(--container-wide)); }
  .header-inner { grid-template-columns:210px 1fr auto; gap:16px; }
  .brand-link img { width:180px; }
  .desktop-nav { gap:22px; }
  .header-phone span { display:none; }
  .hero-layout { grid-template-columns:minmax(350px,.8fr) minmax(520px,1.2fr); }
  .hero-copy h1 { font-size:clamp(62px,7vw,88px); }
  .journey-panel { padding-right:38%; }
  .vehicle-grid { grid-template-columns:repeat(2,1fr); }
  .featured-rail { grid-template-columns:repeat(2,1fr); }
  .inventory-filters { grid-template-columns:repeat(3,1fr) auto; }
  .vehicle-detail-grid { grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr); gap:32px; }
  .vehicle-main-image { height:500px; }
  .vehicle-content { grid-template-columns:minmax(0,1fr) 340px; gap:40px; }
  .vehicle-cinematic-grid { grid-template-columns:minmax(170px,.5fr) minmax(450px,1.35fr) minmax(220px,.65fr); }
  .vehicle-detail-stage { margin-inline:-12%; }
}

@media (max-width: 900px) {
  .desktop-nav,.header-phone { display:none; }
  .header-inner { grid-template-columns:1fr auto; }
  .mobile-menu-button { display:grid; }
  .home-hero { min-height:980px; }
  .hero-layout { min-height:900px; grid-template-columns:1fr; align-content:start; padding-top:60px; }
  .hero-copy { max-width:720px; }
  .hero-copy h1 { font-size:78px; }
  .skyline { left:0; width:100%; bottom:15%; }
  .hero-bottom { bottom:18px; }
  .journey-section { grid-template-columns:1fr; margin-top:0; }
  .trust-ribbon { grid-template-columns:1fr 1fr; gap:0; }
  .trust-ribbon > div { padding:18px; border-right:0; border-bottom:1px solid var(--line); }
  .trust-ribbon > div:nth-last-child(-n+2) { border-bottom:0; }
  .closing-cta-inner,.about-closing > div { align-items:start; flex-direction:column; }
  .page-hero-grid,.sell-hero-grid { grid-template-columns:1fr; gap:40px; }
  .page-hero-proof,.finance-hero-art { justify-self:start; }
  .inventory-filters { display:none; grid-template-columns:1fr 1fr; }
  .inventory-filters.is-mobile-open { display:grid; }
  .mobile-filter-open { display:inline-flex; }
  .vehicle-detail-grid { grid-template-columns:1fr; }
  .vehicle-cinematic-hero { min-height:940px; }
  .vehicle-cinematic-grid { grid-template-columns:1fr 1fr; grid-template-areas:"editorial data" "stage stage"; min-height:820px; align-items:start; }
  .vehicle-editorial { grid-area:editorial; padding-top:55px; }
  .vehicle-minimal-data { grid-area:data; }
  .vehicle-detail-stage { grid-area:stage; min-height:520px; margin:-80px -5% 0; }
  .vehicle-detail-copy { position:static; }
  .vehicle-content { grid-template-columns:1fr; }
  .finance-card { position:static; }
  .seller-workspace { grid-template-columns:1fr; }
  .seller-progress-panel { position:static; }
  .seller-steps { grid-template-columns:repeat(4,1fr); }
  .seller-steps li { display:grid; justify-items:center; text-align:center; }
  .seller-steps li::after { left:60%; right:-40%; top:27px; width:auto; height:1px; }
  .seller-confidence-card { display:none; }
  .finance-workspace { grid-template-columns:1fr; }
  .finance-documents { position:static; }
  .about-manifesto,.contact-grid,.contact-form-section { grid-template-columns:1fr; gap:40px; }
  .proof-numbers { grid-template-columns:1fr 1fr; }
  .proof-numbers article:nth-child(2) { border-right:0; }
  .proof-numbers article:nth-child(-n+2) { border-bottom:1px solid rgba(255,255,255,.12); }
  .about-values { grid-template-columns:1fr; }
  .footer-grid { grid-template-columns:1.2fr .8fr; }
}

@media (max-width: 640px) {
  :root { --header-height:70px; }
  .container-wide,.container { width:min(calc(100% - 28px),var(--container-wide)); }
  .site-header { height:var(--header-height); }
  .brand-link img { width:157px; }
  .header-actions { gap:8px; }
  .header-actions .button { width:42px; height:42px; min-height:42px; padding:0; }
  .header-actions .button span { display:none; }
  .home-hero { min-height:850px; }
  .hero-layout { min-height:780px; padding-top:36px; padding-bottom:70px; }
  .hero-copy { text-align:left; padding-top:0; }
  .hero-copy .eyebrow { margin-bottom:12px; }
  .hero-copy h1 { font-size:clamp(52px,16vw,70px); margin-bottom:16px; }
  .hero-copy h1 em { display:block; }
  .hero-lead { font-size:15px; margin-bottom:17px; }
  .hero-trust-mini { gap:10px 14px; margin-bottom:18px; }
  .hero-trust-mini span:nth-child(3) { display:none; }
  .hero-actions { display:grid; grid-template-columns:1fr 1fr; }
  .hero-actions .button { padding:0 15px; font-size:11px; }
  .hero-note { display:none; }
  .skyline { height:31%; bottom:18%; }
  .hero-bottom { display:none; }
  .journey-section { padding-block:34px 65px; }
  .journey-panel { min-height:370px; padding:30px 28px 210px; }
  .journey-panel::after { background:linear-gradient(180deg,#fff 0 50%,rgba(255,255,255,.7) 68%,transparent 100%); }
  .journey-panel img,.valuation-teaser { top:auto; left:0; right:0; bottom:0; width:100%; height:195px; }
  .journey-sell::after { background:linear-gradient(180deg,var(--surface-dark) 0 50%,rgba(17,26,32,.82) 68%,transparent 100%); }
  .valuation-teaser { padding:32px; }
  .valuation-teaser svg { display:none; }
  .trust-ribbon { grid-template-columns:1fr; padding:12px 18px; }
  .trust-ribbon > div { border-bottom:1px solid var(--line) !important; }
  .trust-ribbon > div:last-child { border-bottom:0 !important; }
  .section-heading { align-items:start; flex-direction:column; }
  .featured-rail,.vehicle-grid,.compact-grid { grid-template-columns:1fr; }
  .featured-car-image { height:240px; }
  .closing-cta-inner > div,.about-closing > div > div { flex-direction:column; width:100%; }
  .closing-cta .button,.about-closing .button { width:100%; }
  .page-hero,.about-hero,.contact-hero { padding:60px 0; }
  .page-hero h1,.about-hero h1,.contact-hero h1 { font-size:52px; }
  .page-hero-proof { width:100%; min-width:0; }
  .inventory-command { margin-top:-20px; padding:12px; }
  .inventory-searchbar { grid-template-columns:1fr 1fr; }
  .inventory-searchbar .search-field { grid-column:1/-1; }
  .inventory-searchbar [data-save-search] { grid-column:1/-1; }
  .inventory-filters.is-mobile-open { grid-template-columns:1fr; }
  .results-toolbar { align-items:flex-start; gap:12px; }
  .results-toolbar label { grid-template-columns:1fr; }
  .vehicle-card-media { height:245px; }
  .empty-state > div { flex-direction:column; }
  .compare-bar { border-radius:20px; }
  .compare-table { grid-template-columns:1fr; }
  .vehicle-detail-hero { padding-top:25px; }
  .vehicle-cinematic-hero { min-height:850px; padding-top:18px; }
  .vehicle-cinematic-grid { display:flex; flex-direction:column; min-height:760px; gap:0; }
  .vehicle-editorial { width:100%; padding-top:28px; }
  .vehicle-editorial h1 { margin:8px 0 10px; font-size:clamp(44px,14vw,62px); }
  .vehicle-minimal-data { width:100%; order:3; gap:12px; padding:4px 0 20px; }
  .vehicle-detail-price { font-size:34px; }
  .vehicle-minimal-data dl { grid-template-columns:1fr 1fr; }
  .vehicle-minimal-data dl div { display:grid; gap:3px; padding:9px 8px 9px 0; }
  .vehicle-minimal-data dd { text-align:left; }
  .vehicle-detail-stage { width:100%; min-height:345px; margin:-25px 0 -38px; order:2; }
  .vehicle-stage-note { display:none; }
  .vehicle-gallery-strip { padding-top:28px; }
  .vehicle-main-image { height:330px; border-radius:16px; }
  .vehicle-detail-copy h1 { font-size:52px; }
  .vehicle-key-specs { grid-template-columns:1fr 1fr; }
  .vehicle-content { padding-top:46px; }
  .detail-section { padding:0 0 46px; margin-bottom:46px; }
  .feature-list,.spec-grid { grid-template-columns:1fr; }
  .vehicle-sticky-bar { display:flex; position:fixed; z-index:600; left:10px; right:10px; bottom:10px; align-items:center; justify-content:space-between; gap:12px; padding:10px 10px 10px 16px; border-radius:18px; background:rgba(17,26,32,.95); color:#fff; box-shadow:0 18px 45px rgba(0,0,0,.25); }
  .vehicle-sticky-bar > div { display:grid; }
  .vehicle-sticky-bar > div { min-width:0; }
  .vehicle-sticky-bar span { color:rgba(255,255,255,.55); font-size:9px; }
  .vehicle-sticky-bar strong { overflow:hidden; font-size:11px; text-overflow:ellipsis; white-space:nowrap; }
  .vehicle-sticky-bar .button { flex:none; min-width:104px; padding-inline:14px; }
  #app-outlet:has(.vehicle-sticky-bar) { padding-bottom:96px; }
  .sell-hero { padding:70px 0 55px; }
  .sell-hero h1 { font-size:52px; }
  .market-phone { padding:23px; }
  .market-phone { transform:none; }
  .market-phone strong { font-size:28px; }
  .seller-workspace { padding-block:36px; }
  .seller-progress-panel { padding:20px 15px; }
  .seller-progress-heading { display:none; }
  .seller-steps li div { display:none; }
  .seller-steps li { padding:4px; }
  .seller-steps li::after { top:21px; }
  .seller-form-card { padding:24px 18px; min-height:0; }
  .seller-form-head { display:block; }
  .save-state { margin-top:10px; }
  .form-grid,.form-two,.choice-grid { grid-template-columns:1fr; }
  .photo-previews { grid-template-columns:1fr 1fr; }
  .photo-slot-progress { grid-template-columns:1fr 1fr; }
  .evidence-boundary { grid-template-columns:1fr; }
  .photo-guidance { grid-template-columns:1fr; }
  .valuation-summary { grid-template-columns:1fr; }
  .seller-assurance { grid-template-columns:1fr; }
  .valuation-result-hero { align-items:start; flex-direction:column; }
  .result-confidence { width:105px; }
  .market-value-main { padding:34px 18px; }
  .market-value-main > strong { font-size:48px; }
  .valuation-bands,.valuation-detail-grid { grid-template-columns:1fr; }
  .valuation-next-step { align-items:flex-start; flex-direction:column; }
  .valuation-next-step > div:last-child { width:100%; flex-direction:column; }
  .valuation-next-step .button { width:100%; }
  .finance-hero-art { width:100%; }
  .finance-calculator,.finance-documents { padding:24px 18px; }
  .finance-form-grid,.finance-summary,.benefit-grid { grid-template-columns:1fr; }
  .proof-numbers { grid-template-columns:1fr; }
  .proof-numbers article { border-right:0; border-bottom:1px solid rgba(255,255,255,.12); }
  .proof-numbers article:last-child { border-bottom:0; }
  .about-manifesto { padding-block:65px; }
  .contact-form-section form { padding:22px 17px; }
  .modal { padding:28px 18px 22px; border-radius:20px; }
  .modal h2 { font-size:34px; }
  .modal-actions { flex-direction:column-reverse; }
  .modal-actions .button { width:100%; }
  .contact-rail { right:10px; bottom:10px; }
  .contact-rail-toggle span { display:none; }
  .footer-grid { grid-template-columns:1fr; }
  .footer-bottom { flex-direction:column; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior:auto; }
  *,*::before,*::after { animation-duration:.001ms !important; animation-iteration-count:1 !important; transition-duration:.001ms !important; }
  .reveal { opacity:1; transform:none; }
  .vehicle-reveal { animation:none !important; opacity:1; transform:none; }
}
/* Final visual corrections */
.valuation-teaser > * { position: relative; z-index: 3; }
.journey-panel::after { z-index: 1; }
.journey-panel > *:not(img,.valuation-teaser) { z-index: 2; }
/* CinematicVehicleStage: fixed studio, independent type/shadow/vehicle layers */
.cinematic-stage { position:relative; width:100%; height:100%; min-height:520px; isolation:isolate; perspective:1500px; }
.cinematic-stage-atmosphere { position:absolute; z-index:0; left:12%; right:2%; bottom:8%; height:38%; border-radius:50%; background:radial-gradient(ellipse,rgba(30,62,76,.11),rgba(35,72,88,.025) 52%,transparent 74%); filter:blur(24px); pointer-events:none; }
.cinematic-vehicle-typography { position:absolute; z-index:1; inset:13% 0 auto; transform:translate(var(--type-x),var(--type-y)) scale(var(--type-scale)); transform-origin:center; display:grid; justify-items:center; color:rgba(13,30,38,.14); font-family:var(--font-display); font-size:clamp(76px,8vw,138px); font-weight:780; letter-spacing:-.075em; line-height:.7; text-transform:uppercase; opacity:0; pointer-events:none; }
.cinematic-vehicle-typography span,.cinematic-vehicle-typography strong { display:block; white-space:nowrap; font:inherit; }
.cinematic-vehicle-typography strong { color:rgba(31,147,185,.2); }
.cinematic-stage-slot { position:absolute; z-index:2; inset:0; display:grid; place-items:center; overflow:visible; pointer-events:none; }
.cinematic-vehicle-shadow { position:absolute; z-index:2; left:50%; top:var(--shadow-y); width:var(--shadow-width); height:8%; transform:translateX(-50%); border-radius:50%; background:radial-gradient(ellipse,rgba(3,11,15,var(--shadow-opacity)),rgba(6,15,20,.09) 54%,transparent 76%); filter:blur(var(--shadow-blur)); transform-origin:center; }
.cinematic-vehicle { position:absolute; z-index:3; inset:0; display:grid; place-items:center; transform-style:preserve-3d; }
.cinematic-vehicle-travel { position:absolute; inset:0; display:grid; place-items:center; transform-style:preserve-3d; will-change:transform; }
.cinematic-vehicle-shell { position:relative; width:min(100%,980px); aspect-ratio:var(--vehicle-aspect,1.5); display:grid; place-items:center; }
.cinematic-vehicle-body-motion { position:absolute; z-index:3; inset:0; display:grid; place-items:center; will-change:transform; }
.cinematic-vehicle-body { display:block; width:100%; height:100%; object-fit:contain; object-position:center; user-select:none; filter:drop-shadow(0 20px 18px rgba(9,20,26,.13)); }
.cinematic-wheel-mount { position:absolute; z-index:2; left:var(--wheel-x); top:var(--wheel-y); width:var(--wheel-size); aspect-ratio:1; transform:translate(-50%,-50%) scaleX(var(--wheel-perspective-x,1)); transform-origin:center; }
.cinematic-wheel { display:block; width:100%; height:100%; object-fit:contain; transform-origin:50% 50%; will-change:transform; filter:drop-shadow(0 5px 5px rgba(3,8,10,.16)); }
.cinematic-vehicle-reflection { position:absolute; z-index:1; left:50%; top:var(--reflection-y); width:min(var(--reflection-width),980px); aspect-ratio:var(--vehicle-aspect,1.5); overflow:hidden; transform:translateX(-50%) scaleY(-.18); transform-origin:center top; opacity:var(--reflection-opacity); filter:blur(var(--reflection-blur)); -webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,.58),transparent 72%); mask-image:linear-gradient(to bottom,rgba(0,0,0,.58),transparent 72%); pointer-events:none; }
.cinematic-vehicle-reflection img { display:block; width:100%; height:100%; object-fit:contain; }
.cinematic-stage-controls { position:absolute; z-index:6; right:3%; bottom:1%; display:flex; align-items:center; gap:18px; }
.cinematic-stage-controls > button { display:flex; align-items:center; gap:7px; padding:8px; background:transparent; color:var(--muted); font-size:9px; font-weight:800; letter-spacing:.13em; text-transform:uppercase; cursor:pointer; }
.cinematic-stage-indicators { display:flex; gap:6px; }
.cinematic-stage-indicators button { position:relative; width:40px; height:34px; background:transparent; color:var(--muted-2); font-size:10px; font-weight:760; cursor:pointer; }
.cinematic-stage-indicators button::after { content:""; position:absolute; left:5px; right:5px; bottom:1px; height:2px; background:var(--line); }
.cinematic-stage-indicators button[aria-current="true"] { color:var(--ink); }
.cinematic-stage-indicators button[aria-current="true"]::after { background:var(--accent); }
.cinematic-vehicle.is-asset-error::after { content:"Approved cinematic asset unavailable"; display:grid; place-items:center; width:60%; min-height:180px; border:1px solid var(--line); border-radius:22px; background:rgba(255,255,255,.88); color:var(--muted); font-size:11px; }
.cinematic-vehicle.is-asset-error .cinematic-vehicle-shell { display:none; }
.hero-stage-mount .cinematic-stage { height:min(70vh,690px); min-height:530px; }
.vehicle-detail-stage .cinematic-stage { min-height:600px; }
.vehicle-detail-stage .cinematic-vehicle-shell { width:min(105%,1020px); }
.vehicle-detail-stage .cinematic-stage-controls { right:8%; bottom:6%; }
.vehicle-gallery-intro { width:100%; margin:0; display:grid; align-content:center; gap:10px; }
.vehicle-gallery-intro img { width:100%; max-height:540px; object-fit:contain; background:#fff; }
.vehicle-gallery-intro figcaption { color:var(--muted-2); font-size:9px; text-align:center; }

@media (max-width: 900px) {
  .hero-stage-mount .cinematic-stage { height:500px; min-height:500px; }
  .cinematic-vehicle-typography { top:14%; font-size:clamp(66px,13vw,108px); }
  .cinematic-vehicle-shell { width:min(96%,900px); }
}

@media (max-width: 640px) {
  .hero-stage-mount .cinematic-stage { height:370px; min-height:370px; }
  .cinematic-vehicle-typography { top:14%; font-size:clamp(48px,16vw,70px); line-height:.74; }
  .cinematic-vehicle-shell { width:96%; }
  .cinematic-stage-controls { right:5%; bottom:-1%; }
  .cinematic-stage-controls > button { display:none; }
  .cinematic-stage-indicators button { width:34px; }
  .vehicle-detail-stage:has(.vehicle-gallery-intro) { min-height:315px; margin:0; }
  .vehicle-gallery-intro img { max-height:300px; }
}

@media (prefers-reduced-motion: reduce) {
  .cinematic-stage * { animation:none !important; transition:none !important; }
}

/* Production-candidate responsive system */
button,input,select,textarea,.text-link,.text-button,.desktop-nav a,.mobile-menu a { min-height:var(--touch-target); }
input,select,textarea { max-width:100%; }
.page-hero,.about-hero,.contact-hero { padding-block:clamp(58px,7vw,92px); }
.page-hero-compact { padding-bottom:clamp(64px,7vw,88px); }
.page-hero h1,.about-hero h1,.contact-hero h1 { margin-bottom:clamp(16px,2vw,24px); }

.cinematic-stage { --stage-blur-scale:1; contain:layout paint style; }
.cinematic-vehicle-shell { width:min(var(--stage-vehicle-max,96%),1040px); }
.cinematic-vehicle-reflection { filter:blur(calc(var(--reflection-blur) * var(--stage-blur-scale))); }
.cinematic-stage[data-reflection="false"] .cinematic-vehicle-reflection { display:none; }
.cinematic-stage-slot { inset:4% 1% 7%; }
.cinematic-stage-controls > button,.cinematic-stage-indicators button { min-width:var(--touch-target); min-height:var(--touch-target); }

.presentation-home { min-height:max(760px,100svh); }
.presentation-detail { min-height:clamp(720px,84svh,820px); }
.presentation-layout { grid-template-columns:minmax(320px,.76fr) minmax(560px,1.38fr) minmax(180px,.38fr); gap:clamp(12px,1.5vw,24px); padding-block:clamp(50px,6vh,78px); }
.presentation-home .presentation-layout { min-height:max(760px,100svh); }
.presentation-detail .presentation-layout { min-height:clamp(650px,76svh,730px); }
.presentation-visual { min-height:clamp(520px,64vh,660px); margin-inline:-8%; }
.presentation-stage .cinematic-vehicle-shell { width:min(var(--stage-vehicle-max,96%),1040px); }
.presentation-stage .cinematic-vehicle-typography { font-size:clamp(68px,7vw,122px); }
.presentation-data { max-width:290px; }
.journey-section { margin-top:-38px; }
.featured-car-image,.vehicle-card-media { aspect-ratio:var(--media-aspect,1.607); height:auto; }
.featured-car-image img,.vehicle-card-media img { width:100%; height:100%; object-fit:var(--media-fit,cover); object-position:var(--media-x,50%) var(--media-y,50%); }
.vehicle-card-media a { display:block; width:100%; height:100%; }
.vehicle-card-body { min-width:0; }
.vehicle-card-heading h3,.featured-car h3 { text-wrap:balance; }

.compare-bar { bottom:var(--floating-bottom); }
.contact-rail { right:var(--floating-edge); bottom:var(--floating-bottom); }
body:has(.vehicle-sticky-bar) .contact-rail { bottom:calc(var(--floating-bottom) + 76px + var(--floating-stack-gap)); }
body:has(.compare-bar:not([hidden])) .contact-rail { bottom:calc(var(--floating-bottom) + 78px + var(--floating-stack-gap)); }
.vehicle-sticky-bar { bottom:var(--floating-bottom); left:max(10px,var(--safe-left)); right:max(10px,var(--safe-right)); }
.toast-region { right:var(--floating-edge); bottom:calc(var(--floating-bottom) + 62px); }

.inventory-filter-sheet { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.inventory-filter-sheet label:not(.checkbox-control) { display:grid; gap:8px; color:var(--muted); font-size:10px; font-weight:750; letter-spacing:.12em; text-transform:uppercase; }
.inventory-filter-sheet select { min-height:48px; padding-inline:12px; border:1px solid var(--line); border-radius:12px; background:#fff; font-size:14px; letter-spacing:0; text-transform:none; }
.modal-filter-sheet { width:min(680px,100%); }

.seller-progress-panel { top:calc(var(--header-height) + 18px); }
.seller-form-card,.finance-calculator,.finance-documents { box-shadow:0 20px 56px rgba(20,35,44,.075); }
.seller-error-summary { margin-bottom:20px; padding:16px 18px; border:1px solid rgba(183,66,66,.28); border-radius:14px; background:#fff6f6; color:#7c2828; }
.seller-error-summary strong { display:block; margin-bottom:7px; }
.seller-error-summary ul { margin:0; padding-left:20px; font-size:12px; line-height:1.6; }
.seller-error-summary:focus { outline:3px solid rgba(183,66,66,.18); outline-offset:3px; }
.finance-summary > div:first-child { background:var(--surface-dark); color:#fff; }
.finance-summary > div:first-child span { color:rgba(255,255,255,.64); }
.finance-summary > div:first-child strong { font-size:clamp(24px,2.4vw,34px); }
.about-manifesto { gap:clamp(48px,8vw,110px); }
.about-values article { min-height:290px; }

.journey-section,.trust-ribbon,.featured-section,.vehicle-gallery-strip,.vehicle-content,.related-section,.seller-assurance,.benefit-grid,.about-values,.contact-form-section { content-visibility:auto; contain-intrinsic-size:auto 720px; }

@media (min-width:1024px) and (max-width:1279px) {
  :root { --gutter:clamp(24px,3vw,40px); }
  .presentation-home,.presentation-detail { min-height:920px; }
  .presentation-layout,.presentation-detail .presentation-layout { min-height:850px; grid-template-columns:1fr 1fr; grid-template-areas:"editorial data" "visual visual"; align-content:start; padding-top:70px; }
  .presentation-home .presentation-layout { grid-template-areas:"editorial editorial" "visual visual"; }
  .presentation-editorial { grid-area:editorial; max-width:720px; }
  .presentation-data { grid-area:data; justify-self:end; width:min(100%,320px); }
  .presentation-home-status { display:none; }
  .presentation-visual { grid-area:visual; width:100%; min-height:520px; margin:-42px 0 0; }
  .journey-panel { padding-right:40%; }
  .inventory-filters { grid-template-columns:repeat(3,1fr) auto; }
}

@media (min-width:768px) and (max-width:1023px) {
  :root { --header-height:78px; --gutter:24px; }
  .presentation-home,.presentation-detail { min-height:auto; }
  .presentation-layout,.presentation-detail .presentation-layout { min-height:0; grid-template-columns:1fr; grid-template-areas:"editorial" "visual" "data"; gap:0; padding:64px 0 48px; }
  .presentation-home .presentation-layout { grid-template-areas:"editorial" "visual"; }
  .presentation-editorial { grid-area:editorial; max-width:720px; }
  .presentation-visual { grid-area:visual; width:100%; min-height:470px; margin:-12px 0 -24px; }
  .presentation-data { grid-area:data; max-width:none; width:100%; grid-template-columns:1.1fr 1fr; align-items:start; gap:14px 28px; padding:0 0 24px; }
  .presentation-data-head,.presentation-price,.presentation-data dl { grid-column:1; }
  .presentation-primary,.presentation-secondary-actions,.presentation-save-actions { grid-column:2; }
  .presentation-primary { grid-row:1; }
  .presentation-home-status { display:none; }
  .journey-section { grid-template-columns:1fr; margin-top:0; }
  .inventory-filters { display:none; }
  .mobile-filter-open { display:inline-flex; }
}

@media (max-width:767px) {
  :root { --header-height:70px; --gutter:14px; --section-space:60px; --section-space-small:42px; }
  .presentation-home,.presentation-detail { min-height:auto; }
  .presentation-layout,.presentation-detail .presentation-layout { min-height:0; padding:34px 0 52px; }
  .presentation-detail .presentation-layout { padding-top:62px; }
  .presentation-editorial h1,.presentation-detail-editorial h1 { font-size:clamp(44px,14vw,60px); }
  .presentation-visual { min-height:clamp(310px,82vw,360px); margin:-16px 0 -25px; }
  .presentation-stage .cinematic-vehicle-typography { top:21%; font-size:clamp(44px,14.5vw,64px); }
  .cinematic-stage-slot { inset:7% 0 9%; }
  .presentation-data { max-width:none; }
  .presentation-disclosure { display:none; }
  .journey-section { margin-top:0; padding-top:34px; }
  .inventory-page .page-hero { padding-block:44px 58px; }
  .inventory-page .page-hero-grid { gap:20px; }
  .inventory-page .page-hero-proof { display:flex; align-items:baseline; gap:10px; padding:18px 20px; }
  .inventory-page .page-hero-proof strong { font-size:48px; }
  .inventory-page .page-hero-proof small { margin:0 0 0 auto; max-width:135px; }
  .inventory-filters { display:none !important; }
  .modal-backdrop:has(.modal-filter-sheet) { align-items:end; padding:0; }
  .modal-filter-sheet { width:100%; max-height:min(86svh,760px); padding:28px 18px max(20px,var(--safe-bottom)); border-radius:24px 24px 0 0; }
  .inventory-filter-sheet { grid-template-columns:1fr; }
  .modal-filter-sheet .modal-actions { position:sticky; bottom:0; margin-inline:-18px; padding:16px 18px max(8px,var(--safe-bottom)); background:rgba(255,255,255,.96); box-shadow:0 -12px 32px rgba(20,35,44,.07); }
  .vehicle-card-heading { align-items:start; }
  .vehicle-card-heading h3 { font-size:22px; }
  .sell-hero { padding:48px 0 38px; }
  .sell-hero-grid { gap:24px; }
  .market-visual { display:none; }
  .seller-workspace { padding-top:22px; }
  .seller-progress-panel { position:sticky; z-index:30; top:calc(var(--header-height) + 8px); padding:14px; border-radius:16px; box-shadow:var(--shadow-sm); }
  .seller-progress-panel .progress-track { margin-bottom:10px; }
  .seller-form-card { padding:24px 18px; }
  .finance-page .page-hero { padding-bottom:38px; }
  .finance-workspace { padding-top:24px; }
  .finance-summary { gap:8px; }
  .about-manifesto { padding-block:58px; }
  .about-manifesto p { font-size:16px; }
  .contact-grid { padding-top:32px; }
  .contact-form-section { gap:24px; }
}

@media (max-width:430px) {
  .presentation-trust span:nth-child(2) { display:none; }
  .presentation-actions .button { min-width:0; padding-inline:10px; }
  .presentation-visual { min-height:300px; }
  .cinematic-stage-controls { right:2%; }
  .inventory-page .page-hero-proof small { display:none; }
  .inventory-searchbar .button { padding-inline:13px; }
  .vehicle-meta { gap:9px; }
  .vehicle-meta span:last-child { display:none; }
  .contact-rail-toggle { width:48px; padding:0; justify-content:center; }
}

@media (hover:none), (pointer:coarse) {
  .button:hover,.icon-button:hover,.featured-car:hover,.contact-cards > a:hover { transform:none; }
  .cinematic-vehicle-body,.cinematic-static-vehicle { filter:drop-shadow(0 12px 12px rgba(9,20,26,.1)); }
}

/* Shared Cars4Me vehicle presentation shell */
.vehicle-presentation-shell { position:relative; overflow:hidden; isolation:isolate; background:linear-gradient(180deg,#fbfcfc 0%,#f5f8f9 58%,#e9eff1 100%); border-bottom:1px solid rgba(13,21,26,.08); }
.presentation-home { min-height:max(820px,100svh); }
.presentation-detail { min-height:760px; padding-top:var(--header-height); }
.presentation-studio { position:absolute; z-index:0; inset:0; overflow:hidden; pointer-events:none; }
.presentation-architecture { position:absolute; border:1px solid rgba(13,21,26,.055); background:linear-gradient(145deg,rgba(255,255,255,.96),rgba(230,236,239,.72)); box-shadow:0 35px 120px rgba(38,65,77,.07); }
.presentation-architecture-left { width:44vw; height:45vw; left:-31vw; top:8%; border-radius:0 50% 50% 0; transform:rotate(-5deg); }
.presentation-architecture-right { width:50vw; height:50vw; right:-25vw; top:-22vw; border-radius:50%; }
.presentation-architecture-right::after { content:""; position:absolute; inset:20%; border:1px solid rgba(44,158,195,.14); border-radius:50%; }
.presentation-floor { position:absolute; left:-10%; right:-10%; bottom:-14%; height:48%; transform:perspective(900px) rotateX(63deg); transform-origin:bottom; border-top:1px solid rgba(13,21,26,.07); background:radial-gradient(ellipse at 61% 7%,rgba(255,255,255,.98) 0 16%,rgba(222,230,234,.5) 43%,rgba(255,255,255,.92) 76%),repeating-linear-gradient(90deg,transparent 0 190px,rgba(43,63,73,.045) 191px 192px); }
.presentation-skyline { position:absolute; left:19%; right:0; bottom:7%; width:81%; height:38%; opacity:.48; }
.presentation-ui { position:relative; z-index:3; min-height:inherit; }
.presentation-home .presentation-ui { padding-top:var(--header-height); }
.presentation-breadcrumbs { position:absolute; z-index:10; top:24px; left:0; right:0; margin:0; }
.presentation-layout { min-height:inherit; display:grid; grid-template-columns:minmax(350px,.72fr) minmax(610px,1.42fr) minmax(210px,.48fr); align-items:center; gap:18px; padding:58px 0 78px; }
.presentation-home .presentation-layout { min-height:max(820px,100svh); }
.presentation-detail .presentation-layout { min-height:680px; padding-top:42px; }
.presentation-editorial { position:relative; z-index:8; }
.presentation-editorial .eyebrow { margin-bottom:17px; }
.presentation-editorial h1 { margin:0 0 22px; text-transform:uppercase; font-size:clamp(64px,6.3vw,104px); line-height:.82; letter-spacing:-.067em; }
.presentation-detail-editorial h1 { font-size:clamp(50px,4.9vw,82px); }
.presentation-editorial h1 em { display:inline; color:var(--accent); font-style:normal; font-weight:680; }
.presentation-detail-editorial h1 em { color:var(--accent-dark); font-weight:430; }
.presentation-lead { max-width:470px; margin:0 0 24px; color:var(--ink-2); font-size:18px; }
.presentation-kicker { color:var(--muted); font-size:11px; font-weight:700; letter-spacing:.14em; text-transform:uppercase; }
.presentation-trust { display:flex; flex-wrap:wrap; gap:12px 20px; margin-bottom:26px; color:var(--ink-2); font-size:11px; font-weight:680; }
.presentation-trust span { display:flex; align-items:center; gap:7px; }
.presentation-actions { display:flex; flex-wrap:wrap; gap:11px; }
.presentation-note { margin:25px 0 0; color:var(--muted-2); font-size:8px; font-weight:760; letter-spacing:.25em; text-transform:uppercase; }
.presentation-visual { position:relative; z-index:2; align-self:stretch; min-height:620px; margin-inline:-10%; }
.presentation-typography { position:absolute; z-index:1; inset:0; pointer-events:none; }
.presentation-stage { position:absolute; z-index:2; inset:0; }
.presentation-stage .cinematic-stage { width:100%; height:100%; min-height:100%; }
.presentation-stage .cinematic-vehicle-shell { width:min(104%,1040px); }
.presentation-stage .cinematic-vehicle-typography { top:19%; font-size:clamp(70px,7.2vw,126px); }
.presentation-stage .cinematic-static-vehicle { display:block; width:100%; height:100%; object-fit:contain; filter:drop-shadow(0 22px 18px rgba(9,20,26,.14)); }
.presentation-stage .cinematic-stage-unavailable { align-self:center; justify-self:center; display:grid; gap:6px; padding:24px 30px; border:1px solid var(--line); border-radius:18px; background:rgba(255,255,255,.88); color:var(--muted); text-align:center; }
.presentation-home-status { position:relative; z-index:8; align-self:end; display:grid; gap:4px; padding-bottom:76px; color:var(--muted); }
.presentation-home-status span,.presentation-home-status small { font-size:8px; font-weight:760; letter-spacing:.15em; text-transform:uppercase; }
.presentation-home-status strong { color:var(--ink); font-size:25px; letter-spacing:-.04em; }
.presentation-data { position:relative; z-index:8; display:grid; align-content:center; gap:16px; padding:25px 0; opacity:.18; transform:translateY(14px); transition:opacity .6s var(--ease-premium),transform .6s var(--ease-premium); }
.vehicle-presentation-shell[data-presentation-phase="settling"] .presentation-data,.vehicle-presentation-shell[data-presentation-phase="holding"] .presentation-data,.vehicle-presentation-shell[data-presentation-phase="unavailable"] .presentation-data { opacity:1; transform:none; }
.presentation-data-head { display:flex; align-items:center; justify-content:space-between; gap:12px; }
.presentation-data-head small { color:var(--muted-2); font-size:8px; text-transform:uppercase; letter-spacing:.13em; }
.presentation-price { margin:0; color:var(--ink); font-size:clamp(31px,2.8vw,46px); font-weight:780; letter-spacing:-.055em; }
.presentation-data dl { display:grid; margin:0; border-top:1px solid var(--line-dark); }
.presentation-data dl div { display:flex; justify-content:space-between; gap:20px; padding:10px 0; border-bottom:1px solid var(--line-dark); }
.presentation-data dt { color:var(--muted); font-size:9px; text-transform:uppercase; letter-spacing:.11em; }
.presentation-data dd { margin:0; font-size:11px; font-weight:730; text-align:right; }
.presentation-primary { width:100%; }
.presentation-secondary-actions { display:grid; border-block:1px solid var(--line-dark); }
.presentation-secondary-actions a,.presentation-secondary-actions button { display:flex; align-items:center; gap:8px; padding:10px 0; border:0; background:transparent; color:var(--ink); font:inherit; font-size:9px; font-weight:760; letter-spacing:.08em; text-transform:uppercase; cursor:pointer; }
.presentation-save-actions { display:flex; gap:8px; }
.presentation-disclosure { position:absolute; z-index:8; left:50%; bottom:20px; width:min(720px,70%); margin:0; transform:translateX(-50%); color:var(--muted-2); font-size:8px; text-align:center; }
.presentation-footer { position:absolute; z-index:8; left:0; bottom:27px; display:flex; align-items:center; gap:14px; color:var(--muted); font-size:9px; letter-spacing:.16em; text-transform:uppercase; }
.presentation-footer i { width:82px; height:1px; background:linear-gradient(90deg,var(--accent),var(--line)); }
.vehicle-presentation-unavailable { min-height:520px; padding-top:calc(var(--header-height) + 70px); display:grid; align-content:center; }
.vehicle-presentation-unavailable h1 { max-width:800px; }
.production-home-unavailable { min-height:660px; padding-top:var(--header-height); display:grid; align-items:center; overflow:hidden; background:radial-gradient(circle at 80% 18%,rgba(43,166,205,.1),transparent 31%),linear-gradient(145deg,#fbfcfc,#e9eff1); border-bottom:1px solid var(--line); }
.production-home-unavailable-inner { padding-block:86px; }
.production-home-unavailable h1 { max-width:920px; margin:18px 0 24px; font-size:clamp(54px,7vw,104px); line-height:.88; letter-spacing:-.07em; text-transform:uppercase; }
.production-home-unavailable p:not(.eyebrow) { max-width:650px; color:var(--ink-2); font-size:17px; }

@media (max-width:1180px) {
  .presentation-layout { grid-template-columns:minmax(310px,.7fr) minmax(500px,1.25fr) minmax(190px,.48fr); }
  .presentation-editorial h1 { font-size:clamp(58px,6.2vw,78px); }
  .presentation-visual { margin-inline:-15%; }
}

@media (max-width:1100px) {
  .presentation-home { min-height:980px; }
  .presentation-detail { min-height:980px; }
  .presentation-layout,.presentation-detail .presentation-layout { min-height:900px; grid-template-columns:1fr 1fr; grid-template-areas:"editorial data" "visual visual"; align-content:start; padding-top:76px; }
  .presentation-home .presentation-layout { grid-template-areas:"editorial editorial" "visual visual"; }
  .presentation-editorial { grid-area:editorial; max-width:720px; }
  .presentation-data,.presentation-home-status { grid-area:data; }
  .presentation-home-status { display:none; }
  .presentation-visual { grid-area:visual; width:100%; min-height:520px; margin:-35px 0 0; }
  .presentation-stage .cinematic-vehicle-shell { width:min(98%,900px); }
  .presentation-skyline { left:0; width:100%; }
}

@media (max-width:800px) and (min-width:641px) {
  .presentation-home,.presentation-detail { min-height:1180px; }
  .presentation-layout,.presentation-detail .presentation-layout { min-height:1100px; grid-template-columns:1fr; grid-template-areas:"editorial" "visual" "data"; gap:0; }
  .presentation-home .presentation-layout { grid-template-areas:"editorial" "visual"; }
  .presentation-visual { min-height:500px; margin:-18px 0 -26px; }
  .presentation-data { padding:0 0 30px; }
}

@media (max-width:640px) {
  .presentation-home,.presentation-detail { min-height:880px; }
  .presentation-layout,.presentation-detail .presentation-layout { min-height:810px; display:flex; flex-direction:column; align-items:stretch; gap:0; padding:40px 0 64px; }
  .presentation-detail .presentation-layout { padding-top:72px; }
  .presentation-editorial h1,.presentation-detail-editorial h1 { font-size:clamp(46px,14.3vw,62px); margin-bottom:14px; }
  .presentation-lead { margin-bottom:16px; font-size:15px; }
  .presentation-trust { margin-bottom:17px; gap:8px 13px; }
  .presentation-trust span:nth-child(3) { display:none; }
  .presentation-actions { display:grid; grid-template-columns:1fr 1fr; }
  .presentation-actions .button { padding-inline:12px; font-size:10px; }
  .presentation-note { display:none; }
  .presentation-visual { order:2; flex:none; min-height:330px; margin:-18px 0 -34px; }
  .presentation-stage .cinematic-vehicle-shell { width:100%; }
  .presentation-stage .cinematic-vehicle-typography { top:19%; font-size:clamp(46px,15vw,66px); }
  .presentation-data { order:3; gap:10px; padding:0 0 20px; opacity:1; transform:none; }
  .presentation-data dl { grid-template-columns:1fr 1fr; }
  .presentation-data dl div { display:grid; gap:3px; padding:8px 8px 8px 0; }
  .presentation-data dd { text-align:left; }
  .presentation-secondary-actions { grid-template-columns:repeat(3,1fr); border:0; gap:5px; }
  .presentation-secondary-actions a,.presentation-secondary-actions button { justify-content:center; padding:10px 5px; border:1px solid var(--line); border-radius:10px; font-size:7px; }
  .presentation-footer,.presentation-disclosure { display:none; }
  .presentation-breadcrumbs { top:16px; }
  .presentation-floor { bottom:-6%; height:40%; }
  .presentation-skyline { height:26%; bottom:28%; opacity:.32; }
  .cinematic-static-vehicle { object-fit:contain; }
}

/* Homepage hero: preserve the intended two-line lockup and subtract the fixed header from the stage. */
.presentation-home .presentation-layout {
  min-height:calc(max(820px,100svh) - var(--header-height));
}
.presentation-home-editorial h1 {
  max-width:610px;
  font-size:clamp(64px,min(5vw,10.8vh),92px);
  line-height:.86;
}
.presentation-home-editorial h1 > span {
  display:block;
  white-space:nowrap;
}

@media (min-width:1280px) {
  .presentation-home .presentation-layout {
    grid-template-columns:minmax(500px,.92fr) minmax(580px,1.12fr) minmax(160px,.34fr);
  }
  .presentation-home .presentation-visual { margin-inline:-6%; }
}

@media (min-width:1600px) {
  .presentation-home .presentation-layout {
    grid-template-columns:minmax(550px,.96fr) minmax(600px,1.12fr) minmax(160px,.32fr);
  }
  .presentation-home-editorial h1 { font-size:clamp(92px,4.6vw,104px); }
  .presentation-home .presentation-visual { margin-inline:-10%; }
  .presentation-home .presentation-stage .cinematic-vehicle-shell { width:min(112%,1040px); }
}

@media (min-width:1280px) and (min-height:901px) {
  .presentation-home .presentation-layout {
    align-items:start;
    padding-block:70px 78px;
  }
  .presentation-home-editorial {
    align-self:start;
    padding-top:24px;
  }
  .presentation-home .presentation-visual {
    align-self:start;
    height:680px;
    min-height:680px;
  }
  .presentation-home-status {
    align-self:start;
    margin-top:500px;
    padding-bottom:0;
  }
}

@media (min-width:1280px) and (max-height:900px) {
  .presentation-home { min-height:100svh; }
  .presentation-home .presentation-layout {
    min-height:calc(100svh - var(--header-height));
    align-items:center;
    padding-block:22px 54px;
  }
  .presentation-home-editorial {
    align-self:start;
    padding-top:24px;
  }
  .presentation-home-editorial .eyebrow { margin-bottom:15px; }
  .presentation-home-editorial h1 { margin-bottom:18px; }
  .presentation-home-editorial .presentation-lead { margin-bottom:18px; }
  .presentation-home-editorial .presentation-trust { margin-bottom:20px; }
  .presentation-home-editorial .presentation-note { margin-top:20px; }
  .presentation-home .presentation-visual { min-height:calc(100svh - var(--header-height) - 76px); }
  .presentation-home-status { padding-bottom:54px; }
}

@media (max-width:767px) {
  .presentation-home { min-height:auto; }
  .presentation-home .presentation-ui,
  .presentation-home .presentation-layout { min-height:0; }
  .presentation-home .presentation-layout { padding-bottom:44px; }
}

@media (max-width:430px) {
  .presentation-home-editorial h1 {
    font-size:clamp(42px,13.2vw,56px);
    letter-spacing:-.06em;
  }
}

/* ============================================================
   Presentation polish layer (non-structural, additive only)
   ============================================================ */

/* Consistent premium select control across every surface */
.inventory-filters select,
.results-toolbar select,
.inventory-filter-sheet select,
.form-grid select,
.form-stack select,
.finance-form-grid select,
.finance-card select {
  appearance:none;
  -webkit-appearance:none;
  padding-right:38px;
  background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9' fill='none'%3E%3Cpath d='M1 1.5 7 7.5l6-6' stroke='%236b7a80' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;
  background-position:right 13px center;
  cursor:pointer;
}
.inventory-filters select:hover,
.results-toolbar select:hover,
.inventory-filter-sheet select:hover { border-color:rgba(13,21,26,.22); }

/* Softer, calmer contained card media (fallback/studio artwork) */
.vehicle-card-media,
.featured-car-image { background:linear-gradient(180deg,#fbfcfd 0%,#eef3f5 100%); }

/* Card surface refinement */
.vehicle-card { box-shadow:0 1px 2px rgba(13,21,26,.03); }
.vehicle-card:hover { border-color:rgba(13,21,26,.14); }

/* Unified keyboard focus treatment */
a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
[tabindex]:focus-visible {
  outline:2px solid var(--accent);
  outline-offset:2px;
  border-radius:8px;
}

@media (max-width:640px) {
  /* Balance the search controls: Filters and Save search share one row */
  .inventory-searchbar [data-save-search] { grid-column:auto; }
  .inventory-searchbar .button { width:100%; justify-content:center; }
  /* Sort control reads as a full-width field on phones */
  .results-toolbar { flex-direction:column; align-items:stretch; width:100%; gap:10px; }
  .results-toolbar label { width:100%; gap:6px; }
  .results-toolbar select { width:100%; }
}

/* Cinematic smoothness (rendering hints only — no timing, pose or calibration change) */
.cinematic-vehicle-travel,
.cinematic-vehicle-body-motion {
  will-change:transform;
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
  transform-style:preserve-3d;
}
.cinematic-vehicle-body,
.cinematic-wheel,
.cinematic-static-vehicle {
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
  image-rendering:auto;
}
.cinematic-vehicle-shadow,
.cinematic-vehicle-reflection { will-change:transform,opacity; }
@media (prefers-reduced-motion: reduce) {
  .cinematic-vehicle-travel,
  .cinematic-vehicle-body-motion,
  .cinematic-vehicle-shadow,
  .cinematic-vehicle-reflection { will-change:auto; }
}
