@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/manrope-cyrillic-ext-400-normal.CRdE35mU.woff2)format("woff2"),url(/_astro/manrope-cyrillic-ext-400-normal.Djnz4Wsr.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/manrope-cyrillic-400-normal.BMzJvInZ.woff2)format("woff2"),url(/_astro/manrope-cyrillic-400-normal.Dvx59UGC.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/manrope-greek-400-normal.CM4qok81.woff2)format("woff2"),url(/_astro/manrope-greek-400-normal.DuX9RsAR.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/manrope-vietnamese-400-normal.DHb3EETF.woff2)format("woff2"),url(/_astro/manrope-vietnamese-400-normal.D7E_mLGF.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/manrope-latin-ext-400-normal.CMDvPJRp.woff2)format("woff2"),url(/_astro/manrope-latin-ext-400-normal.C-X6QNXX.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Manrope;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/manrope-latin-400-normal.PaqtzbVb.woff2)format("woff2"),url(/_astro/manrope-latin-400-normal.8tf8FM3T.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/manrope-cyrillic-ext-500-normal.Dz8SjJZ9.woff2)format("woff2"),url(/_astro/manrope-cyrillic-ext-500-normal.PaLk8PaH.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/manrope-cyrillic-500-normal.B1OEZity.woff2)format("woff2"),url(/_astro/manrope-cyrillic-500-normal.CNwnNrRC.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/manrope-greek-500-normal.GeMIHyWm.woff2)format("woff2"),url(/_astro/manrope-greek-500-normal.DyxYGEtJ.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/manrope-vietnamese-500-normal.DCXiE_xi.woff2)format("woff2"),url(/_astro/manrope-vietnamese-500-normal.DaZ8i3XM.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/manrope-latin-ext-500-normal.dm74KBQw.woff2)format("woff2"),url(/_astro/manrope-latin-ext-500-normal.EtoS1VaI.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Manrope;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/manrope-latin-500-normal.BYYD-dBL.woff2)format("woff2"),url(/_astro/manrope-latin-500-normal.DMZssgOp.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/manrope-cyrillic-ext-600-normal.Dk-u7o-5.woff2)format("woff2"),url(/_astro/manrope-cyrillic-ext-600-normal.DjQx9_jq.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/manrope-cyrillic-600-normal.DvRl3Mj-.woff2)format("woff2"),url(/_astro/manrope-cyrillic-600-normal.It4mZcQk.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/manrope-greek-600-normal.BoRV6lzK.woff2)format("woff2"),url(/_astro/manrope-greek-600-normal.CF2i9ZRY.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/manrope-vietnamese-600-normal.C1J5PCl_.woff2)format("woff2"),url(/_astro/manrope-vietnamese-600-normal.lA7a_7Ok.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/manrope-latin-ext-600-normal._gBojHdJ.woff2)format("woff2"),url(/_astro/manrope-latin-ext-600-normal.u5Pl7hTU.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Manrope;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/manrope-latin-600-normal.4f0koTD-.woff2)format("woff2"),url(/_astro/manrope-latin-600-normal.BqgrALkZ.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/manrope-cyrillic-ext-700-normal.cq7F7ESW.woff2)format("woff2"),url(/_astro/manrope-cyrillic-ext-700-normal.ezu7N0xg.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/manrope-cyrillic-700-normal.Dw_fZAg2.woff2)format("woff2"),url(/_astro/manrope-cyrillic-700-normal.7JNVKxyl.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/manrope-greek-700-normal.CHUG9PD8.woff2)format("woff2"),url(/_astro/manrope-greek-700-normal.DyfsrCpP.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/manrope-vietnamese-700-normal.CUqMx5-1.woff2)format("woff2"),url(/_astro/manrope-vietnamese-700-normal.pt65Fn2Z.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/manrope-latin-ext-700-normal.DYOwVNan.woff2)format("woff2"),url(/_astro/manrope-latin-ext-700-normal.eVCcYqtJ.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Manrope;font-style:normal;font-display:swap;font-weight:700;src:url(/_astro/manrope-latin-700-normal.BZp_XxE4.woff2)format("woff2"),url(/_astro/manrope-latin-700-normal.DGRFkw-m.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:800;src:url(/_astro/manrope-cyrillic-ext-800-normal.By7E3MqD.woff2)format("woff2"),url(/_astro/manrope-cyrillic-ext-800-normal.Dlsls8yD.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:800;src:url(/_astro/manrope-cyrillic-800-normal.AvdZ5mAV.woff2)format("woff2"),url(/_astro/manrope-cyrillic-800-normal.BuEMjQU-.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:800;src:url(/_astro/manrope-greek-800-normal.CDvU698_.woff2)format("woff2"),url(/_astro/manrope-greek-800-normal.Bw-67qu9.woff)format("woff");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:800;src:url(/_astro/manrope-vietnamese-800-normal.ClPWri-A.woff2)format("woff2"),url(/_astro/manrope-vietnamese-800-normal.bvg7iBCV.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:800;src:url(/_astro/manrope-latin-ext-800-normal.DdFx7KEb.woff2)format("woff2"),url(/_astro/manrope-latin-ext-800-normal.BQAQsuQc.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:Manrope;font-style:normal;font-display:swap;font-weight:800;src:url(/_astro/manrope-latin-800-normal.BfWYOv1c.woff2)format("woff2"),url(/_astro/manrope-latin-800-normal.uHUdIJgA.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,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;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-cyrillic-ext-400-normal.xuaO2J-f.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-ext-400-normal.DMdlQ8Kv.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-cyrillic-400-normal.BSMlKf0J.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-400-normal.CEL4l2ZJ.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-vietnamese-400-normal.BulugwFq.woff2)format("woff2"),url(/_astro/ibm-plex-mono-vietnamese-400-normal.DDuiU_S-.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-latin-ext-400-normal.BmRBH3aV.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-ext-400-normal.D3D2R8hC.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-latin-400-normal.DMJ8VG8y.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-400-normal.CvHOgSBP.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,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;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-cyrillic-ext-500-normal.BqneJy0T.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-ext-500-normal.BIfNGwUT.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-cyrillic-500-normal.Bq9vWWag.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-500-normal.Ael50iVv.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-vietnamese-500-normal.DZ4AoWbu.woff2)format("woff2"),url(/_astro/ibm-plex-mono-vietnamese-500-normal.C8zxqsMH.woff)format("woff");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-latin-ext-500-normal.CAhNIIs5.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-ext-500-normal.CZ70TYgx.woff)format("woff");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-latin-500-normal.DSY6xOcd.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-500-normal.CB9ihrfo.woff)format("woff");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#fff;--surface:#f4f6f9;--ink:#1e2761;--text:#4a5263;--muted:#545c6e;--rule:#e3e7ed;--field:#7a8394;--accent:#7a2048;--brand:#408ec6;--logo-square:#1e2761;--band-bg:#1e2761;--band-ink:#fff;--band-text:#d5dbe7;--state-live:#1f7a4d;--state-building:#9a5b00;--state-prototype:#545c6e;--sans:"Manrope", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--mono:"IBM Plex Mono", ui-monospace, Menlo, Consolas, monospace;--page-w:75rem;--gutter:1.5rem;--prose:46rem;--prose-wide:64rem;--radius:.25rem;--radius-card:.5rem;color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0f1430;--surface:#171d3d;--ink:#f2f4f8;--text:#c9d0de;--muted:#aab3c5;--rule:#2a3258;--field:#7c86a0;--accent:#8dbde6;--brand:#408ec6;--logo-square:#fff;--band-bg:#1e2761;--band-ink:#fff;--band-text:#d5dbe7;--state-live:#5fd39a;--state-building:#f0b352;--state-prototype:#aab3c5;color-scheme:dark}}:root[data-theme=dark]{--bg:#0f1430;--surface:#171d3d;--ink:#f2f4f8;--text:#c9d0de;--muted:#aab3c5;--rule:#2a3258;--field:#7c86a0;--accent:#8dbde6;--brand:#408ec6;--logo-square:#fff;--band-bg:#1e2761;--band-ink:#fff;--band-text:#d5dbe7;--state-live:#5fd39a;--state-building:#f0b352;--state-prototype:#aab3c5;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{background:var(--bg);color:var(--text);font-family:var(--sans);text-rendering:optimizelegibility;margin:0;font-size:1rem;line-height:1.6}h1,h2,h3,h4,p,figure,dl,dd,ol,ul,table,pre,blockquote{margin:0}img,svg{max-width:100%}h1,h2,h3,h4{font-family:var(--sans);color:var(--ink);text-wrap:balance;font-weight:700;line-height:1.2}p{text-wrap:pretty;margin-bottom:1rem}a{color:var(--ink);text-underline-offset:.18em;text-decoration:underline 1px}a:hover{color:var(--accent)}a:focus-visible,button:focus-visible{outline:3px solid var(--brand);outline-offset:2px}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.skip{z-index:10;background:var(--ink);color:var(--bg);padding:.5rem 1rem;position:absolute;top:.5rem;left:.5rem;transform:translateY(-200%)}.skip:focus{transform:none}.eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin:0 0 .875rem;font-size:.8125rem;font-weight:700;line-height:1.4}.lead{font-size:1.125rem;line-height:1.7}.meta{color:var(--muted);font-size:.875rem}.mono{font-family:var(--mono)}.icon{vertical-align:-.15em;display:inline-block}.button{border:2px solid var(--ink);border-radius:var(--radius);background:var(--ink);min-height:3rem;color:var(--bg);align-items:center;padding:0 1.4rem;font-weight:700;line-height:1.2;text-decoration:none;display:inline-flex}.button:hover{border-color:var(--accent);background:var(--accent);color:var(--bg)}.button.secondary{color:var(--ink);background:0 0}.button.secondary:hover{border-color:var(--accent);color:var(--accent)}.band .button{border-color:var(--band-ink);background:var(--band-ink);color:var(--band-bg)}.band .button:hover{border-color:var(--band-text);background:var(--band-text);color:var(--band-bg)}.band .button.secondary{color:var(--band-ink);background:0 0}.band .button.secondary:hover{color:var(--band-text);background:0 0}.band :focus-visible{outline-color:var(--band-ink)}.actions{flex-wrap:wrap;gap:.75rem;display:flex}.more{align-items:center;min-height:2.75rem;font-weight:700;display:inline-flex}.squares{margin:0;padding:0;list-style:none}.squares li{margin-bottom:.5rem;padding-left:1.1rem;position:relative}.squares li:before{content:"";background:var(--brand);width:.375rem;height:.375rem;position:absolute;top:.62em;left:0}.squares.accent li:before{background:var(--accent)}.logo{flex:none}.logo-square{fill:var(--logo-square)}.logo-piece{fill:var(--brand)}.band .logo-square{fill:var(--band-ink)}.site-header{z-index:8;border-bottom:1px solid var(--rule);background:var(--bg);position:sticky;top:0}.site-header:has(.burger[hidden]){position:static}html{scroll-padding-top:4.25rem}.header-inner{max-width:var(--page-w);padding:.75rem var(--gutter);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.5rem;margin-inline:auto;display:flex}.brand{min-height:2.75rem;color:var(--ink);align-items:center;gap:.625rem;text-decoration:none;display:inline-flex}.brand:hover{color:var(--ink)}.brand-name{letter-spacing:.04em;font-size:1.25rem;font-weight:700}.burger{border:1px solid var(--field);border-radius:var(--radius);width:2.75rem;height:2.75rem;color:var(--ink);cursor:pointer;background:0 0;justify-content:center;align-items:center;padding:0;display:inline-flex}.burger[hidden],.burger[aria-expanded=true] .icon:first-child,.burger[aria-expanded=false] .icon:nth-child(2){display:none}.site-nav{flex-basis:100%;max-height:calc(100dvh - 5.5rem);padding-bottom:.75rem;overflow-y:auto}.site-nav[hidden]{display:none}.site-nav ul{margin:0;padding:0;list-style:none}.site-nav a{align-items:center;min-height:2.75rem;font-size:.9375rem;font-weight:600;text-decoration:none;display:flex}.site-nav a[aria-current]{text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:.5em;text-decoration-thickness:2px}.site-nav .nav-tools{border-top:1px solid var(--rule);margin-top:.5rem;padding-top:.5rem}.lang-menu{position:relative}.lang-menu summary{min-height:2.75rem;color:var(--ink);cursor:pointer;align-items:center;gap:.5rem;font-size:.9375rem;font-weight:600;list-style:none;display:flex}.lang-menu summary::-webkit-details-marker{display:none}.lang-menu summary:hover{color:var(--accent)}.lang-menu summary:focus-visible{outline:3px solid var(--brand);outline-offset:2px}.caret{fill:currentColor;transition:transform .15s}.lang-menu[open] .caret{transform:rotate(180deg)}.flag{outline:1px solid var(--rule);border-radius:2px;flex:none;width:1.5rem;height:1rem}.lang-list{border:1px solid var(--rule);border-radius:var(--radius-card);background:var(--bg);min-width:11rem;margin:0 0 .5rem;padding:.375rem}.site-nav .lang-list{display:block}.site-nav .lang-list a{border-radius:var(--radius);gap:.625rem;padding:0 .75rem}.site-nav .lang-list a:hover{background:var(--surface);color:var(--ink)}@media (width>=70rem){.lang-list{z-index:6;margin:0;position:absolute;top:calc(100% + .5rem);right:0;box-shadow:0 .5rem 1.5rem #0f14301f}}@media (prefers-reduced-motion:reduce){.caret{transition:none}}.theme-switch{cursor:pointer;background:0 0;border:0;align-items:center;min-width:2.75rem;min-height:2.75rem;padding:0;display:inline-flex}.theme-switch[hidden]{display:none}.theme-track{border:1px solid var(--field);background:var(--surface);border-radius:999px;justify-content:space-between;align-items:center;width:3.25rem;height:1.75rem;padding:0 .45rem;display:inline-flex;position:relative}.theme-switch:hover .theme-track{border-color:var(--accent)}.theme-knob{background:var(--ink);border-radius:50%;width:1.375rem;height:1.375rem;transition:transform .2s;position:absolute;top:50%;left:.2rem;transform:translateY(-50%)}.theme-switch[aria-checked=true] .theme-knob{transform:translate(1.35rem,-50%)}.theme-track .icon{color:var(--muted);position:relative}.theme-switch[aria-checked=false] .icon-sun,.theme-switch[aria-checked=true] .icon-moon{color:var(--bg)}@media (prefers-reduced-motion:reduce){.theme-knob{transition:none}}.site-nav .button{min-height:2.75rem;color:var(--bg);margin-top:.5rem}.site-nav .button:hover{color:var(--bg)}@media (width>=70rem){.header-inner{flex-wrap:nowrap;gap:.5rem 1.5rem}.burger{display:none}.site-nav,.site-nav[hidden]{flex-basis:auto;align-items:center;gap:2rem;max-height:none;padding:0;display:flex;overflow:visible}.site-nav ul{align-items:center;gap:1.5rem;display:flex}.site-nav .nav-tools{border-top:0;border-left:1px solid var(--rule);gap:1.25rem;margin:0;padding:0 0 0 2rem}.site-nav .button{white-space:nowrap;margin:0;padding:0 1.1rem}}.quick-actions.quick-actions{align-items:center;gap:0;margin:0;padding:0;list-style:none;display:flex}.quick-actions.quick-actions a{border-radius:var(--radius);width:2.5rem;height:2.5rem;min-height:0;color:var(--ink);justify-content:center;align-items:center;display:inline-flex}.quick-actions.quick-actions a:hover{background:var(--surface);color:var(--accent)}.header-book.button{white-space:nowrap;min-height:2.5rem;margin-left:auto;padding:0 .7rem;font-size:.875rem}@media (width<=24.1rem){.brand-name{display:none}}@media (width>=70rem){.header-book.button{display:none}}.section{scroll-margin-top:1rem}.section.alt{background:var(--surface)}.section-inner{max-width:var(--page-w);padding:4.5rem var(--gutter);margin-inline:auto}.section-head{max-width:47.5rem;margin-bottom:3rem}.section-head h1,.section-head h2{font-size:clamp(1.75rem,1.2rem + 1.6vw,2.5rem)}.section-head p:last-child{margin-bottom:0}.section-head .lead{margin-top:1rem}@media (width>=48rem){.section-inner{padding-block:6.5rem}}.band{background:var(--band-bg);color:var(--band-text);position:relative;overflow:hidden}.band h1,.band h2,.band h3,.band a:not(.button),.band .eyebrow{color:var(--band-ink)}.band .section-inner{position:relative}.arc{width:min(27.5rem,60vw);height:auto;color:var(--brand);pointer-events:none;position:absolute;bottom:0;right:0}.site-footer{border-top:1px solid var(--rule);background:var(--bg)}.footer-inner{max-width:var(--page-w);padding:3.5rem var(--gutter) 2.5rem;gap:2.5rem;margin-inline:auto;display:grid}.footer-top{flex-wrap:wrap;justify-content:space-between;gap:2.5rem;display:flex}.footer-brand{flex:16rem}.footer-brand p{color:var(--text);margin:.75rem 0 0}.footer-nav{flex-wrap:wrap;flex:2 30rem;gap:2rem 4rem;display:flex}.footer-nav h2{letter-spacing:.08em;text-transform:uppercase;margin-bottom:.5rem;font-size:.75rem}.footer-nav ul{margin:0;padding:0;list-style:none}.footer-nav a{align-items:center;min-height:2.25rem;font-size:.9375rem;text-decoration:none;display:inline-flex}.footer-nav a:hover{text-decoration:underline}.footer-bottom{border-top:1px solid var(--rule);color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:.5rem 2rem;padding-top:1.25rem;font-size:.8125rem;display:flex}.footer-bottom p{margin:0}.footer-bottom a{color:inherit}@media (width<=40rem){.arc{display:none}}.hero .section-inner{padding-block:5.5rem 6.5rem}.hero-text{max-width:45rem}.hero h1{margin:0 0 1.5rem;font-size:clamp(2.5rem,1.6rem + 3vw,3.75rem);font-weight:800;line-height:1.1}.hero .lead{font-size:1.1875rem}.hero .actions{margin:2rem 0 0}.hero-facts{grid-template-columns:repeat(auto-fit,minmax(min(10.5rem,100%),1fr));gap:1.5rem 2rem;margin:3rem 0 0;display:grid}.hero-facts div{border-top:2px solid var(--brand);padding-top:.875rem}.hero-facts dt{color:var(--band-ink);font-size:1.375rem;font-weight:800;line-height:1.2}.hero-facts dd{color:var(--band-text);margin:.375rem 0 0;font-size:.9375rem;line-height:1.45}@media (width<=47.99rem){.hero-facts{gap:1rem;margin-top:2.25rem}.hero-facts div{padding-top:.625rem}.hero-facts dt{font-size:1.125rem}.hero-facts dd{margin-top:.25rem;font-size:.875rem;line-height:1.4}}@media (width>=48rem){.hero .section-inner{padding-block:7rem 7.5rem}}.split{flex-wrap:wrap;align-items:flex-start;gap:3rem 3.5rem;display:flex}.split>*{flex:26rem;min-width:0}.split-text h2{margin-bottom:1.25rem;font-size:clamp(1.75rem,1.2rem + 1.6vw,2.5rem)}.split-text h3{margin:1.75rem 0 .5rem;font-size:1.0625rem}.split-text .lead{margin-bottom:1rem}.section-more{margin:3rem 0 0}.offer-grid{grid-template-columns:repeat(auto-fit,minmax(min(24rem,100%),1fr));gap:1.5rem;margin:0;padding:0;list-style:none;display:grid}.offer-card{border:1px solid var(--rule);border-radius:var(--radius-card);flex-direction:column;gap:1rem;padding:2rem;display:flex}.offer-card h3{font-size:1.375rem}.offer-card p{margin:0}.offer-card .more{margin-top:auto}.offer-number{color:var(--accent);margin:0;font-size:.875rem}@media (width>=60rem){.offer-card:last-child:nth-child(odd){grid-column:1/-1;grid-template-columns:minmax(0,24rem) minmax(0,1fr);align-content:start;gap:1rem 3rem;display:grid}.offer-card:last-child:nth-child(odd)>.illustration{grid-row:1/span 6;align-self:center;margin:0}.offer-card:last-child:nth-child(odd)>:not(.illustration){grid-column:2}}.facts{border:1px solid var(--rule);border-radius:var(--radius-card);background:var(--rule);gap:1px;display:grid;overflow:hidden}.facts>div{background:var(--bg);padding:1.25rem 1.5rem}.facts dt{color:var(--ink);font-size:1.0625rem;font-weight:700}.facts dd{margin-top:.25rem}.work-grid{grid-template-columns:repeat(auto-fit,minmax(min(32rem,100%),1fr));gap:1.5rem;margin:0;padding:0;list-style:none;display:grid}.work-card{border:1px solid var(--rule);border-radius:var(--radius-card);flex-wrap:wrap;display:flex;position:relative;overflow:hidden}.work-pin{border:1px solid var(--rule);background:var(--bg);width:2rem;height:2rem;color:var(--accent);border-radius:50%;justify-content:center;align-items:center;display:inline-flex;position:absolute;top:.75rem;right:.75rem}.work-pin .icon{transform:rotate(35deg)}.work-cover{background:var(--surface);flex:0 0 13rem;justify-content:center;align-items:flex-end;min-height:15rem;padding:1.5rem 1.5rem 0;display:flex;overflow:hidden}.work-cover img{object-fit:cover;object-position:top;border:1px solid var(--rule);border-bottom:0;border-radius:.75rem .75rem 0 0;width:10rem;height:14rem;display:block}.work-cover .phone{width:10.5rem}.work-cover picture{display:block}.work-cover .phone-body img{border:0;width:100%;height:13.5rem}.work-body{flex:16rem;min-width:0;padding:1.5rem}.work-body .eyebrow{margin-bottom:.5rem}.work-name{margin:0 0 .75rem;font-size:1.375rem}.work-name a{text-decoration:none}.work-name a:hover{text-decoration:underline}.work-result{margin-bottom:.75rem}.work-result-label{color:var(--ink);font-weight:700}.links{flex-wrap:wrap;gap:0 1.5rem;margin:0;display:flex}@media (width<=34rem){.work-cover{flex-basis:100%}}.steps{grid-template-columns:repeat(auto-fit,minmax(min(14rem,100%),1fr));gap:2rem;margin:0;padding:0;list-style:none;display:grid}.steps h3{margin:1rem 0 .5rem;font-size:1.1875rem}.steps p{margin:0}.step-number{background:var(--band-bg);width:2.75rem;height:2.75rem;color:var(--band-ink);border-radius:50%;justify-content:center;align-items:center;font-size:.9375rem;display:inline-flex}.about-portrait{flex:0 22rem}.about-portrait .portrait{aspect-ratio:4/5;object-fit:cover;object-position:top;border-radius:var(--radius-card);width:100%;height:auto;display:block}.about .actions{margin-top:1.5rem}.monogram circle,.monogram rect{fill:var(--surface)}.monogram text{fill:var(--ink);font-family:var(--sans);font-weight:800}.monogram.round text{font-size:150px}.monogram.rect text{font-size:320px}.article-list{grid-template-columns:repeat(auto-fill,minmax(min(20rem,100%),1fr));gap:1.5rem;margin:0;padding:0;list-style:none;display:grid}.article-card{border:1px solid var(--rule);border-radius:var(--radius-card);background:var(--bg);flex-direction:column;padding:1.5rem;display:flex;position:relative}.article-cover{border-bottom:1px solid var(--rule);border-radius:calc(var(--radius-card) - 1px) calc(var(--radius-card) - 1px) 0 0;background:var(--surface);margin:-1.5rem -1.5rem 1.25rem;padding:.75rem 1.25rem .5rem}.article-cover .illustration{max-width:17rem;margin-inline:auto}.section.alt .article-cover{background:var(--bg)}.article-card:hover{border-color:var(--field)}.article-card .eyebrow{margin-bottom:.5rem}.article-title{margin:0 0 .75rem;font-size:1.1875rem;line-height:1.35}.article-title a{text-decoration:none}.article-title a:hover{text-decoration:underline}.article-title a:after{content:"";position:absolute;inset:0}.article-card .meta{margin:auto 0 0}.article-card .chips{margin:auto 0 1rem}.article-card .chips+.meta{margin-top:0}.tag-list{flex-wrap:wrap;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.tag{border:1px solid var(--field);border-radius:var(--radius);background:var(--bg);min-height:2.25rem;color:var(--ink);white-space:nowrap;align-items:center;gap:.45rem;padding:0 .75rem;font-size:.9375rem;font-weight:600;line-height:1.2;text-decoration:none;display:inline-flex;position:relative}.tag:hover{border-color:var(--accent)}.tag-count{color:var(--muted);font-family:var(--mono);font-size:.8125rem;font-weight:400}.tag.current{border-color:var(--ink);background:var(--ink);color:var(--bg)}.tag.current .tag-count{color:var(--bg)}.tag.current:hover{border-color:var(--accent);background:var(--accent)}.section-inner.blog-list{padding-top:2.5rem}.blog-list .section-head{margin-bottom:1.25rem}@media (width>=48rem){.section-inner.blog-list{padding-top:3.5rem}.blog-list .section-head{margin-bottom:2.25rem}}.tag-filter{gap:.75rem;margin:0 0 1.5rem;display:grid}.tag-family{gap:.5rem;min-width:0;display:grid}.tag-family-name{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:0;font-size:.8125rem;font-weight:700}.tag-more summary{min-height:2.25rem;color:var(--ink);cursor:pointer;align-items:center;gap:.5rem;font-size:.9375rem;font-weight:600;list-style:none;display:inline-flex}.tag-more summary::-webkit-details-marker{display:none}.tag-more summary:hover{color:var(--accent)}.tag-more summary:focus-visible{outline:3px solid var(--brand);outline-offset:2px}.tag-more[open] .caret{transform:rotate(180deg)}.tag-more .tag-family+.tag-family,.tag-more summary+.tag-family{margin-top:1rem}@media (width>=48rem){.tag-filter{margin-bottom:2.25rem}.tag-family{grid-template-columns:8.5rem minmax(0,1fr);align-items:start;gap:.4rem 1rem}.tag-family-name{padding-top:.5rem}.tag-filter .tag-list{gap:.4rem}.tag-filter .tag{min-height:2rem;padding:0 .65rem;font-size:.875rem}.tag-more .tag-family+.tag-family,.tag-more summary+.tag-family{margin-top:.75rem}}@media (width<=47.99rem){.tag-filter .tag-list{margin-inline:calc(-1 * var(--gutter));padding:.125rem var(--gutter);scroll-padding-inline:var(--gutter);scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}.tag-filter .tag-list::-webkit-scrollbar{display:none}.tag-filter .tag-list li{flex:none}.tag-filter .tag-list li:has(.current){order:-1}}.quotes{gap:1.5rem;margin:0;padding:0;list-style:none;display:grid}.testimonial{border:1px solid var(--rule);border-radius:var(--radius-card);background:var(--surface);margin:0;container-type:inline-size}.testimonial-inner{gap:1.5rem;padding:clamp(1.5rem,1rem + 2vw,2.5rem);display:grid}.testimonial-mark{height:2.75rem;color:var(--accent);font-size:5.5rem;font-weight:800;line-height:.75}.testimonial blockquote{max-width:44rem;color:var(--ink);font-size:clamp(1.125rem,1rem + .4vw,1.3125rem);font-weight:500;line-height:1.65}.testimonial figcaption{border-top:1px solid var(--rule);color:var(--text);flex-wrap:wrap;align-items:center;gap:.75rem 1rem;margin:0;padding-top:1.5rem;font-size:1rem;line-height:1.4;display:flex}.testimonial-initials{border-radius:var(--radius);background:var(--band-bg);width:3rem;height:3rem;color:var(--band-ink);letter-spacing:.04em;flex:none;justify-content:center;align-items:center;font-size:.9375rem;font-weight:700;display:inline-flex}.testimonial-author{gap:.15rem;display:grid}.testimonial-author strong{color:var(--ink)}.testimonial-role{color:var(--muted);font-size:.875rem}.testimonial figcaption .more{flex-basis:100%;min-height:2.75rem}@container (width>=52rem){.testimonial-inner{grid-template-rows:auto 1fr;grid-template-columns:minmax(0,15rem) minmax(0,1fr);gap:1.5rem 3.5rem}.testimonial blockquote{grid-area:1/2/span 2;align-self:center}.testimonial figcaption{border-top:0;flex-direction:column;grid-area:2/1;align-self:end;align-items:flex-start;padding-top:0}.testimonial figcaption .more{flex-basis:auto}}.contact{grid-template-columns:repeat(auto-fit,minmax(min(22rem,100%),1fr));align-items:start;gap:2.5rem 3.5rem;display:grid}.contact-pitch .actions{margin-top:1.5rem}.contact-list{gap:1.25rem;display:grid}.contact-list dt{letter-spacing:.08em;text-transform:uppercase;font-size:.8125rem;font-weight:700}.contact-list dd{margin-top:.15rem;font-size:1.25rem;font-weight:600}.contact-list a{overflow-wrap:anywhere}.contact-note{grid-column:1/-1;margin:0;font-size:.9375rem}.offer-nav{flex-wrap:wrap;gap:.75rem;display:flex}.offer-nav a{border:1px solid var(--field);border-radius:var(--radius);background:var(--bg);align-items:center;gap:.6rem;min-height:2.75rem;padding:0 1rem;font-weight:600;text-decoration:none;display:inline-flex}.offer-nav a:hover{border-color:var(--accent)}.offer-nav .mono{color:var(--accent);font-size:.8125rem}.section+.section:not(.alt):not(.band) .offer{border-top:1px solid var(--rule)}.offer-box{border-radius:var(--radius-card);background:var(--surface);padding:2rem}.offer-box h3{letter-spacing:.08em;text-transform:uppercase;margin:0 0 .75rem;font-size:.8125rem}.offer-box ul+h3{margin-top:1.75rem}.reference{border-top:1px solid var(--rule);margin-top:1.5rem;padding-top:1.25rem;font-size:.9375rem}.data.prices{max-width:var(--prose-wide);margin:0;font-size:1rem}.data.prices th,.data.prices td{padding-block:.9rem}.data.prices tbody th{white-space:normal;color:var(--muted);font-weight:400}.price-case{color:var(--ink);font-weight:700;display:block}.data.prices .number{white-space:nowrap;color:var(--ink);padding-left:1rem;font-weight:600}.prices-note{color:var(--muted);margin:1rem 0 0;font-size:.9375rem}@media (width<=34rem){.data.prices thead{display:none}.data.prices tr,.data.prices th,.data.prices td{display:block}.data.prices tbody th{padding-bottom:.35rem}.data.prices .number{text-align:left;padding:0 0 .9rem}.data.prices tbody tr+tr>td{border-top:0}}.band .actions{margin:0}.resume .contact-note{margin:1.25rem 0 3rem}.subheading{margin:3.5rem 0 1.5rem;font-size:1.75rem}.subheading.small{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin:0 0 .6rem;font-size:.8125rem;font-weight:700}.entry{border-top:1px solid var(--rule);flex-wrap:wrap;justify-content:space-between;gap:.5rem 2rem;padding:1.5rem 0;display:flex}.entry-body{flex:32rem;min-width:0}.entry-title{margin:0;font-size:1.25rem}.entry-body .subheading.small{text-transform:none;letter-spacing:0;margin:.35rem 0 .75rem;font-size:.9375rem;font-weight:600}.entry-body p:last-child{margin-bottom:0}.entry-period{color:var(--accent);font-family:var(--mono);font-variant-numeric:tabular-nums;font-size:.875rem}.chips{flex-wrap:wrap;gap:.5rem;margin:0 0 2rem;padding:0;list-style:none;display:flex}.chips li{border-radius:var(--radius);background:var(--surface);color:var(--ink);font-family:var(--mono);padding:.3rem .75rem;font-size:.8125rem}.checks{margin:0 0 2rem;padding:0;list-style:none}.checks li{gap:.6rem;margin-bottom:.5rem;display:flex}.checks .icon{color:var(--accent);flex:none;margin-top:.2rem}.skills{gap:1rem;display:grid}.skills dt{color:var(--ink);font-weight:700}.skills dd{margin-top:.15rem}.prose{max-width:calc(var(--prose-wide) + 2 * var(--gutter));color:var(--text);margin-inline:auto;font-size:1.0625rem;line-height:1.7}.prose>:where(h1,h2,h3,h4,p,ul,ol,pre,blockquote,.next){max-width:var(--prose)}.prose>.eyebrow{margin-bottom:1rem}.title{margin:0 0 1rem;font-size:clamp(2.5rem,1.5rem + 4vw,4rem);font-weight:800;line-height:1.05}h1.long{margin:0 0 .75rem;font-size:clamp(2rem,1.4rem + 2.4vw,3rem);font-weight:800;line-height:1.15}.prose .lead{color:var(--text);margin-bottom:1.5rem}.prose .meta{margin-bottom:1.5rem}.article-head{flex-wrap:wrap;align-items:center;gap:0 3rem;display:flex}.article-head-text{max-width:var(--prose);flex:28rem}.article-head .eyebrow{margin-bottom:1rem}.article-head>.illustration{flex:0 22rem;max-width:24rem;margin:0 auto 1.75rem}.prose h2{margin:3rem 0 .9rem;font-size:1.75rem;line-height:1.2}.prose h3{margin:2rem 0 .5rem;font-size:1.25rem;font-weight:700;line-height:1.3}.prose ul,.prose ol{margin-bottom:1rem;padding-left:1.2em}.prose li,.prose li>p{margin-bottom:.35em}.prose.numbered{counter-reset:section}.prose.numbered>h2{counter-increment:section}.prose.numbered>h2:before{content:counter(section) ".";color:var(--accent);font-family:var(--mono);margin-right:.45em;font-weight:500}.result{border-radius:var(--radius-card);background:var(--surface);color:var(--ink);margin:0 0 2rem;padding:1.25rem 1.5rem;font-size:1.125rem;font-weight:600;line-height:1.55}.result-label{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;margin-bottom:.35rem;font-size:.8125rem;font-weight:700;display:block}.prose>.page-links{max-width:none;margin:0 0 2.5rem}.sheet{grid-template-columns:var(--sheet-columns,2.2fr 1.3fr 1.6fr 2.2fr);border:1px solid var(--rule);border-radius:var(--radius-card);background:var(--rule);gap:1px;margin:0 0 2.5rem;display:grid;overflow:hidden}.sheet.wide{--sheet-columns:2.2fr 1.1fr 1.3fr 2.2fr .8fr}.sheet>div{background:var(--surface);padding:.6rem .9rem .7rem}.sheet dt{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:.15rem;font-size:.75rem;font-weight:700}.sheet dd{color:var(--ink);font-size:.95rem;font-weight:600;line-height:1.35}.sheet.profile{--sheet-columns:2fr .8fr 1.7fr 2.5fr}figure{margin:2rem 0}figcaption{color:var(--muted);margin-top:.6rem;font-size:.9rem;line-height:1.4}.label{color:var(--accent);font-weight:700}.plate .frame{border:1px solid var(--rule);border-radius:var(--radius-card);background:var(--surface);padding:1.6rem;overflow-x:auto}.diagram{width:100%;min-width:38rem;height:auto;color:var(--ink);display:block}.diagram rect{fill:var(--surface);stroke:currentColor;stroke-width:1.5px}.diagram .module rect{fill:none;stroke-width:1px}.diagram .link{fill:none;stroke:currentColor;stroke-width:1.5px}.diagram .dashed{stroke-dasharray:6 4}.diagram text{fill:currentColor;font-family:var(--sans);font-weight:600}.diagram .title{font-size:19px;font-weight:800}.diagram .detail{fill:var(--muted);font-size:15px}.diagram .code,.diagram .module text{font-family:var(--mono);font-size:12.5px;font-weight:400}.diagram .module text{text-anchor:middle}@media (prefers-reduced-motion:no-preference){.diagram .links{animation:1.5s cubic-bezier(.4,0,.2,1) .3s both trace-links}}@keyframes trace-links{0%{clip-path:inset(0 100% 0 0) view-box}to{clip-path:inset(0) view-box}}.zoom{cursor:zoom-in;display:block}.screenshot img,.gallery img{border:1px solid var(--rule);border-radius:var(--radius);width:100%;height:auto;display:block}.gallery .frames{grid-template-columns:repeat(auto-fit,minmax(9rem,15rem));gap:1.2rem;display:grid}.phone{display:block;container-type:inline-size}.phone-body{background:var(--band-bg);box-shadow:0 0 0 1px var(--rule);border-radius:14cqi;padding:3.5cqi;display:block}.phone-body img{border:0;border-radius:10.5cqi}.phone.cut .phone-body{border-bottom-right-radius:0;border-bottom-left-radius:0;padding-bottom:0}.phone.cut .phone-body img{border-bottom-right-radius:0;border-bottom-left-radius:0}.screenshot .phone{max-width:18rem}.state{border:.11em solid var(--state-colour);vertical-align:.02em;border-radius:50%;width:.62em;height:.62em;margin-right:.5em;display:inline-block}.state-live{--state-colour:var(--state-live);background:var(--state-colour)}.state-building{--state-colour:var(--state-building);background:linear-gradient(90deg, var(--state-colour) 50%, transparent 50%)}.state-prototype{--state-colour:var(--state-prototype)}.state-delivered{--state-colour:var(--state-prototype);background:var(--state-colour);border-radius:.1em}.legend{color:var(--muted);flex-wrap:wrap;gap:.2rem 1.6rem;margin:0 0 1.5rem;font-size:.9rem;display:flex}.data{border-collapse:collapse;border-block:2px solid var(--rule);font-variant-numeric:tabular-nums;width:100%;margin:1.6rem 0;font-size:.95rem;line-height:1.35}.data caption{caption-side:top;color:var(--muted);text-align:left;padding-bottom:.5rem;font-size:.9rem}.data th,.data td{text-align:left;vertical-align:baseline;padding:.4rem 1rem .4rem 0}.data thead th{border-bottom:1px solid var(--rule);color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.75rem;font-weight:700}.data tbody th{white-space:nowrap;font-weight:600}.data tbody tr+tr>*{border-top:1px solid var(--rule)}.data .number{text-align:right;padding-right:0}.data tfoot td,.data tfoot th{border-top:1px solid var(--rule);font-weight:600}code{font-family:var(--mono);font-size:.88em}pre{border:1px solid var(--rule);border-radius:var(--radius-card);background:var(--surface);tab-size:4;padding:.9rem 1.2rem;font-size:.84rem;line-height:1.55;overflow-x:auto}pre code{font-size:inherit}.astro-code{background-color:var(--surface)!important}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .astro-code,:root:not([data-theme=light]) .astro-code span{color:var(--shiki-dark)!important}}:root[data-theme=dark] .astro-code,:root[data-theme=dark] .astro-code span{color:var(--shiki-dark)!important}.article-tags{max-width:var(--prose);gap:.6rem;margin-top:3rem;display:grid}.prose .article-tags .tag-list{margin:0;padding:0}.prose .article-tags li{margin:0}.article-tags+.next{margin-top:2rem}.next{border-top:1px solid var(--rule);flex-wrap:wrap;justify-content:space-between;gap:.4rem 2rem;margin-top:3rem;padding-top:1rem;display:flex}@media (width<=72rem){.sheet{grid-template-columns:1fr 1fr}}@media (width<=34rem){.sheet{grid-template-columns:1fr}.data{font-size:.88rem}.data th,.data td{padding-right:.6rem}.data tbody th{white-space:normal;overflow-wrap:anywhere}.gallery .frames{grid-template-columns:1fr 1fr}}.illustration{width:100%;height:auto;display:block;overflow:visible}.illustration .ink{stroke:var(--ink)}.illustration .solid{fill:var(--ink)}.illustration .t-blue{fill:var(--brand)}.illustration .t-light{fill:var(--rule)}.illustration .t-accent{fill:var(--accent)}.band .illustration .ink{stroke:var(--band-ink)}.band .illustration .solid{fill:var(--band-ink)}.band .illustration .t-pale{fill:var(--band-text)}.section-head.with-art{flex-wrap:wrap;align-items:center;gap:2rem 3.5rem;max-width:none;display:flex}.section-head.with-art>.section-head-text{flex:26rem;max-width:47.5rem}.section-head.with-art>.illustration{flex:0 26rem;max-width:30rem;margin-inline:auto}.offer-card>.illustration{max-width:26rem;margin:-.5rem 0 .5rem}.steps .illustration{max-width:22.5rem;margin-bottom:1.25rem}.takeover-side>.illustration{max-width:35rem;margin:0 auto 2rem}.offer-side>.illustration{max-width:30rem;margin:0 auto 2rem}.cost-art{max-width:30rem;margin-top:2rem}.hero .section-inner{flex-wrap:wrap;align-items:center;gap:3rem 4rem;display:flex}.hero .hero-text{flex:30rem}.hero-art{flex:20rem;max-width:32rem;margin-inline:auto}.contact-art{max-width:28rem;margin-top:2.5rem}.not-found-art{max-width:30rem;margin-top:3rem}@media print{body{color:#000}.skip,.site-header,.site-footer,.arc{display:none!important}.band{color:#000;background:0 0}.band h1,.band h2,.band a:not(.button){color:#000}.section-inner{padding-block:1rem}a{color:inherit}}
