:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--font-display:"Barlow Condensed", "Arial Narrow", sans-serif;--font-text:"IBM Plex Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}:root,.theme-dark{--bg:var(--lightningcss-light,#f5f6f8)var(--lightningcss-dark,#080b10);--surface:var(--lightningcss-light,#fff)var(--lightningcss-dark,#0f141c);--surface-2:var(--lightningcss-light,#eceff4)var(--lightningcss-dark,#141b26);--text:var(--lightningcss-light,#0b0f15)var(--lightningcss-dark,#e8eef6);--secondary:var(--lightningcss-light,#566173)var(--lightningcss-dark,#8997ab);--hairline:var(--lightningcss-light,#0b0f151f)var(--lightningcss-dark,#212b39);--accent:var(--lightningcss-light,#0b7285)var(--lightningcss-dark,#41d3e6);--on-accent:var(--lightningcss-light,#fff)var(--lightningcss-dark,#04161a);--green:var(--lightningcss-light,#16794a)var(--lightningcss-dark,#4fdc8a);--orange:var(--lightningcss-light,#a14d00)var(--lightningcss-dark,#ffb547);--red:var(--lightningcss-light,#c8102e)var(--lightningcss-dark,#ff4d6a);--shadow-color:var(--lightningcss-light,#0b0f150f)var(--lightningcss-dark,#0000);--shadow:0 1px 2px var(--shadow-color), 0 8px 28px var(--shadow-color);--scrim:color-mix(in srgb, var(--bg) 72%, transparent)}:root{--fs-hero:clamp(56px, 10vw, 112px);--fs-h1:clamp(44px, 7vw, 80px);--fs-h2:clamp(36px, 5.2vw, 60px);--fs-h3:21px;--fs-lede:clamp(19px, 2.1vw, 23px);--fs-body:17px;--fs-small:14px;--fs-micro:12px;--container:1080px;--container-narrow:640px;--gutter:clamp(20px, 4vw, 32px);--section:clamp(88px, 12vw, 152px);--nav-h:52px;--r-sm:10px;--r-md:14px;--r-lg:20px;--r-xl:28px;--r-pill:980px;--ease:cubic-bezier(.25, .1, .25, 1);--dur:.2s;--focus-ring:3px solid color-mix(in srgb, var(--accent) 65%, transparent)}.theme-dark{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:var(--bg);color:var(--text)}
*,:before,:after{box-sizing:border-box}html{background:var(--bg);scroll-padding-top:calc(var(--nav-h) + 20px);-webkit-text-size-adjust:100%}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{background:var(--bg);color:var(--text);font:var(--fs-body)/1.5 var(--font-text);letter-spacing:-.005em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;margin:0}a{color:var(--accent);text-decoration:none}a:hover{text-underline-offset:.18em;text-decoration:underline}:where(p,li,td,th,h1,h2,h3,dd){overflow-wrap:anywhere}:where(a,button,input,select,textarea,summary):focus-visible{outline:var(--focus-ring);outline-offset:2px}[hidden]{display:none!important}img,svg,canvas{max-width:100%}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important}}.skip{z-index:30;background:var(--surface);color:var(--text);border-radius:var(--r-sm);border:1px solid var(--hairline);padding:10px 16px;position:absolute;top:-64px;left:12px}.skip:focus{top:8px}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}:where(h1,h2){font-family:var(--font-display);letter-spacing:0;text-wrap:balance;font-weight:600}.page h1{font-size:var(--fs-h1);margin:0 0 20px;line-height:.98}:where(h2){font-size:var(--fs-h2);margin:0 0 20px;line-height:1}:where(h3){font-size:var(--fs-h3);letter-spacing:-.01em;margin:0 0 8px;font-weight:600;line-height:1.25}.eyebrow{font:500 var(--fs-micro)/1.4 var(--font-mono);text-transform:uppercase;letter-spacing:.14em;color:var(--accent);margin:0 0 14px}.lede{font-size:var(--fs-lede);color:var(--secondary);text-wrap:pretty;max-width:46ch;margin:0;line-height:1.4}.muted{color:var(--secondary)}.small{font-size:var(--fs-small)}.estimate{font:500 .36em/1 var(--font-mono);color:var(--secondary);vertical-align:middle;letter-spacing:.04em}.page{max-width:var(--container);padding:56px var(--gutter) 0;margin:0 auto}.page.narrow,.narrow{max-width:calc(var(--container-narrow) + 2 * var(--gutter))}main.page{padding-bottom:96px}.section{padding-block:var(--section) 0}.section-head{text-align:center;max-width:900px;margin:0 auto 48px}.section-head .lede{max-width:40ch;margin-inline:auto}.section-note{text-align:center;font-size:var(--fs-small);color:var(--secondary);max-width:640px;margin:20px auto 0}.narrow h1{font-size:clamp(44px,6vw,64px)}.row{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.row.between{justify-content:space-between}.row.center{justify-content:center}.row>*{min-width:0}.grid{gap:16px;display:grid}.grid>*{min-width:0}.g2{grid-template-columns:repeat(2,minmax(0,1fr))}@media (max-width:820px){.g2{grid-template-columns:minmax(0,1fr)}}.stack>*+*{margin-top:16px}.mt-l{margin-top:32px}.mt-m{margin-top:20px}.mt-s{margin-top:12px}.back-link{margin-top:40px}
.nav{z-index:20;background:var(--scrim);border-bottom:1px solid var(--hairline);-webkit-backdrop-filter:saturate(180%)blur(20px);position:sticky;top:0}.site{max-width:var(--container);padding:0 var(--gutter);height:var(--nav-h);align-items:center;gap:28px;margin:0 auto;display:flex}.brand{color:var(--text);font:600 21px/1 var(--font-display);letter-spacing:.02em;white-space:nowrap}.brand:hover{text-decoration:none}.site nav{flex:1;justify-content:flex-end;gap:24px;min-width:0;font-size:13px;display:flex}.site nav a{color:var(--text);opacity:.72;white-space:nowrap;transition:opacity var(--dur) var(--ease)}.site nav a:hover{opacity:1;text-decoration:none}@media (max-width:860px){.site nav{display:none}.site{justify-content:space-between}}.site-footer{border-top:1px solid var(--hairline);color:var(--secondary);font-size:var(--fs-micro);line-height:1.6}.site-footer .page-end{max-width:var(--container);padding:28px var(--gutter) 48px;gap:16px;margin:0 auto;display:grid}.site-footer p{max-width:72ch;margin:0}.site-footer nav{flex-wrap:wrap;gap:8px 22px;display:flex}.site-footer nav a{color:var(--text);opacity:.8}.site-footer nav.footer-legal a{color:var(--secondary);opacity:1}.site-footer .wordmark{color:var(--text);font-weight:600}.btn{background:var(--accent);color:var(--on-accent);font:500 17px/1.2 var(--font-text);border-radius:var(--r-pill);cursor:pointer;text-align:center;transition:filter var(--dur) var(--ease), background-color var(--dur) var(--ease);border:0;justify-content:center;align-items:center;gap:6px;padding:12px 24px;display:inline-flex}.btn:hover{filter:brightness(1.08);text-decoration:none}.btn:active{filter:brightness(.94)}.btn.secondary{background:var(--surface-2);color:var(--text)}.btn.small{padding:7px 15px;font-size:13px}.btn.block{width:100%;display:flex}.btn:disabled{opacity:.45;cursor:not-allowed;filter:none}.link-more{white-space:nowrap;font-size:17px;font-weight:500}.link-more:after{content:"›";transition:transform var(--dur) var(--ease);margin-left:5px;display:inline-block}.link-more:hover:after{transform:translate(3px)}.pill{font:500 12px/1.5 var(--font-text);border-radius:var(--r-pill);background:var(--surface-2);color:var(--secondary);white-space:nowrap;padding:2px 10px;display:inline-block}.pill.go{color:var(--green);background:color-mix(in srgb, var(--green) 12%, transparent)}.pill.maybe{color:var(--orange);background:color-mix(in srgb, var(--orange) 12%, transparent)}.pill.no{color:var(--red);background:color-mix(in srgb, var(--red) 10%, transparent)}.notice{border-radius:var(--r-md);border:1px solid var(--hairline);background:var(--surface-2);padding:14px 18px;font-size:15px;line-height:1.5}.notice b{margin-bottom:2px;display:block}.notice.warn{background:color-mix(in srgb, var(--orange) 9%, transparent);border-color:color-mix(in srgb, var(--orange) 32%, transparent)}.notice.info{background:color-mix(in srgb, var(--accent) 8%, transparent);border-color:color-mix(in srgb, var(--accent) 28%, transparent)}.notice.ok{background:color-mix(in srgb, var(--green) 9%, transparent);border-color:color-mix(in srgb, var(--green) 32%, transparent)}.notice.bad{background:color-mix(in srgb, var(--red) 8%, transparent);border-color:color-mix(in srgb, var(--red) 32%, transparent)}.tile{background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--shadow);border:1px solid var(--hairline);padding:32px}.tile p{margin:0}.tile.compact{padding:22px}.tile.compact h3{font-size:17px}@media (max-width:820px){.tile{padding:22px}}.tile-title{margin:0;font-size:28px;line-height:1.05}.callout{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px 24px;display:flex}.callout>div{flex:260px;min-width:0}.callout h2,.callout h3{font-size:28px;line-height:1.05;font-family:var(--font-display);margin:0 0 6px;font-weight:600}.steps{counter-reset:step;grid-template-columns:repeat(5,minmax(0,1fr));gap:32px 24px;margin:0;padding:0;list-style:none;display:grid}.steps li{counter-increment:step;border-top:1px solid var(--hairline);padding-top:18px}.steps li:before{content:counter(step, decimal-leading-zero);font:500 var(--fs-micro)/1 var(--font-mono);letter-spacing:.14em;color:var(--accent);margin-bottom:14px;display:block}.steps h3{margin:0 0 6px;font-size:19px}.steps p{color:var(--secondary);margin:0;font-size:15px}@media (max-width:900px){.steps{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:520px){.steps{grid-template-columns:minmax(0,1fr)}}.spec-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:0 32px;margin:0;padding:0;list-style:none;display:grid}.spec-list li{border-top:1px solid var(--hairline);min-width:0;padding:20px 0 24px}.spec-list h3{margin:0 0 4px;font-size:17px}.spec-list p{color:var(--secondary);margin:0;font-size:15px}@media (max-width:900px){.spec-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.spec-list{grid-template-columns:minmax(0,1fr)}}.table-wrap{background:var(--surface);border-radius:var(--r-lg);border:1px solid var(--hairline);box-shadow:var(--shadow);overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:15px}th{text-align:left;font:500 var(--fs-micro)/1.4 var(--font-mono);color:var(--secondary);text-transform:uppercase;letter-spacing:.1em;border-bottom:1px solid var(--hairline);padding:16px 20px}td{border-bottom:1px solid var(--hairline);vertical-align:top;padding:18px 20px}tr:last-child td{border-bottom:0}td.price{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}@media (max-width:560px){thead{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}tr,td{display:block}tr{border-bottom:1px solid var(--hairline);padding:14px 0}tr:last-child{border-bottom:0}td{border:0;padding:3px 20px}}.disclosures{border-bottom:1px solid var(--hairline)}details.disclosure{border-top:1px solid var(--hairline)}details.disclosure>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:16px;padding:22px 0;font-size:19px;font-weight:600;list-style:none;display:flex}details.disclosure>summary::-webkit-details-marker{display:none}details.disclosure>summary:after{content:"+";font:300 26px/1 var(--font-text);color:var(--accent);transition:transform var(--dur) var(--ease);flex-shrink:0}details.disclosure[open]>summary:after{transform:rotate(45deg)}details.disclosure>.body{padding:0 48px 24px 0}.form-field{margin-bottom:22px}.form-field label.lbl{margin-bottom:6px;font-size:15px;font-weight:600;display:block}.form-field .opt{color:var(--secondary);font-weight:400}.form-field .hint{color:var(--secondary);margin:6px 0 0;font-size:13px}.input{width:100%;font:inherit;border-radius:var(--r-md);border:1px solid var(--hairline);background:var(--surface);color:var(--text);transition:border-color var(--dur) var(--ease), box-shadow var(--dur) var(--ease);padding:13px 16px;font-size:17px}.input:focus-visible{border-color:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb, var(--accent) 22%, transparent);outline:none}.input[aria-invalid=true]{border-color:var(--red);box-shadow:0 0 0 4px color-mix(in srgb, var(--red) 16%, transparent)}.err{color:var(--red);margin:6px 0 0;font-size:14px;font-weight:500}.ok-text{color:var(--green);margin:6px 0 0;font-size:14px;font-weight:500}.code{font:13px/1.55 var(--font-mono);background:var(--surface-2);border:1px solid var(--hairline);border-radius:var(--r-sm);white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-all;min-width:0;margin:0;padding:12px 14px}.copy-row{align-items:flex-start;gap:8px;display:flex}.copy-row .code{flex:1}@media (max-width:480px){.copy-row{flex-direction:column}}.score-card{grid-template-columns:200px minmax(0,1fr);align-items:center;gap:32px;display:grid}@media (max-width:620px){.score-card{text-align:center;grid-template-columns:minmax(0,1fr);justify-items:center}.score-card .bars{text-align:left;width:100%}}.score-headline{margin:0 0 8px;font-size:32px;line-height:1.05}.score-card .bars{margin-top:18px}.dial{background:conic-gradient(var(--dial,var(--green)) calc(var(--p,0) * 1%), var(--surface-2) 0);border-radius:50%;place-items:center;width:168px;height:168px;display:grid;position:relative}.dial:after{content:"";background:var(--surface);border-radius:50%;position:absolute;inset:12px}.dial>div{z-index:1;text-align:center;line-height:1.05;position:relative}.dial b{font:600 60px/1 var(--font-display);font-variant-numeric:tabular-nums;display:block}.dial span{color:var(--secondary);font-size:13px}.dial.bad{--dial:var(--red)}.dial.mid{--dial:var(--orange)}.dial.good{--dial:var(--green)}.bars{gap:12px;width:100%;display:grid}.bar-row{grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;font-size:14px;display:grid}.bar-row i{background:var(--surface-2);border-radius:99px;grid-column:1/-1;height:6px;display:block;position:relative;overflow:hidden}.bar-row i:after{content:"";width:var(--w,0%);background:var(--bc,var(--green));border-radius:inherit;position:absolute;inset:0}.bar-row.warn i:after{--bc:var(--orange)}.bar-row.bad i:after{--bc:var(--red)}.bar-row span:last-child{font-variant-numeric:tabular-nums;font-weight:600}.split{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:start;gap:20px;margin-top:20px;display:grid}@media (max-width:820px){.split{grid-template-columns:minmax(0,1fr)}}.finding{border-top:1px solid var(--hairline);gap:6px;padding:18px 0;display:grid}.finding:first-of-type{border-top:0;padding-top:0}.finding h3{margin:0;font-size:17px}.finding p{margin:0}.diff{font:13px/1.6 var(--font-mono);border-radius:var(--r-sm);border:1px solid var(--hairline);background:var(--surface);overflow:hidden}.diff div{white-space:pre-wrap;overflow-wrap:anywhere;padding:1px 14px}.diff .del{background:color-mix(in srgb, var(--red) 12%, transparent)}.diff .add{background:color-mix(in srgb, var(--green) 14%, transparent)}.diff .ctx{color:var(--secondary)}

