:root{--paper: #f5f3ee;--paper-2: #ecE9e1;--card: #ffffff;--ink: #16151a;--ink-2: #4a4852;--ink-3: #85838c;--line: rgba(22, 21, 26, .1);--line-2: rgba(22, 21, 26, .18);--g1: #0f8b8d;--g2: #6d5cf5;--g3: #ff7a59;--grad: linear-gradient(115deg, var(--g1), var(--g2) 55%, var(--g3));--a1: var(--g1);--a2: var(--g2);--a3: var(--g3);--a4: #f2b134;--shadow-s: 0 1px 2px rgba(22, 21, 26, .06), 0 2px 8px rgba(22, 21, 26, .05);--shadow-m: 0 2px 4px rgba(22, 21, 26, .05), 0 12px 32px -8px rgba(22, 21, 26, .16);--shadow-l: 0 4px 8px rgba(22, 21, 26, .04), 0 32px 64px -16px rgba(22, 21, 26, .24);--f-display: "Instrument Serif", ui-serif, Georgia, serif;--f: "Figtree", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--f-mono: "IBM Plex Mono", ui-monospace, Menlo, monospace;--r-s: 10px;--r-m: 18px;--r-l: 28px;--max: 1200px;--gutter: clamp(16px, 4vw, 40px);--ease: cubic-bezier(.22, 1, .36, 1);color-scheme:light}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--paper: #0f0f13;--paper-2: #17171d;--card: #1b1b22;--ink: #f1efe9;--ink-2: #b9b6c0;--ink-3: #7f7c88;--line: rgba(241, 239, 233, .1);--line-2: rgba(241, 239, 233, .18);--shadow-s: 0 1px 2px rgba(0, 0, 0, .4);--shadow-m: 0 12px 32px -8px rgba(0, 0, 0, .6);--shadow-l: 0 32px 64px -16px rgba(0, 0, 0, .7);color-scheme:dark}}:root[data-theme=dark]{--paper: #0f0f13;--paper-2: #17171d;--card: #1b1b22;--ink: #f1efe9;--ink-2: #b9b6c0;--ink-3: #7f7c88;--line: rgba(241, 239, 233, .1);--line-2: rgba(241, 239, 233, .18);--shadow-s: 0 1px 2px rgba(0, 0, 0, .4);--shadow-m: 0 12px 32px -8px rgba(0, 0, 0, .6);--shadow-l: 0 32px 64px -16px rgba(0, 0, 0, .7);color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--f);font-size:18px;line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}img{max-width:100%;display:block}a{color:inherit}button{font:inherit;color:inherit}::selection{background:color-mix(in srgb,var(--a2) 30%,transparent)}:focus-visible{outline:2px solid var(--a1);outline-offset:3px;border-radius:6px}.wrap{width:100%;max-width:var(--max);margin:0 auto;padding:0 var(--gutter)}.narrow{max-width:760px}.display{font-family:var(--f-display);font-weight:400;line-height:.98;letter-spacing:-.015em;margin:0}.display em{font-style:italic}h1,h2,h3,h4{margin:0;font-weight:500}.h2{font-family:var(--f-display);font-weight:400;font-size:clamp(36px,5vw,60px);line-height:1.02;letter-spacing:-.01em}.h3{font-size:clamp(22px,2.4vw,28px);line-height:1.25;letter-spacing:-.01em;font-weight:500}.lead{font-size:clamp(19px,1.8vw,22px);line-height:1.55;color:var(--ink-2)}.label{font-family:var(--f-mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}.muted{color:var(--ink-2)}.grad-text{background:linear-gradient(115deg,var(--a1),var(--a2) 55%,var(--a3));-webkit-background-clip:text;background-clip:text;color:transparent}.btn{display:inline-flex;align-items:center;gap:10px;padding:14px 22px;border-radius:999px;text-decoration:none;font-weight:600;font-size:16px;border:1px solid var(--line-2);background:var(--card);box-shadow:var(--shadow-s);transition:transform .4s var(--ease),box-shadow .4s var(--ease),background .3s;cursor:pointer}.btn:hover{box-shadow:var(--shadow-m)}.btn--ink{background:var(--ink);color:var(--paper);border-color:transparent}.chip{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:999px;border:1px solid var(--line-2);font-size:14px;color:var(--ink-2);background:color-mix(in srgb,var(--card) 70%,transparent)}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--r-l);box-shadow:var(--shadow-s)}[data-tilt]{transform:perspective(1200px) rotateX(var(--rx, 0deg)) rotateY(var(--ry, 0deg));transition:transform .6s var(--ease),box-shadow .6s var(--ease);transform-style:preserve-3d;position:relative}[data-tilt].is-tilting{transition:transform .12s linear,box-shadow .4s var(--ease);box-shadow:var(--shadow-l)}[data-tilt]:after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:radial-gradient(500px circle at var(--lx, 50%) var(--ly, 50%),rgba(255,255,255,.22),transparent 45%);opacity:0;transition:opacity .4s;mix-blend-mode:soft-light}[data-tilt].is-tilting:after{opacity:1}[data-reveal]{transition:opacity .9s var(--ease),transform .9s var(--ease);transition-delay:var(--d, 0s)}[data-reveal].pre:not(.in){opacity:0;transform:translateY(28px)}.cursor-glow{position:fixed;inset:0;pointer-events:none;z-index:0;background:radial-gradient(600px circle at var(--mx, -999px) var(--my, -999px),color-mix(in srgb,var(--a2) 9%,transparent),transparent 60%);transition:opacity .4s}main,header,footer{position:relative;z-index:1}.grain{position:fixed;inset:-50%;pointer-events:none;z-index:100;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important;scroll-behavior:auto!important}[data-reveal].pre:not(.in){opacity:1;transform:none}.cursor-glow{display:none}}@media(hover:none){.cursor-glow{display:none}}.nav[data-astro-cid-5hce7sga]{position:sticky;top:0;z-index:50;backdrop-filter:saturate(1.4) blur(14px);-webkit-backdrop-filter:saturate(1.4) blur(14px);background:color-mix(in srgb,var(--paper) 72%,transparent);border-bottom:1px solid var(--line)}.nav__in[data-astro-cid-5hce7sga]{display:flex;align-items:center;justify-content:space-between;height:64px}.nav__brand[data-astro-cid-5hce7sga]{display:inline-flex;align-items:center;gap:10px;text-decoration:none;font-weight:600;font-size:17px}.nav__mark[data-astro-cid-5hce7sga]{width:22px;height:22px;border-radius:50%;background:conic-gradient(from 200deg,var(--g1),var(--g2),var(--g3),var(--g1));box-shadow:0 0 0 3px color-mix(in srgb,var(--g2) 15%,transparent);animation:spin 12s linear infinite}@keyframes spin{to{rotate:360deg}}.nav__links[data-astro-cid-5hce7sga]{display:flex;align-items:center;gap:clamp(10px,2.4vw,28px);font-size:15px}.nav__links[data-astro-cid-5hce7sga]>a[data-astro-cid-5hce7sga]:not(.nav__pill){text-decoration:none;color:var(--ink-2);transition:color .2s}.nav__links[data-astro-cid-5hce7sga]>a[data-astro-cid-5hce7sga]:hover{color:var(--ink)}.nav__pill[data-astro-cid-5hce7sga]{display:inline-grid;place-items:center;min-width:36px;height:32px;padding:0 10px;border-radius:999px;border:1px solid var(--line-2);background:transparent;font-family:var(--f-mono);font-size:12px;text-decoration:none;cursor:pointer}.nav__pill[data-astro-cid-5hce7sga]:hover{background:var(--card)}@media(max-width:560px){.nav__links[data-astro-cid-5hce7sga]>a[data-astro-cid-5hce7sga]:not(.nav__pill){display:none}}.foot[data-astro-cid-5hce7sga]{border-top:1px solid var(--line);margin-top:120px;font-size:14px}.foot__in[data-astro-cid-5hce7sga]{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:28px;padding-bottom:40px}
