@font-face{font-family:Berkeley Mono;src:url(/fonts/BerkeleyMono.woff2)format("woff2");font-display:swap;font-style:normal;font-weight:400}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--paper:#f8f9fa;--paper-elevated:#fff;--ink:#111827;--ink-muted:#111827b8;--ink-subtle:#1118278f;--border:#e5e7eb;--border-strong:#d1d5db;--accent:#1046a0;--accent-contrast:#fff;--brand:#c8161e;--radius-1:2px;--radius-2:4px;--grid-size:32px;--grid-line:#00000009;--container:1120px;--gutter:24px;--section-y:72px;--dur-fast:.12s;--dur:.2s;--ease:cubic-bezier(.16,1,.3,1);--font-mono:"Berkeley Mono",ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--font-title:"Newsreader","Source Han Serif CN VF","Source Han Serif CN",ui-serif,Georgia,serif;--font-body:"Inter","Source Han Serif CN VF","Source Han Serif CN",ui-serif,Georgia,serif}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:auto;background:var(--paper);overflow-y:scroll}html.is-scroll-smooth{scroll-behavior:smooth}body{min-height:100svh;color:var(--ink);background-color:var(--paper);background-image:linear-gradient(to right,var(--grid-line)1px,transparent 1px),linear-gradient(to bottom,var(--grid-line)1px,transparent 1px);background-size:var(--grid-size)var(--grid-size);font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-size:16px;line-height:1.65}body:before{content:"0,0";z-index:0;font-family:var(--font-mono);letter-spacing:.08em;color:#11182761;pointer-events:none;font-size:11px;position:fixed;top:18px;left:18px}@media (max-width:640px){body:before{display:none}}::selection{background:#1046a02e}img,svg{max-width:100%;display:block}a{color:inherit;text-underline-offset:.22em;transition:color var(--dur-fast)var(--ease),text-decoration-color var(--dur-fast)var(--ease);text-decoration-color:#11182740;text-decoration-thickness:1px}a:hover{color:var(--accent);text-decoration-color:#1046a066}:focus-visible{outline-offset:2px;border-radius:var(--radius-1);outline:2px solid #1046a08c}hr{border:none;border-top:1px solid var(--border);margin:32px 0}.site{z-index:1;flex-direction:column;min-height:100svh;display:flex;position:relative}.container{width:min(var(--container),calc(100% - (var(--gutter)*2)));margin-inline:auto}.skip-link{left:var(--gutter);z-index:1000;border-radius:var(--radius-2);border:1px solid var(--border);background:var(--paper-elevated);color:var(--ink);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;transition:top var(--dur-fast)var(--ease);padding:10px 12px;font-size:12px;text-decoration:none;position:absolute;top:-48px}.skip-link:focus{top:14px}.site-header{z-index:10;border-bottom:1px solid var(--border);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#f8f9faeb;position:sticky;top:0}.site-header__inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;padding:16px 0;display:flex}.brand{align-items:center;gap:10px;text-decoration:none;display:inline-flex}.brand__mark{border-radius:var(--radius-1);background:var(--brand);width:10px;height:10px}.brand__text{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink);font-size:12px}.nav{flex:1}.nav__links{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}@media (max-width:860px){.nav{order:10;width:100%}.nav__links{justify-content:flex-start}}.nav__link{border-radius:var(--radius-2);font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-subtle);transition:border-color var(--dur-fast)var(--ease),background-color var(--dur-fast)var(--ease),color var(--dur-fast)var(--ease);border:1px solid #0000;justify-content:center;align-items:center;padding:8px 10px;font-size:12px;text-decoration:none;display:inline-flex}.nav__link:hover{color:var(--ink);background:#00000006;border-color:#1118271a}.nav__link.is-active{color:var(--accent);background:#1046a00f;border-color:#1046a038}.header-actions{align-items:center;gap:10px;display:flex}.site-main{flex:1}.section{padding-block:var(--section-y)}.section--tight{padding-block:44px}.eyebrow{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink-subtle);align-items:center;gap:10px;font-size:12px;display:inline-flex}.eyebrow:before{content:"";border-radius:var(--radius-1);background:var(--brand);width:10px;height:10px}.mono{font-family:var(--font-mono)}.mono-tag{border:1px solid var(--border);border-radius:var(--radius-2);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ink);background:#0000000a;align-items:center;gap:8px;padding:6px 10px;font-size:12px;text-decoration:none;display:inline-flex}.mono-tag__dot{background:var(--accent);border-radius:999px;width:6px;height:6px}.button{border:1px solid var(--border);border-radius:var(--radius-2);background:var(--paper-elevated);color:var(--ink);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;transition:border-color var(--dur-fast)var(--ease),background-color var(--dur-fast)var(--ease),transform var(--dur-fast)var(--ease),color var(--dur-fast)var(--ease);justify-content:center;align-items:center;gap:10px;padding:10px 14px;font-size:12px;text-decoration:none;display:inline-flex}.button:hover{border-color:var(--accent);transform:translateY(-1px)}.button--primary{border-color:var(--accent);background:var(--accent);color:var(--accent-contrast)}.button--primary:hover{background:#1046a0eb;border-color:#1046a0e6}.button--ghost{background:0 0}.card{border:1px solid var(--border);border-radius:var(--radius-2);background:var(--paper-elevated)}.card--interactive{transition:border-color var(--dur)var(--ease),transform var(--dur)var(--ease)}.card--interactive:hover{border-color:var(--accent);transform:translateY(-1px)}.card__inner{padding:16px}.card-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:12px;display:grid}.grid{gap:var(--grid-gap,12px);grid-template-columns:repeat(auto-fit,minmax(min(100%,var(--grid-min,260px)),1fr));display:grid}.hero{grid-template-columns:1.35fr .65fr;align-items:start;gap:18px;display:grid}@media (max-width:860px){.hero{grid-template-columns:1fr}}.hero__title{max-width:18ch;font-family:var(--font-title);letter-spacing:-.02em;margin:14px 0 0;font-size:clamp(38px,4vw,56px);font-weight:600;line-height:1.02}.hero__lede{max-width:64ch;color:var(--ink-muted);margin:14px 0 0;font-size:16px;line-height:1.75}.hero__actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:22px;display:flex}.hero__side{position:sticky;top:92px}@media (max-width:860px){.hero__side{position:static}}.definition-list{gap:10px;display:grid}.definition-item{gap:6px;display:grid}.definition-item__label{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-subtle);font-size:11px}.definition-item__value{color:var(--ink);line-height:1.5}.link-card{color:inherit;text-decoration:none}.link-card__head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.link-card__index{font-family:var(--font-mono);letter-spacing:.12em;color:var(--ink-subtle);font-size:12px}.link-card__title{font-family:var(--font-title);letter-spacing:-.01em;margin:0;font-size:18px;font-weight:600;line-height:1.2}.link-card__desc{color:var(--ink-muted);margin:10px 0 0;line-height:1.7}.person-card__inner{gap:14px;display:flex}.person-card__avatar{border:1px solid var(--border);background:#0000000a 50%/cover;border-radius:999px;flex:none;width:44px;height:44px}.person-card__content{flex:1;min-width:0}.person-card__name{font-family:var(--font-title);letter-spacing:-.01em;color:var(--ink);margin:0;font-size:16px;font-weight:600;line-height:1.2}.person-card__name a{text-decoration:none}.person-card__name a:hover{color:var(--accent)}.person-card__desc{color:var(--ink-muted);margin:8px 0 0;line-height:1.7}.person-card__meta{flex-wrap:wrap;align-items:baseline;gap:6px 10px;margin-top:14px;display:flex}.person-card__meta-label{letter-spacing:.12em;text-transform:uppercase;color:var(--ink-subtle);font-size:11px}.person-card__meta-value{color:var(--ink-subtle)}.event-card__image{border-bottom:1px solid var(--border);border-top-left-radius:var(--radius-2);border-top-right-radius:var(--radius-2);background-position:50%;background-size:cover;height:160px}.event-card__name{font-family:var(--font-title);letter-spacing:-.01em;color:var(--ink);margin:0;font-size:16px;font-weight:600;line-height:1.2}.event-card__desc{color:var(--ink-muted);white-space:pre-line;margin:8px 0 0;line-height:1.7}.event-card__meta{flex-wrap:wrap;align-items:baseline;gap:6px 10px;margin-top:14px;display:flex}.event-card__meta-label{letter-spacing:.12em;text-transform:uppercase;color:var(--ink-subtle);font-size:11px}.event-card__meta-value{color:var(--ink-subtle)}.event-card--elevated{border-color:var(--border-strong)}.program{margin-top:22px}.program-day{border-top:1px solid var(--border);grid-template-columns:160px 1fr;gap:18px;padding:18px 0;display:grid}.program-day:first-child{border-top:none}.program-day__date{font-family:var(--font-title);letter-spacing:-.01em;color:var(--ink);align-self:start;margin:0;font-size:18px;font-weight:600;line-height:1.2;position:sticky;top:92px}@media (max-width:860px){.program-day{grid-template-columns:1fr;gap:12px}.program-day__date{position:static}}.program-block{grid-template-columns:92px 1fr;gap:16px;padding:10px 0;display:grid}@media (max-width:640px){.program-block{grid-template-columns:1fr;gap:10px}}.program-block__time{letter-spacing:.12em;text-transform:uppercase;color:var(--ink-subtle);padding-top:10px;font-size:12px}.program-block__content{min-width:0}.logos{filter:grayscale();opacity:.85;flex-wrap:wrap;align-items:center;gap:18px 28px;display:flex}.logos img{width:auto;height:28px}.site-footer{border-top:1px solid var(--border);background:#f8f9fab3}.site-footer__inner{padding:44px 0}.site-footer__top{grid-template-columns:1.1fr 1.9fr;align-items:start;gap:22px;display:grid}@media (max-width:860px){.site-footer__top{grid-template-columns:1fr}}.site-footer__tagline{color:var(--ink-subtle);letter-spacing:.08em;text-transform:uppercase;margin:12px 0 0;font-size:12px}.site-footer__links{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:18px;display:grid}.site-footer__col{flex-direction:column;gap:10px;display:flex}.site-footer__title{letter-spacing:.12em;text-transform:uppercase;color:var(--ink);margin:0;font-size:12px}.site-footer__col a{color:var(--ink-subtle);font-size:14px;text-decoration:none}.site-footer__col a:hover{color:var(--accent)}.site-footer__bottom{border-top:1px solid var(--border);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-subtle);margin-top:32px;padding-top:18px;font-size:12px}.page-title{font-family:var(--font-title);letter-spacing:-.02em;margin:0;font-size:clamp(28px,3vw,38px);font-weight:600;line-height:1.1}.page-lede{max-width:72ch;color:var(--ink-muted);margin:10px 0 0;line-height:1.75}.prose{max-width:74ch;color:var(--ink-muted);line-height:1.8}.prose :where(p):not([class]){margin:0 0 1em}.prose :where(h2):not([class]){font-family:var(--font-title);letter-spacing:-.01em;color:var(--ink);margin:1.6em 0 .6em;font-size:20px;font-weight:600;line-height:1.25}.prose :where(h3):not([class]){font-family:var(--font-title);letter-spacing:-.01em;color:var(--ink);margin:1.4em 0 .6em;font-size:18px;font-weight:600;line-height:1.25}.prose :where(ul,ol):not([class]){margin:0 0 1.2em;padding-left:1.2em}.prose :where(li):not([class]){margin:.25em 0}.prose :where(a){text-decoration-color:#1046a059}.prose :where(code){font-family:var(--font-mono);border:1px solid var(--border);border-radius:var(--radius-2);color:var(--ink);background:#0000000a;padding:.15em .35em;font-size:.95em}.prose :where(pre){border:1px solid var(--border);border-radius:var(--radius-2);background:#fffc;margin:1.2em 0;padding:14px 16px;overflow:auto}.prose :where(pre code){color:inherit;background:0 0;border:none;padding:0}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition-duration:0s!important;animation-duration:0s!important}}.astro-route-announcer{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;top:0;left:0;overflow:hidden}