:root{--paper:#f1f2ee;--panel:#e6e8e2;--ink:#1c2530;--muted:#4a5561;--rule:#c9cdc6;--blue:#1f6a9e;--yellow:#f5de6b;--chart:#c99a12}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font:18px/1.6 'Atkinson Hyperlegible',Arial,sans-serif}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:Petrona,Georgia,serif;font-weight:400;line-height:1.1;letter-spacing:-.035em}h1{font-size:clamp(48px,5.3vw,76px);max-width:950px;margin:24px 0 28px}h2{font-size:clamp(34px,3.5vw,48px);max-width:780px;margin-bottom:27px}h3{font-size:29px;line-height:1.2}p+p{margin-top:19px}a{color:inherit;text-underline-offset:5px}button,input{font:inherit}button,a,input{touch-action:manipulation}a:hover{color:var(--blue)}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--blue);outline-offset:5px}.wrap{width:min(1280px,100% - 96px);margin-inline:auto}.skip{position:absolute;left:20px;top:-100px;z-index:20;background:var(--ink);color:white;padding:12px}.skip:focus{top:10px}header{border-bottom:1px solid var(--rule)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:35px;min-height:100px}.brand{display:inline-flex;align-items:center;gap:13px;text-decoration:none;color:var(--ink);flex-shrink:0}.brand-symbol{width:42px;height:42px;border:1px solid currentColor;display:flex;align-items:center;justify-content:center;gap:3px;font:17px/1 Georgia;letter-spacing:-.1em}.brand-symbol span{width:1px;height:22px;background:currentColor;transform:rotate(24deg)}.brand-name{font:700 13px/1.12 Arial,sans-serif;letter-spacing:.2em}nav{display:flex;align-items:center;gap:24px}nav a{font-size:15px;text-decoration:none;white-space:nowrap}nav a[aria-current=page]{text-decoration:underline;text-decoration-thickness:1px}nav .nav-cta{padding:11px 15px;border:1px solid var(--ink);font-weight:700}.menu-toggle{display:none}.eyebrow,.margin-label{font:500 12px/1.6 'IBM Plex Mono',monospace;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.hero{padding-top:70px;padding-bottom:82px}.hero>div>p:not(.eyebrow){max-width:700px}.hero-split{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,.85fr);gap:7%;align-items:center}.hero-split h1{font-size:clamp(45px,4.8vw,69px)}.hero .actions{margin:30px 0}.hero .actions+p,.hero>div>p:last-child:has(.status){font-size:14px;color:var(--muted)}.hero-split .worksheet{padding:28px;background:var(--panel);border-top:2px solid var(--ink)}.worksheet p{font-size:14px}.worksheet table{font-size:16px;min-width:0}.worksheet th{font-size:12px}.worksheet td{padding:15px 0}.worksheet tr:nth-child(3) td:last-child,.worksheet tr:nth-child(4) td:last-child{font-weight:700;background:var(--yellow)}.worksheet .actions{margin-bottom:0}.actions{display:flex;gap:25px;align-items:center;flex-wrap:wrap;margin-top:28px}.button{background:var(--ink);color:white;display:inline-flex;align-items:center;justify-content:center;min-height:49px;padding:12px 21px;text-decoration:none;font-size:16px;font-weight:700;border:1px solid var(--ink)}.button:hover{background:var(--blue);border-color:var(--blue);color:white}.text-link{font-size:16px;font-weight:700}.annotated{display:grid;grid-template-columns:235px minmax(0,760px);gap:65px}.annotated>aside{padding-top:8px}.section{padding:76px 0;border-top:1px solid var(--rule)}.band{background:var(--panel)}.status{display:inline-flex;align-items:baseline;gap:8px;font:400 12px/1.5 'IBM Plex Mono',monospace;letter-spacing:0;color:var(--muted)}.status:before{content:'';height:7px;width:7px;border:1px solid currentColor;border-radius:50%;flex-shrink:0;display:inline-block;align-self:center}.s0:before{background:currentColor}.s1:before{border-style:dashed}.section p:has(>.status:only-child){margin:25px 0 12px}.section h2+p:has(>.status:only-child){margin-top:0}.caption{font-size:14px;color:var(--muted);line-height:1.5}.table-scroll{overflow-x:auto;margin:24px 0}table{width:100%;border-collapse:collapse;text-align:left;font-size:16px}th{font-size:13px;font-weight:400;color:var(--muted);padding:12px 12px 12px 0;border-block:1px solid var(--rule)}td{padding:18px 14px 18px 0;border-bottom:1px solid var(--rule);vertical-align:top}td:last-child,th:last-child{padding-right:0}td:first-child strong{font-family:Petrona,Georgia,serif;font-size:23px;font-weight:500}td .status{font-size:12px}ul{padding-left:22px}li{margin-bottom:12px}.example{padding:80px 0;border-block:1px solid var(--rule)}.example aside .caption{margin-top:15px}.example .caption{margin-top:18px}.demo{padding:30px;background:var(--paper);border:1px solid var(--rule);margin:35px 0 25px}.range-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:16px}.range-heading output{font:500 17px 'IBM Plex Mono',monospace;background:var(--yellow);padding:3px 7px;white-space:nowrap}input[type=range]{width:100%;accent-color:var(--blue);cursor:pointer;min-height:44px;margin:13px 0 0}.demo .caption{margin-top:6px}.squares{display:grid;grid-template-columns:repeat(21,1fr);gap:5px;margin-top:23px}.squares span{height:14px;border:1px solid var(--rule)}.squares span.used{background:var(--ink);border-color:var(--ink)}.squares span.missing{border:1px dashed var(--ink)}.squares span.unavailable{opacity:.3}.chart{margin-top:35px}.bar-row{margin-bottom:20px}.bar-label{display:flex;justify-content:space-between;font-size:14px;gap:12px;margin-bottom:6px}.bar-label span{font-family:'IBM Plex Mono',monospace;font-size:13px}.bar-track{height:16px;background:var(--panel)}.bar{display:block;height:100%}.projected{background:#7c8791}.supported{background:var(--blue)}.changes{background:var(--chart)}.combined{display:flex}.changes.empty{background:transparent;border:1px dashed var(--muted)}.target{border-top:1px solid var(--rule);padding-top:12px}.demo-answer{margin:26px 0;padding-top:24px;border-top:1px solid var(--ink)}.demo-answer p{font-size:16px;margin-top:15px}.reset{background:none;border:0;border-bottom:1px solid var(--ink);padding:6px 0;cursor:pointer;font-size:14px}.closing{padding:75px 0;background:var(--ink);color:var(--paper)}.closing .eyebrow,.closing .caption{color:#c9cdc6}.closing .button{color:var(--ink);background:var(--paper);border-color:var(--paper)}.closing .button:hover{background:white}.closing .text-link{color:var(--paper)}.closing a:hover{color:var(--paper)}.closing a.button:hover{color:var(--ink)}.portrait img{width:100%;height:460px;object-fit:cover;object-position:center 38%;display:block}.portrait figcaption{font-size:14px;line-height:1.5;margin-top:18px;color:var(--muted)}.portrait strong{font-family:Petrona,Georgia,serif;font-size:22px;color:var(--ink);font-weight:500}.page-about .hero-split{grid-template-columns:1.25fr 1fr}.page-contact .hero{max-width:1100px}.page-about .section:last-child p:nth-last-of-type(1){font-size:13px}.footer-inner{display:grid;grid-template-columns:1.4fr .7fr 1fr;gap:50px;padding:65px 0;color:var(--muted);font-size:14px}.footer-tag{font-family:Petrona,Georgia,serif;font-size:24px;line-height:1.3;max-width:280px;margin-top:23px}.footer-links{display:flex;flex-direction:column;gap:8px;align-items:flex-start}.footer-links a{text-decoration:none}.footer-inner>div:last-child p+p{margin-top:5px}.footer-inner>div:last-child>a{display:inline-block;margin-top:12px}
@media(min-width:1000px) and (max-height:850px){.hero{padding-block:45px 60px}.hero-split h1{font-size:61px}.hero .actions{margin:22px 0}.header-inner{min-height:87px}}
@media(max-width:1050px){.wrap{width:calc(100% - 56px)}nav{gap:16px}nav a{font-size:14px}.nav-cta{display:none}.annotated{grid-template-columns:170px minmax(0,1fr);gap:38px}.hero-split{gap:5%}.worksheet{padding:20px!important}.footer-inner{gap:25px}}
@media(max-width:750px){body{font-size:17px}.wrap{width:calc(100% - 38px)}.header-inner{min-height:83px;flex-wrap:wrap;gap:0;position:relative}.menu-toggle{display:block;font-size:14px;background:none;border:1px solid var(--rule);padding:9px 12px}.header-inner nav{display:none;flex-basis:100%;flex-direction:column;align-items:stretch;padding:20px 0;gap:0}.header-inner nav.open{display:flex}.header-inner nav a{padding:11px 0;font-size:16px}.hero{padding-block:45px 58px}.hero-split,.page-about .hero-split{grid-template-columns:1fr;gap:35px}.hero h1,.hero-split h1{font-size:clamp(43px,10vw,61px)}h2{font-size:36px}.hero .actions{gap:20px}.annotated{grid-template-columns:1fr;gap:22px}.annotated>aside{padding:0}.section,.example,.closing{padding-block:52px}.margin-label{font-size:11px}.status{font-size:12px}.worksheet .table-scroll{margin:12px 0}.demo{padding:20px}.range-heading{font-size:14px;gap:10px}.range-heading output{font-size:15px}.squares{gap:3px}.bar-label span{font-size:12px}.demo-answer h3{font-size:28px}.footer-inner{grid-template-columns:1fr 1fr;gap:30px;padding-block:45px}.footer-inner>div:last-child{grid-column:1/-1}.footer-tag{font-size:21px}.portrait img{height:auto;max-height:530px;aspect-ratio:4/4.5}.page-home td{min-width:120px}.page-home .worksheet td{min-width:0}.page-home td:nth-child(2){min-width:230px}.page-home .worksheet td:nth-child(2){min-width:0}table{font-size:15px}.caption{font-size:14px}.actions{gap:18px}.closing a[href^="mailto"]{overflow-wrap:anywhere}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
