:root{color-scheme:light;--ink:#242821;--muted:#697065;--line:#dce1d7;--accent:#355b36;--paper:#fcfdf9}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{margin:0;background:var(--paper);color:var(--ink);font:19px/1.7 Georgia,'Times New Roman',serif}a{color:var(--accent);text-decoration-thickness:1px;text-underline-offset:4px}a:hover{color:#182d18}a:focus-visible{outline:2px solid var(--accent);outline-offset:5px}.site-header{max-width:1120px;margin:auto;padding:28px 36px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);font-family:Arial,sans-serif}.brand{font-weight:700;font-size:24px;letter-spacing:-1px;text-decoration:none;color:var(--ink)}.brand-dot{color:var(--accent)}nav{display:flex;gap:28px;font-size:13px}nav a{text-decoration:none;color:var(--muted)}nav a[aria-current]{color:var(--ink);text-decoration:underline}main{max-width:800px;padding:68px 28px 70px;margin:auto}.eyebrow{font:11px/1.5 Arial,sans-serif;text-transform:uppercase;letter-spacing:2px;color:var(--muted);margin-bottom:18px}h1{font-size:44px;line-height:1.17;letter-spacing:-1.5px;font-weight:400;margin:0 0 26px}article>h1+p,article>h1+p+p,article>h1+p+p+p,article>h1+p+p+p+p{font:13px/1.6 Arial,sans-serif;margin:4px 0;color:var(--muted)}article>h1+p{color:var(--ink);font-weight:600}h2,h3,h4{font-family:Arial,sans-serif;line-height:1.4;letter-spacing:-.3px;scroll-margin-top:24px}h2{font-size:22px;margin:46px 0 15px}h3{font-size:16px;margin:32px 0 12px}h4{font-size:15px}p{margin:0 0 18px}li{padding-left:4px;margin-bottom:9px}ul,ol{padding-left:26px}.downloads{display:flex;align-items:center;gap:22px;flex-wrap:wrap;padding:25px 0 30px;margin-bottom:30px;border-bottom:1px solid var(--line);font:12px/1.5 Arial,sans-serif}.button{background:var(--accent);color:#fff;padding:11px 16px;text-decoration:none;border-radius:3px}.button:hover{background:#244225;color:white}.button span{padding-left:14px}.figure{overflow-x:auto;margin:25px 0 34px;padding:20px 0}.figure svg{display:block;width:100%;min-width:470px;height:auto}table{display:block;overflow-x:auto;border-collapse:collapse;width:100%;font:14px/1.6 Arial,sans-serif;margin:24px 0}th,td{padding:12px 14px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line);min-width:100px}th{border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}code{font-size:.8em;overflow-wrap:anywhere}pre{background:#f0f3eb;padding:20px;overflow:auto;border-left:2px solid var(--line);font:13px/1.6 monospace}pre code{font-size:inherit;overflow-wrap:normal}blockquote{margin:24px 0;padding:0 22px;border-left:2px solid var(--accent);color:var(--muted)}.technical{font-size:17px}footer{max-width:1120px;margin:auto;padding:28px 36px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;color:var(--muted);font:12px/1.6 Arial,sans-serif}footer>a:first-child{font-weight:bold}.skip{position:absolute;left:15px;top:-100px}.skip:focus{top:10px;background:white;padding:10px;z-index:2}@media(max-width:600px){body{font-size:17px}.site-header{padding:20px;align-items:flex-start;gap:24px}nav{gap:12px;flex-wrap:wrap;font-size:11px;justify-content:flex-end}.brand{font-size:21px}main{padding:42px 22px}h1{font-size:34px;letter-spacing:-1px}h2{font-size:20px}.downloads{gap:17px}footer{padding:24px 22px;flex-wrap:wrap}.figure{margin-right:-8px}}@media print{body{background:white;font-size:11pt}.site-header,.downloads,.eyebrow,footer,.skip{display:none}main{max-width:none;padding:0}h1{font-size:24pt}.figure svg{min-width:0}h2,h3{break-after:avoid}a{color:inherit}pre{white-space:pre-wrap}}

/* The whitepaper follows the PDF's page proportions and typography. */
.paper-view{background:#f0f0ef;color:#202124;font-family:'Times New Roman',Times,serif;font-size:16px;line-height:1.31}
.paper-view a{color:inherit}
.paper-view .site-header{max-width:940px;padding:20px 30px;border:0}
.paper-view>.downloads{max-width:816px;margin:0 auto;padding:0 0 18px;justify-content:center;border:0;gap:24px;color:#555;font-size:11px}
.paper-view .button{background:none;color:inherit;padding:0;border-radius:0;text-decoration:underline}
.paper-view .button:hover{color:#000}
.paper-view .button span{padding-left:4px}
.whitepaper{max-width:816px;background:#fff;padding:65px 76px 72px;margin:0 auto 40px;box-shadow:0 1px 8px #00000012;border:1px solid #e3e3e1}
.whitepaper h1{text-align:center;font-family:'Times New Roman',Times,serif;font-size:31px;line-height:1.22;letter-spacing:0;font-weight:bold;margin:0 0 19px}
.whitepaper article>h1+p,.whitepaper article>h1+p+p,.whitepaper article>h1+p+p+p,.whitepaper article>h1+p+p+p+p{text-align:center;font:12px/1.45 Arial,sans-serif;margin:2px 0;color:#65686c}
.whitepaper article>h1+p{font-size:13px;font-weight:400;color:#202124}
.whitepaper article>h1+p+p+p+p{font-size:10.5px;margin:11px 0 25px}
.whitepaper p{margin:0 0 10px}
.whitepaper h2{font-size:16px;line-height:1.32;letter-spacing:0;margin:22px 0 9px}
.whitepaper h3{font-size:13.5px;line-height:1.4;letter-spacing:0;margin:17px 0 8px}
.whitepaper .abstract{margin:0 24px 21px;font-size:14px;line-height:1.32}
.whitepaper .abstract h3{text-align:center;font-size:14px;margin:0 0 9px}
.whitepaper li{margin-bottom:6px;padding-left:1px}
.whitepaper ul,.whitepaper ol{margin:10px 0 14px;padding-left:24px}
.whitepaper .figure{margin:12px 0 20px;padding:10px 0}
.whitepaper table{font-family:'Times New Roman',Times,serif;font-size:13px;line-height:1.35;margin:13px 0 18px}
.whitepaper th,.whitepaper td{padding:8px 10px}
.paper-view footer{max-width:816px;padding:20px 0 32px;border-color:#d7d7d5}
@media(max-width:700px){.paper-view{background:white;font-size:17px;line-height:1.45}.paper-view .site-header{padding:20px}.paper-view>.downloads{padding:5px 20px 22px;gap:20px}.whitepaper{padding:28px 22px 45px;border:0;box-shadow:none;margin-bottom:0}.whitepaper h1{font-size:28px}.whitepaper .abstract{margin:0 10px 24px;font-size:15.5px;line-height:1.4}.whitepaper h2{font-size:17px;margin-top:25px}.paper-view footer{margin:0 22px;padding:24px 0}}
@media print{.paper-view{background:white;font-size:11.5pt}.whitepaper{border:0;box-shadow:none;margin:0;padding:0;max-width:none}.whitepaper h1{font-size:23pt}.whitepaper .abstract{font-size:10.4pt}.whitepaper h2{font-size:11.8pt}.whitepaper h3{font-size:10.3pt}}

/* Keep the rooted tulip aligned with the header wordmark. */
.brand{display:inline-flex;align-items:center;gap:9px;flex-shrink:0;white-space:nowrap}
.brand-icon{display:block;width:32px;height:32px;flex-shrink:0}
@media(max-width:600px){.brand{gap:6px}.brand-icon{width:27px;height:27px}.site-header{gap:16px}}
