@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/bricolage-grotesque-vietnamese-wght-normal.BUzh504Q.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/bricolage-grotesque-latin-ext-wght-normal.CcLUaPy7.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/bricolage-grotesque-latin-wght-normal.DLoelf7F.woff2) format("woff2-variations");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:Hanken Grotesk Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(data:font/woff2;base64,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) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Hanken Grotesk Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/hanken-grotesk-vietnamese-wght-normal.CHiFlh_0.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Hanken Grotesk Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/hanken-grotesk-latin-ext-wght-normal.Dg-wlmqe.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Hanken Grotesk Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/hanken-grotesk-latin-wght-normal.CaVRRdDk.woff2) format("woff2-variations");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:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(data:font/woff2;base64,d09GMgABAAAAAAfsABQAAAAAEAwAAAeCAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbHhwoP0hWQVJbBmA/U1RBVIFiJyYAdC9qEQgKhGSEAAsgADCGCAE2AiQDOgQgBYlMB4EUDAcbLQ4onoexrSC/2ZyLAa8p8VHB8/x3Vue+V0hVJalMJg2nx/TCrQXxBeqLjQG7FyM1WEa/X1tEXN7cFz9EJEMmMUz3RihWSSKeQCbcIou0izz/C8v+fq3VfajEa9gDD11CImXS7qL/RJFVzC1qiB6KmKeD6TZdQ6IRGv78dL6uSVVCfgni5mzu7kcgQBgAEAQTQRCoL++STTYybkJxNfQxAAIAGu8OdEB9teW2jh4BpgDqFjAeSEByW3zFP0CBBgNMsMCGEDjgggdhiEAUAeIIED7ABTDUEnkIE9Q9ahFgKttcVhApo4ACB4qobHaccgDfEjFO6aaWUhjMLt2SyIvHKoDqoA4CSUwEIYQCEjhAO9R1G6keDeDZGjNo+AhxOjCEGTr1WeIF3kYBiLAOKvkJSMiKX0VdAyQt3SDJClCkxJCHkCzfqyVTriJZLcolS32JZHUekq2TYNkYtCtjYHMQXSxGjXDz2t/yLWXzDzxz+o3zFwDEaN23F+13pyMdQAEaSKAR9vcGq4A4MTSKCElGW+M7UcY7xqkggITb28ZJhlqc9q2twYKTt0NjixBgYvO9BIihEBLYuOFXQzfIQ7dXGUEEEgFDooBfAzqiQbpJrhiWSuKJCRFKYbHCyJKI2G5GiZbNAvgAu5pc3vwx4G+g3aDkhklABiSz0BICXrYghtYhx/cdJ+44rY2oZ0aMNRFz3VZjb6W33F3gzltqtOCV8tTHSpOeXuItfvr5lCdfzFpqtEitvqdcdGGFd28ZqqC0tPbeChGXgrIlnhSWu/eUso4uKWFLugyDzQJhflY4659+WjQ++6x72WUMv9G8mw6QJl7BVxX5fe/kpUsOvnZwee9uQ0cGXYd0o89XB2748sDSnt8d2VphdOTTgceDVvOds0v9P/s7HPq15aGun/6Vllb56f1dl0t1LejqrNkpdRZsG8TOnM5vkBG5oiVyVGnS8LHps5cfNWJs6qKPfaNSxiQNBUm3cKNWROr0GSur7Za31k1vieq7LH11VF+jXdRIasRKflc7jkobm1Z9te1IyZA0pDkhLR98+H37Zf1c/8at+dB7x+7GfVyTfJMPiYztsnl59Y5l4j+0n1RXlpHnF3Tq7HecmNF/CJodEMAikruxiyJaGLvHOdAfoA+oDvpjBm2b91cHGRZMU9n25xEU0A8fgEEAdKI3Q1iDtc034sug5YVMkE2jsE+BIkwSoQ3gxXMqz9tELp48bd0cFKOKS7xYjEuXBnZP5ia7DyiO/X/YI+PQSbt2uSdqAkWL9nQbV1XB94/+uPfdZz8dnXYFBYrcTl2SIR/ybxJNJPz/Gupb0JaZeens2ekC7EKr8t+Ls/P5VJPYJdHKyqfg2nqU6bhlidzcddQV/7MmecTzJ5VPcKXkNKSEogHjYFx6QZ7rQ+FSe8njaiNuOnXS8H2ScQ619c2mC3VTtauL0rRbXd/CkSOP37FY9Zkjz8+GibYUMOEWF+RdrFS8Ecv1SHOpPUPZGEIpjPvFyU5cXKjd6OXqorTqy9GwRd++HVufPGnVsW+aO3vggKZ18jR9sXaTC1PWTEsVUaK0FkNySbTQDqlm2PfDjZcu4aalnSLKjnOoYQ0nUlqqXcGpPu/4VgV/xU2pAqW4BW3qzhQ8/hFKhV2qE3+BKAtDqBXjfgnVdH4y0wg5tbVNRenNdTWOrenWLcupQdmsbq5b+18piTe/xRdp1xbILxNPJGInm2z6hoB21Lal0i+ePTtd7B45+3XhFJ329evskXm7qurUVREotqSluSo/L29d3qDhI4YOQqWhI4YNvBNfsMHeXKemXrxQfKeuPOGRVayA3JtkJKEgbPp+dXUDluddutRYLFoXGXWX6N3WFaGLbQtRSitVYNacTNSdy7AaG/HSaUEANcBoGXNdcZvZsOqQ1icBDv21/gzAoYPHH/WDW0qNR3QTYKEAEHig6o13NXbND06CQPlRtYjGNnSktRc09k1mAMDvAlDKfQjgy6fssInlfzmNAjKkDxoxHOBLdVRAIVt9j4qo+hA1w9T1aNBNTUOTTNUHLbqokE+UAfJXCIGw/IxCSL5GRUJeR40rL/UxTm4Q08H6MbCs70ObuNyIIXrINHQYInF06UUlevTjbQzTh5upiDMzMMogUtEnjPs/Y7jAHCJeB0GBHh04tC6FiB6ZFB1oArUSIoFoqhzCeAN6lHwm0T4C3VVPWvjpSMXReuWesMEcoqrmgtNBGd2noWeV0hNAz9rFeShNJxHGsPa3HXeKTk8b55hahySYHaYKKFFLpCfN8rsoaJn01CR04Gkc+5k7KVTCmClX8Q10HCrUEkVlSX+XO33oQR9609tJ516H497WSobWs5Up6TLaS10/dessIskgJSLiDlWvHVUywpkQ7hdPZqGyiEF0uVQerVcPamT1A3eKXdyI1vG9OoflrSXihZ1qqGE3nhmAgiIbRCQgPLEPtOM3UQwTLYaYYomNlpA44opnjV6jkD6id80OOrzf6BzmMD6eEa1zKyeYG1fzfEf16V6jw9XYOaar1/b2kP/IYX8oR2mcFvv2GtBV3JXgd437AQAA) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-cyrillic-wght-normal.D73BlboJ.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-greek-wght-normal.Bw9x6K1M.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-vietnamese-wght-normal.Bt-aOZkq.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-latin-ext-wght-normal.DBQx-q_a.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/_astro/jetbrains-mono-latin-wght-normal.B9CIFXIH.woff2) format("woff2-variations");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}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}:root{--font-display: "Bricolage Grotesque Variable", "Hanken Grotesk Variable", system-ui, sans-serif;--font-body: "Hanken Grotesk Variable", system-ui, -apple-system, sans-serif;--font-mono: "JetBrains Mono Variable", ui-monospace, Menlo, monospace;--bg: #0e1118;--bg-subtle: #151a24;--surface: #151a24;--text: #b9c0ce;--text-heading: #eef0f5;--text-strong: #e3e7ee;--text-muted: #9ca5b7;--text-faint: #3a4252;--link: #f2b84b;--link-hover: #ffd58a;--border: #262d3b;--border-strong: #3a4354;--btn-text: #eef0f5;--btn-fill: #eef0f5;--btn-fill-contrast: #0e1118;--input-bg: #0b0e14;--input-text: #e3e7ee;--input-placeholder: #7b8496;--input-focus: #f2b84b;--label: #9ca5b7;--danger: #f87171;--danger-border: #4a1f1f;--danger-contrast: #0e1118;--success: #5fd394;--accent: #f2b84b;--accent-fill: #f2b84b;--on-accent: #0e1118;--status-live: #5fd394;--status-beta: #f2b84b;--status-soon: #a89cff;--status-oss: #7cb4ff;--shadow: 0 10px 30px -18px rgba(0, 0, 0, .7);color-scheme:dark}[data-theme=light]{--bg: #f3f4f7;--bg-subtle: #e9ecf1;--surface: #ffffff;--text: #3d4452;--text-heading: #141821;--text-strong: #1d222c;--text-muted: #525b6c;--text-faint: #c3c9d3;--link: #8a5200;--link-hover: #141821;--border: #dde1e8;--border-strong: #c3c9d3;--btn-text: #141821;--btn-fill: #141821;--btn-fill-contrast: #f3f4f7;--input-bg: #ffffff;--input-text: #1d222c;--input-placeholder: #6b7384;--input-focus: #8a5200;--label: #525b6c;--danger: #c62828;--danger-border: #f3c4c4;--danger-contrast: #ffffff;--success: #13703f;--accent: #8a5200;--accent-fill: #f2b84b;--on-accent: #141821;--status-live: #13703f;--status-beta: #8a5200;--status-soon: #5a4bb3;--status-oss: #1f5fbf;--shadow: 0 10px 30px -18px rgba(20, 24, 33, .25);color-scheme:light}body{font-family:var(--font-body);color:var(--text);background:var(--bg);min-height:100vh;line-height:1.6;-webkit-font-smoothing:antialiased;transition:background .3s,color .3s}h1,h2,h3,h4{font-family:var(--font-display);color:var(--text-heading);line-height:1.15;font-weight:700;letter-spacing:-.015em;text-wrap:balance}h1{font-size:clamp(2rem,4vw,2.6rem);font-weight:800;letter-spacing:-.025em}h2{font-size:1.5rem}p{margin-bottom:.75rem}p:last-child{margin-bottom:0}strong{color:var(--text-strong)}code,kbd,samp{font-family:var(--font-mono);font-size:.9em}a{color:var(--link);text-decoration:none;transition:color .3s}a:hover{color:var(--link-hover);text-decoration:underline}a.logo,a.logo:hover{color:var(--text-heading);transition:none}button,.btn{padding:.75rem 1.5rem;background:transparent;color:var(--btn-text);border:1px solid var(--border-strong);border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s}button:hover,.btn:hover{background:var(--btn-fill);color:var(--btn-fill-contrast);border-color:var(--btn-fill);text-decoration:none}button:disabled{opacity:.3;cursor:not-allowed}button:disabled:hover{background:transparent;color:var(--btn-text);border-color:var(--border-strong)}.btn-primary{background:var(--accent-fill);color:var(--on-accent);border-color:var(--accent-fill);font-weight:600}.btn-primary:hover{background:var(--accent-fill);color:var(--on-accent);border-color:var(--accent-fill);filter:brightness(1.08)}.btn-cta{display:block;width:100%;padding:1rem 1.5rem;text-align:center;background:var(--accent-fill);color:var(--on-accent);border:1px solid var(--accent-fill);border-radius:8px;font-size:1.05rem;font-weight:600;text-decoration:none;cursor:pointer;transition:filter .2s;margin-bottom:2rem}.btn-cta:hover{color:var(--on-accent);filter:brightness(1.08);text-decoration:none}.btn-danger{color:var(--danger);border-color:var(--danger-border)}.btn-danger:hover{background:var(--danger);color:var(--danger-contrast);border-color:var(--danger)}label{color:var(--label);font-size:.8rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em}input{padding:.75rem 1rem;background:var(--input-bg);border:1px solid var(--border);border-radius:8px;color:var(--input-text);font-size:1rem;transition:border-color .2s}input:focus{border-color:var(--input-focus)}input::placeholder{color:var(--input-placeholder)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}input:focus-visible{outline-offset:0}.status{display:inline-block;font-family:var(--font-mono);font-size:.7rem;font-weight:500;line-height:1;text-transform:uppercase;letter-spacing:.06em;padding:.35rem .5rem;border-radius:4px;border:1px solid currentColor;color:var(--text-muted);white-space:nowrap}.status-live{color:var(--status-live)}.status-beta{color:var(--status-beta)}.status-coming_soon{color:var(--status-soon)}.status-open_source{color:var(--status-oss)}.tag{font-family:var(--font-mono);font-size:.72rem;color:var(--text-muted)}.tag+.tag:before{content:"·";margin-right:.6em}.eyebrow{font-family:var(--font-mono);font-size:.74rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1.25rem}.card{display:grid;grid-template-rows:auto 1fr;background:var(--surface);border:1px solid var(--border);border-radius:12px;overflow:hidden;color:var(--text);text-decoration:none;transition:border-color .2s,transform .2s,box-shadow .2s}.card:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:var(--shadow);text-decoration:none;color:var(--text)}.card-img{display:block;width:100%;height:auto;aspect-ratio:16 / 10;object-fit:cover;background:var(--bg-subtle)}.card-body{display:flex;flex-direction:column;gap:.5rem;padding:1rem 1.1rem 1.15rem}.card-title{font-family:var(--font-display);font-size:1.1rem;font-weight:700;line-height:1.2;color:var(--text-heading);margin:0}.card-desc{font-size:.88rem;color:var(--text-muted);line-height:1.5;margin:0}.card-meta{display:flex;flex-wrap:wrap;gap:.4rem .75rem;align-items:center;margin-top:auto;padding-top:.25rem}.card-placeholder{border-style:dashed;background:transparent;cursor:default}.card-placeholder:hover{border-color:var(--border);transform:none;box-shadow:none}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important}}.text-muted{color:var(--text-muted)}.text-error{color:var(--danger)}.skip[data-astro-cid-37fxchfa]{position:absolute;left:1rem;top:-3rem;padding:.5rem .75rem;background:var(--accent-fill);color:var(--on-accent);border-radius:6px;z-index:200}.skip[data-astro-cid-37fxchfa]:focus{top:1rem}header[data-astro-cid-37fxchfa]{border-bottom:1px solid var(--border)}nav[data-astro-cid-37fxchfa]{max-width:1200px;margin:0 auto;padding:1rem 2rem;display:flex;justify-content:space-between;align-items:center;gap:1.5rem}.logo[data-astro-cid-37fxchfa]{display:inline-flex;align-items:center;gap:.6rem;color:var(--text-heading);text-decoration:none}.logo[data-astro-cid-37fxchfa]:hover{color:var(--text-heading);text-decoration:none}.logo[data-astro-cid-37fxchfa] svg{color:var(--text-heading);transition:color .2s}.logo[data-astro-cid-37fxchfa]:hover svg{color:var(--accent)}.logo-name[data-astro-cid-37fxchfa]{font-family:var(--font-display);font-size:1.35rem;font-weight:700;letter-spacing:-.01em}.logo-sub[data-astro-cid-37fxchfa]{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);padding-top:.2rem}ul[data-astro-cid-37fxchfa]{display:flex;gap:1.75rem;list-style:none;align-items:center}ul[data-astro-cid-37fxchfa] a{color:var(--text-muted);text-decoration:none;font-size:.92rem;font-weight:500;transition:color .2s}ul[data-astro-cid-37fxchfa] a:hover,ul[data-astro-cid-37fxchfa] a[aria-current=page]{color:var(--text-heading);text-decoration:none}ul[data-astro-cid-37fxchfa] a[aria-current=page]{box-shadow:inset 0 -2px 0 var(--accent);padding-bottom:.2rem}main[data-astro-cid-37fxchfa]{max-width:1200px;margin:0 auto;padding:3rem 2rem}footer[data-astro-cid-37fxchfa]{border-top:1px solid var(--border);margin-top:2rem}.footer-inner[data-astro-cid-37fxchfa]{max-width:1200px;margin:0 auto;padding:1.75rem 2rem;display:flex;flex-wrap:wrap;justify-content:space-between;gap:.75rem 2rem;font-size:.85rem;color:var(--text-muted)}.footer-inner[data-astro-cid-37fxchfa] p[data-astro-cid-37fxchfa]{margin:0}footer[data-astro-cid-37fxchfa] a[data-astro-cid-37fxchfa]{color:var(--text-muted);text-decoration:none}footer[data-astro-cid-37fxchfa] a[data-astro-cid-37fxchfa]:hover{color:var(--text-heading);text-decoration:underline}.footer-links[data-astro-cid-37fxchfa]{display:flex;flex-wrap:wrap;gap:1.25rem}.theme-toggle{padding:.4rem .6rem;font-size:1.05rem;line-height:1;border:1px solid var(--border);background:transparent;color:var(--text-heading);border-radius:8px;cursor:pointer}.theme-toggle:hover{border-color:var(--border-strong);background:transparent;color:var(--text-heading)}.hamburger[data-astro-cid-37fxchfa]{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:.5rem;z-index:10}.hamburger[data-astro-cid-37fxchfa]:hover{background:none}.hamburger[data-astro-cid-37fxchfa] span[data-astro-cid-37fxchfa]{display:block;width:24px;height:2px;background:var(--text-heading);border-radius:2px;transition:transform .3s,opacity .3s}.hamburger[data-astro-cid-37fxchfa][aria-expanded=true] span[data-astro-cid-37fxchfa]:nth-child(1){transform:translateY(7px) rotate(45deg)}.hamburger[data-astro-cid-37fxchfa][aria-expanded=true] span[data-astro-cid-37fxchfa]:nth-child(2){opacity:0}.hamburger[data-astro-cid-37fxchfa][aria-expanded=true] span[data-astro-cid-37fxchfa]:nth-child(3){transform:translateY(-7px) rotate(-45deg)}@media(max-width:860px){nav[data-astro-cid-37fxchfa]{position:relative;padding:.9rem 1.25rem}.hamburger[data-astro-cid-37fxchfa]{display:flex}.js ul[data-astro-cid-37fxchfa]{display:none}ul[data-astro-cid-37fxchfa]{position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:var(--bg);border-bottom:1px solid var(--border);padding:.5rem 1.25rem 1rem;z-index:100}.js ul[data-astro-cid-37fxchfa].open{display:flex}ul[data-astro-cid-37fxchfa] li[data-astro-cid-37fxchfa]{padding:.75rem 0;border-bottom:1px solid var(--border)}ul[data-astro-cid-37fxchfa] li[data-astro-cid-37fxchfa]:last-child{border-bottom:none}ul[data-astro-cid-37fxchfa] a{font-size:1rem;color:var(--text-strong)}ul[data-astro-cid-37fxchfa] a[aria-current=page]{box-shadow:none;color:var(--accent)}main[data-astro-cid-37fxchfa]{padding:2rem 1.25rem}.footer-inner[data-astro-cid-37fxchfa]{padding:1.5rem 1.25rem}}@media(max-width:860px){html:not(.js) .hamburger[data-astro-cid-37fxchfa]{display:none}html:not(.js) ul[data-astro-cid-37fxchfa]{position:static;flex-wrap:wrap}html:not(.js) nav[data-astro-cid-37fxchfa]{flex-wrap:wrap}}
