@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(data:font/woff2;base64,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) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/manrope-cyrillic-wght-normal.C1zWlyYG.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/manrope-greek-wght-normal.-KUh6X2k.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:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/manrope-vietnamese-wght-normal.CvPE_C53.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:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/manrope-latin-ext-wght-normal.D62tbE3i.woff2) format("woff2-variations");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,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:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/manrope-latin-wght-normal.DWlqe-xm.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+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}.astro-route-announcer{position:absolute;left:0;top:0;clip:rect(0 0 0 0);clip-path:inset(50%);overflow:hidden;white-space:nowrap;width:1px;height:1px}.content[data-astro-cid-sz7xmlte]{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:start;gap:1em;border-block-start:1px solid #f0f0f0;padding-block:1em 4rem;font-size:var(--fs-sm)}ul[data-astro-cid-sz7xmlte]{display:flex;flex-direction:column;margin:0;padding:0;list-style:none}a[data-astro-cid-sz7xmlte]{color:rgb(var(--gray))}a[data-astro-cid-sz7xmlte]:hover{color:var(--accent)}header[data-astro-cid-3ef6ksr2]{position:sticky;top:0;z-index:50;backdrop-filter:blur(10px);margin:0;border-block-end:1px solid #f0f0f0;background:#fff;background-color:#fff9;width:100%;min-height:3rem}.is_scrolled[data-astro-cid-3ef6ksr2]{box-shadow:0 2px 8px oklch(var(--black) / 5%)}h2[data-astro-cid-3ef6ksr2]{margin:0;font-size:var(--fs-md)}h2[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2]{color:inherit;text-decoration:none}nav[data-astro-cid-3ef6ksr2]{display:flex;justify-content:space-between;align-items:center}.links[data-astro-cid-3ef6ksr2]{display:flex;align-items:center}.links[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2]{margin-block:.5rem;border-radius:.5rem;padding:.25rem .5rem;color:oklch(var(--black));line-height:1;text-decoration:none}.links[data-astro-cid-3ef6ksr2]:has(a:hover) a[data-astro-cid-3ef6ksr2]:not(:hover){color:oklch(var(--gray-25))}.links[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2]:hover{color:var(--black)}.links[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2].active{color:oklch(var(--black));text-decoration:underline;text-decoration-color:oklch(var(--accent));text-decoration-thickness:.2em;text-underline-offset:.5em}.internal-links[data-astro-cid-3ef6ksr2],.social-links[data-astro-cid-3ef6ksr2],.social-links[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2]{display:flex}.social-links[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2]{border-radius:.5em;padding:.5em}.social-links[data-astro-cid-3ef6ksr2] a[data-astro-cid-3ef6ksr2]:hover{color:oklch(var(--accent))}@media (max-width: 720px){.social-links[data-astro-cid-3ef6ksr2]{display:none}}:root{--accent: 58.06% .1 209.12;--white: 100% 0 0;--gray-10: 95% 0 162;--gray-25: 75% 0 162;--gray-50: 50% 0 162;--gray-75: 25% 0 162;--black: 10% 0 0;--gray-gradient: rgba(var(--gray-light), 50%), #fff;--box-shadow: 0 2px 6px rgba(var(--gray), 25%), 0 8px 24px rgba(var(--gray), 33%), 0 16px 32px rgba(var(--gray), 33%);--fs-sm: clamp(.75rem, .154vw + .712rem, .85rem);--fs-base: clamp(.938rem, .192vw + .889rem, 1.063rem);--fs-md: clamp(1.172rem, .24vw + 1.112rem, 1.328rem);--fs-lg: clamp(1.465rem, .3vw + 1.39rem, 1.66rem);--fs-xl: clamp(1.831rem, .376vw + 1.737rem, 2.075rem);--fs-xxl: clamp(2.289rem, .47vw + 2.171rem, 2.594rem);--fs-xxxl: clamp(2.861rem, .587vw + 2.714rem, 3.242rem);--grid-gap: clamp(1.2rem, 6vw, 3rem);--grid-full: minmax(var(--grid-gap), 1fr);--grid-bleed: minmax(0, 5rem);--grid-content: min(70ch, 100% - var(--grid-gap) * 2);--grid-popout: minmax(0, 2rem);--grid-feature: minmax(0, 3rem)}*{box-sizing:border-box}body{margin:0;background:linear-gradient(var(--gray-gradient)) no-repeat;background-size:100% 600px;padding:0;font-family:Manrope Variable,-apple-system,Segoe UI,sans-serif;text-align:left;word-wrap:break-word;scroll-behavior:smooth;color:var(--black);font-size:var(--fs-base);line-height:1.7;overflow-wrap:break-word}main{padding-block:3rem}h1,h2,h3,h4,h5,h6{margin:0 0 .5em;color:oklch(var(--black));line-height:1.2}h1{font-size:var(--fs-md)}h2,h3{font-size:var(--fs-base)}strong,b{font-weight:700}a{color:inherit;text-decoration-color:oklch(var(--gray-25));text-decoration-thickness:.125em}a:hover{text-decoration-color:oklch(var(--accent))}p,a{margin:0 0 1em}p+ul{margin-top:0}textarea{width:100%;font-size:16px}input{font-size:16px}table{width:100%}img{max-width:100%;height:auto}code{border-radius:2px;background-color:oklch(var(--gray-10));padding:2px 5px}pre{margin-block:0 1em;border-radius:8px;padding:1rem 2rem}.prose pre{grid-column:popout}pre>code{all:unset}blockquote{margin:0;border-left:4px solid oklch(var(--accent));padding:0 0 0 20px;font-size:1.333em}hr{border:none;border-top:1px solid oklch(var(--gray-25))}.layout-grid{display:grid;grid-template-columns:[full-start] var(--grid-full) [bleed-start] var(--grid-bleed) [feature-start] var(--grid-feature) [popout-start] var(--grid-popout) [content-start] var(--grid-content) [content-end] var(--grid-popout) [popout-end] var( --grid-feature ) [feature-end] var(--grid-bleed) [bleed-end] var(--grid-full) [full-end]}:is(.layout-grid,.full)>*{grid-column:content}.popout{grid-column:popout}.feature{grid-column:feature}.bleed{grid-column:bleed}.full{display:grid;grid-template-columns:subgrid;grid-column:full}.bg-decoration{position:absolute;z-index:-1;mask-image:radial-gradient(ellipse 100% 60% at 50% 0%,#000 70%,transparent 100%);inset:0;background-image:linear-gradient(to right,#f5f5f5 1px,transparent 1px),linear-gradient(to bottom,#f5f5f5 1px,transparent 1px);background-size:3rem 3rem;background-color:#fff;width:100vw;height:100vh}.sr-only{position:absolute!important;margin:0;border:0;padding:0;width:1px;height:1px;overflow:hidden;clip:rect(1px 1px 1px 1px);clip:rect(1px,1px,1px,1px);clip-path:inset(50%);white-space:nowrap}
