:root{--yellow:#fdd406;--yellow-deep:#e9c200;--ink:#222;--ink-2:#333;--ink-3:#505050;--ink-4:#6b6b6b;--muted:#b4b1b1;--line:#e6e5e1;--rule:#0000001f;--paper:#f8f7f7;--paper-2:#fcfbfb;--night:#0b0b0b;--night-line:#1d1d1d;--night-rule:#ffffff24;--font:var(--font-aspekta), system-ui, "Helvetica Neue", Arial, sans-serif;--cols:6;--frame-max:1680px;--gutter:clamp(16px, 4.4vw, 64px);--pad:clamp(12px, 1.1vw, 16px);--edge:max(var(--gutter), (100% - var(--frame-max)) / 2);--edge-vw:max(var(--gutter), (100vw - var(--frame-max)) / 2);--section:clamp(96px, 9vw, 160px);--block:clamp(40px, 4.5vw, 72px);--text-display:clamp(2.5rem, 1.45rem + 3.9vw, 5rem);--text-h2:clamp(1.75rem, 1.2rem + 2vw, 3rem);--text-h3:clamp(1.375rem, 1.1rem + 1vw, 2.125rem);--text-lead:clamp(1.25rem, 1.05rem + .75vw, 1.75rem);--text-body:1.0625rem;--text-small:.875rem;--text-label:.8125rem;--ease-out:cubic-bezier(.23, 1, .32, 1);--ease-in-out:cubic-bezier(.77, 0, .175, 1);--ease-drawer:cubic-bezier(.32, .72, 0, 1);--ease-draw:cubic-bezier(.65, 0, .35, 1);--t-hover:.16s;--t-bar:.28s;--header-height:112px}@media (max-width:991px){:root{--header-height:64px}}@media (max-width:767px){:root{--cols:2}}*,:before,:after{box-sizing:border-box}html{-moz-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:24px}@media (max-width:991px){html{scroll-padding-top:calc(var(--header-height) + 16px)}}body{background:var(--paper);min-height:100dvh;color:var(--ink);font-family:var(--font);font-size:var(--text-body);font-kerning:normal;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-weight:400;line-height:1.65}h1,h2,h3,h4,p,ul,ol,dl,dd,figure,blockquote{margin:0}h1,h2,h3,h4{text-wrap:balance;font-weight:600}p{text-wrap:pretty}a{color:inherit}img,svg,video,iframe{max-width:100%;display:block}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer}::selection{background:var(--yellow);color:var(--ink)}:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.grid,.sub{grid-template-columns:repeat(var(--cols), minmax(0, 1fr));display:grid}.grid,.frame{margin-inline:var(--edge)}.sub{grid-template-columns:subgrid;padding-inline:0}:where(.grid,.sub)>*{min-width:0;padding-inline:var(--pad)}.label{color:var(--ink-4);font-size:var(--text-label);letter-spacing:.08em;text-transform:uppercase;font-variant-numeric:tabular-nums;font-weight:600;line-height:20px}@keyframes draw{0%{transform:scaleX(0)}}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.draw{transform-origin:0;animation:linear both draw;animation-timeline:view();animation-range:entry cover 30%}}}.reveal{position:relative}.reveal:after{content:"";z-index:2;background:var(--line);transform-origin:100%;pointer-events:none;animation:reveal 1.1s var(--ease-draw) .1s both;position:absolute;inset:0}@keyframes reveal{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.prose{max-width:68ch;color:var(--ink-2);overflow-wrap:break-word;font-size:1.125rem;line-height:1.7}.prose>*+*{margin-top:1.25em}.prose h2{color:var(--ink);font-size:var(--text-h3);letter-spacing:-.015em;margin-top:2em;line-height:1.15}.prose h3{color:var(--ink);margin-top:1.75em;font-size:1.375rem;line-height:1.3}.prose :is(h2,h3)+*{margin-top:.75em}.prose strong{color:var(--ink);font-weight:600}.prose ul,.prose ol{padding-left:28px}.prose ul{list-style:none}.prose ul>li{position:relative}.prose ul>li:before{content:"";background:var(--yellow);width:14px;height:4px;position:absolute;top:calc(.85em - 2px);left:-28px}.prose li+li{margin-top:.5em}.prose ol li::marker{color:var(--ink-4);font-variant-numeric:tabular-nums}.prose a{color:var(--ink);text-decoration-line:underline;-webkit-text-decoration-color:var(--yellow);text-decoration-color:var(--yellow);text-underline-offset:4px;transition:text-decoration-color var(--t-hover) ease;text-decoration-thickness:3px}@media (hover:hover) and (pointer:fine){.prose a:hover{-webkit-text-decoration-color:var(--ink);text-decoration-color:var(--ink)}}.prose blockquote{border-left:4px solid var(--yellow);color:var(--ink);padding-left:20px;font-size:1.5rem;font-weight:500;line-height:1.5}.prose img{width:100%;height:auto}@media (max-width:767px){.prose{font-size:1.0625rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
