@font-face{font-family:"Source Serif 4";font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/source-serif-4-cyrillic-ext-500-normal.DaDZE_Na.woff2) format("woff2"),url(/_astro/source-serif-4-cyrillic-ext-500-normal.BStU-lo2.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Serif 4";font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/source-serif-4-cyrillic-500-normal.BdVUvljg.woff2) format("woff2"),url(/_astro/source-serif-4-cyrillic-500-normal.CcslvIcJ.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:"Source Serif 4";font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/source-serif-4-greek-500-normal.By8GFJzz.woff2) format("woff2"),url(/_astro/source-serif-4-greek-500-normal.BXMinxTp.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:"Source Serif 4";font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/source-serif-4-vietnamese-500-normal.CMCShbCf.woff2) format("woff2"),url(/_astro/source-serif-4-vietnamese-500-normal.Dnd1SzM5.woff) format("woff");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:"Source Serif 4";font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/source-serif-4-latin-ext-500-normal.B9yeO7Tj.woff2) format("woff2"),url(/_astro/source-serif-4-latin-ext-500-normal.vc_U1RmA.woff) format("woff");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Serif 4";font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/source-serif-4-latin-500-normal.CUHe9xxf.woff2) format("woff2"),url(/_astro/source-serif-4-latin-500-normal.D4bPw0i_.woff) format("woff");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:"Source Serif 4";font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/source-serif-4-cyrillic-ext-600-normal.D_E8FDgP.woff2) format("woff2"),url(/_astro/source-serif-4-cyrillic-ext-600-normal.h2VnbV3V.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Serif 4";font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/source-serif-4-cyrillic-600-normal.BDP5YDHD.woff2) format("woff2"),url(/_astro/source-serif-4-cyrillic-600-normal.CHh5eQWW.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:"Source Serif 4";font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/source-serif-4-greek-600-normal.DdRkKr-1.woff2) format("woff2"),url(/_astro/source-serif-4-greek-600-normal.OkzgCkGB.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:"Source Serif 4";font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/source-serif-4-vietnamese-600-normal.B33FcZBi.woff2) format("woff2"),url(/_astro/source-serif-4-vietnamese-600-normal.CKUOBVO_.woff) format("woff");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:"Source Serif 4";font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/source-serif-4-latin-ext-600-normal.pa-C5Dkf.woff2) format("woff2"),url(/_astro/source-serif-4-latin-ext-600-normal.B2fExS53.woff) format("woff");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Serif 4";font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/source-serif-4-latin-600-normal.DouSKlru.woff2) format("woff2"),url(/_astro/source-serif-4-latin-600-normal.DeJomR3S.woff) format("woff");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:"Source Serif 4";font-style:italic;font-display:swap;font-weight:500;src:url(/_astro/source-serif-4-cyrillic-ext-500-italic.8nfva0kt.woff2) format("woff2"),url(/_astro/source-serif-4-cyrillic-ext-500-italic.DYZ3GT-9.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:"Source Serif 4";font-style:italic;font-display:swap;font-weight:500;src:url(/_astro/source-serif-4-cyrillic-500-italic.B1PWmIVh.woff2) format("woff2"),url(/_astro/source-serif-4-cyrillic-500-italic.CIR0vbf8.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:"Source Serif 4";font-style:italic;font-display:swap;font-weight:500;src:url(/_astro/source-serif-4-greek-500-italic.iqN2YRiO.woff2) format("woff2"),url(/_astro/source-serif-4-greek-500-italic.g9YAaMm8.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:"Source Serif 4";font-style:italic;font-display:swap;font-weight:500;src:url(/_astro/source-serif-4-vietnamese-500-italic.Bv-h0pkw.woff2) format("woff2"),url(/_astro/source-serif-4-vietnamese-500-italic.DFiQ6nhN.woff) format("woff");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:"Source Serif 4";font-style:italic;font-display:swap;font-weight:500;src:url(/_astro/source-serif-4-latin-ext-500-italic.CyRZpeWh.woff2) format("woff2"),url(/_astro/source-serif-4-latin-ext-500-italic.Cuma8FTv.woff) format("woff");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-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Source Serif 4";font-style:italic;font-display:swap;font-weight:500;src:url(/_astro/source-serif-4-latin-500-italic.D3FJhX-J.woff2) format("woff2"),url(/_astro/source-serif-4-latin-500-italic.ChAd9c84.woff) format("woff");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:Public Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/public-sans-vietnamese-400-normal.TxZB8OSn.woff2) format("woff2"),url(/_astro/public-sans-vietnamese-400-normal.BO1meqcx.woff) format("woff");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:Public Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/public-sans-latin-ext-400-normal.mk90oQqJ.woff2) format("woff2"),url(/_astro/public-sans-latin-ext-400-normal.B02wwOdZ.woff) format("woff");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:Public Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/public-sans-latin-400-normal.8Rpg0ruU.woff2) format("woff2"),url(/_astro/public-sans-latin-400-normal.SBbinRkI.woff) format("woff");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:Public Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/public-sans-vietnamese-500-normal.DjztbcKe.woff2) format("woff2"),url(/_astro/public-sans-vietnamese-500-normal.CXYe29CY.woff) format("woff");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:Public Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/public-sans-latin-ext-500-normal.DC-z7ASZ.woff2) format("woff2"),url(/_astro/public-sans-latin-ext-500-normal.BHCCp-na.woff) format("woff");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:Public Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/public-sans-latin-500-normal.NlrCPXnF.woff2) format("woff2"),url(/_astro/public-sans-latin-500-normal.vCxiVFAq.woff) format("woff");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:Public Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/public-sans-vietnamese-600-normal.P4BtCUdw.woff2) format("woff2"),url(/_astro/public-sans-vietnamese-600-normal.CcnAzmUX.woff) format("woff");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:Public Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/public-sans-latin-ext-600-normal.DchWdWJ_.woff2) format("woff2"),url(/_astro/public-sans-latin-ext-600-normal.DfkbVac2.woff) format("woff");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:Public Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/_astro/public-sans-latin-600-normal.Fru-LXNs.woff2) format("woff2"),url(/_astro/public-sans-latin-600-normal.BR59oU-I.woff) format("woff");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;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/jetbrains-mono-cyrillic-ext-500-normal.C9ShMxGR.woff2) format("woff2"),url(/_astro/jetbrains-mono-cyrillic-ext-500-normal.CEVyPk4Y.woff) format("woff");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;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/jetbrains-mono-cyrillic-500-normal.DmUKJPL_.woff2) format("woff2"),url(/_astro/jetbrains-mono-cyrillic-500-normal.DJqRU3vO.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/jetbrains-mono-greek-500-normal.JpySY46c.woff2) format("woff2"),url(/_astro/jetbrains-mono-greek-500-normal.D7SFKleX.woff) format("woff");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;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/jetbrains-mono-vietnamese-500-normal.BvH7FW2L.woff2) format("woff2"),url(/_astro/jetbrains-mono-vietnamese-500-normal.DNRqzVM1.woff) format("woff");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;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/jetbrains-mono-latin-ext-500-normal.Cut-4mMH.woff2) format("woff2"),url(/_astro/jetbrains-mono-latin-ext-500-normal.ckzbgY84.woff) format("woff");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;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/jetbrains-mono-latin-500-normal.BWZEU5yA.woff2) format("woff2"),url(/_astro/jetbrains-mono-latin-500-normal.CJOVTJB7.woff) format("woff");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}:root{color-scheme:light;--paper: #f6f5f1;--surface: #ffffff;--sunken: #efede6;--navy: #13233a;--navy-2: #1e3150;--line-navy: #2e405a;--on-navy: #f6f5f1;--on-navy-muted: #c9d2de;--on-navy-border: #8a9ab0;--ink: #13233a;--ink-2: #3e4a5c;--ink-3: #4a5568;--line: #dad7ce;--line-strong: #8c8778;--teal: #0f6e61;--teal-strong: #0a5249;--teal-light: #7fd4c1;--mist: #dcebe7;--rust: #a8361a;--rust-soft: #fbe7e1;--success: #1f6b3f;--success-soft: #e3f2e8;--warning: #7a4f00;--warning-soft: #fcf1d6;--info: #1f4e8c;--info-soft: #e4ecf8;--apricot: #b86e1f;--serif: "Source Serif 4", Georgia, "Times New Roman", serif;--sans: "Public Sans", Arial, Helvetica, sans-serif;--mono: "JetBrains Mono", Consolas, monospace;--r-sm: 6px;--r-md: 10px;--r-lg: 14px;--r-pill: 999px}*{box-sizing:border-box}[hidden]{display:none!important}html{scroll-behavior:smooth}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.6}body:before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:60;background:var(--navy)}h1,h2,h3{font-family:var(--serif);font-weight:600;text-wrap:balance;margin:0;color:inherit}h1{font-size:clamp(36px,5.2vw,60px);line-height:1.06;letter-spacing:-.02em}h2{font-size:clamp(28px,3.4vw,36px);line-height:1.15;letter-spacing:-.01em}h3{font-size:21px;line-height:1.25}h2.h3{font-size:21px;line-height:1.25;letter-spacing:0}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}p{margin:0}a{color:var(--teal)}a:hover{color:var(--teal-strong)}:focus-visible{outline:2px solid var(--info);outline-offset:2px}.band-navy :focus-visible,.site-header :focus-visible,.site-footer :focus-visible{outline-color:var(--teal-light)}img,svg{max-width:100%}.wrap{padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}.container{max-width:1136px;margin-inline:auto}.section{padding-block:clamp(48px,7vw,80px)}.section-tight{padding-block:clamp(36px,5vw,56px)}.band-navy{background:var(--navy);color:var(--on-navy)}.band-white{background:var(--surface);border-block:1px solid var(--line)}.stack{display:flex;flex-direction:column;gap:16px}.stack-lg{display:flex;flex-direction:column;gap:28px}.row{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.split{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:clamp(32px,5vw,64px);align-items:center}.grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:20px}.grid-3{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:20px}.grid-4{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:20px}.measure{max-width:68ch}.min0{min-width:0}.eyebrow{font-size:14px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--teal)}.band-navy .eyebrow{color:var(--teal-light)}.lead{font-size:clamp(18px,1.6vw,20px);line-height:1.55;color:var(--ink-2)}.band-navy .lead,.band-navy .muted{color:var(--on-navy-muted)}.muted{color:var(--ink-2)}.small{font-size:15px;line-height:1.5}.caption{font-size:13px;line-height:1.4;color:var(--ink-3)}.band-navy .caption{color:var(--on-navy-muted)}.crumb{font-size:14px;color:var(--on-navy-muted)}.crumb b{color:var(--teal-light);font-weight:600}.mono{font-family:var(--mono);font-size:14px}.tnum{font-variant-numeric:tabular-nums}.draft-note{background:var(--warning-soft);color:var(--warning);font-size:14px;font-weight:600;padding-block:10px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding-inline:22px;border-radius:var(--r-sm);font:600 16px/1.2 var(--sans);text-decoration:none;cursor:pointer;border:1.5px solid transparent;white-space:nowrap}.btn-primary{background:var(--teal);color:#fff}.btn-primary:hover{background:var(--teal-strong);color:#fff}.btn-secondary{background:transparent;color:var(--ink);border-color:var(--ink)}.btn-secondary:hover{background:var(--sunken);color:var(--ink)}.btn-light{background:var(--teal-light);color:var(--navy)}.btn-light:hover{background:#a6e3d5;color:var(--navy)}.btn-ghost{background:transparent;color:var(--on-navy);border-color:var(--on-navy-border)}.btn-ghost:hover{background:var(--navy-2);color:var(--on-navy)}.btn-sm{min-height:44px;padding-inline:16px;font-size:15px}.textlink{font-weight:600;text-decoration:underline;text-underline-offset:3px}.band-navy .textlink{color:var(--teal-light)}.site-header{position:sticky;top:env(safe-area-inset-top,0px);z-index:50;background:var(--navy);color:var(--on-navy);border-bottom:1px solid var(--line-navy)}.hdr{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:72px}.logo{display:inline-flex;align-items:center;gap:10px;color:var(--on-navy);text-decoration:none;font-family:var(--serif);font-size:24px;font-weight:600}.logo:hover{color:var(--on-navy)}.nav{display:flex;align-items:center;gap:4px}.nav-item{position:relative}.nav-link,.nav-toggle{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding-inline:12px;border-radius:var(--r-sm);background:none;border:0;color:var(--on-navy);font:500 16px/1 var(--sans);text-decoration:none;cursor:pointer}.nav-link:hover,.nav-toggle:hover{background:var(--navy-2);color:var(--on-navy)}.nav-link[aria-current=page],.nav-toggle.is-current{color:var(--teal-light)}.nav-toggle svg{transition:transform .15s ease-out}.nav-toggle[aria-expanded=true] svg{transform:rotate(180deg)}.menu{position:absolute;top:calc(100% + 8px);left:0;min-width:260px;background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:0 12px 32px -16px #13233a59;padding:8px;display:flex;flex-direction:column}.menu a{display:block;padding:10px 12px;border-radius:var(--r-sm);color:var(--ink);text-decoration:none;font-size:15px;font-weight:500}.menu a:hover{background:var(--sunken)}.menu a span{display:block;font-size:13px;font-weight:400;color:var(--ink-3)}.hdr-actions{display:flex;align-items:center;gap:8px}.lang{display:inline-flex;border:1px solid var(--line-navy);border-radius:var(--r-pill);overflow:hidden;font-size:13px;font-weight:600}.lang button{background:none;border:0;color:var(--on-navy-muted);padding:8px 10px;min-height:36px;font:inherit;cursor:pointer}.lang button[aria-pressed=true]{background:var(--navy-2);color:var(--on-navy)}.demo-link{color:var(--on-navy);font-weight:500;text-decoration:none;padding-inline:8px;min-height:44px;display:inline-flex;align-items:center}.demo-link:hover{color:var(--teal-light)}.burger{display:none;width:44px;height:44px;border-radius:var(--r-sm);border:1px solid var(--line-navy);background:none;color:var(--on-navy);align-items:center;justify-content:center;cursor:pointer}.mobile-nav{border-top:1px solid var(--line-navy);padding-block:12px 20px;display:grid;gap:20px}.mobile-nav h2{margin:0 0 6px;font-family:var(--sans);font-size:13px;line-height:1.4;letter-spacing:.12em;text-transform:uppercase;color:var(--teal-light)}.mobile-nav a{display:block;color:var(--on-navy);text-decoration:none;padding:10px 0;border-bottom:1px solid var(--line-navy)}@media(max-width:1060px){.nav,.demo-link{display:none}.burger{display:inline-flex}}@media(max-width:480px){.hdr-actions .btn{display:none}}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md);padding:24px;display:flex;flex-direction:column;gap:10px;color:var(--ink);text-decoration:none;min-width:0}a.card:hover{border-color:var(--line-strong);color:var(--ink)}.card h3{font-size:21px}.card p{font-size:15px;line-height:1.55;color:var(--ink-2)}.card .more{margin-top:auto;font-weight:600;color:var(--teal);font-size:15px}.band-navy .card{background:var(--navy-2);border-color:var(--line-navy);color:var(--on-navy)}.band-navy .card p{color:var(--on-navy-muted)}.icon-tile{width:52px;height:52px;border-radius:var(--r-md);background:var(--mist);display:inline-flex;align-items:center;justify-content:center;flex:none;color:var(--ink)}.icon-tile svg{width:26px;height:26px}.icon-tile.inv{background:var(--navy);color:var(--teal-light)}.band-navy .icon-tile{background:var(--navy);color:var(--teal-light);border:1px solid var(--line-navy)}.band-navy .icon-tile.accent{background:var(--teal-light);color:var(--navy);border-color:var(--teal-light)}.feature{display:flex;gap:16px;align-items:flex-start;min-width:0}.feature h3{font-family:var(--sans);font-size:18px;font-weight:600;margin-bottom:4px}.feature p{font-size:15px;line-height:1.55;color:var(--ink-2)}.band-navy .feature p{color:var(--on-navy-muted)}.pill{display:inline-flex;align-items:center;padding:4px 12px;border-radius:var(--r-pill);font-size:13px;font-weight:600;line-height:1.4;white-space:nowrap}.pill-mist{background:var(--mist);color:var(--teal-strong)}.pill-navy{background:var(--navy);color:var(--on-navy)}.pill-light{background:var(--teal-light);color:var(--navy)}.pill-road{background:var(--surface);color:var(--ink);border:1px dashed var(--line-strong);padding:3px 11px}.band-navy .pill-road{background:transparent;color:var(--on-navy);border-color:var(--on-navy-border)}.pill-flag{background:var(--rust-soft);color:var(--rust)}.pill-out{border:1px solid var(--line-strong);color:var(--ink-2);background:var(--surface)}.stat{background:var(--navy);color:var(--on-navy);border-radius:var(--r-md);padding:22px;display:flex;flex-direction:column;gap:4px}.stat b{font-family:var(--serif);font-size:36px;line-height:1.1;font-weight:600;color:var(--teal-light)}.stat span{font-size:14px;color:var(--on-navy-muted)}.alert{border-radius:var(--r-md);padding:16px 20px;display:flex;flex-direction:column;gap:4px;font-size:15px;line-height:1.5}.alert b{font-weight:600}.alert-success{background:var(--success-soft)}.alert-success b{color:var(--success)}.alert-info{background:var(--info-soft)}.alert-info b{color:var(--info)}.alert-warning{background:var(--warning-soft)}.alert-warning b{color:var(--warning)}.alert-error{background:var(--rust-soft)}.alert-error b{color:var(--rust)}.alert span{color:var(--ink)}.checklist{list-style:none;margin:0;padding:0;display:grid;gap:12px}.checklist li{display:flex;gap:12px;align-items:flex-start}.checklist li:before{content:"";flex:none;width:22px;height:22px;margin-top:2px;border-radius:50%;background:var(--mist) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230a5249' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4 8-9'/%3E%3C/svg%3E") center/14px no-repeat}.band-navy .checklist li:before{background-color:var(--navy-2);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%237fd4c1' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 12.5l4 4 8-9'/%3E%3C/svg%3E")}.photo{border-radius:var(--r-lg);background:#2a3b55;aspect-ratio:4 / 3;max-width:100%;display:flex;align-items:flex-end;padding:18px}.photo.wide{aspect-ratio:16 / 7}.photo.has-img{padding:0;overflow:hidden}.photo.has-img img{width:100%;height:100%;object-fit:cover;display:block}.photo span{font-size:13px;font-weight:600;color:var(--navy);background:var(--teal-light);padding:6px 10px;border-radius:var(--r-sm);line-height:1.35}.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:24px;counter-reset:s}.steps li{display:flex;flex-direction:column;gap:8px;position:relative;counter-increment:s}.steps li:before{content:counter(s);width:44px;height:44px;border-radius:50%;background:var(--navy);color:var(--on-navy);display:flex;align-items:center;justify-content:center;font-weight:600}.band-navy .steps li:before{background:var(--teal-light);color:var(--navy)}.steps b{font-weight:600}.steps p{font-size:15px;line-height:1.5;color:var(--ink-2)}.band-navy .steps p{color:var(--on-navy-muted)}.table-wrap{overflow-x:auto;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md)}table{width:100%;border-collapse:collapse;font-size:15px}th{text-align:left;background:var(--sunken);padding:12px 16px;font-weight:600;white-space:nowrap}td{padding:12px 16px;border-top:1px solid var(--line);color:var(--ink-2);vertical-align:top}td:first-child{color:var(--ink);font-weight:600}.faq{display:grid;gap:10px}.faq details{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-md)}.faq summary{cursor:pointer;padding:16px 20px;font-weight:600;list-style:none;display:flex;justify-content:space-between;gap:16px;align-items:center;min-height:44px}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";font-size:22px;font-weight:400;color:var(--teal)}.faq details[open] summary:after{content:"–"}.faq details p{padding:0 20px 18px;color:var(--ink-2);font-size:15px}.form{display:grid;gap:18px}.field{display:flex;flex-direction:column;gap:6px;min-width:0}.field label,.field legend{font-size:15px;font-weight:600}.field .hint{font-size:13px;color:var(--ink-3)}.input,select.input,textarea.input{min-height:48px;padding:10px 12px;border:1.5px solid var(--line-strong);border-radius:var(--r-sm);background:var(--surface);color:var(--ink);font:16px/1.4 var(--sans);width:100%}textarea.input{min-height:110px;resize:vertical}.choice-row{display:flex;flex-wrap:wrap;gap:10px}.choice{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 14px;border:1.5px solid var(--line-strong);border-radius:var(--r-pill);background:var(--surface);font-size:15px;cursor:pointer}.choice input{accent-color:var(--teal);margin:0}fieldset{border:0;margin:0;padding:0;min-width:0}.lab{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:clamp(18px,3vw,28px);display:flex;flex-direction:column;gap:16px;color:var(--ink);box-shadow:0 12px 32px -16px #13233a59;min-width:0}.lab-top{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.lab .eyebrow{color:var(--teal)}.lab .muted,.lab .caption{color:var(--ink-2)}.bubble{background:var(--sunken);border-radius:16px 16px 16px 6px;padding:16px 18px;display:flex;flex-direction:column;gap:8px}.bubble .from{font-size:14px;font-weight:600;color:var(--ink-3)}.bubble .msg{font-size:17px;line-height:1.7}.sign{font:inherit;color:inherit;background:none;border:0;border-bottom:2px dashed var(--line-strong);padding:0 1px;cursor:pointer;border-radius:2px}.sign:hover{background:var(--warning-soft)}.sign.found{background:var(--rust-soft);color:var(--rust);border-bottom-color:var(--rust);font-weight:600}.sign.missed{background:var(--warning-soft);border-bottom-color:var(--warning)}.counter{font-size:14px;font-weight:600;color:var(--ink-3)}.progress{height:8px;background:var(--line);border-radius:var(--r-pill);overflow:hidden}.progress>i{display:block;height:100%;background:var(--teal);border-radius:var(--r-pill);transition:width .25s ease-out}.screen-card{background:var(--sunken);border-radius:var(--r-md);padding:20px;display:flex;flex-direction:column;gap:12px}.fake-url{font-family:var(--mono);font-size:14px;color:var(--info);text-decoration:underline;word-break:break-all}.addr{font-family:var(--mono);font-size:13px;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);padding:8px 10px;color:var(--ink-2);word-break:break-all}.opt-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,170px),1fr));gap:10px}.opt{font:600 15px/1.3 var(--sans);min-height:48px;padding:10px 14px;border-radius:var(--r-sm);border:1.5px solid var(--ink);background:var(--surface);color:var(--ink);cursor:pointer;text-align:left}.opt:hover{background:var(--sunken)}.opt.correct{border-color:var(--success);background:var(--success-soft)}.opt.wrong{border-color:var(--rust);background:var(--rust-soft)}.rings{width:100%;max-width:320px;aspect-ratio:1}:has(>.decor){position:relative;isolation:isolate;overflow:hidden;--decor-bg: var(--paper)}.band-white:has(>.decor){--decor-bg: var(--surface)}.band-navy:has(>.decor){--decor-bg: var(--navy)}.decor{position:absolute;inset:0;max-width:1440px;margin-inline:auto;z-index:-1;pointer-events:none;color:var(--teal);--decor-line: .2;--decor-node: .32}.band-navy .decor{color:var(--teal-light);--decor-line: .22;--decor-node: .45}.decor-art{position:absolute;height:auto;overflow:visible}.decor-art *{vector-effect:non-scaling-stroke}.decor-art line,.decor-art .line{fill:none;stroke:currentColor;stroke-opacity:calc(var(--decor-line) * var(--o, 1));stroke-width:1.2px}.decor-art .dot{fill:currentColor;fill-opacity:calc(var(--decor-node) * var(--o, 1))}.decor-art .pad{fill:var(--decor-bg);stroke:currentColor;stroke-opacity:calc(var(--decor-line) * 2);stroke-width:1.2px}.decor-art .threat{fill:var(--rust)}.decor-art .dashed{stroke-dasharray:3 5}.v-network{width:clamp(280px,44vw,640px);aspect-ratio:4 / 3}.v-shields{width:clamp(300px,40vw,580px);aspect-ratio:1}.v-radar{width:clamp(280px,36vw,520px);aspect-ratio:320 / 300}.v-contours{width:clamp(300px,42vw,620px);aspect-ratio:1}.v-circuit{width:clamp(300px,38vw,560px);aspect-ratio:280 / 170}.v-worlds{width:clamp(240px,28vw,380px);aspect-ratio:300 / 115}.decor-art.top-right{top:-12%;right:-6%}.decor-art.top-left{top:-12%;left:-6%}.decor-art.bottom-right{bottom:-14%;right:-6%}.decor-art.bottom-left{bottom:-14%;left:-6%}.decor-art.right{top:50%;translate:0 -50%;right:-8%}.decor-art.left{top:50%;translate:0 -50%;left:-8%}.decor-art[class*=left]:not(.v-worlds){transform:scaleX(-1)}.v-network.bottom-right{transform:scaleY(-1)}.v-network.bottom-left{transform:scale(-1)}.v-radar.right,.v-circuit.right{right:0}.v-radar.left,.v-circuit.left{left:0}.v-worlds.top-right,.v-worlds.right,.v-worlds.bottom-right{right:max(16px,calc((100% - 1136px)/2))}.v-worlds.top-left,.v-worlds.left,.v-worlds.bottom-left{left:max(16px,calc((100% - 1136px)/2))}.v-worlds.top-right,.v-worlds.top-left{top:clamp(40px,6vw,72px)}.v-worlds.bottom-right,.v-worlds.bottom-left{bottom:clamp(32px,5vw,56px)}.decor-art.centred{left:50%}.v-watermark{width:clamp(300px,40vw,560px);aspect-ratio:260 / 320;top:50%;translate:-50% -50%}.v-ripples{width:clamp(480px,80vw,1100px);aspect-ratio:1;top:40%;translate:-50% -50%}.v-constellation{width:min(1136px,calc(100% - 32px));aspect-ratio:380 / 165;top:50%;translate:-50% -50%}.v-horizon{width:min(1400px,120%);aspect-ratio:560 / 74;bottom:0;translate:-50% 0}.v-floor{width:min(1400px,120%);aspect-ratio:560 / 72;bottom:0;translate:-50% 0}.v-skyline{width:min(720px,calc(100% - 32px));aspect-ratio:440 / 72;bottom:0;translate:-50% 0}@media(max-width:719px){.decor-art{opacity:.7}.v-worlds,.v-circuit{display:none}}.filters{display:flex;flex-wrap:wrap;gap:10px}.chip{font:600 15px/1 var(--sans);min-height:44px;padding:0 18px;border-radius:var(--r-pill);border:1.5px solid var(--line-strong);background:var(--surface);color:var(--ink);cursor:pointer}.chip[aria-pressed=true]{background:var(--navy);border-color:var(--navy);color:var(--on-navy)}.topic .tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto}.topic .num{font-size:13px;color:var(--ink-3);font-variant-numeric:tabular-nums}.mock{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);padding:22px;display:flex;flex-direction:column;gap:16px;min-width:0}.bar-row{display:grid;grid-template-columns:minmax(90px,140px) 1fr 44px;gap:12px;align-items:center;font-size:14px}.bar{height:12px;background:var(--sunken);border-radius:var(--r-pill);overflow:hidden}.bar i{display:block;height:100%;border-radius:var(--r-pill);background:var(--teal)}.bar i.low{background:var(--apricot)}.site-footer{background:var(--navy);color:var(--on-navy-muted);font-size:15px}.foot-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:32px;padding-block:56px 36px}.foot-grid h2{margin:0 0 12px;color:var(--on-navy);font-family:var(--sans);font-size:15px;line-height:1.4;letter-spacing:0;font-weight:600}.foot-grid a{display:block;color:var(--on-navy-muted);text-decoration:none;padding-block:5px}.foot-grid a:hover{color:var(--teal-light)}.foot-grid a.logo{display:inline-flex;padding-block:0;color:var(--on-navy)}.foot-bar{border-top:1px solid var(--line-navy);padding-block:22px 28px;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;align-items:center;font-size:14px}.foot-bar a{color:var(--on-navy)}.skip-link{position:absolute;left:max(16px,env(safe-area-inset-left,0px));top:-100px;z-index:100;background:var(--teal-light);color:var(--navy);padding:10px 14px;border-radius:var(--r-sm);font-weight:600;text-decoration:none}.skip-link:focus{top:calc(env(safe-area-inset-top,0px) + 8px)}.lang a,.lang span{display:inline-flex;align-items:center;min-height:36px;padding:0 10px;color:var(--on-navy-muted);text-decoration:none}.lang span[aria-current]{background:var(--navy-2);color:var(--on-navy)}.lang a:hover{color:var(--on-navy)}.hp-field{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.prose{max-width:72ch;display:flex;flex-direction:column;gap:16px}.prose h2{margin-top:24px}.prose ul,.prose ol{margin:0;padding-left:22px;display:grid;gap:6px}.prose pre{background:var(--sunken);border-radius:var(--r-md);padding:16px;overflow-x:auto;font-family:var(--mono);font-size:14px}
