@font-face{font-family:'Archivo';font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/archivo-latin-400-normal.woff2') format('woff2');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}
@font-face{font-family:'Archivo';font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/archivo-latin-ext-400-normal.woff2') format('woff2');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:'Archivo';font-style:normal;font-weight:500;font-display:swap;src:url('/fonts/archivo-latin-500-normal.woff2') format('woff2');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}
@font-face{font-family:'Archivo';font-style:normal;font-weight:500;font-display:swap;src:url('/fonts/archivo-latin-ext-500-normal.woff2') format('woff2');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:'Archivo';font-style:normal;font-weight:600;font-display:swap;src:url('/fonts/archivo-latin-600-normal.woff2') format('woff2');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}
@font-face{font-family:'Archivo';font-style:normal;font-weight:600;font-display:swap;src:url('/fonts/archivo-latin-ext-600-normal.woff2') format('woff2');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:'Archivo';font-style:normal;font-weight:700;font-display:swap;src:url('/fonts/archivo-latin-700-normal.woff2') format('woff2');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}
@font-face{font-family:'Archivo';font-style:normal;font-weight:700;font-display:swap;src:url('/fonts/archivo-latin-ext-700-normal.woff2') format('woff2');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:'Archivo';font-style:normal;font-weight:800;font-display:swap;src:url('/fonts/archivo-latin-800-normal.woff2') format('woff2');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}
@font-face{font-family:'Archivo';font-style:normal;font-weight:800;font-display:swap;src:url('/fonts/archivo-latin-ext-800-normal.woff2') format('woff2');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-weight:400;font-display:swap;src:url('/fonts/jetbrains-mono-latin-400-normal.woff2') format('woff2');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}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/jetbrains-mono-latin-ext-400-normal.woff2') format('woff2');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-weight:500;font-display:swap;src:url('/fonts/jetbrains-mono-latin-500-normal.woff2') format('woff2');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}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:500;font-display:swap;src:url('/fonts/jetbrains-mono-latin-ext-500-normal.woff2') format('woff2');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-weight:700;font-display:swap;src:url('/fonts/jetbrains-mono-latin-700-normal.woff2') format('woff2');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}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:700;font-display:swap;src:url('/fonts/jetbrains-mono-latin-ext-700-normal.woff2') format('woff2');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:'Michroma';font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/michroma-latin-400-normal.woff2') format('woff2');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}
@font-face{font-family:'Michroma';font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/michroma-latin-ext-400-normal.woff2') format('woff2');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}

:root{--bg:#F1F3F5;--surface:#FFFFFF;--line:#E2E6EA;--line2:#D5DAE0;--line3:#EDF0F2;--text:#16191D;--text2:#2A2F36;--text3:#3E4650;--muted:#5A636D;--muted2:#8A939E;--faint:#A8B0B8;--header-bg:rgba(241,243,245,.92);--mark-top:#16191D;--mark-bot:#6B7580;--on-accent:#0F1114;}@media (prefers-color-scheme:dark){:root{--bg:#0F1114;--surface:#16191D;--line:#23282F;--line2:#2A2F36;--line3:#1C2027;--text:#FFFFFF;--text2:#E4E8EC;--text3:#C6CCD3;--muted:#9BA4AE;--muted2:#6B7580;--faint:#3A4149;--header-bg:rgba(15,17,20,.92);--mark-top:#FFFFFF;--mark-bot:#8A939E;--on-accent:#0F1114;}}:root[data-theme="light"]{--bg:#F1F3F5;--surface:#FFFFFF;--line:#E2E6EA;--line2:#D5DAE0;--line3:#EDF0F2;--text:#16191D;--text2:#2A2F36;--text3:#3E4650;--muted:#5A636D;--muted2:#8A939E;--faint:#A8B0B8;--header-bg:rgba(241,243,245,.92);--mark-top:#16191D;--mark-bot:#6B7580;--on-accent:#0F1114;}:root[data-theme="dark"]{--bg:#0F1114;--surface:#16191D;--line:#23282F;--line2:#2A2F36;--line3:#1C2027;--text:#FFFFFF;--text2:#E4E8EC;--text3:#C6CCD3;--muted:#9BA4AE;--muted2:#6B7580;--faint:#3A4149;--header-bg:rgba(15,17,20,.92);--mark-top:#FFFFFF;--mark-bot:#8A939E;--on-accent:#0F1114;}body{margin:0;background:var(--bg);-webkit-font-smoothing:antialiased}a{color:#FF8A1E;text-decoration:none}a:hover{color:#FFA451}

/* hover states (inline styles need !important to be overridden) */
.hv1:hover{color:var(--text) !important;border-color:var(--line2) !important}
.hv2:hover{border-color:var(--muted2) !important}
.hv3:hover{background:#FFA451 !important}
.hv4:hover{color:#FF8A1E !important}
.hv5:hover{border-color:var(--muted2) !important;color:var(--text) !important}
.hv6:hover{border-color:#FF8A1E !important}

/* theme switch */
.theme-seg{padding:9px 11px;font:500 10px/1 "JetBrains Mono",monospace;letter-spacing:.1em;cursor:pointer;color:var(--muted2);background:transparent;border:0;-webkit-appearance:none;appearance:none}
.theme-seg[aria-pressed="true"]{color:var(--on-accent);background:#FF8A1E}
.theme-seg:focus-visible,a:focus-visible,button:focus-visible{outline:2px solid #FF8A1E;outline-offset:2px}

html{-webkit-text-size-adjust:100%}
img,svg{max-width:100%}
*{box-sizing:border-box}

/* ---------- mobile menu ---------- */
.menu-btn{display:none;margin-left:auto;align-items:center;justify-content:center;width:42px;height:42px;
  background:transparent;border:1px solid var(--line2);cursor:pointer;padding:0;color:var(--text)}
.menu-btn span{display:block;width:18px;height:1.5px;background:currentColor;margin:3px auto;transition:transform .18s,opacity .18s}
.menu-btn[aria-expanded="true"] span:nth-child(1){transform:translateY(4.5px) rotate(45deg)}
.menu-btn[aria-expanded="true"] span:nth-child(2){opacity:0}
.menu-btn[aria-expanded="true"] span:nth-child(3){transform:translateY(-4.5px) rotate(-45deg)}
.mobile-panel{display:none;border-top:1px solid var(--line);background:var(--bg)}
.mobile-panel.open{display:block}
.mobile-panel a.mp-link{display:block;padding:16px 24px;border-bottom:1px solid var(--line3);
  font:600 15px/1 Archivo,sans-serif;color:var(--text2);text-decoration:none}
.mobile-panel a.mp-link[aria-current="page"]{color:#FF8A1E}
.mp-foot{padding:20px 24px;display:flex;flex-direction:column;gap:10px}
.mp-foot a{display:block;text-align:center;text-decoration:none;font:700 14px/1 Archivo,sans-serif;padding:15px 20px}
.mp-theme{display:flex;border:1px solid var(--line2);margin-top:4px}
.mp-theme .theme-seg{flex:1;padding:12px 8px}

/* ---------- responsive layout ---------- */
@media (max-width:1000px){
  [style*="grid-template-columns:1.6fr 1fr 1fr"]{grid-template-columns:1fr 1fr !important}
  [style*="grid-template-columns:repeat(5,1fr)"]{grid-template-columns:repeat(3,1fr) !important}
  [style*="grid-template-columns:repeat(4,1fr)"]{grid-template-columns:repeat(2,1fr) !important}
  [style*="grid-template-columns:repeat(3,1fr)"]{grid-template-columns:1fr !important}
  [style*="grid-template-columns:1.25fr .75fr"]{grid-template-columns:1fr !important}
}
@media (max-width:860px){
  .nav-desktop,.hdr-actions{display:none !important}
  .menu-btn{display:block}
  [style*="grid-template-columns:1fr 1fr"]{grid-template-columns:1fr !important}
  [style*="grid-template-columns:1.6fr 1fr 1fr"]{grid-template-columns:1fr !important}
  [style*="grid-template-columns:repeat(5,1fr)"]{grid-template-columns:repeat(2,1fr) !important}
  [style*="border-left:1px solid var(--line)"]{border-left:0 !important;border-top:1px solid var(--line) !important;
    padding-left:0 !important;padding-top:24px !important}
}
@media (max-width:860px){
  /* stop wide flex rows from forcing their grid column open */
  [style*="display:grid"]>*{min-width:0}
  [style*="display:flex"][style*="border-bottom:1px solid var(--line)"]{overflow-x:auto;scrollbar-width:none}
  [style*="display:flex"][style*="border-bottom:1px solid var(--line)"]::-webkit-scrollbar{display:none}
  [style*="display:flex"][style*="border-bottom:1px solid var(--line)"]>*{flex:0 0 auto;white-space:nowrap}
}
@media (max-width:640px){
  [style*="padding:0 32px"]{padding-left:20px !important;padding-right:20px !important}
  [style*="32px"][style*="max-width:1240px"]{padding-left:20px !important;padding-right:20px !important}
  [style*="padding:74px 32px"],[style*="padding:72px 32px"],[style*="padding:80px 32px"],
  [style*="padding:96px 32px 88px"],[style*="padding:120px 32px 160px"],
  [style*="padding:52px 32px 40px"],[style*="padding:0 32px 40px"]{padding-left:20px !important;padding-right:20px !important}
  [style*="padding:74px 32px"]{padding-top:52px !important;padding-bottom:52px !important}
  [style*="padding:80px 32px"]{padding-top:56px !important;padding-bottom:56px !important}
  [style*="font:400 52px/1.14 Michroma"]{font-size:30px !important;line-height:1.2 !important}
  [style*="font:400 44px/1.18 Michroma"]{font-size:27px !important;line-height:1.24 !important}
  [style*="font:400 32px/1.24 Michroma"]{font-size:23px !important}
  [style*="font:400 30px/1.28 Michroma"],[style*="font:400 30px/1.3 Michroma"]{font-size:22px !important}
  [style*="font:400 28px/1.3 Michroma"]{font-size:21px !important}
  [style*="font:400 26px/1.32 Michroma"],[style*="font:400 26px/1 Michroma"]{font-size:20px !important}
  [style*="repeat(5,1fr)"]{grid-template-columns:1fr 1fr !important}
  [style*="repeat(4,1fr)"]{grid-template-columns:1fr 1fr !important}
}
@media (max-width:460px){
  [style*="display:flex"][style*="gap:12px"]>a[style*="padding:15px"]{width:100%;text-align:center}
}
