/* ==========================================================================
   Velocity — components
   ========================================================================== */

/* ---- Buttons ---- */
.vv-btn{
  --bg:var(--ignition); --fg:#1A1206;
  display:inline-flex; align-items:center; gap:.5rem;
  font-family:var(--font-display); font-weight:600; text-transform:uppercase;
  letter-spacing:.04em; font-size:1rem;
  padding:.85rem 1.5rem; border-radius:var(--r-sm); border:1px solid transparent;
  background:var(--bg); color:var(--fg);
  transition:transform .18s var(--ease), background .18s var(--ease), box-shadow .18s var(--ease);
  will-change:transform;
}
.vv-btn:hover{ background:var(--ignition-2); transform:translateY(-2px); box-shadow:0 10px 24px -10px rgba(255,158,27,.5); }
.vv-btn:active{ transform:translateY(0); }
.vv-btn--ghost{ background:transparent; color:var(--chrome); border-color:var(--hairline); }
.vv-btn--ghost:hover{ background:var(--surface-2); border-color:var(--silver); box-shadow:none; }
.vv-btn--block{ width:100%; justify-content:center; }
.vv-btn--sm{ padding:.55rem 1rem; font-size:.9rem; }
.vv-link{ color:var(--ignition); font-weight:600; }
.vv-link:hover{ color:var(--ignition-2); text-decoration:underline; }

/* ---- Header ---- */
.vv-header{
  position:sticky; top:0; z-index:100; width:100%;
  background:var(--graphite); border-bottom:1px solid var(--hairline);
  transition:background .25s var(--ease), border-color .25s var(--ease);
}
.has-transparent-header .vv-header{ position:fixed; background:transparent; border-color:transparent; }
.has-transparent-header .vv-header.is-solid,
.vv-header.is-solid{ background:rgba(14,15,17,.92); backdrop-filter:blur(10px); border-color:var(--hairline); }
.vv-header__inner{ display:flex; align-items:center; justify-content:space-between; gap:1rem; height:var(--header-h); }
.vv-brand{ display:flex; align-items:center; gap:.6rem; font-family:var(--font-display); font-weight:800; text-transform:uppercase; letter-spacing:.02em; font-size:1.2rem; }
.vv-brand img{ max-height:44px; width:auto; }
.vv-nav{ display:flex; align-items:center; gap:1.75rem; }
.vv-nav a{ font-weight:500; color:var(--silver); font-size:.98rem; transition:color .15s var(--ease); }
.vv-nav a:hover,.vv-nav .current-menu-item>a{ color:var(--chrome); }
.vv-header__cta{ display:flex; align-items:center; gap:.75rem; }

/* burger */
.vv-burger{ display:none; background:none; border:0; padding:.4rem; }
.vv-burger span{ display:block; width:24px; height:2px; background:var(--chrome); margin:5px 0; transition:transform .2s var(--ease), opacity .2s var(--ease); }
.vv-mobile-nav{ display:none; }

/* ---- Mobile sticky call/enquire bar ---- */
.vv-actionbar{ display:none; }

/* ---- Hero ---- */
.vv-hero{ position:relative; min-height:min(92vh,860px); display:flex; align-items:center; padding-top:var(--header-h); overflow:hidden; }
.vv-hero__bg{ position:absolute; inset:0; z-index:0; }
.vv-hero__bg img{ width:100%; height:100%; object-fit:cover; filter:grayscale(1) contrast(1.05) brightness(.55); }
.vv-hero__bg::after{ content:""; position:absolute; inset:0;
  background:
    radial-gradient(120% 90% at 80% 10%, rgba(255,158,27,.10), transparent 55%),
    linear-gradient(180deg, rgba(10,21,38,.55) 0%, rgba(14,15,17,.85) 70%, var(--graphite) 100%); }
.vv-hero__inner{ position:relative; z-index:2; display:grid; grid-template-columns:1.5fr .9fr; gap:2rem; align-items:center; width:100%; }
.vv-hero h1{ margin-bottom:1rem; }
.vv-hero h1 .vv-accent{ color:var(--ignition); }
.vv-hero__cta{ display:flex; flex-wrap:wrap; gap:.9rem; margin-top:1.75rem; }
.vv-ticks{ display:flex; flex-wrap:wrap; gap:.5rem 1.25rem; margin-top:2rem; padding-top:1.5rem; border-top:1px solid var(--hairline); }
.vv-ticks li{ display:flex; align-items:center; gap:.5rem; font-size:.85rem; letter-spacing:.04em; text-transform:uppercase; color:var(--silver); }
.vv-ticks li::before{ content:""; width:7px; height:7px; border-radius:50%; background:var(--ignition); flex:none; }

/* reveal-on-load */
.vv-reveal{ opacity:0; transform:translateY(18px); }
.is-ready .vv-reveal{ opacity:1; transform:none; transition:opacity .7s var(--ease), transform .7s var(--ease); }
.is-ready .vv-reveal.d1{ transition-delay:.08s; }
.is-ready .vv-reveal.d2{ transition-delay:.16s; }
.is-ready .vv-reveal.d3{ transition-delay:.24s; }

/* ---- Gauge signature ---- */
.vv-gauge{ width:100%; height:auto; }
.vv-gauge__face{ fill:var(--surface); stroke:var(--hairline); stroke-width:1.5; }
.vv-gauge__arc{ stroke:var(--hairline); stroke-width:2; }
.vv-gauge__tick{ stroke:var(--steel); stroke-width:1.5; }
.vv-gauge__tick--major{ stroke:var(--silver); stroke-width:2.5; }
.vv-gauge__needle{ stroke:var(--ignition); stroke-width:3.5; stroke-linecap:round;
  transform-box:fill-box; transform-origin:100px 100px; transform:rotate(-120deg); }
.vv-gauge__hub{ fill:var(--ignition); stroke:var(--graphite); stroke-width:3; }
.vv-gauge--hero{ max-width:340px; margin-inline:auto; filter:drop-shadow(0 0 30px rgba(255,158,27,.18)); }
.is-ready .vv-gauge--hero .vv-gauge__needle{ animation:vv-sweep 1.6s var(--ease) .3s both; }
@keyframes vv-sweep{ 0%{ transform:rotate(-120deg);} 60%{ transform:rotate(58deg);} 100%{ transform:rotate(42deg);} }
.vv-gauge--card{ position:absolute; bottom:0; right:0; width:54px; opacity:.5; }
.vv-card__img--placeholder{ display:flex; align-items:center; justify-content:center; background:var(--surface-2); }
.vv-card__img--placeholder .vv-gauge{ width:46%; opacity:.35; }
@media (prefers-reduced-motion: reduce){
  .vv-gauge__needle{ transform:rotate(42deg); }
  .is-ready .vv-gauge--hero .vv-gauge__needle{ animation:none; }
  .vv-reveal{ opacity:1!important; transform:none!important; }
  /* Suppress interaction motion too (cards, buttons, image zoom). */
  .vv-btn:hover, .vv-card:hover, .vv-ebay-card:hover, .vv-pillar:hover{ transform:none; }
  .vv-card:hover .vv-card__img{ transform:none; }
  *{ scroll-behavior:auto; }
}

/* ---- Section dividers (gauge graduations) ---- */
.vv-divider{ height:18px; display:flex; align-items:center; }
.vv-divider__ticks{ flex:1; height:14px;
  background-image:repeating-linear-gradient(90deg, var(--hairline) 0 1px, transparent 1px 14px),
                   repeating-linear-gradient(90deg, var(--steel) 0 2px, transparent 2px 70px);
  -webkit-mask-image:linear-gradient(90deg, transparent, #000 12%, #000 88%, transparent);
          mask-image:linear-gradient(90deg, transparent, #000 12%, #000 88%, transparent); }

/* ---- Section headers ---- */
.vv-sechead{ display:flex; align-items:flex-end; justify-content:space-between; gap:1rem; margin-bottom:2.25rem; flex-wrap:wrap; }
.vv-sechead p{ margin:0; }

/* ---- Vehicle grid + card ---- */
.vv-grid{ display:grid; grid-template-columns:repeat(auto-fill, minmax(300px,1fr)); gap:1.5rem; }
.vv-card{ position:relative; background:var(--surface); border:1px solid var(--hairline); border-radius:var(--r-md); overflow:hidden;
  display:flex; flex-direction:column; transition:transform .22s var(--ease), border-color .22s var(--ease), box-shadow .22s var(--ease); }
.vv-card:hover{ transform:translateY(-4px); border-color:#3a414b; box-shadow:var(--shadow-card); }
.vv-card__media{ position:relative; aspect-ratio:16/10; overflow:hidden; background:var(--surface-2); }
.vv-card__img{ width:100%; height:100%; object-fit:cover; transition:transform .4s var(--ease); }
.vv-card:hover .vv-card__img{ transform:scale(1.04); }
.vv-badge{ position:absolute; top:.75rem; left:.75rem; z-index:2; font-size:.72rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; padding:.3rem .6rem; border-radius:var(--r-sm); color:#0c0d0f; }
.vv-badge--available{ background:var(--available); }
.vv-badge--reserved{ background:var(--ignition); }
.vv-badge--sold{ background:#B92D32; color:#fff; } /* darker than --sold for AA on white badge text */
.vv-card__body{ padding:1.1rem 1.15rem 1.25rem; display:flex; flex-direction:column; gap:.6rem; flex:1; }
.vv-card__title{ font-family:var(--font-display); font-weight:600; font-size:1.18rem; line-height:1.15; color:var(--chrome); }
.vv-card__chips{ display:flex; flex-wrap:wrap; gap:.4rem; }
.vv-chip{ font-size:.76rem; letter-spacing:.03em; color:var(--silver); background:var(--surface-2); border:1px solid var(--hairline); padding:.2rem .5rem; border-radius:var(--r-sm); }
.vv-card__foot{ margin-top:auto; display:flex; align-items:center; justify-content:space-between; gap:.75rem; padding-top:.5rem; flex-wrap:wrap; }
.vv-price{ font-family:var(--font-display); font-weight:700; font-size:1.55rem; color:var(--ignition); line-height:1; }
.vv-price--poa{ font-size:1.15rem; color:var(--silver); }
.vv-card__actions{ display:flex; gap:.4rem; }

/* ---- Featured / band layouts ---- */
.vv-band{ background:linear-gradient(180deg,var(--surface),var(--graphite)); border-block:1px solid var(--hairline); }
.vv-split{ display:grid; grid-template-columns:1fr 1fr; gap:clamp(1.5rem,4vw,3.5rem); align-items:center; }
.vv-card-panel{ background:var(--surface); border:1px solid var(--hairline); border-radius:var(--r-md); padding:clamp(1.4rem,3vw,2.2rem); }

/* feature list */
.vv-features{ display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); gap:1.25rem; }
.vv-feature{ background:var(--surface); border:1px solid var(--hairline); border-radius:var(--r-md); padding:1.4rem; }
.vv-feature h3,.vv-feature h4{ font-size:1.15rem; margin-bottom:.4rem; line-height:1.2; }
.vv-feature p{ margin:0; color:var(--silver); font-size:.95rem; }
.vv-feature__ico{ color:var(--ignition); margin-bottom:.75rem; display:block; }

/* pillars */
.vv-pillars{ display:grid; grid-template-columns:repeat(3,1fr); gap:1.5rem; }
.vv-pillar{ background:var(--surface); border:1px solid var(--hairline); border-radius:var(--r-md); padding:1.75rem; position:relative; overflow:hidden; }
.vv-pillar h3{ font-size:1.3rem; }
.vv-pillar .vv-link{ margin-top:.5rem; display:inline-block; }
.vv-pillar--soon{ border-style:dashed; }
.vv-pillar__tag{ position:absolute; top:1rem; right:1rem; font-size:.68rem; letter-spacing:.1em; text-transform:uppercase; color:#7C5CFC; border:1px solid #7C5CFC; padding:.15rem .45rem; border-radius:var(--r-sm); }

/* ---- Archive filter bar ---- */
.vv-filters{ position:sticky; top:var(--header-h); z-index:20; background:rgba(14,15,17,.92); backdrop-filter:blur(8px); border:1px solid var(--hairline); border-radius:var(--r-md); padding:1rem; margin-bottom:2rem; }
.vv-filters__row{ display:flex; flex-wrap:wrap; gap:.75rem; align-items:center; }
.vv-segment{ display:inline-flex; background:var(--surface-2); border:1px solid var(--hairline); border-radius:var(--r-sm); padding:3px; }
.vv-segment button{ border:0; background:none; color:var(--silver); padding:.45rem .9rem; border-radius:3px; font-weight:600; font-size:.9rem; text-transform:uppercase; letter-spacing:.03em; }
.vv-segment button.is-active{ background:var(--ignition); color:#1A1206; }
.vv-field{ display:flex; flex-direction:column; gap:.25rem; }
.vv-select,.vv-input,.vv-textarea{ background:var(--surface-2); border:1px solid var(--hairline); color:var(--chrome); border-radius:var(--r-sm); padding:.5rem .65rem; font:inherit; font-size:.92rem; min-width:120px; }
.vv-select:focus,.vv-input:focus,.vv-textarea:focus{ border-color:var(--ignition); outline:none; }
.vv-filters__count{ margin-left:auto; color:var(--steel); font-size:.85rem; letter-spacing:.04em; text-transform:uppercase; }
.vv-empty{ text-align:center; padding:4rem 1rem; border:1px dashed var(--hairline); border-radius:var(--r-md); }
.vv-empty .vv-gauge{ width:90px; margin:0 auto 1rem; opacity:.5; }
.is-loading .vv-grid{ opacity:.45; transition:opacity .2s; pointer-events:none; }

/* ---- Single vehicle ---- */
.vv-single{ display:grid; grid-template-columns:1.5fr 1fr; gap:clamp(1.5rem,4vw,3rem); align-items:start; }
.vv-gallery__main{ position:relative; aspect-ratio:16/10; border-radius:var(--r-md); overflow:hidden; border:1px solid var(--hairline); background:var(--surface-2); }
.vv-gallery__main img{ width:100%; height:100%; object-fit:cover; }
.vv-gallery__main button{ position:absolute; inset:0; background:none; border:0; padding:0; width:100%; }
.vv-gallery__thumbs{ display:grid; grid-template-columns:repeat(5,1fr); gap:.5rem; margin-top:.6rem; }
.vv-gallery__thumbs button{ aspect-ratio:1; border:1px solid var(--hairline); border-radius:var(--r-sm); overflow:hidden; background:var(--surface-2); padding:0; }
.vv-gallery__thumbs button.is-active{ border-color:var(--ignition); }
.vv-gallery__thumbs img{ width:100%; height:100%; object-fit:cover; }

.vv-specpanel{ background:var(--surface); border:1px solid var(--hairline); border-radius:var(--r-md); padding:1.5rem; position:sticky; top:calc(var(--header-h) + 1rem); }
.vv-specpanel__price{ display:flex; align-items:center; justify-content:space-between; gap:1rem; margin-bottom:1rem; }
.vv-specpanel__price .vv-price{ font-size:2.4rem; }
/* Badge is absolute for card/gallery overlays; keep it in-flow inside the spec panel. */
.vv-specpanel__price .vv-badge{ position:static; flex:none; }
.vv-spec{ display:grid; grid-template-columns:1fr 1fr; gap:1px; background:var(--hairline); border:1px solid var(--hairline); border-radius:var(--r-sm); overflow:hidden; margin:1.25rem 0; }
.vv-spec div{ background:var(--surface); padding:.7rem .85rem; }
.vv-spec dt{ font-size:.7rem; letter-spacing:.08em; text-transform:uppercase; color:var(--steel); margin-bottom:.15rem; }
.vv-spec dd{ margin:0; font-family:var(--font-display); font-weight:600; font-size:1.05rem; color:var(--chrome); }
.vv-specpanel__cta{ display:flex; flex-direction:column; gap:.6rem; margin-top:1.25rem; }
.vv-alsoon{ display:flex; gap:.5rem; margin-top:.75rem; flex-wrap:wrap; }
.vv-desc{ margin-top:2.5rem; }
.vv-desc h2{ font-size:1.5rem; }

/* lightbox */
.vv-lightbox{ position:fixed; inset:0; z-index:1000; background:rgba(8,9,11,.95); display:none; align-items:center; justify-content:center; padding:2rem; }
.vv-lightbox.is-open{ display:flex; }
.vv-lightbox img{ max-width:92vw; max-height:86vh; object-fit:contain; border-radius:var(--r-sm); }
.vv-lightbox__close,.vv-lightbox__nav{ position:absolute; background:var(--surface); border:1px solid var(--hairline); color:var(--chrome); width:48px; height:48px; border-radius:50%; font-size:1.4rem; display:flex; align-items:center; justify-content:center; }
.vv-lightbox__close{ top:1.25rem; right:1.25rem; }
.vv-lightbox__nav{ top:50%; transform:translateY(-50%); }
.vv-lightbox__nav--prev{ left:1.25rem; } .vv-lightbox__nav--next{ right:1.25rem; }

/* ---- Forms ---- */
.vv-form{ display:grid; gap:1rem; }
.vv-form__row{ display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
.vv-form label{ display:block; font-size:.82rem; letter-spacing:.05em; text-transform:uppercase; color:var(--silver); margin-bottom:.35rem; }
.vv-form .vv-input,.vv-form .vv-textarea,.vv-form .vv-select{ width:100%; }
.vv-textarea{ min-height:120px; resize:vertical; }
.vv-form__hp{ position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }
.vv-form__msg{ display:none; border-radius:var(--r-sm); padding:.85rem 1rem; font-weight:500; }
.vv-form__msg.is-ok{ display:block; background:rgba(54,199,126,.12); border:1px solid var(--available); color:#bff3d8; }
.vv-form__msg.is-err{ display:block; background:rgba(229,72,77,.12); border:1px solid var(--sold); color:#f6c9cb; }
.vv-field-error{ color:#f3a9ab; font-size:.8rem; margin-top:.25rem; display:none; }
.vv-input.has-error,.vv-textarea.has-error{ border-color:var(--sold); }
.vv-form[aria-busy="true"] .vv-btn{ opacity:.6; pointer-events:none; }

/* ---- eBay strip ---- */
.vv-ebay-strip{ display:grid; grid-auto-flow:column; grid-auto-columns:minmax(220px,1fr); gap:1rem; overflow-x:auto; padding-bottom:.75rem; scroll-snap-type:x mandatory; scrollbar-width:thin; }
.vv-ebay-card{ scroll-snap-align:start; background:var(--surface); border:1px solid var(--hairline); border-radius:var(--r-md); overflow:hidden; display:flex; flex-direction:column; transition:transform .2s var(--ease), border-color .2s; }
.vv-ebay-card:hover{ transform:translateY(-3px); border-color:#3a414b; }
.vv-ebay-card__img{ width:100%; aspect-ratio:4/3; object-fit:cover; display:block; background-color:var(--surface-2); }
.vv-ebay-card__body{ padding:.85rem; display:flex; flex-direction:column; gap:.35rem; flex:1; }
.vv-ebay-card__title{ font-size:.92rem; color:var(--silver); line-height:1.3; }
.vv-ebay-card__price{ font-family:var(--font-display); font-weight:700; color:var(--ignition); font-size:1.15rem; }
.vv-ebay-card__cta{ margin-top:auto; font-size:.8rem; color:var(--steel); text-transform:uppercase; letter-spacing:.05em; }
.vv-ebay-strip__foot{ margin-top:.75rem; text-align:right; }
.vv-ebay-fallback{ text-align:center; background:var(--surface); border:1px dashed var(--hairline); border-radius:var(--r-md); padding:2rem; }
.vv-ebay-fallback p{ color:var(--silver); }

/* ---- Map / contact ---- */
.vv-map{ aspect-ratio:16/9; border:1px solid var(--hairline); border-radius:var(--r-md); overflow:hidden; }
.vv-map iframe{ width:100%; height:100%; border:0; filter:grayscale(.6) invert(.92) hue-rotate(180deg) contrast(.9); }
.vv-contact-grid{ display:grid; grid-template-columns:1fr 1fr; gap:clamp(1.5rem,4vw,3rem); }
.vv-hours{ display:grid; gap:.3rem; }
.vv-hours div{ display:flex; justify-content:space-between; gap:1rem; padding:.4rem 0; border-bottom:1px solid var(--hairline); }
.vv-hours dt{ color:var(--silver); } .vv-hours dd{ margin:0; color:var(--chrome); font-weight:600; }
.vv-infolist{ display:grid; gap:1rem; margin:1.5rem 0; }
.vv-infolist a{ color:var(--chrome); } .vv-infolist a:hover{ color:var(--ignition); }

/* ---- Footer ---- */
.vv-footer{ background:#0A0B0D; border-top:1px solid var(--hairline); padding-block:clamp(2.5rem,5vw,4rem) 1.5rem; }
.vv-footer__grid{ display:grid; grid-template-columns:1.4fr 1fr 1fr; gap:2rem; }
.vv-footer h4{ font-size:.85rem; letter-spacing:.1em; text-transform:uppercase; color:var(--steel); }
.vv-footer a{ color:var(--silver); } .vv-footer a:hover{ color:var(--chrome); }
.vv-footer__nav{ display:grid; gap:.5rem; }
.vv-footer__bottom{ margin-top:2.5rem; padding-top:1.5rem; border-top:1px solid var(--hairline); display:flex; justify-content:space-between; gap:1rem; flex-wrap:wrap; color:var(--steel); font-size:.85rem; }

/* ---- Long-form content (the_content): vehicle descriptions, Privacy page ---- */
.vv-prose{ color:var(--silver); max-width:70ch; }
.vv-prose > *:first-child{ margin-top:0; }
.vv-prose h2,.vv-prose h3{ color:var(--chrome); margin-top:1.6em; }
.vv-prose p{ margin:0 0 1rem; }
.vv-prose ul{ list-style:disc; padding-left:1.25rem; margin:0 0 1rem; }
.vv-prose ol{ list-style:decimal; padding-left:1.25rem; margin:0 0 1rem; }
.vv-prose li{ margin:.3rem 0; }
.vv-prose a{ color:var(--ignition); text-decoration:underline; }
.vv-prose strong{ color:var(--chrome); }
.vv-prose blockquote{ border-left:3px solid var(--ignition); margin:1.5rem 0; padding:.25rem 0 .25rem 1rem; color:var(--chrome); }

/* ---- WordPress pagination ---- */
.vv-pagination .nav-links,.nav-links{ display:flex; flex-wrap:wrap; gap:.3rem; justify-content:center; margin-top:2.5rem; }
.vv-pagination .page-numbers,.nav-links .page-numbers{ display:inline-flex; align-items:center; justify-content:center; min-width:44px; min-height:44px; padding:.4rem .7rem; border:1px solid var(--hairline); border-radius:var(--r-sm); color:var(--silver); font-weight:600; }
.vv-pagination .page-numbers.current,.nav-links .page-numbers.current{ background:var(--ignition); color:#1A1206; border-color:transparent; }
.vv-pagination .page-numbers:hover,.nav-links .page-numbers:hover{ border-color:var(--silver); color:var(--chrome); }

/* ---- Reviews embed (third-party widget) ---- */
.vv-reviews-embed{ max-width:100%; overflow-x:auto; }
.vv-reviews-embed iframe{ max-width:100%; }

/* ==========================================================================
   Responsive
   ========================================================================== */
@media (max-width: 480px){
  .vv-grid{ grid-template-columns:1fr; }
}
@media (max-width: 980px){
  .vv-hero__inner{ grid-template-columns:1fr; }
  .vv-hero__gauge{ display:none; }
  .vv-pillars{ grid-template-columns:1fr; }
  .vv-split,.vv-single,.vv-contact-grid{ grid-template-columns:1fr; }
  .vv-specpanel{ position:static; }
  .vv-footer__grid{ grid-template-columns:1fr 1fr; }
}
@media (max-width: 760px){
  .vv-nav,.vv-header__cta .vv-btn{ display:none; }
  .vv-burger{ display:block; }
  .vv-mobile-nav{ display:block; position:fixed; inset:var(--header-h) 0 0; background:var(--graphite); z-index:99; transform:translateX(100%); visibility:hidden; transition:transform .25s var(--ease), visibility .25s; padding:1.5rem var(--gutter); overflow-y:auto; }
  .vv-mobile-nav.is-open{ transform:none; visibility:visible; }
  .vv-filters{ position:static; }
  .vv-filters__row{ gap:.5rem; }
  .vv-segment{ overflow-x:auto; max-width:100%; }
  .vv-filters__count{ margin-left:0; width:100%; }
  .vv-mobile-nav a{ display:block; padding:1rem 0; font-family:var(--font-display); font-size:1.4rem; text-transform:uppercase; border-bottom:1px solid var(--hairline); color:var(--chrome); }
  body.has-actionbar{ padding-bottom:68px; }
  .vv-actionbar{ display:grid; grid-template-columns:1fr 1fr; gap:1px; position:fixed; bottom:0; left:0; right:0; z-index:90; background:var(--hairline); border-top:1px solid var(--hairline); }
  .vv-actionbar a{ display:flex; align-items:center; justify-content:center; gap:.5rem; padding:1rem; font-family:var(--font-display); font-weight:600; text-transform:uppercase; letter-spacing:.04em; background:var(--surface); color:var(--chrome); }
  .vv-actionbar a.vv-actionbar__call{ background:var(--ignition); color:#1A1206; }
  .vv-form__row{ grid-template-columns:1fr; }
}
@media (max-width: 420px){
  .vv-grid{ grid-template-columns:1fr; }
  .vv-spec{ grid-template-columns:1fr; }
  .vv-footer__grid{ grid-template-columns:1fr; }
  :root{ --gutter:1rem; }
}
