/* Vehicle Guard dash cam finder (vgf). Sits inside .vgv so it uses the same tokens. */
.vgv--finder{background:var(--bg)}
.vgf{padding:max(48px,min(7vw,88px)) 0;border-bottom:1px solid var(--line);background:radial-gradient(50% 60% at 50% 0%,#d4af5714,transparent 70%),var(--bg);scroll-margin-top:72px}
.vgf-head{max-width:720px;margin:0 auto;text-align:center}
.vgf-head .vgv-h2 span{color:var(--gold)}
.vgf-head .vgv-sub{margin-left:auto;margin-right:auto}
.vgf-panel{margin-top:28px;border:1px solid var(--line);border-radius:24px;background:var(--card);padding:max(18px,min(3.4vw,32px));box-shadow:0 18px 48px #00000047}

.vgf-bar{display:flex;align-items:center;gap:14px;margin-bottom:20px}
.vgf-step{font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--gold);white-space:nowrap}
.vgf-track{flex:1;height:4px;border-radius:99px;background:var(--line);overflow:hidden}
.vgf-track span{display:block;height:100%;width:0;border-radius:inherit;background:var(--gold-grad);transition:width .35s var(--ease)}
.vgf-back{display:inline-flex;align-items:center;gap:4px;border:0;background:none;color:var(--body);font:600 14px/1 inherit;font-family:inherit;cursor:pointer;padding:6px 4px;border-radius:8px}
.vgf-back:hover{color:var(--ink)}
.vgf-back .vgf-back-ic{width:16px;height:16px;transform:rotate(90deg)}

.vgf-q{border:0;margin:0;padding:0;min-width:0}
.vgf-q-t{display:block;color:var(--ink);font-size:max(20px,min(2.6vw,24px));font-weight:800;letter-spacing:-.01em;line-height:1.25;margin:0 0 16px;padding:0;outline:none}
.vgf-opts{display:grid;grid-template-columns:minmax(0,1fr);gap:10px}
@media (min-width:600px){.vgf-opts{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}}
@media (min-width:1024px){.vgf-opts{grid-template-columns:repeat(4,minmax(0,1fr))}}
.vgf-opt{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto auto;column-gap:14px;row-gap:2px;align-items:center;text-align:left;width:100%;padding:16px;border:1px solid var(--line);border-radius:16px;background:var(--raised);color:var(--body);font-family:inherit;cursor:pointer;transition:border-color .2s var(--ease),transform .2s var(--ease),background-color .2s var(--ease)}
.vgf-opt .vgv-tile{grid-row:1/3}
.vgf-opt-t{color:var(--ink);font-weight:700;font-size:16px;line-height:1.3}
.vgf-opt-d{font-size:13.5px;line-height:1.4;color:var(--muted)}
@media (min-width:1024px){.vgf-opt{grid-template-columns:minmax(0,1fr);grid-template-rows:auto;row-gap:6px;padding:20px 18px;align-items:start}.vgf-opt .vgv-tile{grid-row:auto;margin-bottom:6px}}
.vgf-opt:hover{border-color:var(--gold-edge);background:var(--hover);transform:translateY(-2px)}
.vgf-opt:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.vgf-opt[aria-pressed="true"]{border-color:var(--gold);box-shadow:inset 0 0 0 1px var(--gold)}

.vgf-res-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px 18px}
.vgf-res-head .vgf-q-t{margin:0}
.vgf-again{border:0;background:none;cursor:pointer;font-family:inherit;font-size:15px;padding:0}
.vgf-again .vgv-ic{width:16px;height:16px}
.vgf-res-sum{margin:6px 0 18px;font-size:15px;color:var(--muted)}
.vgf-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:minmax(0,1fr);gap:12px}
@media (min-width:900px){.vgf-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}}
.vgf-card{min-width:0}
.vgf-card-a{display:grid;grid-template-columns:104px minmax(0,1fr);gap:14px;height:100%;padding:12px;border:1px solid var(--line);border-radius:18px;background:var(--raised);color:var(--body);text-decoration:none;transition:border-color .2s var(--ease),transform .2s var(--ease)}
@media (min-width:900px){.vgf-card-a{grid-template-columns:minmax(0,1fr);padding:0;overflow:hidden}}
.vgf-card-a:hover{border-color:var(--gold-edge);transform:translateY(-3px);color:var(--body)}
.vgf-card.is-top .vgf-card-a{border-color:var(--gold);box-shadow:inset 0 0 0 1px var(--gold)}
.vgf-card-media{position:relative;aspect-ratio:1;border-radius:12px;background:radial-gradient(70% 70% at 50% 45%,#d4af5724,#0000 70%),linear-gradient(160deg,#1d2635,#0e131c);overflow:hidden}
@media (min-width:900px){.vgf-card-media{aspect-ratio:16/10;border-radius:0;border-bottom:1px solid var(--line)}}
.vgf-card-media img{position:absolute;inset:8%;width:84%;height:84%;object-fit:contain;filter:drop-shadow(0 12px 16px #00000080)}
.vgf-card-body{display:flex;flex-direction:column;gap:4px;min-width:0}
@media (min-width:900px){.vgf-card-body{padding:16px 18px 18px}}
.vgf-card-top{display:flex;flex-wrap:wrap;align-items:center;gap:6px 8px}
.vgf-brand{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--gold)}
.vgf-brand--road-angel{color:#ff8a33}
.vgf-best{background:var(--gold-grad);color:var(--gold-ink);border-radius:999px;padding:2px 9px;font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.vgf-name{color:var(--ink);font-size:19px;font-weight:800;letter-spacing:-.01em;line-height:1.2}
.vgf-kind{font-size:13.5px;color:var(--muted)}
.vgf-why{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:5px}
.vgf-why li{display:flex;gap:7px;align-items:flex-start;font-size:14px;line-height:1.4;color:var(--body);margin:0}
.vgf-why .vgv-ic{width:16px;height:16px;flex:none;margin-top:2px;color:var(--gold)}
.vgf-foot{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-top:auto;padding-top:12px}
.vgf-price{color:var(--gold);font-size:20px;font-weight:800;letter-spacing:-.02em}
.vgf-price small{color:var(--muted);font-size:12.5px;font-weight:500;margin-left:5px;letter-spacing:0}
.vgf-price.is-soon{font-size:15px;color:var(--body)}
.vgf-go{display:inline-flex;align-items:center;gap:6px;color:var(--gold-l);font-weight:700;font-size:14.5px}
.vgf-go .vgv-ic{width:16px;height:16px;transition:transform .2s var(--ease)}
.vgf-card-a:hover .vgf-go .vgv-ic{transform:translateX(3px)}
.vgf-help{margin:18px 0 0;font-size:15px}

@media (prefers-reduced-motion:reduce){.vgf-opt,.vgf-card-a,.vgf-track span{transition:none}.vgf-opt:hover,.vgf-card-a:hover{transform:none}}

/* Theme kit styles every <button> gold; reset them inside the finder (higher specificity than .elementor-kit-6 button) */
.vgv.vgv--finder button.vgf-opt,.vgv.vgv--finder button.vgf-back,.vgv.vgv--finder button.vgf-again{box-shadow:none;text-transform:none;letter-spacing:normal;line-height:normal;font-family:inherit;min-height:0;height:auto}
.vgv.vgv--finder button.vgf-opt{background:var(--raised);color:var(--body);border:1px solid var(--line);border-radius:16px;padding:16px;font-size:15px;font-weight:400}
@media (min-width:1024px){.vgv.vgv--finder button.vgf-opt{padding:20px 18px}}
.vgv.vgv--finder button.vgf-opt:hover{background:var(--hover);border-color:var(--gold-edge);color:var(--body)}
.vgv.vgv--finder button.vgf-opt:focus{background:var(--raised);color:var(--body)}
.vgv.vgv--finder button.vgf-opt[aria-pressed="true"]{border-color:var(--gold);box-shadow:inset 0 0 0 1px var(--gold)}
.vgv.vgv--finder button.vgf-back,.vgv.vgv--finder button.vgf-back:hover,.vgv.vgv--finder button.vgf-back:focus{background:none;border:0;border-radius:8px;padding:6px 4px;font-size:14px;font-weight:600;color:var(--body)}
.vgv.vgv--finder button.vgf-back:hover{color:var(--ink)}
.vgv.vgv--finder button.vgf-again,.vgv.vgv--finder button.vgf-again:hover,.vgv.vgv--finder button.vgf-again:focus{background:none;border:0;border-radius:0;padding:0;font-size:15px;font-weight:700;color:var(--gold-l)}
.vgv.vgv--finder button[hidden]{display:none}
/* Two results: two wide columns rather than leaving a gap */
@media (min-width:900px){.vgf-list:has(>li:nth-child(2):last-child){grid-template-columns:repeat(2,minmax(0,1fr))}.vgf-list:has(>li:nth-child(2):last-child) .vgf-card-media{aspect-ratio:16/8}}
.vgf-go,.vgf-price{white-space:nowrap}
@media (max-width:599px){.vgf-card-a{grid-template-columns:84px minmax(0,1fr);gap:12px}.vgf-foot{flex-wrap:wrap;row-gap:6px}}

/* Seamless join with the page hero: glow sits inside the section (top edge is plain page colour), hero fades to solid earlier */
.vgv.vgv--finder .vgf{background:radial-gradient(42% 46% at 50% 34%,#d4af570d,#d4af5700 72%),var(--bg);border-top:0}
.elementor-element-vgdshero.vg-hero::before{background:linear-gradient(rgba(11,14,22,.86) 0%,rgba(11,14,22,.3) 22%,rgba(11,14,22,.6) 55%,rgb(13,17,26) 86%,rgb(13,17,26) 100%),radial-gradient(120% 90% at 50% 55%,rgba(11,14,22,0) 25%,rgba(11,14,22,.72) 100%)}/* Overlap the hero by 2px so its photo can't show as a hairline at a fractional-pixel edge */
.elementor-element.elementor-element-vgfind{margin-top:-2px;position:relative;z-index:1}

.vgf-brand--viofo{color:#ff5a66}
