/* Virginia contractor site additions on top of base.css + store.css */
.va-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
.va-find{display:flex;gap:.6rem;max-width:640px;margin:1.6rem 0 0;flex-wrap:wrap}
.va-find input{flex:1 1 260px;min-width:0;padding:.85rem 1rem;border-radius:12px;border:1px solid var(--line,#ddd);font:inherit;font-size:1rem;background:#fff}
.hero--class{padding-bottom:2.5rem}
.hero--class .crumb{margin:0 0 1rem;color:var(--muted)}
.hero--class .crumb a{color:inherit}
.hero--class .btn{margin-top:1.4rem}
.va-group{padding:3rem 0 1rem}
.va-group:nth-of-type(even){background:#fff}
.va-list li a{color:inherit;text-decoration:none}
.va-list li a:hover b{color:var(--accent)}
.va-list li span{color:var(--muted);font-size:.85rem}
.va-note{font-size:.9rem;color:var(--muted);max-width:760px;margin:1rem auto 0}
.va-facts{margin:1rem 0 0;padding-left:1.2rem}
.va-facts li{margin:.35rem 0}
.sources{padding:2rem 0 2.5rem}
.sources h2{font-size:1.2rem;margin:0 0 .6rem}
.sources ul{margin:0;padding-left:1.2rem}
.sources li{margin:.25rem 0}
.sources .upd{font-size:.85rem;color:var(--muted);margin:.8rem 0 0}
.sg .pc-name a:hover{text-decoration:underline}
.pdp .desc h3{font-size:1.05rem;margin:1.2rem 0 .4rem}
.compare td a{font-weight:600}
@media (max-width:720px){.compare table{font-size:.85rem}.va-find .btn{width:100%}}
.nav .brand{white-space:nowrap}
@media (max-width:420px){.nav .brand{font-size:.8rem!important;max-width:60vw}}
.brand-img{height:54px}@media (max-width:720px){.brand-img{height:42px}}.site-footer .brand-img{height:46px}
/* license lists on the home page. Five styles, picked by "licenseList" in site-config.json (html[data-list]). */
.va-lics{margin:1.75rem 0 0;padding:0;list-style:none}
.va-lh{display:none}
.va-lic{text-decoration:none;color:var(--fg)}
.va-lic b{font-family:var(--font-display);font-weight:700;line-height:1.3}
.va-n,.va-p{color:var(--muted)}

/* 1 tiles */
html:not([data-list]) .va-lics,[data-list="1"] .va-lics{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:.75rem}
html:not([data-list]) .va-lic,[data-list="1"] .va-lic{display:flex;flex-direction:column;gap:.3rem;height:100%;padding:1rem 2.4rem 1rem 1.1rem;background:var(--card,#fff);border:1px solid var(--line);border-radius:12px;position:relative;transition:border-color .15s ease}
html:not([data-list]) .va-lic b,[data-list="1"] .va-lic b{font-size:1.02rem}
html:not([data-list]) .va-n,[data-list="1"] .va-n,html:not([data-list]) .va-p,[data-list="1"] .va-p{display:inline;font-size:.88rem}
html:not([data-list]) .va-lic span,[data-list="1"] .va-lic span{display:inline}
[data-list="1"] .va-lic,html:not([data-list]) .va-lic{flex-flow:row wrap;align-content:flex-start;column-gap:.35rem}
[data-list="1"] .va-lic b,html:not([data-list]) .va-lic b{flex:1 0 100%}
[data-list="1"] .va-n::after,html:not([data-list]) .va-n::after{content:","}
html:not([data-list]) .va-lic::after,[data-list="1"] .va-lic::after{content:"";position:absolute;right:1.05rem;top:50%;width:.55rem;height:.55rem;border-top:2px solid currentColor;border-right:2px solid currentColor;transform:translateY(-50%) rotate(45deg);opacity:.35}
html:not([data-list]) .va-lic:hover,[data-list="1"] .va-lic:hover{border-color:var(--accent)}
html:not([data-list]) .va-lic:hover b,[data-list="1"] .va-lic:hover b{color:var(--accent)}

/* 2 price list: name and count on the left, a dotted leader, the price on the right */
[data-list="2"] .va-lics{columns:2 420px;column-gap:3rem}
[data-list="2"] .va-lics li{break-inside:avoid}
[data-list="2"] .va-lic{display:grid;grid-template-columns:auto 1fr auto;grid-template-areas:"name dots price" "count count count";align-items:baseline;column-gap:.6rem;padding:.75rem 0;border-bottom:1px solid var(--line)}
[data-list="2"] .va-lic b{grid-area:name;font-size:1rem}
[data-list="2"] .va-lic::before{content:"";grid-area:dots;border-bottom:2px dotted var(--line);transform:translateY(-.3em)}
[data-list="2"] .va-p{grid-area:price;font-family:var(--font-display);font-weight:700;color:var(--accent);white-space:nowrap}
[data-list="2"] .va-n{grid-area:count;font-size:.85rem}
[data-list="2"] .va-lic:hover b{color:var(--accent)}

/* 3 price-first cards: the starting price leads, the name follows */
[data-list="3"] .va-lics{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:1rem}
[data-list="3"] .va-lic{display:flex;flex-direction:column;height:100%;padding:1.2rem 1.2rem 1.1rem;background:var(--card,#fff);border-radius:16px;border-top:5px solid var(--accent);box-shadow:0 1px 0 var(--line)}
[data-list="3"] .va-p{order:-1;font-family:var(--font-display);font-weight:800;font-size:1.7rem;color:var(--fg);letter-spacing:-.02em;line-height:1}
[data-list="3"] .va-p small{display:block;font-family:var(--font-body);font-size:.78rem;font-weight:500;color:var(--muted);letter-spacing:0;margin-bottom:.3rem}
[data-list="3"] .va-lic b{font-size:1rem;margin:.6rem 0 .9rem;flex:1}
[data-list="3"] .va-n{align-self:flex-start;font-size:.8rem;font-weight:600;color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent);padding:.25rem .65rem;border-radius:999px}
[data-list="3"] .va-lic:hover{box-shadow:0 0 0 2px var(--accent)}

/* 4 table: one row per license, with column headings */
[data-list="4"] .va-lics{background:var(--card,#fff);border:1px solid var(--line);border-radius:12px;overflow:hidden}
[data-list="4"] .va-lh,[data-list="4"] .va-lic{display:grid;grid-template-columns:1fr 9rem 9rem;align-items:center;padding:.85rem 1.25rem;gap:1rem}
[data-list="4"] .va-lh{font-size:.82rem;font-weight:700;color:var(--muted);background:color-mix(in srgb,var(--accent) 8%,transparent);border-bottom:1px solid var(--line)}
[data-list="4"] .va-lh span:not(:first-child),[data-list="4"] .va-n,[data-list="4"] .va-p{text-align:right}
[data-list="4"] .va-lics li+li .va-lic{border-top:1px solid var(--line)}
[data-list="4"] .va-lics li:nth-child(odd) .va-lic{background:color-mix(in srgb,var(--line) 25%,transparent)}
[data-list="4"] .va-lic b{font-size:.98rem}
[data-list="4"] .va-p{font-weight:700;color:var(--fg)}
[data-list="4"] .va-lic:hover{background:color-mix(in srgb,var(--accent) 10%,transparent)!important}
[data-list="4"] .va-lic:hover b{color:var(--accent)}
@media (max-width:640px){[data-list="4"] .va-lh{display:none!important}[data-list="4"] .va-lic{grid-template-columns:1fr auto;grid-template-areas:"name price" "count count";row-gap:.15rem}[data-list="4"] .va-lic b{grid-area:name}[data-list="4"] .va-p{grid-area:price}[data-list="4"] .va-n{grid-area:count;text-align:left;font-size:.85rem}}

/* 5 chips: compact pills that wrap, best for scanning many names */
[data-list="5"] .va-lics{display:flex;flex-wrap:wrap;gap:.55rem}
[data-list="5"] .va-lic{display:inline-flex;align-items:center;gap:.6rem;padding:.6rem .7rem .6rem 1rem;background:var(--card,#fff);border:1.5px solid var(--line);border-radius:999px}
[data-list="5"] .va-lic b{font-size:.95rem;font-weight:600}
[data-list="5"] .va-n{display:none}
[data-list="5"] .va-p{font-size:.8rem;font-weight:700;color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent);padding:.2rem .6rem;border-radius:999px;white-space:nowrap}
[data-list="5"] .va-lic:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 6%,var(--card,#fff))}
.va-p small{font-size:inherit;font-weight:inherit}
