@font-face{font-family:Aeonik;src:url(/fonts/aeonik-regular.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Aeonik;src:url(/fonts/aeonik-regularitalic.woff2) format("woff2");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Aeonik;src:url(/fonts/aeonik-medium.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Aeonik;src:url(/fonts/aeonik-mediumitalic.woff2) format("woff2");font-weight:500;font-style:italic;font-display:swap}@font-face{font-family:Aeonik;src:url(/fonts/aeonik-bold.woff2) format("woff2");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Aeonik;src:url(/fonts/aeonik-bolditalic.woff2) format("woff2");font-weight:700;font-style:italic;font-display:swap}:root{--color-bg: #fbfbfa;--color-text: #111111;--color-muted: #666666;--color-accent: #111111;--color-border: #ddddda;--color-surface: #f3f3f1;--color-surface-dark: #eeeeeb;--color-card-bg: #f3f3f1;--color-card-hash-bg: #e8e8e4;--color-code-bg: #eeeeeb;--color-post-body: #2f2f2f;--color-hover-row: #eeeeeb;--color-hover-row-accent: #e7e7e3;--font-mono: "IBM Plex Mono", "SF Mono", "Fira Code", monospace;--font-sans: "Aeonik", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--max-width: 1280px;--content-narrow: 760px;--content-readable: 860px;--content-wide: 1100px;--space-page-x: 2rem;--space-section-y: 4rem;--hero-height: clamp(360px, 35vw, 470px);--hero-height-mobile: 420px;--radius-xs: 2px;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-pill: 999px;--border-subtle: 1px solid var(--color-border);--shadow-lifted: none;--transition-fast: .15s ease}*{margin:0;padding:0;box-sizing:border-box}html{background:var(--color-bg);overscroll-behavior-y:none}body{font-family:var(--font-sans);color:var(--color-text);background:var(--color-bg);line-height:1.6;-webkit-font-smoothing:antialiased}.page-shell{max-width:var(--max-width);margin:0 auto;padding:0 var(--space-page-x)}.page-shell--padded{padding-block:4rem}.page-shell--hidden-overflow{overflow:hidden}.page-hero{text-align:center;padding:5rem 2rem 3rem;max-width:var(--content-readable);margin:0 auto}.page-title{font-family:var(--font-sans);font-size:clamp(1.7rem,3.5vw,2.5rem);font-weight:400;line-height:1.18;margin:0 0 1.25rem;color:var(--color-text)}.page-title em{font-style:normal;color:var(--color-accent)}.text-lede{color:var(--color-muted);font-size:.98rem;max-width:560px;margin:0 auto;line-height:1.7}.text-lede--large{font-size:1rem;line-height:1.75;max-width:680px}.text-lede strong{color:var(--color-text);font-weight:600}.section-heading{font-family:var(--font-sans);font-size:clamp(1.4rem,2.6vw,2rem);font-weight:400;line-height:1.2;color:var(--color-text)}.section-copy{color:var(--color-muted);font-size:1rem;line-height:1.7}.mono-label{font-family:var(--font-mono);font-size:.75rem;text-transform:uppercase}.accent-label{color:var(--color-accent)}.muted-label{color:var(--color-muted)}.surface-card{background:var(--color-surface);border:var(--border-subtle);border-radius:var(--radius-sm)}.interactive-card{transition:border-color var(--transition-fast),transform var(--transition-fast)}.interactive-card:hover{border-color:var(--color-muted)}.cta-cluster{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.cta-cluster--left{justify-content:flex-start}.section-rule{border-top:var(--border-subtle);position:relative}.section-rule:before{content:"";position:absolute;top:-1px;left:50%;transform:translate(-50%);background:var(--color-bg);width:4rem;height:1px}@media(max-width:768px){:root{--space-page-x: 1rem;--space-section-y: 3rem}.page-hero{padding:4rem 1rem 3rem}}.btn{font-family:var(--font-sans);font-weight:500;text-decoration:none;border:1px solid transparent;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:.45rem;white-space:nowrap;border-radius:0;line-height:1.2;transition:background .15s ease,color .15s ease,border-color .15s ease}.btn:hover{background:var(--color-surface);color:var(--color-text)}.btn:active{background:var(--color-border)}.btn-md{min-height:2.5rem;padding:.58rem 1.15rem;font-size:.92rem}.btn-sm{min-height:2rem;padding:.4rem .8rem;font-size:.84rem}.btn-solid{background:var(--color-text);border-color:var(--color-text);color:var(--color-bg)}.btn-solid:hover{background:var(--color-bg);border-color:var(--color-text);color:var(--color-text)}.btn-outline{background:transparent;border-color:var(--color-border);color:var(--color-text)}.btn-outline:hover,.btn-accent{background:var(--color-text);border-color:var(--color-text);color:var(--color-bg)}.btn-accent:hover{background:var(--color-bg);border-color:var(--color-text);color:var(--color-text)}.btn:focus-visible{outline:2px solid var(--color-text);outline-offset:3px}.brand-logo[data-astro-cid-uaf52tac]{font-family:var(--font-sans);font-weight:600;font-size:1.2rem;line-height:1;text-decoration:none;color:var(--color-text);letter-spacing:-.01em;display:inline-flex;align-items:center;gap:.2rem}.brand-logo[data-astro-cid-uaf52tac] .brand-logo-mark{height:1.2em;width:auto;flex-shrink:0;color:currentColor}header{background:var(--color-bg)}nav{max-width:var(--max-width);margin:0 auto;padding:.55rem 2rem;display:flex;align-items:center;gap:2rem}.nav-links{display:flex;gap:2rem}.nav-links a{text-decoration:none;color:var(--color-muted);font-family:var(--font-sans);font-size:.88rem;font-weight:500;transition:color .2s}.nav-links a:hover,.nav-links a.active{color:var(--color-text)}.nav-actions{margin-left:auto;display:flex;align-items:center;gap:.75rem;flex-shrink:0}.nav-login{font-family:var(--font-sans);font-size:.88rem;font-weight:500;text-decoration:none;color:var(--color-muted);transition:color .2s}.nav-login:hover{color:var(--color-text)}.nav-actions .btn{font-size:.84rem}.nav-hamburger{display:none;background:none;border:none;cursor:pointer;padding:.5rem;flex-direction:column;gap:5px}.nav-hamburger span{display:block;width:22px;height:2px;background:var(--color-text);border-radius:2px;transition:transform .3s,opacity .3s}.nav-hamburger[aria-expanded=true] span:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav-hamburger[aria-expanded=true] span:nth-child(2){opacity:0}.nav-hamburger[aria-expanded=true] span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}@media(max-width:768px){nav{flex-wrap:wrap;padding:.55rem 1.25rem}.logo{order:0}.nav-hamburger{order:1;margin-left:auto;display:flex}.nav-links{order:2}.nav-actions{order:3}.nav-links,.nav-actions{display:flex;flex-direction:column;width:100%;gap:0;align-items:flex-start;max-height:0;opacity:0;overflow:hidden;transform:translateY(-6px);transition:max-height .35s ease,opacity .25s ease,transform .35s ease,padding .35s ease,margin .35s ease,border-color .35s ease}.nav-links.open,.nav-actions.open{max-height:320px;opacity:1;transform:translateY(0)}.nav-links{border-top:1px solid transparent}.nav-links.open{padding-top:.75rem;border-top-color:var(--color-border);margin-top:.75rem}.nav-links a{padding:.6rem 0}.nav-actions.open{padding:.5rem 0 .25rem}.nav-actions .nav-login{padding:.6rem 0}.nav-actions .btn{margin-top:.5rem}}.site-footer{position:relative;background:#f5f5f3;overflow:hidden}#footer-grid-canvas{display:none}.footer-main{position:relative;z-index:1;max-width:var(--max-width);margin:0 auto;padding:3rem 2rem;width:100%}.footer-content{min-height:11rem;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:2rem}.footer-left{display:flex;flex-direction:column;gap:2.4rem}.footer-brand{align-self:end;justify-self:end;text-align:right}.footer-brand-row{display:inline-flex;align-items:center;gap:.85rem}.footer-social-links{display:flex;align-items:center;gap:.45rem;margin-top:.75rem}.footer-social-links a{display:inline-flex;align-items:center;justify-content:flex-start;width:1.15rem;height:1.15rem;color:var(--color-muted);text-decoration:none;transition:color .2s}.footer-social-links a svg{width:1rem;height:1rem}.footer-social-links a:hover{color:var(--color-text)}.footer-legal-name{font-family:var(--font-sans);font-size:.78rem;font-weight:500;letter-spacing:.04em;color:var(--color-muted)}.footer-legal-mobile{display:none}.footer-links-group{display:flex;align-items:flex-start;gap:clamp(3rem,11vw,8rem)}.footer-col h4{font-family:var(--font-sans);font-size:.84rem;color:var(--color-muted);margin-bottom:.75rem;font-weight:600}.footer-col ul{list-style:none;display:flex;flex-direction:column;gap:.48rem}.footer-col a{display:inline-flex;align-items:center;gap:.6rem;text-decoration:none;color:var(--color-muted);font-family:var(--font-sans);font-size:.84rem;font-weight:500;transition:color .2s}.footer-col a:hover{color:var(--color-text)}.footer-col a svg{opacity:.6;flex-shrink:0}.status-pill{display:inline-flex;align-items:center;gap:.32rem;padding:.16rem .38rem .14rem;border:1px solid rgba(41,163,104,.22);background:#29a36814;color:#237a51;font-family:var(--font-mono);font-size:.62rem;font-weight:500;line-height:1;text-transform:uppercase;white-space:nowrap}.status-dot{width:.38rem;height:.38rem;background:#29a368;border-radius:50%;flex-shrink:0}@media(max-width:768px){.footer-main{padding:2.75rem 1.25rem}.footer-content{min-height:0;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:2.25rem}.footer-left{display:contents}.footer-links-group{grid-column:1 / -1;width:100%;justify-content:flex-start;gap:2rem}.footer-brand{align-self:center;justify-self:end;text-align:left}.footer-brand-row{align-items:center}.footer-col{flex:0 1 auto}.footer-social-links{margin-top:.82rem}.footer-legal-desktop{display:none}.footer-legal-mobile{display:inline}}
