.footer[data-astro-cid-sz7xmlte]{margin-top:clamp(48px,8vw,96px);padding-block:clamp(48px,7vw,80px) 24px;background:var(--tg-graphite);color:#ffffffdb;font-size:.95rem}.footer-grid[data-astro-cid-sz7xmlte]{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:clamp(28px,4vw,56px)}.footer-col[data-astro-cid-sz7xmlte] h3[data-astro-cid-sz7xmlte]{margin:0 0 18px;color:#fffffff5;font-family:var(--tg-font-mono);font-size:11px;font-weight:500;letter-spacing:.12em;text-transform:uppercase}.footer-brand[data-astro-cid-sz7xmlte]{display:inline-flex;align-items:center;gap:10px;margin-bottom:18px}.footer-wordmark[data-astro-cid-sz7xmlte]{color:#fff;font-size:1.1rem;font-weight:600;letter-spacing:-.01em}.footer-address[data-astro-cid-sz7xmlte]{margin:0;color:#ffffffb8;line-height:1.55}.footer-address-link[data-astro-cid-sz7xmlte]{color:inherit;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.2);transition:color .16s ease,border-color .16s ease}.footer-address-link[data-astro-cid-sz7xmlte]:hover{color:#fff;border-bottom-color:#ffffffb3}.footer-col[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]{display:block;margin:0 0 8px;color:#ffffffc7;text-decoration:none;transition:color .16s ease}.footer-col[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte]:hover{color:#fff}.footer-socials[data-astro-cid-sz7xmlte]{display:flex;align-items:center;gap:14px;margin:2px 0 0}.footer-col[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte].footer-social{display:inline-flex;margin:0;color:#ffffffc7;transition:color .16s ease}.footer-col[data-astro-cid-sz7xmlte] a[data-astro-cid-sz7xmlte].footer-social:hover{color:#fff}.footer-status[data-astro-cid-sz7xmlte]{display:inline-flex;align-items:center;gap:8px;margin:22px 0 0;color:#ffffffb8;font-family:var(--tg-font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase}.footer-dot[data-astro-cid-sz7xmlte]{display:inline-block;width:6px;height:6px;background:var(--tg-green)}.footer-meta[data-astro-cid-sz7xmlte]{margin-top:clamp(40px,6vw,64px);color:#ffffff80;font-family:var(--tg-font-mono);font-size:11px;letter-spacing:.06em}.footer-hairline[data-astro-cid-sz7xmlte]{border:0;border-top:1px solid var(--tg-line-dark);margin:0 0 18px}.footer-meta[data-astro-cid-sz7xmlte] p[data-astro-cid-sz7xmlte]{margin:0;color:#ffffff80}.footer-meta-row[data-astro-cid-sz7xmlte]{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap}.footer-meta-link[data-astro-cid-sz7xmlte]{color:#ffffff80;text-decoration:none;border-bottom:1px solid transparent;transition:color .16s ease,border-color .16s ease}.footer-meta-link[data-astro-cid-sz7xmlte]:hover{color:#ffffffeb;border-bottom-color:#fff6}@media(max-width:900px){.footer-grid[data-astro-cid-sz7xmlte]{grid-template-columns:1fr 1fr}}@media(max-width:560px){.footer-grid[data-astro-cid-sz7xmlte]{grid-template-columns:1fr;gap:32px}}.site-header[data-astro-cid-3ef6ksr2]{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:18px;width:100%;height:var(--tg-header-h, 73px);margin:0;padding-inline:max(16px,calc((100vw - 1180px)/2));border-bottom:1px solid var(--tg-line);background:#f3f1eaeb;backdrop-filter:saturate(140%) blur(8px);-webkit-backdrop-filter:saturate(140%) blur(8px);color:var(--tg-ink)}.brand[data-astro-cid-3ef6ksr2]{display:inline-flex;align-items:center;gap:8px;font-weight:600;text-decoration:none}.brand-mark[data-astro-cid-3ef6ksr2]{display:inline-flex;align-items:center;justify-content:center}.brand-mark[data-astro-cid-3ef6ksr2] img[data-astro-cid-3ef6ksr2]{display:block;width:36px;height:36px;object-fit:contain}.brand-word[data-astro-cid-3ef6ksr2]{color:var(--tg-ink);font-size:1.08rem;font-weight:600;letter-spacing:-.01em;line-height:1}nav[data-astro-cid-3ef6ksr2]{display:flex;align-items:center;gap:22px}nav[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2]{color:var(--tg-ink-soft);font-size:.9rem;font-weight:500;text-decoration:none;transition:color .16s ease}nav[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2]:hover{color:var(--tg-ink)}@media(max-width:900px){.site-header[data-astro-cid-3ef6ksr2]{flex-wrap:wrap;height:auto;min-height:var(--tg-header-h, 73px);padding-block:12px;gap:12px}nav[data-astro-cid-3ef6ksr2]{order:3;width:100%;flex-wrap:wrap;gap:16px}}@media(max-width:430px){nav[data-astro-cid-3ef6ksr2]{gap:10px;justify-content:space-between}nav[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2]{font-size:.78rem}}@media(max-width:380px){nav[data-astro-cid-3ef6ksr2]{gap:8px}nav[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2]{font-size:.72rem}}@font-face{font-family:Switzer;src:url(/fonts/Switzer-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Switzer;src:url(/fonts/Switzer-600.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/fonts/IBMPlexMono-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;src:url(/fonts/IBMPlexMono-500.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:General Sans;src:url(/fonts/GeneralSans-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:General Sans;src:url(/fonts/GeneralSans-600.woff2) format("woff2");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-400.woff2) format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-500.woff2) format("woff2");font-weight:500;font-style:normal;font-display:swap}:root{--tg-green: #007d27;--tg-graphite: #141617;--tg-paper: #f3f1ea;--tg-surface: #ffffff;--tg-ink: #1a1d1f;--tg-ink-soft: #434549;--tg-muted: #757575;--tg-line: rgba(20, 22, 23, .1);--tg-line-dark: rgba(255, 255, 255, .14);--tg-radius: 2px;--tg-width: min(1320px, calc(100vw - 64px) );--tg-header-h: 73px;--tg-section-y: clamp(56px, 9vw, 96px);--tg-font-sans: "Switzer", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--tg-font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;font-family:var(--tg-font-sans);font-feature-settings:"ss01","ss02","cv11"}*{box-sizing:border-box}html{color:var(--tg-ink);background:var(--tg-paper);scroll-behavior:smooth}body{margin:0;min-width:320px;font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility}a{color:inherit}img,svg{max-width:100%}code,time,.mono,.eyebrow,.status-chip,.tabular{font-variant-numeric:tabular-nums}.site-shell{min-height:100vh;background:var(--tg-paper)}.wrap{width:var(--tg-width);margin-inline:auto}.section{padding-block:var(--tg-section-y)}.mono{font-family:var(--tg-font-mono)}.eyebrow{display:inline-block;margin:0 0 16px;color:var(--tg-green);font-family:var(--tg-font-mono);font-size:11px;font-weight:500;letter-spacing:.12em;text-transform:uppercase}.hairline{border:0;border-top:1px solid var(--tg-line);margin:0}.hairline-y{border:0;border-top:1px solid var(--tg-line);border-bottom:1px solid var(--tg-line)}h1,h2,h3,h4{margin:0 0 16px;color:var(--tg-ink);font-family:var(--tg-font-sans);font-weight:600;letter-spacing:-.01em;line-height:1.08}h1{font-size:clamp(2.6rem,5.4vw,5.2rem);line-height:1.02;letter-spacing:-.02em}h2{font-size:clamp(1.8rem,3vw,2.8rem);line-height:1.1}h3{font-size:clamp(1.15rem,1.4vw,1.35rem);line-height:1.2}p{color:var(--tg-ink-soft)}.button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;border:1px solid rgba(20,22,23,.4);border-radius:4px;color:var(--tg-ink);background:transparent;font-family:inherit;font-size:.95rem;font-weight:600;text-decoration:none;transition:border-color .16s ease,background .16s ease,color .16s ease}.button:hover{border-color:var(--tg-ink);background:#1416170a}.button.primary{border-color:var(--tg-green);background:var(--tg-green);color:#fff}.button.primary:hover{background:#00691f;border-color:#00691f}.button.ghost-dark{color:#ffffffeb;border-color:#ffffff5c}.button.ghost-dark:hover{border-color:#fff;background:#ffffff0f}.link-arrow{display:inline-flex;align-items:center;gap:8px;color:var(--tg-ink);font-weight:600;text-decoration:none;border-bottom:1px solid transparent;transition:border-color .16s ease}.link-arrow:after{content:"→";font-family:var(--tg-font-mono);transition:transform .2s ease}.link-arrow:hover{border-bottom-color:var(--tg-ink)}.link-arrow:hover:after{transform:translate(3px)}.link-arrow.on-dark{color:#ffffffeb}.link-arrow.on-dark:hover{border-bottom-color:#ffffffeb}.panel{border:1px solid var(--tg-line);border-radius:var(--tg-radius);background:var(--tg-surface)}.grid{display:grid;gap:24px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.status-line{display:flex;flex-wrap:wrap;gap:8px}.status-chip{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--tg-line);border-radius:var(--tg-radius);padding:6px 10px;background:var(--tg-surface);color:var(--tg-ink);font-family:var(--tg-font-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase}::selection{background:var(--tg-green);color:#fff}.js [data-reveal]{opacity:0;transform:translateY(14px);transition:opacity .52s cubic-bezier(.2,.6,.2,1) var(--reveal-delay, 0ms),transform .52s cubic-bezier(.2,.6,.2,1) var(--reveal-delay, 0ms);will-change:opacity,transform}.js [data-reveal].is-in-view{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.js [data-reveal]{opacity:1;transform:none}}@media(max-width:760px){.grid.two,.grid.three{grid-template-columns:1fr}}
