.collection.section-pad { padding-top:6px; }
.collection .section-intro { display:block; }
.collection .section-intro h2 { font-size:clamp(32px,3.1vw,44px); font-weight:600; line-height:1.1; }
.collection .section-intro > div { max-width:none; margin-top:4px; font-size:15px; }
.collection .section-intro .small-note { display:none; }
.collection-toolbar { margin-top:16px; min-height:48px; }
.collection .brand-filters button { padding-block:14px 12px; }
.model-search-toolbar,.model-filter-panel,.active-model-filters,.model-search-notice,.unpriced-models { max-width:1600px; margin-inline:auto; }
.model-search-toolbar { display:flex; gap:12px; margin-top:16px; }
.model-search-field { flex:1; min-width:0; position:relative; margin:0; }
.model-search-field svg { position:absolute; top:14px; left:16px; width:20px; height:20px; color:var(--muted); pointer-events:none; }
.model-search-field input { width:100%; min-height:46px; padding:11px 44px 11px 48px; border:1px solid var(--field-line,#565656); border-radius:2px; background:#161616; color:var(--ink); font-size:16px; }
.model-search-field input::placeholder { color:var(--muted); opacity:1; }
.filter-opener { display:none; align-items:center; justify-content:center; gap:8px; min-height:48px; padding:12px; border:1px solid var(--line); background:#161616; }
.filter-opener svg { width:18px; height:18px; }
.filter-number:empty { display:none; }
.model-filter-panel { padding:12px 0 16px; border-bottom:1px solid var(--line); }
.filter-dialog-heading { display:none; }
.model-filter-fields { display:grid; grid-template-columns:1fr .8fr 1fr 1.8fr auto; gap:20px; align-items:start; }
.model-filter-field { min-width:0; }
.model-filter-field > label,.budget-title { display:block; margin:0 0 8px; font-size:14px; font-weight:600; color:var(--ink); }
.model-filter-field select,.filter-budget input { width:100%; min-height:46px; border:1px solid #565656; border-radius:2px; background:#161616; color:var(--ink); padding:10px 13px; font-size:16px; }
.filter-budget { display:flex; align-items:stretch; gap:12px; }
.filter-budget input { min-width:0; flex:1; }
.currency-switch { display:flex; flex-shrink:0; }
.currency-switch button,.filter-choices button { background:#161616; border:1px solid var(--line); min-height:46px; min-width:58px; padding:10px 12px; font-size:15px; }
.currency-switch button + button,.filter-choices button + button { border-left:0; }
.currency-switch [aria-pressed=true],.filter-choices [aria-pressed=true] { background:var(--ink); color:#0a0a0a; border-color:var(--ink); }
.filter-budget-scope { font-size:13px; line-height:1.5; color:var(--muted); margin-top:9px; }
.filter-reset { background:none; color:var(--ink); min-height:44px; padding:10px 0; font-size:12px; text-decoration:underline; text-underline-offset:4px; }
.desktop-filter-reset { margin-top:28px; }
.filter-choices { display:none; }
.fx-reference { display:flex; align-items:start; justify-content:space-between; gap:16px; margin-top:8px; }
.fx-reference p { font-size:14px; line-height:1.5; color:var(--muted); }
.fx-reference button { flex-shrink:0; border:0; background:transparent; min-height:44px; padding:8px 0 8px 12px; text-decoration:underline; text-underline-offset:4px; font-size:12px; }
.filter-error { font-size:12px; color:#f0f3ef; padding-top:8px; }
.filter-budget input[aria-invalid=true] { border-color:var(--ink); }
.mobile-filter-footer { display:none; }
.active-model-filters { display:flex; flex-wrap:wrap; gap:8px; margin-top:16px; }
.active-model-filters button { min-height:36px; padding:8px 12px; border:1px solid var(--line); background:#161616; font-size:12px; border-radius:2px; }
.model-search-notice { font-size:13px; color:var(--muted); margin-top:16px; line-height:1.7; }
.unpriced-models { margin-top:36px; border-top:1px solid var(--line); padding-top:24px; }
.unpriced-models h3 { font-size:22px; font-weight:500; letter-spacing:-.02em; }
.unpriced-models > p { margin-top:8px; font-size:13px; color:var(--muted); }
.unpriced-models .model-grid { margin-top:20px; }
.card-match { margin-top:8px; font-size:12px; color:var(--muted); line-height:1.65; }
.card-fob-price { display:flex; justify-content:space-between; flex-wrap:wrap; align-items:baseline; gap:8px; margin-top:12px; }
.card-fob-price strong { font-size:19px; font-weight:600; font-variant-numeric:tabular-nums; }
.card-fob-price span { font-size:12px; color:var(--muted); }
.no-model-results { max-width:1600px; margin:auto; }
.model-filter-dialog { width:420px; max-width:100vw; max-height:100dvh; height:100dvh; margin:0 0 0 auto; border:0; border-left:1px solid var(--line); border-radius:0; background:#0a0a0a; color:var(--ink); padding:0; }
.model-filter-dialog::backdrop { background:rgba(0,0,0,.72); }
@media(max-width:1100px) and (min-width:801px) { .model-filter-fields { gap:12px; grid-template-columns:1fr .75fr 1fr 1.6fr auto; } .filter-budget { gap:8px; } .currency-switch button { min-width:46px; padding-inline:9px; } }
@media(max-width:800px) {
  .collection .section-intro { align-items:start; }
  .filter-opener { display:flex; }
  .model-filter-dialog .model-filter-panel { display:flex; flex-direction:column; min-height:100%; padding:0; border:0; }
  .filter-dialog-heading { display:flex; align-items:center; gap:16px; padding:12px 20px; border-bottom:1px solid var(--line); }
  .filter-dialog-heading h2 { margin-right:auto; font-size:24px; font-weight:600; }
  .filter-dialog-heading button { background:none; min-width:44px; min-height:44px; padding:10px 0; }
  .filter-dialog-heading .filter-reset { padding-inline:0; }
  .model-filter-fields { display:block; padding:0 20px; }
  #model-filter-form { display:flex; flex:1; flex-direction:column; }
  .model-filter-field { padding:16px 0; border-bottom:1px solid var(--line); }
  .model-filter-field > label,.budget-title { font-size:16px; margin-bottom:12px; }
  .model-filter-field select { display:none; }
  .filter-choices { display:flex; }
  .filter-choices button { flex:1; min-width:0; min-height:46px; }
  .body-choices { display:grid; grid-template-columns:repeat(3,1fr); }
  .body-choices button { border-left:1px solid var(--line)!important; }
  .filter-budget { flex-wrap:wrap; gap:12px; }
  .filter-budget input { flex-basis:100%; font-size:16px; }
  .model-filter-panel .fx-reference { display:block; margin:0; padding:16px 20px; }
  .model-filter-panel .fx-reference button { display:inline-block; min-height:44px; padding:10px 0; font-size:14px; }
  .desktop-filter-reset { display:none; }
  .mobile-filter-footer { display:block; position:sticky; bottom:0; margin-top:auto; background:#0a0a0a; padding:16px 20px max(20px,env(safe-area-inset-bottom)); border-top:1px solid var(--line); }
  .mobile-filter-footer button { width:100%; min-height:48px; padding:12px; background:var(--ink); color:#0a0a0a; font-size:16px; font-weight:600; }
  .filter-error { padding-inline:20px; }
  .model-filter-field .filter-error { padding-inline:0; }
}
@media(min-width:801px) {
  .model-filter-field { position:relative; }
  .model-filter-field .filter-budget-scope { position:absolute; top:100%; left:0; right:0; }
  .collection.showing-brands .brand-directory-link { padding:8px 20px 20px; }
  .collection.showing-brands .brand-logo-stage { height:100px; }
  .collection.showing-brands .brand-directory-caption { margin-top:12px; }
}
@media(max-width:600px) {
  .collection.section-pad { padding-top:24px; }
  .collection .section-intro h2 { font-size:32px; }
  .collection-toolbar { margin-top:20px; }
  .model-search-toolbar { margin-top:16px; gap:8px; }
  .model-search-field input { font-size:16px; padding-left:42px; padding-right:28px; }
  .model-search-field svg { left:12px; }
  .filter-opener { font-size:13px; padding-inline:10px; }
  .active-model-filters { gap:6px; }
  .active-model-filters button { min-height:40px; }
}
@media(prefers-reduced-motion:reduce) { .model-filter-dialog { scroll-behavior:auto; } }
.visually-hidden { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
