.gf,.tool-page{--gap: clamp(12px, 1.4vw, 24px);--sans: "Instrument Sans", system-ui, -apple-system, "Segoe UI", sans-serif;--t-label: 11px;--t-meta: 13px;--t-small: 15px;--t-body: 16px;--t-read: 18px;--t-lead: clamp(17px, 1.3vw, 20px);--t-work: clamp(17px, 1.25vw, 20px);--t-row: 16px;--t-h2: clamp(22px, 1.8vw, 28px);--t-name: clamp(26px, 2.2vw, 34px);--t-num: clamp(30px, 2.8vw, 44px);--t-title: clamp(34px, 3.8vw, 60px);--track: .08em;--tight: -.025em;--section: clamp(56px, 9vh, 104px)}.gf .pi{--col: 100%;--pad: var(--gap);--rule: transparent;--serif: var(--sans);--display: var(--sans);min-height:0}.gf .pi :is(.cap-title,.row-title,.next-title,.title,.pi-stat-value,.cap-metric b,.row-lead b,.cap-stats dt){font-weight:600;font-stretch:100%;text-transform:none}.gf .pi :is(.pi-stat-value,.next-title,.title,.foot-title){letter-spacing:var(--tight)}.gf .pi :is(.recog-award b,.xp dt,.btn){font-weight:600}.gf .pi .pi-col{border-left:0;border-right:0}.gf .pi .pi-head,.gf .pi .pi-band.hero{display:none}.gf .pi .btn{border-color:#e3e3e3}.gf a[target=_blank]{--arrow-size: 0px}.gf .pi a.btn[target=_blank]{padding-right:20px}.gf a[target=_blank]:before,.gf a[target=_blank]:after,.gf .pi-stat-source:after{content:none}.gf .press-arrow-fx,.gf .pi-arrow,.gf .pi .lib-row .row-go:not(.is-case){display:none}.gf .pi .lib-row .row-end{grid-template-columns:minmax(0,1fr) auto}.gf .pi .pi-label{font:600 var(--t-label) / 1.2 var(--sans);letter-spacing:var(--track)}.gf :is(.pi-stat-label,.now-cell p,.cap-line,.row-line,h1,h2,h3){text-wrap:balance}.gf :is(p,li,dd,blockquote){text-wrap:pretty}.gf .pi .work .section-title,.gf .pi section[aria-labelledby=numbers-title] .band-head{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.gf .pi .count,.gf .pi .lib-head span{display:none}.gf .pi a:focus-visible{outline:2px solid var(--link);outline-offset:-2px;border-radius:6px}.gf-home .pi .now{padding-top:clamp(14px,2.4vh,28px)}.gf-home .pi .now-cell{padding:0 var(--pad)}.gf-home .pi .now.has-name{grid-auto-rows:auto}.gf-home .pi .now.has-name>.now-cell{display:grid;grid-row:span 2;grid-template-rows:subgrid;row-gap:0;align-items:baseline}.gf-home .pi .now.has-name>.now-cell>*{min-width:0}.gf-home .pi .now-name h1{margin:calc(8px + var(--t-body) * (1.4 + .72) / 2 - 1em * (1.1 + .72) / 2) 0 0;font:600 var(--t-name) / 1.1 var(--sans);letter-spacing:var(--tight);color:var(--ink)}.gf-home .pi .now-links{display:flex;flex-wrap:wrap;gap:4px 18px;margin-top:10px;font:400 var(--t-body) / 1.4 var(--sans)}.gf-home .pi .now-links a,.gf-home .pi .now-cell p a{color:var(--ink);text-decoration:underline;text-decoration-color:#c4c7c5;text-decoration-thickness:1px;text-underline-offset:4px;transition:text-decoration-color .2s var(--ease)}.gf-home .pi .now-links a:hover,.gf-home .pi .now-cell p a:hover{text-decoration-color:currentColor}.gf-home .pi .now-links a[target=_blank],.gf-home .pi .now-cell p a[target=_blank]{--arrow-hit-pad: 0px}.gf-home .pi .now-cell p{margin:8px 0 0;max-width:30ch;font:400 var(--t-body) / 1.4 var(--sans);color:var(--ink)}.gf-home .pi section[aria-labelledby=numbers-title] .pi-reveal{opacity:1;transform:none;transition:none}.gf-home .pi .pi-stats{padding:clamp(24px,3.6vh,40px) 0 0}.gf-home .pi .pi-stat{gap:8px;min-height:0;padding:0 var(--pad)}.gf-home .pi .pi-stat-value{font-size:var(--t-num)}.gf-home .pi .pi-stat-label{max-width:28ch;font:400 var(--t-small) / 1.4 var(--sans)}.gf-home .pi .pi-stat-source{padding-top:2px}.gf-home .pi a.pi-stat:hover{background:none}.gf-home .pi a.pi-stat:hover .pi-stat-label{color:var(--ink)}.gf-home .pi .work .grid{padding-top:var(--section);row-gap:clamp(40px,6vh,72px)}.gf-home .pi .card :is(.pi-plate){margin:0 var(--pad);border-radius:6px}.gf-home .pi .cap,.gf-home .pi .cap.is-stacked{min-height:0;margin-top:18px;padding:0 var(--pad);gap:6px}.gf-home .pi .card:hover .cap,.gf-home .pi .card:focus-visible .cap{background:none}.gf-home .pi .cap-title{font-size:var(--t-work);line-height:1.2;letter-spacing:-.01em;text-decoration:underline 2px transparent;text-underline-offset:.18em;transition:text-decoration-color .22s var(--ease)}.gf-home .pi .card:hover .cap-title{text-decoration-color:currentColor}.gf-home .pi .cap-tags{font:400 var(--t-meta) / 1.45 var(--sans)}.gf-home .pi .cap-body{gap:14px;padding:14px var(--pad) 0}.gf-home .pi .cap-problem{max-width:50ch;font:400 var(--t-body) / 1.5 var(--sans)}.gf-home .pi .cap-metric{font:400 var(--t-small) / 1.4 var(--sans);color:var(--muted)}.gf-home .pi .cap-metric b{margin-right:8px;font-size:var(--t-work)}.gf-home .pi .cap-recog{gap:10px;margin-top:6px;padding-top:0}.gf-home .pi .recog-award{font-size:var(--t-small)}.gf-home .pi .recog-award b{font:600 var(--t-small) / 1.3 var(--sans)}.gf-home .pi .recog-quote{font:400 var(--t-body) / 1.45 var(--sans)}.gf-home .pi .recog-quote cite{font:400 var(--t-meta) / 1.3 var(--sans)}.gf-home .pi .section-title{justify-content:flex-start;padding:var(--section) var(--pad) clamp(20px,3vh,32px)}.gf-home .pi .section-title h2,.gf-home .pi .about-text h2{margin:0;font:600 var(--t-h2) / 1.2 var(--sans);letter-spacing:-.02em;text-transform:none;color:var(--ink)}.gf-home .pi .lib-head{padding:0 var(--pad) 8px;color:var(--faint)}.gf-home .pi .lib-group+.lib-group{margin-top:clamp(28px,4vh,48px)}.gf-home .pi .row{padding-block:10px}.gf-home .pi .row-title{font-size:var(--t-row);line-height:1.15}.gf-home .pi :is(.row-org,.row-year){font:400 var(--t-meta) / 1.3 var(--sans);color:var(--muted)}.gf-home .pi .row-lead{font:400 var(--t-small) / 1.45 var(--sans)}.gf-home .pi .row-lead b{font-size:var(--t-row)}.gf-home .pi .row-recog{font:400 var(--t-meta) / 1.35 var(--sans)}.gf-home .pi .about{grid-template-columns:repeat(2,minmax(0,1fr))}.gf-home .pi .about-text,.gf-home .pi .xp{padding-top:var(--section)}.gf-home .pi .about-text{padding-inline:var(--pad);padding-bottom:0}.gf-home .pi .about-text h2{margin-bottom:18px}.gf-home .pi .about-text h2,.gf-home .pi .xp div:first-child dt{text-box:trim-both cap alphabetic}.gf-home .pi .about-text p{max-width:34em;margin-bottom:16px;font:400 var(--t-lead) / 1.5 var(--sans)}.gf-home .pi .about-text .hero-actions{margin-top:24px}.gf-home .pi .xp div{padding:14px var(--pad)}.gf-home .pi .xp div:first-child{padding-top:0}.gf-home .pi .xp dt{font:600 var(--t-small) / 1.3 var(--sans)}.gf-home .pi .xp dd{font:400 var(--t-small) / 1.4 var(--sans)}.gf-home .pi .foot-main{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px calc(var(--pad) * 2);padding:var(--section) var(--pad) 32px}.gf-home .pi .foot-title{font-weight:600;font-size:clamp(40px,5.2vw,76px)}.gf-home .pi .foot-links,.gf-case .pi-case .foot-row{align-items:baseline}.gf-home .pi .foot-links{font:400 var(--t-small) / 1.3 var(--sans)}.gf-home .pi .foot-links a{text-decoration-color:#e3e3e3}.gf-home .pi .foot-links a:hover{text-decoration-color:currentColor}.gf-case .pi-case .head-aside .summary{font:400 var(--t-lead) / 1.5 var(--sans)}.gf-case .pi-case .facts dd{font:400 var(--t-body) / 1.4 var(--sans)}.gf-case .pi-case .hero :is(.hero-plate){border-radius:0}.gf-case .pi-case .slides{padding-inline:var(--gap)}.gf-case .pi-case .slides .slide-plate{border-radius:0}.gf-case .pi-case .body{grid-template-columns:minmax(0,1fr) minmax(0,3fr)}.gf-case .pi-case .body.no-toc .pi-doc{grid-column:2;margin:0}.gf-case .pi-case .toc{grid-template-columns:minmax(0,260px);padding:clamp(32px,4vw,56px) var(--pad) 0}.gf-case .pi-case .toc a{grid-template-columns:minmax(0,1fr);font:400 var(--t-meta) / 1.4 var(--sans)}.gf-case .pi-case .toc-n{display:none}.gf-case .pi-case .toc-bar{height:2px;background:#e3e3e3}.gf-case .pi-case .tldr-in{padding-top:clamp(32px,4vw,56px)}.gf-case .pi-case .tldr-in h2{max-width:var(--text);margin:0 0 14px;color:var(--ink);font:600 var(--t-h2) / 1.25 var(--sans);letter-spacing:-.02em;text-transform:none}.gf-case .pi-case .tldr-in dl div{grid-template-columns:minmax(0,var(--text));gap:0;padding:12px 0}.gf-case .pi-case .tldr-in dt{padding:0 0 4px}.gf-case .pi-case .tldr-in dd{max-width:none;font:400 var(--t-body) / 1.5 var(--sans)}.gf-case .pi-case .pi-doc{font:400 var(--t-read) / 1.65 var(--sans)}.gf-case .pi-case .pi-doc h2{margin:72px 0 14px;padding-top:0;border-top:0;font:600 var(--t-h2) / 1.25 var(--sans);letter-spacing:-.02em}.gf-case .pi-case .pi-doc h2:before{content:none}.gf-case .pi-case .pi-doc h2:first-child{margin-top:0}.gf-case .pi-case .pi-doc h3{margin:36px 0 6px;font:600 var(--t-body) / 1.35 var(--sans)}.gf-case .pi-case .pi-doc blockquote{font:400 var(--t-lead) / 1.5 var(--sans)}.gf-case .pi-case .pi-doc th{font:600 var(--t-label) / 1.3 var(--sans);letter-spacing:var(--track);border-bottom-color:#e3e3e3}.gf-case .pi-case .pi-doc td{font-size:var(--t-small);border-bottom-color:#e3e3e3}.gf-case .pi-case .pi-doc .ids-colors-bar{margin-top:12px;font:600 var(--t-label) / 1.3 var(--sans);letter-spacing:var(--track);color:var(--muted)}.gf-case .pi-case .pi-doc .ids-colors-season,.gf-case .pi-case .pi-doc .ids-colors-btn:hover{color:var(--ink)}.gf-case .pi-case .pi-doc .ids-colors-name{margin-top:8px;font:600 var(--t-body) / 1.4 var(--sans);letter-spacing:0}.gf-case .pi-case .pi-doc .ids-colors-quote{font:400 var(--t-body) / 1.5 var(--sans)}.gf-case .pi-case .pi-doc table:has(td:nth-child(3)):not(:has(.doc-image)){display:table!important;width:100%!important;table-layout:auto;margin:28px auto 36px;font:400 var(--t-small) / 1.45 var(--sans)}.gf-case .pi-case .pi-doc table:has(td:nth-child(3)):not(:has(.doc-image)) :is(td,th){position:static;width:auto;padding:11px 20px 11px 0;background:none;text-align:left;white-space:normal}.gf-case .pi-case .pi-doc table:has(td:nth-child(3)):not(:has(.doc-image)) td:first-child{white-space:nowrap;font-weight:600}.gf-case .pi-case .pi-col:has(>.pi-stats){display:grid;grid-template-columns:minmax(0,1fr) minmax(0,3fr);padding-top:var(--section)}.gf-case .pi-case .pi-col:has(>.pi-stats) .band-head{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.gf-case .pi-case .pi-col:has(>.pi-stats) .pi-stats{grid-column:2;width:calc(200% / 3);grid-template-columns:repeat(2,minmax(0,1fr));row-gap:clamp(28px,4vh,40px)}.gf-case .pi-case .pi-stat.is-wide{grid-column:1 / -1}.gf-case .pi-case .pi-stat.is-wide .pi-stat-label{max-width:52ch}.gf-case .pi-case .pi-stat{gap:8px;min-height:0;padding:0 var(--pad)}.gf-case .pi-case .pi-stat-value{font-size:var(--t-num)}.gf-case .pi-case .pi-stat-label{font:400 var(--t-small) / 1.4 var(--sans)}.gf-case .pi-case .related{padding-left:calc(25% + var(--pad));font:400 var(--t-body) / 1.4 var(--sans)}.gf-case .pi-case .next{grid-template-columns:minmax(0,1fr) minmax(0,3fr);margin-top:var(--section)}.gf-case .pi-case .next-home{display:none}.gf-case .pi-case .next-link{grid-column:2}.gf-case .pi-case .next-title{font-size:var(--t-title)}.gf-case .pi-case .next-link .pi-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.gf-case .pi-case .next-title:after{content:"";display:inline-block;width:.8em;height:.58em;margin-left:.3em;background:currentColor;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 22 16'%3E%3Cpath d='M0 8h19M12.4 1.4 19 8l-6.6 6.6' fill='none' stroke='%23000' stroke-width='3' stroke-miterlimit='10'/%3E%3C/svg%3E") center / contain no-repeat;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 22 16'%3E%3Cpath d='M0 8h19M12.4 1.4 19 8l-6.6 6.6' fill='none' stroke='%23000' stroke-width='3' stroke-miterlimit='10'/%3E%3C/svg%3E") center / contain no-repeat;transition:transform .3s cubic-bezier(.2,.8,.2,1)}.gf-case .pi-case .next-link:hover .next-title:after{transform:translate(.12em)}@media(prefers-reduced-motion:reduce){.gf-case .pi-case .next-title:after{transition:none}}.gf-case .pi-case .foot-row{padding-left:calc(25% + var(--pad));font:400 var(--t-small) / 1.3 var(--sans)}@media(max-width:860px){.gf-home .pi .now.has-name,.gf-home .pi .pi-stats{row-gap:28px}.gf-home .pi .about{grid-template-columns:minmax(0,1fr)}.gf-home .pi .xp{padding-top:32px}.gf-home .pi .foot-main{grid-template-columns:minmax(0,1fr)}.gf-case .pi-case .pi-col:has(>.pi-stats){grid-template-columns:minmax(0,1fr);row-gap:20px}.gf-case .pi-case .pi-col:has(>.pi-stats) .pi-stats{grid-column:auto;grid-template-columns:repeat(2,minmax(0,1fr));row-gap:24px}}@media(max-width:980px){.gf-case .pi-case .body,.gf-case .pi-case .next{grid-template-columns:minmax(0,1fr)}.gf-case .pi-case .next-link{grid-column:auto}.gf-case .pi-case .pi-col:has(>.pi-stats){grid-template-columns:minmax(0,1fr)}.gf-case .pi-case .pi-col:has(>.pi-stats) .pi-stats{grid-column:auto;width:auto}.gf-case .pi-case :is(.related,.foot-row){padding-left:var(--pad)}.gf-case .pi-case .tldr-in,.gf-case .pi-case .body.no-toc .pi-doc{grid-column:1}}@media(max-width:760px){.gf-home .pi .work .grid{row-gap:48px}.gf-home .pi .pi-stats{row-gap:20px}}@media(max-width:600px){.gf{--t-read: 17px}}
