figure.est-fig{margin:var(--space-md) 0;padding:var(--space-xs) 0;border-top:2px solid var(--color-ink);color:var(--color-ink-2);max-width:48rem}figure.est-fig p.est-heading{margin:0 0 var(--space-3xs);color:var(--color-ink);font-family:var(--font-display);font-size:var(--text-lg);font-weight:500;line-height:1.3}figure.est-fig p.est-takeaway{margin:0 0 var(--space-xs);font-size:var(--text-sm);line-height:1.5}figure.est-fig .est-plot{position:relative}figure.est-fig .est-track{position:relative;height:1.4rem;border-bottom:1px solid var(--color-rule)}figure.est-fig .est-track:before{content:"";position:absolute;left:0;bottom:-4px;height:7px;border-left:1px solid var(--color-ink-3)}figure.est-fig .est-line{position:absolute;top:50%;height:2px;background:var(--color-ink-2);transform:translateY(-50%)}figure.est-fig .est-tick{position:absolute;top:15%;bottom:15%;width:2px;margin-left:-1px;background:var(--color-ink)}figure.est-fig ol.est-rows{margin:0;padding:0;list-style:none}figure.est-fig li.est-row,figure.est-fig .est-axis{display:grid;grid-template-columns:9.5rem minmax(0,1fr) 7.5rem;align-items:center;-moz-column-gap:var(--space-sm);column-gap:var(--space-sm)}figure.est-fig li.est-row{margin:0;padding:.4rem 0;border-top:var(--rule-hairline)}figure.est-fig li.est-row::marker{content:""}figure.est-fig .est-name{color:var(--color-ink);font-size:var(--text-sm);line-height:1.3}figure.est-fig .est-n,figure.est-fig .est-end{color:var(--color-ink);font-family:var(--font-mono);font-size:var(--text-xs);font-variant-numeric:tabular-nums;line-height:1.35}figure.est-fig .est-n{display:block;color:var(--color-ink-2)}figure.est-fig .est-axis{margin-top:.1rem}figure.est-fig .est-ticks{position:relative;grid-column:2;height:1.3rem;border-top:1px solid var(--color-rule)}figure.est-fig .est-ticks span{position:absolute;top:.2rem;color:var(--color-ink-2);font-family:var(--font-mono);font-size:var(--text-xs);font-variant-numeric:tabular-nums}figure.est-fig .est-ticks i{position:absolute;top:0;height:4px;border-left:1px solid var(--color-ink-3)}figure.est-fig .est-ticks .est-mid{transform:translate(-50%)}figure.est-fig .est-ticks .est-last{transform:translate(-100%)}figure.est-fig.est-fig.est-fig figcaption{max-width:70ch;margin-top:var(--space-xs);color:var(--color-ink-2);font-family:var(--font-body);font-size:var(--text-xs);line-height:1.45}figure.est-fig.est-bands{max-width:none;margin:0;padding:0}figure.est-fig.est-bands .est-name{font-family:var(--font-mono);font-size:var(--text-xs);font-variant-numeric:tabular-nums}figure.est-fig .est-bar{display:flex;align-items:stretch;height:1.1rem;border-left:1px solid var(--color-ink-3)}figure.est-fig .est-seg{box-sizing:border-box;flex:none;min-width:2px}figure.est-fig .est-seg.est-solid{background:var(--color-ink)}figure.est-fig .est-seg.est-hollow{border:1px solid var(--color-ink);background:var(--color-paper)}figure.est-fig.est-bands li.est-row:first-child{border-top:0}figure.est-fig .est-median{color:var(--color-ink-2)}@media (min-width: 641px){figure.est-fig.est-bands li.est-row{grid-template-columns:6.5rem minmax(0,1fr) 9.5rem}}@media (max-width: 640px){figure.est-fig p.est-heading{font-size:var(--text-base)}figure.est-fig li.est-row{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"name end" "track track";row-gap:.3rem}figure.est-fig .est-name{grid-area:name}figure.est-fig .est-end{grid-area:end;text-align:right}figure.est-fig li.est-row .est-track,figure.est-fig li.est-row .est-bar{grid-area:track}figure.est-fig .est-axis{grid-template-columns:minmax(0,1fr)}figure.est-fig .est-ticks{grid-column:1}}.ec{--ec-paper:var(--color-paper);--ec-ink:var(--color-ink);--ec-muted:var(--color-ink-2);--ec-rule:var(--color-rule);--ec-accent:var(--color-accent);--ec-font-label:var(--font-body);--ec-font-num:var(--font-mono);container-type:inline-size;margin:1.75em 0;color:var(--ec-ink);font-family:var(--ec-font-label);line-height:1.3}.ec figcaption{display:flex;flex-direction:column;gap:.2em;margin:.9em 0 0}.ec figcaption:first-child{margin:0 0 .9em}.ec-title{font-size:max(11px,1em);font-weight:600;line-height:1.3}.ec-note{font-size:max(11px,.85em);color:var(--ec-muted)}.ec-plot{--ec-pl:.45em;--ec-pr:.45em;display:grid;grid-template-columns:fit-content(34%) minmax(0,1fr) auto;-moz-column-gap:1em;column-gap:1em;font-size:max(11px,.9em)}.ec-row,.ec-axis,.ec-annot{grid-column:1/-1;display:grid;grid-template-columns:30% 1fr 6em;grid-template-columns:subgrid;align-items:center}.ec-row{min-height:2em}.ec-label{grid-column:1;padding-block:.25em;overflow-wrap:anywhere}.ec-track{grid-column:2;position:relative;align-self:stretch;min-height:1.6em}.ec-val{grid-column:3;text-align:right;white-space:nowrap;font-family:var(--ec-font-num);font-variant-numeric:oldstyle-nums tabular-nums}.ec-hl .ec-label,.ec-hl .ec-val{font-weight:600}.ec-in{position:absolute;top:0;bottom:0;left:var(--ec-pl);right:var(--ec-pr);color:var(--ec-muted)}.ec-hl .ec-in,.ec-hl .ec-units{color:var(--ec-accent)}.ec-in>span{position:absolute;left:var(--x)}.ec-seg{top:50%;width:var(--w);height:2px;margin-top:-1px;background:currentColor}.ec-hl .ec-seg{height:4px;margin-top:-2px}.ec-pt{top:50%;width:.6em;height:.6em;margin:-.3em 0 0 -.3em;border-radius:50%;background:currentColor}.ec-hl .ec-pt{width:.8em;height:.8em;margin:-.4em 0 0 -.4em}.ec-mid{top:50%;width:2px;height:1.1em;margin:-.55em 0 0 -1px;background:var(--ec-ink)}.ec-rect{top:50%;width:var(--w);height:.8em;margin-top:-.4em;background:currentColor}.ec-span{top:50%;width:var(--w);height:.6em;margin-top:-.3em;background:currentColor}.ec-hl .ec-span{height:.8em;margin-top:-.4em}.ec-arrow{top:50%;width:1.1em;height:0;margin-top:-1px;border-top:2px dotted currentColor}.ec-arrow:after{content:"";position:absolute;left:100%;top:calc(-1px - .32em);border-left:.55em solid currentColor;border-top:.32em solid transparent;border-bottom:.32em solid transparent}.ec-arrow-l{margin-left:-1.1em}.ec-arrow-l:after{left:auto;right:100%;border-left:0;border-right:.55em solid currentColor}.ec-rl{top:0;bottom:0;width:1px;margin-left:-.5px;background:var(--ec-rule)}.ec-in>.ec-na{left:0;top:50%;transform:translateY(-50%);font-size:max(11px,.8em);font-style:italic;color:var(--ec-muted)}.ec-units{display:flex;flex-wrap:wrap;align-content:center;gap:.2em;height:100%;padding-block:.35em;box-sizing:border-box;color:var(--ec-muted)}.ec-sq{display:block;width:.62em;height:.62em;box-sizing:border-box;border:1.5px solid currentColor;background:var(--ec-paper)}.ec-sq-on{background:currentColor}.ec-sq:nth-child(5n){margin-right:.3em}.ec-units>.ec-na{font-size:max(11px,.8em);font-style:italic}.ec-axis{min-height:2em;align-items:start}.ec-ticks{grid-column:2;position:relative;height:1.9em}.ec-frame{top:0;width:var(--w);height:1px;background:var(--ec-rule)}.ec-tick{top:0;padding-top:.45em;transform:translate(-50%);white-space:nowrap;font-family:var(--ec-font-num);font-variant-numeric:oldstyle-nums tabular-nums;font-size:max(11px,.8em);color:var(--ec-muted)}.ec-tick:before{content:"";position:absolute;top:0;left:50%;width:1px;height:.3em;background:var(--ec-rule)}.ec-tick-s{transform:none}.ec-tick-s:before{left:0}.ec-tick-e{transform:translate(-100%)}.ec-tick-e:before{left:auto;right:0}.ec-axnote{grid-column:3;padding-top:.45em;text-align:right;font-size:max(11px,.8em);font-style:italic;color:var(--ec-muted)}.ec-atrack{grid-column:2;position:relative;height:calc(var(--lanes) * 1.5em + .25em)}.ec-al{bottom:calc(var(--lane) * 1.5em + .25em);height:1.5em;padding-left:.35em;white-space:nowrap}.ec-al:before{content:"";position:absolute;left:0;top:0;width:1px;height:calc(var(--lane) * 1.5em + 1.75em);background:var(--ec-rule)}.ec-al>span{display:block;line-height:1.5em;font-size:max(11px,.8em);font-style:italic;color:var(--ec-muted)}.ec-al-e{transform:translate(-100%);padding-left:0;padding-right:.35em}.ec-al-e:before{left:auto;right:0}@container (max-width:30rem){.ec-plot{grid-template-columns:minmax(0,1fr) auto}.ec-row{padding-top:.75em;min-height:0}.ec-label{grid-column:1;grid-row:1;padding-block:0}.ec-val{grid-column:2;grid-row:1}.ec-track{grid-column:1/-1;grid-row:2;min-height:1.3em}.ec-ticks,.ec-atrack{grid-column:1/-1}.ec-axnote{grid-column:1/-1;padding-top:0}}.article-body .prose figure.ec .ec-note{font-family:var(--font-body)}.ec-xy-plot{position:relative;height:15rem;margin:1.25em 9.5em 3.6em 1.9em;font-size:max(11px,.85em)}.ec-xy-plot svg{display:block;width:100%;height:100%;overflow:visible}.ec-xy-plot line,.ec-xy-plot polyline{fill:none;vector-effect:non-scaling-stroke}.ec-xy-plot .ec-xy-axis{stroke:var(--color-rule);stroke-width:1}.ec-xy-plot .ec-xy-line{stroke:var(--color-ink-2);stroke-width:1.5}.ec-xy-plot .ec-xy-line.ec-xy-ink{stroke:var(--color-ink)}.ec-xy-plot .ec-xy-line.ec-xy-hl{stroke:var(--color-accent);stroke-width:3}.ec-xy-over{position:absolute;inset:0}.ec-xy-over>span{position:absolute;left:var(--x);top:var(--y);line-height:1.2;white-space:nowrap}.ec-xy-over>.ec-xy-pt{width:.45em;height:.45em;margin:-.225em 0 0 -.225em;border-radius:50%;background:var(--color-ink-2)}.ec-xy-over>.ec-xy-pt.ec-xy-ink{background:var(--color-ink)}.ec-xy-over>.ec-xy-pt.ec-xy-hl{width:.6em;height:.6em;margin:-.3em 0 0 -.3em;background:var(--color-accent)}.ec-xy-over>.ec-xy-end{width:8.8em;transform:translate(.7em,-50%);white-space:normal;color:var(--color-ink)}.ec-xy-over>.ec-xy-end.ec-xy-hl{font-weight:600}.ec-xy-over>.ec-xy-end.ec-xy-dim{color:var(--color-ink-2)}.ec-xy-num{font-family:var(--font-mono);font-variant-numeric:tabular-nums;white-space:nowrap}.ec-xy-over>.ec-xy-yt,.ec-xy-over>.ec-xy-xt{font-family:var(--font-mono);font-variant-numeric:tabular-nums;font-size:max(11px,.85em);color:var(--color-ink-2)}.ec-xy-over>.ec-xy-yt{transform:translate(calc(-100% - .5em),-50%)}.ec-xy-over>.ec-xy-yl{transform:translate(.4em,-50%);font-style:italic;color:var(--color-ink-2)}.ec-xy-over>.ec-xy-xt{padding-top:.5em;transform:translate(-50%)}.ec-xy-over>.ec-xy-xt.ec-xy-s{transform:none}.ec-xy-over>.ec-xy-xl{top:calc(100% + 2.1em);left:auto;right:0;font-style:italic;color:var(--color-ink-2)}@container (max-width:30rem){.ec-xy-plot{height:13rem;margin-right:7.6em}.ec-xy-over>.ec-xy-end{width:7em;transform:translate(.5em,-50%)}.ec-xy-over>.ec-xy-thin{display:none}}.article-body .prose .article-table{margin:var(--space-md) 0;max-width:100%;overflow-x:clip}.article-body .prose .article-table table{width:100%;table-layout:fixed;border-collapse:collapse;margin:0;border:0;box-shadow:none}.article-body .prose .article-table caption{caption-side:top;text-align:left;color:var(--color-ink);font-weight:600;margin-bottom:var(--space-sm)}.article-body .prose .article-table thead{background:var(--color-paper-2);color:var(--color-ink)}.article-body .prose .article-table thead tr{border-bottom:2px solid var(--color-ink)}.article-body .prose .article-table th,.article-body .prose .article-table td,.article-body .prose .article-table tbody th[scope=row]{padding:var(--space-sm) var(--space-xs);font-size:var(--text-sm);text-align:left;vertical-align:top;overflow-wrap:anywhere;min-width:0}.article-body .prose .article-table th{color:var(--color-ink);font-weight:600;text-transform:none;letter-spacing:0}.article-body .prose .article-table td{color:var(--color-ink-2);font-weight:400;background:transparent}.article-body .prose .article-table tbody th[scope=row]{color:var(--color-ink);font-weight:600}.article-body .prose .article-table tbody tr{border-bottom:var(--rule-hairline)}.article-body .prose .article-table td[align=right]{text-align:right;font-family:var(--font-mono);color:var(--color-ink)}.article-body .prose .article-table td[align=center]{text-align:center}@media (max-width: 640px){.article-body .prose .article-table{overflow-x:visible}.article-body .prose .article-table table,.article-body .prose .article-table caption,.article-body .prose .article-table tbody,.article-body .prose .article-table tr,.article-body .prose .article-table th,.article-body .prose .article-table td{display:block;width:100%}.article-body .prose .article-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.article-body .prose .article-table tbody tr{padding:var(--space-sm) 0}.article-body .prose .article-table td[data-label]:before{content:attr(data-label);display:block;font-weight:600;color:var(--color-ink);margin-bottom:var(--space-3xs)}.article-body .prose .article-table td[align=right],.article-body .prose .article-table th[align=right],.article-body .prose .article-table td[align=center],.article-body .prose .article-table th[align=center]{text-align:left}}@media (min-width: 641px){.article-body .prose .article-table--crosswalk th:nth-child(1){width:16%}.article-body .prose .article-table--crosswalk th:nth-child(2){width:20%}.article-body .prose .article-table--crosswalk th:nth-child(3){width:8%}.article-body .prose .article-table--crosswalk th:nth-child(4){width:12%}.article-body .prose .article-table--crosswalk th:nth-child(5){width:15%}.article-body .prose .article-table--crosswalk th:nth-child(6){width:29%}.article-body .prose .article-table--crosswalk-breach th:nth-child(1){width:16%}.article-body .prose .article-table--crosswalk-breach th:nth-child(2){width:21%}.article-body .prose .article-table--crosswalk-breach th:nth-child(3){width:12%}.article-body .prose .article-table--crosswalk-breach th:nth-child(4){width:15%}.article-body .prose .article-table--crosswalk-breach th:nth-child(5){width:36%}}.article-body .prose figure.pricing-chart{max-width:720px;margin:var(--space-lg) 0;color:var(--color-ink-2)}.article-body .prose .pricing-chart figcaption{margin:0 0 var(--space-2xs);color:var(--color-ink);font-family:var(--font-display);font-size:var(--text-lg);line-height:1.3}.article-body .prose .pricing-chart .pricing-chart-key{margin:var(--space-2xs) 0;font-size:var(--text-sm)}.article-body .prose .pricing-chart-list{margin:var(--space-sm) 0 var(--space-2xs);padding:0;list-style:none}.article-body .prose .pricing-chart-list>li::marker{content:""}.article-body .prose .pricing-chart-row{margin:var(--space-xs) 0;padding:0}.article-body .prose .pricing-chart-label{display:flex;justify-content:space-between;align-items:baseline;gap:var(--space-sm);font-size:var(--text-sm);line-height:1.4}.article-body .prose .pricing-chart-label strong{color:var(--color-ink)}.article-body .prose .pricing-chart-label>span,.article-body .prose .pricing-chart-axis,.article-body .prose .pricing-chart-components span{color:var(--color-ink);font-family:var(--font-mono);font-size:var(--text-xs);font-variant-numeric:tabular-nums}.article-body .prose .pricing-chart-plot{display:block;width:100%;height:var(--space-md)}.article-body .prose .pricing-chart-axis{display:flex;justify-content:space-between;padding-top:var(--space-3xs);border-top:var(--rule-hairline);color:var(--color-ink-2)}.article-body .prose .pricing-chart .pricing-chart-source,.article-body .prose .pricing-chart .pricing-chart-scope{margin:var(--space-2xs) 0;color:var(--color-ink-2);font-size:var(--text-xs)}.article-body .prose .pricing-chart-platform{fill:var(--color-ink-2)}.article-body .prose .pricing-chart-framework{fill:var(--color-paper);stroke:var(--color-ink-2);stroke-width:1.5}.article-body .prose .pricing-chart .pricing-chart-components{margin:0;font-size:var(--text-sm)}.article-body .prose .pricing-packages-chart .pricing-chart-plot{height:var(--space-sm)}.article-body .prose .pricing-packages-chart .pricing-chart-scope{margin:0;line-height:1.4}@media (max-width: 540px){.article-body .prose .pricing-chart-label{flex-direction:column;align-items:flex-start;gap:var(--space-3xs)}.article-body .prose .pricing-packages-chart .pricing-chart-label{flex-direction:row;align-items:baseline;gap:var(--space-2xs)}}.prose figure.audit-viz{max-width:720px;margin:var(--space-xl) 0;border-top:2px solid var(--color-ink)}.prose .audit-viz__row{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.5fr);gap:var(--space-md);padding:var(--space-sm) 0;border-bottom:1px solid var(--color-rule)}.prose .audit-viz__label{color:var(--color-ink);font-family:var(--font-body);font-weight:600}.prose .audit-viz__label span{display:block;margin-top:var(--space-2xs);color:var(--color-ink-2);font-size:var(--text-xs);font-weight:400}.prose figure.audit-viz figcaption .src{color:var(--color-ink-2)}.prose .audit-viz__detail p{margin:0}.prose .audit-viz__detail p+p{margin-top:var(--space-xs)}@media (max-width: 560px){.prose .audit-viz__row{grid-template-columns:minmax(0,1fr);gap:var(--space-xs)}}.prose .vanta-alternative-comparison{margin:0 0 var(--space-xl)}.prose .vanta-alternative-comparison h2{margin:0 0 var(--space-xs);color:var(--color-ink);font-family:var(--font-display);font-size:var(--text-h2);font-weight:500;letter-spacing:-.02em}.prose .vanta-alternative-table-wrap{max-width:100%;margin-top:var(--space-md);overflow-x:clip}.prose .vanta-alternative-comparison .comparison-note{margin:var(--space-xs) 0 0;color:var(--color-ink-3);font-size:var(--text-xs)}.prose .vanta-alternative-comparison small{display:block;margin-top:var(--space-2xs);color:var(--color-ink-3);font-family:var(--font-body);font-size:.6875rem}.prose .auditor-overlap,.prose .vendr-ranges{margin:var(--space-lg) 0;padding:var(--space-md) 0;border-top:2px solid var(--color-ink);border-bottom:var(--rule-hairline);color:var(--color-ink-2)}.prose .auditor-overlap figcaption,.prose .vendr-ranges figcaption{margin-bottom:var(--space-xs);color:var(--color-ink);font-family:var(--font-display);font-size:var(--text-lg);line-height:1.3}.prose .auditor-overlap p,.prose .vendr-ranges p{margin:var(--space-xs) 0}.prose .auditor-overlap-list,.prose .vendr-range-list{margin:var(--space-sm) 0;padding:0;list-style:none;list-style-type:none}.prose .vendr-range-list>li::marker{content:""}.prose .auditor-overlap-row{display:grid;grid-template-columns:minmax(8rem,12rem) minmax(5rem,1fr) 5.5rem;align-items:center;gap:var(--space-sm);margin:0;padding:.4rem 0;border-top:var(--rule-hairline)}.prose .auditor-overlap-track{display:block;width:100%;height:.55rem;overflow:visible}.prose .auditor-overlap-baseline{stroke:var(--color-rule);stroke-width:1}.prose .auditor-overlap-fill{fill:var(--color-ink-2)}.prose .auditor-overlap-row.is-largest .auditor-overlap-fill{fill:var(--color-accent)}.prose .auditor-overlap-count,.prose .vendr-range-values{color:var(--color-ink);font-family:var(--font-mono);font-size:var(--text-xs);font-variant-numeric:tabular-nums;white-space:nowrap}.prose .auditor-overlap-count{text-align:right}.prose .auditor-overlap-source,.prose .vendr-range-source,.prose .auditor-overlap-zero{font-size:var(--text-sm)}.prose .vendr-range-row{margin:0;padding:var(--space-xs) 0;border-top:var(--rule-hairline)}.prose .vendr-range-name{display:block;color:var(--color-ink);font-weight:600}.prose .vendr-range-plot{position:relative;height:.85rem;margin:.35rem 0;border-bottom:1px solid var(--color-rule)}.prose .vendr-range-line{position:absolute;top:.38rem;height:2px;background:var(--color-ink)}.prose .vendr-range-median{position:absolute;top:.15rem;height:.62rem;border-left:2px solid var(--color-ink)}@media (max-width: 540px){.prose .auditor-overlap-row{grid-template-columns:minmax(0,1fr) auto;gap:.15rem var(--space-sm)}.prose .auditor-overlap-name{grid-column:1}.prose .auditor-overlap-count{grid-column:2;grid-row:1}.prose .auditor-overlap-track{grid-column:1 / -1;grid-row:2}}.controls-builder[hidden],.controls-table[hidden],.controls-table tr[hidden],.controls-family-empty[hidden],.controls-hipaa[hidden]{display:none!important}.controls-builder[data-controls-pending]{cursor:progress}.controls-builder input:disabled,.controls-builder select:disabled,.controls-builder button:disabled{cursor:not-allowed;opacity:.6}.controls-builder input[data-always-on]:disabled{opacity:1}.controls-noscript{margin:0 0 var(--space-sm);font-size:var(--text-sm);color:var(--color-ink-2)}.article-body .prose .controls-builder{margin:var(--space-md) 0;padding:var(--space-md);border:1px solid var(--color-rule);border-top:2px solid var(--color-ink);border-radius:var(--radius-card);background:var(--color-paper)}.controls-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(13.5rem,1fr));gap:var(--space-md) var(--space-lg)}.controls-field{display:grid;gap:var(--space-xs);align-content:start;min-width:0;margin:0;padding:0;border:0}.controls-field legend{margin-bottom:var(--space-xs);padding:0;font-size:var(--text-sm);font-weight:600;color:var(--color-ink)}.controls-check,.controls-switch{display:flex;align-items:flex-start;gap:var(--space-xs);font-size:var(--text-sm);color:var(--color-ink);cursor:pointer}.controls-check input,.controls-switch input{flex:none;margin-top:.2rem;accent-color:var(--color-accent)}.controls-check small,.controls-switch small{display:block;font-size:var(--text-xs);font-weight:400;color:var(--color-ink-3)}.controls-select{display:grid;gap:var(--space-3xs);font-size:var(--text-sm);color:var(--color-ink)}.controls-select select{width:100%;padding:.5rem .6rem;border:1px solid var(--color-rule);border-radius:var(--radius-input);background:var(--color-paper);color:var(--color-ink);font:inherit}.controls-check input:focus-visible,.controls-switch input:focus-visible,.controls-select select:focus-visible,.controls-link-button:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.controls-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-sm) var(--space-md);margin-top:var(--space-md);padding-top:var(--space-md);border-top:var(--rule-hairline)}.controls-status{flex:1 1 14rem;margin:0;font-size:var(--text-sm);color:var(--color-ink-2)}.controls-link-button{padding:0;border:0;background:none;font:inherit;font-size:var(--text-sm);color:var(--color-ink);text-decoration:underline;text-decoration-color:var(--color-rule);text-underline-offset:3px;cursor:pointer}.controls-link-button:hover{text-decoration-color:var(--color-accent)}.article-body .prose .controls-by-system,.article-body .prose .controls-download-links{margin:var(--space-sm) 0;font-size:var(--text-sm)}.article-body .prose .controls-family-empty{margin:var(--space-sm) 0;color:var(--color-ink-3)}.article-body .prose .controls-table th:nth-child(1){width:21%}.article-body .prose .controls-table th:nth-child(2){width:29%}.article-body .prose .controls-table th:nth-child(3){width:30%}.article-body .prose .controls-table th:nth-child(4){width:20%}.article-body .prose .controls-evidence-table th:nth-child(1){width:38%}.article-body .prose .controls-evidence-table th:nth-child(2){width:44%}.article-body .prose .controls-evidence-table th:nth-child(3){width:18%}.article-body .prose .controls-table tr.controls-row-hipaa{background:var(--color-paper-2)}.controls-criterion-link{font-family:var(--font-mono);white-space:nowrap}.article-body .prose .controls-table p{margin:0}.article-body .prose .controls-table ul{margin:0;padding:0;list-style:none}.article-body .prose .controls-table li{margin:0 0 var(--space-2xs);padding:0}.article-body .prose .controls-table li:last-child{margin-bottom:0}.controls-criterion-id{font-family:var(--font-mono);font-weight:600;color:var(--color-ink);white-space:nowrap}.controls-criterion-label{color:var(--color-ink-2)}.controls-source{display:block;font-size:var(--text-xs);color:var(--color-ink-3)}.article-body .prose .controls-table .controls-meta{margin-top:var(--space-2xs);font-size:var(--text-xs);color:var(--color-ink-3)}.controls-meta-label{margin-right:.35em;font-weight:600;color:var(--color-ink-2)}@media (max-width: 640px){.article-body .prose .controls-table th:nth-child(n){width:auto}.article-body .prose .controls-builder{padding:var(--space-sm)}.controls-grid{grid-template-columns:minmax(0,1fr)}}.iso-budget[data-astro-cid-vgbhovep] h2[data-astro-cid-vgbhovep]{margin:0;color:var(--color-ink);font-family:var(--font-display);font-size:var(--text-xl);font-weight:500;letter-spacing:-.02em;line-height:1.15}.iso-budget__answer[data-astro-cid-vgbhovep]{margin:var(--space-sm) 0 0;color:var(--color-ink);font-size:var(--text-md);line-height:1.65}.iso-budget__note[data-astro-cid-vgbhovep]{margin:var(--space-xs) 0 0;color:var(--color-ink-3);font-size:var(--text-sm);line-height:1.55}.iso-budget__form[data-astro-cid-vgbhovep]{margin-top:var(--space-lg)}.iso-budget__currency[data-astro-cid-vgbhovep]{display:grid;grid-template-columns:minmax(0,1fr) minmax(8rem,11rem);align-items:center;gap:var(--space-sm);padding-bottom:var(--space-md)}.iso-budget[data-astro-cid-vgbhovep] fieldset[data-astro-cid-vgbhovep]{border:0;border-top:var(--rule-hairline);margin:0;padding:var(--space-md) 0}.iso-budget[data-astro-cid-vgbhovep] legend[data-astro-cid-vgbhovep]{color:var(--color-ink);font-family:var(--font-body);font-size:var(--text-sm);font-weight:600;padding:var(--space-md) 0 0}.iso-budget__grid[data-astro-cid-vgbhovep]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-sm);margin-top:var(--space-sm)}.iso-budget[data-astro-cid-vgbhovep] label[data-astro-cid-vgbhovep]{display:grid;gap:var(--space-2xs);color:var(--color-ink-2);font-size:var(--text-sm);font-weight:500}.iso-budget[data-astro-cid-vgbhovep] input[data-astro-cid-vgbhovep],.iso-budget[data-astro-cid-vgbhovep] select[data-astro-cid-vgbhovep]{width:100%;border:var(--rule-hairline);border-radius:var(--radius-input);background:var(--color-paper);color:var(--color-ink);font-family:var(--font-mono);font-size:var(--text-sm);padding:.75rem .875rem}.iso-budget[data-astro-cid-vgbhovep] input[data-astro-cid-vgbhovep]:focus-visible,.iso-budget[data-astro-cid-vgbhovep] select[data-astro-cid-vgbhovep]:focus-visible,.iso-budget__reset[data-astro-cid-vgbhovep]:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}.iso-budget[data-astro-cid-vgbhovep] input[data-astro-cid-vgbhovep]::-moz-placeholder{color:var(--color-ink-3);font-family:var(--font-body)}.iso-budget[data-astro-cid-vgbhovep] input[data-astro-cid-vgbhovep]::placeholder{color:var(--color-ink-3);font-family:var(--font-body)}.iso-budget__reset[data-astro-cid-vgbhovep]{border:0;border-bottom:var(--rule-hairline);background:transparent;color:var(--color-ink-2);cursor:pointer;font:600 var(--text-sm) var(--font-body);padding:0 0 var(--space-3xs)}.iso-budget__reset[data-astro-cid-vgbhovep]:hover{border-color:var(--color-accent);color:var(--color-accent)}.iso-budget__results[data-astro-cid-vgbhovep]{border-top:var(--rule-hairline);margin-top:var(--space-lg);padding-top:var(--space-md)}.iso-budget__results-label[data-astro-cid-vgbhovep]{margin:0;color:var(--color-ink-3);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase}.iso-budget__total[data-astro-cid-vgbhovep]{margin:var(--space-2xs) 0 var(--space-md);color:var(--color-ink);font-family:var(--font-mono);font-size:clamp(1.75rem,1.35rem + 1.5vw,2.5rem);font-weight:600;line-height:1.1}.iso-budget[data-astro-cid-vgbhovep] dl[data-astro-cid-vgbhovep]{border-top:var(--rule-hairline);margin:0}.iso-budget[data-astro-cid-vgbhovep] dl[data-astro-cid-vgbhovep] div[data-astro-cid-vgbhovep]{display:flex;justify-content:space-between;gap:var(--space-md);border-bottom:var(--rule-hairline);padding:var(--space-xs) 0}.iso-budget[data-astro-cid-vgbhovep] dt[data-astro-cid-vgbhovep]{color:var(--color-ink-2)}.iso-budget[data-astro-cid-vgbhovep] dd[data-astro-cid-vgbhovep]{margin:0;color:var(--color-ink);font-family:var(--font-mono);font-weight:500;text-align:right}@media (max-width: 640px){.iso-budget__grid[data-astro-cid-vgbhovep],.iso-budget__currency[data-astro-cid-vgbhovep]{grid-template-columns:1fr}}.vanta-buyer-guides[data-astro-cid-l6m2hqev]{margin:var(--space-xl) 0;padding:var(--space-lg) 0;border-top:var(--rule-hairline);border-bottom:var(--rule-hairline)}.vanta-buyer-guides-heading[data-astro-cid-l6m2hqev]{margin:0 0 var(--space-sm);color:var(--color-ink);font-family:var(--font-display);font-size:var(--text-2xl);font-weight:500;letter-spacing:-.02em;line-height:1.15}.vanta-buyer-guides-lede[data-astro-cid-l6m2hqev]{max-width:var(--measure);margin:0 0 var(--space-md);color:var(--color-ink-2);line-height:1.65}.vanta-buyer-guides-list[data-astro-cid-l6m2hqev]{margin:0;padding:0;border-top:2px solid var(--color-ink);list-style:none}.vanta-buyer-guides-list[data-astro-cid-l6m2hqev] li[data-astro-cid-l6m2hqev]{border-bottom:var(--rule-hairline)}.vanta-buyer-guides-link[data-astro-cid-l6m2hqev]{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-md);padding:var(--space-sm) 0;color:var(--color-ink);text-decoration-color:var(--color-rule);text-underline-offset:4px}.vanta-buyer-guides-link[data-astro-cid-l6m2hqev]:hover{color:var(--color-accent);text-decoration-color:var(--color-accent)}.vanta-buyer-guides-link[data-astro-cid-l6m2hqev]:focus-visible{outline:2px solid var(--color-focus);outline-offset:4px}.vanta-buyer-guides-arrow[data-astro-cid-l6m2hqev]{flex:0 0 auto;font-family:var(--font-mono);color:var(--color-ink-3)}.insight-quote-cta[data-astro-cid-fyuhbtql]{margin:var(--space-xl) 0;padding:var(--space-lg);background:var(--color-paper-3);border:1px solid var(--color-rule);border-radius:var(--radius-card)}.insight-quote-eyebrow[data-astro-cid-fyuhbtql]{margin:0 0 var(--space-2xs);color:var(--color-ink-2);font-size:var(--text-xs);font-weight:600;letter-spacing:.06em;text-transform:uppercase}.insight-quote-cta[data-astro-cid-fyuhbtql] h3[data-astro-cid-fyuhbtql]{margin:0 0 var(--space-2xs);color:var(--color-ink);font-family:var(--font-body);font-size:var(--text-lg);font-weight:600;line-height:1.25}.insight-quote-cta[data-astro-cid-fyuhbtql]>p[data-astro-cid-fyuhbtql]:not(.insight-quote-eyebrow,.insight-quote-microcopy){max-width:58ch;margin:0 0 var(--space-md);color:var(--color-ink-2)}.insight-quote-microcopy[data-astro-cid-fyuhbtql]{margin:var(--space-xs) 0 0;color:var(--color-ink-2);font-size:var(--text-xs)}@media (max-width: 480px){.insight-quote-cta[data-astro-cid-fyuhbtql]{padding:var(--space-md)}.insight-inline-cta[data-astro-cid-fyuhbtql]{width:100%;justify-content:center}}.stage-router-row[data-astro-cid-o4atqdfd]{display:flex;flex-direction:column;gap:var(--space-2xs);border-left:2px solid transparent;padding-left:var(--space-xs)}.stage-router-row[data-astro-cid-o4atqdfd]+.stage-router-row[data-astro-cid-o4atqdfd]{border-top:var(--rule-hairline);padding-top:var(--space-xs)}.stage-router-row[data-astro-cid-o4atqdfd][aria-current=true]{border-left-color:var(--color-accent)}.stage-router-situation[data-astro-cid-o4atqdfd]{font-size:var(--text-sm);font-weight:600;color:var(--color-ink)}.stage-router-quote[data-astro-cid-o4atqdfd]{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:none;border:0;padding:0;font:inherit;text-align:left;cursor:pointer;text-decoration:underline;text-decoration-color:var(--color-rule)}.stage-router-quote[data-astro-cid-o4atqdfd]:hover{color:var(--color-accent);text-decoration-color:var(--color-accent)}.pricing-evidence[data-astro-cid-pdgjzwin]{margin:var(--space-xl) 0;border-top:var(--rule-hairline);border-bottom:var(--rule-hairline);padding:var(--space-sm) 0}.pricing-evidence[data-astro-cid-pdgjzwin] summary[data-astro-cid-pdgjzwin]{cursor:pointer;color:var(--color-ink);font-weight:600}.software-alternative-rail[data-astro-cid-fdy7lvzu].side-block{display:none}.rail-heading[data-astro-cid-fdy7lvzu]{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-xs)}ul[data-astro-cid-fdy7lvzu]{list-style:none;margin:0;padding:0}li[data-astro-cid-fdy7lvzu]+li[data-astro-cid-fdy7lvzu]{margin-top:var(--space-md)}.rail-name[data-astro-cid-fdy7lvzu]{color:var(--color-ink);font-weight:600}.rail-fit[data-astro-cid-fdy7lvzu]{margin:var(--space-2xs) 0;color:var(--color-ink-2);font-size:var(--text-xs);line-height:1.5}.rail-actions[data-astro-cid-fdy7lvzu]{display:flex;flex-wrap:wrap;gap:var(--space-sm);font:var(--text-xs) var(--font-mono)}@media (min-width: 1280px){.software-alternative-rail[data-astro-cid-fdy7lvzu].side-block{display:flex}}.software-alternatives-rail[data-astro-cid-m6r7wcqh].side-block{display:none}ol[data-astro-cid-m6r7wcqh]{list-style:none;margin:0;padding:0}li[data-astro-cid-m6r7wcqh]+li[data-astro-cid-m6r7wcqh]{margin-top:var(--space-sm)}.alternative-name[data-astro-cid-m6r7wcqh]{color:var(--color-ink);font-weight:600}.alternative-fit[data-astro-cid-m6r7wcqh]{margin:var(--space-2xs) 0 0;color:var(--color-ink-2);font-size:var(--text-xs);line-height:1.5}.alternatives-guide[data-astro-cid-m6r7wcqh]{margin-top:var(--space-xs);font:var(--text-xs) var(--font-mono)}@media (min-width: 1280px){.software-alternatives-rail[data-astro-cid-m6r7wcqh].side-block{display:flex}}.article-page{background:var(--color-paper)}.article-breadcrumb{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.04em;text-transform:uppercase;color:var(--color-ink-3)}.article-breadcrumb a{color:inherit;text-decoration-color:var(--color-rule)}.article-breadcrumb a:hover{color:var(--color-accent);text-decoration-color:var(--color-accent)}.article-breadcrumb .sep{margin:0 .5rem;opacity:.6}.article-breadcrumb .current{color:var(--color-ink)}.article-header{padding-top:var(--space-md);padding-bottom:var(--space-md)}.article-header .article-breadcrumb{margin-bottom:var(--space-xs)}@media (max-width: 639px){.article-page .article-h1{line-height:1.1}}.article-h1{font-family:var(--font-display);font-size:var(--text-h1);line-height:1.04;letter-spacing:-.025em;color:var(--color-ink);font-weight:500;margin:0}.article-dek{max-width:65ch;margin:var(--space-sm) 0 0;color:var(--color-ink-2);font-size:var(--text-lg);line-height:1.55}.article-meta{display:flex;flex-wrap:wrap;gap:var(--space-xs) var(--space-md);margin-top:var(--space-sm);color:var(--color-ink-2);font-family:var(--font-body);font-size:var(--text-sm)}.article-meta-list{display:flex;flex-wrap:wrap;gap:var(--space-xs) var(--space-md);margin:0}.article-meta-item{display:flex;align-items:center;gap:var(--space-2xs)}.article-meta dt{color:var(--color-ink-3);font-family:var(--font-body);font-size:var(--text-sm);font-weight:400;white-space:nowrap}.article-meta dd{margin:0;color:var(--color-ink)}.article-meta time{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.article-meta a{color:var(--color-ink);text-decoration-color:var(--color-rule)}.article-meta a:hover{color:var(--color-accent);text-decoration-color:var(--color-accent)}.article-meta-sep{margin:0 var(--space-2xs);color:var(--color-ink-3)}.article-review-independence{margin:var(--space-xs) 0 0;max-width:65ch;color:var(--color-ink-2);font-size:var(--text-sm);line-height:1.5}.article-review-independence strong{color:var(--color-ink)}.article-review-independence a{color:var(--color-ink);text-decoration-color:var(--color-accent);text-underline-offset:2px}.article-review-independence a:hover{color:var(--color-accent)}.article-side{font-family:var(--font-body);font-size:var(--text-sm);color:var(--color-ink-2)}.article-toc{font-size:.8125rem;line-height:1.4}.article-toc .toc-label{display:block;margin-bottom:var(--space-xs);color:var(--color-ink-3);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:600;letter-spacing:.06em;text-transform:uppercase}.article-toc ul{list-style:none;margin:0;padding:0 0 0 var(--space-sm);border-left:var(--rule-hairline)}.article-toc li+li{margin-top:var(--space-2xs)}.article-page .article-toc a{display:block;position:relative;color:var(--color-ink-3);text-decoration:none;transition:color var(--dur-short) var(--ease-out)}.article-page .article-toc a:hover{color:var(--color-ink-2);text-decoration:underline;text-decoration-color:var(--color-rule);text-underline-offset:3px}.article-page .article-toc a[aria-current=location]{color:var(--color-ink)}.article-toc a[aria-current=location]:before{position:absolute;top:.15em;bottom:.15em;left:calc(-1 * var(--space-sm));width:2px;background:var(--color-accent);content:""}.article-toc--desktop{display:none}.article-toc--mobile{margin-bottom:var(--space-xs);border-bottom:var(--rule-hairline)}.article-toc--mobile summary{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);min-height:44px;padding:var(--space-2xs) 0;color:var(--color-ink);cursor:pointer;font-family:var(--font-mono);font-size:var(--text-xs);font-weight:600;letter-spacing:.06em;list-style:none;text-transform:uppercase}.article-toc--mobile summary::-webkit-details-marker{display:none}.article-toc--mobile summary:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px}.article-toc--mobile summary:after{color:var(--color-ink-3);content:"+";font-family:var(--font-body);font-size:var(--text-lg);font-weight:400;line-height:1}.article-toc--mobile[open] summary:after{content:"−"}.article-toc--mobile ul{padding-bottom:var(--space-sm)}.article-page .article-grid{display:grid;gap:0 var(--space-md)}.article-page .article-body{min-width:0;width:100%}.article-page .article-content-section{padding:0 0 var(--space-2xl)}.article-page #article-author{scroll-margin-top:7rem}.article-page .article-category{margin:var(--space-lg) 0 0;font-size:var(--text-sm)}.article-page .side-block{border-top:var(--rule-hairline);border-bottom:var(--rule-hairline);padding:var(--space-sm) 0}@media (min-width: 1024px){.article-page .article-grid{grid-template-columns:11rem minmax(0,1fr)}.article-page .article-masthead{grid-column:2}.article-page .article-body{grid-column:2;grid-row:1}.article-page .article-side{grid-column:1;grid-row:1;align-self:start}.article-toc--desktop{display:block;margin-bottom:var(--space-md)}.article-toc--mobile{display:none}}@media (min-width: 1280px){.article-page .article-grid{grid-template-columns:11rem minmax(0,1fr) 13rem}.article-page .article-masthead{grid-column:2 / 4}.article-page .article-side{display:contents}.article-page .article-toc--desktop{grid-column:1;grid-row:1;align-self:start}.article-page .article-rail{grid-column:3;grid-row:1;align-self:start}}@media (min-width: 1024px) and (min-height: 721px){.article-page .article-side{position:sticky;top:6rem;max-height:calc(100vh - 7.5rem);overflow-y:auto;scrollbar-width:thin}}@media (min-width: 1280px) and (min-height: 721px){.article-page .article-toc--desktop,.article-page .article-rail{position:sticky;top:6rem;max-height:calc(100vh - 7.5rem);overflow-y:auto;scrollbar-width:thin}}.article-side .side-block{display:flex;flex-direction:column;gap:var(--space-xs);margin-bottom:var(--space-lg)}.article-side .side-label{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--color-ink-3);font-weight:600;margin:0;display:block}.article-side .side-value{color:var(--color-ink)}.article-side a{color:var(--color-ink);text-decoration-color:var(--color-rule)}.article-side a:hover{color:var(--color-accent);text-decoration-color:var(--color-accent)}.article-side .side-cta{width:100%;justify-content:center;margin:0;padding:.625rem var(--space-sm);font-size:var(--text-sm)}.article-side a.side-cta,.article-side a.side-cta:hover{color:var(--color-accent-ink);text-decoration:none}.article-body{max-width:65ch}.article-body .prose{color:var(--color-ink-2);font-family:var(--font-body);font-size:var(--text-md);line-height:1.7}.article-body .prose h2{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:500;letter-spacing:-.02em;color:var(--color-ink);margin-top:var(--space-xl);margin-bottom:var(--space-sm);line-height:1.15;scroll-margin-top:7rem}.article-page .article-body .prose h3{font-family:var(--font-body);font-size:var(--text-xl);font-weight:600;letter-spacing:-.015em;color:var(--color-ink);margin-top:var(--space-lg);margin-bottom:var(--space-2xs);line-height:1.2;scroll-margin-top:7rem}.article-body .prose p{margin-top:0;margin-bottom:var(--space-md)}.article-body .prose strong{color:var(--color-ink);font-weight:600}.article-body .prose a:where(:not(.btn-primary)){color:var(--color-ink);text-decoration:underline;text-decoration-color:var(--color-accent);text-underline-offset:3px;text-decoration-thickness:1px}.article-body .prose a:where(:not(.btn-primary)):hover{color:var(--color-accent);text-decoration-thickness:2px}.article-body .prose ul,.article-body .prose ol{padding-left:1.5rem;margin-bottom:var(--space-md)}.article-body .prose ul{list-style:disc}.article-body .prose ol{list-style:decimal}.article-body .prose li{margin-bottom:var(--space-3xs)}.article-body .prose blockquote{border-left:2px solid var(--color-ink);padding-left:var(--space-md);margin:var(--space-md) 0;color:var(--color-ink-2);font-style:italic}.article-page .prose>:first-child,.article-page .prose>:first-child>:first-child{margin-top:0}.article-page .article-tool:first-child,.article-page .article-toc--mobile+.article-tool{margin-top:0}.article-page .prose .article-answer{border-top:2px solid var(--color-ink);padding:var(--space-xs) 0 0;margin:0 0 var(--space-md);background:transparent;border-radius:0;box-shadow:none;font-family:var(--font-body);font-size:var(--text-md);font-style:normal;font-weight:400;line-height:1.6}.article-page .prose .article-answer p{margin:0 0 var(--space-xs)}.article-page .prose .article-answer p:last-child{margin-bottom:0}.article-page .prose .software-review-pros-cons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-lg);border-top:var(--rule-hairline);border-bottom:var(--rule-hairline);padding:var(--space-md) 0;margin:0 0 var(--space-xl)}.article-page .prose .software-review-pros-cons-label{margin:0 0 var(--space-2xs);font:var(--text-xs) var(--font-mono);color:var(--color-ink-3);letter-spacing:.04em;text-transform:uppercase}.article-page .prose .software-review-pros-cons ul{margin:0}@media (max-width: 520px){.article-page .prose .software-review-pros-cons{grid-template-columns:1fr;gap:var(--space-md)}.article-page .prose .software-review-pros-cons>div+div{border-top:var(--rule-hairline);padding-top:var(--space-md)}}.article-body .prose code{font-family:var(--font-mono);font-size:.9em;background:var(--color-paper-2);padding:.1rem .35rem;border-radius:2px;color:var(--color-ink)}.article-body .prose pre{background:var(--color-paper-2);border:var(--rule-hairline);padding:var(--space-sm);overflow-x:auto;margin:var(--space-sm) 0;font-size:var(--text-sm)}.article-body .prose pre code{background:transparent;padding:0;color:inherit}.article-body .prose hr{border:0;border-top:var(--rule-hairline);margin:var(--space-xl) 0}.article-body .prose details{margin:var(--space-md) 0;border-top:var(--rule-hairline);padding-top:var(--space-sm)}.article-body .prose details summary{cursor:pointer;font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.03em;color:var(--color-ink-2)}.article-body .prose details summary:hover,.article-body .prose details summary:focus-visible{color:var(--color-accent)}.article-body .prose figure.homepage-shot,.article-body .prose figure.viz{margin:2.5rem 0;max-width:720px}.article-body .prose figure.viz svg{display:block;width:100%;height:auto}.article-body .prose figure.homepage-shot img{display:block;width:100%;height:auto;margin:0;border-radius:2px;box-shadow:none;border:1px solid var(--color-rule)}.article-body .prose figure figcaption{font-family:var(--font-display);font-size:.95rem;color:var(--color-ink);line-height:1.45;margin-top:.6rem}.article-body .prose figure figcaption .src{display:block;font-family:var(--font-body);font-size:.8rem;color:var(--color-ink-2);margin-top:.15rem}.article-body .prose figure.evidence-shot{margin:2.5rem 0;max-width:720px}.article-body .prose figure.evidence-shot>a{display:block;color:inherit}.article-body .prose figure.evidence-shot img{display:block;width:100%;max-width:100%;height:auto;margin:0;border:1px solid var(--color-rule);border-radius:4px;box-shadow:none}.article-body .prose figure.editorial-process,.article-body .prose figure.purchase-comparison,.article-body .prose figure.pricing-range-plot{max-width:720px;margin:2.5rem 0;padding:var(--space-md) 0 var(--space-sm);border-top:2px solid var(--color-ink);border-bottom:var(--rule-hairline)}.article-body .prose .purchase-comparison-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-md)}.article-body .prose .purchase-comparison-product{min-width:0}.article-body .prose .purchase-comparison-name{display:block;margin-bottom:var(--space-sm);font-family:var(--font-display);font-size:1.5rem;line-height:1.2}.article-body .prose .purchase-comparison-module{padding:var(--space-sm);border:var(--rule-hairline)}.article-body .prose .purchase-comparison-module strong{display:block;font-size:var(--text-sm);line-height:1.4}.article-body .prose .purchase-comparison-module p,.article-body .prose .purchase-comparison-fit{margin:var(--space-2xs) 0 0;font-size:var(--text-sm);line-height:1.45}.article-body .prose .purchase-comparison-plus{display:block;padding:var(--space-2xs) 0;font-family:var(--font-mono);text-align:center}.article-body .prose .purchase-comparison-fit{margin-top:var(--space-sm)}.article-body .prose .purchase-comparison-caveat{display:block;margin-top:var(--space-2xs);color:var(--color-ink-2)}.article-body .prose .editorial-process-list{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;margin:0;padding:0;list-style:none}.article-body .prose .editorial-process-list li{display:flex;min-width:0;flex-direction:column;gap:var(--space-2xs);margin:0;padding:0 var(--space-xs);border-left:var(--rule-hairline)}.article-body .prose .editorial-process-list li:first-child{padding-left:0;border-left:0}.article-body .prose .process-step-number{color:var(--color-accent);font-family:var(--font-mono);font-size:var(--text-xs);font-variant-numeric:tabular-nums;letter-spacing:.04em}.article-body .prose .editorial-process-list strong{font-family:var(--font-display);font-size:1.05rem;line-height:1.15}.article-body .prose .editorial-process-list li>span:last-child{color:var(--color-ink-2);font-size:var(--text-sm);line-height:1.45}.article-body .prose .editorial-process-pair .editorial-process-list{grid-template-columns:repeat(3,minmax(0,1fr))}.article-body .prose .editorial-process-panel+.editorial-process-panel{margin-top:var(--space-lg);padding-top:var(--space-md);border-top:var(--rule-hairline)}.article-body .prose .editorial-process-label{margin:0 0 var(--space-sm);font-family:var(--font-display);font-size:var(--text-lg);font-weight:600;color:var(--color-ink)}.article-body .prose .editorial-process-pair .editorial-process-list li{padding-right:var(--space-sm);padding-left:var(--space-sm)}.article-body .prose .editorial-process-pair .editorial-process-list li:first-child{padding-left:0}.article-body .prose .editorial-process-pair .editorial-process-list li:last-child{padding-right:0}.article-body .prose figure.editorial-process-pair>figcaption{margin-top:var(--space-md)}.article-body .prose figure.pricing-range-plot>figcaption{margin-top:0;margin-bottom:var(--space-sm)}.article-body .prose .enterprise-grc-flow-heading{margin:0 0 var(--space-sm);color:var(--color-ink);font-family:var(--font-display);font-size:var(--text-lg);font-weight:600;line-height:1.3}.article-body .prose .enterprise-grc-flow-desktop{display:block;width:100%;height:auto}.article-body .prose .enterprise-grc-workflow>figcaption{color:var(--color-ink-2)}.enterprise-grc-flow-lines{stroke:var(--color-ink-2)}.enterprise-grc-flow-boxes{stroke:var(--color-rule)}.enterprise-grc-flow-name,.enterprise-grc-flow-result{fill:var(--color-ink);font-family:var(--font-display);font-size:24px}.enterprise-grc-flow-result{font-weight:600}.enterprise-grc-flow-detail{fill:var(--color-ink-2);font-family:var(--font-body);font-size:18px}.enterprise-grc-flow-label{fill:var(--color-ink-2);color:var(--color-ink-2);font-family:var(--font-mono);font-size:14px;letter-spacing:.04em}.enterprise-grc-flow-mobile{display:none}.article-body .prose .ai-soc2-flow-heading{margin:0 0 var(--space-sm);color:var(--color-ink);font-family:var(--font-display);font-size:var(--text-lg);font-weight:500;line-height:1.3}.article-body .prose .ai-soc2-flow-desktop{display:block;width:100%;height:auto}.article-body .prose .ai-soc2-flow>figcaption{color:var(--color-ink-2)}.ai-soc2-flow-lines,.ai-soc2-flow-boxes{stroke:var(--color-ink-2)}.ai-soc2-flow-name{fill:var(--color-ink);font-family:var(--font-display);font-size:22px}.ai-soc2-flow-name.ai-soc2-flow-summary{font-size:18px}.ai-soc2-flow-detail{fill:var(--color-ink-2);font-family:var(--font-body);font-size:18px}.ai-soc2-flow-label{fill:var(--color-ink-2);font-family:var(--font-mono);font-size:14px;letter-spacing:.04em}.ai-soc2-flow-mobile{display:none}@media (max-width: 639px){.article-body .prose .ai-soc2-flow-desktop{display:none}.ai-soc2-flow-mobile{display:block}.ai-soc2-flow-node,.ai-soc2-flow-aside{display:flex;flex-direction:column;gap:var(--space-2xs);padding:var(--space-sm);border:1px solid var(--color-ink-2);border-radius:var(--radius-card);color:var(--color-ink-2);font-size:var(--text-base);line-height:1.45}.ai-soc2-flow-node strong,.ai-soc2-flow-aside strong{color:var(--color-ink);font-family:var(--font-display)}.ai-soc2-flow-direction{display:block;padding:var(--space-2xs) 0;color:var(--color-ink-2);text-align:center}.ai-soc2-flow-branches{display:grid;gap:var(--space-sm);margin-left:var(--space-sm);padding:var(--space-sm) 0 var(--space-sm) var(--space-sm);border-left:1.5px solid var(--color-ink-2)}.ai-soc2-flow-aside{margin:var(--space-sm) 0 0 var(--space-md);border-style:dashed}}@media (max-width: 640px){.article-body .prose .enterprise-grc-flow-desktop{display:none}.enterprise-grc-flow-mobile{display:block}.enterprise-grc-flow-node{display:flex;flex-direction:column;gap:var(--space-2xs);padding:var(--space-sm);border:var(--rule-hairline);border-radius:var(--radius-card);color:var(--color-ink);font-size:var(--text-base);line-height:1.4}.enterprise-grc-flow-node strong{font-family:var(--font-display)}.enterprise-grc-flow-node small{color:var(--color-ink-2);font-size:var(--text-sm)}.enterprise-grc-flow-node .enterprise-grc-flow-label{font-size:var(--text-xs)}.enterprise-grc-flow-branches{position:relative;display:grid;gap:var(--space-sm);margin:0 0 0 var(--space-sm);padding:var(--space-sm) 0 var(--space-sm) var(--space-md);border-left:1.5px solid var(--color-ink-2)}.enterprise-grc-flow-branches .enterprise-grc-flow-node{position:relative}.enterprise-grc-flow-branches .enterprise-grc-flow-node:before{position:absolute;top:50%;right:100%;width:var(--space-md);border-top:1.5px solid var(--color-ink-2);content:""}.enterprise-grc-flow-rollup{padding-top:var(--space-2xs)}.enterprise-grc-flow-direction{display:block;margin-bottom:var(--space-xs);color:var(--color-ink-2);font-size:var(--text-sm);text-align:center}}.article-body .prose .price-plot{position:relative;min-height:9rem;margin:0;overflow:visible}.article-body .prose .price-plot-track{position:absolute;right:0;bottom:2.1rem;left:0;height:2px;background:var(--color-ink)}.article-body .prose .price-marker{position:absolute;bottom:2.1rem;width:0;height:0}.article-body .prose .price-marker:after{position:absolute;bottom:0;left:0;width:.65rem;height:.65rem;border:2px solid var(--color-ink);border-radius:50%;background:var(--color-paper);content:"";transform:translate(-50%,50%)}.article-body .prose .price-marker-label{position:absolute;bottom:.95rem;left:0;display:block;width:-moz-max-content;width:max-content;color:var(--color-ink-2);font-family:var(--font-mono);font-size:var(--text-xs);font-variant-numeric:tabular-nums;line-height:1.35;text-align:center;transform:translate(-50%);white-space:nowrap}.article-body .prose .price-marker-label strong{color:var(--color-ink);font-family:inherit;font-weight:600}.article-body .prose .price-marker-min{left:0}.article-body .prose .price-marker-min .price-marker-label{text-align:left;transform:none}.article-body .prose .price-marker-median{left:26.8%}.article-body .prose .price-marker-median:after{border-color:var(--color-accent);background:var(--color-accent)}.article-body .prose .price-marker-median .price-marker-label strong{color:var(--color-accent)}.article-body .prose .price-marker-max{right:0}.article-body .prose .price-marker-max .price-marker-label{text-align:right;transform:translate(-100%)}.article-body .prose .price-plot-source{margin:var(--space-sm) 0 0;color:var(--color-ink-3);font-size:var(--text-xs);line-height:1.55}@media (max-width: 640px){.article-body .prose .editorial-process-list{display:block}.article-body .prose .editorial-process-list li,.article-body .prose .editorial-process-list li:first-child{padding:var(--space-sm) 0 var(--space-sm) var(--space-sm);border-top:var(--rule-hairline);border-left:2px solid var(--color-rule)}.article-body .prose .editorial-process-list li:first-child{padding-top:0;border-top:0}.article-body .prose .editorial-process-pair .editorial-process-list li,.article-body .prose .editorial-process-pair .editorial-process-list li:first-child{padding-right:0;padding-left:var(--space-sm)}.article-body .prose .price-plot{min-height:10rem}.article-body .prose .price-marker-label{font-size:.7rem}}.article-body .prose .article-placement-note{font-family:var(--font-body);font-size:var(--text-xs);font-weight:400;line-height:1.55;color:color-mix(in oklch,var(--color-ink-3) 85%,var(--color-ink-2));margin:var(--space-md) 0 var(--space-2xs)}.article-body .prose .article-placement-note+h3{margin-top:0}.sponsored-alternative{border-top:var(--rule-hairline);border-bottom:var(--rule-hairline);padding:var(--space-md) 0;margin:var(--space-xl) 0}.article-body .prose .sponsored-alternative-heading{font-family:var(--font-body);font-size:var(--text-lg);font-weight:600;letter-spacing:0;line-height:1.3;color:var(--color-ink);margin:0 0 var(--space-xs)}.article-body .prose .sponsored-alternative-rationale,.article-body .prose .sponsored-alternative-caveat{color:var(--color-ink-2);font-size:var(--text-sm);line-height:1.6;margin:0 0 var(--space-xs)}.article-body .prose .sponsored-alternative-caveat{color:var(--color-ink-2)}.article-body .prose .sponsored-alternative-actions{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-xs) var(--space-md);margin:var(--space-sm) 0 0}.article-body .prose .sponsored-alternative-review{font-size:var(--text-sm);font-weight:600}.article-body .prose .sponsored-alternative-visit{color:var(--color-ink-2);font-family:var(--font-mono);font-size:var(--text-xs);white-space:nowrap}.article-body .prose .sponsored-alternative-disclosure{color:var(--color-ink-2);font-family:var(--font-mono);font-size:var(--text-xs);line-height:1.55;margin:var(--space-sm) 0 0}.sponsored-alternative--existing-entry{margin-top:var(--space-sm)}.article-tool{border:var(--rule-hairline);background:var(--color-paper-2);padding:var(--space-md);margin-top:var(--space-lg);margin-bottom:var(--space-lg)}.article-tool-eyebrow{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--color-ink-3);margin-bottom:var(--space-sm);display:block}.article-footer{border-top:var(--rule-hairline);padding:var(--space-xl) 0;background:var(--color-paper-2)}.article-footer .eyebrow{font-family:var(--font-body);font-size:var(--text-xs);font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--color-ink-3)}.article-footer h2{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:500;letter-spacing:-.02em;color:var(--color-ink);margin:var(--space-2xs) 0 var(--space-sm);max-width:22ch}.article-footer p{color:var(--color-ink-2);max-width:55ch;line-height:1.6}.article-footer .footer-actions{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-md);margin-top:var(--space-md)}.article-footer .micro{font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.04em;color:var(--color-ink-3);margin-top:var(--space-sm)}
