:root{--paper:#fafaf5;--ink:#223643;--rule:#78858a;--input:#fff;--focus:#415564;--body:Arial,sans-serif;--display:Courier,monospace}[hidden]{display:none!important}.fields input::placeholder,.fields textarea::placeholder{color:var(--ink);opacity:1}.summary,.result{overflow-wrap:anywhere}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:17px;line-height:1.6}a{color:inherit;text-underline-offset:4px}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}img{max-width:100%;height:auto;display:block}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--display);font-weight:400;line-height:1.05}h1{font-size:clamp(2.8rem,5.5vw,5.7rem);letter-spacing:-.045em}h2{font-size:clamp(2rem,3vw,3rem);letter-spacing:-.025em}h3{font-size:1.08rem}p{max-width:65ch}.wrap{width:min(1180px,calc(100% - 48px));margin:auto}.skip{position:absolute;top:-100px;left:16px;padding:12px;background:var(--paper);z-index:20}.skip:focus{top:12px}:focus-visible{outline:3px solid var(--focus);outline-offset:5px}.header{padding:22px 0;border-bottom:1px solid var(--rule)}.header .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px}.wordmark{display:flex;align-items:center;gap:12px;font-size:1.3rem;letter-spacing:-.03em;font-weight:700;text-decoration:none;white-space:nowrap}.wordmark svg{flex:none}.nav{display:flex;gap:26px;align-items:center}.nav a{font-size:.95rem;text-decoration:none;min-height:44px;display:inline-flex;align-items:center}.menu{display:none;padding:8px 12px;color:var(--ink);background:transparent;border:1px solid var(--rule)}.button{display:inline-block;background:var(--ink);color:var(--paper);border:1px solid var(--ink);text-decoration:none;padding:13px 22px;font-weight:600;min-height:48px}.button.secondary{background:transparent;color:var(--ink)}.overline{font-family:var(--body);font-size:.85rem;text-transform:uppercase;letter-spacing:.12em}.lede{font-size:1.22rem}.section{padding:76px 0;border-top:1px solid var(--rule)}.split{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:start}.figure{margin:0}.figure figcaption{font-size:.84rem;margin-top:15px;max-width:60ch}.article{max-width:780px;padding:75px 0}.article h2{font-size:2rem;margin-top:42px}.article ul{padding-left:24px}.project-list{list-style:none;padding:0;margin:0}.project-list li{padding:24px 0;border-top:1px solid var(--rule)}.project-list li:last-child{border-bottom:1px solid var(--rule)}.project-list p{margin-bottom:0}.fields{display:grid;grid-template-columns:1fr 1fr;gap:22px}.fields label{display:block;font-size:.95rem}.fields input,.fields select,.fields textarea{display:block;width:100%;margin-top:7px;padding:12px;border:1px solid var(--rule);border-radius:0;background:var(--input);color:var(--ink);min-height:48px}.full{grid-column:1/-1}.hint{font-size:.88rem;margin:22px 0}.status{margin:20px 0 0}.status.error{font-weight:700}.footer{padding:50px 0;border-top:1px solid var(--rule);font-size:.88rem}.footer-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px}.footer nav{display:flex;gap:20px;flex-wrap:wrap;margin:25px 0}.footer .address{font-size:.85rem}noscript{display:block;padding:24px}.summary{white-space:pre-wrap;font:inherit;padding:24px;border:1px solid var(--rule);margin-top:25px}.brief-controls{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:26px 0}.brief-controls label{display:block;padding:17px;border-top:1px solid var(--rule)}.brief-controls input{margin-right:10px;width:18px;height:18px;vertical-align:middle}.sources{font-size:.95rem}button:disabled{opacity:.65;cursor:wait}@media(max-width:760px){.wrap{width:calc(100% - 36px)}.header .wrap{flex-wrap:wrap;gap:10px}.menu{display:block}.nav{display:none;width:100%;flex-direction:column;gap:0;align-items:stretch}.nav.open{display:flex}.nav a{padding:8px 0}.split,.fields,.footer-grid,.brief-controls{grid-template-columns:1fr;gap:28px}.full{grid-column:auto}.section{padding:48px 0}.article{padding:48px 0}.lede{font-size:1.1rem}.summary{padding:16px}.footer nav{gap:16px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}.hero{padding:65px 0}.hero h1{max-width:18ch}.tool-header{display:grid;grid-template-columns:1.1fr 1fr;gap:45px;align-items:center}.tool-index{margin:40px 0;border-top:3px solid var(--ink)}.tool-index article{display:grid;grid-template-columns:80px 1fr 170px;gap:25px;align-items:center;padding:30px 0;border-bottom:1px solid var(--rule)}.tool-index h2{font-size:2rem}.tool-index p{margin-bottom:0}.tool-code{font:1.4rem Courier,monospace}.worksheet{border:1px solid var(--rule);padding:28px;margin:35px 0}.worksheet h2{font-size:2rem}.worksheet .fields{margin:25px 0}.result{padding:20px;border-left:4px solid var(--ink);margin-top:20px;white-space:pre-wrap}.notebook{display:grid;grid-template-columns:1fr 1fr;gap:20px}.notebook label{padding:16px;border-top:1px solid var(--rule)}.notebook input{margin-right:12px;width:18px;height:18px}.summary{margin-bottom:25px}.figure figcaption{font-size:.88rem;margin-top:14px}.equation{font-family:Courier,monospace}@media(max-width:760px){.tool-header,.notebook{grid-template-columns:1fr}.tool-index article{grid-template-columns:45px 1fr;gap:15px}.tool-index article .button{grid-column:2}.worksheet{padding:20px}}
.fields .record-check{display:flex;gap:12px;align-items:flex-start;min-height:44px}.fields input[data-record]{display:inline-block;width:20px;height:20px;min-height:20px;flex:none;margin:3px 0 0}
@media print{.header,.footer,.skip,button,noscript{display:none!important}.article{padding:0;width:100%;max-width:none}.worksheet{break-inside:avoid}body{background:white;color:black}}
