body{margin:0;color:#19352f;font:17px/1.65 system-ui,sans-serif;background:#fafcf9}main,footer,.trail{max-width:52rem;margin:auto;padding:1.3rem clamp(1rem,5vw,3rem)}.trail{margin-top:5rem;font-size:.85rem}header{border-top:4px solid #167763;padding:2rem 0}small,dt{font-weight:700;color:#096550}h1{font-size:clamp(2.2rem,6vw,4.2rem);line-height:1.04;letter-spacing:-.045em}h2{margin:2.5rem 0 .8rem;line-height:1.2}a{color:#085c4d;text-underline-offset:.17em;overflow-wrap:anywhere}.lead{font-size:1.3rem}pre{background:#142b27;color:#ecf8ed;padding:1rem;overflow:auto;border-radius:.5rem}blockquote{border-left:3px solid #368274;margin:1rem 0;padding:.5rem 1rem;background:#edf4ee}details{padding:.7rem 0;border-bottom:1px solid #c4d4cc}summary,button{cursor:pointer;font-weight:600}dd{margin:0 0 1rem}.cta,button{display:inline-block;background:#145746;color:white;padding:.6rem 1rem;border-radius:.35rem;margin-right:1rem}table{display:block;overflow:auto;border-collapse:collapse}td,th{padding:.4rem;border:1px solid #bacdc2}article{overflow-wrap:anywhere}footer{border-top:1px solid #bfd0c6}
/* Research Tools typography, surfaces and navigation spacing. */
:root{scroll-padding-top:6rem}
body:has(.cpu-product){background:#fff;font-family:Poppins,system-ui,sans-serif}
body:has(.cpu-product) .trail{margin-top:4.4rem;padding-block:.6rem;border-bottom:1px solid #dce6e0}
main.cpu-product{padding-top:1rem;padding-bottom:4rem}
.cpu-product .cpu-hero{background:#f1f6f2;border:1px solid #cbdcd2;border-top:4px solid #277260;border-radius:0 0 16px 16px;padding:clamp(1.2rem,4vw,2.6rem)}
.cpu-product h1,.cpu-product h2{font-family:"Playfair Display",Georgia,serif;color:#1f453d}
.cpu-product h1{font-size:clamp(2.15rem,5vw,3.6rem);margin:.7rem 0;line-height:1.08}
.cpu-product .lead{line-height:1.5;font-size:1.18rem}
.cpu-actions,.cpu-jumps{display:flex;align-items:center;flex-wrap:wrap;gap:.6rem 1rem}
.cpu-actions .cta{margin:0;text-decoration:none;border-radius:.5rem}
.cpu-jumps{font-size:.92rem;border-block:1px solid #d8e2db;padding:.7rem 0;margin:1.4rem 0}
.cpu-jumps a,.cpu-product summary{padding:.45rem .2rem}
.cpu-product dt{border-top:1px solid #dce6e0;padding-top:.75rem}
.cpu-product :focus-visible,.trail :focus-visible{outline:3px solid #196a83;outline-offset:3px}
.cpu-product [hidden]{display:none}
@media(max-width:520px){.cpu-product .cpu-hero{padding:1.1rem}.cpu-jumps strong{width:100%}.cpu-jumps{gap:.15rem .9rem}}
.cpu-product .cpu-hero{position:relative;isolation:isolate;overflow:hidden}
.cpu-hero::after{content:"";position:absolute;z-index:-1;pointer-events:none;right:-4rem;top:-5rem;width:16rem;height:15rem;opacity:.32;background:repeating-radial-gradient(ellipse at 75% 20%,transparent 0 13px,#77a897 14px 15px,transparent 16px 23px);mask-image:linear-gradient(220deg,#000 25%,transparent 80%)}
.cpu-contracts,.cpu-flow ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem}
.cpu-contracts>div{padding:1.1rem;border:1px solid #ceded4;border-radius:14px;background:linear-gradient(155deg,#edf5ef,white 65%)}
.cpu-product .cpu-contracts dt{padding:0;border:0}.cpu-contracts svg{display:block;margin-bottom:.8rem}.cpu-contracts dd{font-size:.96rem;margin:.5rem 0 0}
.cpu-flow{margin:1.2rem 0;padding:clamp(1rem,3vw,2rem);border-radius:16px;color:#f4faf5;background-color:#173f37;background-image:radial-gradient(#386054 1px,transparent 1px);background-size:15px 15px}
.cpu-flow figcaption{font:600 1.5rem/1.25 Georgia,serif}.cpu-flow figcaption span,.cpu-stamp{display:block;font:700 .76rem/1.5 system-ui;letter-spacing:.07em;text-transform:uppercase}.cpu-flow figcaption span{color:#b4e5cb;margin-bottom:.4rem}
.cpu-flow ol{list-style:none;padding:0;margin:1.4rem 0 0;gap:1.4rem}.cpu-flow li{position:relative;background:#204a40;border:1px solid #56816e;border-radius:10px;padding:.85rem}.cpu-flow li:not(:last-child)::after{content:"→";position:absolute;left:100%;top:40%;width:1.4rem;text-align:center;color:#b4e5cb}.cpu-flow li>*{display:block}.cpu-flow b{margin:.5rem 0 .2rem}.cpu-flow li span{color:#dcebe2;font-size:.88rem}.cpu-flow svg{color:#ade2c4}.cpu-stamp{color:#326650}
@media(max-width:680px){.cpu-contracts,.cpu-flow ol{grid-template-columns:1fr}.cpu-flow li:not(:last-child)::after{content:"↓";top:100%;left:1rem}.cpu-contracts svg{display:inline-block;vertical-align:middle;margin:0 .6rem 0 0}}
.cpu-uses{margin-block:2.6rem}.cpu-uses h2{margin-top:.35rem}.cpu-use-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,15rem),1fr));gap:1rem}.cpu-use-grid>div{border-top:2px solid #8eb5a2;padding:.85rem .3rem}.cpu-use-grid span{font:700 .78rem/1.5 system-ui;color:#326650}.cpu-use-grid h3{margin:.35rem 0;color:#1f453d;font:700 1.18rem/1.25 Georgia,serif}.cpu-use-grid p{margin:.45rem 0;font-size:.95rem}
