@font-face{font-family:Instrument Serif;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/instrument-serif-400-italic.woff2)format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/inter-400.woff2)format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/inter-500.woff2)format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/inter-700.woff2)format("woff2")}@font-face{font-family:Inter;font-style:normal;font-weight:900;font-display:swap;src:url(/fonts/inter-900.woff2)format("woff2")}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/jetbrains-mono-400.woff2)format("woff2")}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:500;font-display:swap;src:url(/fonts/jetbrains-mono-500.woff2)format("woff2")}:root{color-scheme:light dark;--bg:#14120f;--bg-lift:#1d1a15;--ink:#ede8df;--ink-dim:#a69d8e;--ink-faint:#8b8375;--accent:#e0a054;--hairline:#ede8df1a;--pill-border:#ede8df38;--nav-bg:#14120f8c;--code-bg:#100e0b;--grain-opacity:.05;--mono:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace}@media (prefers-color-scheme:light){:root{--bg:#f7f4ee;--bg-lift:#efe9dd;--ink:#211d18;--ink-dim:#6e6659;--ink-faint:#8a8171;--accent:#a8492a;--hairline:#ddd6c9;--pill-border:#c9c1b1;--nav-bg:#f7f4ee9e;--code-bg:#efe9dd;--grain-opacity:.11}}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;font-family:Inter,system-ui,-apple-system,sans-serif;font-size:16px;line-height:1.6}body:after{content:"";z-index:200;pointer-events:none;opacity:var(--grain-opacity);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");position:fixed;inset:0}a{color:inherit}::selection{background:var(--accent);color:var(--bg)}img{max-width:100%}.wrap{max-width:980px;margin:0 auto;padding:0 24px}.wrap-wide{max-width:1040px;margin:0 auto;padding:0 24px}body>nav{z-index:100;background:var(--nav-bg);-webkit-backdrop-filter:blur(18px)saturate(1.4);border-bottom:1px solid var(--hairline);position:fixed;top:0;left:0;right:0}.js body>nav{opacity:0;pointer-events:none;transition:transform .35s,opacity .35s;transform:translateY(-100%)}.js body>nav.show{opacity:1;pointer-events:auto;transform:translateY(0)}.nav-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:0 16px;max-width:1040px;min-height:52px;margin:0 auto;padding:0 24px;display:flex}.wordmark{letter-spacing:-.01em;white-space:nowrap;padding:14px 0;font-size:.95rem;font-weight:700;text-decoration:none}.nav-links{flex-wrap:wrap;align-items:center;gap:18px;padding:8px 0;display:flex}.nav-links a{color:var(--ink-dim);white-space:nowrap;font-size:.82rem;font-weight:500;text-decoration:none;transition:color .15s}.nav-links a.here{color:var(--accent)}.nav-links a:hover{color:var(--accent);text-underline-offset:4px;text-decoration:underline}header.hero{align-items:flex-end;min-height:min(60vh,600px);padding-top:88px;padding-bottom:52px;display:flex}.kicker{font-family:var(--mono);letter-spacing:.18em;color:var(--accent);margin-bottom:20px;font-size:.72rem}.hero h1{letter-spacing:-.035em;margin-bottom:24px;font-size:clamp(3rem,11vw,7rem);font-weight:900;line-height:.98}.tagline{color:var(--ink-dim);max-width:34em;margin-bottom:34px;font-size:clamp(1.1rem,2.4vw,1.4rem)}.tagline em{color:var(--ink);letter-spacing:.005em;font-family:Instrument Serif,Georgia,serif;font-size:1.14em;font-style:italic}.quick{flex-wrap:wrap;gap:.6rem;list-style:none;display:flex}.quick a{border:1px solid var(--pill-border);color:var(--ink);border-radius:999px;padding:.5rem 1.05rem;font-size:.86rem;font-weight:500;text-decoration:none;transition:background .16s,color .16s,border-color .16s;display:inline-block}.quick a:hover,.quick a:focus-visible{background:var(--ink);border-color:var(--ink);color:var(--bg)}.quick a.primary{border-color:var(--accent);color:var(--accent)}.quick a.primary:hover,.quick a.primary:focus-visible{background:var(--accent);border-color:var(--accent);color:var(--bg)}main.home{counter-reset:sec}main.home>section{padding:64px 0 24px}.label{counter-increment:sec;font-family:var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--ink-faint);align-items:center;gap:1rem;margin-bottom:10px;font-size:.7rem;font-weight:400;display:flex}.label:before{content:counter(sec, decimal-leading-zero);color:var(--accent)}.label:after{content:"";background:var(--hairline);flex:1;height:1px}.js .label:after{transform-origin:0;transition:transform .9s cubic-bezier(.22,1,.36,1) .25s;transform:scaleX(0)}.js .label.in:after{transform:scaleX(1)}.row{border-bottom:1px solid var(--hairline);border-left:2px solid #0000;justify-content:space-between;align-items:baseline;gap:24px;margin:0 -16px;padding:18px 16px;transition:background .18s,border-left-color .18s,transform .18s;display:flex}.row:hover{background:var(--bg-lift);border-left-color:var(--accent);transform:translate(6px)}.row .org{flex:none;min-width:11.5em;font-size:1rem;font-weight:700}.row .finding{color:var(--ink-dim);flex:1;font-size:.95rem}a.row{color:inherit;text-decoration:none}.aside{border-left:2px solid var(--accent);color:var(--ink-dim);max-width:44em;margin-top:22px;padding-left:16px;font-size:.95rem}.aside strong{color:var(--ink);font-weight:500}.row-lg{padding:24px 16px}.row-lg .name{letter-spacing:-.02em;flex:none;min-width:8.5em;font-size:1.6rem;font-weight:700;line-height:1.2}.row-lg:hover .name{color:var(--accent)}.row-lg .name .arrow{color:var(--accent);vertical-align:.25em;margin-left:2px;font-size:1.1rem;font-weight:400}.row-lg .desc{color:var(--ink-dim);flex:1;max-width:30em;font-size:.95rem}.row-lg .desc .stack{font-family:var(--mono);letter-spacing:.04em;color:var(--ink-faint);margin-top:6px;font-size:.72rem;display:block}.xp-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:16px;padding:22px 0 4px;display:flex}.xp-head h3{letter-spacing:-.01em;font-size:1.25rem;font-weight:700}.xp-head .role{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);font-size:.72rem}.xp ul{margin:10px 0 0;list-style:none}.xp li{color:var(--ink-dim);padding:7px 0 7px 22px;font-size:.95rem;position:relative}.xp li:before{content:"—";color:var(--accent);position:absolute;left:0}.xp li strong{color:var(--ink);font-weight:500}.campus{border-top:1px solid var(--hairline);color:var(--ink-faint);max-width:44em;margin-top:20px;padding-top:16px;font-size:.88rem}.section-head{align-items:center;gap:1rem;margin-bottom:1.6rem;display:flex}.section-head .label{flex:1;margin-bottom:0}.all-link{font-family:var(--mono);letter-spacing:.08em;color:var(--accent);white-space:nowrap;font-size:.72rem;text-decoration:none}.all-link:hover{text-underline-offset:4px;text-decoration:underline}.see-more-wrap{justify-content:center;margin-top:30px;display:flex}.see-more{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--ink-dim);border:1px solid var(--pill-border);border-radius:999px;align-items:center;gap:.5rem;padding:.7rem 1.5rem;font-size:.72rem;text-decoration:none;transition:border-color .16s,color .16s,background .16s;display:inline-flex}.see-more:hover{border-color:var(--accent);color:var(--accent);background:var(--bg-lift)}.see-more .arr{transition:transform .16s}.see-more:hover .arr{transform:translate(3px)}.research-list{margin-top:8px}.disclosure{border-bottom:1px solid var(--hairline);border-left:2px solid #0000;margin:0 -16px;padding:22px 16px;transition:background .18s,border-left-color .18s}.disclosure:first-child{border-top:1px solid var(--hairline)}.disclosure:hover{background:var(--bg-lift);border-left-color:var(--accent)}.d-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 20px;display:flex}.d-org{letter-spacing:-.01em;font-size:1.12rem;font-weight:700}.d-type{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);white-space:nowrap;font-size:.64rem}.d-detail{color:var(--ink-dim);max-width:54em;margin-top:8px;font-size:.96rem}.cards{grid-template-columns:repeat(2,1fr);gap:26px;display:grid}.cards.three{grid-template-columns:repeat(3,1fr)}.card{border:1px solid var(--hairline);color:inherit;background:var(--bg-lift);border-radius:12px;flex-direction:column;text-decoration:none;transition:transform .2s,border-color .2s;display:flex;overflow:hidden}.card:hover{border-color:var(--pill-border);transform:translateY(-4px)}.card-cover{aspect-ratio:16/9;object-fit:cover;border-bottom:1px solid var(--hairline);width:100%;display:block}.card-body{flex-direction:column;flex:1;gap:7px;padding:16px 18px 20px;display:flex}.card-tag{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--accent);font-size:.64rem}.card h3{letter-spacing:-.01em;font-size:1.1rem;font-weight:700;line-height:1.28}.card:hover h3{color:var(--accent)}.card-excerpt{color:var(--ink-dim);flex:1;font-size:.9rem}.card-meta{font-family:var(--mono);letter-spacing:.06em;color:var(--ink-faint);margin-top:2px;font-size:.66rem}.page-head{padding-top:96px;padding-bottom:8px}.crumb{font-family:var(--mono);letter-spacing:.1em;color:var(--ink-faint);font-size:.72rem;text-decoration:none}.crumb:hover{color:var(--accent)}.page-head h1{letter-spacing:-.035em;margin:22px 0 14px;font-size:clamp(2.6rem,8vw,4.4rem);font-weight:900;line-height:1}.page-head h1 em{color:var(--accent);font-family:Instrument Serif,Georgia,serif;font-style:italic;font-weight:400}.page-head .intro{color:var(--ink-dim);max-width:40em;font-size:1.02rem}.featured{border:1px solid var(--hairline);color:inherit;border-radius:14px;grid-template-columns:1.15fr 1fr;gap:0;text-decoration:none;transition:border-color .2s,transform .2s;display:grid;overflow:hidden}.featured:hover{border-color:var(--pill-border);transform:translateY(-4px)}.featured .cover{object-fit:cover;width:100%;height:100%;min-height:260px;display:block}.featured .body{flex-direction:column;justify-content:center;gap:12px;padding:34px 36px;display:flex}.featured .flag{font-family:var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--accent);font-size:.66rem}.featured h2{letter-spacing:-.02em;font-size:clamp(1.5rem,3.2vw,2.1rem);font-weight:800;line-height:1.15}.featured:hover h2{color:var(--accent)}.featured .excerpt{color:var(--ink-dim);font-size:.98rem}.featured .meta{font-family:var(--mono);letter-spacing:.06em;color:var(--ink-faint);margin-top:4px;font-size:.7rem}.list-label{font-family:var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--ink-faint);align-items:center;gap:1rem;margin:48px 0 24px;font-size:.7rem;font-weight:400;display:flex}.list-label:after{content:"";background:var(--hairline);flex:1;height:1px}article{max-width:760px;margin:0 auto;padding:0 24px}.post-head{padding-top:88px}.eyebrow{font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--accent);margin:26px 0 16px;font-size:.68rem}h1.title{letter-spacing:-.03em;font-size:clamp(2rem,5.6vw,3.3rem);font-weight:900;line-height:1.05}.subtitle{color:var(--ink-dim);max-width:40em;margin-top:14px;font-size:1.1rem}.byline{font-family:var(--mono);letter-spacing:.04em;color:var(--ink-faint);flex-wrap:wrap;align-items:center;gap:8px 18px;margin-top:20px;padding-bottom:4px;font-size:.72rem;display:flex}.byline .who{color:var(--ink-dim)}.cover-hero{aspect-ratio:16/8;object-fit:cover;border:1px solid var(--hairline);border-radius:14px;width:100%;margin:30px 0 8px;display:block}.cover-cap{color:var(--ink-faint);margin-bottom:8px;font-size:.78rem;font-style:italic}.proj-bar{border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline);flex-wrap:wrap;align-items:center;gap:14px 24px;margin-top:22px;padding:16px 0;display:flex}.proj-facts{font-family:var(--mono);letter-spacing:.06em;color:var(--ink-faint);flex-wrap:wrap;flex:1;gap:14px 22px;font-size:.7rem;display:flex}.proj-facts b{color:var(--ink-dim);font-weight:500}.proj-actions{flex-wrap:wrap;gap:10px;display:flex}.btn{white-space:nowrap;border-radius:999px;padding:9px 18px;font-size:.82rem;font-weight:600;text-decoration:none;transition:background .15s,color .15s,border-color .15s}.btn.primary{color:var(--bg);background:var(--accent);border:1px solid var(--accent)}.btn.primary:hover{color:var(--accent);background:0 0}.btn.ghost{color:var(--ink);border:1px solid var(--pill-border)}.btn.ghost:hover{border-color:var(--ink);background:var(--ink);color:var(--bg)}.prose{margin-top:34px}.prose>p{color:var(--ink);margin:0 0 1.35rem;font-size:1.06rem}.prose>p:first-of-type:first-letter{float:left;color:var(--accent);padding:.1em .12em 0 0;font-family:Instrument Serif,Georgia,serif;font-size:3.3rem;font-style:italic;line-height:.8}.prose .lead{color:var(--ink-dim);font-size:1.18rem}.prose .lead:first-letter{float:none;font-size:inherit;color:inherit;padding:0;font-family:inherit;font-style:normal}.prose h2{letter-spacing:-.02em;margin:2.6rem 0 1rem;padding-top:.4rem;font-size:1.5rem;font-weight:800}.prose h2:before{content:"§ ";color:var(--accent);font-weight:400}.prose h3{margin:1.8rem 0 .7rem;font-size:1.15rem;font-weight:700}.prose a{color:inherit;text-decoration:underline;text-decoration-color:var(--pill-border);text-underline-offset:3px;transition:color .15s,text-decoration-color .15s}.prose a:hover{color:var(--accent);text-decoration-color:var(--accent)}.prose strong{font-weight:700}.prose ul,.prose ol{margin:0 0 1.35rem;padding-left:1.3rem}.prose li{color:var(--ink);margin-bottom:.5rem}.prose li::marker{color:var(--accent)}.prose blockquote{border-left:3px solid var(--accent);color:var(--ink);margin:1.6rem 0;padding:.4rem 0 .4rem 1.4rem;font-family:Instrument Serif,Georgia,serif;font-size:1.3rem;font-style:italic;line-height:1.45}.prose img{border:1px solid var(--hairline);background:var(--bg-lift);border-radius:12px;width:100%;margin:2rem 0 .6rem;display:block}.prose figure{margin:2rem 0}.prose figure img{margin:0}.prose figcaption{color:var(--ink-faint);text-align:center;margin-top:10px;font-size:.82rem;font-style:italic}.prose hr{text-align:center;color:var(--ink-faint);border:none;margin:2.6rem 0}.prose hr:before{content:"* * *";letter-spacing:.5em}.prose table{border-collapse:collapse;width:100%;margin:1.6rem 0;font-size:.9rem}.prose th,.prose td{text-align:left;border:1px solid var(--hairline);vertical-align:top;padding:9px 14px}.prose thead th{font-family:var(--mono);letter-spacing:.03em;text-transform:uppercase;color:var(--ink-dim);background:var(--bg-lift);font-size:.72rem}.prose tbody tr:hover{background:var(--bg-lift)}.prose .contains-task-list{padding-left:0;list-style:none}.prose .task-list-item{padding-left:0}.prose .task-list-item::marker{content:""}.prose .task-list-item input{accent-color:var(--accent);margin-right:.55rem}.prose del{color:var(--ink-faint)}.prose :not(pre)>code{font-family:var(--mono);background:var(--code-bg);border:1px solid var(--hairline);color:var(--accent);border-radius:5px;padding:.1em .4em;font-size:.86em}.prose pre{background:var(--code-bg);border:1px solid var(--hairline);border-radius:12px;margin:1.6rem 0;padding:18px 20px;font-size:.85rem;line-height:1.6;overflow-x:auto}.prose pre code{font-family:var(--mono);background:0 0;border:none;padding:0}.prose .astro-code,.prose .astro-code span{color:var(--shiki-light)}@media (prefers-color-scheme:dark){.prose .astro-code,.prose .astro-code span{color:var(--shiki-dark)}}.code-wrap{position:relative}.copy-btn{background:var(--bg-lift);border:1px solid var(--hairline);width:30px;height:30px;color:var(--ink-dim);cursor:pointer;opacity:0;border-radius:7px;justify-content:center;align-items:center;padding:0;transition:opacity .16s,color .16s,border-color .16s;display:inline-flex;position:absolute;top:13px;right:12px}.code-wrap:hover .copy-btn,.copy-btn:focus-visible{opacity:1}.copy-btn:hover{color:var(--accent);border-color:var(--accent)}.copy-btn svg{width:15px;height:15px;display:block}.copy-btn .i-check{display:none}.code-wrap.copied .copy-btn{opacity:1;color:var(--accent);border-color:var(--accent)}.code-wrap.copied .copy-btn .i-copy{display:none}.code-wrap.copied .copy-btn .i-check{display:block}@media (hover:none){.copy-btn{opacity:.5}}.prose .admonition{--admon:var(--ink-dim);border:1px solid var(--hairline);border-left:3px solid var(--admon);background:color-mix(in srgb, var(--admon) 8%, transparent);border-radius:8px;margin:1.6rem 0;padding:14px 18px}.prose .admonition>:first-child{margin-top:0}.prose .admonition>:last-child{margin-bottom:0}.prose .admonition:before{font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--admon);margin-bottom:7px;font-size:.64rem;font-weight:700;display:block}.prose .admonition.info{--admon:#5c86b3}.prose .admonition.warning{--admon:#cf9636}.prose .admonition.error{--admon:#c85a44}.prose .admonition.success{--admon:#6f9457}.prose .admonition.info:before{content:"Info"}.prose .admonition.warning:before{content:"Warning"}.prose .admonition.error:before{content:"Error"}.prose .admonition.success:before{content:"Success"}.prose iframe{aspect-ratio:16/9;border:1px solid var(--hairline);background:var(--bg-lift);border-radius:12px;width:100%;height:auto;margin:2rem 0;display:block}.prose video{border:1px solid var(--hairline);background:#000;border-radius:12px;width:100%;height:auto;margin:2rem 0;display:block}.prose figure video,.prose figure iframe{margin:0}.chips{flex-wrap:wrap;gap:8px;margin:.4rem 0 1.6rem;display:flex}.chip{font-family:var(--mono);letter-spacing:.02em;color:var(--ink-dim);background:var(--code-bg);border:1px solid var(--hairline);border-radius:6px;padding:5px 11px;font-size:.74rem}.endcard{border:1px solid var(--hairline);background:var(--bg-lift);border-radius:14px;flex-wrap:wrap;align-items:flex-start;gap:16px;margin:3rem 0 0;padding:24px;display:flex}.endcard .txt{flex:1;min-width:220px}.endcard .ec-title{margin-bottom:4px;font-size:1rem;font-weight:700}.endcard p{color:var(--ink-dim);margin-bottom:12px;font-size:.9rem}.endcard .cta{color:var(--accent);border:1px solid var(--accent);border-radius:999px;padding:8px 18px;font-size:.86rem;font-weight:600;text-decoration:none;transition:background .15s,color .15s;display:inline-block}.endcard .cta:hover{background:var(--accent);color:var(--bg)}.pager{grid-template-columns:1fr 1fr;gap:14px;margin-top:44px;display:grid}.pager a{border:1px solid var(--hairline);color:inherit;border-radius:12px;flex-direction:column;gap:5px;padding:16px 18px;text-decoration:none;transition:border-color .18s,transform .18s,background .18s;display:flex}.pager a:hover{border-color:var(--pill-border);background:var(--bg-lift);transform:translateY(-2px)}.pager .plabel{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint);font-size:.64rem}.pager .ptitle{color:var(--ink);font-size:.95rem;font-weight:600;line-height:1.3}.pager a:hover .ptitle{color:var(--accent)}.pager .next{text-align:right}.contact-block{text-align:center;padding:72px 0 88px}.contact-block h2{letter-spacing:-.03em;margin-bottom:14px;font-size:clamp(1.8rem,5vw,3rem);font-weight:900}.contact-block h2 em{color:var(--accent);font-family:Instrument Serif,Georgia,serif;font-size:1.08em;font-style:italic;font-weight:400}.contact-block p{color:var(--ink-dim);max-width:36em;margin:0 auto 32px;font-size:.98rem}.cta-btn{color:var(--accent);border:1px solid var(--accent);padding:14px 32px;font-size:1rem;font-weight:700;text-decoration:none;transition:background .15s,color .15s;display:inline-block}.cta-btn:hover{background:var(--accent);color:var(--bg)}.progress{background:var(--accent);z-index:300;width:0;height:2px;position:fixed;top:0;left:0}.nf{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:100svh;padding:24px;display:flex}.nf-code{font-family:var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--accent);margin-bottom:18px;font-size:.72rem}.nf-title{letter-spacing:-.04em;font-size:clamp(2.8rem,12vw,5.5rem);font-weight:900;line-height:.95}.nf-sub{color:var(--ink-dim);max-width:28em;margin:16px 0 34px;font-size:1rem}.nf-home{color:var(--accent);border:1px solid var(--accent);border-radius:999px;align-items:center;gap:.5rem;padding:.75rem 1.8rem;font-size:.9rem;font-weight:600;text-decoration:none;transition:background .16s,color .16s;display:inline-flex}.nf-home:hover{background:var(--accent);color:var(--bg)}footer{border-top:1px solid var(--hairline);margin-top:64px;padding:26px 0 34px}.foot-inner{font-family:var(--mono);letter-spacing:.06em;color:var(--ink-faint);flex-wrap:wrap;justify-content:space-between;gap:12px 24px;font-size:.72rem;display:flex}.foot-inner a{color:var(--ink-faint);text-decoration:none}.foot-inner a:hover{color:var(--accent);text-underline-offset:4px;text-decoration:underline}.foot-left{flex-wrap:wrap;gap:20px;display:flex}.js .reveal{opacity:0;filter:blur(6px);transition:opacity .7s,transform .7s,filter .7s;transition-delay:var(--d,0s);transform:translateY(16px)}.js .reveal.in{opacity:1;filter:none;transform:none}@keyframes heroIn{0%{transform:translateY(16px)}to{transform:none}}.js .hero-in{animation:.7s cubic-bezier(.22,1,.36,1) both heroIn;animation-delay:var(--d,0s)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.js body>nav{transition:none}.js .reveal{opacity:1;filter:none;transition:none;transform:none}.js .hero-in{animation:none}.js .label:after{transition:none;transform:none}.progress{display:none}.row,.card,.featured,.cta-btn,.quick a,.nav-links a,.pager a{transition:none}.row:hover{transform:none}}@media (width<=860px){.cards.three{grid-template-columns:repeat(2,1fr)}.featured{grid-template-columns:1fr}.featured .cover{aspect-ratio:16/9;min-height:0}}@media (width<=640px){.nav-inner{justify-content:center;padding:0 14px 4px}.wordmark{padding:12px 0 2px}.nav-links{justify-content:center;gap:8px 11px;padding:2px 0 10px}.nav-links a{font-size:.72rem}header.hero{min-height:0;padding-top:72px;padding-bottom:40px}.page-head{padding-top:76px}.post-head{padding-top:72px}.quick{grid-template-columns:repeat(3,1fr);gap:.55rem;display:grid}.quick li{display:flex}.quick a{text-align:center;flex:1;padding:.6rem .5rem}.row,.row-lg{flex-direction:column;align-items:flex-start;gap:6px}.row .org,.row-lg .name{min-width:0}.row-lg .desc{max-width:none}.cards,.cards.three{grid-template-columns:1fr;gap:20px}.featured .body{padding:24px 22px}.proj-actions{width:100%}.proj-actions .btn{text-align:center;flex:1}.pager{grid-template-columns:1fr}.pager .next{text-align:left}.foot-inner{flex-direction:column;gap:10px}}
