@font-face{font-family:"Plus Jakarta Sans";src:url(/assets/fonts/plus-jakarta-sans-5.3.0-latin-wght-normal.woff2) format("woff2");font-weight:200 800;font-style:normal;font-display:swap}
@font-face{font-family:"Plus Jakarta Sans";src:url(/assets/fonts/plus-jakarta-sans-5.3.0-latin-wght-italic.woff2) format("woff2");font-weight:200 800;font-style:italic;font-display:swap}
/* Vouchfield design tokens. Every colour, font and radius the site uses starts here, so a
   change of palette is a one-line change. test_design_tokens.py checks that every
   text/background pair listed there meets WCAG AA contrast. */
:root{
  /* Brand purple */
  --vf-primary:#6d28d9;
  --vf-primary-hover:#5b21b6;
  --vf-primary-deep:#4c1d95;
  --vf-primary-ink:#5b21b6;
  --vf-primary-soft:#ede9fe;
  --vf-primary-soft-2:#ddd6fe;
  --vf-primary-bright:#8b5cf6;
  --vf-primary-muted:#c4b5fd;
  --vf-on-primary:#ffffff;
  /* Text */
  --vf-ink:#1e1033;
  --vf-ink-2:#3b2f52;
  --vf-muted:#5f5673;
  --vf-subtle:#6b6380;
  /* Surfaces and lines */
  --vf-bg:#f4f1fb;
  --vf-surface:#ffffff;
  --vf-surface-2:#f6f3ff;
  --vf-surface-3:#ede9fe;
  --vf-line:#e6e0f5;
  --vf-line-strong:#d4caf0;
  /* Dark sections (hero bands, the brand panel) */
  --vf-night:#1e1033;
  --vf-night-2:#2e1065;
  --vf-on-night:#ffffff;
  --vf-on-night-muted:#ddd6fe;
  /* Warm accent, used sparingly for highlights */
  --vf-accent:#db2777;
  --vf-accent-ink:#be185d;
  --vf-accent-soft:#fce7f3;
  /* Meaning: pass / needs work / fail. Also the map grid (1-3, 4-10, 11-20). Keep distinct from purple. */
  --vf-good:#17664b;
  --vf-good-bg:#e7f4ec;
  --vf-warn:#936216;
  --vf-warn-bg:#fff5df;
  --vf-bad:#ac3943;
  --vf-bad-bg:#fcebee;
  /* The words "Google Maps" under Google Places data: the grey Google asks for (ui.google_maps_attribution). */
  --vf-maps-grey:#5e5e5e;
  /* Focus ring */
  --vf-focus:#6d28d9;
  /* The chrome (9 Oct 2026 refresh): the bar across the top, the workspace menu and the footers are
     night purple; the page stays light. Text on it uses the on-night tokens above. */
  --vf-chrome:#1e1033;
  --vf-chrome-2:#2a1650;
  --vf-chrome-line:rgba(255,255,255,.09);
  --vf-chrome-hover:rgba(255,255,255,.08);
  --vf-chrome-active:rgba(255,255,255,.14);
  /* Type */
  --vf-font:"Plus Jakarta Sans",ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --vf-font-display:var(--vf-font);
  --vf-font-label:var(--vf-font);
  --vf-font-code:ui-monospace,"SF Mono",Menlo,Consolas,monospace;
  /* Shape and depth */
  --vf-radius-sm:8px;
  --vf-radius:12px;
  --vf-radius-lg:18px;
  --vf-shadow-sm:0 1px 2px rgba(30,16,51,.06),0 1px 3px rgba(30,16,51,.04);
  --vf-shadow:0 1px 3px rgba(30,16,51,.05),0 8px 24px rgba(76,29,149,.07);
  --vf-shadow-lg:0 2px 6px rgba(30,16,51,.06),0 24px 48px rgba(76,29,149,.12);
  --vf-gradient:linear-gradient(135deg,#7c3aed 0%,#6d28d9 45%,#5b21b6 100%);
  --vf-ease:cubic-bezier(.2,.7,.3,1);

  /* Names the older stylesheets use, pointed at the tokens above. */
  --bg:var(--vf-bg);--surface:var(--vf-surface);--surface2:var(--vf-surface-2);--ink:var(--vf-ink);--muted:var(--vf-muted);
  --accent:var(--vf-primary);--accent2:var(--vf-primary-hover);--soft:var(--vf-primary-soft);--line:var(--vf-line);
  --good:var(--vf-good);--good-bg:var(--vf-good-bg);--mid:var(--vf-warn);--mid-bg:var(--vf-warn-bg);--low:var(--vf-bad);--low-bg:var(--vf-bad-bg);
  --shadow:var(--vf-shadow);
  color-scheme:light;
}

*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--vf-font);font-size:17px;line-height:1.6}
a{color:var(--accent)}
.top{position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.top .in{max-width:980px;margin:0 auto;padding:14px 22px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.brand{font-family:var(--vf-font-display);font-weight:700;font-size:21px;color:var(--ink);text-decoration:none;letter-spacing:-.01em;display:flex;align-items:center;gap:9px}
.brand i{width:12px;height:12px;border-radius:50%;background:var(--accent);display:inline-block;box-shadow:0 0 0 4px var(--soft)}
nav{display:flex;gap:6px;flex-wrap:wrap;align-items:center}nav a{text-decoration:none;color:var(--muted);font-size:14.5px;font-weight:600;padding:8px 12px;border-radius:8px}nav a:hover,nav a.on{color:var(--ink);background:var(--surface2)}
nav a.navcta{background:var(--accent);color:#fff}nav a.navcta:hover{background:var(--accent2);color:#fff}
.wrap{max-width:760px;margin:0 auto;padding:44px 22px 80px}.wide{max-width:980px}
h1,h2,h3{font-family:var(--vf-font-display);font-weight:700;margin:0;letter-spacing:-.01em;text-wrap:balance}
h1{font-size:clamp(30px,4.6vw,42px);line-height:1.12}h2{font-size:21px}
.eyebrow{font-family:var(--vf-font-label);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin:0 0 12px}
.dek{color:var(--muted);margin:14px 0 26px;max-width:58ch;font-size:18px}
.card{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:26px 28px}
.card+.card,.card+.cta,.cta+.card{margin-top:16px}
label{display:block;font-size:12.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:16px 0 6px}label:first-child{margin-top:0}
input,select{width:100%;padding:13px 14px;border:1px solid var(--line);border-radius:10px;background:var(--bg);color:var(--ink);font-size:16px;font-family:inherit;transition:border-color .15s,box-shadow .15s}
input:focus,select:focus{outline:0;border-color:var(--accent);box-shadow:0 0 0 3px var(--soft)}
.row{display:grid;grid-template-columns:2fr 1fr;gap:12px}@media(max-width:520px){.row{grid-template-columns:1fr}}
.btn,button{display:inline-block;margin-top:18px;background:var(--accent);color:#fff;border:0;border-radius:10px;padding:14px 22px;font-size:16px;font-weight:700;cursor:pointer;width:100%;font-family:inherit;text-decoration:none;text-align:center;transition:background .15s,transform .05s}
.btn:hover,button:hover{background:var(--accent2)}.btn:active,button:active{transform:translateY(1px)}
.btn.ghost{background:transparent;color:var(--accent);border:1.5px solid var(--accent)}.btn.ghost:hover{background:var(--soft)}
.btn.auto{width:auto}
.trust{display:flex;gap:18px;flex-wrap:wrap;margin-top:20px;font-size:14px;color:var(--muted)}.trust span::before{content:"✓ ";color:var(--good);font-weight:700}
.how{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:34px}@media(max-width:640px){.how{grid-template-columns:1fr}}
.how div{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:16px 18px;font-size:14.5px}.how b{display:block;font-family:var(--vf-font-display);font-weight:700;font-size:17px;margin-bottom:4px}.how em{font-style:normal;font-family:var(--vf-font-label);font-size:11px;color:var(--accent);letter-spacing:.06em;text-transform:uppercase}
.gauge{display:grid;grid-template-columns:150px 1fr;gap:26px;align-items:center}@media(max-width:560px){.gauge{grid-template-columns:1fr;justify-items:start}}
.ring{position:relative;width:150px;height:150px}.ring svg{transform:rotate(-90deg)}.ring .v{position:absolute;inset:0;display:grid;place-items:center;font-family:var(--vf-font-display);font-size:50px;font-weight:700;line-height:1}.ring .v small{display:block;font-family:var(--vf-font-label);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-top:2px}
.l{font-family:var(--vf-font-label);font-size:11.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}
.verdict{font-size:20px;font-family:var(--vf-font-display);font-weight:700;line-height:1.35;margin:8px 0 6px}
.pill{display:inline-block;padding:3px 10px;border-radius:999px;font-family:var(--vf-font-label);font-size:12px;font-weight:700}
.good{background:var(--good-bg);color:var(--good)}.mid{background:var(--mid-bg);color:var(--mid)}.low{background:var(--low-bg);color:var(--low)}
.comps{list-style:none;padding:0;margin:12px 0 0}.comps li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid var(--line)}.comps li:last-child{border-bottom:0}.comps b{font-weight:600}.comps .n{font-family:var(--vf-font-label);font-size:12.5px;color:var(--muted);white-space:nowrap}
.comps .barw{flex:1;height:8px;background:var(--line);border-radius:999px;overflow:hidden;max-width:180px}.comps .barw i{display:block;height:100%;background:var(--accent)}
.comps li{display:grid;grid-template-columns:minmax(0,1fr) minmax(60px,180px) auto;justify-content:normal}.comps li>.n{grid-column:3;text-align:right}.comps .barw{width:100%}
.blur{filter:blur(7px);user-select:none;pointer-events:none}.gate{margin-top:-70px;position:relative;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:24px 26px;box-shadow:var(--shadow)}
table{border-collapse:collapse;width:100%;font-size:14.5px}td,th{padding:10px 10px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}th{font-family:var(--vf-font-label);font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);font-weight:500}tr:last-child td{border-bottom:0}
td.yes{color:var(--good);font-weight:700;white-space:nowrap}td.no{color:var(--low);font-weight:700;white-space:nowrap}.muted{color:var(--muted)}.note{font-size:13.5px;color:var(--muted);margin-top:12px;line-height:1.5}
ul{padding-left:20px}li{margin-bottom:4px}
.cta{background:var(--soft);border-radius:16px;padding:24px 26px;margin-top:16px}.cta h2{margin-bottom:8px}
.plans{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}@media(max-width:600px){.plans{grid-template-columns:1fr}}
.plan{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:20px 22px;display:flex;flex-direction:column}.plan.hi{border-color:var(--accent);box-shadow:var(--shadow)}
.plan .amt{font-family:var(--vf-font-display);font-weight:700;font-size:36px;color:var(--accent);line-height:1}.plan .amt small{font-size:14px;color:var(--muted);font-family:inherit;font-weight:400}.plan h3{font-size:18px;margin:8px 0 6px}.plan p{margin:0 0 6px;font-size:14.5px;color:var(--muted);flex:1}.plan .tag{font-family:var(--vf-font-label);font-size:11.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--accent);margin-bottom:8px}
.plan ul{margin:8px 0 10px;padding-left:18px;font-size:14px}.plan li{margin-bottom:3px}
.picker{position:relative}.sug{position:absolute;left:0;right:0;top:calc(100% + 4px);background:var(--surface);border:1px solid var(--line);border-radius:10px;z-index:5;overflow:hidden;box-shadow:var(--shadow)}
.sug div{padding:11px 14px;cursor:pointer;border-bottom:1px solid var(--line)}.sug div:hover{background:var(--soft)}.sug div span{color:var(--muted);font-size:12.5px;margin-left:8px}.sug div.other{color:var(--accent);border-bottom:0}
.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.chip{padding:6px 12px;border:1px solid var(--line);border-radius:999px;font-size:13.5px;cursor:pointer;background:var(--bg);transition:border-color .15s}.chip:hover{border-color:var(--accent);color:var(--accent)}
small.demo{display:inline-block;background:var(--mid-bg);color:var(--mid);padding:4px 11px;border-radius:999px;font-family:var(--vf-font-label);font-size:11px;margin-bottom:14px}
.steps{list-style:none;padding:0;margin:14px 0 0}.steps li{display:flex;gap:12px;align-items:center;padding:9px 0;color:var(--muted);font-size:15px}.steps li i{width:22px;height:22px;border-radius:50%;border:2px solid var(--line);display:inline-grid;place-items:center;font-style:normal;font-size:12px;flex:none}.steps li.done{color:var(--ink)}.steps li.done i{background:var(--good);border-color:var(--good);color:#fff}.steps li.now i{border-color:var(--accent);animation:pulse 1.2s infinite}
@keyframes pulse{0%{box-shadow:0 0 0 0 var(--soft)}70%{box-shadow:0 0 0 8px transparent}100%{box-shadow:0 0 0 0 transparent}}
.bar{height:10px;background:var(--line);border-radius:999px;overflow:hidden;margin:14px 0 6px}.bar i{display:block;height:100%;background:var(--accent);transition:width .6s ease}
.rank{font-family:var(--vf-font-display);font-weight:700;font-size:20px;color:var(--muted);width:36px}
footer{border-top:1px solid var(--line);margin-top:40px}footer .in{max-width:980px;margin:0 auto;padding:22px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-size:13.5px;color:var(--muted)}footer a{color:var(--muted)}
.empty{padding:36px 20px;text-align:center;color:var(--muted)}
.qlist{list-style:none;padding:0;margin:14px 0 0}
.qlist li{padding:14px 0;border-bottom:1px solid var(--line)}.qlist li:last-child{border-bottom:0}
.qlist .qh{display:flex;justify-content:space-between;align-items:baseline;gap:14px;flex-wrap:wrap}
.qlist .q{font-weight:600;flex:1;min-width:0}
.qlist .tag{font-family:var(--vf-font-label);font-size:11px;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap;padding:3px 9px;border-radius:999px}
.qlist .tag.y{background:var(--good-bg);color:var(--good)}.qlist .tag.n{background:var(--low-bg);color:var(--low)}
.qlist .sub{font-size:13.5px;color:var(--muted);margin-top:5px}.qlist .sub b{font-weight:600;color:var(--muted)}
.scroll table{min-width:560px}
/* ---- the report as a DOCUMENT, not a web page ------------------------------------
   A prospect decides whether we are serious in about four seconds of looking at this,
   and a fair number of them will print it or save it as a PDF before showing a partner.
   So the report gets a masthead, numbered sections, and a print stylesheet. */
.doc{max-width:860px;margin:0 auto;padding:0 22px 80px}
.masthead{border-bottom:2px solid var(--ink);padding:30px 0 18px;margin-bottom:30px;display:flex;justify-content:space-between;align-items:flex-end;gap:22px;flex-wrap:wrap}
.masthead .who{flex:1;min-width:240px}
.masthead .prepared{font-family:var(--vf-font-label);font-size:10.5px;letter-spacing:.11em;text-transform:uppercase;color:var(--muted);margin:0 0 8px}
.masthead h1{font-size:clamp(26px,3.6vw,36px);line-height:1.08;margin:0}
.masthead .sub{color:var(--muted);font-size:14.5px;margin-top:7px}
.masthead .mark{text-align:right;font-family:var(--vf-font-display);font-size:17px;font-weight:700;letter-spacing:-.01em;white-space:nowrap}
.masthead .mark small{display:block;font-family:var(--vf-font-label);font-size:10.5px;font-weight:400;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);margin-top:4px}
.sec{margin-top:34px}
.sec>h2{display:flex;align-items:baseline;gap:12px;padding-bottom:9px;border-bottom:1px solid var(--line);margin-bottom:16px}
.sec>h2 em{font-style:normal;font-family:var(--vf-font-label);font-size:11.5px;letter-spacing:.08em;color:var(--accent);flex:none}
.sec>h2 .rest{flex:1}
.keyfind{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--surface)}
@media(max-width:640px){.keyfind{grid-template-columns:1fr}}
.keyfind div{padding:18px 20px;border-right:1px solid var(--line)}
.keyfind div:last-child{border-right:0}
@media(max-width:640px){.keyfind div{border-right:0;border-bottom:1px solid var(--line)}.keyfind div:last-child{border-bottom:0}}
.keyfind b{display:block;font-family:var(--vf-font-display);font-weight:700;font-size:30px;line-height:1.1;letter-spacing:-.01em}
.keyfind span{display:block;font-size:13.5px;color:var(--muted);margin-top:5px;line-height:1.45}
.method{font-size:13px;color:var(--muted);border-left:2px solid var(--line);padding:2px 0 2px 14px;margin-top:14px;line-height:1.55}
.reach{list-style:none;padding:0;margin:0}
.reach li{display:flex;gap:11px;align-items:flex-start;padding:11px 0;border-bottom:1px solid var(--line);font-size:15.5px}
.reach li:last-child{border-bottom:0}
.reach li::before{content:"!";flex:none;width:19px;height:19px;border-radius:50%;background:var(--mid-bg);color:var(--mid);font-family:var(--vf-font-label);font-size:12px;font-weight:700;display:grid;place-items:center;margin-top:2px}
.reach li.ok::before{content:"¹3";background:var(--good-bg);color:var(--good)}
/* What AI says vs what's true. With it, the key findings are four tiles: two by two on a
   laptop (four in a row is too narrow for their sentences), one column on a phone. */
.keyfind.four{grid-template-columns:repeat(2,minmax(0,1fr))}
.keyfind.four div:nth-child(2n){border-right:0}
.keyfind.four div:nth-child(-n+2){border-bottom:1px solid var(--line)}
@media(max-width:640px){.keyfind.four{grid-template-columns:1fr}}
.facts-lead{margin:10px 0 0;font-size:16px;line-height:1.5}
.facts{margin-top:12px}
.facts thead th:nth-child(1){width:17%}.facts thead th:nth-child(2){width:23%}
.facts thead th:nth-child(3),.facts thead th:nth-child(4){width:30%}
.facts th[scope=row]{font-family:inherit;font-size:14.5px;font-weight:600;text-transform:none;letter-spacing:0;color:var(--ink);white-space:nowrap}
.facts td{overflow-wrap:anywhere}
.facts .pill{white-space:nowrap}
.facts .pill.none{background:var(--surface2);color:var(--muted)}
.facts .facts-why{display:block;font-size:12.5px;color:var(--muted);margin-top:5px;line-height:1.4}
/* The pages an AI answer cited: visible and clickable, under what it said. */
.sub.sources{font-size:13px;color:var(--muted);margin-top:4px;line-height:1.45;overflow-wrap:anywhere}
.sub.sources a{color:inherit;text-decoration:underline}
.facts tr.has-fix>*{border-bottom:0;padding-bottom:4px}
.facts tr.fix td{padding-top:0;font-size:14px}
.facts tr.fix b{color:var(--low)}
@media screen and (max-width:820px){
  .facts thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .facts,.facts tbody,.facts tr,.facts th,.facts td{display:block;width:auto}
  .facts tr{padding:12px 0;border-bottom:1px solid var(--line)}
  .facts tr:last-child{border-bottom:0}
  .facts th[scope=row],.facts td{padding:2px 0;border:0}
  .facts th[scope=row]{padding-bottom:6px;white-space:normal}
  .facts td[data-label]::before{content:attr(data-label) ": ";font-weight:600;color:var(--muted)}
  .facts tr.has-fix{border-bottom:0;padding-bottom:4px}
  .facts tr.fix{padding-top:4px}
}
@media print{.facts tr{break-inside:avoid}.facts tr.has-fix{break-after:avoid}
  .facts th,.facts td{padding:8px}.facts th[scope=row]{white-space:normal}}
@media print{
  .top,footer,.cta,.navcta,.gate{display:none!important}
  body{background:#fff;font-size:11.5pt}
  .doc{max-width:none;padding:0}
  .card,.keyfind{break-inside:avoid;box-shadow:none}
  .sec{break-inside:avoid-page}
  a{text-decoration:none;color:var(--ink)}
  .masthead{padding-top:0}
}

.cats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:14px 0 4px}
@media(max-width:640px){.cats{grid-template-columns:repeat(2,1fr)}}
.cat{border:1px solid var(--line);border-radius:12px;padding:12px 14px;background:var(--surface);display:flex;flex-direction:column;gap:4px;min-width:0}
.cat .cn{font-size:12.5px;color:var(--muted);line-height:1.3}
.cat .cv{font-family:var(--vf-font-display);font-weight:700;font-size:24px;line-height:1;letter-spacing:-.01em}
.cat .cv small{font-family:var(--vf-font-label);font-size:10.5px;color:var(--muted);letter-spacing:.06em;margin-left:2px}
.cat.good{border-color:var(--good);background:var(--good-bg)}.cat.good .cv{color:var(--good)}
.cat.mid{border-color:var(--mid);background:var(--mid-bg)}.cat.mid .cv{color:var(--mid)}
.cat.low{border-color:var(--low);background:var(--low-bg)}.cat.low .cv{color:var(--low)}
.cat.skip .cv{color:var(--muted)}
.fixes{list-style:none;padding:0;margin:16px 0 0;counter-reset:fix}
.fixes li{display:flex;gap:12px;align-items:flex-start;padding:11px 0;border-bottom:1px solid var(--line);font-size:15px;line-height:1.5}
.fixes li:last-child{border-bottom:0}
.fixes li::before{counter-increment:fix;content:counter(fix);flex:none;width:22px;height:22px;border-radius:50%;background:var(--soft);color:var(--accent);font-family:var(--vf-font-label);font-size:12px;font-weight:700;display:grid;place-items:center;margin-top:3px}
.fixes li>div{flex:1;min-width:0}
.fixes b{font-weight:600}
.fixes .muted{display:block;font-size:13.5px;margin-top:2px}
.chks{list-style:none;padding:0;margin:0}
.chk{display:grid;grid-template-columns:22px 1fr;gap:0 12px;padding:11px 0;border-bottom:1px solid var(--line);font-size:15px;line-height:1.5}
.chk:last-child{border-bottom:0}
.chk .st{grid-row:1/span 2;width:20px;height:20px;border-radius:50%;font-family:var(--vf-font-label);font-size:12px;font-weight:700;display:grid;place-items:center;margin-top:3px;background:var(--surface2);color:var(--muted)}
.chk.pass .st{background:var(--good-bg);color:var(--good)}
.chk.warn .st{background:var(--mid-bg);color:var(--mid)}
.chk.fail .st{background:var(--low-bg);color:var(--low)}
.chk .nm{font-weight:600}
.chk .dt{color:var(--muted);font-size:14.5px}
.chk .fx{grid-column:2;color:var(--muted);font-size:13.5px;margin-top:3px;border-left:2px solid var(--line);padding-left:10px}
.chk.skip .nm,.chk.skip .dt{color:var(--muted);font-weight:400}
.sec .tally{font-family:var(--vf-font-label);font-size:11.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);flex:none;font-weight:400}
.masthead .logo{max-height:34px;max-width:160px;display:block;margin:0 0 6px auto}
.masthead .mark{max-width:100%;white-space:normal}
.masthead .prepared .grey{color:var(--muted);font-weight:400}
.keyfind .worst{font-size:22px}
.vf-pages-checked{margin:14px 0 0;font-size:14.5px;line-height:1.5}
.vf-pages-checked summary{cursor:pointer}
.vf-pages-checked ol{margin:8px 0 0;padding-left:22px}
.vf-pages-checked li{margin:4px 0;overflow-wrap:anywhere}
.vf-pages-checked a,.vf-pages-checked p{overflow-wrap:anywhere}
.chk>div{min-width:0;overflow-wrap:anywhere}
.vf-ads-social .vf-ads-topic{font-size:15px;font-weight:600;margin:16px 0 2px}
.vf-ads-social .vf-ads-topic:first-of-type{margin-top:4px}
.vf-ads-social .chk .fx b{font-weight:600}
@media(max-width:640px){.sec>h2{flex-wrap:wrap}.sec .tally{flex:1 1 100%;white-space:normal;line-height:1.5}}
.vf-pages-checked .muted{color:var(--muted)}
@media print{.vf-pages-checked[open] ol,.vf-pages-checked ol{display:block}}
.vf-report-omitted{margin:18px 0 0;border-left:4px solid var(--mid)}
.vf-report-omitted p{margin:0}
.vf-report-omitted p+p{margin-top:6px}
@media print{.cat,.chk{break-inside:avoid}.cats{gap:6px}}
@media(max-width:640px){.masthead .mark{text-align:left}.masthead .logo{margin:0 0 6px}}
.vf-portal-checks{list-style:none;margin:0;padding:0}
.vf-portal-checks li{padding:14px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}
.vf-portal-checks li:first-child{padding-top:0}.vf-portal-checks li:last-child{border-bottom:0;padding-bottom:0}
.vf-portal-checks h3{font-size:16.5px;margin:6px 0 4px;letter-spacing:-.01em}.vf-portal-checks p{margin:4px 0 0;font-size:15px}
.vf-portal-checks .tag.skip{background:var(--surface2);color:var(--muted)}
.vf-portal-checks li.skip h3,.vf-portal-checks li.skip p{color:var(--muted);font-weight:400}
@media print{.vf-portal-area .card:has(.vf-portal-checks){break-inside:auto}.vf-portal-checks li{break-inside:avoid}}
.vf-lock{display:inline-flex;align-items:center;gap:5px;margin-left:2px;padding:1px 8px;border:1px solid var(--line);border-radius:999px;background:var(--surface2);color:var(--muted);font-size:12.5px;font-weight:500;line-height:1.6;white-space:normal;vertical-align:1px}
.vf-lock-icon{flex:none}
.masthead h1{overflow-wrap:anywhere}
.vf-teaser-passed{margin:12px 0 0;font-size:14.5px}
.vf-teaser-passed summary{cursor:pointer;display:flex;align-items:center;gap:10px;color:var(--muted)}
.vf-teaser-passed summary .st{width:20px;height:20px;border-radius:50%;font-family:var(--vf-font-label);font-size:12px;font-weight:700;display:grid;place-items:center;background:var(--good-bg);color:var(--good)}
.vf-teaser-passed ul{margin:8px 0 0;padding-left:44px;color:var(--muted)}
.vf-teaser-passed li{margin:3px 0;overflow-wrap:anywhere}
.vf-teaser-clear{margin:0;color:var(--muted)}
.vf-teaser-skip{margin:10px 0 0}
.vf-teaser-cta .vf-teaser-actions{display:flex;flex-wrap:wrap;gap:10px 18px;align-items:center;margin-top:4px}
.vf-teaser-cta .vf-teaser-actions .btn,.vf-teaser-cta .vf-teaser-actions button{margin-top:10px;width:auto}
.vf-teaser-cta form{margin:0}
.vf-teaser-cta p{margin:6px 0 0}
@media(max-width:640px){.vf-teaser-cta .vf-teaser-actions .btn,.vf-teaser-cta .vf-teaser-actions button{width:100%}}
.vf-fix-first .fixes li>div>.muted{display:block;font-size:14px;margin-top:3px}
.vf-howto{display:block;font-size:14px;margin-top:4px;padding-left:10px;border-left:2px solid var(--accent)}
.vf-priority{display:inline-block;margin-left:6px;padding:0 8px;border-radius:999px;font-family:var(--vf-font-label);font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;vertical-align:2px;background:var(--surface2);color:var(--muted)}
.vf-priority.high{background:var(--low-bg);color:var(--low)}.vf-priority.medium{background:var(--mid-bg);color:var(--mid)}
.vf-passed-line{display:flex;gap:12px;align-items:flex-start;margin:12px 0 0;font-size:14px;color:var(--muted);line-height:1.55}
.vf-passed-line .st{flex:none;width:20px;height:20px;border-radius:50%;font-family:var(--vf-font-label);font-size:12px;font-weight:700;display:grid;place-items:center;background:var(--good-bg);color:var(--good);margin-top:1px}
.vf-passed-line b{color:var(--ink);font-weight:600}
.vf-area-clear{margin:0;color:var(--muted)}
.vf-skipped-line{margin:10px 0 0}
.vf-details-head{margin:40px 0 0;padding-top:18px;border-top:2px solid var(--line)}
.vf-details-head .vf-layer{font-size:24px;margin:0}.vf-details-head p{margin:4px 0 0}
.vf-method .vf-pages-checked ol{columns:1}
@page{margin:14mm 13mm}
@media print{.doc .vf-fix-first>.card{break-inside:auto}.vf-fix-first .fixes li{break-inside:avoid}.vf-passed-line,.vf-skipped-line{break-inside:avoid}.vf-details-head{break-before:page;border-top:0;margin-top:0;padding-top:0}.vf-pages-checked a{color:inherit;text-decoration:none}}
@media print{.doc .sec{break-inside:auto}.doc .sec>h2{break-after:avoid}
.doc .sec>.card:has(.chks),.doc .sec>.card:has(table),.doc .sec>.card:has(.qlist){break-inside:auto}
.doc .chk,.doc .qlist li,.doc tr{break-inside:avoid}}

.summary-head{margin-bottom:18px;padding-bottom:14px;border-bottom:3px solid var(--accent,#6d28d9)}
.summary-head h1{margin:6px 0 4px}
.summary-head p{margin:4px 0}
.summary-score{font-size:18px;font-weight:650}
.summary-block{margin:18px 0}
.summary-block h2{font-size:18px;margin:0 0 8px}
.summary-list{list-style:none;padding:0;margin:0;display:grid;gap:8px}
.summary-list li{display:grid;gap:2px;padding:10px 12px;border:1px solid var(--line,#e6e0f5);border-radius:10px}
.summary-list li span{color:var(--muted,#5f5673)}
.summary-list li .summary-tag{font-size:12.5px;color:var(--muted,#5f5673);font-weight:500}
.summary-since{display:flex;gap:8px;flex-wrap:wrap;align-items:flex-end;margin:12px 0 4px}
.summary-since label{display:grid;gap:4px}.summary-since select{max-width:100%}
.summary-tools{border:1px dashed var(--line,#e6e0f5);border-radius:12px;padding:14px 16px;margin:0 0 22px}
.summary-tools textarea{width:100%;min-height:220px;font:inherit}
.summary-note-form{display:flex;gap:8px;flex-wrap:wrap;align-items:flex-end;margin:6px 0 0}
.summary-note-form input{flex:1 1 260px}
@media print{.summary-tools,.summary-note-form{display:none!important}}

.cmpwrap{overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch;margin:16px 0 0;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
.cmp{border-collapse:separate;border-spacing:0;width:100%;min-width:420px;font-size:14.5px}
.cmp th,.cmp td{padding:9px 10px;border-bottom:1px solid var(--line);text-align:center;vertical-align:middle;white-space:nowrap}
.cmp tr:last-child td{border-bottom:0}
.cmp thead th{font-family:var(--vf-font-label);font-size:10.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);font-weight:500;background:var(--surface2);border-bottom:1px solid var(--line)}
.cmp th.rowhead,.cmp td.rowhead{position:sticky;left:0;z-index:2;text-align:left;white-space:normal;min-width:172px;max-width:230px;background:var(--surface);font-weight:600;box-shadow:1px 0 0 var(--line)}
.cmp thead th.rowhead{background:var(--surface2)}
.cmp th.you,.cmp td.you{background:var(--soft)}
.cmp thead th.you{color:var(--accent)}
.cmp td.c{font-family:var(--vf-font-label);font-size:13px;font-weight:700;width:52px}
.cmp td.c.pass{color:var(--good);background:var(--good-bg)}
.cmp td.c.warn{color:var(--mid);background:var(--mid-bg)}
.cmp td.c.fail{color:var(--low);background:var(--low-bg)}
.cmp td.c.skip{color:var(--muted);font-weight:400}
.cmp td.rowhead small{display:block;font-family:var(--vf-font-label);font-size:10px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);font-weight:400;margin-top:2px}
.cmpscroll{font-size:12px;color:var(--muted);margin:6px 0 0}
.cmpsideways{display:none}@media(max-width:760px){.cmpsideways{display:inline}}
.strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(138px,1fr));gap:10px;margin:14px 0 2px}
.strip .who{border:1px solid var(--line);border-radius:12px;padding:11px 13px;background:var(--surface);min-width:0}
.strip .who.me{border-color:var(--accent);background:var(--soft)}
.strip .who .nm{font-size:12.5px;color:var(--muted);line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.strip .who.me .nm{color:var(--accent);font-weight:700}
.strip .who .sc{font-family:var(--vf-font-display);font-weight:700;font-size:24px;line-height:1.1;letter-spacing:-.01em}
.strip .who .sc small{font-family:var(--vf-font-label);font-size:10.5px;color:var(--muted);letter-spacing:.06em;margin-left:2px}
.strip .who.good .sc{color:var(--good)}
.strip .who.mid .sc{color:var(--mid)}
.strip .who.low .sc{color:var(--low)}
.strip .who.skip .sc{color:var(--muted)}
.strip .who .sub{font-family:var(--vf-font-label);font-size:10.5px;letter-spacing:.04em;color:var(--muted);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gaps{list-style:none;padding:0;margin:16px 0 0}
.gaps li{padding:9px 0 9px 15px;border-left:2px solid var(--line);border-bottom:1px solid var(--line);font-size:15px;line-height:1.5}
.gaps li:last-child{border-bottom:0}
.gaps li.hard{border-left-color:var(--low)}
.ranks{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 0}
.ranks .pill{background:var(--surface2);color:var(--muted);font-weight:500}
.ranks .pill b{color:var(--ink);font-weight:700}
.strip .who .src,.whofrom .src{font-family:var(--vf-font-label);font-size:10.5px;letter-spacing:.04em;color:var(--muted)}
.strip .who .src{margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.whofrom{list-style:none;padding:0;margin:12px 0 0;display:flex;flex-wrap:wrap;gap:6px 18px;font-size:14px}
.aheadline{margin:0;color:var(--muted);font-size:14.5px}
@media(max-width:640px){.cmp th.rowhead,.cmp td.rowhead{min-width:140px}.strip{grid-template-columns:repeat(auto-fit,minmax(118px,1fr))}}
@media print{.cmpwrap{overflow:visible;border-radius:0}.cmp{min-width:0}.cmp th.rowhead,.cmp td.rowhead{position:static;box-shadow:none}.cmp tr,.strip .who,.gaps li{break-inside:avoid}.cmpscroll{display:none}}

.vf-danger-link{background:none;border:0;box-shadow:none;color:#b42318;text-decoration:underline;font-weight:600;cursor:pointer;width:auto}.vf-danger-link:hover{background:none;color:#7a1610}
.tabs{display:flex;gap:8px;flex-wrap:wrap;padding:14px 18px}.tabs a{text-decoration:none;font-weight:600;font-size:14.5px;padding:8px 12px;border:1px solid var(--line);border-radius:10px;color:var(--ink)}.tabs a:hover{background:var(--surface2)}
.printbar{text-align:right;font-size:14px;margin:8px 0 -8px}.printbar a{color:var(--muted)}
@media print{.noprint{display:none!important}}
.why{margin:0;padding-left:18px;font-size:14.5px;color:var(--muted)}
.fixid{margin-top:14px;border-top:1px solid var(--line);padding-top:12px}
.fixid .row{display:grid;grid-template-columns:2fr 1fr 60px;gap:10px}
@media(max-width:640px){.fixid .row{grid-template-columns:1fr}}
table{width:100%;border-collapse:collapse;font-size:14.5px}th{text-align:left;color:var(--muted);font-weight:600;padding:6px 8px;border-bottom:1px solid var(--line)}td{padding:8px;border-bottom:1px solid var(--line);vertical-align:top}

.prop-headline{font-family:var(--vf-font-display);font-weight:700;font-size:clamp(20px,2.6vw,25px);line-height:1.35;margin:0 0 22px;letter-spacing:-.01em}
.prop-list{margin:0;padding-left:20px}
.prop-list li{margin:6px 0;line-height:1.5}
.prop-why{margin:0 0 12px;line-height:1.55}
.prop-when{font-family:var(--vf-font-label);font-size:11.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);flex:none;font-weight:400}
.prop-soft{color:var(--muted)}
.prop-price{display:flex;gap:26px;flex-wrap:wrap;align-items:flex-end;margin:0 0 14px}
.prop-price .amt{font-family:var(--vf-font-display);font-weight:700;font-size:36px;color:var(--accent);line-height:1}
.prop-price .amt small{font-size:14px;color:var(--muted);font-family:inherit;font-weight:400}
.prop-price .founding{font-size:15px;color:var(--muted)}
.prop-promise{font-weight:600;margin:14px 0 0;line-height:1.55}
.prop-sender{margin:12px 0 0;line-height:1.7}
.prop-sender b{font-weight:600}
.keyfind .na{font-size:22px;color:var(--muted)}
@media print{.prop-price{break-inside:avoid}}

.lgrid{display:grid;grid-template-columns:repeat(var(--n,5),1fr);gap:6px;aspect-ratio:1;width:100%;max-width:340px;margin:16px 0 4px}
.lgrid.big{max-width:560px;gap:8px;margin:20px auto 8px}
.lgc{aspect-ratio:1;border-radius:50%;display:grid;place-items:center;font-family:var(--vf-font-label);font-weight:700;font-size:clamp(9px,2.4vw,14px);line-height:1;color:var(--surface);background:var(--surface2);border:1px solid var(--line);min-width:0;overflow:hidden;cursor:default}
.lgrid.big .lgc{font-size:clamp(11px,3vw,18px)}
.lgrid[style="--n:3"] .lgc,.lgrid[style="--n:5"] .lgc{font-size:clamp(13px,4vw,18px)}
.lgc.g{background:var(--good);border-color:var(--good)}
.lgc.m{background:var(--mid);border-color:var(--mid)}
.lgc.l{background:var(--low);border-color:var(--low)}
.lgc.x{background:var(--surface2);color:var(--muted);border-color:var(--line)}
.lgc.c{box-shadow:0 0 0 2px var(--surface),0 0 0 4px var(--ink)}
.lgkey{display:flex;gap:14px;flex-wrap:wrap;font-size:12.5px;color:var(--muted);margin-top:10px}
.lgkey span::before{content:"";display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:6px;vertical-align:-1px;background:var(--surface2);border:1px solid var(--line)}
.lgkey .g::before{background:var(--good);border-color:var(--good)}
.lgkey .m::before{background:var(--mid);border-color:var(--mid)}
.lgkey .l::before{background:var(--low);border-color:var(--low)}
.lgstats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:14px 0 4px}
@media(max-width:640px){.lgstats{grid-template-columns:repeat(2,1fr)}}
.lgstat{border:1px solid var(--line);border-radius:12px;padding:12px 14px;background:var(--surface);min-width:0}
.lgstat .cn{font-size:12.5px;color:var(--muted);line-height:1.3}
.lgstat .cv{font-family:var(--vf-font-display);font-weight:700;font-size:24px;line-height:1;letter-spacing:-.01em;margin-top:4px}
.lgstat .cv small{font-family:var(--vf-font-label);font-size:10.5px;color:var(--muted);letter-spacing:.06em;margin-left:2px}
.lgtable td.rk{font-family:var(--vf-font-label);font-weight:700;white-space:nowrap}
.lgtable td.rk.g{color:var(--good)}.lgtable td.rk.m{color:var(--mid)}.lgtable td.rk.l{color:var(--low)}.lgtable td.rk.x{color:var(--muted)}
.lgtable td.tp{color:var(--muted);font-size:13.5px}
@media print{.lgrid,.lgstat{break-inside:avoid}.lgc{-webkit-print-color-adjust:exact;print-color-adjust:exact}}

.cites td.st{width:26px;font-family:var(--vf-font-label);font-weight:700;text-align:center;white-space:nowrap}
.cites td.st.pass{color:var(--good)}.cites td.st.warn{color:var(--mid)}.cites td.st.fail{color:var(--low)}.cites td.st.skip{color:var(--muted)}
.cites td.dn{font-weight:600;white-space:nowrap}
.cites td.dn small{display:block;font-weight:400;font-family:var(--vf-font-label);font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}
.cites td.saw{color:var(--muted);font-size:13.5px}
.cites td.lk{white-space:nowrap}
.cites td.lk a{display:inline-block;padding:3px 10px;border-radius:999px;border:1px solid var(--line);font-size:12.5px;font-weight:600;text-decoration:none;color:var(--accent)}
.cites td.lk a.add{background:var(--low-bg);border-color:var(--low-bg);color:var(--low)}
.cites td.lk a.fix{background:var(--mid-bg);border-color:var(--mid-bg);color:var(--mid)}
.citesum{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:14px 0 4px}
@media(max-width:640px){.citesum{grid-template-columns:repeat(2,1fr)}}
.citesum>div{border:1px solid var(--line);border-radius:12px;padding:12px 14px;background:var(--surface);min-width:0}
.citesum .cn{font-size:12.5px;color:var(--muted);line-height:1.3}
.citesum .cv{font-family:var(--vf-font-display);font-weight:700;font-size:24px;line-height:1;letter-spacing:-.01em;margin-top:4px}
.citesum .good .cv{color:var(--good)}.citesum .low .cv{color:var(--low)}.citesum .mid .cv{color:var(--mid)}
@media print{.cites tr{break-inside:avoid}.cites td.lk a{border-color:var(--line)}}
@media(max-width:640px){.cites thead{display:none}.scroll .cites,.cites,.cites tbody{display:block;min-width:0;width:100%}
.cites tr{display:grid;grid-template-columns:22px minmax(0,1fr) auto;column-gap:8px;padding:11px 0;border-bottom:1px solid var(--line)}
.cites td{border:0;padding:0}.cites td.dn{white-space:normal;overflow-wrap:anywhere}
.cites td.lk{grid-column:3;grid-row:1}.cites td.saw{grid-column:2/4;padding-top:4px}}

.trend{margin:16px 0 4px}
.trend .tl{font-family:var(--vf-font-label);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin:10px 0 4px}
.bars{display:flex;align-items:flex-end;gap:4px;height:64px;border-bottom:1px solid var(--line);padding-bottom:2px}
.bars i{flex:1;min-width:6px;max-width:28px;height:calc(var(--h,0) * 1%);min-height:2px;display:block;background:var(--accent);border-radius:3px 3px 0 0;opacity:.85}
.bars i.g{background:var(--good)}.bars i.m{background:var(--mid)}.bars i.l{background:var(--low)}.bars i.x{background:var(--surface2);border:1px solid var(--line)}
.bars i:last-child{opacity:1;box-shadow:0 0 0 2px var(--surface),0 0 0 3px var(--ink)}
.tdates{display:flex;justify-content:space-between;font-size:12px;color:var(--muted);margin-top:4px}
.tstats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:14px 0 4px}
@media(max-width:640px){.tstats{grid-template-columns:1fr}}
.tstat{border:1px solid var(--line);border-radius:12px;padding:12px 14px;background:var(--surface);min-width:0}
.tstat .cn{font-size:12.5px;color:var(--muted);line-height:1.3}
.tstat .cv{font-family:var(--vf-font-display);font-weight:700;font-size:24px;line-height:1;letter-spacing:-.01em;margin-top:4px}
.tstat .cv small{font-family:var(--vf-font-label);font-size:10.5px;color:var(--muted);letter-spacing:.06em;margin-left:4px}
.tstat .up{color:var(--good)}.tstat .down{color:var(--low)}
.runs td.rk{font-family:var(--vf-font-label);font-weight:700;white-space:nowrap}
@media print{.bars,.tstat{break-inside:avoid}.bars i{-webkit-print-color-adjust:exact;print-color-adjust:exact}}
/* Colours and fonts come from tokens.css. */
*{box-sizing:border-box}body{background:var(--bg);font-family:var(--vf-font);color:var(--ink);line-height:1.6;margin:0}a{color:var(--accent);text-underline-offset:4px}h1,h2,h3{font-family:inherit;color:var(--ink);letter-spacing:-.04em;line-height:1.13}h1{font-size:clamp(32px,4.3vw,58px);font-weight:650}h2{font-size:26px;font-weight:650}h3{font-size:20px;font-weight:650}p{line-height:1.65}button,.btn{font-family:inherit;border-radius:10px;background:var(--accent);color:white;font-weight:650;border:1px solid transparent;min-height:46px;cursor:pointer;padding:12px 20px;transition:background .15s,transform .15s}button:hover,.btn:hover{background:var(--accent2);color:white}button:active,.btn:active{transform:translateY(1px)}button[aria-busy=true]{opacity:.65}input,select,textarea{font:inherit;border:1px solid var(--line);border-radius:9px;min-height:46px;background:white;padding:11px 13px;color:var(--ink);max-width:100%}label{font-size:13px;font-weight:650;display:block;margin-bottom:6px}input:focus,textarea:focus,select:focus{outline:3px solid var(--accent);border-color:var(--accent)}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:4px}.top{background:rgba(247,249,247,.97);border-bottom:1px solid var(--line);position:relative;z-index:10}.top .in{max-width:1240px;padding:21px 32px;display:flex;align-items:center;justify-content:space-between;margin:auto}.brand{font-size:24px;font-weight:750;letter-spacing:-1.3px;text-decoration:none;display:flex;align-items:center;gap:9px;color:var(--ink)}.brand i{width:24px;height:24px;border-radius:8px;background:var(--accent);position:relative;display:inline-block}.brand i:after{content:'✓';color:var(--vf-line);font-size:18px;position:absolute;left:5px;top:-3px}.top nav{display:flex;gap:24px;align-items:center}.top nav a{font-size:13px;text-decoration:none;font-weight:600;color:var(--muted)}.top nav a.on{color:var(--accent)}.top nav a.navcta{background:var(--ink);padding:10px 16px;border-radius:8px;color:#fff}.wrap{max-width:850px;padding:50px 26px 70px;margin:auto}.wrap.wide{max-width:1240px}.card{background:white;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:14px;padding:25px}.eyebrow{font-size:11px;letter-spacing:1.7px;color:var(--accent);font-weight:750;text-transform:uppercase;margin:0 0 20px}.dek{font-size:17px;color:var(--muted);line-height:1.7;max-width:660px}.note{font-size:12px;color:var(--muted);line-height:1.65}.muted{color:var(--muted)}.tag{font-size:10px;font-weight:650;padding:5px 9px;line-height:1.4;display:inline-block;background:var(--good-bg);color:var(--good);border-radius:6px;white-space:nowrap}.tag.amber{background:var(--mid-bg);color:var(--mid)}.tag.red{background:var(--low-bg);color:var(--low)}.live-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#6a9c54;margin-right:7px}.hero{display:grid;grid-template-columns:1.1fr 1fr;gap:64px;align-items:center;padding:28px 0 66px}.hero h1{font-size:clamp(44px,5.2vw,70px);letter-spacing:-3.5px;line-height:1.06;margin:0 0 22px}.hero h1 span{font-family:var(--vf-font-display);font-style:italic;font-weight:700;color:var(--accent)}.hero .dek{font-size:16px;max-width:470px}.hero-form{margin:30px 0 19px}.hero-form>div{display:flex;gap:7px;padding:6px;border:1px solid var(--line);border-radius:12px;background:white}.hero-form input{min-width:0;flex:1;border:0;background:transparent;font-size:14px;box-shadow:none}.hero-form button{width:auto;white-space:nowrap;font-size:13px;padding:12px 15px}.hero-form .note{margin:10px 0}.text-link{font-size:13px;font-weight:650;text-decoration:none}.hero-preview{border:1px solid var(--vf-primary-soft-2);border-radius:19px;background:#fff;box-shadow:0 28px 60px -28px #7c74a1;padding:23px;position:relative;transform:rotate(-1deg)}.preview-top{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:18px;font-size:12px}.preview-top>b{display:flex;align-items:center;gap:10px}.mini-logo{display:inline-flex;align-items:center;justify-content:center;background:var(--accent);color:var(--vf-line);border-radius:7px;font-size:19px;width:27px;height:27px}.preview-business{display:flex;gap:12px;align-items:center;padding:24px 0}.business-icon{background:var(--vf-primary-soft);border-radius:11px;width:42px;height:42px;text-align:center;line-height:42px;font-family:var(--vf-font-display);font-weight:700;font-size:22px}.preview-business h2{font-size:17px;letter-spacing:-.5px;margin:0 0 3px}.preview-business span{font-size:10px;color:var(--muted)}.preview-menu{margin-left:auto}.preview-overview{display:flex;align-items:center;gap:25px;background:var(--vf-bg);padding:24px 17px;border-radius:12px}.sample-ring{width:118px;height:118px;flex-shrink:0;display:grid;place-items:center;border-radius:50%;background:conic-gradient(var(--accent) 0 72%,var(--vf-line) 72% 100%)}.sample-ring>span{display:flex;align-items:center;justify-content:center;flex-direction:column;width:98px;height:98px;background:var(--vf-bg);border-radius:50%;font-size:39px;font-weight:600;line-height:1.1;letter-spacing:-2px}.sample-ring small{font-size:10px;letter-spacing:0;color:var(--muted);font-weight:400;margin-top:3px}.preview-overview h3{font-size:21px;margin:10px 0 6px}.preview-overview p{font-size:10px;margin:0;color:var(--muted)}.preview-metrics{display:grid;grid-template-columns:1fr 1fr;gap:23px;padding:22px 0}.preview-metrics span{display:block;font-size:10px;color:var(--muted)}.preview-metrics b{display:block;font-size:23px;font-weight:600;margin:4px 0}.preview-metrics small{font-size:10px;color:var(--muted);font-weight:400}.preview-metrics i{display:block;background:linear-gradient(to right,var(--vf-primary-bright) var(--fill),var(--vf-primary-soft) var(--fill));height:5px;border-radius:5px}.preview-task{display:flex;gap:10px;align-items:center;border:1px solid var(--line);border-radius:9px;padding:12px;font-size:11px}.task-icon{font-size:19px;color:var(--accent)}.preview-task small{display:block;color:var(--muted);font-size:10px}.preview-task .tag{margin-left:auto}.preview-foot{font-size:10px;color:var(--muted);margin-top:14px}.benefit-strip{display:flex;justify-content:space-between;gap:16px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:23px 0;color:var(--muted);font-size:10px;font-weight:650;letter-spacing:1.4px}.home-section{padding:74px 0}.section-intro{max-width:520px}.section-intro h2{font-size:40px;margin:0}.section-intro .dek{font-size:15px}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:35px}.feature-grid article{border:1px solid var(--line);border-radius:13px;padding:26px;background:#fff}.feature-number{font-size:10px;color:var(--accent);letter-spacing:1px;font-weight:650}.feature-grid h3{margin:25px 0 12px}.feature-grid p{font-size:13px;color:var(--muted)}.feature-grid a{font-size:12px;font-weight:650}.agency-banner{background:var(--vf-night);color:var(--vf-primary-soft);border-radius:18px;padding:42px;display:flex;align-items:center;gap:30px;justify-content:space-between}.agency-banner h2{font-size:34px;color:#fff;margin:0}.agency-banner .eyebrow{color:var(--vf-line-strong)}.agency-banner p:not(.eyebrow){font-size:14px;max-width:500px}.agency-banner .btn{background:var(--vf-line);color:var(--vf-ink);white-space:nowrap}.home-disclosure{margin-top:20px}footer{border-top:1px solid var(--line);padding:22px 0;font-size:11px;color:var(--muted)}footer .in{max-width:1180px;margin:auto;display:flex;justify-content:space-between;gap:22px;padding:0 26px}footer a{color:var(--muted)}.skip-link{position:absolute;left:-9999px;top:10px}.skip-link:focus{left:10px;background:white;padding:10px;z-index:100}.doc{max-width:1100px;margin:36px auto;padding:0 26px}.sec{margin-top:25px}.tabs{background:var(--surface);gap:5px;overflow-x:auto}.tabs a{font-size:12px;border:0;background:var(--surface2);white-space:nowrap}.printbar{margin:12px 0}.dashboard-header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:30px}.dashboard-header h1{font-size:38px;margin:0 0 8px}.dashboard-header p{margin:0}.dashboard-header .btn{white-space:nowrap;font-size:13px}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin:25px 0}.stat-card{padding:22px;border:1px solid var(--line);border-radius:12px;background:white}.stat-card>span{font-size:12px;color:var(--muted)}.stat-card b{display:block;font-size:32px;letter-spacing:-1px;font-weight:600}.workspace-nav{display:flex;gap:9px;flex-wrap:wrap;margin:20px 0}.workspace-nav a{font-size:12px;padding:8px 12px;background:white;border:1px solid var(--line);border-radius:7px;text-decoration:none}.toolbar{display:flex;justify-content:space-between;gap:15px;align-items:center;margin-bottom:16px}.toolbar input{width:310px;font-size:13px}.toolbar h2{margin:0;font-size:21px}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:13px}th{text-align:left;font-size:10px;font-weight:650;letter-spacing:.8px;text-transform:uppercase;color:var(--muted);background:var(--surface2)}td,th{padding:14px 16px;border-bottom:1px solid var(--line)}td a{font-weight:600;text-decoration:none}td small{display:block;color:var(--muted);font-size:11px}.empty-state{text-align:center;padding:50px 20px}.empty-state h2{font-size:24px}.empty-state p{color:var(--muted);max-width:430px;margin:10px auto 24px;font-size:14px}.action-grid{display:grid;grid-template-columns:1fr 310px;gap:22px}.action-item{border:1px solid var(--line);background:white;border-radius:12px;padding:23px;margin-bottom:14px}.action-item h3{font-size:18px;margin:12px 0 7px}.action-item p{font-size:13px;color:var(--muted)}.action-item details{font-size:12px;color:var(--muted);margin:12px 0}.action-item summary{cursor:pointer;color:var(--accent);font-weight:600}.action-item form{display:flex;gap:8px;margin-top:17px;align-items:end;flex-wrap:wrap}.action-item form>div{flex:1;min-width:110px}.action-item select,.action-item input{width:100%;font-size:12px;min-height:38px;padding:7px}.action-item button{width:auto;font-size:12px;min-height:38px;padding:7px 15px}.notice{background:var(--mid-bg);border:1px solid #ead9af;border-radius:10px;padding:14px;font-size:13px;color:#745218}.login-panel{max-width:500px;margin:20px auto}.login-panel input{width:100%}.login-panel button{width:100%;margin-top:16px}.quick-audit{display:flex;gap:10px;margin:20px 0}.quick-audit input{flex:1;min-width:0}.quick-audit button{width:auto;white-space:nowrap}.brief h2{font-size:21px}.brief p,.brief li{font-size:13px;color:var(--muted)}[hidden]{display:none!important}
@media(max-width:900px){.hero{gap:28px}.hero h1{font-size:50px}.hero-preview{padding:17px}.preview-overview{gap:13px;padding:15px 10px}.sample-ring{width:100px;height:100px}.sample-ring>span{width:82px;height:82px}.top nav{gap:13px}.action-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.top .in{padding:16px 20px;flex-wrap:wrap;gap:15px}.brand{font-size:22px}.top nav{gap:13px;flex-wrap:wrap;width:100%}.top nav a{font-size:11px}.top nav .navcta{margin-left:auto;padding:7px 10px!important}.wrap{padding:30px 20px 45px}.hero{grid-template-columns:1fr;padding:10px 0 38px;gap:35px}.hero h1{font-size:49px;letter-spacing:-2.6px}.hero .dek{font-size:15px}.hero-form>div{flex-direction:column}.hero-form button{width:100%}.hero-preview{transform:none;padding:19px}.preview-overview{padding:20px;gap:23px}.sample-ring{width:115px;height:115px}.sample-ring>span{width:95px;height:95px}.benefit-strip{flex-wrap:wrap;justify-content:center;font-size:9px;gap:12px 22px}.home-section{padding:45px 0}.section-intro h2{font-size:33px}.feature-grid{grid-template-columns:1fr;gap:13px}.feature-grid article{padding:23px}.feature-grid h3{margin-top:16px}.agency-banner{padding:27px;display:block}.agency-banner h2{font-size:30px}.agency-banner .btn{display:inline-block;margin-top:12px}.dashboard-header{align-items:start;flex-direction:column}.dashboard-header h1{font-size:32px}.stats-grid{gap:10px}.stat-card{padding:16px}.stat-card b{font-size:28px}.toolbar{flex-direction:column;align-items:start}.toolbar input{width:100%}.quick-audit{flex-direction:column}.card{padding:20px}.doc{padding:0 16px}.action-item{padding:18px}.action-item form>div{min-width:100%}footer .in{display:block}footer span{display:block;margin:6px 0}.tabs{flex-wrap:nowrap}.notice{overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@media print{.top,.workspace-nav,.quick-audit,.toolbar input,.action-item form,.skip-link{display:none!important}.doc,.wrap{max-width:none;padding:0}.card,.action-item{box-shadow:none;break-inside:avoid}body{background:white}.action-grid{display:block}.hero-preview{transform:none}}

.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Agency operations */
.client-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:22px 0}.client-card{padding:25px;background:var(--surface);border:1px solid var(--line);border-radius:18px;min-width:0;overflow-wrap:anywhere}.client-card h2{font-size:23px;margin:16px 0 10px}.client-card p{font-size:14px;color:var(--muted)}.client-card h2 a{text-decoration:none}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-grid button{align-self:end}.connection-fields{font-family:var(--vf-font-code);font-size:12px;overflow-wrap:anywhere;padding-left:18px}.checkbox{display:flex;gap:10px;align-items:start;font-size:14px;margin:18px 0}.checkbox input{width:18px;min-width:18px;margin:2px 0 0}.mail-preview{background:#fff}.workspace-nav [aria-current=page]{background:var(--vf-primary-soft);color:var(--accent)}.card+.card{margin-top:18px}.client-card small{color:var(--muted)}textarea{width:100%;font:inherit;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--ink);box-sizing:border-box}.metric-value{font-size:34px;font-weight:750}.source-item{border-left:3px solid var(--accent);padding:10px 16px;margin:14px 0}.job-detail{overflow-wrap:anywhere}.table-wrap td small{display:block}.table-wrap button{white-space:normal}
@media(max-width:900px){.client-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){.client-grid,.form-grid{grid-template-columns:1fr}.client-card{padding:20px}.action-grid>*,.form-grid>*{min-width:0}input,select{max-width:100%}}

/* Agency proposals */
.sales-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);gap:24px}.sales-layout>section,.sales-layout>aside{min-width:0}.sales-document{overflow-wrap:anywhere}.sales-document h1{font-size:36px}.sales-copy{white-space:pre-wrap;overflow-wrap:anywhere}.sales-evidence{border-left:3px solid var(--accent);padding:8px 15px;background:var(--surface2);font-size:13px}.sales-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.sales-fields>*{min-width:0}.sales-layout input,.sales-layout select,.sales-layout textarea{width:100%;min-width:0}.sales-controls{margin-bottom:24px}@media(max-width:800px){.sales-layout{grid-template-columns:1fr}.sales-document h1{font-size:28px}.sales-fields{grid-template-columns:1fr}}@media print{.sales-controls{display:none!important}.sales-document h1{font-size:28px}.sales-evidence{break-inside:avoid}.sales-document h2,.sales-document h3{break-after:avoid}}

/* First agency experience */
.hero-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.hero-actions .text-link{margin:0}.setup-guide h2{margin-top:0}.setup-steps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.setup-steps li{padding:18px;background:var(--surface2);border:1px solid var(--line);border-radius:10px;min-width:0;overflow-wrap:anywhere}.setup-steps h3{font-size:17px}.setup-steps p{font-size:13px}.setup-steps li[data-state=done]{border-color:var(--good)}.setup-guide summary{cursor:pointer;font-weight:600}@media(max-width:800px){.setup-steps{grid-template-columns:1fr}.hero-actions{gap:12px}.hero-actions .btn{white-space:normal}}

/* Agency growth workspace */
.brand-lockup{display:flex;align-items:center;gap:18px;min-width:0}.workspace-label{font-size:12px;color:var(--muted);padding-left:18px;border-left:1px solid var(--line);max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.workspace-groups{display:grid;grid-template-columns:1fr 1fr 1.5fr 1.5fr;gap:20px;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:26px 0 30px}.nav-group{min-width:0}.nav-group-label{display:block;font-size:10px;text-transform:uppercase;letter-spacing:1.4px;color:var(--muted);font-weight:700;margin-bottom:8px}.nav-group>div{display:flex;flex-wrap:wrap;gap:5px}.workspace-groups a{padding:6px 9px;font-size:11px;border-color:transparent;background:transparent}.workspace-groups a:hover{background:var(--surface2);border-color:var(--line)}.workspace-groups a[aria-current=page]{font-weight:700;border-color:var(--vf-primary-soft-2);background:var(--vf-primary-soft)}.brand-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:24px;align-items:start}.brand-layout h2{margin-top:0}.brand-fields{display:grid;gap:14px}.brand-fields label{margin:0}.brand-fields input{display:block;width:100%;margin-top:6px}.brand-fields .note{margin:-7px 0 0}.brand-example p{color:var(--muted)}.brand-example{overflow-wrap:anywhere}.brand-widget{margin-top:24px}.brand-widget textarea{font-family:var(--vf-font-label);font-size:12px;background:var(--surface2)}.lead-search{max-width:580px;margin:25px 0}.lead-search>div{display:flex;gap:10px}.lead-search input{min-width:0;flex:1}.lead-search button{width:auto}.growth-hero{grid-template-columns:1.05fr 1fr;gap:64px;align-items:start;padding-top:24px}.growth-hero h1{font-size:clamp(44px,5vw,66px);letter-spacing:-3px}.growth-hero .hero-actions{margin-top:28px}.growth-hero .hero-form{padding-top:18px;border-top:1px solid var(--line);margin-top:24px}.workflow-preview{border:1px solid var(--vf-line);background:#fff;border-radius:18px;box-shadow:0 22px 70px -36px #948cbe;padding:25px;position:relative;overflow:hidden}.workflow-preview:before{content:'';height:4px;background:linear-gradient(90deg,var(--accent),var(--vf-primary-muted));position:absolute;top:0;left:0;right:0}.workflow-preview-heading{padding:25px 0 18px}.workflow-preview-heading .eyebrow{font-size:9px;display:block;margin-bottom:9px}.workflow-preview-heading h2{font-size:26px;margin:0}.workflow-preview-heading p{font-size:12px;color:var(--muted);margin:9px 0 0}.workflow-preview-list{list-style:none;margin:0;padding:0}.workflow-preview-list li{display:flex;gap:16px;position:relative;padding:16px 0}.workflow-preview-list li+li{border-top:1px solid var(--line)}.workflow-step{background:var(--surface2);width:33px;height:33px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;font-size:10px;flex-shrink:0;font-weight:650;color:var(--accent)}.workflow-preview-list h3{font-size:16px;letter-spacing:-.4px;margin:9px 0 5px}.workflow-preview-list p{font-size:12px;color:var(--muted);margin:0;max-width:320px}.workflow-preview-list .tag{font-size:9px;padding:3px 7px}.preview-tour-link{display:block;font-size:11px;font-weight:650;border-top:1px solid var(--line);padding-top:15px;margin-top:12px;text-decoration:none}.capability-section{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding:52px;background:var(--surface2);border:1px solid var(--line);border-radius:18px}.capability-section h2{font-size:36px;margin-top:0}.capability-section .dek{font-size:14px}.capability-list details{border-bottom:1px solid var(--vf-primary-soft-2);padding:17px 0}.capability-list details:first-child{padding-top:0}.capability-list details:last-child{border-bottom:0}.capability-list summary,.faq-grid summary{cursor:pointer;font-weight:650;font-size:14px}.capability-list details p,.faq-grid details p{font-size:13px;color:var(--muted);margin-bottom:0}.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 42px;margin-top:28px}.faq-grid details{border-bottom:1px solid var(--line);padding:20px 0}.home-faq h2{font-size:36px}.lead-search,.brand-layout,.workflow-preview{min-width:0}
@media(max-width:1000px){.workspace-groups{grid-template-columns:1fr 1fr}.growth-hero{gap:30px}.growth-hero h1{font-size:51px}.capability-section{gap:35px;padding:32px}.workspace-label{max-width:140px}}
@media(max-width:650px){.brand-lockup{gap:10px;width:100%}.workspace-label{margin-left:auto;max-width:140px;padding-left:10px;font-size:10px}.workspace-groups{gap:16px 8px}.workspace-groups a{font-size:11px;padding:6px}.growth-hero{grid-template-columns:1fr;gap:24px}.growth-hero h1{font-size:48px}.workflow-preview{padding:21px}.workflow-preview-heading h2{font-size:24px}.brand-layout,.capability-section,.faq-grid{grid-template-columns:1fr}.capability-section{padding:25px;gap:24px}.capability-section h2{font-size:30px}.brand-example{order:-1}.brand-example .note{margin-bottom:0}.lead-search>div{flex-wrap:wrap}.lead-search button{width:100%}.home-faq h2{font-size:30px}}

/* Keep saved names, URLs and evidence usable at narrow widths and high zoom. */
.dashboard-header>div,.action-grid>*,.form-grid>*,.work-filters>div{min-width:0}.dashboard-header h1,.dashboard-header p,.table-wrap td{overflow-wrap:anywhere}.table-wrap:focus-visible,[role=region][tabindex="0"]:focus-visible,[tabindex="-1"]:focus-visible{outline:3px solid var(--accent);outline-offset:4px}

/* Private workspace. Keep operational density separate from the public site. */
.vf-workspace{--workspace-soft:var(--vf-surface-2);--workspace-ink:var(--vf-ink);--workspace-line:var(--vf-line);--workspace-radius:16px;font-size:14px}
.vf-workspace .dashboard-header{margin:0 0 25px;align-items:center}
.vf-workspace .dashboard-header .eyebrow{font-size:10px;letter-spacing:1.8px;margin:0 0 10px}
.vf-workspace .dashboard-header h1{font-size:clamp(28px,3.2vw,42px);line-height:1.15;letter-spacing:-1.5px;margin-bottom:8px}
.vf-workspace .dashboard-header .muted{font-size:14px;max-width:650px}
.vf-workspace-account{display:flex;align-items:center;gap:16px;flex-wrap:wrap;justify-content:flex-end}
.vf-usage-pill{font-size:12px;background:var(--workspace-soft);border:1px solid var(--workspace-line);border-radius:30px;padding:8px 13px;white-space:nowrap}
.vf-workspace .vf-button-quiet{display:inline-flex;align-items:center;justify-content:center;width:auto;background:transparent;border:1px solid var(--workspace-line);color:var(--workspace-ink);padding:9px 15px;min-height:42px;text-decoration:none}
.vf-workspace .vf-button-quiet:hover{background:var(--workspace-soft);border-color:var(--vf-line-strong)}
.vf-workspace-nav{margin-bottom:28px}
.vf-workspace-nav .workspace-groups{margin:0;padding:17px 20px;background:white;border:1px solid var(--workspace-line);border-radius:var(--workspace-radius);grid-template-columns:1fr 1fr 1.35fr 1.35fr;gap:18px}
.vf-workspace-nav .nav-group+.nav-group{border-left:1px solid var(--workspace-line);padding-left:18px}
.vf-workspace-nav .nav-group-label{font-size:9px;letter-spacing:1.5px;margin:0 0 6px 9px}
.vf-workspace-nav .workspace-groups a{padding:7px 9px;font-size:12px;border-radius:7px;line-height:1.5}
.vf-workspace-nav .workspace-groups a[aria-current=page]{background:var(--workspace-ink);border-color:var(--workspace-ink);color:white}
.vf-workspace .workspace-more{margin:9px 0 0;text-align:right}
.vf-workspace .workspace-more summary{margin-left:auto;font-size:11px;padding:3px 0}
.vf-workspace .workspace-more .workspace-nav{justify-content:flex-end}
.vf-workspace .vf-metric-grid{gap:0;border:1px solid var(--workspace-line);border-radius:var(--workspace-radius);overflow:hidden;background:white;margin:0}
.vf-workspace .vf-metric-grid .stat-card{min-width:0;border:0;border-radius:0;padding:19px 24px;background:transparent}
.vf-workspace .vf-metric-grid .stat-card+.stat-card{border-left:1px solid var(--workspace-line)}
.vf-workspace .vf-metric-grid .stat-card>span{font-size:12px;line-height:1.4;display:block}
.vf-workspace .vf-metric-grid .stat-card b{font-variant-numeric:tabular-nums;color:var(--workspace-ink);font-size:32px;font-weight:650;line-height:1.2;margin-top:8px}
.vf-workspace .vf-metric-grid a:hover{background:var(--workspace-soft)}
.vf-workspace .vf-metric-note{margin:11px 2px 24px;max-width:960px;font-size:11px}
.vf-workspace-focus{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:20px;align-items:stretch;margin:0 0 24px}
.vf-workspace-focus>section{min-width:0}
.vf-workspace .workspace-next{position:relative;margin:0;border:1px solid var(--vf-primary-soft-2);background:linear-gradient(130deg,var(--vf-surface-2),var(--vf-bg));box-shadow:none;padding:30px;border-radius:var(--workspace-radius);align-items:center}
.vf-workspace .workspace-next:before{content:'';position:absolute;top:30px;bottom:30px;left:0;width:3px;background:var(--vf-primary-bright);border-radius:0 2px 2px 0}
.vf-workspace .workspace-next h2{font-size:clamp(22px,2.5vw,29px);letter-spacing:-.9px;max-width:420px;margin:0 0 13px;line-height:1.18}
.vf-workspace .workspace-next p:not(.eyebrow){font-size:14px;line-height:1.65;max-width:450px;color:var(--vf-muted)}
.vf-workspace .workspace-next .eyebrow{font-size:9px;letter-spacing:1.5px;margin-bottom:16px}
.vf-workspace .workspace-step-links{gap:16px;margin-top:24px;font-size:12px}
.vf-workspace .workspace-step-links .btn{font-size:13px;padding:11px 16px}
.vf-workspace .vf-audit-launch{margin:0;padding:27px;border-radius:var(--workspace-radius);box-shadow:none}
.vf-workspace .vf-audit-launch .eyebrow{font-size:9px;margin-bottom:8px}
.vf-workspace .vf-audit-launch h2{font-size:23px;margin:0 0 8px;letter-spacing:-.65px}
.vf-workspace .vf-audit-launch .note{font-size:12px;line-height:1.6;margin:0;max-width:360px}
.vf-workspace .workspace-start{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:13px;margin-top:20px}
.vf-workspace .workspace-start button{grid-column:1/-1;min-height:44px;margin-top:2px;font-size:13px}
.vf-workspace input,.vf-workspace select{font-size:13px;min-height:44px;padding:10px 12px}
.vf-workspace label{font-size:11px;letter-spacing:0;text-transform:none;line-height:1.4;margin-bottom:7px}
.vf-workspace .vf-onboarding{margin:0 0 24px}
.vf-workspace .setup-guide{padding:24px;border-radius:var(--workspace-radius);box-shadow:none}
.vf-workspace .setup-guide h2{font-size:21px;letter-spacing:-.6px;margin:0}
.vf-workspace .setup-guide>p{font-size:12px;margin:10px 0 0}
.vf-workspace .setup-guide summary{font-size:13px;color:var(--workspace-ink)}
.vf-workspace .setup-steps{gap:12px;margin:19px 0 15px}
.vf-workspace .setup-steps li{background:var(--vf-bg);padding:17px;border-color:var(--vf-line);border-radius:10px}
.vf-workspace .setup-steps li[data-state=done]{background:var(--vf-surface-2);border-color:#cbdcc0}
.vf-workspace .setup-steps h3{font-size:15px;letter-spacing:-.3px;line-height:1.25;margin:12px 0 8px}
.vf-workspace .setup-steps p{font-size:12px;color:var(--muted);margin:0 0 14px}
.vf-workspace .setup-steps a{font-size:12px;font-weight:600}
.vf-workspace .vf-audit-library{border-radius:var(--workspace-radius);padding:25px 0 0;overflow:hidden;box-shadow:none}
.vf-workspace .vf-audit-library .toolbar{padding:0 24px;margin-bottom:10px;gap:20px}
.vf-workspace .vf-audit-library .toolbar .eyebrow{font-size:9px;letter-spacing:1.5px;margin:0 0 6px}
.vf-workspace .vf-audit-library .toolbar h2{font-size:23px;letter-spacing:-.7px}
.vf-workspace .vf-audit-library .toolbar input{background:var(--vf-bg);width:300px}
.vf-workspace .vf-audit-library>#filter-count{padding:0 24px;margin:0 0 20px;font-size:11px}
.vf-workspace .vf-audit-library table{font-size:12px;min-width:850px}
.vf-workspace .vf-audit-library th{font-size:9px;letter-spacing:1px;background:var(--vf-surface-2);padding:13px 17px;border-top:1px solid var(--workspace-line)}
.vf-workspace .vf-audit-library td{padding:19px 17px;vertical-align:top;line-height:1.65}
/* Earlier audits of the same website, folded under its newest one (workspace.py). */
.vf-audit-library .vf-earlier-audits{margin-top:8px;font-size:12px}
.vf-audit-library .vf-earlier-audits>summary{cursor:pointer;font-weight:600;color:var(--vf-primary-ink)}
.vf-audit-library .vf-earlier-audits ul{margin:6px 0 0;padding-left:18px;line-height:1.7}
.vf-workspace .vf-audit-library th:first-child,.vf-workspace .vf-audit-library td:first-child{padding-left:24px;max-width:265px}
.vf-workspace .vf-audit-library td:first-child>a{font-size:14px;font-weight:650;line-height:1.4}
.vf-workspace .vf-audit-library td small{font-size:11px;line-height:1.5;margin-top:5px}
.vf-workspace .vf-audit-library tbody tr:hover{background:var(--vf-bg)}
.vf-workspace .vf-audit-library tbody tr:last-child td{border-bottom:0}
.vf-workspace .vf-audit-library .workspace-row-actions a{font-size:12px}
.vf-workspace .vf-audit-library .workspace-row-actions a+a{font-size:11px;font-weight:500}
.vf-workspace .empty-state{padding:40px 24px 45px;border-top:1px solid var(--workspace-line)}
.vf-empty-mark{display:inline-grid;place-items:center;height:44px;width:44px;border:1px solid var(--vf-primary-soft-2);border-radius:13px;background:var(--vf-surface-2);color:var(--accent);font-size:24px}
.vf-workspace .empty-state h2{font-size:22px;margin:17px 0 10px}
.vf-workspace .empty-state p{font-size:13px;margin-bottom:20px}
.vf-workspace .empty-state a{font-size:13px;font-weight:650}
.vf-action-workspace .dashboard-header{align-items:flex-start;margin-bottom:20px}
.vf-delivery-progress{display:block;width:min(240px,100%);height:5px;margin-top:16px;appearance:none;border:0;border-radius:8px;background:var(--vf-line);overflow:hidden}
.vf-delivery-progress::-webkit-progress-bar{background:var(--vf-line);border-radius:8px}
.vf-delivery-progress::-webkit-progress-value{background:var(--vf-primary);border-radius:8px}
.vf-delivery-progress::-moz-progress-bar{background:var(--vf-primary);border-radius:8px}
.vf-plan-context{border-left:2px solid var(--vf-line-strong);padding:0 0 0 18px;margin:0 0 24px}
.vf-plan-context .dek{font-size:14px;line-height:1.65;max-width:740px;margin:0 0 8px}
.vf-plan-context .workspace-context{font-size:11px;line-height:1.6;margin:0;max-width:900px}
.vf-action-workspace .workspace-nav{gap:7px;margin-bottom:25px}
.vf-action-workspace .workspace-nav a{font-size:11px;padding:8px 12px;background:transparent}
.vf-action-workspace .workspace-nav a:hover{background:white;border-color:var(--vf-line-strong)}
.vf-action-workspace .workspace-summary{gap:0;display:inline-flex;margin:0 0 29px;padding:4px;background:var(--vf-primary-soft);border-radius:10px;border:1px solid var(--vf-line)}
.vf-action-workspace .workspace-summary a{border:0;background:transparent;font-size:12px;padding:8px 13px;border-radius:7px}
.vf-action-workspace .workspace-summary a[aria-current=page]{background:white;color:var(--workspace-ink);box-shadow:0 1px 5px #17382d12;font-weight:650}
.vf-action-workspace .action-grid{grid-template-columns:minmax(0,1fr) 285px;gap:25px;align-items:start}
.vf-action-workspace #action-list-title{font-size:23px;letter-spacing:-.65px;margin:0 0 18px}
.vf-action-workspace .workspace-filters{background:var(--vf-surface-2);padding:16px;border:1px solid var(--vf-line);border-radius:12px;margin:0 0 12px;gap:12px}
.vf-action-workspace .workspace-filters button{font-size:12px;min-height:44px;padding:9px 15px}
.vf-action-workspace #action-list>.note{font-size:11px;margin:0 0 19px}
.vf-action-workspace .action-item{border-radius:var(--workspace-radius);padding:23px;margin-bottom:16px;box-shadow:none}
.vf-action-workspace .action-item h3{font-size:20px;line-height:1.25;letter-spacing:-.5px;margin:16px 0 10px}
.vf-action-workspace .action-item>p{font-size:13px;line-height:1.7;margin:0 0 14px}
.vf-action-workspace .action-item details{font-size:12px;border-left:2px solid var(--vf-line-strong);padding:0 0 0 13px;margin:0 0 20px}
.vf-action-workspace .action-item details p{font-size:12px;white-space:pre-wrap;overflow-wrap:anywhere}
.vf-action-workspace .action-item form{padding-top:18px;border-top:1px solid var(--vf-primary-soft);gap:10px;margin-top:17px}
.vf-action-workspace .action-item form>div{min-width:100px}
.vf-action-workspace .action-item form>div:nth-last-of-type(1){flex:1.4}
.vf-action-workspace .action-item form input,.vf-action-workspace .action-item form select{font-size:12px;min-height:42px;padding:9px 10px}
.vf-action-workspace .action-item form button{font-size:12px;min-height:42px;padding:9px 14px}
.vf-action-workspace .brief{padding:24px;border-radius:var(--workspace-radius);background:var(--vf-surface-2);border:1px solid var(--vf-line);box-shadow:none}
.vf-action-workspace .brief .eyebrow{font-size:9px;margin:0 0 12px}
.vf-action-workspace .brief h2{font-size:22px;letter-spacing:-.6px;margin:0 0 12px}
.vf-action-workspace .brief p,.vf-action-workspace .brief li{font-size:12px;line-height:1.75}
.vf-action-workspace .brief ol{padding-left:18px;margin:22px 0}
.vf-action-workspace .brief li{padding-left:3px;margin-bottom:17px}
.vf-action-workspace .brief li b{color:var(--vf-ink);font-weight:650;line-height:1.5}
.vf-action-workspace .brief li p{margin:6px 0 0}
.vf-action-workspace .brief hr{border:0;border-top:1px solid var(--vf-primary-soft-2);margin:24px 0}
.vf-action-workspace #verify-title{font-size:17px;letter-spacing:-.35px}
.vf-action-workspace #verify-work select,.vf-action-workspace #verify-work button{width:100%;font-size:12px}
.vf-action-workspace #verify-work button{margin-top:12px;min-height:44px}
.vf-work-queue .vf-section-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}
.vf-work-queue .vf-section-heading h2{font-size:21px;letter-spacing:-.6px;margin:0}
.vf-work-queue .vf-work-filter-panel{padding:24px;border-radius:var(--workspace-radius);background:var(--vf-surface-2);box-shadow:none;margin-bottom:25px}
.vf-work-queue .work-filters{margin:20px 0 13px;gap:12px}
.vf-work-queue .work-filters button{min-height:44px;font-size:12px;padding:10px 15px}
.vf-work-queue .vf-work-filter-panel>p{font-size:11px;margin:0}
.vf-work-queue .work-summary a{transition:background .15s}
.vf-work-queue .work-item{grid-template-columns:minmax(155px,1fr) minmax(0,3fr);gap:24px;border-radius:var(--workspace-radius);padding:25px;box-shadow:none;margin:14px 0}
.vf-work-queue .work-business{padding-right:23px;border-right:1px solid var(--workspace-line);font-size:15px}
.vf-work-queue .work-business .nav-group-label{font-size:9px;margin:0 0 11px;letter-spacing:1.6px}
.vf-work-queue .work-business strong{display:block;line-height:1.45}
.vf-work-queue .work-business a{text-decoration:none}
.vf-work-queue .work-business small{font-size:11px;line-height:1.65;color:var(--muted);margin-top:8px}
.vf-work-queue .work-item h2{font-size:20px;letter-spacing:-.6px;line-height:1.3;margin:15px 0 10px}
.vf-work-queue .work-item p{font-size:13px;line-height:1.7;margin:8px 0;color:var(--muted)}
.vf-work-queue .work-item details{font-size:12px;margin:13px 0 0}
.vf-work-queue .work-item summary{cursor:pointer;color:var(--accent);font-weight:600}
.vf-work-queue .work-item details small{font-size:10px;color:var(--muted)}
.vf-work-queue .work-footer{padding-top:15px;border-top:1px solid var(--vf-primary-soft);margin-top:20px}
.vf-work-queue .work-footer a{font-size:12px;font-weight:650}
.vf-work-queue .work-footer .note{font-size:11px}
.vf-work-queue .work-pagination{font-size:12px;margin:30px 0}
@media(min-width:1100px){.vf-action-workspace .action-grid>aside{position:sticky;top:24px}}
@media(max-width:1050px){.vf-workspace-nav .workspace-groups{grid-template-columns:1fr 1fr}.vf-workspace-nav .nav-group:nth-child(3){border-left:0;padding-left:0}.vf-action-workspace .action-grid{grid-template-columns:minmax(0,1fr) 250px;gap:20px}.vf-action-workspace .action-item form>div{flex:1;min-width:calc(50% - 10px)}.vf-action-workspace .action-item form>div:nth-last-of-type(1){flex:1.5}.vf-workspace .workspace-start{grid-template-columns:1fr}.vf-workspace .workspace-start button{grid-column:auto}}
@media(max-width:800px){.vf-workspace-focus{grid-template-columns:1fr}.vf-workspace .workspace-start{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}.vf-workspace .workspace-start button{grid-column:1/-1}.vf-workspace .vf-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.vf-workspace .vf-metric-grid .stat-card:nth-child(3){border-left:0}.vf-workspace .vf-metric-grid .stat-card:nth-child(n+3){border-top:1px solid var(--workspace-line)}.vf-action-workspace .action-grid{grid-template-columns:1fr}.vf-action-workspace .brief{margin-top:10px}.vf-work-queue .vf-metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.vf-work-queue .vf-metric-grid .stat-card:nth-child(3){border-top:0;border-left:1px solid var(--workspace-line)}}
@media(max-width:650px){.vf-workspace .dashboard-header{align-items:flex-start;gap:18px}.vf-workspace-account{width:100%;justify-content:space-between;gap:10px}.vf-usage-pill{font-size:11px;padding:7px 11px}.vf-workspace .dashboard-header h1{font-size:31px;letter-spacing:-1.1px}.vf-workspace-nav{margin-bottom:22px}.vf-workspace-nav .workspace-groups{padding:15px 12px;gap:17px 10px}.vf-workspace-nav .nav-group+.nav-group{padding-left:10px}.vf-workspace-nav .nav-group:nth-child(3){padding-left:0}.vf-workspace-nav .workspace-groups a{font-size:12px;padding:7px 8px}.vf-workspace-nav .nav-group-label{margin-left:8px}.vf-workspace .vf-metric-grid .stat-card{padding:16px 18px}.vf-workspace .vf-metric-grid .stat-card>span{font-size:11px}.vf-workspace .vf-metric-grid .stat-card b{font-size:29px}.vf-workspace .workspace-next,.vf-workspace .vf-audit-launch{padding:24px}.vf-workspace .workspace-next h2{font-size:26px}.vf-workspace .workspace-next p:not(.eyebrow){font-size:13px}.vf-workspace .setup-guide{padding:20px}.vf-workspace .setup-steps{gap:10px}.vf-workspace .setup-steps li{padding:16px}.vf-workspace input,.vf-workspace select,.vf-action-workspace .action-item form input,.vf-action-workspace .action-item form select{font-size:16px}.vf-workspace label{font-size:12px}.vf-workspace .vf-audit-library .toolbar{padding:0 20px;gap:17px}.vf-workspace .vf-audit-library .toolbar input{width:100%}.vf-workspace .vf-audit-library>#filter-count{padding:0 20px}.vf-action-workspace .workspace-summary{display:flex;margin-bottom:24px}.vf-action-workspace .workspace-summary a{padding:8px 10px;font-size:11px}.vf-action-workspace .action-item{padding:20px}.vf-action-workspace .action-item form>div{min-width:100%}.vf-action-workspace .action-item form button{width:100%;margin-top:4px}.vf-action-workspace .brief{padding:22px}.vf-work-queue .vf-section-heading{align-items:flex-start;flex-direction:column;gap:6px}.vf-work-queue .vf-work-filter-panel{padding:20px}.vf-work-queue .work-item{grid-template-columns:1fr;padding:20px;gap:18px}.vf-work-queue .work-business{padding:0 0 17px;border-right:0;border-bottom:1px solid var(--workspace-line)}.vf-work-queue .work-business .nav-group-label{margin-bottom:7px}.vf-work-queue .vf-metric-grid .stat-card{padding:14px 10px}.vf-work-queue .vf-metric-grid .stat-card>span{font-size:10px}.vf-work-queue .vf-metric-grid .stat-card b{font-size:26px}}
@media(max-width:420px){.vf-workspace .workspace-start{grid-template-columns:1fr}.vf-workspace .workspace-start button{grid-column:auto}.vf-workspace .workspace-step-links{align-items:flex-start;flex-direction:column}.vf-action-workspace .workspace-summary a{padding:7px 8px;font-size:10px}}
@media print{.vf-workspace-nav,.vf-workspace-account,.vf-workspace-focus,.vf-onboarding,.vf-work-filter-panel{display:none!important}.vf-action-workspace .action-grid>aside{position:static}.vf-workspace .vf-audit-library table{min-width:0}.vf-workspace .vf-audit-library{border:0}.vf-workspace .vf-metric-grid .stat-card{break-inside:avoid}.vf-workspace .action-item,.vf-workspace .work-item{break-inside:avoid}}

/* A quiet, single-column workspace with optional detail when it is needed. */
.vf-simple-workspace{max-width:1040px;margin-inline:auto;--workspace-radius:12px}
.vf-simple-workspace .dashboard-header h1{font-size:clamp(26px,3vw,34px);letter-spacing:-1px;overflow-wrap:anywhere}
.vf-simple-workspace .dashboard-header .eyebrow{margin-bottom:7px;letter-spacing:1.2px}
.vf-simple-workspace .vf-usage-pill{border:0;background:transparent;padding:0;white-space:normal}
.vf-simple-workspace .workspace-next{display:block;background:white;border:1px solid var(--workspace-line);padding:24px;margin:0 0 16px}
.vf-simple-workspace .workspace-next:before{display:none}
.vf-simple-workspace .workspace-next h2{font-size:24px;max-width:none;letter-spacing:-.6px;margin:0 0 8px}
.vf-simple-workspace .workspace-next p:not(.eyebrow){max-width:720px}
.vf-simple-workspace .workspace-next .eyebrow{margin-bottom:10px}
.vf-simple-workspace .workspace-step-links{margin-top:14px}
.vf-simple-workspace .workspace-start{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) minmax(0,1fr) auto;gap:14px;margin-top:18px;align-items:end}
.vf-simple-workspace .workspace-start button{grid-column:auto;width:auto;margin:0}
.vf-simple-workspace .workspace-start .vf-audit-hint{grid-column:1/-1;margin:0;font-size:12px}
.vf-simple-workspace .vf-disclosure{margin:0 0 16px;padding:0;border:0;border-bottom:1px solid var(--workspace-line);border-radius:0;background:transparent;box-shadow:none}
.vf-simple-workspace .vf-disclosure>summary,.vf-simple-workspace .workspace-more>summary{font-size:14px;font-weight:600;cursor:pointer;color:var(--workspace-ink);padding:12px 0;min-height:44px;line-height:1.5}
.vf-simple-workspace .vf-disclosure[open]{padding-bottom:16px}
.vf-simple-workspace .vf-disclosure>.workspace-start{margin:8px 0 0}
.vf-simple-workspace .vf-workspace-totals .vf-metric-grid{margin:8px 0 0;border:0;background:transparent}
.vf-simple-workspace .vf-workspace-totals .stat-card{padding:12px 18px}
.vf-simple-workspace .vf-workspace-totals .stat-card:first-child{padding-left:0}
.vf-simple-workspace .vf-workspace-totals .stat-card b{font-size:24px}
.vf-simple-workspace .vf-metric-note{font-size:12px;margin:12px 0 0}
.vf-simple-workspace .vf-audit-library{margin:24px 0;padding-top:20px}
.vf-simple-workspace .vf-audit-library .toolbar h2{font-size:22px}
.vf-simple-workspace .vf-audit-library table{min-width:670px}
.vf-simple-workspace .vf-audit-library th{font-size:11px;letter-spacing:0;text-transform:none}
.vf-simple-workspace .vf-audit-library td{font-size:13px;padding-top:16px;padding-bottom:16px}
.vf-simple-workspace .vf-getting-started .setup-guide{padding:10px 0 0;border:0;background:transparent}
.vf-simple-workspace .vf-getting-started .setup-steps{display:block;margin-top:12px}
.vf-simple-workspace .vf-getting-started .setup-steps li{padding:16px 0;border:0;border-top:1px solid var(--workspace-line);border-radius:0;background:transparent}
.vf-simple-workspace .vf-getting-started .setup-steps h3{margin:9px 0 6px;font-size:16px}
.vf-simple-workspace .vf-getting-started .setup-guide h2{font-size:18px}
.vf-simple-workspace .workspace-more{text-align:left;margin:0}
.vf-simple-workspace .workspace-more summary{margin-left:0}
.vf-simple-workspace .workspace-more .workspace-nav{justify-content:flex-start}
.vf-simple-workspace .vf-plan-context{padding:0;border:0;margin-bottom:18px}
.vf-simple-workspace .vf-plan-context>a{display:inline-flex;align-items:center;min-height:44px}
.vf-simple-workspace .action-grid{display:block}
.vf-simple-workspace .action-grid>aside{position:static;margin-top:28px}
.vf-simple-workspace .workspace-summary{margin-bottom:20px}
.vf-simple-workspace .workspace-summary a{font-size:13px;min-height:44px;display:inline-flex;align-items:center}
.vf-simple-workspace .workspace-filters{background:white;margin:8px 0 0;border:0;padding:0}
.vf-simple-workspace #action-list-title{font-size:22px;margin-bottom:8px}
.vf-simple-workspace #action-list>.note{font-size:12px}
.vf-simple-workspace .action-item{padding:22px;margin-bottom:14px}
.vf-simple-workspace .action-item h3{font-size:19px;margin-top:12px}
.vf-simple-workspace .action-item>details{border:0;padding:0;margin:0}
.vf-simple-workspace .action-item summary{font-size:13px;min-height:44px;padding:10px 0;line-height:1.7}
.vf-simple-workspace .action-item form{display:grid;grid-template-columns:minmax(150px,230px) auto;gap:8px 12px;align-items:end;padding-top:14px;margin-top:8px}
.vf-simple-workspace .action-item form>div.vf-action-state{min-width:0;grid-column:1;grid-row:1}
.vf-simple-workspace .action-item form>button{grid-column:2;grid-row:1;justify-self:start;min-height:44px;width:auto;font-size:13px}
.vf-simple-workspace .action-item form>.vf-action-annotations{grid-column:1/-1;grid-row:2;margin:0;padding:0;border:0}
.vf-simple-workspace .vf-annotation-fields,.vf-simple-workspace .vf-extra-filter-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:14px;margin:2px 0 10px}
.vf-simple-workspace .vf-annotation-fields>div,.vf-simple-workspace .vf-extra-filter-fields>div{min-width:0}
.vf-simple-workspace .action-item form input,.vf-simple-workspace .action-item form select{min-height:44px;font-size:14px}
.vf-simple-workspace .brief h2{font-size:19px;margin:12px 0}
.vf-simple-workspace .brief p,.vf-simple-workspace .brief li{font-size:13px}
.vf-simple-workspace #verify-work{max-width:700px}
.vf-simple-workspace #verify-work select,.vf-simple-workspace #verify-work button{font-size:14px;max-width:340px;display:block}
.vf-simple-workspace .vf-audit-tools .workspace-nav{margin:6px 0 0}
.vf-simple-workspace .vf-audit-tools .workspace-nav a{font-size:13px;min-height:44px;display:inline-flex;align-items:center}
.vf-simple-workspace.vf-work-queue .work-summary{border:0;background:transparent;margin:0 0 18px}
.vf-simple-workspace.vf-work-queue .work-summary .stat-card{padding:10px 20px}
.vf-simple-workspace.vf-work-queue .work-summary .stat-card:first-child{padding-left:0}
.vf-simple-workspace.vf-work-queue .work-summary .stat-card b{font-size:25px;margin-top:4px}
.vf-simple-workspace.vf-work-queue .vf-work-filter-panel{padding:0;margin-bottom:22px;background:transparent;border:0;border-radius:0}
.vf-simple-workspace.vf-work-queue .work-filters{grid-template-columns:minmax(0,2fr) minmax(0,1fr) auto;margin:0 0 8px}
.vf-simple-workspace.vf-work-queue .work-filters>.work-search{grid-column:1;grid-row:1}
.vf-simple-workspace.vf-work-queue .work-filters>div:not(.work-search){grid-column:2;grid-row:1}
.vf-simple-workspace.vf-work-queue .work-filters>button{grid-column:3;grid-row:1}
.vf-simple-workspace.vf-work-queue .vf-work-more-filters{grid-column:1/-1;grid-row:2}
.vf-simple-workspace.vf-work-queue .vf-work-more-filters>summary{font-size:13px;min-height:44px;padding:10px 0;cursor:pointer}
.vf-simple-workspace.vf-work-queue .vf-extra-filter-fields{grid-template-columns:1fr 1fr;max-width:700px}
.vf-simple-workspace.vf-work-queue .work-item{grid-template-columns:1fr;gap:12px;padding:22px}
.vf-simple-workspace.vf-work-queue .work-business{border:0;border-bottom:1px solid var(--workspace-line);padding:0 0 12px;display:flex;gap:6px 14px;align-items:baseline;flex-wrap:wrap}
.vf-simple-workspace.vf-work-queue .work-business .nav-group-label{display:none}
.vf-simple-workspace.vf-work-queue .work-business strong{font-size:14px}
.vf-simple-workspace.vf-work-queue .work-business small{margin:0;font-size:12px}
.vf-simple-workspace.vf-work-queue .work-item h2{font-size:19px;margin:12px 0 8px}
.vf-simple-workspace.vf-work-queue .work-item summary,.vf-simple-workspace.vf-work-queue .work-footer a{min-height:44px;display:inline-flex;align-items:center;font-size:13px}
.vf-simple-workspace.vf-work-queue .work-item summary{display:list-item;padding:10px 0}
.vf-simple-workspace.vf-work-queue .work-footer{padding-top:8px;margin-top:8px}
@media(max-width:760px){.vf-simple-workspace .workspace-start{grid-template-columns:1fr 1fr}.vf-simple-workspace .workspace-start button{grid-column:1/-1}.vf-simple-workspace .workspace-start .vf-audit-hint{grid-column:1/-1}.vf-simple-workspace .vf-audit-library .toolbar{align-items:stretch}.vf-simple-workspace .vf-audit-library .toolbar input{width:100%}}
@media(max-width:600px){.vf-simple-workspace .workspace-start,.vf-simple-workspace .vf-annotation-fields,.vf-simple-workspace .vf-extra-filter-fields{grid-template-columns:1fr}.vf-simple-workspace .workspace-start button{grid-column:auto}.vf-simple-workspace .workspace-next,.vf-simple-workspace .action-item,.vf-simple-workspace.vf-work-queue .work-item{padding:18px}.vf-simple-workspace .workspace-next h2{font-size:22px}.vf-simple-workspace .action-item form{grid-template-columns:minmax(0,1fr) auto}.vf-simple-workspace .action-item form input,.vf-simple-workspace .action-item form select{font-size:16px}.vf-simple-workspace.vf-work-queue .work-filters{grid-template-columns:1fr auto}.vf-simple-workspace.vf-work-queue .work-filters>.work-search{grid-column:1/-1;grid-row:1}.vf-simple-workspace.vf-work-queue .work-filters>div:not(.work-search){grid-column:1;grid-row:2}.vf-simple-workspace.vf-work-queue .work-filters>button{grid-column:2;grid-row:2}.vf-simple-workspace.vf-work-queue .vf-work-more-filters{grid-row:3}.vf-simple-workspace.vf-work-queue .vf-extra-filter-fields{grid-template-columns:1fr}.vf-simple-workspace .vf-workspace-totals .stat-card{padding:10px}.vf-simple-workspace.vf-work-queue .work-summary .stat-card{padding:8px 10px}.vf-simple-workspace.vf-work-queue .work-business{display:block}.vf-simple-workspace.vf-work-queue .work-business small{margin-top:4px}}
@media print{.vf-simple-workspace>.workspace-next,.vf-simple-workspace>.vf-disclosure,.vf-simple-workspace>.workspace-more,.vf-simple-workspace .vf-action-filters,.vf-simple-workspace .vf-audit-tools,.vf-simple-workspace .vf-verification{display:none!important}.vf-simple-workspace .action-item form{display:none!important}}
label.checkbox{display:flex;gap:10px;align-items:flex-start;text-transform:none;letter-spacing:0;font-size:15px;font-weight:500;line-height:1.45;color:var(--ink);margin:10px 0}label.checkbox input{width:18px;height:18px;min-width:18px;min-height:0;flex:none;margin:2px 0 0;padding:0}label.checkbox>span{min-width:0}label.checkbox b{font-weight:650}label.checkbox .muted{display:block;font-size:13.5px;font-weight:400;color:var(--muted)}
fieldset{border:1px solid var(--line);border-radius:12px;padding:10px 16px 6px;margin:16px 0;min-width:0}fieldset>legend{padding:0 6px;font-weight:650;font-size:15px}.vf-manual-answers{display:flex;flex-wrap:wrap;gap:0 22px}.vf-manual-answers label.checkbox{margin:6px 0}
.vf-annotation-fields select{width:100%;max-width:100%;min-width:0;text-overflow:ellipsis}
/* Radio choices: the button beside its words, in normal case, long addresses wrapping. */
label.vf-radio{display:flex;align-items:flex-start;gap:10px;margin:14px 0;text-transform:none;letter-spacing:normal;font-size:15px;font-weight:400;color:var(--ink);line-height:1.5;overflow-wrap:anywhere;min-width:0;cursor:pointer}
label.vf-radio input[type=radio]{flex:none;width:18px;height:18px;min-width:18px;min-height:0;margin:3px 0 0;padding:0;box-shadow:none;accent-color:var(--accent)}
label.vf-radio>span{flex:1;min-width:0}
label.vf-radio .note{text-transform:none;letter-spacing:normal;font-weight:400}
.vf-field-pair{display:flex;flex-wrap:wrap;gap:0 12px;align-items:flex-end}
.vf-field-pair>label{flex:1 1 180px;min-width:0;margin:12px 0 0}
.vf-field-pair>label>input,.vf-field-pair>label>select{display:block;width:100%;margin:6px 0 0}
/* A select and a text box side by side come out the same height, so their labels line up. */
.vf-field-pair>label>input,.vf-field-pair>label>select{line-height:1.25}
.vf-field-pair>button{margin-top:12px}
/* A quieter button beside the main one. */
button.secondary{background:transparent;color:var(--accent);border:1.5px solid var(--accent)}
button.secondary:hover{background:var(--surface2);color:var(--accent)}
/* Search and visitor data on the client page. */
.vf-google-data h3{margin:30px 0 8px}
.vf-google-data h2+h3,.vf-google-data h2+.muted+h3{margin-top:16px}
.vf-gdata-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.vf-gdata-actions form{margin:0}
.vf-gdata-actions button{width:auto}
/* Google figures tables (client page, client report): short columns that fit a phone. */
.vf-gdata-table th{white-space:nowrap}.vf-gdata-table td+td{white-space:nowrap}.vf-gdata-table td:first-child{overflow-wrap:anywhere}
@media(max-width:650px){.vf-gdata-table th,.vf-gdata-table td{padding:10px 8px}}
/* Template editor tables: they keep their width and scroll inside their own box on a phone. */
.vf-designer-scroll{overflow-x:auto;max-width:100%}
.vf-designer-scroll>table{min-width:560px}
.vf-designer-scroll td>label{display:flex;align-items:center;gap:8px;margin:0;font-size:14px;font-weight:500;text-transform:none;letter-spacing:normal;white-space:nowrap}
.vf-designer-scroll input[type=checkbox]{flex:none;width:18px;height:18px;min-width:18px;min-height:0;margin:0;padding:0}
/* Google Maps attribution (ui.google_maps_attribution) under Google Places data. Google's rules for
   the words "Google Maps": Roboto or a plain sans-serif font, regular weight, normal style and
   spacing, 12 to 16px, Google's grey, never re-cased and never split over two lines. */
.vf-gm-attr{margin:12px 0 0;font-size:13px;line-height:1.5;color:var(--vf-muted);text-align:left;text-transform:none;letter-spacing:normal}
.vf-gm-attr .vf-gm{font-family:Roboto,var(--vf-font);font-size:13px;font-weight:400;font-style:normal;letter-spacing:normal;text-transform:none;white-space:nowrap;color:var(--vf-maps-grey)}
@media print{.vf-gm-attr{break-before:avoid;break-inside:avoid}.vf-gm-attr,.vf-gm-attr .vf-gm{font-size:10pt}}

/* A short, readable introduction. All rules stay inside public page wrappers. */
.vf-home{--vf-forest:var(--accent);color:var(--vf-ink);max-width:980px;margin:0 auto;font-size:16px}
.vf-home a{color:var(--vf-forest)}
.vf-home h1,.vf-home h2,.vf-home h3{font-family:inherit;color:var(--vf-ink)}
.vf-home p{margin-top:0}
.vf-home .vf-hero{max-width:720px;padding:24px 0 48px}
.vf-home .vf-eyebrow{font-size:12px;letter-spacing:1px;line-height:1.5;font-weight:650;color:var(--vf-muted);margin:0 0 18px}
.vf-home h1{font-size:clamp(34px,4.5vw,54px);line-height:1.12;letter-spacing:-1.7px;font-weight:650;margin:0 0 20px}
.vf-home .vf-lead{max-width:600px;font-size:18px;line-height:1.65;color:var(--vf-muted);margin-bottom:26px}
.vf-home .vf-actions{display:flex;align-items:center;flex-wrap:wrap;gap:14px 24px}
.vf-home .vf-primary{display:inline-flex;justify-content:center;align-items:center;width:auto;min-height:48px;padding:13px 20px;margin:0;background:var(--vf-forest);color:#fff;border-radius:8px;font-size:16px;line-height:1.5;text-decoration:none;white-space:normal}
.vf-home .vf-primary:hover{background:var(--accent2)}
.vf-home .vf-text-link{display:inline-flex;gap:8px;align-items:center;font-size:16px;min-height:44px}
.vf-home .vf-hero-note{color:var(--vf-muted);font-size:14px;line-height:1.6;margin:14px 0 18px}
.vf-home .vf-public-preview{max-width:620px;margin:0;border-top:1px solid var(--vf-line);padding-top:10px}
.vf-home summary{cursor:pointer;color:var(--vf-forest);font-weight:600;font-size:16px;line-height:1.55;padding:12px 0;min-height:48px}
.vf-home .vf-audit-form{margin:8px 0 0;padding:18px;background:#fff;border:1px solid var(--vf-line);border-radius:10px}
.vf-home .vf-audit-form label{font-size:15px;font-weight:600;letter-spacing:0;text-transform:none;margin:0 0 8px;color:var(--vf-ink)}
.vf-home .vf-audit-input{display:flex;align-items:stretch;gap:10px}
.vf-home .vf-audit-input input{min-width:0;flex:1;font-size:16px;min-height:48px;padding:11px 12px;background:#fff}
.vf-home .vf-audit-input button{flex:none;width:auto;margin:0;padding:11px 16px;font-size:16px;min-height:48px;background:var(--vf-forest);color:#fff}
.vf-home .vf-fine-print{font-size:14px;line-height:1.6;color:var(--vf-muted);margin:12px 0 0}
.vf-home .vf-how{border-top:1px solid var(--vf-line);padding:34px 0 36px}
.vf-home h2{font-size:26px;line-height:1.25;letter-spacing:-.6px;font-weight:650;margin:0 0 24px}
.vf-home .vf-steps{list-style:none;counter-reset:steps;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;padding:0;margin:0}
.vf-home .vf-steps li{counter-increment:steps;min-width:0}
.vf-home .vf-steps li:before{content:counter(steps);display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:var(--vf-line);color:var(--vf-ink-2);font-size:14px;font-weight:700;margin-bottom:14px}
.vf-home .vf-steps h3{font-size:19px;letter-spacing:-.3px;line-height:1.3;margin:0 0 9px}
.vf-home .vf-steps p{font-size:16px;line-height:1.65;color:var(--vf-muted);margin:0}
.vf-home .vf-faq-section{padding:32px 0 8px;border-top:1px solid var(--vf-line)}
.vf-home .vf-faq-section h2{margin-bottom:10px}
.vf-home .vf-faq-list{max-width:760px}
.vf-home .vf-faq-list details{border-bottom:1px solid var(--vf-line)}
.vf-home .vf-faq-list details p{font-size:16px;line-height:1.7;color:var(--vf-muted);margin:0 0 18px;max-width:690px}
.vf-home .vf-help{font-size:15px;color:var(--vf-muted);margin:22px 0 0}
.vf-home a:focus-visible,.vf-home button:focus-visible,.vf-home input:focus-visible,.vf-home summary:focus-visible,.vf-simple-pricing a:focus-visible,.vf-simple-pricing summary:focus-visible{outline:3px solid var(--accent);outline-offset:4px}

/* Pricing keeps the comparison visible and moves detail behind native disclosure. */
.vf-pricing.vf-simple-pricing{max-width:980px;margin:0 auto;padding:12px 0;color:var(--vf-ink);font-size:16px}
.vf-simple-pricing .vf-pricing-header{max-width:740px;margin:0 0 28px;text-align:left}
.vf-simple-pricing .vf-pricing-header h1{font-size:clamp(32px,4vw,44px);line-height:1.15;letter-spacing:-1.25px;margin:0 0 16px}
.vf-simple-pricing .vf-pricing-header .dek{font-size:18px;line-height:1.65;max-width:640px;margin:0;color:var(--vf-muted)}
.vf-pricing.vf-simple-pricing .notice{max-width:none;margin:0 0 24px;font-size:15px;line-height:1.6;background:var(--vf-surface-2);border-color:var(--vf-primary-soft-2);color:var(--vf-ink-2);padding:16px}
.vf-simple-pricing .vf-plan-grid{gap:16px}
.vf-simple-pricing .vf-plan{border-radius:10px;padding:24px;box-shadow:none}
.vf-simple-pricing .vf-plan h2{font-size:22px;margin:0 0 18px;line-height:1.3;letter-spacing:-.5px}
.vf-simple-pricing .vf-plan-price{font-size:36px;line-height:1.25;letter-spacing:-1px;margin:0 0 16px}
.vf-simple-pricing .vf-plan-price small{font-size:15px;letter-spacing:0;color:var(--vf-muted)}
.vf-simple-pricing .vf-plan-credit{font-size:16px;margin:0 0 14px;padding:0;border:0}
.vf-simple-pricing .vf-plan-desc{font-size:16px;line-height:1.6;color:var(--vf-muted);min-height:0;margin:0}
.vf-simple-pricing .vf-plan-included{font-size:16px;line-height:1.65;color:var(--vf-muted);margin:20px 0}
.vf-simple-pricing .vf-pricing-actions{display:flex;align-items:center;flex-wrap:wrap;gap:14px 24px}
.vf-simple-pricing .vf-pricing-actions .btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;width:auto;margin:0;padding:13px 24px;border-radius:8px;font-size:16px;line-height:1.5;text-decoration:none}
.vf-simple-pricing .vf-pricing-actions>a:not(.btn){font-size:15px;min-height:44px;display:inline-flex;align-items:center}
.vf-simple-pricing .vf-pricing-footnote{text-align:left;font-size:14px;line-height:1.6;margin:16px 0 28px;color:var(--vf-muted)}
.vf-simple-pricing .vf-pricing-faq{max-width:760px;border-top:1px solid var(--vf-primary-soft-2)}
.vf-simple-pricing .vf-pricing-faq details{border-bottom:1px solid var(--vf-primary-soft-2)}
.vf-simple-pricing .vf-pricing-faq summary{cursor:pointer;font-size:16px;line-height:1.55;font-weight:600;min-height:48px;padding:12px 0;color:var(--vf-ink)}
.vf-simple-pricing .vf-pricing-faq p{font-size:16px;line-height:1.7;color:var(--vf-muted);margin:0 0 16px}
@media(max-width:760px){.vf-home .vf-steps{grid-template-columns:1fr;gap:24px}.vf-home .vf-steps li{position:relative;padding-left:46px}.vf-home .vf-steps li:before{position:absolute;left:0;top:0;margin:0}.vf-home .vf-hero{padding-top:8px}.vf-simple-pricing .vf-plan-grid{grid-template-columns:1fr}.vf-simple-pricing .vf-plan{padding:22px}.vf-simple-pricing .vf-plan h2{margin-bottom:10px}.vf-simple-pricing .vf-plan-price{margin-bottom:10px}}
@media(max-width:450px){.vf-home h1{letter-spacing:-1px}.vf-home .vf-lead{font-size:17px}.vf-home .vf-actions{align-items:flex-start;flex-direction:column;gap:8px}.vf-home .vf-primary{width:100%;padding-left:12px;padding-right:12px}.vf-home .vf-audit-form{padding:14px}.vf-home .vf-audit-input{flex-direction:column}.vf-home .vf-audit-input button{width:100%}.vf-home h2{font-size:24px}.vf-simple-pricing .vf-pricing-actions{align-items:flex-start;flex-direction:column;gap:8px}.vf-simple-pricing .vf-pricing-actions .btn{width:100%}}
@media(prefers-reduced-motion:reduce){.vf-home *,.vf-simple-pricing *{transition:none!important;animation:none!important;scroll-behavior:auto!important}}
@media print{.vf-home .vf-audit-form,.vf-home .vf-actions,.vf-home .vf-public-preview,.vf-simple-pricing .vf-pricing-actions{display:none}.vf-home .vf-steps{display:block}.vf-home .vf-steps li,.vf-simple-pricing .vf-plan{break-inside:avoid;margin-bottom:20px}}

/* A single reading column for services and proposals. */
.sales-simple{max-width:940px;margin:0 auto;overflow-wrap:anywhere}
.sales-simple>header{margin-bottom:24px}
.sales-simple>header h1{font-size:clamp(30px,4vw,44px);line-height:1.15;margin:12px 0}
.sales-simple>header .dek{max-width:720px;margin:0 0 12px}
.sales-simple>section,.sales-simple>details{margin:24px 0}
.sales-simple .card{box-shadow:none}
.sales-simple .card h2{font-size:24px;margin:0 0 18px}
.sales-simple label{font-size:14px;letter-spacing:0;text-transform:none;margin:0 0 18px}
.sales-simple input,.sales-simple select,.sales-simple textarea{display:block;width:100%;min-width:0;margin-top:7px;font-size:16px}
.sales-simple button,.sales-simple .btn{width:auto;min-height:46px}
.sales-simple button:disabled{cursor:not-allowed;opacity:.5}
.sales-simple .note{font-size:13px}
.sales-simple form>.note{margin:0 0 18px}
.sales-simple summary{cursor:pointer;font-weight:650;min-height:28px;line-height:1.5}
.sales-simple details>form{margin-top:22px}
.sales-simple details>.card{border:0;padding:20px 0 0;margin:0}
.sales-simple .sales-option{padding:14px 0;border-top:1px solid var(--line);margin:10px 0 18px}
.sales-simple .sales-option summary{color:var(--accent);font-size:14px}
.sales-simple .sales-option[open]>summary{margin-bottom:18px}
.sales-simple details.card.sales-option{padding:24px;border:1px solid var(--line);margin-top:30px}
.sales-simple .sales-service-list{display:grid;grid-template-columns:1fr;gap:16px}
.sales-simple .sales-service-list h2{font-size:22px;margin:12px 0}
.sales-simple .sales-service-list .card>p{margin:8px 0 18px}
.sales-simple .sales-service-list .card{padding:24px}
.sales-simple .sales-steps{display:grid;gap:18px}
.sales-simple .sales-step{padding:0;overflow:hidden}
.sales-simple .sales-step>summary{padding:22px 24px;font-size:18px;color:var(--ink)}
.sales-simple .sales-step>summary span{margin-left:5px}
.sales-simple .sales-step>summary small{font-size:13px;font-weight:500;color:var(--muted);margin-left:12px;white-space:normal}
.sales-simple .sales-step[open]>summary{border-bottom:1px solid var(--line);background:var(--surface2)}
.sales-simple .sales-step-body{padding:24px}
.sales-simple .sales-step-body>p:first-child{margin-top:0}
.sales-simple .sales-quoted{border-bottom:1px solid var(--line);padding:0 0 6px;margin:0 0 22px}
.sales-simple .sales-quoted-heading h3{font-size:20px;margin:0 0 8px}
.sales-simple .sales-quoted-heading p{margin:0 0 12px}
.sales-simple .sales-secondary{background:white;color:var(--accent);border:1px solid var(--line);margin-top:18px}
.sales-simple .sales-secondary:hover{background:var(--surface2)}
.sales-simple .sales-saved-total{background:var(--surface2);padding:14px;border-radius:8px;font-size:14px}
.sales-simple #proposal-suggestions form+form{border-top:1px solid var(--line);padding-top:22px;margin-top:22px}
.sales-simple .sales-preview{background:var(--bg);padding:22px;border:1px solid var(--line);border-radius:10px;margin:24px 0}
.sales-simple .sales-preview .sales-document h1{font-size:30px}
.sales-simple .sales-preview .sales-document h2{font-size:21px}
.sales-simple .sales-preview .card{padding:20px;margin-bottom:18px}
.sales-simple .sales-prepare{padding-top:8px}
.sales-simple .sales-prepare .note{margin:10px 0 0}
.sales-simple .sales-export-links{display:flex;align-items:center;gap:24px;flex-wrap:wrap;font-size:14px;margin:24px 0}
.sales-simple .sales-prepared{display:flex;align-items:center;justify-content:space-between;gap:24px}
.sales-simple .sales-prepared>div{min-width:0}
.sales-simple .sales-prepared h1{font-size:28px;margin:0 0 10px}
.sales-simple .sales-prepared p{margin:0}
.sales-simple .sales-prepared .btn{white-space:nowrap;flex-shrink:0}
.sales-simple>.sales-document>.card{margin:20px 0}
@media(max-width:650px){
  .sales-simple .sales-fields{grid-template-columns:1fr;gap:0}
  .sales-simple .sales-step>summary{padding:18px;font-size:17px}
  .sales-simple .sales-step>summary small{display:block;margin:5px 0 0 22px}
  .sales-simple .sales-step-body,.sales-simple .card,.sales-simple .sales-service-list .card{padding:18px}
  .sales-simple .sales-step{padding:0}
  .sales-simple .sales-preview{padding:14px}
  .sales-simple .sales-preview .sales-document h1{font-size:25px}
  .sales-simple .sales-preview .card{padding:15px}
  .sales-simple .sales-prepared{display:block}
  .sales-simple .sales-prepared .btn{display:inline-flex;margin-top:20px}
  .sales-simple .sales-export-links{gap:18px}
  .sales-simple .client-grid{grid-template-columns:1fr}
}
/* An approved proposal: who agreed, then each agreed line and where its work stands. */
.sales-simple .sales-approved .tag{margin-bottom:8px}
.sales-simple .sales-agreed-list{list-style:none;padding:0;margin:12px 0;display:grid;gap:8px}
.sales-simple .sales-agreed-list li{display:flex;flex-wrap:wrap;justify-content:space-between;gap:4px 16px;padding:10px 12px;border:1px solid var(--vf-line,#e6e0f5);border-radius:10px;background:#fff}
.sales-simple .sales-agreed-list li span{color:var(--vf-muted,#5f5673)}
.sales-simple .sales-agreed-links{display:flex;flex-wrap:wrap;gap:8px 24px;margin:12px 0 0}

/* The workspace layout (app.page, agency.shell_nav): one bar across the top, the workspace
   menu down the left side, the page beside it. Phones get the menu behind a Menu button.
   The selectors start with .vf-app (the body of a workspace page), so they outweigh the older
   header rules for .vf-workspace-page wherever the two meet. */
.vf-app{background:var(--vf-bg)}
.vf-app .top.vf-topbar{position:sticky;top:0;z-index:20;background:var(--vf-surface);border-bottom:1px solid var(--vf-line)}
.vf-app .top.vf-topbar .in{max-width:none;padding:10px 24px;gap:16px;min-height:60px}
.vf-app .top .brand-wordmark{height:30px;width:auto}
.vf-app .top .workspace-label{font-size:13px;font-weight:600;color:var(--vf-ink-2);max-width:280px}
.vf-app .top .vf-workspace-header-nav{display:flex;align-items:center;gap:6px}
.vf-app .top .vf-workspace-header-nav>a{display:inline-flex;align-items:center;min-height:40px;padding:0 12px;border-radius:9px;font-size:14px;font-weight:600;color:var(--vf-ink-2);text-decoration:none;white-space:nowrap}
.vf-app .top .vf-workspace-header-nav>a:hover{background:var(--vf-surface-2);color:var(--vf-ink)}
.vf-app .top .vf-workspace-header-nav>a.vf-topbar-new{background:var(--vf-primary);color:var(--vf-on-primary);padding:0 16px}
.vf-app .top .vf-workspace-header-nav>a.vf-topbar-new:hover{background:var(--vf-primary-hover);color:var(--vf-on-primary)}
.vf-app .top .vf-workspace-header-nav>a.vf-topbar-account{border:1px solid var(--vf-line-strong);padding:0 14px;color:var(--vf-ink)}
.vf-shell{display:flex;align-items:flex-start;min-height:calc(100vh - 61px)}
.vf-side{position:sticky;top:61px;flex:0 0 248px;width:248px;max-height:calc(100vh - 61px);overflow-y:auto;box-sizing:border-box;display:flex;flex-direction:column;gap:8px;padding:14px 12px 14px;background:var(--vf-surface);border-right:1px solid var(--vf-line);align-self:stretch}
/* The menu is a column of full-width links (theme.css lays out every nav as a wrapping row). */
.vf-app .vf-side-nav{display:block}
.vf-side-nav ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:1px}
.vf-app .vf-side-nav a{display:flex;align-items:center;min-height:32px;padding:5px 12px;border-radius:8px;font-size:14px;font-weight:500;line-height:1.35;color:var(--vf-ink-2);text-decoration:none}
.vf-app .vf-side-nav a:hover{background:var(--vf-surface-2);color:var(--vf-ink)}
.vf-app .vf-side-nav a[aria-current=page]{background:var(--vf-primary-soft);color:var(--vf-primary-ink);font-weight:650}
.vf-side-label{margin:14px 12px 4px;font-size:11px;font-weight:650;letter-spacing:.04em;text-transform:uppercase;color:var(--vf-muted);line-height:1.3}
.vf-side-foot{margin-top:auto;padding-top:8px;border-top:1px solid var(--vf-line);display:flex;flex-direction:column;gap:2px}
.vf-side-foot a,.vf-side-foot .vf-link-button{display:flex;align-items:center;min-height:32px;padding:5px 12px;border-radius:8px;font-size:14px;font-weight:500;color:var(--vf-ink-2);text-decoration:none;background:transparent;border:0;width:100%;text-align:left;cursor:pointer}
.vf-side-foot a:hover,.vf-side-foot .vf-link-button:hover{background:var(--vf-surface-2);color:var(--vf-ink)}
.vf-side-foot form{margin:0}
.vf-shell>main.wrap{flex:1 1 auto;min-width:0;width:100%;margin:0 auto;padding:32px 36px 64px}
.vf-shell>main.wrap:not(.wide){max-width:960px}
.vf-shell>main.wrap.wide{max-width:1280px}
.vf-app main h1{letter-spacing:-.02em}
.vf-app .vf-workspace-nav:empty{display:none}
/* Phones: the same menu behind one button in the bar. */
.vf-side-menu{display:none;position:relative}
.vf-app .top .vf-side-menu>summary{display:inline-flex;align-items:center;gap:4px;min-height:40px;padding:0 14px;border:1px solid var(--vf-line-strong);border-radius:9px;font-size:14px;font-weight:600;color:var(--vf-ink);cursor:pointer;list-style:none;background:var(--vf-surface);white-space:nowrap}
.vf-side-menu>summary::-webkit-details-marker{display:none}
.vf-side-menu .vf-more-current{font-weight:500;color:var(--vf-muted)}
.vf-app .top .vf-side-menu>.vf-side-nav{display:block;position:absolute;left:0;top:calc(100% + 8px);z-index:30;width:min(300px,calc(100vw - 28px));max-height:calc(100vh - 120px);overflow-y:auto;box-sizing:border-box;padding:10px;background:var(--vf-surface);border:1px solid var(--vf-line-strong);border-radius:12px;box-shadow:0 18px 40px -20px rgba(30,16,51,.45)}
.vf-app .top .vf-side-menu .vf-side-nav a{min-height:44px;padding:8px 12px;font-size:15px;font-weight:500;color:var(--vf-ink-2)}
.vf-app .top .vf-side-menu .vf-side-nav a[aria-current=page]{color:var(--vf-primary-ink);font-weight:650}
@media(max-width:900px){
  .vf-side{display:none}
  .vf-side-menu{display:block}
  .vf-app .top.vf-topbar .in{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 10px;padding:8px 14px}
  .vf-app .top .brand-lockup{display:flex;width:auto;min-width:0}
  .vf-app .top .brand{grid-column:auto;grid-row:auto}
  .vf-app .top .brand .brand-wordmark{width:auto;height:28px}
  .vf-app .top .workspace-label{display:none}
  .vf-app .top .vf-workspace-header-nav{flex-wrap:nowrap;width:100%;justify-content:flex-start;grid-column:auto;grid-row:auto}
  .vf-app .top .vf-workspace-header-nav>.vf-side-menu{margin-right:auto}
  .vf-shell>main.wrap{padding:22px 16px 48px}
}
@media(max-width:520px){
  .vf-app .top .vf-workspace-header-nav>a[href="/help"]{display:none}
  .vf-app .top .vf-side-menu .vf-more-current{display:none}
}
@media print{.vf-side,.vf-side-menu,.vf-app .top.vf-topbar{display:none!important}.vf-shell{display:block}.vf-shell>main.wrap{padding:0;max-width:none}}
/* A menu entry that is not live yet (agency.menu_words): a small tag, so it stays on one line. */
.vf-soon{display:inline-block;margin-left:8px;padding:0 7px;border:1px solid var(--vf-line-strong);border-radius:999px;font-size:11px;font-weight:600;line-height:18px;letter-spacing:.02em;color:var(--vf-muted);white-space:nowrap;vertical-align:1px}
/* The top of each page in the menu (ui.page_head): its name, one plain line under it, and its own buttons. */
.vf-page-head{display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:12px 24px;margin:0 0 24px}
.vf-page-heading{flex:1 1 420px;min-width:0}
.vf-app .vf-page-head h1{margin:0;font-size:30px;line-height:1.2;font-weight:750;letter-spacing:-.02em;overflow-wrap:anywhere}
.vf-app .vf-page-head .vf-page-sub{margin:8px 0 0;max-width:72ch;font-size:15px;line-height:1.55;color:var(--vf-muted)}
.vf-page-actions{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.vf-page-actions form{margin:0}
@media(max-width:900px){.vf-app .vf-page-head h1{font-size:26px}.vf-page-heading{flex-basis:100%}}
/* Pages one level down (a client, an action plan) start with a heading of the same size. */
.vf-app .vf-shell>main h1{font-size:30px;line-height:1.2;letter-spacing:-.02em}
@media(max-width:900px){.vf-app .vf-shell>main h1{font-size:26px}}
/* A report the agency opens in its own workspace (product.scan_show, app.doc_page): the
   document sits beside the side menu. Printing drops the frame (above). */
.vf-shell>main.doc{flex:1 1 auto;min-width:0;margin:32px auto 64px}
@media(max-width:900px){.vf-shell>main.doc{margin:20px auto 48px}}
.vf-report-crumb{margin:0 0 4px}
/* The Clients table (agency.clients): one row per client; a small card per client on phones. */
.vf-client-list{padding:0;overflow:hidden}
.vf-client-table table{width:100%;min-width:760px;border-collapse:collapse;font-size:14px}
.vf-client-table th{padding:12px 16px;text-align:left;font-size:12px;font-weight:650;color:var(--vf-muted);background:var(--vf-surface-2);border-bottom:1px solid var(--vf-line);white-space:nowrap}
.vf-client-table td{padding:14px 16px;vertical-align:top;border-bottom:1px solid var(--vf-line);line-height:1.5;overflow-wrap:anywhere}
.vf-client-table tbody tr:last-child td{border-bottom:0}
.vf-client-table th:first-child,.vf-client-table td:first-child{padding-left:22px;width:40%}
.vf-client-table td:first-child a{text-decoration:none}.vf-client-table td:first-child strong{font-size:15px}
.vf-client-table td small{display:block;margin-top:2px;font-size:12px;color:var(--vf-muted)}
.vf-client-table .tag{margin:0}
.vf-muted-cell{color:var(--vf-muted)}
@media(max-width:760px){
  .vf-client-table{overflow:visible}.vf-client-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
  .vf-client-table table,.vf-client-table tbody{display:block;min-width:0}
  .vf-client-table tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px 16px;padding:16px 18px;border-bottom:1px solid var(--vf-line)}
  .vf-client-table tbody tr:last-child{border-bottom:0}
  .vf-client-table td,.vf-client-table td:first-child{display:block;padding:0;border:0;width:auto}
  .vf-client-table td:first-child{grid-column:1/-1}
  .vf-client-table td[data-label]:before{content:attr(data-label);display:block;font-size:11px;color:var(--vf-muted)}
}

/* A link shown only once (ui.copy_link): the field and its Copy button side by side. */
.vf-copy-link{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:8px 0}
.vf-copy-link input{flex:1 1 260px;min-width:0;margin:0}
.vf-copy-link button[hidden]{display:none}

/* A rare, careful choice tucked under "More options" (enhancements.sharing). */
.vf-more-options{margin-top:18px;padding-top:12px;border-top:1px solid var(--vf-line)}
.vf-more-options>summary{cursor:pointer;font-size:14px;font-weight:600;color:var(--vf-ink-2)}
.vf-more-options form{margin:10px 0 0}

/* Usage & billing: the plan cards share the row, however many are offered (2 or 3). */
.vf-app .feature-grid.vf-plan-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-top:20px}
.vf-app .vf-plan-grid article p{font-size:14px}
/* Vouchfield identity: purposeful, legible, and self-contained. */
.top{background:rgba(250,248,255,.97)}.top .in{padding-top:20px;padding-bottom:20px}.brand{gap:10px;font-size:27px;font-weight:750;letter-spacing:-1.1px;color:var(--vf-ink);line-height:1;white-space:nowrap}.brand .brand-mark{display:block;flex:none;width:34px;height:34px;overflow:visible}.brand-name{font-family:var(--vf-font)}.top nav a{font-weight:600}.top nav .navcta{background:var(--accent);border-radius:8px;padding:11px 17px;color:#fff}.top nav .navcta:hover{background:var(--accent2)}.top nav a.on{color:var(--vf-ink);text-decoration:underline;text-underline-offset:7px}footer{background:var(--vf-surface-2)}footer .in{padding-top:27px;padding-bottom:27px}footer a{font-weight:500}.vf-pricing{padding:22px 0 20px}.vf-pricing-header{max-width:740px;margin:0 auto 36px;text-align:center}.vf-pricing-header h1{font-size:clamp(38px,5vw,62px);letter-spacing:-.055em;line-height:1.04;margin:18px 0}.vf-pricing-header .dek{font-size:17px;max-width:640px;margin:22px auto}.vf-pricing .notice{max-width:900px;margin:0 auto 26px;background:var(--vf-primary-soft);border-color:var(--vf-primary-soft-2)}.vf-plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.vf-plan{position:relative;background:#fff;border:1px solid var(--line);border-radius:16px;padding:28px;display:flex;flex-direction:column;min-width:0}.vf-plan h2{font-size:24px;margin:8px 0}.vf-plan-price{font-size:44px;font-weight:700;letter-spacing:-2px;line-height:1.2;margin:22px 0 7px}.vf-plan-price small{font-size:13px;font-weight:500;letter-spacing:0;color:var(--muted)}.vf-plan-desc{color:var(--muted);font-size:14px;min-height:48px}.vf-plan-credit{font-size:14px;padding:17px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:17px 0}.vf-plan ul{padding:0;list-style:none;margin:0 0 26px;font-size:13px}.vf-plan li{padding:6px 0}.vf-plan li:before{content:'✓';color:var(--accent);font-weight:700;margin-right:8px}.vf-plan .btn{margin-top:auto;text-align:center;text-decoration:none;display:block}.vf-plan-featured{border-color:var(--accent);box-shadow:0 14px 36px -25px var(--accent)}.vf-plan-label{font-size:10px;text-transform:uppercase;letter-spacing:1px;font-weight:700;color:var(--accent);min-height:18px}.vf-pricing-details{margin-top:30px;padding:32px;background:var(--vf-primary-soft);border-radius:16px;display:grid;grid-template-columns:1fr 1fr;gap:40px}.vf-pricing-details h2{font-size:23px;margin-top:0}.vf-pricing-details p{font-size:14px;color:var(--muted)}.vf-pricing-footnote{font-size:13px;text-align:center;margin:24px 0;color:var(--muted)}
@media(max-width:1000px){.top nav{gap:17px}.vf-plan{padding:23px}.vf-plan-price{font-size:37px}}
@media(max-width:760px){.vf-plan-grid{grid-template-columns:1fr}.vf-plan-desc{min-height:0}.vf-pricing-header{text-align:left}.vf-pricing-details{grid-template-columns:1fr;gap:20px;padding:25px}.vf-pricing{padding-top:0}}
@media(max-width:650px){.brand{font-size:24px}.brand .brand-mark{width:31px;height:31px}.top .in{gap:16px;padding:18px 22px}.top nav{gap:10px 17px;justify-content:flex-start;flex-wrap:wrap;width:100%}.top nav a{font-size:12px}.top nav .navcta{padding:9px 12px}.vf-pricing-header h1{font-size:40px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
/* Simple shared layout: core work first, optional tools on demand. */
.brand .brand-wordmark{display:block;width:216px;height:48px;max-width:100%;object-fit:contain}
.top .in{padding-top:12px;padding-bottom:12px;gap:24px}.top nav a{font-size:14px;min-height:44px;display:inline-flex;align-items:center}.top nav{gap:24px}.wrap{padding-top:34px}.wrap.wide{max-width:1160px}h1{font-size:clamp(28px,3.5vw,44px);line-height:1.15;letter-spacing:-.035em}h2{font-size:25px;line-height:1.25}.card{box-shadow:none}.note{font-size:13px}.eyebrow{margin-bottom:12px}label{font-size:14px}input,select,textarea{font-size:16px}button,.btn{min-height:44px}summary{cursor:pointer;min-height:44px;padding:10px 0;font-weight:600}.brand-lockup{min-width:0}.workspace-label{max-width:220px;overflow-wrap:anywhere}
.workspace-nav.vf-simple-nav{padding:8px 0 16px;margin:16px 0 24px;border-bottom:1px solid var(--line);gap:4px;align-items:center;box-shadow:none;border-radius:0;background:transparent;display:flex;flex-wrap:wrap}
.vf-simple-nav>a,.vf-more-nav>summary{font-size:14px;padding:10px 13px;min-height:44px;border:0;background:transparent;border-radius:7px;color:var(--muted);font-weight:600;line-height:24px}
.vf-simple-nav>a:hover,.vf-more-nav>summary:hover{background:var(--vf-primary-soft);color:var(--ink)}.vf-simple-nav>a[aria-current=page]{background:var(--vf-primary-soft);color:var(--vf-ink)}.vf-more-nav{min-width:0}.vf-more-nav>summary{width:max-content}.vf-more-nav[open]{flex-basis:100%}.vf-more-nav-content{padding:18px;border:1px solid var(--line);border-radius:10px;background:#fff;display:grid;grid-template-columns:1fr 1fr;gap:24px}.vf-more-nav-content .nav-group{border:0;padding:0;min-width:0}.vf-more-nav-content .nav-group-label{display:block;font-size:13px;letter-spacing:0;text-transform:none;margin:0 0 8px;color:var(--muted)}.vf-more-nav-content .nav-group>div{display:flex;flex-wrap:wrap;gap:5px}.vf-more-nav-content a{font-size:14px;min-height:44px;padding:10px 12px;background:var(--vf-bg);border:0}.vf-more-nav-content a[aria-current=page]{background:var(--vf-primary-soft);color:var(--vf-ink);font-weight:700}
.skip-link:focus{z-index:1000;position:absolute;color:var(--vf-ink);outline:3px solid var(--accent)}.top nav a:focus-visible,.vf-simple-nav a:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
@media(max-width:650px){.top .in{padding:12px 20px;gap:8px;flex-wrap:wrap}.brand .brand-wordmark{width:185px;height:42px}.top nav{width:100%;gap:6px 20px;justify-content:flex-start}.top nav a{font-size:14px}.wrap,.wrap.wide{padding:26px 20px 48px}.workspace-nav.vf-simple-nav{gap:2px;margin:12px 0 20px}.vf-simple-nav>a,.vf-more-nav>summary{font-size:14px;padding:10px}.vf-more-nav-content{grid-template-columns:1fr;gap:16px;padding:16px}.workspace-label{font-size:13px}.card{padding:20px}h2{font-size:23px}}

/* Public mega-menu: native disclosure, short descriptions, and one useful next step. */
.top .in{position:relative}
.vf-marketing-nav{position:static;gap:16px!important;align-items:center}
.vf-marketing-nav .vf-mega{position:static;min-width:0}
.vf-marketing-nav .vf-mega>summary{display:inline-flex;align-items:center;gap:7px;color:var(--muted);font-size:14px;font-weight:600;line-height:1.35;min-height:44px;padding:10px 2px;list-style:none;white-space:nowrap}
.vf-marketing-nav .vf-mega>summary::-webkit-details-marker{display:none}
.vf-marketing-nav .vf-mega>summary:hover,.vf-marketing-nav .vf-mega[open]>summary{color:var(--ink)}
.vf-marketing-nav .vf-mega[data-active=true]>summary{color:var(--ink);text-decoration:underline;text-underline-offset:6px}
.vf-mega-chevron{font-size:15px;line-height:1;transform:translateY(-1px);transition:transform .15s ease}
.vf-mega[open] .vf-mega-chevron{transform:rotate(180deg) translateY(1px)}
.vf-mega-panel{position:absolute;z-index:30;top:calc(100% - 1px);left:50%;transform:translateX(-50%);width:min(1160px,calc(100vw - 28px));display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:28px;padding:30px;background:#fff;border:1px solid var(--line);border-radius:0 0 18px 18px;box-shadow:0 24px 45px -28px rgba(91,33,182,.35)}
.vf-mega-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 28px;min-width:0}
.vf-mega-group{min-width:0}
.vf-mega-group h3{font-size:11px;line-height:1.3;letter-spacing:.11em;text-transform:uppercase;color:var(--muted);margin:0 0 10px;font-weight:700}
.vf-mega-item{display:flex!important;align-items:flex-start!important;flex-direction:column;gap:2px;min-height:52px!important;padding:8px 9px!important;margin:0 -9px;border-radius:8px;text-decoration:none!important;color:var(--ink)!important;font-size:14px!important;font-weight:650!important;line-height:1.35!important}
.vf-mega-item:hover{background:var(--vf-surface-2);color:var(--accent2)!important}
.vf-mega-item small{display:block;color:var(--muted);font-size:11px;font-weight:450;line-height:1.45}
.vf-mega-cta{display:flex;flex-direction:column;justify-content:space-between;min-height:180px;padding:20px;border-radius:14px;background:linear-gradient(150deg,var(--accent2),var(--accent));color:var(--vf-surface-2)}
.vf-mega-cta p{font-size:20px;line-height:1.2;letter-spacing:-.35px;margin:0;max-width:175px;color:#fff}
.vf-mega-cta a{display:flex!important;align-items:center;justify-content:space-between;gap:10px;min-height:44px!important;padding:10px 12px!important;border-radius:8px;background:#fff;color:var(--vf-ink)!important;font-size:13px!important;text-decoration:none!important;font-weight:700!important}
.vf-mega-cta a:hover{background:var(--vf-primary-soft);color:var(--vf-ink)!important}
.vf-header-cta{font-size:13px!important;white-space:nowrap}
.vf-workspace-header-nav{gap:24px!important}
.vf-marketing-nav{min-width:0;flex-wrap:wrap;justify-content:flex-end}
.vf-mega-panel{max-height:min(70vh,650px);overflow:auto;overscroll-behavior:contain}
.vf-mega-item,.vf-mega-cta a,.vf-feature-card,.vf-all-features-column a{overflow-wrap:anywhere}
.vf-mega-item small{font-size:12px}

/* Feature catalogue and walkthrough page. */
.vf-features{max-width:1120px;margin:0 auto;color:var(--ink)}
.vf-features-header{max-width:760px;padding:10px 0 42px}
.vf-eyebrow{font-size:11px;letter-spacing:.14em;line-height:1.4;font-weight:750;color:var(--accent);margin:0 0 13px;text-transform:uppercase}
.vf-features h1,.vf-contact h1{font-size:clamp(34px,5vw,58px);line-height:1.05;letter-spacing:-2.2px;margin:0 0 20px}
.vf-lead{font-size:18px;line-height:1.65;color:var(--muted);max-width:700px;margin:0 0 24px}
.vf-actions{display:flex;align-items:center;flex-wrap:wrap;gap:14px 24px}
.vf-primary{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:13px 20px;background:var(--accent);color:#fff!important;border-radius:8px;text-decoration:none;font-weight:700}
.vf-primary:hover{background:var(--accent2);color:#fff!important}
.vf-text-link{display:inline-flex;align-items:center;gap:8px;min-height:44px;font-weight:650;text-decoration:none}
.vf-feature-section{display:grid;grid-template-columns:minmax(180px,.7fr) minmax(0,2fr);gap:34px;padding:30px 0;border-top:1px solid var(--line)}
.vf-feature-section-copy{font-size:14px;line-height:1.6;color:var(--muted);margin:0;max-width:260px}
.vf-feature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px}
.vf-feature-card{display:flex;gap:11px;align-items:flex-start;min-height:82px;padding:14px;border:1px solid var(--line);border-radius:10px;background:#fff;text-decoration:none;color:var(--ink)!important}
.vf-feature-card:hover{border-color:var(--vf-primary-muted);background:var(--vf-bg)}
.vf-feature-icon{display:grid;place-items:center;width:25px;height:25px;flex:none;border-radius:7px;background:var(--vf-primary-soft);color:var(--accent);font-size:15px;font-weight:750}
.vf-feature-card b{display:block;font-size:14px;line-height:1.35}
.vf-feature-card small{display:block;margin-top:4px;color:var(--muted);font-size:12px;line-height:1.45}
.vf-contact{max-width:1120px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(390px,520px);gap:64px;align-items:start}
.vf-contact-intro{padding-top:10px}
.vf-contact-proof{margin:34px 0 22px;padding:24px 26px;border:1px solid var(--line);border-radius:14px;background:#fff}
.vf-contact-proof ul{list-style:none;padding:0;margin:13px 0 0}
.vf-contact-proof li{display:flex;flex-direction:column;gap:3px;padding:13px 0;border-top:1px solid var(--line)}
.vf-contact-proof li b{font-size:14px}.vf-contact-proof li span{font-size:13px;color:var(--muted)}
.vf-contact-note{font-size:13px;color:var(--muted);line-height:1.6}
.vf-contact-card{padding:28px;border-radius:16px;background:var(--vf-night);color:var(--vf-surface-2);box-shadow:0 25px 55px -38px var(--vf-ink)}
.vf-contact-card h2{color:#fff;font-size:28px;margin:0 0 7px;letter-spacing:-.8px}.vf-contact-card>p{color:var(--vf-line);margin:0 0 24px;font-size:14px}
.vf-contact-card label{color:var(--vf-line);font-size:11px;letter-spacing:.07em;text-transform:uppercase;margin-bottom:6px}
.vf-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px 16px;margin-bottom:16px}
.vf-contact-card input,.vf-contact-card select,.vf-contact-card textarea{width:100%;background:var(--vf-night);border:1px solid #584d85;color:#fff;border-radius:8px;font-size:15px;min-height:46px}.vf-contact-card textarea{resize:vertical;min-height:130px}.vf-contact-card input::placeholder,.vf-contact-card textarea::placeholder{color:#a39ec2}
.vf-contact-card button{width:100%;margin-top:18px;background:var(--vf-bg);color:var(--vf-ink);min-height:48px}.vf-contact-card button:hover{background:var(--vf-line);color:var(--vf-ink)}
.vf-form-grid>div,.vf-contact-intro,.vf-contact-card{min-width:0}
.vf-contact-card input,.vf-contact-card select,.vf-contact-card textarea{font-size:16px}
.vf-contact-card input:focus,.vf-contact-card select:focus,.vf-contact-card textarea:focus{outline-color:var(--vf-primary-soft-2);outline-offset:3px}
.vf-contact-card [aria-invalid=true]{border-color:#ffb9b9;border-width:2px}
.vf-contact-card .vf-field-error{color:#ffd1d1;font-size:14px;line-height:1.5;margin:7px 0 0}
.vf-form-errors{padding:16px;margin:0 0 22px;border:2px solid #ffc7c7;border-radius:8px;background:var(--vf-bg);color:#60222a;overflow-wrap:anywhere}
.vf-form-errors h3{font-size:18px;color:#60222a;margin:0 0 10px}.vf-form-errors ul{padding-left:20px;margin:0}.vf-form-errors a{color:#60222a;font-size:14px}
.vf-capability-status{display:inline-block;margin:6px 0 2px;padding:2px 6px;background:var(--vf-primary-soft);border-radius:4px;font-size:11px;line-height:1.5;font-weight:600;color:var(--vf-ink-2)}
.vf-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;opacity:0!important}
.vf-all-features{margin:0 0 42px;padding:24px 0 0;border-top:1px solid var(--line)}
.vf-all-features-heading{max-width:670px;margin-bottom:24px}.vf-all-features-heading h2{font-size:30px;letter-spacing:-.9px;margin:0 0 8px}.vf-all-features-heading p:not(.vf-eyebrow){font-size:14px;color:var(--muted);line-height:1.6;margin:0}
.vf-all-features-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:20px;border:1px solid var(--line);border-radius:15px;background:#fff;padding:25px 20px}
.vf-all-features-column{min-width:0}.vf-all-features-column h2{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);line-height:1.4;margin:0 0 14px}.vf-all-features-column a{display:block;padding:8px 6px;margin:0 -6px;border-radius:7px;text-decoration:none;color:var(--ink)!important}.vf-all-features-column a:hover{background:var(--vf-surface-2)}.vf-all-features-column b{display:block;font-size:13px;line-height:1.35}.vf-all-features-column small{display:block;color:var(--muted);font-size:10px;line-height:1.4;margin-top:2px}
@media(max-width:1200px){.top .in{flex-wrap:wrap;gap:8px 24px}.vf-marketing-nav{width:100%;justify-content:flex-start}}
@media(max-width:1040px){.vf-marketing-nav{gap:10px!important}.vf-marketing-nav .vf-mega>summary{font-size:14px}.vf-mega-panel{width:min(960px,calc(100vw - 24px))}}
@media(max-width:800px){.vf-marketing-nav{width:100%;justify-content:flex-start;flex-wrap:wrap;gap:3px 14px!important}.vf-marketing-nav .vf-mega>summary{font-size:13px}.vf-mega-panel{position:relative;top:auto;left:auto;transform:none;width:100%;grid-template-columns:1fr;padding:20px;margin:4px 0 8px;border-radius:12px;box-shadow:none}.vf-marketing-nav .vf-mega[open]{width:100%}.vf-mega-groups{grid-template-columns:1fr;gap:16px}.vf-mega-cta{min-height:125px}.vf-contact{grid-template-columns:1fr;gap:30px}.vf-contact-card{order:2}.vf-feature-section{grid-template-columns:1fr;gap:17px}.vf-feature-section-copy{max-width:640px}.vf-all-features-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 16px}}
@media(max-width:520px){.vf-features h1,.vf-contact h1{font-size:38px;letter-spacing:-1.3px}.vf-features-header{padding-bottom:28px}.vf-feature-grid{grid-template-columns:1fr}.vf-form-grid{grid-template-columns:1fr}.vf-contact-card{padding:22px}.vf-actions{align-items:flex-start;flex-direction:column;gap:8px}.vf-primary{width:100%}.vf-all-features-grid{grid-template-columns:1fr;padding:20px 16px}}
.vf-all-features-column small{font-size:12px}
@media(max-width:800px){.vf-mega-panel{max-height:none;overflow:visible}.vf-marketing-nav .vf-mega>summary{font-size:14px}.vf-mega-item small{font-size:13px}.vf-all-features-column small{font-size:12px}}
@media print{.vf-contact-card form,.vf-form-errors{display:none}.vf-contact{display:block}.vf-all-features-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.vf-all-features-column,.vf-feature-card{break-inside:avoid}}
/* Public product experience. Scoped to avoid changing reports and workspace flows. */
.vf-public-page{background:var(--vf-bg);color:var(--vf-ink)}
.vf-public-page .top{position:relative;background:var(--vf-bg);border-bottom:1px solid var(--vf-line);z-index:30}
.vf-public-page .top>.in{max-width:1440px;padding:22px 36px;gap:32px;position:relative}
.vf-public-page .brand-wordmark{width:185px;height:auto}
.vf-public-page .vf-marketing-nav{gap:22px;position:static;flex:1;justify-content:flex-end}
.vf-public-page .vf-mega{position:static}
.vf-public-page .vf-mega>summary{font-size:13px;font-weight:600;gap:5px;padding:8px 0;white-space:nowrap}
.vf-public-page .vf-header-cta{font-size:12px;color:var(--accent2)!important;border-bottom:1px solid currentColor;padding:3px 0!important;white-space:nowrap}
.vf-public-page .navcta{font-size:13px;padding:11px 20px;border-radius:7px;white-space:nowrap}
.vf-public-page .vf-mega-panel{top:calc(100% - 1px);width:min(1280px,calc(100vw - 48px));grid-template-columns:minmax(0,1fr) 270px;gap:32px;padding:32px;border-radius:0 0 18px 18px;box-shadow:0 25px 40px #193e331c;max-height:calc(100vh - 130px);border-top:3px solid var(--vf-primary-soft-2)}
.vf-public-page .vf-mega-groups{gap:38px}
.vf-public-page .vf-mega-group h3{color:var(--vf-muted);font-size:12px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;margin:0 0 16px}
.vf-public-page .vf-mega-item{display:flex;flex-direction:row;align-items:flex-start;gap:12px;padding:9px 7px;margin:0 -7px;border-radius:8px;text-decoration:none}
.vf-public-page .vf-mega-item:hover{background:var(--vf-surface-2)}
.vf-menu-icon{background:var(--vf-primary-soft);color:var(--vf-primary);border:1px solid var(--vf-line);border-radius:9px;flex:0 0 36px;width:36px;height:36px;display:grid;place-items:center}
.vf-menu-icon svg{width:20px;height:20px}
.vf-public-page .vf-menu-copy{display:flex;flex-direction:column;gap:3px;min-width:0}
.vf-public-page .vf-menu-copy b{font-size:14px;font-weight:650;color:var(--vf-ink);line-height:1.35}
.vf-public-page .vf-menu-copy small{font-size:12px;line-height:1.5;color:var(--vf-muted)}
.vf-public-page .vf-mega-cta{padding:24px;align-self:stretch;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-end;background:linear-gradient(140deg,var(--vf-primary-deep),var(--vf-primary));border-radius:12px;overflow:hidden;color:#fff;min-height:250px;position:relative}
.vf-public-page .vf-mega-cta .vf-eyebrow{font-size:12px;color:inherit;opacity:.82;margin:18px 0 7px;letter-spacing:.15em}
.vf-public-page .vf-mega-cta p{font:700 31px/1.08 var(--vf-font-display);letter-spacing:-.6px;color:inherit;margin:0 0 22px}
.vf-public-page .vf-mega-cta a{font-size:12px;color:inherit;border-top:1px solid #ffffff55;padding-top:15px;line-height:1.5;width:100%}
.vf-menu-card-icon{height:75px;width:75px;border:1px solid #ffffff40;display:grid;place-items:center;border-radius:20px;transform:rotate(-8deg);margin-bottom:auto;background:#ffffff15}
.vf-menu-card-icon svg{width:40px;height:40px}
.vf-public-page [data-menu="visibility"] .vf-mega-cta{background:linear-gradient(135deg,var(--vf-night-2),var(--vf-primary))}
.vf-public-page [data-menu="workflows"] .vf-mega-cta{background:linear-gradient(135deg,var(--vf-primary-deep),#9d174d)}
.vf-public-page [data-menu="audiences"] .vf-mega-cta{background:linear-gradient(135deg,var(--vf-night),var(--vf-primary-hover))}
.vf-public-page [data-menu="resources"] .vf-mega-cta{background:linear-gradient(135deg,var(--vf-primary-hover),var(--vf-accent-ink))}
.vf-public-page .wrap.wide{max-width:1400px;padding:0 40px 70px}
.vf-home.vf-experience{max-width:none;padding:0}
.vf-experience h1,.vf-experience h2,.vf-detail h1{font-family:var(--vf-font-display);font-weight:700;letter-spacing:-1.8px;color:var(--vf-ink)}
.vf-experience h2{font-size:46px;line-height:1.12;margin:0}
.vf-experience .vf-eyebrow{font-size:12px;letter-spacing:.15em;font-weight:700;line-height:1.6;color:var(--vf-primary)}
.vf-hero-split{display:grid;grid-template-columns:.82fr 1.18fr;gap:42px;align-items:center;padding:75px 0 60px}
.vf-hero-copy{min-width:0}
.vf-hero-copy>.vf-eyebrow{display:flex;gap:8px;align-items:center;margin:0 0 24px}
.vf-live-dot{display:inline-block;flex-shrink:0;width:6px;height:6px;border-radius:50%;background:var(--vf-primary-bright)}
.vf-experience .vf-hero-copy h1{font-size:clamp(52px,5.4vw,76px);line-height:1.03;letter-spacing:-3px;margin:0 0 25px}
.vf-experience h1 em,.vf-final-cta h2 em{color:var(--vf-primary);font-weight:400}
.vf-experience .vf-lead{font-size:17px;line-height:1.75;max-width:440px;color:var(--vf-muted);margin:0 0 27px}
.vf-experience .vf-actions{gap:18px;align-items:center;flex-wrap:wrap;display:flex;margin:0}
.vf-public-page .btn.vf-primary,.vf-public-page .vf-primary{background:var(--accent2);color:#fff;border:1px solid var(--accent2);border-radius:7px;font-size:13px;font-weight:650;padding:15px 19px;line-height:1.4;display:inline-flex;align-items:center;gap:20px;text-decoration:none}
.vf-public-page .btn.vf-primary:hover{background:var(--accent);transform:translateY(-1px)}
.vf-experience .vf-text-link{font-size:13px;font-weight:600;text-decoration:none;color:var(--vf-primary-hover)}
.vf-experience .vf-text-link:hover{text-decoration:underline}
.vf-experience .vf-hero-note{font-size:12px;color:var(--vf-muted);line-height:1.8;margin:23px 0 0}
.vf-hero-note a{color:var(--vf-primary-hover);text-underline-offset:3px}
.vf-hero-product{min-width:0;position:relative;padding:20px 0 20px 12px}
.vf-hero-product:before{content:"";position:absolute;inset:-12px -14px -12px -16px;background:radial-gradient(ellipse at 65% 40%,var(--vf-primary-soft-2) 0,transparent 65%);z-index:0}
.vf-product-preview{position:relative;background:#fff;border:1px solid var(--vf-line);border-radius:13px;box-shadow:0 20px 50px #25482e16,0 3px 7px #25482e08;overflow:hidden;min-width:0}
.vf-preview-top{background:var(--vf-primary-soft);color:var(--vf-muted);display:flex;align-items:center;justify-content:space-between;padding:12px 16px;font-size:12px;gap:10px;border-bottom:1px solid var(--vf-line)}
.vf-preview-top b{font-weight:500}
.vf-preview-top>span:first-child{display:flex;gap:4px}
.vf-preview-top i{width:5px;height:5px;background:var(--vf-line-strong);border-radius:50%;display:block}
.vf-preview-tabs{display:flex;gap:0;background:var(--vf-night);overflow-x:auto;padding:0 6px;scrollbar-width:thin}
.vf-preview-tabs a{display:block;color:var(--vf-line);padding:14px 10px;font-size:12px;white-space:nowrap;text-decoration:none;border-bottom:3px solid transparent}
.vf-preview-tabs a:hover{background:var(--vf-primary-deep)}
.vf-preview-tabs a[aria-selected="true"]{color:var(--vf-primary-soft);border-bottom-color:var(--vf-line-strong);background:var(--vf-primary)}
.vf-preview-panels{max-height:520px;overflow:auto}
.vf-product-preview[data-enhanced] .vf-preview-panels{max-height:none;overflow:visible}
.vf-preview-panel{padding:27px 26px;min-height:396px;scroll-margin-top:15px}
.vf-preview-panel[hidden]{display:none!important}
.vf-preview-panel+.vf-preview-panel{border-top:1px solid var(--vf-line)}
.vf-product-preview[data-enhanced] .vf-preview-panel{border-top:0}
.vf-preview-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:23px}
.vf-preview-kicker{color:var(--vf-muted);font-size:12px;letter-spacing:.1em;font-weight:650}
.vf-experience .vf-preview-title h2{font-family:inherit;font-size:20px;letter-spacing:-.6px;margin:5px 0 4px;font-weight:650;line-height:1.25}
.vf-preview-title p{font-size:12px;color:var(--vf-muted);margin:0;line-height:1.6}
.vf-demo-avatar{display:grid;place-items:center;width:42px;height:42px;border-radius:11px;background:var(--vf-primary-soft);color:var(--vf-primary);font:italic 700 26px var(--vf-font-display);flex-shrink:0}
.vf-overview-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:16px}
.vf-score-card{border:1px solid var(--vf-primary-soft);border-radius:8px;padding:16px 10px;text-align:center;display:flex;flex-direction:column;align-items:center}
.vf-score-ring{width:106px;height:106px;background:conic-gradient(var(--vf-primary-bright) 0 72%,var(--vf-primary-soft) 72%);border-radius:50%;display:grid;place-items:center;margin-bottom:11px;transform:rotate(-18deg)}
.vf-score-ring strong{border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;width:85px;height:85px;background:#fff;font-size:32px;line-height:1;font-weight:550;transform:rotate(18deg)}
.vf-score-ring strong span{font-size:12px;font-weight:400;color:var(--vf-muted);margin-top:4px}
.vf-score-card>b{font-size:12px;font-weight:650}
.vf-score-card>small{font-size:12px;color:var(--vf-muted);margin-top:3px}
.vf-opportunity{background:var(--vf-surface-2);border-radius:8px;padding:17px}
.vf-opportunity h3{font:700 24px/1.08 var(--vf-font-display);letter-spacing:-.6px;margin:10px 0;color:var(--vf-primary-deep)}
.vf-opportunity p{font-size:12px;line-height:1.6;color:var(--vf-muted);margin:0 0 12px}
.vf-sample-pill{display:inline-block;font-size:12px;padding:4px 7px;border-radius:4px;background:var(--vf-line);color:var(--vf-primary-hover);white-space:nowrap;font-weight:500}
.vf-preview-metrics{display:grid;grid-template-columns:repeat(3,1fr);margin-top:21px;gap:12px}
.vf-preview-metrics div{border-top:1px solid var(--vf-line);padding-top:12px;display:flex;flex-direction:column;gap:3px}
.vf-preview-metrics b{font-size:22px;letter-spacing:-.6px;font-weight:500}
.vf-preview-metrics span{font-size:12px;color:var(--vf-subtle)}
.vf-preview-bottom{display:flex;gap:6px;align-items:center;border-top:1px solid var(--vf-primary-soft);padding:12px 15px;font-size:12px;color:var(--vf-muted);line-height:1.5}
.vf-preview-bottom a{color:var(--vf-primary-hover);text-decoration:none;margin-left:auto;white-space:nowrap}
.vf-preview-note{font-size:12px;line-height:1.65;color:var(--vf-muted);margin:20px 0 0}
.vf-question{padding:15px;border-radius:8px;background:var(--vf-surface-2);font-size:14px;font-family:var(--vf-font-display);font-weight:700;line-height:1.5;margin-bottom:12px}
.vf-answer{border-left:2px solid var(--vf-primary-bright);padding:4px 16px}
.vf-answer p{font-size:12px;line-height:1.7;margin:8px 0}
.vf-check-row{display:flex;align-items:center;gap:12px;padding:15px 0;border-bottom:1px solid var(--vf-primary-soft)}
.vf-check-state{display:grid;place-items:center;width:28px;height:28px;flex-shrink:0;border-radius:50%;font-size:12px}
.vf-check-state.pass{background:var(--vf-good-bg);color:var(--vf-good)}
.vf-check-state.attention{background:#fff0d7;color:#8d6531}
.vf-check-state.missing{background:var(--vf-primary-soft);color:var(--vf-muted)}
.vf-check-row b{font-size:12px;display:block}
.vf-check-row small{font-size:12px;display:block;color:var(--vf-subtle);margin-top:3px}
.vf-check-row em{font-size:12px;font-style:normal;margin-left:auto;color:var(--vf-muted)}
.vf-bar-row{display:grid;grid-template-columns:140px 1fr 20px;align-items:center;gap:12px;padding:18px 0;font-size:12px}
.vf-bar-row>div{background:var(--vf-primary-soft);height:11px;border-radius:3px;overflow:hidden}
.vf-bar-row i{display:block;height:100%;background:var(--vf-primary-bright)}
.vf-bar-row:first-of-type i{background:var(--vf-primary-hover)}
.vf-bar-row b{font-size:12px}
.vf-proposal-item{display:flex;gap:12px;border-bottom:1px solid var(--vf-primary-soft);padding:20px 0;font-size:12px}
.vf-proposal-item>span{color:var(--vf-muted);font-size:12px}
.vf-proposal-item b{font-size:12px}
.vf-proposal-item p{font-size:12px;color:var(--vf-subtle);line-height:1.6;margin:6px 0 0}
.vf-proposal-item>strong{margin-left:auto;white-space:nowrap;font-size:12px}
.vf-proposal-total{display:flex;align-items:center;justify-content:space-between;background:var(--vf-primary-soft);padding:14px;border-radius:6px;margin-top:18px;font-size:12px}
.vf-proposal-total b{font-size:21px;font-weight:500}
.vf-progress-list{list-style:none;display:flex;flex-direction:column;gap:20px;padding:0;margin:25px 0}
.vf-progress-list li{display:flex;align-items:center;gap:12px}
.vf-progress-list li>span{display:grid;place-items:center;width:29px;height:29px;border-radius:50%;border:1px solid var(--vf-primary-soft-2);background:var(--vf-primary-soft);color:var(--vf-primary);font-size:12px}
.vf-progress-list b{font-size:12px}
.vf-progress-list small{display:block;font-size:12px;margin-top:4px;color:var(--vf-subtle)}
.vf-capability-strip{border-block:1px solid var(--vf-line);display:flex;align-items:center;justify-content:space-between;gap:24px;padding:26px 0}
.vf-capability-strip>span{font-size:12px;letter-spacing:.09em;color:var(--vf-subtle);max-width:160px;line-height:1.7}
.vf-capability-strip a{font-size:14px;color:var(--vf-primary-hover);text-decoration:none;font-weight:600}
.vf-capability-strip a:hover{text-decoration:underline}
.vf-home-section{padding:80px 0}
.vf-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:50px;margin-bottom:36px}
.vf-section-heading .vf-eyebrow{margin:0 0 16px}
.vf-section-heading>p{max-width:310px;font-size:14px;line-height:1.8;color:var(--vf-muted);margin:0 0 4px}
.vf-discovery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:17px}
.vf-discovery-card{position:relative;display:block;padding:25px 25px 32px;border:1px solid var(--vf-line);border-radius:10px;background:var(--vf-bg);text-decoration:none;color:var(--vf-primary-deep);min-height:230px;transition:transform .15s,box-shadow .15s}
.vf-discovery-card:hover{transform:translateY(-3px);box-shadow:0 8px 20px #4057270a;border-color:var(--vf-primary-muted)}
.vf-icon-box{width:43px;height:43px;display:grid;place-items:center;background:var(--vf-surface-2);border:1px solid var(--vf-line);color:var(--vf-primary);border-radius:10px;margin-bottom:20px}
.vf-discovery-card h3{font-size:17px;margin:0 0 10px;letter-spacing:-.3px}
.vf-discovery-card p{font-size:12px;line-height:1.85;color:var(--vf-muted);margin:0 0 10px;max-width:270px}
.vf-card-arrow{position:absolute;top:27px;right:25px;color:var(--vf-primary);font-size:20px}
.vf-section-link{display:inline-block;margin-top:27px}
.vf-workflow-section{padding:60px 42px;background:var(--vf-surface-2);border-radius:14px;margin:0 0 75px}
.vf-workflow-section>.vf-eyebrow{margin:0 0 18px}
.vf-workflow-steps{padding:0;margin:45px 0 0;list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:40px}
.vf-workflow-steps li{border-top:1px solid var(--vf-line-strong);padding-top:20px;min-width:0}
.vf-workflow-steps li>span{font-size:12px;color:var(--vf-primary);letter-spacing:.1em}
.vf-workflow-steps h3{font-size:18px;font-weight:600;letter-spacing:-.4px;margin:18px 0 10px;line-height:1.3}
.vf-workflow-steps p{font-size:12px;line-height:1.85;color:var(--vf-muted);margin:0 0 18px}
.vf-workflow-steps a{font-size:12px;text-decoration:none;font-weight:650;color:var(--vf-primary-hover)}
.vf-local-section{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;border-radius:14px;background:var(--vf-night);padding:50px 42px;color:var(--vf-primary-soft);margin-bottom:5px}
.vf-local-section h2{color:var(--vf-surface-2);font-size:47px;margin-bottom:24px}
.vf-local-section .vf-eyebrow{color:var(--vf-primary-muted)}
.vf-local-section p{font-size:14px;line-height:1.9;color:var(--vf-line-strong);max-width:370px}
.vf-local-section p.vf-local-note{font-size:12px;color:#bdb3f0;margin:20px 0}
.vf-local-section .btn{background:var(--vf-line);color:var(--vf-primary-deep);font-size:12px;border:0;padding:13px 18px;border-radius:6px;display:inline-block;text-decoration:none;font-weight:600}
.vf-local-visual{background:var(--vf-bg);border-radius:9px;padding:15px;color:var(--vf-primary-hover);transform:rotate(-2deg)}
.vf-local-caption{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 0 13px;font-size:12px}
.vf-local-caption>span{display:flex;align-items:center;gap:5px;letter-spacing:.08em}
.vf-local-caption svg{width:13px;height:13px}
.vf-local-caption>b{font-size:12px;font-weight:500;color:var(--vf-muted)}
.vf-map{overflow:hidden;position:relative;border-radius:7px;background-color:var(--vf-primary-soft);background-image:linear-gradient(0deg,transparent 46%,var(--vf-primary-soft-2) 47%,var(--vf-bg) 49%,var(--vf-bg) 53%,var(--vf-primary-soft-2) 54%,transparent 55%),linear-gradient(90deg,transparent 45%,var(--vf-primary-soft-2) 46%,var(--vf-bg) 48%,var(--vf-bg) 51%,var(--vf-primary-soft-2) 53%,transparent 54%);background-size:70px 52px;min-height:260px}
.vf-map-water{position:absolute;width:40px;height:150%;background:var(--vf-primary-soft-2);right:16%;top:-25%;transform:rotate(35deg);box-shadow:0 0 0 7px var(--vf-line)}
.vf-map-road{position:absolute;background:var(--vf-bg);box-shadow:0 0 0 1px var(--vf-primary-soft-2);width:130%;height:12px;left:-10%;transform:rotate(-23deg);top:40%}
.vf-map-road.road-two{transform:rotate(29deg);top:72%}
.vf-map-points{position:relative;display:grid;grid-template-columns:repeat(5,1fr);justify-items:center;gap:15px;padding:23px 30px 38px}
.vf-map-point{display:grid;place-items:center;width:25px;height:25px;font-size:12px;font-weight:650;border:2px solid #ffffffd9;border-radius:50%;box-shadow:0 2px 4px #405b2520;color:var(--vf-primary-hover)}
.vf-map-point.good,.vf-grid-legend .good{background:#b4d786}.vf-map-point.medium,.vf-grid-legend .medium{background:#e9d389}.vf-map-point.low,.vf-grid-legend .low{background:#e6aa92}
.vf-map-label{position:absolute;bottom:8px;left:0;width:100%;text-align:center;letter-spacing:.13em;font-size:12px;color:var(--vf-primary);text-shadow:0 1px 0 #fff}
.vf-grid-legend{display:flex;align-items:center;gap:12px;padding:13px 0 0;font-size:12px}
.vf-grid-legend>span{display:flex;align-items:center;gap:4px}
.vf-grid-legend i{width:7px;height:7px;border-radius:50%}
.vf-grid-legend small{margin-left:auto;font-size:12px;color:var(--vf-muted)}
.vf-integration-cards{display:grid;grid-template-columns:repeat(5,1fr);gap:15px}
.vf-integration-cards a{display:flex;flex-direction:column;align-items:center;padding:24px 12px;background:var(--vf-bg);border:1px solid var(--vf-line);border-radius:9px;text-decoration:none;color:var(--vf-primary-hover);gap:8px;text-align:center}
.vf-integration-cards a:hover{border-color:var(--vf-primary-muted);background:var(--vf-surface-2)}
.vf-integration-cards svg{height:28px;width:28px;margin-bottom:8px;color:var(--vf-primary)}
.vf-integration-cards b{font-size:14px;font-weight:600}
.vf-integration-cards small{font-size:12px;color:var(--vf-subtle)}
.vf-connect-section{border-bottom:1px solid var(--vf-line)}
.vf-resource-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:23px}
.vf-resource-cards>a{display:block;text-decoration:none;color:var(--vf-ink)}
.vf-resource-art{height:170px;border-radius:8px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:22px;color:var(--vf-muted);background:var(--vf-line);margin-bottom:24px}
.vf-resource-art svg{width:53px;height:53px;transform:rotate(-9deg);stroke-width:1}
.vf-resource-art>span{font-size:12px;letter-spacing:.16em}
.resource-proposal{background:var(--vf-accent-soft);color:var(--vf-accent-ink)}
.resource-local{background:var(--vf-line);color:var(--vf-primary)}
.vf-resource-cards small{font-size:12px;letter-spacing:.1em;color:var(--vf-muted)}
.vf-resource-cards h3{font-size:18px;font-weight:550;line-height:1.45;letter-spacing:-.3px;max-width:300px;margin:10px 0 17px}
.vf-resource-cards>a>span{font-size:12px;color:var(--vf-primary)}
.vf-resource-cards>a:hover h3{text-decoration:underline;text-underline-offset:3px}
.vf-experience .vf-faq-section{margin:0;padding:45px 0 80px;display:grid;grid-template-columns:1fr 1.1fr;gap:60px;border:0}
.vf-experience .vf-faq-section h2{font-size:38px}
.vf-experience .vf-faq-list{border-top:1px solid var(--vf-line)}
.vf-experience .vf-faq-list details{background:transparent;border:0;border-bottom:1px solid var(--vf-line);border-radius:0;padding:0}
.vf-experience .vf-faq-list summary{padding:20px 0;font-size:13px;font-weight:600}
.vf-experience .vf-faq-list p{font-size:12px;color:var(--vf-muted);line-height:1.9;padding:0 0 18px;margin:0}
.vf-final-cta{background:var(--vf-primary-soft);border:1px solid var(--vf-line);border-radius:14px;text-align:center;padding:57px 24px}
.vf-final-cta h2{font-size:56px;line-height:1.08;margin:20px 0 28px}
.vf-final-cta .vf-actions{justify-content:center}
.vf-experience .vf-public-preview{max-width:570px;text-align:left;margin:26px auto 0;border-top:1px solid var(--vf-primary-soft-2);padding-top:16px;background:transparent}
.vf-experience .vf-public-preview>summary{font-size:12px;text-align:center;color:var(--vf-primary);list-style-position:inside}
.vf-experience .vf-audit-form{padding-top:16px}
.vf-experience .vf-audit-form label{font-size:12px}
.vf-experience .vf-audit-form input{min-width:0;background:#fff}
.vf-experience .vf-fine-print{font-size:12px}
.vf-site-footer{margin:0;padding:54px max(36px,calc((100vw - 1320px)/2)) 25px;background:var(--vf-primary-soft);color:var(--vf-muted);border-top:1px solid var(--vf-line);font-size:12px}
.vf-footer-top{display:flex;align-items:center;gap:50px;padding-bottom:45px;margin-bottom:45px;border-bottom:1px solid var(--vf-primary-soft-2)}
.vf-footer-top img{width:180px;height:auto}
.vf-footer-top p{font:700 22px/1.2 var(--vf-font-display);letter-spacing:-.4px;margin:0;color:var(--vf-primary)}
.vf-footer-top .btn{margin-left:auto;background:transparent;border:1px solid var(--vf-primary-soft-2);border-radius:6px;font-size:12px;color:var(--vf-primary-hover);padding:13px 18px;display:inline-flex;align-items:center;gap:24px;line-height:1.4;text-decoration:none}
.vf-footer-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}
.vf-footer-grid h2{font-size:12px;color:var(--vf-primary-hover);font-weight:700;margin:0 0 15px;letter-spacing:0;line-height:1.6}
.vf-footer-grid ul{list-style:none;padding:0;margin:0 0 26px}
.vf-footer-grid li{margin:0 0 11px;line-height:1.5}
.vf-footer-grid a{font-size:12px;color:var(--vf-muted);text-decoration:none;display:inline}
.vf-footer-grid a:hover{color:var(--vf-primary-deep);text-decoration:underline}
.vf-footer-tag{display:inline-block;font-size:12px;color:var(--vf-muted);background:var(--vf-line);border:1px solid var(--vf-primary-soft-2);border-radius:3px;padding:0 3px;margin-left:4px;vertical-align:1px}
.vf-footer-bottom{padding-top:24px;margin-top:30px;border-top:1px solid var(--vf-primary-soft-2);display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:12px;color:var(--vf-muted)}
.vf-footer-bottom>span:last-child{display:flex;gap:20px}
.vf-footer-bottom a{color:inherit;text-decoration:none}
.vf-detail{padding:34px 0 20px}
.vf-breadcrumb{display:inline-flex;gap:12px;color:var(--vf-muted);font-size:12px;text-decoration:none;margin-bottom:40px}
.vf-detail-hero{display:grid;grid-template-columns:1fr 320px;gap:80px;align-items:center;padding-bottom:55px;border-bottom:1px solid var(--vf-line)}
.vf-detail-hero>.vf-icon-box{margin-bottom:30px}
.vf-detail .vf-eyebrow{font-size:12px;letter-spacing:.13em;color:var(--vf-primary)}
.vf-detail h1{font-size:61px;line-height:1.06;margin:16px 0 25px;max-width:740px}
.vf-detail .vf-lead{font-size:19px;line-height:1.7;color:var(--vf-muted);margin:0 0 30px;max-width:690px}
.vf-detail .vf-actions{display:flex;flex-wrap:wrap;align-items:center;gap:20px}
.vf-detail .vf-text-link{font-size:12px}
.vf-availability{border:1px solid var(--vf-line);background:var(--vf-surface-2);border-radius:10px;padding:25px}
.vf-availability h2{font-size:22px;letter-spacing:-.5px;font-weight:550;line-height:1.3;margin:12px 0}
.vf-availability p{font-size:12px;line-height:1.85;color:var(--vf-muted);margin:0 0 24px}
.vf-availability a{font-size:12px;color:var(--vf-primary-hover);font-weight:600;text-decoration:none}
.vf-detail-body{max-width:900px;padding:35px 0}
.vf-detail-step{display:flex;align-items:flex-start;gap:40px;border-bottom:1px solid var(--vf-line);padding:30px 0}
.vf-step-number{font:italic 700 33px var(--vf-font-display);color:var(--vf-primary);padding-top:2px}
.vf-detail-step h2{font-size:23px;font-weight:550;letter-spacing:-.6px;line-height:1.3;margin:0 0 15px}
.vf-detail-step p{font-size:15px;line-height:1.9;color:var(--vf-muted);margin:0}
.vf-related{display:flex;align-items:center;flex-wrap:wrap;gap:30px;padding:20px 0}
.vf-related h2{font-size:14px;margin:0 auto 0 0}
.vf-related a{font-size:12px;text-decoration:none;color:var(--vf-primary)}
.vf-related a span{margin-left:15px}
.vf-public-page .vf-features{padding-top:40px}
.vf-integrations-hero{padding:25px 0 40px;max-width:860px}
.vf-integration-group{margin:35px 0 55px}
.vf-integration-group>h2{font-size:24px;letter-spacing:-.6px;margin-bottom:24px}
.vf-public-page .vf-all-features-grid{gap:20px}
.vf-public-page .vf-all-features-column{background:var(--vf-bg);border-radius:8px;border:1px solid var(--vf-line);padding:18px}
.vf-public-page :where(a,button,summary,input,select,textarea):focus-visible{outline:3px solid var(--vf-focus);outline-offset:4px}
@media(min-width:1450px){.vf-hero-split{padding-block:95px 75px}.vf-preview-panel{min-height:420px}}
@media(max-width:1200px){.vf-public-page .top>.in{padding:20px 28px;gap:22px;flex-wrap:wrap}.vf-public-page .vf-marketing-nav{gap:18px}.vf-public-page .vf-header-cta{display:none}.vf-public-page .brand-wordmark{width:170px}.vf-hero-split{grid-template-columns:.8fr 1.2fr;gap:30px}.vf-experience .vf-hero-copy h1{font-size:58px}.vf-public-page .wrap.wide{padding-inline:30px}.vf-preview-tabs a{padding:13px 8px;font-size:12px}.vf-preview-panel{padding:22px 20px;min-height:396px}.vf-local-section{gap:40px}.vf-footer-grid{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:60px}.vf-footer-grid a{font-size:12px}.vf-footer-grid h2{font-size:13px}.vf-detail-hero{gap:40px;grid-template-columns:1fr 290px}}
@media(max-width:960px){.vf-public-page .top>.in{gap:12px;justify-content:space-between}.vf-public-page .vf-marketing-nav{flex-basis:100%;justify-content:space-between}.vf-public-page .vf-mega-panel{max-height:calc(100vh - 180px)}.vf-hero-split{grid-template-columns:1fr;gap:25px;padding-top:46px}.vf-hero-copy{text-align:center}.vf-hero-copy>.vf-eyebrow{justify-content:center}.vf-experience .vf-hero-copy h1{font-size:65px}.vf-experience .vf-hero-copy h1 br:nth-of-type(2){display:none}.vf-experience .vf-lead{margin-inline:auto;max-width:500px}.vf-experience .vf-hero-copy .vf-actions{justify-content:center}.vf-hero-product{max-width:680px;width:100%;margin:auto;padding:15px 0}.vf-preview-panel{min-height:396px}.vf-preview-tabs{justify-content:space-between}.vf-preview-tabs a{padding:14px 12px;font-size:12px}.vf-section-heading{gap:25px}.vf-experience h2{font-size:38px}.vf-section-heading>p{max-width:270px;font-size:12px}.vf-local-section{grid-template-columns:1fr 1fr;padding:30px;gap:30px}.vf-local-section h2{font-size:36px}.vf-local-section p{font-size:12px}.vf-map-points{padding-inline:10px;gap:15px}.vf-workflow-section{padding:40px 30px}.vf-workflow-steps{gap:26px}.vf-detail h1{font-size:48px}.vf-detail .vf-lead{font-size:17px}.vf-detail-hero{grid-template-columns:1fr 240px;gap:30px}.vf-availability{padding:20px}.vf-detail .vf-actions{align-items:flex-start;flex-direction:column}}
@media(max-width:700px){.vf-public-page .top>.in{padding:17px 20px}.vf-public-page .brand-wordmark{width:162px}.vf-public-page .vf-marketing-nav{display:flex;justify-content:flex-start;gap:5px 18px;flex-wrap:wrap}.vf-public-page .vf-mega>summary{font-size:12px;gap:3px;padding:7px 0}.vf-public-page .navcta{font-size:12px;padding:5px 10px;margin-left:auto}.vf-public-page .vf-mega-panel{position:absolute;left:50%;width:calc(100vw - 24px);transform:translateX(-50%);grid-template-columns:1fr;gap:22px;padding:22px;max-height:calc(100dvh - 160px);overflow:auto}.vf-public-page .vf-mega-groups{grid-template-columns:1fr;gap:22px}.vf-public-page .vf-mega-cta{min-height:180px;padding:22px}.vf-menu-card-icon{height:45px;width:45px;border-radius:12px;position:absolute;right:22px;top:20px}.vf-menu-card-icon svg{width:26px;height:26px}.vf-public-page .vf-mega-cta p{max-width:250px;font-size:28px}.vf-public-page .vf-menu-copy b{font-size:13px}.vf-public-page .vf-menu-copy small{font-size:12px}.vf-public-page .wrap.wide{padding-inline:20px;padding-bottom:40px}.vf-hero-split{padding:36px 0 38px;gap:25px}.vf-experience .vf-hero-copy h1{font-size:51px;letter-spacing:-2px;line-height:1.07}.vf-experience .vf-hero-copy h1 br:nth-of-type(2){display:initial}.vf-hero-copy>.vf-eyebrow{font-size:12px;letter-spacing:.1em;margin-bottom:20px}.vf-experience .vf-lead{font-size:14px;line-height:1.85;max-width:350px;margin-bottom:24px}.vf-experience .vf-hero-note{font-size:12px;margin-top:18px}.vf-experience .vf-actions{gap:15px}.vf-public-page .btn.vf-primary{font-size:12px;padding:13px 15px;gap:14px}.vf-experience .vf-text-link{font-size:12px}.vf-hero-product:before{inset:0 -10px}.vf-preview-tabs{justify-content:flex-start}.vf-preview-tabs a{font-size:12px;padding:13px 12px;min-height:44px}.vf-preview-top{padding:10px 12px;font-size:12px}.vf-preview-panel{padding:20px 16px;min-height:395px}.vf-experience .vf-preview-title h2{font-size:18px}.vf-preview-title p{font-size:12px;line-height:1.8}.vf-overview-grid{gap:10px;grid-template-columns:.85fr 1.15fr}.vf-score-card{padding:14px 7px}.vf-score-ring{width:85px;height:85px}.vf-score-ring strong{width:67px;height:67px;font-size:28px}.vf-opportunity{padding:13px}.vf-opportunity h3{font-size:20px;margin:9px 0}.vf-opportunity p{font-size:12px;line-height:1.7}.vf-score-card>b{font-size:12px}.vf-score-card>small{font-size:12px}.vf-sample-pill{font-size:12px}.vf-preview-kicker{font-size:12px}.vf-preview-title{margin-bottom:19px}.vf-preview-metrics span{font-size:12px}.vf-preview-bottom{font-size:12px;padding:10px;gap:4px;flex-wrap:wrap}.vf-preview-bottom a{font-size:12px}.vf-demo-avatar{width:34px;height:34px;font-size:21px}.vf-bar-row{grid-template-columns:110px 1fr 14px;gap:8px;font-size:12px}.vf-check-row{gap:9px}.vf-check-row b{font-size:12px}.vf-check-row small{font-size:12px}.vf-check-row em{font-size:12px}.vf-capability-strip{flex-wrap:wrap;justify-content:center;gap:18px 24px;padding:22px 0}.vf-capability-strip>span{max-width:none;width:100%;text-align:center;font-size:12px}.vf-capability-strip a{font-size:12px}.vf-home-section{padding:48px 0}.vf-section-heading{display:block;margin-bottom:25px}.vf-experience h2{font-size:34px;letter-spacing:-1px;line-height:1.16}.vf-section-heading>p{max-width:none;margin-top:20px;font-size:13px}.vf-section-heading>.vf-text-link{display:inline-block;margin-top:17px}.vf-discovery-grid{grid-template-columns:1fr 1fr;gap:12px}.vf-discovery-card{min-height:240px;padding:20px 15px 24px}.vf-discovery-card h3{font-size:15px;line-height:1.4}.vf-discovery-card p{font-size:12px;line-height:1.8}.vf-icon-box{width:36px;height:36px;border-radius:9px;margin-bottom:18px}.vf-icon-box svg{width:21px;height:21px}.vf-card-arrow{top:21px;right:15px;font-size:15px}.vf-workflow-section{padding:30px 22px;margin:0 0 48px}.vf-workflow-steps{grid-template-columns:1fr;gap:24px;margin-top:30px}.vf-workflow-steps h3{font-size:18px;margin-top:12px}.vf-workflow-steps p{max-width:400px}.vf-local-section{grid-template-columns:1fr;padding:26px 22px;gap:35px}.vf-local-section h2{font-size:36px}.vf-local-section p{font-size:13px}.vf-map{min-height:245px}.vf-map-points{padding:20px 22px 32px;gap:14px}.vf-map-point{width:25px;height:25px}.vf-local-visual{transform:rotate(-1deg)}.vf-integration-cards{grid-template-columns:repeat(2,1fr);gap:12px}.vf-integration-cards a:last-child{grid-column:1/-1}.vf-integration-cards a{padding:22px 12px}.vf-resource-cards{grid-template-columns:1fr;gap:32px}.vf-resource-art{height:170px;margin-bottom:17px}.vf-resource-cards h3{max-width:none;font-size:19px}.vf-experience .vf-faq-section{grid-template-columns:1fr;gap:25px;padding:0 0 45px}.vf-experience .vf-faq-section h2{font-size:33px}.vf-final-cta{padding:32px 18px}.vf-final-cta h2{font-size:43px;margin-top:15px}.vf-final-cta .vf-actions{flex-direction:column;gap:20px}.vf-experience .vf-audit-input{flex-direction:column;gap:10px}.vf-experience .vf-audit-input button{width:100%}.vf-site-footer{padding:32px 22px 22px}.vf-footer-top{flex-wrap:wrap;gap:24px;padding-bottom:28px;margin-bottom:30px}.vf-footer-top img{width:156px}.vf-footer-top p{font-size:19px;margin-left:auto}.vf-footer-top .btn{margin:0;font-size:12px}.vf-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.vf-footer-grid a{font-size:12px;line-height:1.6}.vf-footer-grid h2{font-size:12px}.vf-footer-grid li{margin-bottom:12px}.vf-footer-bottom{flex-wrap:wrap;gap:16px;margin-top:18px}.vf-footer-bottom>span:last-child{gap:24px}.vf-detail{padding-top:25px}.vf-breadcrumb{font-size:12px;margin-bottom:25px}.vf-detail-hero{grid-template-columns:1fr;gap:30px;padding-bottom:30px}.vf-detail h1{font-size:43px;letter-spacing:-1.5px;line-height:1.1}.vf-detail .vf-lead{font-size:16px;line-height:1.8}.vf-detail .vf-actions{gap:20px}.vf-availability h2{font-size:22px}.vf-availability p{margin-bottom:16px}.vf-detail-step{gap:20px;padding:24px 0}.vf-step-number{font-size:27px}.vf-detail-step h2{font-size:20px;line-height:1.4}.vf-detail-step p{font-size:14px;line-height:1.85}.vf-related{align-items:flex-start;flex-direction:column;gap:20px}.vf-public-page .vf-all-features-grid{grid-template-columns:1fr}.vf-public-page .vf-features-header h1{font-size:38px}}
@media(prefers-reduced-motion:reduce){.vf-public-page *, .vf-public-page *:before{scroll-behavior:auto!important;transition:none!important;animation:none!important}}

/* Launch review: readable type, fewer navigation choices, predictable touch targets. */
.vf-public-page .top>.in{max-width:1400px;gap:32px}
.vf-public-page .brand-lockup{flex-shrink:0}
.vf-public-page .vf-marketing-nav{width:auto;gap:24px!important}
.vf-public-page .vf-mega>summary,.vf-public-page .top nav .vf-nav-link,.vf-public-page .navcta{font-size:14px;min-height:44px}
.vf-public-page .vf-mega-panel{width:min(1080px,calc(100vw - 32px))}
.vf-public-page .vf-menu-copy small{font-size:13px;color:var(--vf-muted)}
.vf-preview-tabs a{font-size:12px;min-height:44px;display:flex;align-items:center}
.vf-preview-panel{min-height:445px}
.vf-preview-title p,.vf-opportunity p,.vf-preview-note,.vf-check-row small{font-size:13px}
.vf-discovery-card p,.vf-workflow-steps p,.vf-local-section p,.vf-section-heading>p{font-size:16px;line-height:1.65}
.vf-public-page .btn.vf-primary,.vf-experience .vf-text-link{font-size:15px}
.vf-experience .vf-lead{font-size:18px}
.vf-experience .vf-hero-note{font-size:14px}
.vf-availability p,.vf-detail-step p{font-size:16px;line-height:1.7}
.vf-footer-grid a{display:inline-flex;align-items:center;font-size:14px;min-height:44px}
.vf-footer-grid h2{font-size:14px;margin-bottom:10px}
.vf-footer-grid li{margin:0 0 2px}
.vf-footer-bottom{font-size:13px}
.vf-public-page .vf-all-features-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.vf-all-features-column b{font-size:15px}.vf-all-features-column small{font-size:13px}
@media(max-width:960px){.vf-public-page .vf-marketing-nav{flex-basis:auto;justify-content:flex-end}.vf-public-page .top>.in{flex-wrap:wrap;gap:12px}.vf-hero-split{padding-top:40px}.vf-footer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.vf-public-page .vf-marketing-nav{width:100%;justify-content:space-between;gap:4px!important}.vf-public-page .vf-mega[open]{width:auto}.vf-public-page .navcta{padding:10px 12px;margin:0}.vf-public-page .vf-mega>summary{font-size:14px;padding:10px 2px}.vf-public-page .vf-mega-cta{display:none}.vf-public-page .vf-mega-panel{max-height:calc(100dvh - 180px);overflow:auto}.vf-public-page .vf-mega-item{min-height:58px!important}.vf-public-page .vf-mega-group h3{font-size:12px}.vf-experience .vf-lead{font-size:17px}.vf-experience .vf-hero-note{font-size:13px}.vf-preview-tabs a{padding:14px 12px;font-size:12px}.vf-preview-title p,.vf-opportunity p{font-size:12px}.vf-preview-panel{min-height:465px}.vf-overview-grid{grid-template-columns:1fr}.vf-score-card{flex-direction:row;flex-wrap:wrap;gap:10px;justify-content:center}.vf-score-ring{width:76px;height:76px;margin:0}.vf-score-ring strong{width:60px;height:60px;font-size:26px}.vf-opportunity h3 br{display:none}.vf-discovery-grid{grid-template-columns:1fr}.vf-discovery-card{min-height:0;padding:24px}.vf-discovery-card h3{font-size:21px}.vf-discovery-card p{font-size:16px}.vf-experience .vf-text-link{font-size:14px}.vf-public-page .vf-all-features-grid{grid-template-columns:1fr}.vf-footer-grid a{font-size:14px}.vf-footer-top .btn{font-size:14px}.vf-detail-step{gap:14px}.vf-detail-step p{font-size:16px}}
/* Homepage polish (30 Sept 2026): fix-first list in the preview, one card height across tabs,
   tab focus inside the tab, check cards with one line each, plan cards with a next step. */
.vf-fix-first{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:8px}
.vf-fix-first li{display:flex;justify-content:space-between;align-items:center;gap:10px;background:#fff;border:1px solid var(--vf-line);border-radius:7px;padding:9px 11px}
.vf-fix-first b{font-size:13px;font-weight:600;color:var(--vf-ink);line-height:1.35}
.vf-fix-first em{font-style:normal;font-size:12px;font-weight:650;padding:3px 7px;border-radius:4px;background:var(--vf-line);color:var(--vf-primary-hover);white-space:nowrap}
.vf-product-preview[data-enhanced] .vf-preview-panels{display:grid}
.vf-product-preview[data-enhanced] .vf-preview-panel{grid-area:1/1;min-height:0}
.vf-product-preview[data-enhanced] .vf-preview-panel[hidden]{display:block!important;visibility:hidden}
.vf-public-page .vf-preview-tabs a:focus-visible{outline:3px solid var(--vf-focus);outline-offset:-3px}
.vf-experience .vf-home-section{padding:64px 0}
.vf-experience .vf-faq-section{padding-top:24px}
.vf-home-checks{grid-template-columns:repeat(5,minmax(0,1fr))}
.vf-home-checks a{flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:6px;height:100%;box-sizing:border-box}
.vf-check-card-head{display:flex;justify-content:space-between;align-items:center;gap:8px;width:100%}
.vf-home-checks small{color:var(--vf-muted);font-size:13px;line-height:1.5}
.vf-price-strip li{align-content:start}
.vf-price-strip li>ul{list-style:none;margin:8px 0 14px;padding:0;display:grid;gap:7px}
.vf-price-strip li>ul li{border:0;box-shadow:none;overflow:visible;padding:0 0 0 20px;background:none;border-radius:0;position:relative;font-size:14px;color:var(--vf-ink);display:block}
.vf-price-strip li>ul li:before{content:"✓";position:absolute;left:0;top:0;inset:0 auto auto 0;height:auto;background:none;color:var(--vf-primary);font-weight:700}

.vf-price-strip li>.btn,.vf-price-strip li>a{align-self:end;justify-self:start}
.vf-public-page .vf-secondary{display:inline-flex;align-items:center;padding:13px 17px;border:1px solid var(--vf-primary);border-radius:7px;color:var(--vf-primary);font-size:13px;font-weight:650;text-decoration:none;background:#fff}
.vf-price-note{margin:0;font-size:13px;color:var(--vf-muted);align-self:end}
.vf-business-line{margin:18px 0 0}
.vf-owner-line{margin:14px 0 0;font-size:14px;color:var(--vf-muted)}
.vf-founder-line{margin:22px auto 0;max-width:520px;font-size:14px;color:var(--vf-muted)}
@media(max-width:1300px){.vf-home-checks{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){.vf-home-checks{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.vf-home-checks{grid-template-columns:1fr}.vf-experience .vf-home-section{padding:44px 0}}
/* Simple public site. Loaded last so it wins over older marketing styles. */
.vf-public-page main h1,.vf-public-page main h2,.vf-simple-footer .vf-footer-top p{font-family:var(--vf-font-display);font-weight:700;letter-spacing:-.02em;color:var(--vf-ink);text-wrap:balance}
.vf-public-page main h1{font-size:clamp(36px,5vw,60px);line-height:1.05;margin:0 0 18px}
.vf-public-page main h2{line-height:1.12}
.vf-public-page main h1 em,.vf-public-page main h2 em{font-style:italic;color:var(--vf-primary)}
.vf-public-page main h3{font-family:var(--vf-font);letter-spacing:-.01em}
/* Menu */
.vf-simple-nav{display:flex;align-items:center;gap:22px;flex:1;justify-content:flex-end}
.vf-simple-nav .vf-nav-links{display:flex;gap:22px;align-items:center;margin-right:auto;margin-left:28px}
.vf-simple-nav .vf-nav-link{font-size:15px;font-weight:600;color:var(--vf-ink-2);text-decoration:none;min-height:44px;display:inline-flex;align-items:center}
.vf-simple-nav .vf-nav-link:hover,.vf-simple-nav .vf-nav-link.on{color:var(--vf-ink);text-decoration:underline;text-underline-offset:7px}
.vf-simple-nav .navcta{font-size:15px}
.vf-nav-menu{display:none;position:relative}
.vf-nav-menu summary{list-style:none;cursor:pointer;font-weight:650;font-size:15px;padding:10px 14px;border:1px solid var(--vf-primary-soft-2);border-radius:9px;min-height:44px;display:flex;align-items:center;color:var(--vf-ink);background:#fff}
.vf-nav-menu summary::-webkit-details-marker{display:none}
.vf-nav-menu-panel{position:absolute;right:0;top:calc(100% + 8px);background:#fff;border:1px solid var(--vf-line);border-radius:12px;box-shadow:0 18px 40px -20px #4a406f;padding:8px;min-width:210px;display:grid;z-index:40}
.vf-nav-menu-panel a{padding:10px 12px;border-radius:8px}
.vf-nav-menu-panel a:hover{background:var(--vf-surface-2)}
/* Between phone and wide screens the menu gets its own row under the logo, so "I'm interested"
   fits beside "Start free" without wrapping onto a third row. */
@media(min-width:821px) and (max-width:1099px){.vf-public-page .vf-marketing-nav.vf-simple-nav{flex-basis:100%;gap:6px!important}.vf-public-page .vf-simple-nav .vf-nav-links{margin-left:0;gap:0}.vf-public-page .vf-simple-nav .vf-nav-link{padding:0 9px}}
@media(max-width:820px){.vf-simple-nav .vf-nav-links,.vf-simple-nav>.vf-nav-signin,.vf-simple-nav>.vf-nav-interest{display:none}.vf-nav-menu{display:block}
.vf-public-page .top>.in{flex-wrap:nowrap!important;justify-content:space-between;align-items:center;gap:10px!important}
.vf-public-page .brand-lockup{min-width:0;flex:1 1 auto}
.vf-public-page .vf-marketing-nav.vf-simple-nav{width:auto!important;flex:0 0 auto!important;flex-wrap:nowrap!important;justify-content:flex-end!important;gap:8px!important}}
@media(max-width:420px){.vf-public-page .top>.in{padding:14px 16px!important}.vf-public-page .brand-wordmark{width:132px!important;height:auto}.vf-simple-nav .navcta{padding:9px 12px!important;font-size:14px}.vf-nav-menu summary{padding:9px 11px}}
/* Shared blocks */
.vf-simple{max-width:1120px;margin:0 auto}
.vf-simple-hero{max-width:780px;padding:36px 0 18px}
.vf-simple-hero .vf-lead{font-size:18px;line-height:1.6;color:var(--vf-ink-2);max-width:700px}
.vf-status{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;padding:4px 10px;border-radius:999px;white-space:nowrap;line-height:1.3}
.vf-status:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
.vf-status-on{background:var(--vf-primary-soft);color:var(--vf-primary)}
.vf-status-setup{background:#f7ecd2;color:#8a5a0b}
.vf-status-planned{background:#ececec;color:#555}
.vf-status-soon{background:var(--vf-primary-soft);color:var(--vf-primary-hover)}
.vf-plan-founding{font-size:15px;line-height:1.55;margin:0 0 14px;padding:10px 12px;border-radius:8px;background:var(--vf-surface-2);color:var(--vf-ink)}
.vf-founding-places{font-size:16px;line-height:1.6;margin:18px 0 0;color:var(--vf-ink)}
.vf-plan-table-wrap{margin:28px 0 8px;overflow-x:auto}
.vf-plan-table{width:100%;border-collapse:collapse;font-size:15px;line-height:1.5;min-width:560px}
.vf-plan-table caption{text-align:left;font-weight:700;font-size:20px;padding:0 0 10px;color:var(--vf-ink)}
.vf-plan-table th,.vf-plan-table td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--vf-line);vertical-align:top}
.vf-plan-table thead th{font-size:14px;color:var(--vf-primary);text-transform:uppercase;letter-spacing:.06em}
.vf-plan-table tbody th{font-weight:600;color:var(--vf-ink)}
.vf-coming-soon{margin:22px 0}
.vf-coming-soon h2{font-size:20px;margin:0 0 6px}
.vf-coming-soon ul{list-style:none;padding:0;margin:8px 0 0;display:grid;gap:8px}
.vf-coming-soon li{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.vf-price-strip em{font-style:normal;color:var(--vf-primary);font-size:14px}
.vf-status-count{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;font-weight:650;font-size:15px}
.vf-jump{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.vf-jump a{font-size:14px;font-weight:600;text-decoration:none;padding:8px 14px;border:1px solid var(--vf-primary-soft-2);border-radius:999px;background:#fff;color:var(--accent2)}
.vf-jump a:hover{background:var(--vf-surface-2)}
.vf-cap-group{padding:40px 0 10px;border-top:1px solid var(--vf-line);margin-top:28px;scroll-margin-top:20px}
.vf-cap-group-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:30px;align-items:end;margin-bottom:22px}
.vf-cap-group-head h2{font-size:clamp(28px,3.4vw,40px);margin:0}
.vf-cap-group-head p{margin:0;color:var(--vf-muted);font-size:16px}
.vf-cap-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:16px}
.vf-cap{background:#fff;border:1px solid var(--vf-line);border-radius:14px;padding:22px;display:flex;flex-direction:column;gap:10px;min-width:0;scroll-margin-top:24px}
.vf-cap:target{outline:3px solid var(--vf-primary-muted);outline-offset:2px}
.vf-cap-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.vf-cap h3{font-size:18px;margin:0;line-height:1.3;color:var(--vf-ink)}
.vf-cap p{margin:0;font-size:15px;line-height:1.6;color:var(--vf-ink-2)}
.vf-cap .vf-cap-note{font-size:13px;color:var(--vf-muted);background:var(--vf-surface-2);border-radius:8px;padding:8px 10px}
.vf-cap>a{margin-top:auto;font-weight:650;font-size:14px;text-decoration:none}
.vf-cap details summary{cursor:pointer;font-weight:650;font-size:14px;color:var(--accent)}
.vf-steps{padding-left:20px;margin:12px 0 0;display:grid;gap:10px}
.vf-steps li b{display:block;color:var(--vf-ink)}
.vf-steps li span{color:var(--vf-muted);font-size:15px}
.vf-simple-cta{margin:56px 0 20px;padding:40px;border-radius:18px;background:var(--accent);color:var(--vf-primary-soft)}
.vf-public-page main .vf-simple-cta h2{color:#fff;font-size:clamp(28px,3.4vw,40px);margin:0 0 8px}
.vf-simple-cta p{color:var(--vf-line);margin:0 0 18px}
.vf-simple-cta .vf-text-link{color:var(--vf-line)}
.vf-simple-cta .btn{background:var(--vf-line);color:var(--vf-ink)}
.vf-guide{padding:36px 0;border-top:1px solid var(--vf-line);max-width:820px;scroll-margin-top:20px}
.vf-guide h2{font-size:clamp(26px,3vw,36px);margin:0 0 8px}
.vf-guide h3{margin:0 0 10px}
.vf-guide pre{background:var(--vf-surface-2);border:1px solid var(--vf-line);border-radius:10px;padding:14px;font-size:13px;white-space:pre-wrap;overflow-wrap:anywhere;max-width:100%}
.vf-guide .table-wrap{margin:14px 0}
.vf-guide td code{overflow-wrap:anywhere}
.vf-about-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:20px}
.vf-about-grid article{background:#fff;border:1px solid var(--vf-line);border-radius:14px;padding:26px}
.vf-about-grid h2{font-size:26px;margin:0 0 10px}
.vf-plain-list{margin:0;padding-left:20px;display:grid;gap:8px;color:var(--vf-ink-2)}
/* Homepage */
.vf-try{margin:26px 0 8px;max-width:560px}
.vf-try label{font-size:14px;font-weight:700;color:var(--vf-ink);margin-bottom:8px;display:block}
.vf-try-row{display:flex;gap:8px;padding:6px;border:1.5px solid var(--vf-line-strong);border-radius:14px;background:#fff;box-shadow:0 10px 30px -22px #4a406f}
.vf-try-row input{flex:1;min-width:0;border:0;font-size:16px;min-height:48px;box-shadow:none;outline-offset:2px}
.vf-try-row button{width:auto;margin:0;white-space:nowrap;font-size:15px;min-height:48px;padding:12px 18px;background:var(--accent);border-radius:10px}
.vf-try-row button:hover{background:var(--accent2)}
.vf-try .vf-fine-print{font-size:13px;color:var(--vf-muted);margin:10px 0 0}
.vf-hero-links{margin:14px 0 0;font-weight:650;display:flex;flex-wrap:wrap;gap:8px 24px}
@media(max-width:960px){.vf-hero-links{justify-content:center}}
.vf-contact-interest{margin:0 0 15px}
.vf-hero-links a{text-decoration:none}
.vf-live-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:10px}
.vf-live-list a{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:14px 16px;background:#fff;border:1px solid var(--vf-line);border-radius:12px;text-decoration:none;color:var(--vf-ink);min-height:56px}
.vf-live-list a:hover{border-color:var(--vf-primary-muted)}
.vf-live-list b{font-size:15px;font-weight:650}
.vf-price-strip{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.vf-price-strip li{background:#fff;border:1px solid var(--vf-line);border-radius:14px;padding:22px;display:grid;gap:4px}
.vf-price-strip b{font-size:15px;text-transform:uppercase;letter-spacing:.08em;color:var(--vf-primary)}
.vf-price-strip span{font-family:var(--vf-font-display);font-weight:700;font-size:32px;color:var(--vf-ink)}
.vf-price-strip small{color:var(--vf-muted);font-size:14px}
.vf-simple-home .vf-workflow-steps a{display:none}
.vf-simple-footer .vf-footer-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:760px){.vf-cap-group-head,.vf-about-grid,.vf-price-strip{grid-template-columns:1fr}.vf-simple-cta{padding:28px 22px}.vf-try-row{flex-direction:column}.vf-try-row button{width:100%}.vf-simple-footer .vf-footer-grid{grid-template-columns:1fr 1fr}}
.vf-scores{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px}
.vf-score{background:#fff;border:1px solid var(--vf-line);border-radius:14px;padding:20px;display:grid;gap:4px}
.vf-score span{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--vf-primary)}
.vf-score b{font-family:var(--vf-font-display);font-weight:700;font-size:42px;line-height:1.05;color:var(--vf-ink)}
.vf-score b small{font-size:16px;color:var(--vf-muted);margin-left:2px}
.vf-score em{font-style:normal;font-size:14px;color:var(--vf-muted)}
.vf-sample-table{background:#fff;border:1px solid var(--vf-line);border-radius:12px;overflow:hidden;font-size:15px}
.vf-sample-table td,.vf-sample-table th{padding:12px 14px}
.vf-example-grid{max-width:520px}
.vf-example-steps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.vf-example-steps li{background:#fff;border:1px solid var(--vf-line);border-radius:14px;padding:22px}
.vf-example-steps span{font-size:12px;font-weight:700;letter-spacing:.08em;color:var(--vf-primary)}
@media(max-width:760px){.vf-example-steps{grid-template-columns:1fr}}
.vf-area{font-size:12px;font-weight:700;padding:4px 10px;border-radius:999px;background:var(--vf-surface-2);color:var(--vf-primary-hover);white-space:nowrap}
/* Audit areas */
.vf-areas{display:grid;gap:10px;white-space:normal;min-width:0;font-size:16px}
.vf-areas *{white-space:normal}
.vf-area{background:#fff;border:1px solid var(--vf-line);border-radius:12px;padding:0 18px}
.vf-area summary{display:flex;align-items:center;gap:12px;flex-wrap:wrap;cursor:pointer;padding:16px 0;list-style:none;min-height:44px}
.vf-area summary::-webkit-details-marker{display:none}
.vf-area summary:before{content:"+";font-weight:700;color:var(--vf-primary);width:14px}
.vf-area[open] summary:before{content:"−"}
.vf-area-name{font-weight:700;color:var(--vf-ink);font-size:16px}
.vf-area-count{color:var(--vf-muted);font-size:14px;margin-left:auto}
.vf-area>p{margin:0 0 12px;color:var(--vf-ink-2);font-size:15px}
.vf-area-checks{margin:0 0 16px;padding-left:20px;display:grid;gap:8px;columns:1}
.vf-area-checks li{color:var(--vf-ink);font-size:15px;font-weight:650;line-height:1.45}
.vf-area-check-means{display:block;font-size:14px;font-weight:400;color:var(--vf-muted)}
@media(max-width:560px){.vf-area-count{margin-left:0;flex-basis:100%}}
/* Public-site polish (29 Sept 2026 review) */
/* A button next to a text link: .btn carries a top margin for forms, which pushed the
   button below the link in every "button + link" row. */
.vf-actions>.btn,.vf-actions>.vf-primary{margin:0}
/* The contact page starts right under the header; give it the same breathing room as
   every other public page. */
.vf-contact{padding-top:36px}
@media(max-width:800px){.vf-contact{padding-top:24px}}
/* Sample tables (example report, API reference): break only between words, never inside
   one ("Healthgr-ades", "Heade-r"). A table that still does not fit scrolls in its frame. */
.table-wrap .vf-sample-table td,.table-wrap .vf-sample-table th,.vf-guide .vf-sample-table td code{overflow-wrap:break-word;word-break:normal}
/* Home status list: four columns on a laptop instead of five plus a lone card. */
.vf-live-list{grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr))}
/* Pricing comparison on a phone: one row per feature, the three plans side by side
   underneath with their names, instead of a table that hides the Agency column. */
@media(max-width:640px){
  .vf-plan-table-wrap .vf-plan-table{min-width:0}
  .vf-plan-table-wrap .vf-plan-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .vf-plan-table-wrap .vf-plan-table tbody tr{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:10px;padding:14px 16px;border-bottom:1px solid var(--vf-line)}
  .vf-plan-table-wrap .vf-plan-table tbody tr:last-child{border-bottom:0}
  .vf-plan-table-wrap .vf-plan-table tbody th{grid-column:1/-1;min-width:0;padding:0 0 8px;border:0}
  .vf-plan-table-wrap .vf-plan-table td{padding:0;border:0;font-size:14px;overflow-wrap:break-word}
  .vf-plan-table-wrap .vf-plan-table td .vf-status{max-width:100%;white-space:normal;font-size:11px;padding:3px 7px;line-height:1.3}
  .vf-plan-table-wrap .vf-plan-table td[data-plan]:before{content:attr(data-plan);display:block;margin-bottom:3px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--vf-primary-ink)}
}
/* The public report: a badge stays a badge (not a full-width bar), and the three
   "Audit / Propose / Deliver" cards sit in one row instead of two plus an orphan. */
.keyfind .worst .pill{display:inline-block;margin:6px 0 0;vertical-align:middle}
.cta .plans{grid-template-columns:repeat(3,minmax(0,1fr))}
.cta .plan .tag{align-self:flex-start;padding-inline:10px}
@media(max-width:800px){.cta .plans{grid-template-columns:1fr}}
.vf-simple-hero>.vf-actions{margin-top:26px}
.vf-sample-table .vf-status{white-space:normal;line-height:1.35}
/* Three-column sample tables (example report, API reference) on a phone: one block per
   row instead of three squeezed columns. */
@media(max-width:560px){
  .vf-sample-table:has(td:nth-child(3)) thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
  .vf-sample-table:has(td:nth-child(3)),.vf-sample-table:has(td:nth-child(3)) tbody,.vf-sample-table:has(td:nth-child(3)) tr,.vf-sample-table:has(td:nth-child(3)) td{display:block;width:auto}
  .vf-sample-table:has(td:nth-child(3)) tr{padding:12px 14px;border-bottom:1px solid var(--vf-line)}
  .vf-sample-table:has(td:nth-child(3)) tr:last-child{border-bottom:0}
  .table-wrap .vf-sample-table:has(td:nth-child(3)) td{padding:2px 0;border:0}
  .vf-sample-table:has(td:nth-child(3)) td:first-child{font-weight:650;color:var(--vf-ink)}
  .vf-sample-table:has(td:nth-child(3)) td:nth-child(2){font-size:14px;color:var(--vf-muted)}
  .vf-sample-table td[data-label]:before{content:attr(data-label) ": ";font-weight:600;color:var(--vf-muted)}
}
#coverage .vf-cap-group-head{align-items:start}
/* 30 Sept 2026: example report, pricing and help polish */
.vf-cap-group-head{align-items:start}
.vf-fix-grid{grid-template-columns:repeat(auto-fill,minmax(min(300px,100%),1fr))}
.vf-fix-area{margin:-4px 0 6px;font-size:13px;font-weight:650;color:var(--vf-primary);text-transform:uppercase;letter-spacing:.06em}
.vf-priority-high{background:#fdecec;color:#9b1c1c;border-color:#f5c2c2}
.vf-priority-medium{background:#fff4e0;color:#8a5300;border-color:#f3d9a8}
.vf-priority-low{background:#eef2f7;color:#3d4a5c;border-color:#d5dde8}
.vf-example-map{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:28px;align-items:center}
.vf-example-summary{border:1px solid var(--line);border-radius:14px;padding:18px 20px;background:var(--surface,#fff);max-width:760px}
.vf-example-summary h3{font-size:16px;margin:16px 0 6px}.vf-example-summary .muted{color:var(--muted)}
.vf-map-summary{list-style:none;margin:0;padding:0;display:grid;gap:12px;font-size:16px}
.vf-map-summary li{padding:14px 16px;background:#fff;border:1px solid var(--vf-line);border-radius:12px}
.vf-plan-points{list-style:none;margin:14px 0 18px;padding:0;display:grid;gap:8px}
.vf-plan-points li{position:relative;padding-left:22px;font-size:15px;line-height:1.45}
.vf-plan-points li:before{content:"✓";position:absolute;left:0;color:var(--vf-primary);font-weight:700}
.vf-plan{display:flex;flex-direction:column}
.vf-plan-cta{margin-top:auto;align-self:flex-start}
.vf-plan-soon{margin-top:auto;font-weight:600}
.vf-plan-business .vf-plan-grid{grid-template-columns:minmax(0,1fr)}
.vf-plan-business .vf-plain-list{columns:2;column-gap:32px}
.vf-plan-business .vf-plain-list li{break-inside:avoid}
.vf-coming-soon li{flex-direction:column;align-items:flex-start;justify-content:space-between}
@media(max-width:760px){.vf-example-map{grid-template-columns:1fr}.vf-plan-business .vf-plain-list{columns:1}}
.vf-area-flat{padding:16px 20px;box-sizing:border-box;max-width:100%}
.vf-area-flat .vf-area-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px}
.vf-area-flat .vf-area-name{flex:1;font-weight:650}
.vf-area-flat p{margin:6px 0 0;color:var(--vf-muted);font-size:14px}
.vf-demo-video,.vf-demo-transcript{max-width:min(1040px,calc((100vh - 140px) * 1.56));margin-inline:auto}
.vf-demo-video{margin-block:0}
.vf-demo-video video{display:block;width:100%;height:auto;aspect-ratio:1280/820;background:#1e1033;border:1px solid var(--vf-line);border-radius:16px;box-shadow:0 20px 50px #2b175318,0 3px 7px #2b17530a}
.vf-demo-video figcaption{margin-top:12px;font-size:14px;line-height:1.6;color:var(--vf-muted)}
.vf-demo-transcript{margin-top:14px}
.vf-demo-transcript summary{cursor:pointer;font-weight:650;font-size:15px;color:var(--vf-primary);min-height:44px;display:flex;align-items:center;gap:8px;list-style:none}
.vf-demo-transcript summary::-webkit-details-marker{display:none}
.vf-demo-transcript summary:before{content:"+";font-weight:700;width:14px}
.vf-demo-transcript[open] summary:before{content:"−"}
.vf-demo-transcript ol{margin:4px 0 0;padding-left:24px;display:grid;gap:6px;max-width:780px;font-size:15px;line-height:1.6;color:var(--vf-ink)}
@media(max-width:700px){.vf-demo-video video{border-radius:12px}.vf-demo-video figcaption{font-size:13px}}
/* Homepage: the four "what a check looks at" cards (public_site.HOME_DOOR) and the section for
   business owners checking their own website. Plain cards like .vf-live-list, numbered. */
.vf-door-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.vf-door{background:#fff;border:1px solid var(--vf-line);border-radius:14px;padding:20px 20px 22px;box-shadow:var(--vf-shadow-sm);min-width:0}
.vf-door-number{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:10px;background:var(--vf-primary-soft);color:var(--vf-primary-deep);font-weight:700;font-size:15px;margin-bottom:14px}
.vf-public-page main .vf-door h3{font-size:18px;line-height:1.3;margin:0 0 8px;color:var(--vf-ink)}
.vf-door p{margin:0;font-size:15px;line-height:1.6;color:var(--vf-muted)}
.vf-public-page main h3.vf-door-more{font-size:18px;margin:40px 0 6px;color:var(--vf-ink)}
.vf-door-more-note{margin:0 0 16px;color:var(--vf-muted);font-size:15px;line-height:1.6;max-width:720px}
.vf-owners .vf-actions{margin:0 0 4px}
.vf-owners .vf-business-line{font-size:15px;line-height:1.6;color:var(--vf-ink-2)}
.vf-owners .vf-business-line a{margin-left:4px;font-weight:650;white-space:nowrap}
@media(max-width:960px){.vf-door-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.vf-door-list{grid-template-columns:1fr}.vf-door{padding:18px}.vf-owners .vf-business-line a{white-space:normal}}

.vf-legal .vf-legal-section{max-width:780px;padding:18px 0;border-top:1px solid var(--vf-line)}
.vf-public-page main .vf-legal h2{font-size:24px;margin:0 0 8px}
.vf-legal-section p,.vf-legal-section li{font-size:16px;line-height:1.7;color:#413b5d}
/* Vouchfield look. Loaded last, after every older sheet, so shared parts (type, buttons,
   fields, cards, tables, badges, header, footer) look the same on every page.
   Colours come only from tokens.css. Report pages keep var(--accent) so an agency's own
   colour still applies to its white-label reports. */

/* ---------- Base ---------- */
html{-webkit-text-size-adjust:100%;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
body{font-family:var(--vf-font);background:var(--vf-bg);color:var(--vf-ink);overflow-x:clip}
h1,h2,h3,h4{font-family:var(--vf-font-display);color:var(--vf-ink);text-wrap:balance}
h1{font-weight:750;letter-spacing:-.03em}
h2{font-weight:700;letter-spacing:-.02em}
h3{font-weight:680;letter-spacing:-.01em}
a{color:var(--accent);text-decoration-thickness:1px;text-underline-offset:3px;transition:color .15s var(--vf-ease)}
a:hover{color:var(--accent2)}
::selection{background:var(--vf-primary-soft-2);color:var(--vf-ink)}
table,.pill,.tag,.stat-card b{font-variant-numeric:tabular-nums}
code,kbd,pre,samp{font-family:var(--vf-font-code)}

/* Visible keyboard focus everywhere. */
:where(a,button,summary,input,select,textarea,[tabindex]):focus-visible{outline:3px solid var(--vf-focus);outline-offset:3px;border-radius:6px}
input:focus,select:focus,textarea:focus{outline:0;border-color:var(--vf-primary);box-shadow:0 0 0 4px rgba(109,40,217,.16)}
input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--vf-focus);outline-offset:1px}
.skip-link:focus{background:var(--vf-surface);color:var(--vf-ink);outline:3px solid var(--vf-focus);border-radius:8px;padding:10px 14px}

/* ---------- Header ---------- */
.top{background:rgba(255,255,255,.82);-webkit-backdrop-filter:saturate(1.6) blur(14px);backdrop-filter:saturate(1.6) blur(14px);border-bottom:1px solid var(--vf-line);box-shadow:0 1px 0 rgba(255,255,255,.6) inset}
.top nav a,.vf-marketing-nav .vf-mega>summary{color:var(--vf-ink-2);border-radius:8px;transition:color .15s var(--vf-ease),background-color .15s var(--vf-ease)}
.top nav a:hover,.vf-marketing-nav .vf-mega>summary:hover{color:var(--vf-primary-ink)}
.top nav a.on,.top nav a[aria-current=page]{color:var(--vf-primary-ink)}
.top nav a.navcta,.top nav .navcta,.vf-public-page .navcta{background:var(--vf-primary);color:var(--vf-on-primary)!important;border-radius:10px;box-shadow:0 1px 2px rgba(76,29,149,.25),0 4px 12px rgba(109,40,217,.22);text-decoration:none!important}
.top nav a.navcta:hover,.top nav .navcta:hover,.vf-public-page .navcta:hover{background:var(--vf-primary-hover);color:var(--vf-on-primary)!important}
.workspace-label{color:var(--vf-muted)}

/* Public top menu: soft pills instead of underlines. */
.vf-simple-nav .vf-nav-links{gap:4px}
.vf-simple-nav .vf-nav-link{padding:0 12px;border-radius:9px;color:var(--vf-ink-2)}
.vf-simple-nav .vf-nav-link:hover{color:var(--vf-primary-ink);background:var(--vf-surface-2);text-decoration:none}
.vf-simple-nav .vf-nav-link.on,.vf-simple-nav .vf-nav-link[aria-current=page]{color:var(--vf-primary-hover);background:var(--vf-primary-soft);text-decoration:none}
.vf-nav-menu-panel{border-radius:14px;box-shadow:var(--vf-shadow-lg)}

/* ---------- Buttons ---------- */
button,.btn{font-family:inherit;background:var(--accent);color:var(--vf-on-primary);border:1px solid transparent;border-radius:10px;font-weight:650;letter-spacing:-.005em;box-shadow:0 1px 2px rgba(30,16,51,.12),0 2px 8px rgba(109,40,217,.16);transition:background-color .15s var(--vf-ease),box-shadow .2s var(--vf-ease),transform .15s var(--vf-ease),border-color .15s var(--vf-ease)}
button:hover,.btn:hover{background:var(--accent2);color:var(--vf-on-primary);box-shadow:0 2px 4px rgba(30,16,51,.12),0 8px 20px rgba(109,40,217,.24);transform:translateY(-1px)}
button:active,.btn:active{transform:translateY(0);box-shadow:0 1px 2px rgba(30,16,51,.14)}
.vf-primary,a.vf-primary{background:var(--accent);color:var(--vf-on-primary)!important;border-radius:10px;font-weight:650;box-shadow:0 1px 2px rgba(30,16,51,.12),0 2px 8px rgba(109,40,217,.18);transition:background-color .15s var(--vf-ease),box-shadow .2s var(--vf-ease),transform .15s var(--vf-ease)}
.vf-primary:hover,a.vf-primary:hover{background:var(--accent2);color:var(--vf-on-primary)!important;transform:translateY(-1px);box-shadow:0 2px 4px rgba(30,16,51,.12),0 8px 20px rgba(109,40,217,.26)}
.btn.ghost,.btn.secondary,.vf-button-quiet,.vf-workspace .vf-button-quiet,button.secondary,button.quiet,.btn.quiet{background:var(--vf-surface);color:var(--vf-primary-ink);border:1px solid var(--vf-line-strong);box-shadow:var(--vf-shadow-sm)}
.btn.ghost:hover,.btn.secondary:hover,.vf-button-quiet:hover,.vf-workspace .vf-button-quiet:hover,button.secondary:hover,button.quiet:hover,.btn.quiet:hover{background:var(--vf-surface-2);color:var(--vf-primary-hover);border-color:var(--vf-primary-soft-2)}
button:disabled,button[disabled],.btn[aria-disabled=true]{background:var(--vf-line-strong);color:var(--vf-ink-2);box-shadow:none;transform:none;cursor:not-allowed}

/* ---------- Fields ---------- */
input,select,textarea{font-family:inherit;background:var(--vf-surface);border:1px solid var(--vf-line-strong);border-radius:10px;color:var(--vf-ink);transition:border-color .15s var(--vf-ease),box-shadow .15s var(--vf-ease)}
input:hover,select:hover,textarea:hover{border-color:#bfb2e6}
input[type=checkbox],input[type=radio]{accent-color:var(--vf-primary)}
::placeholder{color:#6f6784;opacity:1}
label{color:var(--vf-ink-2)}

/* ---------- Cards ---------- */
.card{background:var(--vf-surface);border:1px solid var(--vf-line);border-radius:var(--vf-radius-lg);box-shadow:var(--vf-shadow)}
.client-card,.vf-feature-card,.vf-live-list a,.vf-price-strip li,.vf-discovery-card,.stat-card,.setup-steps li,.vf-contact-proof{border-color:var(--vf-line);box-shadow:var(--vf-shadow-sm);transition:border-color .2s var(--vf-ease),box-shadow .2s var(--vf-ease),transform .2s var(--vf-ease)}
.client-card:hover,.vf-feature-card:hover,.vf-live-list a:hover,.vf-discovery-card:hover{border-color:var(--vf-primary-soft-2);box-shadow:var(--vf-shadow);transform:translateY(-2px)}
.vf-feature-card:hover{background:var(--vf-surface)}
.cta{background:linear-gradient(135deg,var(--vf-primary-soft) 0%,#f5ecff 60%,var(--vf-accent-soft) 130%);border:1px solid var(--vf-primary-soft-2)}
.notice{border-radius:12px}

/* ---------- Tables ---------- */
th{color:var(--vf-muted);font-weight:650;letter-spacing:.04em}
thead th{background:var(--vf-surface-2);border-bottom:1px solid var(--vf-line)}
tbody tr{transition:background-color .15s var(--vf-ease)}
tbody tr:hover>td,tbody tr:hover>th{background:rgba(246,243,255,.7)}
.table-wrap{border-radius:var(--vf-radius-lg)}

/* ---------- Badges and status ---------- */
.pill,.tag,.vf-status,.status{border-radius:999px;font-weight:650}
.tag{background:var(--vf-primary-soft);color:var(--vf-primary-hover);border-radius:999px}
.tag.ok,.tag.y{background:var(--vf-good-bg);color:var(--vf-good)}
.tag.amber{background:var(--vf-warn-bg);color:var(--vf-warn)}
.tag.red,.tag.n{background:var(--vf-bad-bg);color:var(--vf-bad)}
.vf-status-on{background:var(--vf-good-bg);color:var(--vf-good)}
.vf-status-soon{background:var(--vf-primary-soft);color:var(--vf-primary-ink)}
.vf-status-setup{background:var(--vf-warn-bg);color:var(--vf-warn)}
.vf-status-planned{background:#efedf3;color:#4e4760}

/* ---------- Questions (disclosures) ---------- */
.vf-faq-list summary,.vf-pricing-faq summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer}
.vf-faq-list summary::-webkit-details-marker,.vf-pricing-faq summary::-webkit-details-marker{display:none}
.vf-faq-list summary:after,.vf-pricing-faq summary:after{content:"+";flex:none;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--vf-primary-soft);color:var(--vf-primary-hover);font-size:18px;font-weight:600;line-height:1;transition:transform .2s var(--vf-ease),background-color .2s var(--vf-ease)}
.vf-faq-list details[open] summary:after,.vf-pricing-faq details[open] summary:after{transform:rotate(45deg);background:var(--vf-primary);color:var(--vf-on-primary)}

/* Long web addresses in legal and help text wrap on phones. main:where(.wrap) is the site
   page's <main> only (same specificity as plain main): a report's <main class="doc"> keeps its
   own screen and print layout. */
main:where(.wrap) p a,main:where(.wrap) li a,.vf-legal a{overflow-wrap:anywhere}

/* ---------- Footer ---------- */
footer{border-top:1px solid var(--vf-line);background:var(--vf-surface)}
footer .in,footer a{color:var(--vf-muted)}
footer a:hover{color:var(--vf-primary-ink)}

/* ---------- Home page ---------- */
.vf-hero-split{position:relative;isolation:isolate}
.vf-hero-split:before{content:"";position:absolute;z-index:-1;top:-34px;bottom:-40px;-webkit-mask-image:linear-gradient(180deg,#000 72%,transparent);mask-image:linear-gradient(180deg,#000 72%,transparent);left:50%;width:100vw;transform:translateX(-50%);
  background:radial-gradient(60% 70% at 12% 20%,rgba(221,214,254,.9) 0,rgba(221,214,254,0) 70%),radial-gradient(45% 60% at 88% 30%,rgba(251,207,232,.55) 0,rgba(251,207,232,0) 70%),radial-gradient(50% 60% at 60% 100%,rgba(196,181,253,.45) 0,rgba(196,181,253,0) 70%),linear-gradient(180deg,#f7f3ff 0,var(--vf-bg) 100%)}
.vf-experience h1,.vf-experience h2,.vf-detail h1,.vf-public-page main h1,.vf-public-page main h2{font-weight:750;letter-spacing:-.03em}
.vf-experience .vf-hero-copy h1{font-size:clamp(42px,4.5vw,66px);font-weight:800;letter-spacing:-.045em;line-height:1.04}
.vf-experience h1 em,.vf-final-cta h2 em,.vf-experience h2 em{font-style:normal;font-weight:800;color:var(--vf-primary);background:linear-gradient(100deg,#6d28d9 10%,#a21caf 60%,#be185d 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.vf-experience .vf-lead{color:var(--vf-ink-2)}
.vf-experience .vf-eyebrow,.vf-eyebrow,.eyebrow{color:var(--vf-primary-ink);font-family:var(--vf-font-label)}
.vf-hero-copy>.vf-eyebrow{display:inline-flex;padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.75);border:1px solid var(--vf-primary-soft-2);box-shadow:var(--vf-shadow-sm)}
.vf-try-row{border:1px solid var(--vf-line-strong);border-radius:16px;background:var(--vf-surface);box-shadow:0 2px 4px rgba(30,16,51,.04),0 16px 40px -12px rgba(76,29,149,.25)}
.vf-try-row:focus-within{border-color:var(--vf-primary);box-shadow:0 0 0 4px rgba(109,40,217,.14),0 16px 40px -12px rgba(76,29,149,.3)}
.vf-try-row input:focus{box-shadow:none}
.vf-try-row button{border-radius:12px}
.vf-try .vf-fine-print,.vf-experience .vf-hero-note{color:var(--vf-muted)}
.vf-product-preview{border-color:var(--vf-line);border-radius:18px;box-shadow:0 2px 6px rgba(30,16,51,.05),0 30px 60px -20px rgba(76,29,149,.28)}
.vf-hero-product:before{background:radial-gradient(ellipse at 60% 45%,rgba(167,139,250,.35) 0,transparent 65%)}
.vf-workflow-section{background:linear-gradient(160deg,var(--vf-night) 0%,var(--vf-night-2) 100%);border-radius:24px;color:var(--vf-on-night)}
.vf-workflow-section h2,.vf-workflow-section h3,.vf-public-page main .vf-workflow-section h2{color:var(--vf-on-night)}
.vf-workflow-section .vf-eyebrow,.vf-experience .vf-workflow-section .vf-eyebrow{color:var(--vf-primary-muted)}
.vf-workflow-section .vf-workflow-steps li{border-top:1px solid rgba(221,214,254,.28)}
.vf-workflow-section .vf-workflow-steps li>span{color:var(--vf-primary-muted)}
.vf-workflow-section .vf-workflow-steps a{color:var(--vf-primary-soft-2)}
.vf-price-strip li{border-radius:16px;position:relative;overflow:hidden}
.vf-price-strip li:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:var(--vf-gradient)}
.vf-price-strip b{color:var(--vf-primary-ink)}
.vf-final-cta{background:radial-gradient(70% 90% at 15% 0%,rgba(196,181,253,.55) 0,transparent 70%),radial-gradient(60% 90% at 90% 100%,rgba(251,207,232,.6) 0,transparent 70%),var(--vf-surface-2);border:1px solid var(--vf-primary-soft-2);border-radius:24px}
.vf-section-heading>p,.vf-experience .vf-faq-list p,.vf-workflow-steps p{color:var(--vf-muted)}
.vf-workflow-section .vf-workflow-steps p{color:var(--vf-on-night-muted)}
.vf-preview-tabs{background:linear-gradient(90deg,var(--vf-night) 0%,var(--vf-night-2) 100%)}
.vf-opportunity h3{font-weight:650;color:var(--vf-primary-hover)}
.vf-preview-metrics b,.vf-preview-metrics strong{font-weight:750}

.vf-public-page main .vf-contact-card h2{color:var(--vf-on-night)}

@media(max-width:700px){
  .vf-plan-table{min-width:600px}
  .vf-plan-table th,.vf-plan-table td{overflow-wrap:normal;word-break:normal;padding:11px 12px}
  .vf-plan-table tbody th{min-width:150px}
}

.vf-live-list li{display:flex}
.vf-live-list a{flex:1;flex-wrap:wrap;row-gap:6px}
.vf-live-list b{flex:1 1 9ch;min-width:9ch;overflow-wrap:normal;word-break:normal}

/* ---------- Pricing ---------- */
.vf-pricing-header{position:relative;isolation:isolate;padding-top:36px}
.vf-pricing-header:before{content:"";position:absolute;z-index:-1;top:-40px;bottom:-60px;left:50%;width:100vw;transform:translateX(-50%);background:radial-gradient(40% 80% at 15% 20%,rgba(221,214,254,.8) 0,rgba(221,214,254,0) 70%),radial-gradient(35% 70% at 85% 10%,rgba(251,207,232,.45) 0,rgba(251,207,232,0) 70%);-webkit-mask-image:linear-gradient(180deg,#000 60%,transparent);mask-image:linear-gradient(180deg,#000 60%,transparent)}
.vf-simple-pricing .vf-pricing-header h1{font-weight:800;letter-spacing:-.035em}
.vf-plan-grid{align-items:stretch}
.vf-plan,.vf-simple-pricing .vf-plan{position:relative;border:1px solid var(--vf-line);border-radius:20px;background:var(--vf-surface);box-shadow:var(--vf-shadow);overflow:hidden;transition:transform .2s var(--vf-ease),box-shadow .2s var(--vf-ease),border-color .2s var(--vf-ease)}
.vf-plan:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:var(--vf-line-strong)}
.vf-plan+.vf-plan:before{background:var(--vf-gradient)}
.vf-plan:hover{transform:translateY(-3px);box-shadow:var(--vf-shadow-lg);border-color:var(--vf-primary-soft-2)}
.vf-simple-pricing .vf-plan h2{font-size:15px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--vf-primary-ink)}
.vf-simple-pricing .vf-plan-price{font-size:44px;font-weight:800;letter-spacing:-.04em;color:var(--vf-ink)}
.vf-simple-pricing .vf-plan-price small{font-size:15px;font-weight:500;letter-spacing:0;color:var(--vf-muted)}
.vf-simple-pricing .vf-plan-credit{padding:10px 12px;background:var(--vf-surface-2);border-radius:10px;color:var(--vf-ink)}
.vf-plan-table-wrap{border:1px solid var(--vf-line);border-radius:18px;background:var(--vf-surface);box-shadow:var(--vf-shadow-sm);overflow:auto}
.vf-plan-table{width:100%}
.vf-plan-table caption{caption-side:top;text-align:left;font-size:20px;font-weight:700;letter-spacing:-.02em;color:var(--vf-ink);padding:18px 20px 10px}
.vf-plan-table th,.vf-plan-table td{padding:13px 16px;border-bottom:1px solid var(--vf-line);vertical-align:top}
.vf-plan-table thead th{background:var(--vf-surface-2);color:var(--vf-primary-ink);font-size:12px;text-transform:uppercase;letter-spacing:.08em}
.vf-plan-table tbody th{font-size:14px;font-weight:600;text-transform:none;letter-spacing:0;color:var(--vf-ink);background:transparent}
.vf-plan-table tbody tr:last-child>*{border-bottom:0}
.vf-coming-soon{margin:28px 0;padding:24px 26px;border:1px dashed var(--vf-line-strong);border-radius:18px;background:var(--vf-surface-2)}
.vf-coming-soon h2{margin-top:0}
.vf-coming-soon ul{list-style:none;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(280px,100%),1fr));gap:8px 18px}
.vf-coming-soon li{display:flex;flex-wrap:wrap;min-width:0;justify-content:space-between;gap:10px;align-items:center;padding:9px 12px;background:var(--vf-surface);border:1px solid var(--vf-line);border-radius:10px;font-size:14px}
.vf-pricing-faq details,.vf-faq-list details{transition:background-color .15s var(--vf-ease)}
.vf-pricing-faq summary,.vf-faq-list summary{color:var(--vf-ink)}
.vf-pricing-faq summary:hover,.vf-faq-list summary:hover{color:var(--vf-primary-ink)}

/* ---------- Workspace ---------- */
.vf-workspace-nav .workspace-groups a[aria-current=page]{background:var(--vf-primary);border-color:var(--vf-primary);color:var(--vf-on-primary)}
.vf-simple-nav>a,.vf-more-nav>summary{color:var(--vf-ink-2)}
.vf-simple-nav>a:hover,.vf-more-nav>summary:hover{background:var(--vf-surface-2);color:var(--vf-primary-ink)}
.vf-simple-nav>a[aria-current=page]{background:var(--vf-primary-soft);color:var(--vf-primary-hover);box-shadow:inset 0 0 0 1px var(--vf-primary-soft-2)}
.vf-workspace .workspace-next{background:radial-gradient(80% 120% at 100% 0%,rgba(251,207,232,.45) 0,transparent 60%),linear-gradient(135deg,var(--vf-surface-2) 0%,var(--vf-surface) 100%);border-color:var(--vf-primary-soft-2);box-shadow:var(--vf-shadow)}
.vf-workspace .workspace-next:before{background:var(--vf-gradient)}
.workspace-next{border-left-color:var(--vf-primary)}
.vf-workspace .vf-metric-grid{box-shadow:var(--vf-shadow-sm)}
.vf-usage-pill{background:var(--vf-surface-2);border-color:var(--vf-primary-soft-2);color:var(--vf-ink-2)}

@media(max-width:650px){
  .workspace-nav.vf-simple-nav{justify-content:flex-start}
  .vf-plan-table-wrap{background:linear-gradient(90deg,var(--vf-surface) 30%,rgba(255,255,255,0)),linear-gradient(90deg,rgba(255,255,255,0),var(--vf-surface) 70%) 100% 0,radial-gradient(farthest-side at 100% 50%,rgba(76,29,149,.14),transparent) 100% 0;background-repeat:no-repeat;background-size:40px 100%,40px 100%,14px 100%;background-attachment:local,local,scroll}
}

/* ---------- Report document ---------- */
.masthead{border-bottom:0;position:relative}
.masthead:after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;border-radius:3px;background:var(--accent);background-image:linear-gradient(90deg,var(--accent),var(--accent2))}
.masthead .mark{color:var(--vf-ink)}
.sec>h2 em{display:inline-grid;place-items:center;min-width:30px;height:24px;padding:0 7px;border-radius:999px;background:var(--vf-primary-soft);background:color-mix(in srgb,var(--accent) 12%,#fff);color:var(--accent);font-size:11.5px;font-weight:700;letter-spacing:.04em}
.keyfind{border-radius:18px;box-shadow:var(--vf-shadow-sm)}
.keyfind b{font-weight:750;letter-spacing:-.03em}

/* ---------- Motion ---------- */
@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important;scroll-behavior:auto!important}
  button:hover,.btn:hover,.vf-primary:hover,.vf-plan:hover,.client-card:hover,.vf-feature-card:hover,.vf-live-list a:hover,.vf-discovery-card:hover{transform:none}}

/* ---------- Print ---------- */
@media print{
  body{background:#fff;overflow:visible}
  .vf-hero-split:before,.vf-pricing-header:before,.masthead:after{display:none}
  .masthead{border-bottom:2px solid var(--vf-ink)}
  .card,.keyfind,.vf-plan{box-shadow:none}
  button,.btn{box-shadow:none}
}

/* ---------- Round 3 polish (phone and desktop pass) ---------- */
/* Wide tables scroll inside their own box instead of widening the page. */
.scroll{overflow-x:auto;max-width:100%;-webkit-overflow-scrolling:touch}

/* Fields keep regular text even inside a bold label. */
input,select,textarea{font-weight:400;letter-spacing:normal;text-transform:none}
select{font-weight:500}
input[type=checkbox],input[type=radio]{width:18px;height:18px;min-width:18px;min-height:0;padding:0;flex:none;box-shadow:none}
label:has(>input[type=checkbox]):not(.checkbox):not(.vf-radio),label:has(>input[type=radio]):not(.checkbox):not(.vf-radio){display:flex;align-items:flex-start;gap:10px;text-transform:none;letter-spacing:normal;font-size:15px;font-weight:500;line-height:1.45;color:var(--vf-ink)}
label:has(>input[type=checkbox]):not(.checkbox):not(.vf-radio)>input,label:has(>input[type=radio]):not(.checkbox):not(.vf-radio)>input{margin:2px 0 0}
/* Sign-in codes read as two groups of four digits. */
input[autocomplete=one-time-code]{font-family:var(--vf-font-code);font-size:22px;font-weight:600;letter-spacing:.14em;max-width:15ch;padding-inline:16px}
input[autocomplete=one-time-code]::placeholder{letter-spacing:.14em;font-weight:400;color:#a79fbd}

/* A heading after a form or a button gets room to breathe. */
form+h2,form+h3,.card>button+h2{margin-top:28px}

/* The score ring: number and label centred together in the circle. */
.ring .v{align-content:center;row-gap:4px;letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.ring .v small{letter-spacing:.08em}

/* The workspace "More" menu: a chevron instead of the browser's triangle. */
.vf-more-nav>summary{list-style:none;display:inline-flex;align-items:center;gap:7px}
.vf-more-nav>summary::-webkit-details-marker{display:none}
.vf-more-nav>summary:after{content:"";width:6px;height:6px;border:solid currentColor;border-width:0 2px 2px 0;transform:translateY(-2px) rotate(45deg);transition:transform .15s var(--vf-ease)}
.vf-more-nav[open]>summary:after{transform:translateY(1px) rotate(-135deg)}
.vf-more-nav>summary .vf-more-current{font-weight:650;color:var(--vf-primary-hover)}
.vf-more-nav[open]>summary .vf-more-current{display:none}

/* Short pages: the footer colour runs to the bottom of the window. */
footer{box-shadow:0 100vh 0 100vh var(--vf-surface)}
.vf-site-footer{box-shadow:0 100vh 0 100vh var(--vf-primary-soft)}

/* Public footer: a solid "Start free" button next to the tagline. */
.vf-footer-top .btn{background:var(--vf-primary);color:var(--vf-on-primary);border:0;border-radius:10px;gap:8px;font-weight:650;box-shadow:0 1px 2px rgba(30,16,51,.12),0 2px 8px rgba(109,40,217,.18)}
.vf-footer-top .btn:hover{background:var(--vf-primary-hover);color:var(--vf-on-primary)}

/* Public footer on phones: logo, line and button stacked on the left. */
@media(max-width:700px){.vf-footer-top{flex-direction:column;align-items:flex-start;gap:14px}.vf-footer-top p{margin-left:0}}
/* Audit template areas: the tick box stays in view on a phone. */
@media(max-width:650px){
  .vf-designer-scroll>table:has(input[name^=area_]){min-width:0}
  .vf-designer-scroll>table:has(input[name^=area_]) td>label{white-space:normal}
}

/* ---------- Error pages ---------- */
.vf-error{position:relative;overflow:hidden;max-width:620px;margin:32px auto 8px;padding:46px 44px 38px;text-align:center;background:var(--vf-surface);border:1px solid var(--vf-line);border-radius:24px;box-shadow:var(--vf-shadow)}
.vf-error:before{content:"";position:absolute;inset:0 0 auto;height:4px;background:var(--vf-gradient)}
.vf-error:after{content:"";position:absolute;z-index:0;top:-90px;left:50%;width:360px;height:220px;transform:translateX(-50%);background:radial-gradient(closest-side,rgba(221,214,254,.75),rgba(221,214,254,0));pointer-events:none}
.vf-error>*{position:relative;z-index:1}
.vf-error-icon{display:grid;place-items:center;width:68px;height:68px;margin:0 auto 20px;border-radius:20px;background:var(--vf-surface);color:var(--vf-primary);border:1px solid var(--vf-primary-soft-2);box-shadow:0 1px 2px rgba(30,16,51,.06),0 10px 24px -8px rgba(109,40,217,.35)}
.vf-error-icon svg{width:32px;height:32px}
.vf-error .eyebrow{margin:0 0 10px;color:var(--vf-primary-ink)}
.vf-error h1{font-size:clamp(28px,4vw,38px);line-height:1.12;margin:0 0 12px}
.vf-error .dek{margin:0 auto 24px;max-width:46ch;font-size:17px;color:var(--vf-muted)}
.vf-error .notice{max-width:48ch;margin:4px auto 14px;text-align:left}
.vf-error-actions{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:10px 16px;margin:0 0 22px}
.vf-error-actions .btn{width:auto;margin:0}
.vf-error-links{margin:0;padding-top:18px;border-top:1px solid var(--vf-line);font-size:14px;color:var(--vf-muted)}
@media(max-width:650px){.vf-error{margin:8px 0 0;padding:36px 22px 28px;border-radius:20px}.vf-error-actions .btn{width:100%}}

/* ---------- Workspace header on phones: brand and links on one row ---------- */
@media(max-width:650px){
  .vf-workspace-page .top .in{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2px 10px;padding:10px 16px}
  .vf-workspace-page .brand-lockup{display:contents}
  .vf-workspace-page .brand{grid-column:1;grid-row:1;min-width:0}
  .vf-workspace-page .brand .brand-wordmark{width:150px;height:34px}
  .vf-workspace-page .top nav{grid-column:2;grid-row:1;width:auto;flex-wrap:nowrap;gap:2px!important;justify-content:flex-end}
  .vf-workspace-page .top nav a{padding:0 10px;min-height:40px;font-size:14px}
  .vf-workspace-page .top nav a.navcta{padding:0 12px}
  .vf-workspace-page .workspace-label{grid-column:1/-1;grid-row:2;margin:0;padding:0 0 4px;border:0;max-width:none;font-size:12px}
}
@media print{footer,.vf-site-footer{box-shadow:none}}
.vf-team-table button{width:auto;min-height:36px;margin:0;padding:7px 12px;font-size:13px;white-space:nowrap;background:var(--vf-surface);color:var(--vf-bad);border:1px solid var(--vf-line-strong);box-shadow:var(--vf-shadow-sm)}
.vf-team-table button:hover{background:var(--vf-bad-bg);color:var(--vf-bad);border-color:#e7b9bf}
/* "Send again" on an expired invitation is an ordinary action, not the red "Remove access". */
.vf-team-table button.vf-team-resend{color:var(--vf-primary-ink)}
.vf-team-table button.vf-team-resend:hover{background:var(--vf-primary-soft);color:var(--vf-primary-ink);border-color:var(--vf-line-strong)}
.vf-team-table td{vertical-align:middle}
.vf-more-nav>summary{white-space:nowrap}
/* Team on a phone: one small card per person instead of a squeezed table. */
@media(max-width:650px){
  .vf-team-table{overflow:visible}
  .vf-team-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
  .vf-team-table table,.vf-team-table tbody{display:block}
  .vf-team-table tr{display:grid;grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"email email action" "role access action";align-items:center;gap:2px 8px;padding:14px 2px;border-bottom:1px solid var(--vf-line)}
  .vf-team-table tr:hover>td{background:transparent}
  .vf-team-table td{display:block;padding:0;border:0;font-size:14px}
  .vf-team-table td:nth-child(1){grid-area:email;font-weight:600;color:var(--vf-ink);overflow-wrap:anywhere}
  .vf-team-table td:nth-child(2){grid-area:role;color:var(--vf-muted);text-transform:capitalize}
  .vf-team-table td:nth-child(3){grid-area:access;color:var(--vf-muted)}
  .vf-team-table td:nth-child(3):before{content:"· "}
  .vf-team-table td:nth-child(4){grid-area:action}
}
td>label:has(>input[type=checkbox]){white-space:nowrap}
.workspace-nav.vf-simple-nav{justify-content:flex-start}
.card+form,form+.card,form+form{margin-top:16px}
main:where(.wrap) h1+.card,main:where(.wrap) h1+form.card{margin-top:22px}
.vf-simple-hero{max-width:920px}.vf-simple-hero h1{text-wrap:pretty}
.lgrid.big[style="--n:3"]{max-width:330px}.lgrid.big[style="--n:5"]{max-width:470px}
/* Plain public pages without a hero band still start clear of the header. */
.vf-public-page .wrap.wide>:is(h1,.eyebrow,.vf-eyebrow):first-child{margin-top:40px}
@media(max-width:700px){.vf-public-page .wrap.wide>:is(h1,.eyebrow,.vf-eyebrow):first-child{margin-top:24px}}
/* Fold-out cards: a chevron on the right instead of the browser's triangle. */
details.card>summary{list-style:none;display:flex;align-items:center;flex-wrap:wrap;gap:4px 10px}
details.card>summary::-webkit-details-marker{display:none}
details.card>summary:after{content:"";flex:none;width:8px;height:8px;margin:0 4px 0 auto;border:solid var(--vf-primary);border-width:0 2px 2px 0;transform:translateY(-2px) rotate(45deg);transition:transform .15s var(--vf-ease)}
details.card[open]>summary:after{transform:translateY(2px) rotate(-135deg)}
/* Cards side by side in a grid line up at the top (the stacked-card gap is for columns only). */
.feature-grid>.card+.card,.client-grid>.card+.card{margin-top:0}
/* Row labels in a data table (th scope=row) read as ordinary text, not as a second header row. */
:where(tbody) th[scope=row]{background:transparent;text-transform:none;letter-spacing:0;font-size:13px;font-weight:600;color:var(--vf-ink)}
/* ...and the last row's label has no bottom line, like the cells beside it (Credits by activity). */
:where(tbody) tr:last-child>th[scope=row]{border-bottom:0}
/* Team: room between the member list and the invitation card. */
.vf-team-table+.card{margin-top:22px}
/* Client page: the template and the New audit button on one line, under the heading. */
.vf-client-audit{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end;margin:14px 0 18px}
.vf-client-audit>div{flex:1 1 260px;min-width:0}.vf-client-audit select{width:100%}
.vf-client-audit button{width:auto;flex:none}
.vf-link-audit{margin-top:16px;font-size:14px}.vf-link-audit summary{cursor:pointer;font-weight:600;color:var(--vf-primary-ink)}
.vf-link-audit form{margin-top:10px}
.vf-nowrap{white-space:nowrap}
/* Your audits on a phone: one card per audit (name, status, score, open actions, next step)
   instead of a table whose last columns sit off the screen. */
@media(max-width:650px){
  .vf-workspace .vf-audit-library .table-wrap{overflow:visible}
  .vf-workspace .vf-audit-library thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
  .vf-workspace .vf-audit-library table,.vf-workspace .vf-audit-library tbody{display:block;min-width:0}
  .vf-workspace .vf-audit-library tr{display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:8px 16px;padding:16px 20px;border-bottom:1px solid var(--workspace-line)}
  .vf-workspace .vf-audit-library tbody tr:last-child{border-bottom:0}
  .vf-workspace .vf-audit-library td,.vf-workspace .vf-audit-library td:first-child{display:block;padding:0;border:0;max-width:none}
  .vf-workspace .vf-audit-library td:first-child,.vf-workspace .vf-audit-library td.workspace-row-actions{grid-column:1/-1}
  .vf-workspace .vf-audit-library td[data-label]:before{content:attr(data-label) " ";color:var(--vf-muted);font-size:11px}
  .vf-workspace .vf-audit-library td[data-label] small{margin:2px 0 0}
  .vf-workspace .vf-audit-library .workspace-row-actions a{display:inline-block;margin:0 16px 0 0}
}
/* Saved services and proposals: the list heading clear of the first card, even spacing between cards. */
.sales-simple section>h2{margin-bottom:14px}
.sales-service-list>.card+.card{margin-top:0}
/* Jobs on a phone: one small card per job (what, when, status, attempts, link). */
@media(max-width:650px){
  .vf-jobs-table{overflow:visible}
  .vf-jobs-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
  .vf-jobs-table table,.vf-jobs-table tbody{display:block}
  .vf-jobs-table tr{display:flex;flex-wrap:wrap;align-items:center;gap:6px 16px;padding:14px 0;border-bottom:1px solid var(--vf-line)}
  .vf-jobs-table td{display:block;padding:0;border:0}
  .vf-jobs-table td:first-child,.vf-jobs-table td.vf-job-details{flex-basis:100%}
  .vf-jobs-table td[data-label=Attempts]:before{content:"Attempts ";color:var(--vf-muted);font-size:11px}
  .vf-jobs-table td.vf-job-details:empty{display:none}
}
/* The More menu on a phone: its two groups stacked, divided by a line above, not beside. */
@media(max-width:650px){
  .vf-more-nav-content .nav-group+.nav-group{border-left:0;padding-left:0;border-top:1px solid var(--vf-line);padding-top:14px}
}
.lead-search button{margin:0}
.vf-leads-table td:first-child{overflow-wrap:anywhere}
/* Lead inbox on a phone: one card per request (website, contact, when, Add to clients). */
@media(max-width:650px){
  .vf-leads-table{overflow:visible}
  .vf-leads-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
  .vf-leads-table table,.vf-leads-table tbody,.vf-leads-table tr,.vf-leads-table td{display:block;width:100%}
  .vf-leads-table tr{padding:14px 0;border-bottom:1px solid var(--vf-line)}
  .vf-leads-table td{padding:2px 0;border:0;overflow-wrap:anywhere}
  .vf-leads-table td:first-child{font-weight:600;color:var(--vf-ink)}
  .vf-leads-table td[data-label]{color:var(--vf-muted);font-size:12px}
  .vf-leads-table form{margin-top:8px}
}
/* A batch's rows on a phone: one card per website (status, score, report link). */
@media(max-width:650px){
  .vf-batch-rows{overflow:visible}
  .vf-batch-rows thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
  .vf-batch-rows table,.vf-batch-rows tbody,.vf-batch-rows tr,.vf-batch-rows td{display:block;width:100%}
  .vf-batch-rows tr{padding:14px 0;border-bottom:1px solid var(--vf-line)}
  .vf-batch-rows td{padding:2px 0;border:0;overflow-wrap:anywhere}
  .vf-batch-rows td:empty{display:none}
  .vf-batch-rows td[data-label]:before{content:attr(data-label) " ";color:var(--vf-muted);font-size:11px}
  .vf-batch-rows td[data-label=Row]{font-size:11px;color:var(--vf-muted)}
}
.vf-leads-table tr:last-child{border-bottom:0}
/* Bulk audits, Recent batches on a phone: one block per batch (name, then when and progress),
   so a batch name is not squeezed into a narrow column and broken mid-word. */
@media(max-width:650px){
  .vf-batch-history{overflow:visible}
  .vf-batch-history thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
  .vf-batch-history table,.vf-batch-history tbody,.vf-batch-history tr,.vf-batch-history td{display:block;width:100%}
  .vf-batch-history tr{padding:12px 0;border-bottom:1px solid var(--vf-line)}
  .vf-batch-history tr:last-child{border-bottom:0}
  .vf-batch-history td{padding:2px 0;border:0;overflow-wrap:break-word;word-break:normal}
  .vf-batch-history td:first-child{font-weight:600}
  .vf-batch-history td[data-label]:before{content:attr(data-label) " ";color:var(--vf-muted);font-size:11px}
}
/* Sign-in, sign-up code, workspace chooser and Account security (access.login_page,
   accounts.code_page): one column, the same spacing between cards, one main button, and
   long email addresses wrap instead of pushing the page sideways on a 320px phone. */
.vf-signin>.card,.vf-signin>form.card,.vf-account-page>.card,.vf-account-page>section.card{margin:18px 0 0}
.vf-signin h1,.vf-account-page h1{overflow-wrap:anywhere}
.vf-signin .card h2,.vf-account-page .card h2{font-size:20px;margin:0 0 8px}
.vf-account-page{max-width:640px}
.vf-sent-to{overflow-wrap:anywhere;word-break:break-word}
.vf-signin .vf-code-input{width:100%;font-size:22px;letter-spacing:.12em;font-variant-numeric:tabular-nums}
.vf-signin .note{margin:8px 0 0}
.vf-remember{display:flex;gap:10px;align-items:flex-start;font-size:14px;font-weight:500;margin:14px 0 0;cursor:pointer}
.login-panel .vf-remember input,.vf-remember input{width:auto;min-height:0;margin:3px 0 0;flex:none}
.vf-signin-status{margin:14px 0 0;padding:12px 14px;border-radius:10px;background:var(--vf-surface-2);font-size:14px}
.vf-signin-more{margin:18px 0 0;font-size:14px}
.vf-signin-more p{margin:0}
button.vf-link-button,.login-panel button.vf-link-button{display:inline;width:auto;min-height:0;margin:0;padding:0;border:0;background:none;box-shadow:none;color:var(--vf-primary-ink);font:inherit;font-weight:650;text-decoration:underline;text-underline-offset:4px;cursor:pointer}
button.vf-link-button:hover{background:none;color:var(--vf-primary-hover)}
.vf-workspace-choices{display:grid;gap:14px;margin-top:18px}
.vf-workspace-choices .card{margin:0}
.vf-codes{white-space:pre-wrap;overflow-wrap:anywhere;font-size:15px;line-height:1.8}
.vf-confirm form{margin-top:14px}

/* ---------- Round 4 polish (9 Oct 2026 design review) ---------- */
/* V1 Every workspace page shares one left edge. */
.vf-shell>main.wrap{margin:0}
.vf-simple-workspace{max-width:none;margin-inline:0}
.vf-shell>main.wrap .sales-simple{margin-inline:0}
/* V2 Sign out: a quiet control beside the heading, not a second main button. */
.vf-page-actions form>.vf-button-quiet{margin:0;min-height:36px;padding:6px 10px;font-size:13px;font-weight:600;color:var(--vf-muted);background:transparent;border-color:transparent;box-shadow:none}
.vf-page-actions form>.vf-button-quiet:hover,.vf-page-actions form>.vf-button-quiet:focus-visible{color:var(--vf-ink);background:var(--vf-surface-2);border-color:var(--vf-line)}
/* V3 Form labels in sentence case everywhere (tick boxes and radios keep their own rules). */
label:not(.checkbox):not(.vf-radio){font-size:13px;font-weight:600;letter-spacing:0;text-transform:none;color:var(--vf-ink-2)}
.vf-contact-card label:not(.checkbox){color:var(--vf-on-night-muted)}
.vf-home .vf-try label{font-size:14px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--vf-ink)}
/* V4 One table-heading style in the workspace. */
.vf-app th,.vf-app .vf-audit-library th,.vf-app .vf-work-table th,.vf-app .vf-client-table th,.vf-app .vf-jobs-table th,.vf-app .vf-team-table th{font-size:12px;letter-spacing:0;text-transform:none;font-weight:650;color:var(--vf-muted)}
/* V6 Side panels stop stretching; cards drop their blank bottom; a heading with no subtitle gets room. */
.action-grid{align-items:start}
.card>p:last-child,.card>ul:last-child,.card>ol:last-child{margin-bottom:0}
.vf-app .stats-grid:empty,.vf-app ul:empty{display:none}
.vf-app .vf-shell>main>h1+.action-grid,.vf-app .vf-shell>main>h1+.client-grid{margin-top:20px}
/* V7 The action plan's "next step" links read as buttons. */
.vf-plan-next a{display:inline-flex;align-items:center;min-height:40px;padding:0 14px;border:1px solid var(--vf-line-strong);border-radius:9px;background:var(--vf-surface);color:var(--vf-primary-ink);font-size:14px;font-weight:600;text-decoration:none;box-shadow:var(--vf-shadow-sm)}
.vf-plan-next a:hover{background:var(--vf-surface-2);border-color:var(--vf-primary-soft-2);color:var(--vf-primary-hover)}
/* V8 Secondary buttons at their natural width. */
button.secondary,button.quiet{width:auto}
/* V9 Homepage sections: heading and side note top-aligned; check cards keep their line under the title; readable FAQ. */
.vf-experience .vf-section-heading{align-items:flex-start}
.vf-home-checks a{justify-content:flex-start}
.vf-experience .vf-faq-list summary{font-size:16px}
/* V10 Pricing cards and the coming-soon list. */
.vf-plan-soon+.vf-plan-cta{margin-top:12px}
.vf-plan-business .vf-plain-list{columns:auto;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:32px}
.vf-plan-business .vf-plan-cta{margin-top:16px}
.vf-coming-soon li{align-items:flex-start}
@media(max-width:760px){.vf-plan-business .vf-plain-list{grid-template-columns:1fr}}
/* V11 A button you can see on the purple bands. */
.vf-public-page .vf-simple-cta .btn.vf-primary{background:var(--vf-surface);color:var(--vf-primary-deep)!important;border-color:transparent}
.vf-public-page .vf-simple-cta .btn.vf-primary:hover{background:var(--vf-primary-soft);color:var(--vf-primary-deep)!important}
/* V12 Phones: the contact form first; sign-up name and email the same width. */
@media(max-width:800px){.vf-contact-intro{display:contents}.vf-contact-card{order:1}.vf-contact-proof,.vf-contact-note{order:2}.vf-contact-proof{margin-top:8px}}
.vf-public-page form.card .row{grid-template-columns:1fr 1fr}
@media(max-width:520px){.vf-public-page form.card .row{grid-template-columns:1fr}}
/* V13 The audit template name fits in the new-audit row (wide screens; phones keep the stacked form). */
@media(min-width:761px){.vf-simple-workspace .workspace-start{grid-template-columns:minmax(0,1.2fr) minmax(0,.9fr) minmax(0,1.5fr) auto}}
/* V14 Help and Features area rows: ordinary weight (the .vf-area pill rule leaked in). */
.vf-areas .vf-area{font-size:16px;font-weight:400;color:var(--vf-ink);white-space:normal}
/* V15/V16 Short lines instead of dense paragraphs. */
.vf-try ul.vf-fine-print,ul.vf-plain-lines{list-style:none;padding:0;margin:10px 0 0;display:grid;gap:4px}
ul.vf-plain-lines{margin:14px 0 26px;max-width:58ch}
@media(max-width:960px){.vf-hero-copy ul.vf-fine-print{text-align:left}}
.vf-status-key{list-style:none;padding:0;margin:0 0 18px;display:grid;gap:6px;font-size:16px;line-height:1.5;color:var(--vf-ink-2)}
/* V18 Email preview header. */
.mail-preview dl{display:grid;grid-template-columns:max-content minmax(0,1fr);gap:4px 14px;margin:0 0 16px;font-size:14px}
.mail-preview dt{color:var(--vf-muted)}.mail-preview dd{margin:0;overflow-wrap:anywhere}
/* V19 Footer button at button size. */
.vf-footer-top .btn{font-size:14px;padding:12px 18px}
/* V20 Operator Today: the count is the big thing; tool links are links. */
#today-signups>strong,#today-contacts>strong,#today-alerts>strong,#today-ai>strong{display:block;font-size:34px;font-weight:750;letter-spacing:-.02em;line-height:1.1;margin:4px 0 10px}
.vf-app nav[aria-label="Operator tools"]{display:block}
.vf-app nav[aria-label="Operator tools"] a{padding:0;color:var(--vf-primary-ink);font-weight:600;text-decoration:underline;text-underline-offset:4px}
/* B17 Example page: a second note beside the heading, not under it. */
.vf-cap-group-head p+p{grid-column:2}
/* On phones the head is one column: the second note goes under the first, not into a
   squeezed second column beside the heading (scan review, 11 Oct 2026). */
@media(max-width:760px){.vf-cap-group-head p+p{grid-column:auto}}

.vf-state-code{text-transform:uppercase}.vf-state-code::placeholder{text-transform:none}

/* ==================== The 9 October 2026 refresh: night chrome, pill buttons, rounder cards ==================== */
/* The bar across the top, on every page: night purple, the wordmark in white. */
.top,.vf-app .top.vf-topbar,.vf-public-page .top{background:var(--vf-chrome);-webkit-backdrop-filter:none;backdrop-filter:none;border-bottom:1px solid var(--vf-chrome-line);box-shadow:none}
.top .brand-wordmark{filter:brightness(0) invert(1)}
.top .workspace-label{color:var(--vf-on-night-muted);border-left-color:var(--vf-chrome-line)}
.top nav a,.vf-marketing-nav .vf-mega>summary,.vf-simple-nav .vf-nav-link,.vf-app .top .vf-workspace-header-nav>a{color:var(--vf-on-night-muted);border-radius:999px}
.top nav a:hover,.vf-marketing-nav .vf-mega>summary:hover,.vf-simple-nav .vf-nav-link:hover,.vf-app .top .vf-workspace-header-nav>a:hover{color:var(--vf-on-night);background:var(--vf-chrome-hover);text-decoration:none}
.top nav a.on,.top nav a[aria-current=page],.vf-simple-nav .vf-nav-link.on{color:var(--vf-on-night);background:var(--vf-chrome-active);text-decoration:none;padding-inline:12px}
.top nav a.navcta,.top nav .navcta,.vf-public-page .navcta,.vf-app .top .vf-workspace-header-nav>a.vf-topbar-new{background:var(--vf-primary);color:var(--vf-on-primary)!important;border-radius:999px;box-shadow:0 1px 2px rgba(0,0,0,.25)}
.top nav a.navcta:hover,.vf-app .top .vf-workspace-header-nav>a.vf-topbar-new:hover{background:var(--vf-primary-bright);color:var(--vf-on-primary)!important}
.vf-app .top .vf-workspace-header-nav>a.vf-topbar-account{border-color:var(--vf-chrome-line);color:var(--vf-on-night)}
.vf-nav-menu summary{color:var(--vf-on-night);border-color:var(--vf-chrome-line);background:var(--vf-chrome-hover);border-radius:999px}
.vf-nav-menu-panel a{color:var(--vf-ink-2)}
.vf-app .top .vf-side-menu>summary{color:var(--vf-on-night)}
/* The workspace menu down the left: the same night purple, the current page lit. */
.vf-side{background:var(--vf-chrome);border-right:1px solid var(--vf-chrome-line);padding:16px 12px}
.vf-app .vf-side-nav a{color:var(--vf-on-night-muted);border-radius:999px;padding:6px 14px;min-height:34px}
.vf-app .vf-side-nav a:hover{background:var(--vf-chrome-hover);color:var(--vf-on-night)}
.vf-app .vf-side-nav a[aria-current=page]{background:var(--vf-chrome-active);color:var(--vf-on-night);font-weight:650;box-shadow:inset 3px 0 0 var(--vf-primary-bright)}
.vf-side .vf-side-label{color:var(--vf-on-night-muted);opacity:.72}
.vf-side .vf-soon{border-color:var(--vf-chrome-line);color:var(--vf-on-night-muted);background:var(--vf-chrome-hover)}
.vf-side-foot{border-top-color:var(--vf-chrome-line)}
.vf-side-foot a,.vf-side-foot .vf-link-button{color:var(--vf-on-night-muted);border-radius:999px}
.vf-side-foot a:hover,.vf-side-foot .vf-link-button:hover{background:var(--vf-chrome-hover);color:var(--vf-on-night)}
/* The footers: night purple too, so every page sits between the same two bars. */
footer,.vf-site-footer,.vf-simple-footer{background:var(--vf-chrome);border-top:1px solid var(--vf-chrome-line);box-shadow:0 100vh 0 100vh var(--vf-chrome);color:var(--vf-on-night-muted)}
footer .in,footer a,.vf-site-footer a,.vf-site-footer p,.vf-site-footer span,.vf-site-footer li,.vf-site-footer small{color:var(--vf-on-night-muted)}
footer a:hover,.vf-site-footer a:hover{color:var(--vf-on-night)}
.vf-simple-footer .vf-footer-top p,.vf-site-footer h2,.vf-site-footer h3,.vf-site-footer strong{color:var(--vf-on-night)}
.vf-site-footer .brand-wordmark{filter:brightness(0) invert(1)}
.vf-footer-top .btn{background:var(--vf-primary);color:var(--vf-on-primary);border-radius:999px}
.vf-footer-top .btn:hover{background:var(--vf-primary-bright)}
.vf-footer-bottom{border-top-color:var(--vf-chrome-line)}
/* The homepage opens on a night band: white headline, the preview panel in daylight beside it. */
.vf-experience .vf-hero-split:before{background:radial-gradient(70% 90% at 90% 0%,rgba(139,92,246,.45) 0,transparent 60%),linear-gradient(135deg,var(--vf-chrome) 0%,var(--vf-chrome-2) 60%,#3b1d8a 100%);-webkit-mask-image:none;mask-image:none;bottom:-10px;border-radius:0 0 28px 28px}
.vf-experience .vf-hero-copy,.vf-experience .vf-hero-copy h1,.vf-experience .vf-hero-copy p{color:var(--vf-on-night)}
.vf-experience .vf-hero-copy .vf-lead,.vf-experience .vf-hero-copy>p:not(.vf-eyebrow):not(.vf-hero-links){color:var(--vf-on-night-muted)}
.vf-experience .vf-hero-copy>.vf-eyebrow{color:var(--vf-on-night);background:var(--vf-chrome-active);border:1px solid var(--vf-chrome-line);border-radius:999px;padding:6px 14px;display:inline-flex}
.vf-experience .vf-hero-copy .vf-live-dot{background:var(--vf-primary-bright)}
.vf-experience .vf-hero-copy h1 .vf-gradient,.vf-experience .vf-hero-copy h1 em,.vf-experience .vf-hero-copy h1 span{background-image:linear-gradient(90deg,#c4b5fd,#f5d0fe);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent}
.vf-home .vf-try label,.vf-experience .vf-try label{color:var(--vf-on-night-muted)}
.vf-try .vf-try-row{background:var(--vf-surface);border-radius:999px;padding:6px;box-shadow:0 10px 30px rgba(0,0,0,.25)}
.vf-try .vf-try-row input{border:0;background:transparent;box-shadow:none}
.vf-try .vf-try-row button{border-radius:999px}
.vf-try ul.vf-fine-print,.vf-try ul.vf-fine-print li,.vf-hero-copy .vf-fine-print{color:var(--vf-on-night-muted)}
.vf-try ul.vf-fine-print a,.vf-hero-copy .vf-fine-print a,.vf-hero-copy .vf-hero-links a,.vf-hero-copy>p a{color:var(--vf-on-night);text-decoration:underline;text-underline-offset:4px}
.vf-hero-copy .vf-hero-links a:hover{color:var(--vf-primary-muted)}
.vf-experience .vf-hero-split{padding:64px 0 72px}
@media(max-width:700px){.vf-experience .vf-hero-split{padding:40px 0 44px}}
/* Buttons are pills; fields and cards are rounder; tags are pills. */
.btn,button,input[type=submit],.vf-plan-cta,.vf-button-quiet{border-radius:999px}
.card,.cta,.vf-plan,.client-card,.work-item,.vf-workspace .workspace-next,.vf-simple-workspace .workspace-next,.vf-audit-library,.vf-feature-card,.vf-check-card,article.card{border-radius:20px}
input:not([type=checkbox]):not([type=radio]),select,textarea{border-radius:12px}
.tag,.vf-status,.badge{border-radius:999px;font-weight:650}
/* The one thing to do next, on the Overview: a night card, so it is the first thing you see. */
.vf-workspace .workspace-next,.vf-simple-workspace .workspace-next{background:radial-gradient(80% 120% at 100% 0%,rgba(139,92,246,.35) 0,transparent 60%),linear-gradient(135deg,var(--vf-chrome) 0%,var(--vf-chrome-2) 100%);border-color:var(--vf-chrome);color:var(--vf-on-night)}
.vf-workspace .workspace-next h2,.vf-simple-workspace .workspace-next h2,.vf-workspace .workspace-next p,.vf-simple-workspace .workspace-next p{color:var(--vf-on-night)}
.vf-workspace .workspace-next .eyebrow,.vf-simple-workspace .workspace-next .eyebrow,.vf-workspace .workspace-next .muted,.vf-simple-workspace .workspace-next .muted{color:var(--vf-on-night-muted)}
.vf-workspace .workspace-next a:not(.btn),.vf-simple-workspace .workspace-next a:not(.btn){color:var(--vf-on-night);text-decoration:underline}
.vf-workspace .workspace-next .btn,.vf-simple-workspace .workspace-next .btn{background:var(--vf-on-night);color:var(--vf-primary-deep)}
.vf-workspace .workspace-next .btn:hover,.vf-simple-workspace .workspace-next .btn:hover{background:var(--vf-primary-soft);color:var(--vf-primary-deep)}
.workspace-next{border-left-color:var(--vf-primary-bright)}
/* Tables: a light head, a hover tint, no shouting. */
.vf-app table{border-collapse:separate;border-spacing:0}
.vf-app thead th{background:transparent;border-bottom:1px solid var(--vf-line-strong)}
.vf-app tbody tr:hover>td{background:var(--vf-surface-2)}
/* Section labels in the accent colour, so a page scans by its small headings. */
.eyebrow,.vf-eyebrow,.vf-experience .vf-eyebrow,.vf-detail .vf-eyebrow{color:var(--vf-accent-ink)}
.vf-hero-copy>.vf-eyebrow,.vf-local-section .vf-eyebrow,.vf-public-page .vf-mega-cta .vf-eyebrow{color:inherit}
/* The purple bands on the public pages: deeper, with a pill button. */
.vf-public-page .vf-simple-cta{background:linear-gradient(135deg,var(--vf-chrome),var(--vf-primary-deep));border-radius:24px}
@media(max-width:700px){.vf-experience .vf-hero-split:before{border-radius:0}.vf-try .vf-try-row{border-radius:20px}}
@media print{.top,.vf-side,footer{background:#fff;color:var(--vf-ink)}.vf-experience .vf-hero-copy,.vf-experience .vf-hero-copy h1,.vf-experience .vf-hero-copy p{color:var(--vf-ink)}
  footer .in,footer a,.vf-site-footer a,.vf-site-footer p,.vf-site-footer span,.vf-site-footer li,.vf-site-footer small,.vf-site-footer h2,.vf-site-footer h3,.vf-site-footer strong,.vf-simple-footer .vf-footer-top p{color:var(--vf-ink)}
  .top .brand-wordmark,.vf-site-footer .brand-wordmark{filter:none}
  .vf-experience .vf-hero-split:before{display:none}
  .vf-experience .vf-hero-copy *,.vf-public-page .vf-simple-cta,.vf-public-page .vf-simple-cta *{color:var(--vf-ink)!important;-webkit-text-fill-color:currentColor!important}
  .vf-experience .vf-hero-copy h1 *{background:none!important}
  .vf-experience .vf-hero-copy>.vf-eyebrow,.vf-public-page .vf-simple-cta{background:none;border:1px solid var(--vf-line)}}
@media(max-width:960px){.vf-experience .vf-hero-copy>.vf-eyebrow{width:max-content;max-width:100%;margin-inline:auto;text-align:left}}
/* Contrast after the night chrome (a sweep of every screen at both widths, 9 Oct 2026): the workspace
   name in the bar, the phone Menu button on workspace pages, and the next-step card's sentence and labels. */
.vf-app .top .workspace-label{color:var(--vf-on-night-muted)}
.vf-app .top .vf-side-menu>summary{color:var(--vf-on-night);background:var(--vf-chrome-hover);border-color:var(--vf-chrome-line);border-radius:999px}
.vf-app .top .vf-side-menu>summary .vf-more-current{color:var(--vf-on-night-muted)}
.vf-workspace .workspace-next p:not(.eyebrow),.vf-simple-workspace .workspace-next p:not(.eyebrow),
.vf-workspace .workspace-next label,.vf-simple-workspace .workspace-next label{color:var(--vf-on-night-muted)}
/* Keyboard focus on night purple: a light ring (the purple one is too faint there). The white menus that
   open from the bar keep the purple ring. */
.top .in a:focus-visible,.top .in button:focus-visible,.top .in summary:focus-visible,
.vf-side a:focus-visible,.vf-side button:focus-visible,.vf-side summary:focus-visible,
footer a:focus-visible,footer button:focus-visible,.vf-site-footer a:focus-visible,.vf-simple-footer a:focus-visible,
.workspace-next a:focus-visible,.workspace-next button:focus-visible,.workspace-next input:focus-visible,.workspace-next select:focus-visible,
.vf-hero-copy .vf-hero-links a:focus-visible,.vf-hero-copy .vf-fine-print a:focus-visible,.vf-hero-copy>p a:focus-visible,
.vf-simple-cta a:focus-visible,.vf-simple-cta button:focus-visible{outline-color:var(--vf-on-night-muted)}
.vf-preview-tabs a:focus-visible,.vf-hero-product .vf-preview-panel:focus-visible{outline-color:var(--vf-on-night-muted)}
.top .in .vf-nav-menu-panel a:focus-visible,.top .in .vf-nav-menu-panel button:focus-visible,
.top .in .vf-side-menu .vf-side-nav a:focus-visible,.top .in .vf-side-menu .vf-side-nav button:focus-visible{outline-color:var(--vf-focus)}

/* ==================== The 10 October 2026 redesign ====================
   One typeface (Plus Jakarta Sans, tokens.css), every public page opening on night purple like the
   homepage, a pricing card with a night head, and the workspace as a light sheet inside a night
   frame, with a small picture beside each menu entry. Colours stay the tokens'. */

/* Type */
body{letter-spacing:-.006em}
h1,h2,h3,h4{letter-spacing:-.028em}
h1{font-weight:800}
h2{font-weight:760}
h3{font-weight:720}
.eyebrow,.vf-eyebrow{letter-spacing:.09em;font-weight:750}

/* ---------- Public pages: every page opens on night purple ---------- */
.vf-public-page .vf-simple-hero,.vf-public-page .vf-pricing-header,.vf-public-page .vf-page-band{position:relative;isolation:isolate;max-width:none;margin:0 0 48px;padding:40px 0 56px;color:var(--vf-on-night)}
.vf-public-page .vf-simple-hero:before,.vf-public-page .vf-pricing-header:before,.vf-public-page .vf-page-band:before{content:"";position:absolute;z-index:-1;top:-34px;bottom:0;left:50%;width:100vw;transform:translateX(-50%);-webkit-mask-image:none;mask-image:none;border-radius:0 0 36px 36px;background:radial-gradient(52% 115% at 88% 0%,rgba(139,92,246,.42) 0,transparent 62%),radial-gradient(40% 90% at 4% 100%,rgba(219,39,119,.17) 0,transparent 62%),linear-gradient(160deg,var(--vf-chrome) 0%,var(--vf-chrome-2) 72%,#33176a 100%)}
.vf-public-page .vf-simple-hero>*,.vf-public-page .vf-pricing-header>*,.vf-public-page .vf-page-band>*{max-width:800px}
.vf-public-page .vf-simple-hero>h1,.vf-public-page .vf-pricing-header>h1,.vf-public-page .vf-page-band>h1{max-width:920px}
.vf-public-page .vf-simple-hero h1,.vf-public-page .vf-pricing-header h1,.vf-public-page .vf-page-band h1{color:var(--vf-on-night);font-size:clamp(36px,5.2vw,62px);line-height:1.04;letter-spacing:-.04em;margin:0 0 18px}
.vf-public-page .vf-simple-hero p,.vf-public-page .vf-simple-hero li,.vf-public-page .vf-pricing-header p,.vf-public-page .vf-page-band p,.vf-public-page .vf-page-band li{color:var(--vf-on-night-muted)}
.vf-public-page .vf-simple-hero .dek,.vf-public-page .vf-pricing-header .dek,.vf-public-page .vf-page-band .dek,.vf-public-page .vf-simple-hero .vf-lead{font-size:clamp(17px,1.6vw,19px);line-height:1.6}
.vf-public-page .vf-simple-hero strong,.vf-public-page .vf-simple-hero b,.vf-public-page .vf-page-band strong,.vf-public-page .vf-page-band b{color:var(--vf-on-night)}
.vf-public-page .vf-simple-hero a:not(.btn),.vf-public-page .vf-pricing-header a:not(.btn),.vf-public-page .vf-page-band a:not(.btn){color:var(--vf-on-night);text-decoration:underline;text-underline-offset:3px;text-decoration-color:rgba(255,255,255,.45)}
.vf-public-page .vf-simple-hero a:not(.btn):hover,.vf-public-page .vf-page-band a:not(.btn):hover{text-decoration-color:currentColor}
.vf-public-page .vf-simple-hero .vf-eyebrow,.vf-public-page .vf-simple-hero .eyebrow,.vf-public-page .vf-page-band .eyebrow,.vf-public-page .vf-page-band .vf-eyebrow{display:inline-flex;align-items:center;gap:8px;width:max-content;max-width:100%;margin:0 0 20px;padding:6px 14px;border:1px solid var(--vf-chrome-line);border-radius:999px;background:var(--vf-chrome-active);color:var(--vf-on-night)}
.vf-public-page .vf-simple-hero .vf-eyebrow a,.vf-public-page .vf-page-band .eyebrow a{text-decoration:none}
/* The features page's status key and the example's note sit in the band too. */
.vf-public-page .vf-simple-hero .vf-status-key{color:var(--vf-on-night-muted)}
.vf-public-page .vf-simple-hero .vf-status-key b,.vf-public-page .vf-simple-hero .vf-status-key strong{color:var(--vf-on-night)}
.vf-public-page .vf-simple-hero .notice,.vf-public-page .vf-simple-hero .vf-note,.vf-public-page .vf-page-band .notice{background:var(--vf-chrome-hover);border-color:var(--vf-chrome-line);color:var(--vf-on-night-muted)}
.vf-public-page .vf-simple-hero .btn:not(.vf-primary):not(.secondary),.vf-public-page .vf-page-band .btn:not(.secondary){background:var(--vf-on-night);color:var(--vf-primary-deep);border-color:transparent}
.vf-public-page .vf-simple-hero .btn.secondary,.vf-public-page .vf-page-band .btn.secondary{background:transparent;color:var(--vf-on-night);border-color:rgba(255,255,255,.35)}
/* Contact: the whole first screen is the band, the form a lighter card on it. */
.vf-public-page .vf-contact{position:relative;isolation:isolate;padding:40px 0 56px;margin-bottom:40px}
.vf-public-page .vf-contact:before{content:"";position:absolute;z-index:-1;top:-34px;bottom:0;left:50%;width:100vw;transform:translateX(-50%);border-radius:0 0 36px 36px;background:radial-gradient(52% 115% at 88% 0%,rgba(139,92,246,.42) 0,transparent 62%),linear-gradient(160deg,var(--vf-chrome) 0%,var(--vf-chrome-2) 72%,#33176a 100%)}
.vf-public-page .vf-contact-intro h1,.vf-public-page .vf-contact-intro h2,.vf-public-page .vf-contact-intro h3,.vf-public-page .vf-contact-intro strong{color:var(--vf-on-night)}
.vf-public-page .vf-contact-intro h1{font-size:clamp(36px,5vw,58px);line-height:1.04;letter-spacing:-.04em}
.vf-public-page .vf-contact-intro p,.vf-public-page .vf-contact-intro li,.vf-public-page .vf-contact-intro .vf-eyebrow{color:var(--vf-on-night-muted)}
.vf-public-page .vf-contact-intro a{color:var(--vf-on-night)}
.vf-public-page .vf-contact-intro .card,.vf-public-page .vf-contact-proof{background:var(--vf-chrome-hover);border-color:var(--vf-chrome-line);box-shadow:none}
.vf-public-page .vf-contact-card{background:var(--vf-chrome-2);border:1px solid rgba(255,255,255,.14);box-shadow:0 30px 60px -30px rgba(0,0,0,.6)}

/* ---------- Public pages: the body ---------- */
.vf-public-page .vf-cap-group{margin:0 0 64px}
.vf-public-page .vf-cap-group-head h2,.vf-public-page .vf-plan-audience>h2,.vf-public-page .vf-simple>section>h2{font-size:clamp(28px,3.2vw,42px);line-height:1.1;letter-spacing:-.035em}
.vf-public-page .vf-cap,.vf-public-page .vf-guide,.vf-public-page .vf-about-grid>article,.vf-public-page .vf-score{border:1px solid var(--vf-line);border-radius:22px;background:var(--vf-surface);box-shadow:0 1px 2px rgba(30,16,51,.04),0 12px 32px -18px rgba(76,29,149,.18);transition:transform .2s var(--vf-ease),box-shadow .2s var(--vf-ease),border-color .2s var(--vf-ease)}
.vf-public-page .vf-cap{padding:26px}
.vf-public-page .vf-cap:hover{transform:translateY(-2px);border-color:var(--vf-primary-soft-2);box-shadow:0 2px 4px rgba(30,16,51,.05),0 22px 44px -20px rgba(76,29,149,.3)}
.vf-public-page .vf-cap h3{font-size:19px;line-height:1.25}
.vf-public-page .vf-guide{padding:30px 32px;margin:0 0 24px}
.vf-public-page .vf-about-grid>article{padding:28px}
/* Legal pages and guides: an easier column to read. */
.vf-public-page .vf-legal-section{max-width:760px}
.vf-public-page .vf-legal-section h2{font-size:24px;letter-spacing:-.025em}
.vf-public-page .vf-legal-section p,.vf-public-page .vf-legal-section li{font-size:16px;line-height:1.7}
/* The purple band at the end of a page. */
.vf-public-page .vf-simple-cta{position:relative;isolation:isolate;overflow:hidden;padding:56px 48px;border-radius:32px;background:radial-gradient(60% 140% at 100% 0%,rgba(139,92,246,.5) 0,transparent 60%),linear-gradient(150deg,var(--vf-chrome) 0%,var(--vf-primary-deep) 100%)}
.vf-public-page .vf-simple-cta h2{font-size:clamp(28px,3.6vw,46px);letter-spacing:-.04em;color:var(--vf-on-night)}

/* ---------- Pricing: a night head on every plan card ---------- */
.vf-public-page .vf-plan{padding:0 0 26px;border-radius:24px;border:1px solid var(--vf-line);box-shadow:0 1px 2px rgba(30,16,51,.05),0 18px 40px -22px rgba(76,29,149,.28)}
.vf-public-page .vf-plan>*{margin-left:26px;margin-right:26px}
.vf-public-page .vf-plan>h2,.vf-public-page .vf-plan>.vf-plan-price,.vf-public-page .vf-plan>.vf-plan-credit{margin-left:0;margin-right:0;padding-left:26px;padding-right:26px;background:var(--vf-chrome);color:var(--vf-on-night)}
.vf-public-page .vf-plan>h2{margin-top:0;margin-bottom:0;padding-top:24px;padding-bottom:6px;font-size:13px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--vf-primary-muted)}
.vf-public-page .vf-plan>.vf-plan-price{margin-top:0;margin-bottom:0;padding-top:6px;padding-bottom:10px;font-size:48px;line-height:1.05;letter-spacing:-.045em;color:var(--vf-on-night)}
.vf-public-page .vf-plan>.vf-plan-price small{color:var(--vf-on-night-muted)}
.vf-public-page .vf-plan>.vf-plan-credit{margin-top:0;margin-bottom:22px;padding-top:4px;padding-bottom:24px;border-radius:0;font-size:15px;color:var(--vf-on-night-muted)}
.vf-public-page .vf-plan>.vf-plan-credit strong{color:var(--vf-on-night)}
.vf-public-page .vf-plan>.vf-plan-price+.vf-plan-desc,.vf-public-page .vf-plan>h2+.vf-plan-desc{margin-top:22px}
.vf-public-page .vf-plan .vf-plan-cta{margin-top:auto}
.vf-public-page .vf-plan:hover{transform:translateY(-3px)}

/* ---------- The workspace: a light sheet inside a night frame ---------- */
.vf-app .vf-shell{background:var(--vf-chrome)}
/* Below a short page, between the frame and the footer: night too, not a light band. */
.vf-app{background:var(--vf-chrome)}
.vf-app .vf-side{border-right:0}
.vf-app .vf-shell>main{background:var(--vf-bg);border-radius:28px 0 0 0;min-height:calc(100vh - 61px);box-shadow:inset 1px 1px 0 rgba(255,255,255,.04)}
.vf-app .vf-shell>main.wrap{padding-top:36px}
@media(max-width:900px){.vf-app .vf-shell>main{border-radius:24px 24px 0 0}}
/* The sheet reaches the right edge on every page; the page's own width (960px, 1280px for
   wide pages) is kept by the padding, so a short page or a wide screen never shows a strip
   of the night frame beside the sheet (scan review, 11 Oct 2026). */
@media(min-width:901px){
  .vf-app .vf-shell>main.wrap:not(.doc){max-width:none}
  .vf-app .vf-shell>main.wrap:not(.wide):not(.doc){padding-right:max(36px,calc(100vw - 248px - 36px - 960px))}
  .vf-app .vf-shell>main.wrap.wide:not(.doc){padding-right:max(36px,calc(100vw - 248px - 36px - 1280px))}
}
/* A small picture beside each menu entry (the drawings are below). */
.vf-side-nav a{display:flex;align-items:center;gap:10px}
.vf-side-nav a[aria-current=page]:before{opacity:1}
/* Page heads: bigger and calmer. */
.vf-app .vf-shell>main .vf-page-head h1{font-size:clamp(28px,2.6vw,36px);font-weight:800;letter-spacing:-.035em}
.vf-app .vf-page-head .vf-page-sub{font-size:16px}
/* Cards, stats and tables in the sheet. */
.vf-app .vf-shell>main .card{border-radius:22px;border:1px solid var(--vf-line);box-shadow:0 1px 2px rgba(30,16,51,.04),0 10px 28px -18px rgba(76,29,149,.2)}
.vf-app .stats-grid>*,.vf-app .vf-metric-grid>*{border-radius:20px}
.vf-app .stats-grid strong,.vf-app .vf-metric-grid strong{font-size:30px;letter-spacing:-.04em;font-weight:800}
.vf-app thead th{font-size:12px;letter-spacing:.06em;text-transform:uppercase;color:var(--vf-muted)}
.vf-side-nav a[href="/workspace"]{--vf-icon:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M3 11l9-7 9 7%22/%3E%3Cpath d=%22M5 10v10h14V10%22/%3E%3Cpath d=%22M10 20v-6h4v6%22/%3E%3C/svg%3E")}
.vf-side-nav a[href="/clients"]{--vf-icon:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Ccircle cx=%229%22 cy=%228%22 r=%223.5%22/%3E%3Cpath d=%22M2.5 20c0-3.6 2.9-6 6.5-6s6.5 2.4 6.5 6%22/%3E%3Cpath d=%22M16 4.5a3.5 3.5 0 0 1 0 7%22/%3E%3Cpath d=%22M18 14.5c2.2.7 3.5 2.6 3.5 5.5%22/%3E%3C/svg%3E")}
.vf-side-nav a[href="/services"]{--vf-icon:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Crect x=%223%22 y=%227%22 width=%2218%22 height=%2213%22 rx=%222%22/%3E%3Cpath d=%22M8 7V5a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2%22/%3E%3Cpath d=%22M3 13h18%22/%3E%3C/svg%3E")}
.vf-side-nav a[href="/proposals"]{--vf-icon:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M14 3H7a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V8z%22/%3E%3Cpath d=%22M14 3v5h5%22/%3E%3Cpath d=%22M9 13h6M9 17h6%22/%3E%3C/svg%3E")}
.vf-side-nav a[href="/improvements"]{--vf-icon:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M3 17l6-6 4 4 8-8%22/%3E%3Cpath d=%22M15 7h6v6%22/%3E%3C/svg%3E")}
.vf-side-nav a[href="/work"]{--vf-icon:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Crect x=%223%22 y=%223%22 width=%2218%22 height=%2218%22 rx=%223%22/%3E%3Cpath d=%22M8 12l3 3 5-6%22/%3E%3C/svg%3E")}
.vf-side-nav a[href="/operator/today"]{--vf-icon:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%224%22/%3E%3Cpath d=%22M12 2v2M12 20v2M4.9 4.9l1.4 1.4M17.7 17.7l1.4 1.4M2 12h2M20 12h2M4.9 19.1l1.4-1.4M17.7 6.3l1.4-1.4%22/%3E%3C/svg%3E")}
.vf-side-nav a[href="/partners"]{--vf-icon:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Crect x=%223%22 y=%223%22 width=%227%22 height=%227%22 rx=%221.5%22/%3E%3Crect x=%2214%22 y=%223%22 width=%227%22 height=%227%22 rx=%221.5%22/%3E%3Crect x=%223%22 y=%2214%22 width=%227%22 height=%227%22 rx=%221.5%22/%3E%3Crect x=%2214%22 y=%2214%22 width=%227%22 height=%227%22 rx=%221.5%22/%3E%3C/svg%3E")}
.vf-side-nav a[href="/operator/ai"]{--vf-icon:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M11 3l1.8 4.7 4.7 1.8-4.7 1.8L11 16l-1.8-4.7L4.5 9.5l4.7-1.8z%22/%3E%3Cpath d=%22M18.5 14.5l.8 2 2 .8-2 .8-.8 2-.8-2-2-.8 2-.8z%22/%3E%3C/svg%3E")}
.vf-side-nav a[href="/leads"]{--vf-icon:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%229%22/%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%225%22/%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%221.2%22/%3E%3C/svg%3E")}
.vf-side-nav a[href="/operator/visits"]{--vf-icon:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M2 12s3.6-7 10-7 10 7 10 7-3.6 7-10 7S2 12 2 12z%22/%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%223%22/%3E%3C/svg%3E")}
.vf-side-nav a[href="/operator/settings"]{--vf-icon:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M4 21v-7M4 10V3M12 21v-9M12 8V3M20 21v-5M20 12V3M1 14h6M9 8h6M17 16h6%22/%3E%3C/svg%3E")}
.vf-side-nav a[href="/operator/alerts"]{--vf-icon:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M6 8a6 6 0 0 1 12 0c0 7 3 9 3 9H3s3-2 3-9%22/%3E%3Cpath d=%22M10.3 21a1.9 1.9 0 0 0 3.4 0%22/%3E%3C/svg%3E")}
.vf-side-nav a[href="/leads-inbox"]{--vf-icon:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M22 12h-6l-2 3h-4l-2-3H2%22/%3E%3Cpath d=%22M5.5 5h13L22 12v6a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2v-6z%22/%3E%3C/svg%3E")}
.vf-side-nav a[href="/batch-audits"]{--vf-icon:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M12 2l10 5-10 5L2 7z%22/%3E%3Cpath d=%22M2 17l10 5 10-5%22/%3E%3Cpath d=%22M2 12l10 5 10-5%22/%3E%3C/svg%3E")}
.vf-side-nav a[href="/monitoring"]{--vf-icon:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M22 12h-4l-3 9L9 3l-3 9H2%22/%3E%3C/svg%3E")}
.vf-side-nav a[href="/campaigns"]{--vf-icon:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M12 2.5l2.9 6 6.6.9-4.8 4.6 1.2 6.5L12 17.4l-5.9 3.1 1.2-6.5L2.5 9.4l6.6-.9z%22/%3E%3C/svg%3E")}
.vf-side-nav a[href="/brand"]{--vf-icon:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M12 3a9 9 0 1 0 0 18c1.1 0 1.6-.8 1.6-1.6 0-.5-.2-.9-.5-1.2-.3-.3-.5-.7-.5-1.2 0-.9.7-1.6 1.6-1.6H16a5 5 0 0 0 5-5c0-4.1-4-7.4-9-7.4z%22/%3E%3Ccircle cx=%227.5%22 cy=%2211.5%22 r=%221%22/%3E%3Ccircle cx=%2210.5%22 cy=%227.5%22 r=%221%22/%3E%3Ccircle cx=%2215%22 cy=%228%22 r=%221%22/%3E%3C/svg%3E")}
.vf-side-nav a[href="/team"]{--vf-icon:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Ccircle cx=%229%22 cy=%228%22 r=%223.5%22/%3E%3Cpath d=%22M2.5 20c0-3.6 2.9-6 6.5-6s6.5 2.4 6.5 6%22/%3E%3Cpath d=%22M19 8v6M16 11h6%22/%3E%3C/svg%3E")}
.vf-side-nav a[href="/designer"]{--vf-icon:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Crect x=%223%22 y=%223%22 width=%2218%22 height=%2218%22 rx=%222%22/%3E%3Cpath d=%22M3 9h18M9 21V9%22/%3E%3C/svg%3E")}
.vf-side-nav a[href="/billing"]{--vf-icon:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Crect x=%222%22 y=%225%22 width=%2220%22 height=%2214%22 rx=%222%22/%3E%3Cpath d=%22M2 10h20M6 15h4%22/%3E%3C/svg%3E")}
.vf-side-nav a[href="/settings"]{--vf-icon:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M9 2v6M15 2v6%22/%3E%3Cpath d=%22M6 8h12v3a6 6 0 0 1-12 0z%22/%3E%3Cpath d=%22M12 17v5%22/%3E%3C/svg%3E")}
.vf-side-nav a[href="/settings/api-keys"]{--vf-icon:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Ccircle cx=%227.5%22 cy=%2215.5%22 r=%224.5%22/%3E%3Cpath d=%22M10.7 12.3L21 2M17 6l3 3M14 9l2 2%22/%3E%3C/svg%3E")}
.vf-side-nav a[href="/settings/webhooks"]{--vf-icon:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M10 13a5 5 0 0 0 7.5.5l3-3a5 5 0 0 0-7-7l-1.7 1.7%22/%3E%3Cpath d=%22M14 11a5 5 0 0 0-7.5-.5l-3 3a5 5 0 0 0 7 7l1.7-1.7%22/%3E%3C/svg%3E")}
.vf-side-nav a[href="/settings/crm"]{--vf-icon:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cellipse cx=%2212%22 cy=%225%22 rx=%228%22 ry=%223%22/%3E%3Cpath d=%22M4 5v14c0 1.7 3.6 3 8 3s8-1.3 8-3V5%22/%3E%3Cpath d=%22M4 12c0 1.7 3.6 3 8 3s8-1.3 8-3%22/%3E%3C/svg%3E")}
.vf-side-nav a[href="/jobs"]{--vf-icon:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Ccircle cx=%2212%22 cy=%2212%22 r=%229%22/%3E%3Cpath d=%22M12 7v5l3 2%22/%3E%3C/svg%3E")}
.vf-side-nav a[href="/activity"]{--vf-icon:url("data:image/svg+xml,%3Csvg xmlns=%22http://www.w3.org/2000/svg%22 viewBox=%220 0 24 24%22 fill=%22none%22 stroke=%22%23000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22%3E%3Cpath d=%22M8 6h13M8 12h13M8 18h13%22/%3E%3Ccircle cx=%223.5%22 cy=%226%22 r=%221%22/%3E%3Ccircle cx=%223.5%22 cy=%2212%22 r=%221%22/%3E%3Ccircle cx=%223.5%22 cy=%2218%22 r=%221%22/%3E%3C/svg%3E")}
.vf-side-nav a[href="/workspace"]:before,.vf-side-nav a[href="/clients"]:before,.vf-side-nav a[href="/services"]:before,.vf-side-nav a[href="/proposals"]:before,.vf-side-nav a[href="/improvements"]:before,.vf-side-nav a[href="/work"]:before,.vf-side-nav a[href="/operator/today"]:before,.vf-side-nav a[href="/partners"]:before,.vf-side-nav a[href="/operator/ai"]:before,.vf-side-nav a[href="/leads"]:before,.vf-side-nav a[href="/operator/visits"]:before,.vf-side-nav a[href="/operator/settings"]:before,.vf-side-nav a[href="/operator/alerts"]:before,.vf-side-nav a[href="/leads-inbox"]:before,.vf-side-nav a[href="/batch-audits"]:before,.vf-side-nav a[href="/monitoring"]:before,.vf-side-nav a[href="/campaigns"]:before,.vf-side-nav a[href="/brand"]:before,.vf-side-nav a[href="/team"]:before,.vf-side-nav a[href="/designer"]:before,.vf-side-nav a[href="/billing"]:before,.vf-side-nav a[href="/settings"]:before,.vf-side-nav a[href="/settings/api-keys"]:before,.vf-side-nav a[href="/settings/webhooks"]:before,.vf-side-nav a[href="/settings/crm"]:before,.vf-side-nav a[href="/jobs"]:before,.vf-side-nav a[href="/activity"]:before{content:"";flex:0 0 18px;width:18px;height:18px;background:currentColor;opacity:.85;-webkit-mask:var(--vf-icon) center/18px 18px no-repeat;mask:var(--vf-icon) center/18px 18px no-repeat}
.vf-side-nav a[aria-current=page]:before{opacity:1}
/* Round 2: the pricing line under the heading, the features page's jump links, the contact page's
   offers, and "Soon" beside a menu entry. */
.vf-public-page .vf-simple-pricing .vf-pricing-header .dek{color:var(--vf-on-night-muted)}
.vf-public-page .vf-simple-hero .vf-jump a{background:var(--vf-chrome-hover);border-color:rgba(255,255,255,.22);color:var(--vf-on-night);text-decoration:none}
.vf-public-page .vf-simple-hero .vf-jump a:hover{background:var(--vf-chrome-active);border-color:rgba(255,255,255,.4)}
.vf-public-page .vf-contact-intro .vf-contact-proof li{border-top-color:var(--vf-chrome-line)}
.vf-public-page .vf-contact-intro .vf-contact-proof li b{color:var(--vf-on-night)}
.vf-public-page .vf-contact-intro .vf-contact-proof li span{color:var(--vf-on-night-muted)}
.vf-public-page .vf-contact-intro .vf-contact-note{color:var(--vf-on-night-muted)}
.vf-side-nav a{white-space:nowrap}
.vf-side-nav a .vf-soon{margin-left:auto}
/* A report opened in the workspace fills the sheet too, its text kept to the report's own width. */
.vf-app .vf-shell>main.doc{margin:0;max-width:none;padding:32px max(26px,calc((100vw - 248px - 1100px) / 2)) 64px}
@media(max-width:900px){.vf-app .vf-shell>main.doc{padding:20px 16px 48px}}
@media print{.vf-app .vf-shell{background:none}.vf-app .vf-shell>main{background:none;border-radius:0;box-shadow:none;min-height:0}
  .vf-public-page .vf-simple-hero:before,.vf-public-page .vf-pricing-header:before,.vf-public-page .vf-page-band:before,.vf-public-page .vf-contact:before{display:none}
  .vf-public-page .vf-simple-hero *,.vf-public-page .vf-pricing-header *,.vf-public-page .vf-page-band *,.vf-public-page .vf-contact *{color:var(--vf-ink)!important}
  .vf-public-page .vf-plan>h2,.vf-public-page .vf-plan>.vf-plan-price,.vf-public-page .vf-plan>.vf-plan-credit{background:none;color:var(--vf-ink)}
  .vf-side-nav a:before{display:none}}
/* The homepage: the price strip with the same night heads as /pricing, and the closing band in night purple. */
.vf-home .vf-price-strip>li{padding:0 0 24px;gap:0;border-radius:24px;box-shadow:0 1px 2px rgba(30,16,51,.05),0 18px 40px -22px rgba(76,29,149,.28)}
.vf-home .vf-price-strip>li:before{display:none}
.vf-home .vf-price-strip>li>*{margin-left:24px;margin-right:24px}
/* A full-width button on phones keeps inside the card's side margins (scan review, 11 Oct 2026). */
.vf-home .vf-price-strip>li>.btn{max-width:calc(100% - 48px);box-sizing:border-box}
.vf-home .vf-price-strip>li>b,.vf-home .vf-price-strip>li>span{display:block;margin-left:0;margin-right:0;padding-left:24px;padding-right:24px;background:var(--vf-chrome)}
.vf-home .vf-price-strip>li>b{margin-top:0;padding-top:22px;padding-bottom:4px;font-size:13px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--vf-primary-muted)}
.vf-home .vf-price-strip>li>span{padding-top:2px;padding-bottom:22px;margin-bottom:18px;font-size:30px;font-weight:800;letter-spacing:-.035em;color:var(--vf-on-night)}
.vf-home .vf-final-cta{position:relative;overflow:hidden;border:0;border-radius:32px;background:radial-gradient(60% 140% at 100% 0%,rgba(139,92,246,.5) 0,transparent 60%),radial-gradient(50% 120% at 0% 100%,rgba(219,39,119,.22) 0,transparent 60%),linear-gradient(150deg,var(--vf-chrome) 0%,var(--vf-primary-deep) 100%)}
.vf-home .vf-final-cta h2{color:var(--vf-on-night)}
.vf-home .vf-final-cta h2 em{background:linear-gradient(90deg,#c4b5fd,#f5d0fe);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:var(--vf-primary-muted)}
.vf-home .vf-final-cta .vf-eyebrow,.vf-home .vf-final-cta p{color:var(--vf-on-night-muted)}
.vf-home .vf-final-cta a.vf-text-link{color:var(--vf-on-night)}
.vf-home .vf-final-cta .btn.vf-primary{background:var(--vf-on-night);color:var(--vf-primary-deep)!important;border-color:transparent}
.vf-home .vf-final-cta .btn.vf-primary:hover{background:var(--vf-primary-soft);color:var(--vf-primary-deep)!important}
.vf-home .vf-final-cta :focus-visible{outline-color:var(--vf-on-night-muted)}
@media print{.vf-home .vf-final-cta{background:none;border:1px solid var(--vf-line)}.vf-home .vf-final-cta *{color:var(--vf-ink)!important;-webkit-text-fill-color:currentColor!important}
  .vf-home .vf-price-strip>li>b,.vf-home .vf-price-strip>li>span{background:none;color:var(--vf-ink)}}
/* Round 4, from an independent look at all 66 screens. */
/* The phone menu's white panel: dark words again (the night-bar colour had made them pale). */
.top .vf-simple-nav .vf-nav-menu-panel a:not(.navcta):not(.btn),.top .vf-marketing-nav .vf-nav-menu-panel a:not(.navcta):not(.btn){color:var(--vf-ink-2);background:transparent}
.top .vf-simple-nav .vf-nav-menu-panel a:not(.navcta):not(.btn):hover,.top .vf-marketing-nav .vf-nav-menu-panel a:not(.navcta):not(.btn):hover{color:var(--vf-primary-hover);background:var(--vf-surface-2)}
.top .vf-simple-nav .vf-nav-menu-panel a.on:not(.navcta),.top .vf-simple-nav .vf-nav-menu-panel a[aria-current=page]:not(.navcta){color:var(--vf-primary-ink);background:var(--vf-primary-soft)}
/* The footer's wordmark in white, as in the bar. */
.vf-site-footer .vf-footer-top img[src^="/brand/wordmark"]{filter:brightness(0) invert(1)}
/* Headings: a little more air between words (the new face sets tighter than the old one). */
h1,h2,h3,h4{letter-spacing:-.018em}
.vf-experience h1,.vf-experience h2,.vf-detail h1,.vf-public-page main h1,.vf-public-page main h2{letter-spacing:-.02em}
.vf-experience .vf-hero-copy h1,.vf-public-page .vf-simple-hero h1,.vf-public-page .vf-pricing-header h1,.vf-public-page .vf-page-band h1,.vf-public-page .vf-contact-intro h1{letter-spacing:-.024em}
.vf-public-page .vf-cap-group-head h2,.vf-public-page .vf-plan-audience>h2,.vf-public-page .vf-simple>section>h2,.vf-public-page .vf-simple-cta h2,.vf-home .vf-final-cta h2{letter-spacing:-.022em}
.vf-app .vf-shell>main .vf-page-head h1{letter-spacing:-.022em}
.vf-public-page .vf-plan>.vf-plan-price,.vf-home .vf-price-strip>li>span{letter-spacing:-.03em}
/* Plan cards: no strip on top of the night head. */
.vf-public-page .vf-plan:before{display:none}
/* Help: room between "The scores" and its first heading. */
.vf-help-scores h2{margin-bottom:4px}
.vf-help-scores h3{margin:22px 0 6px}
.vf-help-scores h2+h3{margin-top:12px}
/* One button shape: pills for primary and secondary alike; a little room after a button. */
a.vf-primary,.btn.vf-primary,button.vf-primary{border-radius:999px}
.btn.ghost,.btn.secondary,.btn.quiet,button.secondary,button.quiet,a.secondary{border-radius:999px}
.btn+a:not(.btn){margin-left:10px}
/* Fewer lonely words at the ends of paragraphs. */
p,li,dd,figcaption{text-wrap:pretty}
/* Contact: the form is a white card on the night band, like every other form. */
.vf-public-page .vf-contact .vf-contact-card{background:var(--vf-surface);color:var(--vf-ink);border:1px solid var(--vf-line);box-shadow:0 30px 60px -30px rgba(0,0,0,.55)}
.vf-public-page main .vf-contact .vf-contact-card h2{color:var(--vf-ink)}
.vf-public-page .vf-contact .vf-contact-card p{color:var(--vf-muted)}
.vf-public-page .vf-contact .vf-contact-card label:not(.checkbox){color:var(--vf-ink-2)}
.vf-public-page .vf-contact .vf-contact-card input,.vf-public-page .vf-contact .vf-contact-card select,.vf-public-page .vf-contact .vf-contact-card textarea{background:var(--vf-surface);border:1px solid var(--vf-line-strong);color:var(--vf-ink)}
.vf-public-page .vf-contact .vf-contact-card input::placeholder,.vf-public-page .vf-contact .vf-contact-card textarea::placeholder{color:var(--vf-subtle)}
.vf-public-page .vf-contact .vf-contact-card button{background:var(--vf-primary);color:var(--vf-on-primary)}
.vf-public-page .vf-contact .vf-contact-card button:hover{background:var(--vf-primary-hover);color:var(--vf-on-primary)}
.vf-public-page .vf-contact .vf-contact-card [aria-invalid=true]{border-color:var(--vf-bad)}
.vf-public-page .vf-contact .vf-contact-card .vf-field-error{color:var(--vf-bad)}
.vf-public-page .vf-contact .vf-contact-card :focus-visible{outline-color:var(--vf-focus)}
/* Small labels in one colour: purple, never the pink that sits close to "Failed". */
.eyebrow,.vf-eyebrow,.vf-experience .vf-eyebrow,.vf-detail .vf-eyebrow{color:var(--vf-primary-ink)}
/* A warning in a night band keeps its amber look (the example's "Fictional data"). */
.vf-public-page .vf-simple-hero .notice,.vf-public-page .vf-page-band .notice{background:rgba(251,191,36,.12);border:1px solid rgba(251,191,36,.45);color:#fde68a}
.vf-public-page .vf-simple-hero .notice b,.vf-public-page .vf-simple-hero .notice strong,.vf-public-page .vf-page-band .notice b{color:#fef3c7}
/* Keyboard focus inside the night page bands and the contact section: the light ring. */
.vf-public-page .vf-simple-hero :focus-visible,.vf-public-page .vf-page-band :focus-visible,.vf-public-page .vf-pricing-header :focus-visible,
.vf-public-page .vf-contact-intro :focus-visible{outline-color:var(--vf-on-night-muted)}
/* Phones: a shorter band, so the form or the first card is on the first screen; a small corner glow. */
@media(max-width:700px){
  .vf-public-page .vf-simple-hero,.vf-public-page .vf-pricing-header,.vf-public-page .vf-page-band{padding:22px 0 32px;margin-bottom:28px}
  .vf-public-page .vf-contact{padding:22px 0 32px}
  .vf-public-page .vf-simple-hero h1,.vf-public-page .vf-pricing-header h1,.vf-public-page .vf-page-band h1,.vf-public-page .vf-contact-intro h1{font-size:34px;margin-bottom:12px}
  .vf-public-page .vf-simple-hero .dek,.vf-public-page .vf-pricing-header .dek,.vf-public-page .vf-page-band .dek,.vf-public-page .vf-simple-hero .vf-lead{font-size:16px}
  .vf-public-page .vf-simple-hero .vf-eyebrow,.vf-public-page .vf-simple-hero .eyebrow,.vf-public-page .vf-page-band .eyebrow,.vf-public-page .vf-page-band .vf-eyebrow{margin-bottom:14px}
  .vf-public-page .vf-simple-hero:before,.vf-public-page .vf-pricing-header:before,.vf-public-page .vf-page-band:before,.vf-public-page .vf-contact:before,.vf-experience .vf-hero-split:before{border-radius:0 0 24px 24px;background:radial-gradient(240px 240px at 100% 0%,rgba(139,92,246,.38) 0,transparent 70%),linear-gradient(160deg,var(--vf-chrome) 0%,var(--vf-chrome-2) 100%)}
}
/* The public pages' own button rule was more specific: one purple and one shape there too. */
.vf-public-page .btn.vf-primary,.vf-public-page a.vf-primary{border-radius:999px;background:var(--vf-primary)}
.vf-public-page .btn.vf-primary:hover,.vf-public-page a.vf-primary:hover{background:var(--vf-primary-hover)}
/* A table inside a card keeps square corners (the card has the rounding). */
.vf-app .card .table-wrap,.vf-app .vf-audit-library .table-wrap{border-radius:0}
/* Public presentation only. Workspace and report layouts keep their own styles. */
.vf-public-page{background:#f8f7f2;color:#211b31}
.vf-public-page .vf-simple-home{background:transparent}
.vf-public-page .vf-hero-split{padding-top:64px;gap:48px}
.vf-public-page .vf-hero-copy h1,.vf-service-hero h1{font-size:clamp(42px,5.4vw,78px);line-height:1.06;letter-spacing:-.045em;max-width:850px}
.vf-public-page .vf-hero-copy h1 em,.vf-service-hero h1 em{color:#5936a8;font-style:normal}
.vf-public-page .vf-hero-copy .vf-lead{font-size:19px;line-height:1.65;max-width:620px}
.vf-public-page .vf-hero-product{align-self:center;transform:rotate(1deg)}
.vf-public-page .vf-try{background:#fff;border:1px solid #dcd6e5;border-radius:12px;padding:20px;margin-top:28px;box-shadow:none}
.vf-public-page .vf-fine-print{font-size:13px;line-height:1.5}
.vf-public-page .vf-simple-hero{padding-top:56px}
.vf-public-page .vf-site-footer{margin-top:64px}
.vf-service-site{max-width:1200px;margin:auto;padding:0 24px}
.vf-service-hero{padding:72px 0 48px;border-bottom:1px solid #dcd6e5}
.vf-service-hero .vf-lead{max-width:740px;font-size:21px;line-height:1.6}
.vf-service-actions{display:flex;align-items:center;flex-wrap:wrap;gap:22px;margin:26px 0}
.vf-service-actions .btn,.vf-service-close .btn{border-radius:8px;background:#40236c;color:white;padding:14px 22px;min-height:48px;text-decoration:none}
.vf-service-actions>a:not(.btn){font-weight:650;color:#40236c;text-underline-offset:5px}
.vf-service-packages,.vf-service-catalogue,.vf-service-process{padding:56px 0}
.vf-simple-home>.vf-service-packages{max-width:1200px;margin:auto;padding:56px 24px}
.vf-service-heading{display:grid;grid-template-columns:1.2fr 1fr;align-items:start;gap:48px;margin-bottom:28px}
.vf-service-heading h2,.vf-service-process h2,.vf-service-agencies h2,.vf-service-close h2{font-size:clamp(28px,3.3vw,44px);line-height:1.15;letter-spacing:-.025em;margin:8px 0 18px}
.vf-service-heading p{line-height:1.65;margin-top:0}
.vf-package-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.vf-package{display:flex;flex-direction:column;align-items:start;border:1px solid #dcd6e5;background:white;border-radius:14px;padding:26px;scroll-margin-top:100px}
.vf-package-number{color:#6746a1;font:600 15px/1.3 monospace;padding-bottom:26px}
.vf-package h3{font-size:21px;line-height:1.3;margin:0 0 12px}
.vf-package-headline{font-weight:650;color:#40236c}
.vf-package p,.vf-package dd{font-size:16px;line-height:1.65;margin:0 0 18px}
.vf-package dt{font-size:13px;font-weight:700;margin-bottom:4px;text-transform:uppercase;letter-spacing:.05em}
.vf-package dd{margin-left:0}.vf-package dl{margin:0}
.vf-package>a{margin-top:auto;font-weight:650;color:#4f278d;text-underline-offset:5px;padding-top:16px}
.vf-service-process{border-top:1px solid #dcd6e5;border-bottom:1px solid #dcd6e5}
.vf-service-process ol{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px;list-style:none;padding:0;counter-reset:step}
.vf-service-process li{counter-increment:step}.vf-service-process li:before{content:'0' counter(step);display:block;font:600 15px monospace;color:#6746a1;margin:12px 0 22px}
.vf-service-process b{font-size:21px}.vf-service-process p{line-height:1.6}
.vf-service-group{border-top:1px solid #dcd6e5;padding:10px 0}
.vf-service-group summary{cursor:pointer;padding:20px 0;font-size:22px;font-weight:650}
.vf-service-group summary span{font-size:14px;font-weight:400;margin-left:14px}
.vf-service-group ul{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:0 36px}
.vf-service-group li{padding:18px 0;border-top:1px solid #e7e2ec}.vf-service-group h3{font-size:18px;margin:0 0 8px}.vf-service-group p{font-size:16px;line-height:1.6;margin:0}
.vf-service-note{font-size:14px;line-height:1.6;color:#5b5366}
.vf-service-agencies{padding:40px;background:#eee9f7;border-radius:14px}.vf-service-agencies p{max-width:780px;line-height:1.7}.vf-service-agencies a{display:inline-block;margin:8px 24px 0 0}
.vf-service-close{padding:64px 0;max-width:780px}.vf-service-close>p{line-height:1.7}.vf-service-close .btn{display:inline-block;margin:12px 0}
.vf-public-page a:focus-visible,.vf-public-page summary:focus-visible{outline:3px solid #6b39bc;outline-offset:5px}
@media(max-width:1000px){.vf-public-page .vf-nav-links{gap:12px}.vf-public-page .vf-nav-signin{display:none}.vf-service-heading{gap:24px}}
@media(max-width:760px){.vf-service-site{padding:0 20px}.vf-service-hero{padding:36px 0}.vf-service-heading,.vf-package-grid,.vf-service-group ul{grid-template-columns:1fr}.vf-service-heading{gap:8px}.vf-service-process ol{grid-template-columns:1fr 1fr}.vf-service-packages,.vf-service-catalogue,.vf-service-process{padding:36px 0}.vf-service-agencies{padding:24px}.vf-service-group summary{font-size:19px}.vf-service-group summary span{display:block;margin:8px 0 0}.vf-public-page .vf-hero-product{transform:none}.vf-service-actions{gap:16px}.vf-package-number{padding-bottom:16px}}
@media(prefers-reduced-motion:reduce){.vf-public-page *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
/* Applied after the legacy brand sheet so the new public palette stays consistent. */
.vf-public-page{--vf-bg:#f8f7f2}
.vf-public-page .vf-experience .vf-hero-split:before{background:none;display:none}
.vf-public-page .vf-experience .vf-hero-copy,.vf-public-page .vf-experience .vf-hero-copy h1,.vf-public-page .vf-experience .vf-hero-copy p{color:#211b31}
.vf-public-page .vf-experience .vf-hero-copy .vf-lead{color:#554d61}
.vf-public-page .vf-experience .vf-hero-copy h1 em{background:none;color:#5936a8;-webkit-text-fill-color:currentColor}
.vf-public-page .vf-experience .vf-hero-copy>.vf-eyebrow{background:#eee9f7;color:#40236c;border:0;padding:7px 12px}
.vf-public-page .vf-hero-copy .vf-fine-print,.vf-public-page .vf-try ul.vf-fine-print li{color:#554d61}
.vf-public-page .vf-hero-copy .vf-fine-print a,.vf-public-page .vf-hero-copy .vf-hero-links a,.vf-public-page .vf-hero-copy>p a{color:#5936a8}
.vf-public-page .vf-report-details{margin-top:24px;border-top:1px solid #dcd6e5;padding-top:18px}
.vf-public-page .vf-report-details summary{cursor:pointer;font-weight:650;color:#40236c}
@media(max-width:760px){.vf-public-page .vf-experience .vf-hero-split{padding:32px 0}.vf-public-page .vf-hero-copy h1{font-size:42px}.vf-public-page .vf-hero-copy .vf-lead{font-size:18px}}
.vf-public-page .vf-experience .vf-hero-copy>p:not(.vf-eyebrow):not(.vf-hero-links){color:#554d61}
.vf-public-page .vf-experience .vf-try label{color:#554d61}

.vf-public-page .vf-hero-product{transform:none}
.vf-divisions{background:#eee9f7;border:1px solid #dcd6e5;border-radius:16px;padding:12px 28px}
.vf-divisions ul{list-style:none;padding:0;margin:0}
.vf-divisions li{padding:24px 0;border-bottom:1px solid #d2c9e2}
.vf-divisions li:last-child{border-bottom:0}
.vf-divisions a{font-size:22px;font-weight:700;line-height:1.35;color:#40236c;text-underline-offset:5px}
.vf-divisions p{font-size:16px;line-height:1.6;color:#554d61;margin:12px 0 8px}
.vf-divisions span{font-size:13px;color:#554d61}
.vf-software-entry{max-width:900px;margin:48px auto;padding:32px 24px;border-top:1px solid #dcd6e5}
.vf-software-entry h2{font-size:32px;line-height:1.2}
.vf-service-group{scroll-margin-top:100px}
.vf-public-page .vf-software-entry .vf-try label,.vf-public-page .vf-software-entry .vf-fine-print li{color:#554d61}

/* The services headline needs room for three ideas, not a product demo. */
@media(min-width:961px){
  .vf-public-page .vf-simple-home .vf-hero-split{grid-template-columns:1.15fr .85fr;gap:40px;padding-block:48px}
  .vf-public-page .vf-simple-home .vf-hero-copy h1{font-size:clamp(48px,4.2vw,58px);line-height:1.08;letter-spacing:-.035em}
  .vf-public-page .vf-simple-home .vf-hero-copy .vf-lead{font-size:18px;line-height:1.65;max-width:560px}
}

/* Full Funnel launch preview: one offer, no external assets or script dependency. */
.vf-launch-components {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;list-style:none;padding:0}
.vf-launch-components li {border:1px solid var(--line,#d7d1df);border-radius:16px;padding:1.25rem;background:var(--card,#fff)}
.vf-launch-components li:last-child {grid-column:1/-1}
.vf-launch .btn {white-space:normal;max-width:100%}
.vf-contact input,.vf-contact textarea,.vf-contact select {max-width:100%;box-sizing:border-box}
.vf-launch a:focus-visible,.vf-contact :is(input,select,textarea,button,a):focus-visible {outline:3px solid #6d28d9;outline-offset:3px}
@media(max-width:650px){.vf-launch-components{grid-template-columns:minmax(0,1fr)}.vf-launch-components li:last-child{grid-column:auto}}
.vf-launch .vf-service-process ol{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:650px){.vf-launch .vf-service-process ol{grid-template-columns:minmax(0,1fr)}}
