:root{--ink:#000;--paper:#fff;--oh-accent:#2b59ff;--oh-ink:#000;--font-sans:"Geist", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"Geist Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--gutter:clamp(16px, 3.2vw, 44px);--max:1520px;--nav-h:72px;--section-y:clamp(72px, 10vw, 168px);--t-display:clamp(56px, 10vw, 176px);--t-h1:clamp(40px, 6.4vw, 104px);--t-h2:clamp(32px, 4.4vw, 68px);--t-h3:clamp(22px, 2.4vw, 34px);--t-lead:clamp(18px, 1.6vw, 24px);--t-body:clamp(16px, 1.1vw, 18px);--t-small:14px;--t-mono:12px;--ease-out:cubic-bezier(.2, .7, .2, 1);--ease-inout:cubic-bezier(.76, 0, .24, 1);--ease-morph:cubic-bezier(.6, 0, .1, 1);--ease-expo:cubic-bezier(.16, 1, .3, 1)}@media (width<=820px){:root{--nav-h:60px}}@font-face{font-family:Geist;src:url(/fonts/Geist-Variable.woff2)format("woff2");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Geist Mono;src:url(/fonts/GeistMono-Variable.woff2)format("woff2");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Geist Draft;src:url(/_astro/Geist-Thin.BESoKewZ.woff2)format("woff2");font-weight:100;font-style:normal;font-display:swap}@font-face{font-family:Geist Draft;src:url(/_astro/Geist-UltraLight.BPsFtSID.woff2)format("woff2");font-weight:200;font-style:normal;font-display:swap}@font-face{font-family:Geist Draft;src:url(/_astro/Geist-Light.Y4L8iFaH.woff2)format("woff2");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Geist Draft;src:url(/_astro/Geist-Regular.C8H52p4o.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Geist Draft;src:url(/_astro/Geist-Medium.Cz2TUCBN.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Geist Draft;src:url(/_astro/Geist-SemiBold.C5bzmgqw.woff2)format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Geist Draft;src:url(/_astro/Geist-Bold.CTONMi3l.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Geist Draft;src:url(/_astro/Geist-UltraBlack.xxBE4_Xx.woff2)format("woff2");font-weight:800;font-style:normal;font-display:swap}@font-face{font-family:Geist Draft;src:url(/_astro/Geist-Black.CR2C9HFV.woff2)format("woff2");font-weight:900;font-style:normal;font-display:swap}@font-face{font-family:Geist Mono Draft;src:url(/_astro/GeistMono-Thin.odfe_C5F.woff2)format("woff2");font-weight:100;font-style:normal;font-display:swap}@font-face{font-family:Geist Mono Draft;src:url(/_astro/GeistMono-UltraLight.DwaCHMLF.woff2)format("woff2");font-weight:200;font-style:normal;font-display:swap}@font-face{font-family:Geist Mono Draft;src:url(/_astro/GeistMono-Light.ChkAGVsl.woff2)format("woff2");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Geist Mono Draft;src:url(/_astro/GeistMono-Regular.BMYtgqBB.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Geist Mono Draft;src:url(/_astro/GeistMono-Medium.BoR4vNvW.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Geist Mono Draft;src:url(/_astro/GeistMono-SemiBold.B-evqv4f.woff2)format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Geist Mono Draft;src:url(/_astro/GeistMono-Bold.GqXsbZOm.woff2)format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Geist Mono Draft;src:url(/_astro/GeistMono-UltraBlack.CsHPbkS_.woff2)format("woff2");font-weight:800;font-style:normal;font-display:swap}@font-face{font-family:Geist Mono Draft;src:url(/_astro/GeistMono-Black.IQ6VWqd9.woff2)format("woff2");font-weight:900;font-style:normal;font-display:swap}*,:before,:after{box-sizing:border-box}html{background:var(--paper);color:var(--ink);scrollbar-color:var(--ink) var(--paper);-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;overflow-x:clip}a,button,input,label,summary{-webkit-tap-highlight-color:transparent}body{min-height:100vh;font-family:var(--font-sans);font-size:var(--t-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;background:var(--paper);color:var(--ink);margin:0;line-height:1.5;overflow-x:clip}body[data-nav=hidden] .site-nav{display:none}::selection{background:var(--ink);color:var(--paper)}.inv ::selection{background:var(--paper);color:var(--ink)}h1,h2,h3,h4,p,ul,ol,figure{margin:0}ul,ol{padding:0;list-style:none}img,svg,video,iframe{max-width:100%;display:block}button,input,select,textarea{font:inherit;color:inherit}button{appearance:none;cursor:pointer;background:0 0;border:0;padding:0}a{color:inherit;text-decoration:none}:focus{outline:none}:focus,[id]{scroll-margin-top:calc(var(--nav-h) + 24px)}:focus{scroll-margin-bottom:20vh}:focus-visible{outline-offset:3px;outline:2px solid}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:1000;background:var(--ink);color:var(--paper);font-family:var(--font-mono);font-size:var(--t-mono);letter-spacing:.06em;text-transform:uppercase;padding:10px 14px;position:fixed;top:8px;left:8px;transform:translateY(-200%)}.skip-link:focus-visible{outline-color:var(--paper);outline-offset:-5px;transform:none}.wrap{width:min(100% - 2 * var(--gutter), var(--max));margin-inline:auto}.section{padding-block:var(--section-y)}.inv{background:var(--ink);color:var(--paper)}@media print{html{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.display{font-size:var(--t-display);letter-spacing:-.045em;text-wrap:balance;font-weight:500;line-height:.92}.h1{font-size:var(--t-h1);letter-spacing:-.04em;text-wrap:balance;font-weight:500;line-height:.96}.h2{font-size:var(--t-h2);letter-spacing:-.035em;text-wrap:balance;font-weight:500;line-height:1.02}.h3{font-size:var(--t-h3);letter-spacing:-.02em;text-wrap:balance;font-weight:500;line-height:1.15}.lead{font-size:var(--t-lead);letter-spacing:-.015em;text-wrap:pretty;max-width:34ch;line-height:1.35}.body{text-wrap:pretty;max-width:58ch}.mono{font-family:var(--font-mono);font-size:var(--t-mono);letter-spacing:.06em;text-transform:uppercase;font-weight:500;line-height:1.4}.eyebrow{align-items:center;gap:12px;display:flex}.eyebrow:before{content:"";background:currentColor;width:24px;height:1px}.rule{transform-origin:0;background:currentColor;height:1px}@media (forced-colors:active){.rule,.eyebrow:before{background:canvastext}}.u-line{padding-bottom:2px;display:inline-block;position:relative}.u-line:after{content:"";transform-origin:100%;height:1px;transition:transform .28s var(--ease-out);background:currentColor;position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.u-line:hover:after,.u-line:focus-visible:after,.is-current .u-line:after{transform-origin:0;transform:scaleX(1)}html.is-scrolling :is(main,body>footer) .u-line:hover:not([data-hover-held],:focus-visible,[aria-pressed=true],.is-current *):after{transform-origin:100%;transform:scaleX(0)}.arrow-link{align-items:center;gap:10px;display:inline-flex}.arrow-link svg{width:14px;height:14px;transition:transform .25s var(--ease-out)}.arrow-link:hover svg{transform:translate(4px)}.btn{letter-spacing:-.01em;white-space:nowrap;--shoot:42px;border:1px solid;justify-content:center;align-items:center;gap:12px;height:48px;padding:0 22px;font-size:15px;font-weight:500;display:inline-flex}.btn-lg{--shoot:50px;height:60px;padding:0 30px;font-size:17px}.btn-fill{background:var(--ink);color:var(--paper);border-color:var(--ink);--fill-bg:var(--paper);--fill-text:var(--ink)}.inv .btn-fill{background:var(--paper);color:var(--ink);border-color:var(--paper);--fill-bg:var(--ink);--fill-text:var(--paper)}@media (hover:hover){.inv .btn-fill:hover,.inv .btn-fill:focus-visible{color:var(--fill-text)}}.inv .btn-fill.is-active{color:var(--fill-text)}.btn-ghost{color:currentColor;border-color:var(--ink);--fill-bg:var(--ink);--fill-text:var(--paper);background:0 0}.inv .btn-ghost{border-color:var(--paper);--fill-bg:var(--paper);--fill-text:var(--ink)}.btn>.btn-arrow{transition:transform .25s var(--ease-out)}.btn:hover>.btn-arrow{transform:translate(4px)}.btn:active{transform:translateY(1px)}.btn-shoot{clip-path:inset(-4px -160px -4px 0);flex:none;width:14px;height:14px;position:relative}.btn-shoot svg{position:absolute;inset:0}.btn-shoot-b,.btn-shoot-c{color:var(--fill-text,var(--paper))}.btn-shoot-a{transition:visibility 0s linear 45ms}.btn-shoot-b{visibility:hidden;transition:visibility 0s linear 45ms,transform}.btn-shoot-c{transform:translate(-150%)}@media (hover:hover){.btn:is(:hover,:focus-visible) .btn-shoot-a{visibility:hidden}.btn:is(:hover,:focus-visible) .btn-shoot-b{visibility:visible;transform:translateX(var(--shoot));transition:visibility 0s linear 45ms,transform .34s cubic-bezier(.36,-.3,.5,.45) 60ms}.btn:is(:hover,:focus-visible) .btn-shoot-c{transition:transform .6s var(--ease-expo) .2s;transform:none}}html.is-scrolling :is(main,body>footer) .btn:hover:not([data-hover-held],:focus-visible,.is-active) .btn-shoot-a{visibility:visible}html.is-scrolling :is(main,body>footer) .btn:hover:not([data-hover-held],:focus-visible,.is-active) .btn-shoot-b{visibility:hidden;transition:visibility 0s linear 45ms,transform;transform:none}html.is-scrolling :is(main,body>footer) .btn:hover:not([data-hover-held],:focus-visible,.is-active) .btn-shoot-c{transition:none;transform:translate(-150%)}@media (prefers-reduced-motion:reduce){.btn-shoot-a{visibility:visible!important}.btn-shoot-b,.btn-shoot-c{visibility:hidden!important}}[disabled],[aria-disabled=true]{cursor:not-allowed;border-style:dashed}::view-transition-old(root),::view-transition-new(root){mix-blend-mode:normal;animation:none}@keyframes marquee{to{transform:translate(-50%)}}@keyframes marquee-rev{0%{transform:translate(-50%)}to{transform:translate(0)}}@keyframes caret{0%,49%{visibility:visible}50%,to{visibility:hidden}}.marquee{font-family:var(--font-mono);font-size:var(--t-mono);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;border-top:1px solid;border-bottom:1px solid;padding:14px 0;font-weight:500;overflow:hidden}.marquee+.marquee{border-top:0}.marquee-track{width:max-content;animation:marquee var(--speed) linear infinite;display:flex}.marquee.is-reverse .marquee-track{animation-name:marquee-rev}.marquee:hover .marquee-track,.marquee:focus-within .marquee-track,.marquee.is-off .marquee-track{animation-play-state:paused}html.is-scrolling :is(main,body>footer) .marquee:hover:not([data-hover-held],:focus-within,.is-off) .marquee-track{animation-play-state:running}.marquee:focus-visible{outline-offset:-5px}.marquee-group{transform:skewX(var(--m-skew,0deg));gap:28px;padding-right:28px;display:flex}.hover-fill{isolation:isolate;transition:color 0s linear var(--flip-out,45ms);position:relative;overflow:hidden}html:not(.is-xray) .hover-fill:not(.btn-fill){border-color:var(--fill-bg,var(--ink))}.hover-fill:before{content:"";z-index:-1;background:var(--fill-bg,var(--ink));transition:transform .3s var(--ease-out);position:absolute;inset:0;transform:translateY(101%)}.hover-fill>*{z-index:1;position:relative}.hover-fill:focus-visible{outline-offset:-5px}@media (hover:hover){.hover-fill:is(:hover,:focus-visible):before{transform:translateY(0)}.hover-fill:is(:hover,:focus-visible){color:var(--fill-text,var(--paper));transition-delay:var(--flip-in,45ms)}}.hover-fill.is-active:before{transform:translateY(0)}.hover-fill.is-active{color:var(--fill-text,var(--paper));transition-delay:var(--flip-in,45ms)}html.is-scrolling :is(main,body>footer) .hover-fill:hover:not([data-hover-held],.is-active,[aria-pressed=true],:focus-visible,:has(:focus-visible,:checked)){--fill-text:var(--fill-bg,currentColor)}html.is-scrolling :is(main,body>footer) .hover-fill:hover:not([data-hover-held],.is-active,[aria-pressed=true],:focus-visible,:has(:focus-visible,:checked)):before{transform:translateY(101%)}.roll{white-space:nowrap;clip-path:inset(-.2em -.08em);--roll-y:calc(100% + .35em);display:inline-block;position:relative}.roll-row{-webkit-user-select:none;user-select:none;display:block}.roll-b{position:absolute;inset:0}.roll-c{white-space:pre;transition:transform .45s var(--ease-out) var(--d,0s);display:inline-block}.roll-b .roll-c{transform:translateY(var(--roll-y))}.hover-fill .roll-b{color:var(--fill-text,var(--paper))}.hover-fill:has(.roll):not(:hover,:focus-visible,:has(:focus-visible),.is-active) .roll-b{color:inherit;transition:color 0s linear var(--flip-out,45ms)}.hover-fill:has(.roll){transition:color}@media (hover:hover){:is(a,button):is(:hover,:focus-visible) .roll-a .roll-c,.roll-host:is(:hover,:focus-within) .roll-a .roll-c{transform:translateY(calc(-1 * var(--roll-y)))}:is(a,button):is(:hover,:focus-visible) .roll-b .roll-c,.roll-host:is(:hover,:focus-within) .roll-b .roll-c{transform:none}.hover-fill:has(.roll):is(:hover,:focus-visible){transition:color 0s linear .75s}.hover-fill:has(.roll):is(:hover,:focus-visible)>:not(:has(.roll),.roll,.btn-shoot){color:var(--fill-text,var(--paper))}.hover-fill:has(.roll):focus-visible{outline-color:var(--fill-text,var(--paper))}}html.is-scrolling :is(main,body>footer) :is(a,button):hover:not([data-hover-held],:focus-visible,.is-active,.is-active *) .roll-a .roll-c,html.is-scrolling :is(main,body>footer) .roll-host:hover:not([data-hover-held],:focus-within,.is-active,.is-active *) .roll-a .roll-c{transform:none}html.is-scrolling :is(main,body>footer) :is(a,button):hover:not([data-hover-held],:focus-visible,.is-active,.is-active *) .roll-b .roll-c,html.is-scrolling :is(main,body>footer) .roll-host:hover:not([data-hover-held],:focus-within,.is-active,.is-active *) .roll-b .roll-c{transform:translateY(var(--roll-y))}html.js [data-rise]{clip-path:inset(100% -1px -1px)}html.js [data-rule]{transform-origin:0;transform:scaleX(0)}html.js [data-split]{visibility:hidden}html.js [data-split].is-split{visibility:visible}.split-line{display:block;overflow:hidden}.split-line>div{will-change:transform}html.js [data-wipe],html.js [data-scramble]:not(.is-scr){clip-path:inset(0 100% 0 0)}.scr-w{white-space:nowrap}.scr-c{display:inline-block;position:relative}.scr-c.is-off,.scr-c.is-noise{visibility:hidden}.scr-c.is-noise:after{content:attr(data-g);visibility:visible;text-align:center;position:absolute;inset:0}html.js .eyebrow[data-scramble]:before{transform-origin:0;transition:transform .55s var(--ease-expo);transform:scaleX(0)}html.js .eyebrow[data-scramble].is-scr:before{transform:none}[data-fill],[data-fill-words]{--fill-sw:clamp(1px, .0075em, 1.6px);--fill-lo:.13em;--fill-span:.93em;--fill-cap:1.005em;--fill-face:"Geist Draft", var(--font-sans)}[data-fill-words]{position:relative}.fill-ol-layer{pointer-events:none;position:absolute;inset:0}.is-fill-mono{--fill-face:"Geist Mono Draft", var(--font-mono)}html.js [data-fill]:not(.is-filled),html.js [data-fill-words]{-webkit-text-fill-color:transparent}.fill-line{white-space:nowrap}.fill-ink,.fill-word,.fill-ol-layer>.fill-ol{--fill-h:calc(var(--fill-lo) + var(--p,0) * var(--fill-span));--fill-end:clamp(0em, (var(--p,0) - .99) * 300em, 3em)}.fill-ink,.fill-word{--fill-hatch:calc(.32em * min(1, var(--p,0) * 9, (1 - var(--p,0)) * 9));--fill-ho:calc(var(--fill-h) * -.7071);background:linear-gradient(currentColor, currentColor) left 0 bottom 0 / 100% calc(var(--fill-h) + var(--fill-end)) no-repeat, repeating-linear-gradient(315deg, currentColor var(--fill-ho) calc(var(--fill-ho) + 1px), transparent calc(var(--fill-ho) + 1px) calc(var(--fill-ho) + 6px)) right 0 bottom var(--fill-h) / 100% var(--fill-hatch) no-repeat;-webkit-background-clip:text;background-clip:text;margin:0 -.12em;padding:0 .12em}.fill-ink{position:relative}.fill-ol{white-space:nowrap;text-indent:0;text-align:left;line-height:normal;font-family:var(--fill-face);pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-text-fill-color:transparent;-webkit-text-stroke:var(--fill-sw) currentColor;clip-path:inset(-.5em -.5em calc(var(--fill-h) + var(--fill-end)) -.5em);position:absolute;top:0;left:.12em}.fill-ol:before{content:attr(data-t)}[data-fill-dir=right] :is(.fill-ink,.fill-word){--fill-w:calc(var(--p,0) * 100%);--fill-ho:0px;background-position:left 0 top 0, left calc(var(--p,0) * 100% + var(--p,0) * var(--fill-hatch) * 1.4) top 0;background-size:var(--fill-w) 100%, calc(var(--fill-hatch) * 1.4) 100%}[data-fill-dir=right] .fill-ol{clip-path:inset(-.5em -.5em -.5em calc(var(--p,0) * (100% + .24em) - .12em))}.fill-scan{--sl:min(1, var(--p,0) * 9, (var(--fill-pc,.94) + .01 - var(--p,0)) * 12);--anc:clamp(6px, .055em, 10px);left:0;right:0;bottom:min(var(--fill-h), var(--fill-cap));pointer-events:none;background:linear-gradient(currentColor, currentColor) center / calc(var(--sl) * (100% - var(--anc)) - 2px) 100% no-repeat;height:1px;position:absolute}.fill-scan:before,.fill-scan:after{--a:clamp(0, min((var(--p,0) - .085) * 18, (var(--fill-pc,.94) - .01 - var(--p,0)) * 14), 1);content:"";box-sizing:border-box;width:var(--anc);height:var(--anc);margin:calc(var(--anc) / -2) 0 0 calc(var(--anc) / -2);transform:rotate(calc(20deg - (1 - var(--a)) * 90deg)) scale(var(--a));border:1px solid;position:absolute;top:50%;left:0}.fill-scan:after{transform:rotate(calc(20deg + (1 - var(--a)) * 90deg)) scale(var(--a));left:100%}[data-fill-dir=right] .fill-scan{left:calc(var(--p,0) * 100%);right:auto;bottom:var(--fill-lo);width:1px;height:var(--fill-span);background-size:100% calc(var(--sl) * (100% - var(--anc)) - 2px)}[data-fill-dir=right] .fill-scan:before{top:0;left:50%}[data-fill-dir=right] .fill-scan:after{top:100%;left:50%}html.js [data-fill]:not(.is-filled) ::selection,html.js [data-fill-words] ::selection{-webkit-text-fill-color:var(--paper)}html.js .inv [data-fill]:not(.is-filled) ::selection,html.js .inv [data-fill-words] ::selection{-webkit-text-fill-color:var(--ink)}html.is-xray :is([data-fill],[data-fill-words]) :is(.fill-ink,.fill-word){-webkit-text-stroke-width:0!important}html.is-xray .fill-ol{clip-path:none;-webkit-text-stroke-width:1px}html.is-xray .fill-scan{visibility:hidden}@media (forced-colors:active){html.js [data-fill]:not(.is-filled),html.js [data-fill-words]{-webkit-text-fill-color:currentColor}.fill-ol,.fill-scan{display:none}html:not(.is-xray) .hover-fill:is(.is-active,[aria-pressed=true],[aria-expanded=true]):not(.btn-fill){forced-color-adjust:none;--fill-bg:Highlight;--fill-text:HighlightText;color:highlighttext;background:highlight;border-color:highlight}}.w-line{white-space:nowrap}@media print{html.js [data-rise],html.js [data-wipe]{clip-path:none!important}html.js [data-rule]{transform:none!important}html.js [data-split]{visibility:visible!important}html.js [data-scramble]{clip-path:none!important}html.js .eyebrow[data-scramble]:before,.split-line,.split-line>*{transform:none!important}html.js :is([data-fill],[data-fill-words]),.fill-ink,.fill-word{-webkit-text-fill-color:currentColor!important;background:0 0!important}.fill-ol,.fill-scan,.hover-fill:not(.is-active):before{display:none!important}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}html.js [data-rise],html.js [data-wipe]{clip-path:none}html.js [data-rule]{transform:none}html.js [data-split]{visibility:visible}.roll-c{transform:none!important}.roll-b{visibility:hidden}html.js [data-scramble]:not(.is-scr){clip-path:none}html.js .eyebrow[data-scramble]:before{transform:none}html.js [data-fill]:not(.is-filled),html.js [data-fill-words]{-webkit-text-fill-color:currentColor}}html{--xr-cross:linear-gradient(to top right, transparent calc(50% - .5px), currentColor calc(50% - .5px) calc(50% + .5px), transparent calc(50% + .5px)), linear-gradient(to bottom right, transparent calc(50% - .5px), currentColor calc(50% - .5px) calc(50% + .5px), transparent calc(50% + .5px));--xr-hatch:repeating-linear-gradient(135deg, currentColor 0 1px, transparent 1px 8px);--xr-dash-x:repeating-linear-gradient(90deg, currentColor 0 4px, transparent 4px 8px)}html.xray-vt :is([data-astro-transition-scope],[style*=view-transition-name]):not(.xr-ring){view-transition-name:none!important}html.xray-vt::view-transition-new(root){clip-path:circle(0)}html.xray-ring .xr-ring{view-transition-name:xray-ring}html.xray-vt::view-transition-group(xray-ring),html.xray-vt::view-transition-new(xray-ring),html.xray-vt::view-transition-old(xray-ring){animation:none}html.xray-vt::view-transition-group(xray-ring){mix-blend-mode:difference}html.is-xray,html.is-xray body{background:var(--paper);color:var(--ink)}html.is-xray .inv,html.is-xray .menu,html.is-xray body.is-inv,html.is-xray body.is-inv main{background:var(--paper)!important;color:var(--ink)!important}html.is-xray .btn-fill{color:inherit;background:0 0;border-color:currentColor}html.is-xray .inv :is(.btn-fill,.btn-ghost){border-color:currentColor}html.is-xray .hover-fill{color:inherit!important;--fill-text:currentColor!important}html.is-xray .hover-fill:before{background:var(--xr-hatch)!important}html.is-xray .hover-fill :is(p,.mono,.btn-label):not([data-xr],:focus-visible),html.is-xray .hover-fill>span:not(.btn-shoot,.h1,.h2,.h3,.display,[data-xr],[data-xr-big],[aria-hidden=true],:focus-visible){background-color:var(--paper);outline:2px solid var(--paper)}html.is-xray #site-nav .hover-fill>span{background-color:#000;outline-color:#000}html.is-xray :is(.display,.h1,.h2,.h3,h1:not(.sr-only,.vb-name),h2:not(.sr-only),h3,.work-name,.svc-title,.footer-word,.nav-brand-text,.menu-link,.dsc-title,[data-fill],[data-fill-words],[data-xray-type],[data-xr-big]):not(.mono,[data-xray=skip],[data-xray=skip] *){-webkit-text-fill-color:var(--paper)!important;-webkit-text-stroke:1px currentColor!important}html.is-xray :is(.display,.h1,.h2,.h3,h1:not(.sr-only,.vb-name),h2:not(.sr-only),h3,.work-name,.svc-title,.footer-word,.nav-brand-text,.menu-link,.dsc-title,[data-fill],[data-fill-words],[data-xray-type],[data-xr-big=face]):not(.mono,[data-xray=skip],[data-xray=skip] *){font-family:"Geist Draft", var(--font-sans)}html.is-xray #site-nav .nav-brand-text{-webkit-text-fill-color:transparent!important}html.is-xray :is(.fill-ink,.fill-word){background:0 0!important}html.is-xray :is(.display,.h1,.h2,.h3,h1,h2,h3,.work-name,.svc-title,.menu-link,[data-xray-type]) :is(.mono,small){font-family:var(--font-mono);-webkit-text-fill-color:currentColor!important;-webkit-text-stroke:0!important}html.is-xray :is(img,video):not([data-xray=skip],[data-xray=skip] *){outline-offset:-1px;outline:1px solid;object-position:-300vw -300vh!important;background:var(--xr-cross)!important}html.is-xray :is(canvas,iframe):not([data-xray=skip],[data-xray=skip] *){visibility:hidden!important}html.is-xray [data-xr-media]{background-image:var(--xr-cross)!important}html.is-xray :is([data-xr-media=img],[data-xr-media=video]) :is(img,video){outline:0;background:0 0!important}html.is-xray .ucb-mark{fill:none;stroke:currentColor;stroke-width:1px}html.is-xray .ucb-mark *{vector-effect:non-scaling-stroke}html.is-xray [data-xr]{--xr-o:0px}html.is-xray [data-xr=type]{--xr-o:1px}html.is-xray [data-xr-pos]{position:relative}html.is-xray [data-xr]:not(:focus-visible){outline-offset:-1px;outline:1px dashed}html.is-xray [data-xr=type]:not(:focus-visible){outline-offset:0}html.is-xray [data-xr=media]:not(:focus-visible){outline-style:solid}html.is-xray [data-xr-tight]{--xr-o:4px}html.is-xray [data-xr-tight]:not(:focus-visible){outline-offset:3px}html.is-xray [data-xr=sec]:not(:focus-visible){outline:0}html.is-xray [data-xr=sec]{background-image:var(--xr-dash-x);background-repeat:no-repeat;background-size:100% 1px;background-origin:border-box}html.is-xray [data-xr-p=a]:not([data-xray-label=""]):after,html.is-xray [data-xr-p=b]:not([data-xray-label=""]):before{content:attr(data-xray-label);content:attr(data-xray-label) / "";z-index:40;inset:calc(-1 * var(--xr-o,0px)) auto auto calc(-1 * var(--xr-o,0px));box-sizing:border-box;width:max-content;min-width:0;max-width:none;height:auto;font:500 9px/1 var(--font-mono);letter-spacing:.06em;text-transform:uppercase;text-align:left;text-indent:0;text-shadow:none;white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--paper);background:var(--ink);-webkit-text-fill-color:currentColor;-webkit-text-stroke:0;clip-path:none;visibility:visible;mix-blend-mode:normal;pointer-events:none;border:0;outline:0;margin:0;padding:3px 5px 2px;text-decoration:none;display:block;position:absolute;transform:none}html.is-xray [data-xr-t=out][data-xr-p=a]:after,html.is-xray [data-xr-t=out][data-xr-p=b]:before{inset:auto auto calc(100% + var(--xr-o,0px)) calc(-1 * var(--xr-o,0px))}html.is-xray [data-xr-t=tr][data-xr-p=a]:after,html.is-xray [data-xr-t=tr][data-xr-p=b]:before{inset:calc(-1 * var(--xr-o,0px)) calc(-1 * var(--xr-o,0px)) auto auto}html.is-xray [data-xr-t=mid][data-xr-p=a]:after,html.is-xray [data-xr-t=mid][data-xr-p=b]:before{inset:50% auto auto 50%;transform:translate(-50%,-50%)}html.is-xray [data-xr-t=nav][data-xr-p=a]:after,html.is-xray [data-xr-t=nav][data-xr-p=b]:before{inset:var(--nav-h) auto auto 0}@keyframes xr-write{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}html.xray-writing [data-xr-p=a]:not([data-xray-label=""]):after,html.xray-writing [data-xr-p=b]:not([data-xray-label=""]):before{animation:xr-write .42s var(--ease-out) var(--xr-d,0s) both}@media (hover:hover){html.is-xray [data-xr]:not([data-xr=sec]):hover:not(:focus-visible,:has([data-xr]:hover)){outline-style:solid}}html.is-xray.is-scrolling :is(main,body>footer) [data-xr]:not([data-xr=sec],[data-xr=media],[data-hover-held],:focus-visible):hover{outline-style:dashed}html.is-xray #site-nav [data-xr-p=a]:after,html.is-xray #site-nav [data-xr-p=b]:before{color:#000;background:#fff}html.is-xray .oh{--oh-accent:#000}html.is-xray .oh-solid{fill:var(--paper)!important}html.is-xray .oh-shadow,html.is-xray .oh-cam>img{visibility:hidden!important}html.is-xray .oh-stroke{stroke-width:1px!important}html.is-xray #outline-hero .oh-front>g:has(.oh-pill),html.is-xray #outline-hero .oh-front>text.oh-label{opacity:1!important}html.is-xray #outline-hero :is([opacity^="0.0"],[opacity^="0.1"],[opacity^="0.2"],[opacity^="0.3"],[opacity^="0.4"]){opacity:0!important}html.is-xray #outline-hero :is([opacity^="0.5"],[opacity^="0.6"],[opacity^="0.7"],[opacity^="0.8"],[opacity^="0.9"]),html.is-xray #outline-hero :is(.oh-guide,.oh-anchor line){opacity:1!important}html.is-xray #outline-hero :is(ellipse[fill^=url\(],.oh-crack,line.oh-acc-line:is([style*=stroke-width\:7px],[style*="stroke-width: 7px"])){visibility:hidden!important}#xray-layer{z-index:899;pointer-events:none;color:var(--ink);visibility:hidden;position:fixed;inset:0;overflow:hidden}html.is-xray #xray-layer{visibility:visible}@media print{#xray-layer{display:none!important}}.xr-grid{clip-path:inset(var(--nav-h) 0 0 0);transition:clip-path .5s var(--ease-inout);position:absolute;inset:0}.site-nav.is-hidden:not(.menu-open)~#xray-layer .xr-grid,body[data-nav=hidden] .xr-grid{clip-path:inset(0)}.xr-line{transform-origin:50% 0;background:currentColor;width:1px;position:absolute;top:0;bottom:0;left:0}.xr-line.is-dash{background:repeating-linear-gradient(currentColor 0 1px,#0000 1px 6px)}.xr-num{clip-path:inset(100% 0 0);font:500 9px/1 var(--font-mono);letter-spacing:.06em;position:absolute;bottom:10px;left:0;transform:translate(-50%)}.xr-ring{color:#fff;visibility:hidden;position:absolute;inset:0}html.xray-ring .xr-ring{visibility:visible}.xr-ring-path{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.xr-ring circle{fill:none;stroke:currentColor;stroke-width:1px}.xr-anchor{width:0;height:0;position:absolute;top:0;left:0}.xr-anchor-h{background:currentColor;width:30px;height:1px;position:absolute;top:0;left:-15px}.xr-anchor-h:before,.xr-anchor-h:after{content:"";background:currentColor;border-radius:50%;width:3px;height:3px;position:absolute;top:-1px}.xr-anchor-h:before{left:-2px}.xr-anchor-h:after{right:-2px}.xr-anchor[data-deg="0"] .xr-anchor-h,.xr-anchor[data-deg="180"] .xr-anchor-h{transform:rotate(90deg)}.xr-anchor-sq{background:#000;border:1px solid;width:9px;height:9px;position:absolute;top:-4px;left:-4px;transform:rotate(20deg)}.xr-exit{top:var(--xr-exit-top,auto);right:var(--xr-exit-right,var(--gutter));background:var(--paper);height:44px;color:var(--ink);isolation:isolate;visibility:hidden;pointer-events:none;border:1px solid;align-items:center;padding:0 14px 0 8px;display:inline-flex;position:absolute;bottom:16px;overflow:hidden}html.is-xray body[data-nav=hidden] .xr-exit[data-show]{visibility:visible;pointer-events:auto}.xr-exit:before{content:"";z-index:-1;background:var(--xr-hatch);transition:transform .3s var(--ease-out);position:absolute;inset:0;transform:translateY(101%)}.xr-exit:focus-visible:before{transform:none}@media (hover:hover){.xr-exit:hover:before{transform:none}}.xr-exit:focus-visible{outline-offset:-5px}.xr-exit .xray-icon{margin-right:8px}.xr-exit-label,.xr-exit-key{background:var(--paper);padding-inline:2px}.xr-exit-key{margin-left:4px}@media (hover:none),(pointer:coarse){.xr-exit-key{display:none}}.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}@keyframes astroFadeInOut{0%{opacity:1}to{opacity:0}}@keyframes astroFadeIn{0%{opacity:0;mix-blend-mode:plus-lighter}to{opacity:1;mix-blend-mode:plus-lighter}}@keyframes astroFadeOut{0%{opacity:1;mix-blend-mode:plus-lighter}to{opacity:0;mix-blend-mode:plus-lighter}}@keyframes astroSlideFromRight{0%{transform:translate(100%)}}@keyframes astroSlideFromLeft{0%{transform:translate(-100%)}}@keyframes astroSlideToRight{to{transform:translate(100%)}}@keyframes astroSlideToLeft{to{transform:translate(-100%)}}@media (prefers-reduced-motion){::view-transition-group(*),::view-transition-old(*),::view-transition-new(*),[data-astro-transition-scope]{animation:none!important}}:where(.mark-draw){aspect-ratio:1200/742;width:64px;height:auto;display:inline-block;overflow:visible}@media (prefers-reduced-motion:no-preference){html.js .mark-draw:not(.is-drawn) :is(.mkd-stroke,.mkd-anchor),html.js.is-xray .mark-draw:not(.is-drawn) .mkd-guide{visibility:hidden}}html.is-xray .mark-draw{background:0 0!important}html.is-xray .mark-draw:not([data-xray=skip],[data-xray=skip] *) .mkd-guide{visibility:visible}html.is-xray .mark-draw:not([data-xray=skip],[data-xray=skip] *) :is(.mkd-stroke,.mkd-anchor){visibility:hidden!important}html.is-xray .mark-draw:not([data-xray=skip],[data-xray=skip] *) .mkd-construct{display:none!important}@media print{html.js .mark-draw :is(.mkd-stroke,.mkd-anchor){visibility:visible!important;stroke-dasharray:none!important}.mark-draw :is(.mkd-guides,.mkd-construct){display:none!important}html.is-xray .mark-draw:not([data-xray=skip],[data-xray=skip] *) :is(.mkd-stroke,.mkd-anchor){visibility:visible!important;stroke-dasharray:none!important}}.site-nav{z-index:920;height:var(--nav-h);color:#fff;mix-blend-mode:difference;transition:transform .5s var(--ease-inout);position:fixed;top:0;left:0;right:0}.site-nav.is-hidden:not(.menu-open){transform:translateY(-100%)}.nav-inner{height:100%;width:min(100% - 2 * var(--gutter), var(--max));justify-content:space-between;align-items:center;gap:24px;margin-inline:auto;display:flex}.nav-brand{letter-spacing:-.01em;align-items:baseline;gap:10px;min-height:44px;padding-top:12px;font-size:15px;font-weight:600;display:inline-flex}.nav-mark{align-self:center;width:30px;height:19px}@media (prefers-reduced-motion:no-preference){html.js .site-nav:not(.is-inked) .nav-mark :is(.mkd-stroke,.mkd-anchor),html.js.is-xray .site-nav:not(.is-inked) .nav-mark .mkd-guide{visibility:hidden}}.nav-brand-sub{opacity:1}.nav-links{gap:clamp(18px,2.6vw,36px);font-size:14px;display:flex;position:relative}.nav-links a{align-items:center;min-height:44px;margin:0 -5px;padding:0 5px;display:inline-flex}.nav-right{align-items:center;gap:12px;display:flex}.nav-cta{--fill-bg:#fff;--fill-text:#000;border:1px solid #fff;align-items:center;gap:10px;height:44px;padding:0 16px;font-size:14px;font-weight:500;display:inline-flex}.nav-cta svg{transition:transform .2s var(--ease-out);flex:none}.nav-cta:is(:hover,:focus-visible) svg{transform:translate(3px)}.nav-burger{width:44px;height:44px;display:none;position:relative}.nav-burger span{height:1.5px;transition:transform .35s var(--ease-inout), top .35s var(--ease-inout);background:#fff;position:absolute;left:11px;right:11px}.nav-burger span:first-child{top:17px}.nav-burger span:last-child{top:25px}.site-nav.menu-open .nav-burger span:first-child{top:21px;transform:rotate(45deg)}.site-nav.menu-open .nav-burger span:last-child{top:21px;transform:rotate(-45deg)}.nav-band{z-index:909;height:var(--nav-h);background:var(--paper);pointer-events:none;contain:strict;clip-path:inset(0);transition:clip-path .5s var(--ease-inout);position:fixed;top:0;left:0;right:0}.nav-band.is-hidden{clip-path:inset(0 0 100%)}.nav-band:is(.is-top,.is-gated),body[data-nav=hidden] .nav-band{visibility:hidden}.nav-band-ink{background:var(--ink);clip-path:inset(0 0 100%);position:absolute;inset:0}html.is-xray .nav-band-ink{visibility:hidden}html.is-xray .nav-band{border-bottom:1px dashed var(--ink)}.nav-ind{pointer-events:none;width:0;height:0;position:absolute;top:0;left:0}.nav-ind-line{transform-origin:0 0;background:currentColor;width:100px;height:1px;position:absolute;top:0;left:0;transform:scaleX(0)}.nav-ind-sq{background:#000;border:1px solid;width:5px;height:5px;position:absolute;top:-2px;left:-2.5px;transform:scale(0)}.nav-links.has-ind .u-line:after{display:none}.xray-icon{flex:none;width:30px;height:30px;display:block;position:relative;transform:rotate(20deg)}.xi-sq{outline-offset:-1px;outline:1px solid;width:11px;height:11px;margin:-5.5px 0 0 -5.5px;position:absolute;top:50%;left:50%;overflow:hidden}.xi-sq:before{content:"";transform-origin:50% 100%;transition:transform .45s var(--ease-morph);background:currentColor;position:absolute;inset:0;transform:scaleY(0)}.xi-h{width:8px;height:1px;transition:clip-path .45s var(--ease-morph);background:currentColor;position:absolute;top:calc(50% - .5px)}.xi-h:after{content:"";background:currentColor;border-radius:50%;width:3px;height:3px;position:absolute;top:-1px}.xi-h1{clip-path:inset(-2px 0 -2px 100%);right:calc(50% + 6px)}.xi-h1:after{left:-2px}.xi-h2{clip-path:inset(-2px 100% -2px 0);left:calc(50% + 6px)}.xi-h2:after{right:-2px}:is([aria-pressed=true],html.is-xray [data-xray-toggle])>.xray-icon .xi-sq:before{transform:scaleY(1)}:is([aria-pressed=true],html.is-xray [data-xray-toggle])>.xray-icon .xi-h1{clip-path:inset(-2px 0 -2px -3px);transition-delay:.12s}:is([aria-pressed=true],html.is-xray [data-xray-toggle])>.xray-icon .xi-h2{clip-path:inset(-2px -3px -2px 0);transition-delay:.12s}@media (hover:hover){html:not(.is-xray) [data-xray-toggle][aria-pressed=false]:hover .xi-sq:before{transform:scaleY(.34)}}.nav-xray{justify-content:center;align-items:center;width:44px;height:44px;display:inline-flex;position:relative}.nav-xray:focus-visible{outline-offset:-2px}.nav-xray-hint{white-space:nowrap;pointer-events:none;clip-path:inset(0 0 0 100%);transition:clip-path .3s var(--ease-out), transform .3s var(--ease-out);position:absolute;top:calc(100% + 4px);right:4px;transform:translate(8px)}.nav-xray .hint-on,:is(.nav-xray[aria-pressed=true],html.is-xray .nav-xray) .hint-off{display:none}:is(.nav-xray[aria-pressed=true],html.is-xray .nav-xray) .hint-on{display:inline}.nav-xray:focus-visible .nav-xray-hint{clip-path:inset(0);transform:none}@media (hover:hover){.nav-xray:hover .nav-xray-hint{clip-path:inset(0);transform:none}}html.js:not(.intro-seen) body[data-intro=pending] [data-nav-reveal]{clip-path:inset(0 0 100%)}html.js:not(.intro-seen) body[data-intro=pending] .site-nav:has(:focus-visible) [data-nav-reveal]{clip-path:none!important;transform:none!important}html.is-locked{scrollbar-gutter:stable;overflow:hidden}html.is-locked>body.is-locked{overflow:visible}.menu{z-index:910;background:var(--ink);color:var(--paper);clip-path:inset(0 0 100%);padding-top:var(--nav-h);flex-direction:column;display:flex;position:fixed;inset:0;overflow:hidden}.menu.is-open{clip-path:none}.menu-inner{overscroll-behavior:contain;min-height:0;width:min(100% - 2 * var(--gutter) + 16px, var(--max) + 16px);flex-direction:column;flex:auto;gap:48px;padding:16px 8px;display:flex;overflow:hidden auto}.menu-inner :focus{scroll-margin-block:16px}.menu-list{margin-top:auto;display:grid}.menu-row{position:relative}.menu-rule{background:currentColor;height:1px;position:absolute;top:0;left:0;right:0}.menu-rule-end{top:auto;bottom:0}.menu-pen{background:var(--ink);visibility:hidden;border:1px solid;width:7px;height:7px;position:absolute;top:-3px;left:-3.5px;transform:rotate(20deg)}html.is-xray .menu-pen{background:var(--paper)}.menu-item{display:block;overflow:hidden}.menu-link{letter-spacing:-.04em;align-items:baseline;gap:20px;padding:clamp(14px,3vh,26px) 0 clamp(14px,3vh,26px) 10px;font-size:clamp(36px,9vw,72px);font-weight:500;line-height:1;display:flex}.menu-link:focus-visible{outline-offset:-5px}.menu-n{font-variant-numeric:tabular-nums;font-size:12px}.menu-foot{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 16px;margin-bottom:auto;display:flex}.menu-xray{height:44px;text-transform:inherit;letter-spacing:inherit;border:1px solid;align-items:center;gap:4px;padding:0 16px 0 6px;display:inline-flex}.menu-xray:focus-visible{outline-offset:-5px}.menu-foot a{align-items:center;min-height:44px;margin-block:-12.5px;display:inline-flex}@media (width<=820px){.nav-links,.nav-brand-sub,.nav-cta,.nav-xray{display:none}.nav-burger{display:block}}@media (width<=599.98px){.menu-foot{flex-direction:column;align-items:flex-start}}@media (width<=820px) and (height<=540px){.menu-inner{gap:16px;padding-block:8px}.menu-link{padding-block:max(8px,2.2vh);font-size:clamp(28px,7.6vh,48px)}.menu-foot{flex-direction:row;align-items:center}}html:not(.js) .site-nav{position:absolute}html:not(.js) [data-xray-toggle]{display:none}@media (width<=820px){html:not(.js) .nav-right{display:none}html:not(.js) .nav-links{flex-wrap:wrap;justify-content:flex-end;gap:0 16px;display:flex}}@media (width<=374.98px){html:not(.js) .nav-brand-text{display:none}}@media (forced-colors:active){.site-nav{mix-blend-mode:normal}.nav-ind-line,.menu-rule{background:canvastext}.nav-burger span,.xi-h,.xi-h:after,.xi-sq:before{background:buttontext}}@media print{.site-nav,.nav-band,.menu{display:none}}.footer[data-astro-cid-r4f3bwe4]{padding-top:var(--section-y);padding-bottom:24px;overflow:hidden}.footer-top[data-astro-cid-r4f3bwe4]{border-bottom:1px solid;grid-template-columns:minmax(0,1.4fr) auto;align-items:center;gap:32px;padding-bottom:clamp(48px,6vw,96px);display:grid}.footer-lede[data-astro-cid-r4f3bwe4]{max-width:22ch}.footer-cols[data-astro-cid-r4f3bwe4]{grid-template-columns:repeat(4,minmax(0,1fr));gap:32px 24px;padding:clamp(40px,5vw,72px) 0;display:grid}.footer-col[data-astro-cid-r4f3bwe4]{align-content:start;justify-items:start;gap:8px;min-width:0;font-size:15px;display:grid}.footer-col[data-astro-cid-r4f3bwe4] a[data-astro-cid-r4f3bwe4],.footer-col[data-astro-cid-r4f3bwe4] p[data-astro-cid-r4f3bwe4]{overflow-wrap:anywhere;max-width:100%}.footer-col[data-astro-cid-r4f3bwe4] a[data-astro-cid-r4f3bwe4],.footer-top-link[data-astro-cid-r4f3bwe4],.footer-xray[data-astro-cid-r4f3bwe4]{align-items:center;min-height:44px;display:inline-flex}.footer-col[data-astro-cid-r4f3bwe4] a[data-astro-cid-r4f3bwe4]{position:relative}.footer-col[data-astro-cid-r4f3bwe4] a[data-astro-cid-r4f3bwe4]:before{content:"";position:absolute;inset:0 -5px}.footer-col[data-astro-cid-r4f3bwe4]{gap:0}.footer-h[data-astro-cid-r4f3bwe4]{margin-bottom:8px}.footer-word-box[data-astro-cid-r4f3bwe4]{container-type:inline-size}.footer-word[data-astro-cid-r4f3bwe4]{letter-spacing:-.06em;white-space:nowrap;user-select:none;margin:0 0 -.08em -.043em;font-size:26.8068cqi;font-weight:600;line-height:.8}.footer-bottom[data-astro-cid-r4f3bwe4]{border-top:1px solid;grid-template-columns:repeat(4,auto);justify-content:space-between;align-items:baseline;gap:16px;margin-top:24px;padding-top:20px;display:grid}.footer-clock[data-astro-cid-r4f3bwe4]{white-space:nowrap;align-items:baseline;gap:1ch;display:inline-flex}.footer-time[data-astro-cid-r4f3bwe4]{min-width:calc(12ch + .72em);display:inline-block}html:not(.js) .footer-time[data-astro-cid-r4f3bwe4]{display:none}.footer-ctl[data-astro-cid-r4f3bwe4]{align-items:baseline;gap:clamp(20px,2.4vw,32px);display:inline-flex}.footer-xray[data-astro-cid-r4f3bwe4]{text-transform:inherit;letter-spacing:inherit;white-space:nowrap;padding:0 0 2px}html.is-xray .footer-xray[data-astro-cid-r4f3bwe4]:after,.footer-xray[data-astro-cid-r4f3bwe4][aria-pressed=true]:after{transform-origin:0;transform:scaleX(1)}@media (width<=1023.98px){.footer-bottom[data-astro-cid-r4f3bwe4]{grid-template-columns:repeat(2,auto);row-gap:14px}.footer-bottom[data-astro-cid-r4f3bwe4]>[data-astro-cid-r4f3bwe4]:nth-child(2n){justify-self:end}.footer-top-link[data-astro-cid-r4f3bwe4],.footer-xray[data-astro-cid-r4f3bwe4]{margin-block:-14px}}@media (width<=899.98px){.footer-cols[data-astro-cid-r4f3bwe4]{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=820px){.footer-top[data-astro-cid-r4f3bwe4]{grid-template-columns:1fr}}@media (width<=599.98px){.footer-bottom[data-astro-cid-r4f3bwe4]{grid-template-columns:1fr;justify-content:stretch}.footer-bottom[data-astro-cid-r4f3bwe4]>[data-astro-cid-r4f3bwe4]:nth-child(2n){justify-self:start}}@media (width<=480px){.footer-col[data-astro-cid-r4f3bwe4]{font-size:14px}.footer-col[data-astro-cid-r4f3bwe4]:first-child{grid-column:1/-1}}#wipe{z-index:915;visibility:hidden;pointer-events:none;contain:strict;color:var(--paper);--line:0;--rise:1;--fill:0;--cap:0;--a1:0;--a2:0;--meta:0;--vw:100vw;--fs:144px;--tx:44px;--tt:0px;--tw:auto;--sw:0px;--base:50vh;--ax1:0px;--ax2:0px;--f0:0px;--f1:0px;--fbp:0;position:fixed;inset:0}#wipe.is-on{visibility:visible}#wipe.is-blocking{pointer-events:auto}.wipe-col{height:100%;top:0;left:var(--x,0px);width:var(--w,20%);background:var(--ink);position:absolute}.wipe-col[hidden]{display:none}#wipe.is-on .wipe-col,#wipe.is-on .wipe-sheet{will-change:transform}.wipe-col:before,.wipe-col:after{content:"";background:var(--paper);height:1px;position:absolute;left:0;right:0}.wipe-col:before{bottom:100%}.wipe-col:after{top:100%}.wipe-clip{position:absolute;inset:0;overflow:hidden}.wipe-sheet{height:100%;top:0;left:calc(-1 * var(--x,0px));width:var(--vw);position:absolute}.wipe-rule{left:0;right:0;top:var(--base);height:1px;transform:scaleX(var(--line));transform-origin:var(--ax1) 0;background:currentColor;position:absolute}.wipe-pen{top:calc(var(--base) - 3px);width:7px;height:7px;left:calc(var(--ax1) + (var(--vw) - var(--ax1)) * var(--line));transform:rotate(20deg) scale(clamp(0, min(var(--line), 1 - var(--line)) * 18, 1));background:currentColor;margin-left:-3px;position:absolute}.wipe-anchor{top:calc(var(--base) - 5px);left:calc(var(--ax1) - 5px);background:var(--ink);width:11px;height:11px;transform:rotate(calc(20deg - (1 - var(--a1)) * 90deg)) scale(var(--a1));border:1px solid;position:absolute}.wipe-anchor-b{left:calc(var(--ax2) - 5px);transform:rotate(calc(20deg + (1 - var(--a2)) * 90deg)) scale(var(--a2))}.wipe-title,.wipe-probe{font-family:"Geist Draft", var(--font-sans);letter-spacing:-.045em;text-wrap:balance;white-space:nowrap;font-weight:500;line-height:.92;position:absolute}.wipe-title{left:var(--tx);top:var(--tt);width:var(--tw);font-size:var(--fs)}#wipe.is-fallback .wipe-title,#wipe.is-fallback .wipe-probe{font-family:var(--font-sans)}#wipe.is-wrap .wipe-title{white-space:normal}.wipe-probe{visibility:hidden;font-size:var(--t-display);top:0;left:0}#wipe:not(.is-on) .wipe-probe{display:none}.wipe-frame{visibility:hidden;height:0;width:min(100% - 2 * var(--gutter), var(--max));margin-inline:auto;position:absolute;top:0;left:0;right:0}.wipe-mask{margin:-.16em -.1em -.3em;padding:.16em .1em .3em;overflow:hidden}.wipe-type{transform:translateY(calc(var(--rise) * (100% + .5em)));position:relative}.wipe-outline{color:#0000;-webkit-text-stroke:1px var(--paper);background:repeating-linear-gradient(135deg, var(--paper) 0 1px, transparent 1px max(5px, .05em));-webkit-background-clip:text;background-clip:text;display:block}.wipe-bl{vertical-align:baseline;width:0;height:0;display:inline-block}.wipe-fill{color:var(--paper);clip-path:inset(calc(var(--f0) + (var(--f1) - var(--f0)) * var(--fill) + .16em) 0 0 0);padding:.16em .1em .3em;position:absolute;inset:-.16em -.1em -.3em}.wipe-scan{width:var(--sw);height:1px;left:0;top:calc(var(--f0) + (var(--f1) - var(--f0)) * var(--fill) - 1px);transform:scaleX(min(var(--cap), clamp(0, (var(--fill) - var(--fbp) - .03) * 30, 1)));transform-origin:100% 0;background:currentColor;position:absolute}.wipe-path,.wipe-index{white-space:pre;clip-path:inset(calc((1 - var(--meta)) * 100%) 0 0 0);position:absolute;bottom:clamp(18px,3vh,30px)}.wipe-path{left:max(var(--gutter), calc((100% - var(--max)) / 2))}.wipe-index{right:max(var(--gutter), calc((100% - var(--max)) / 2))}html.is-xray #wipe{color:var(--ink)}html.is-xray .wipe-col{background:var(--paper)}html.is-xray .wipe-col:before,html.is-xray .wipe-col:after{background:var(--ink)}html.is-xray .wipe-anchor{background:var(--paper)}html.is-xray .wipe-outline{-webkit-text-stroke-color:var(--ink);background-image:repeating-linear-gradient(135deg, var(--ink) 0 1px, transparent 1px max(5px, .05em))}html.is-xray .wipe-fill{visibility:hidden}html.has-cursor,html.has-cursor *{cursor:none!important}html.has-cursor :is(iframe,textarea,select,[contenteditable]:not([contenteditable=false]),input:not([type=checkbox],[type=radio],[type=range],[type=button],[type=submit],[type=reset],[type=color],[type=file],[type=image]),[data-cursor-hide],[data-cursor-hide] *){cursor:auto!important}html.has-cursor [data-cursor-hide] :is(a[href],button,label,summary,[role=button]){cursor:pointer!important}@media (forced-colors:active){html.has-cursor,html.has-cursor *{cursor:revert!important}#cursor,#cursor-ui{display:none!important}}#cursor,#cursor-ui{z-index:950;pointer-events:none;contain:strict;display:none;position:fixed;inset:0;overflow:hidden}#cursor{mix-blend-mode:difference;color:#fff}#cursor-ui{z-index:951}html.has-cursor #cursor,html.has-cursor #cursor-ui{display:block}@media print{html.has-cursor #cursor,html.has-cursor #cursor-ui{display:none}}#cursor>*,#cursor-ui>*{will-change:transform;display:block;position:absolute;top:0;left:0}#cursor i{display:block;position:absolute;top:0;left:0}#cursor .cursor-frame{border:1px solid #fff;border-radius:5px;width:10px;height:10px;transform:translate(-100px,-100px)scale(0)}#cursor .cursor-fill{border-radius:inherit;background:#fff;position:absolute;inset:0}#cursor .cursor-frame:before,#cursor .cursor-frame:after{content:"";width:5px;height:5px;transition:transform .3s var(--ease-out);background:#000;border:1px solid #fff;position:absolute;transform:rotate(20deg)scale(0)}#cursor .cursor-frame:before{top:-3px;left:-3px}#cursor .cursor-frame:after{bottom:-3px;right:-3px}#cursor[data-mode=stuck] .cursor-frame:before,#cursor[data-mode=stuck] .cursor-frame:after{transition-delay:.12s;transform:rotate(20deg)scale(1)}#cursor .cursor-hair{visibility:hidden;transform-origin:0 0;background:#fff}#cursor .cursor-hair-l,#cursor .cursor-hair-r{width:100%;height:1px}#cursor .cursor-hair-t,#cursor .cursor-hair-b{width:1px;height:100%}#cursor .cursor-ticks{visibility:hidden;width:1px;height:1px}#cursor .cursor-ticks i{background:#fff}#cursor .cursor-ticks i:first-child{width:6px;height:1px;left:-13px}#cursor .cursor-ticks i:nth-child(2){width:6px;height:1px;left:8px}#cursor .cursor-ticks i:nth-child(3){width:1px;height:6px;top:-13px}#cursor .cursor-ticks i:nth-child(4){width:1px;height:6px;top:8px}#cursor .cursor-trail{visibility:hidden;will-change:auto;width:100%;height:100%;overflow:visible}#cursor .cursor-trail-path{fill:none;stroke:#fff;stroke-width:1px}#cursor .cursor-anchor{visibility:hidden;border:1px solid #fff;width:6px;height:6px}#cursor .cursor-pen{visibility:hidden;width:0;height:0}#cursor .cursor-pen-line{transform-origin:0 0;background:#fff;width:100px;height:1px}#cursor .cursor-pen-a,#cursor .cursor-pen-b{border:1px solid #fff;width:5px;height:5px}#cursor-ui .cursor-tag{color:#fff;font-family:var(--font-mono);letter-spacing:.06em;text-transform:none;white-space:pre;font-variant-numeric:tabular-nums;clip-path:inset(100% 0 0);transition:clip-path .3s var(--ease-out);background:#000;border:1px solid #fff;padding:4px 6px 3px;font-size:10px;font-weight:500;line-height:1.3}#cursor-ui.has-tag .cursor-tag{clip-path:inset(0)}#cursor-ui.is-dark .cursor-tag{color:#000;background:#fff;border-color:#000}#cursor-ui .cursor-pt{width:0;height:0}#cursor-ui .cursor-label{color:#fff;white-space:nowrap;min-width:72px;height:72px;font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;transition:transform .3s var(--ease-out);background:#000;border:1px solid #fff;border-radius:36px;justify-content:center;align-items:center;padding:0 16px;font-size:11px;font-weight:500;display:inline-flex;position:absolute;top:0;left:0;transform:translate(-50%,-50%)scale(0)}#cursor-ui.is-dark .cursor-label{color:#000;background:#fff;border-color:#000}#cursor-ui[data-mode=label] .cursor-label{transform:translate(-50%,-50%)scale(1)}#cursor-ui[data-mode=label].is-down .cursor-label{transform:translate(-50%,-50%)scale(.9)}#ruler,#ruler-index{z-index:905;pointer-events:none;contain:layout style;width:360px;display:none;position:fixed;top:0;bottom:0;right:0}#ruler{mix-blend-mode:difference;color:#fff}#ruler-index{z-index:906}html.has-ruler #ruler,html.has-ruler #ruler-index{display:block}@media print{html.has-ruler #ruler,html.has-ruler #ruler-index{display:none}}body.is-viewer :is(#ruler,#ruler-index),body[data-nav=hidden] :is(#ruler,#ruler-index),body.is-locked :is(#ruler,#ruler-index),body[data-intro=pending] :is(#ruler,#ruler-index),:is(#ruler,#ruler-index).is-empty{visibility:hidden}#ruler .ruler-scale,#ruler-index .ruler-index-inner{height:0;position:absolute;top:0;right:10px}#ruler .ruler-scale{width:48px;transition:transform .55s var(--ease-inout)}#ruler.is-aside .ruler-scale{transform:translate(44px)}#ruler-index.is-aside{visibility:hidden}#ruler-index .ruler-index-inner{width:340px}#ruler svg{shape-rendering:crispedges;position:absolute;top:0;right:0;overflow:visible}#ruler svg path{fill:none;stroke:#fff;stroke-width:1px}#ruler .ruler-leaders{shape-rendering:auto;clip-path:inset(0 0 0 100%)}#ruler .ruler-window{will-change:transform;border:1px solid #fff;border-right:0;width:12px;height:12px;position:absolute;top:0;right:0;overflow:hidden}#ruler .ruler-loupe{will-change:transform}#ruler .ruler-marks{position:absolute;inset:0}#ruler .ruler-mark{background:#fff;width:12px;height:1px;position:absolute;top:0;right:0}#ruler .ruler-mark i{width:7px;height:7px;transition:scale .3s var(--ease-out);background:#000;border:1px solid #fff;display:block;position:absolute;top:-3px;right:8px;transform:rotate(20deg)}#ruler .ruler-mark.is-current i{background:#fff}#ruler .ruler-mark.is-stacked i{visibility:hidden}#ruler .ruler-mark.is-hot i{scale:1.5}#ruler .ruler-read{writing-mode:vertical-rl;white-space:nowrap;will-change:transform;width:8px;font-family:var(--font-mono);letter-spacing:.06em;font-variant-numeric:tabular-nums;clip-path:inset(0 -3px 100%);transition:clip-path .35s var(--ease-out);background:#000;padding:3px 0 2px;font-size:9px;font-weight:500;line-height:8px;display:block;position:absolute;top:0;right:0;transform:translate(0,0)translateY(-100%)rotate(180deg)}#ruler.is-reading .ruler-read{clip-path:inset(0 -3px)}#ruler-index .ruler-chip{isolation:isolate;cursor:pointer;background:var(--ink);border:1px solid var(--paper);height:22px;font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;visibility:hidden;clip-path:inset(0 0 0 100%);align-items:center;gap:10px;padding:0 8px;font-size:10px;font-weight:500;line-height:1;display:inline-flex;position:absolute;top:0;right:40px;overflow:hidden}#ruler-index .ruler-chip:before{content:"";background:var(--paper);transition:transform .3s var(--ease-out);position:absolute;inset:0;transform:translateY(101%)}#ruler-index .ruler-chip>span{color:var(--paper);mix-blend-mode:difference;position:relative}#ruler-index .ruler-chip.is-current{background:var(--paper);border-color:var(--ink)}#ruler-index .ruler-chip.is-current:before{background:var(--ink)}#ruler-index .ruler-chip:hover:before{transform:translateY(0)}#ruler-index.is-open .ruler-chip{visibility:inherit;pointer-events:auto}#ruler-index .ruler-chip-n{font-variant-numeric:tabular-nums}@media (forced-colors:active){#ruler{mix-blend-mode:normal;color:canvastext}#ruler .ruler-scale{background:canvas}#ruler svg path{stroke:canvastext}#ruler .ruler-window{border-color:canvastext}#ruler .ruler-mark{background:canvastext}#ruler .ruler-mark i{background:canvas;border-color:canvastext}#ruler .ruler-mark.is-current i{background:canvastext}#ruler .ruler-read{background:canvas}}@media print{.skip-link[data-astro-cid-rh3ye2gb]{display:none}}
