@font-face{font-family:Newsreader Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/newsreader-vietnamese-wght-normal.Czsa-EzN.woff2)format("woff2-variations");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:Newsreader Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/newsreader-latin-ext-wght-normal.C-3rgBeH.woff2)format("woff2-variations");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:Newsreader Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/newsreader-latin-wght-normal.CCVVNp6i.woff2)format("woff2-variations");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:Figtree Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/_astro/figtree-latin-ext-wght-normal.DCwSJGxG.woff2)format("woff2-variations");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:Figtree Variable;font-style:normal;font-display:swap;font-weight:300 900;src:url(/_astro/figtree-latin-wght-normal.D_ZTVpCC.woff2)format("woff2-variations");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{color-scheme:light;--paper:#f6f9fc;--surface:#fff;--ink:#3a2a21;--ink-soft:#6e5d53;--line:#dde4eb;--blue:#2f5f8a;--sky-tint:#e4eef7;--blush:#f2c6d1;--blush-tint:#fbeaee;--sunset:#f39a5b;--brown:#7a5643;--brown-tint:#f0e7e1;--afterglow:linear-gradient(180deg, #f2c6d1 0%, #f39a5b 58%, #7a5643 100%);--afterglow-line:linear-gradient(90deg, #f2c6d1 0%, #f39a5b 58%, #7a5643 100%);--serif:"Newsreader Variable", Georgia, "Times New Roman", serif;--sans:"Figtree Variable", "Segoe UI", system-ui, sans-serif;--gutter:clamp(1.25rem, 4vw, 2.5rem)}*,:before,:after{box-sizing:border-box}html{background:var(--paper)}body{background:var(--paper);min-height:100svh;color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;flex-direction:column;margin:0;font-size:1.0625rem;line-height:1.6;display:flex}main{flex:1;width:100%}h1,h2,h3{font-family:var(--serif);letter-spacing:-.01em;text-wrap:balance;margin:0;font-weight:500;line-height:1.1}p{margin:0}img,video{max-width:100%}a{color:var(--blue);text-underline-offset:3px}:focus-visible{outline:2px solid var(--blue);outline-offset:3px;border-radius:3px}html.page body:before{content:"";background:var(--afterglow-line);height:4px;display:block}.site-header{width:100%;max-width:1040px;padding:1.5rem var(--gutter) 1rem;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.35rem 2rem;margin-inline:auto;display:flex}.brand{font-family:var(--serif);color:var(--ink);font-size:1.5rem;font-weight:500;text-decoration:none}.site-nav{flex-wrap:wrap;gap:.15rem 1.4rem;font-size:.98rem;display:flex}.site-nav a{color:var(--ink);border-bottom:2px solid #0000;padding-block:.2rem;text-decoration:none;transition:border-color .15s}.site-nav a:hover,.site-nav a[aria-current=page]{border-bottom-color:var(--sunset)}.site-footer{width:100%;max-width:1040px;padding:2.5rem var(--gutter) 2rem;color:var(--ink-soft);margin-inline:auto;font-size:.9rem}html.home .site-footer{color:var(--paper)}html.home{background:var(--brown)}html.home body{background:var(--afterglow)}.hero-wrap{max-width:1040px;padding:clamp(1.5rem, 5vw, 4rem) var(--gutter) 0;margin-inline:auto}.hero{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:clamp(2rem,5vw,4rem);display:grid}.hero h1{letter-spacing:-.02em;font-size:clamp(3rem,8vw,5.5rem);line-height:1}.tagline{color:#4a372c;margin-top:.85rem;font-size:1.25rem}.frost{backdrop-filter:blur(10px);background:#f6f9fcc7;border:1px solid #ffffff8c;border-radius:16px;box-shadow:0 18px 40px -24px #3a2a2180}.intro{font-family:var(--serif);margin-top:2rem;padding:1.5rem 1.75rem;font-size:1.3rem;line-height:1.55}.intro p+p{margin-top:.9em}.intro article>:first-child{margin-top:0}.portrait{aspect-ratio:1;object-fit:cover;border:8px solid var(--paper);border-radius:50%;width:clamp(200px,26vw,340px);height:auto;display:block;box-shadow:0 24px 48px -24px #3a2a2199}.videos{grid-template-columns:repeat(auto-fit,minmax(min(100%,380px),1fr));gap:1.5rem;margin-top:3rem;display:grid}.videos:has(>:only-child){max-width:620px}.video{margin:0;padding:.75rem}.video video{background:var(--ink);border-radius:10px;width:100%;display:block}.video figcaption{gap:.15rem;padding:.75rem .5rem .25rem;display:grid}.video strong{font-weight:600}.video span{color:var(--ink-soft);font-size:.95rem}.container{max-width:860px;padding:clamp(1.5rem, 5vw, 3.5rem) var(--gutter) 2rem;margin-inline:auto}.page-head{gap:.75rem;margin-bottom:2.75rem;display:grid}.page-head h1{font-size:clamp(2.5rem,6vw,3.75rem)}.page-head p{max-width:60ch;color:var(--ink-soft);font-size:1.15rem}.back{margin-bottom:1.5rem;font-size:.95rem;text-decoration:none;display:inline-block}.back:hover{text-decoration:underline}.empty{color:var(--ink-soft)}.pills{flex-wrap:wrap;gap:.4rem;display:flex}.pill{color:var(--blue);white-space:nowrap;background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:.15rem .8rem;font-size:.86rem;text-decoration:none;transition:background-color .15s,border-color .15s;display:inline-block}.pill:hover{background:var(--blush-tint);border-color:var(--blush)}.group+.group{margin-top:2.75rem}.group-name{font-family:var(--sans);letter-spacing:.1em;text-transform:uppercase;color:var(--blue);margin-bottom:.6rem;font-size:.8rem;font-weight:600}.entry{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.5rem 2rem;padding-block:1.1rem;display:grid}.entry h3{font-size:1.45rem}.entry p{color:var(--ink-soft);margin-top:.25rem}.entry .pills{justify-content:flex-end}.branches{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;display:grid}.branch{min-height:280px;color:var(--ink);border:1px solid var(--line);border-radius:16px;align-content:start;gap:.6rem;padding:2.25rem;text-decoration:none;transition:transform .15s,box-shadow .15s;display:grid}.branch:hover{transform:translateY(-3px);box-shadow:0 18px 36px -24px #3a2a2180}.branch.papers{background:linear-gradient(160deg, var(--surface), var(--brown-tint))}.branch.thoughts{background:linear-gradient(160deg, var(--surface), var(--blush-tint))}.branch h2{font-size:2.75rem}.branch p{color:var(--ink-soft)}.branch .meta{color:var(--ink);align-self:end;margin-top:1rem;font-size:.95rem;font-weight:500}.doc{border-top:1px solid var(--line);gap:.35rem;padding-block:1.4rem;display:grid}.doc .when{color:var(--ink-soft);font-variant-numeric:tabular-nums;font-size:.9rem}.doc h2{font-size:1.75rem}.doc h2 a{color:var(--ink);text-decoration:none}.doc h2 a:hover{color:var(--blue)}.doc p.summary{max-width:62ch;color:var(--ink-soft)}.doc .pills{margin-top:.4rem}.article{max-width:680px;margin-inline:auto}.article header{gap:.75rem;margin-bottom:2rem;display:grid}.article h1{font-size:clamp(2.25rem,5.5vw,3.25rem)}.article .when{color:var(--ink-soft);font-size:.95rem}.article .summary{color:var(--ink-soft);font-size:1.2rem}.prose{font-family:var(--serif);font-size:1.27rem;line-height:1.6}.prose>article>*+*{margin-top:1em}.prose h2,.prose h3{margin-top:1.6em}.prose h2{font-size:1.7rem}.prose h3{font-size:1.35rem}.prose a{text-decoration-color:var(--blush);text-decoration-thickness:2px}.prose blockquote{color:var(--ink-soft);border-left:2px solid var(--blush);margin-inline:0;padding-left:1.25rem;font-style:italic}.prose img{border-radius:10px;height:auto;display:block}.products{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:1.25rem;display:grid}.product{background:var(--surface);border:1px solid var(--line);border-radius:14px;overflow:hidden}.product>img,.product>video{aspect-ratio:16/9;object-fit:cover;background:var(--brown-tint);width:100%;display:block}.product-body{gap:.5rem;padding:1.4rem 1.5rem 1.5rem;display:grid}.product h2{font-size:1.75rem}.product .summary{font-weight:500}.product .description{color:var(--ink-soft);white-space:pre-line}.status{background:var(--sky-tint);color:var(--blue);border-radius:999px;justify-self:start;padding:.1rem .65rem;font-size:.78rem;font-weight:600}.status.development{background:var(--blush-tint);color:#8a3f55}.status.retired{background:var(--brown-tint);color:var(--brown)}.product .pills{margin-top:.4rem}.contact-list{margin:0}.contact-row{border-top:1px solid var(--line);grid-template-columns:9rem minmax(0,1fr);align-items:baseline;gap:.25rem 1.5rem;padding-block:1rem;display:grid}.contact-row:last-child{border-bottom:1px solid var(--line)}.contact-row dt{color:var(--ink-soft);font-size:.95rem}.contact-row dd{overflow-wrap:anywhere;flex-wrap:wrap;align-items:center;gap:.5rem .9rem;margin:0;font-size:1.15rem;display:flex}.copy{font:inherit;color:var(--blue);cursor:pointer;background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:.1rem .75rem;font-size:.85rem}.copy:hover{background:var(--blush-tint);border-color:var(--blush)}@media (width<=720px){.hero{grid-template-columns:minmax(0,1fr)}.portrait{border-width:6px;order:-1;width:190px}.intro{padding:1.25rem 1.3rem;font-size:1.2rem}.entry{grid-template-columns:minmax(0,1fr)}.entry .pills{justify-content:flex-start}.branches,.products{grid-template-columns:minmax(0,1fr)}.branch{min-height:220px;padding:1.75rem}.contact-row{grid-template-columns:minmax(0,1fr)}}@media (prefers-reduced-motion:reduce){*{transition:none!important}.branch:hover{transform:none}}
