@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/plus-jakarta-sans-vietnamese-wght-normal.qRpaaN48.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:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/plus-jakarta-sans-latin-ext-wght-normal.DmpS2jIq.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:Plus Jakarta Sans Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_astro/plus-jakarta-sans-latin-wght-normal.eXO_dkmS.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:Plus Jakarta Sans Variable;font-style:italic;font-display:swap;font-weight:200 800;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans Variable;font-style:italic;font-display:swap;font-weight:200 800;src:url(/_astro/plus-jakarta-sans-vietnamese-wght-italic.CPBsCcxN.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:Plus Jakarta Sans Variable;font-style:italic;font-display:swap;font-weight:200 800;src:url(/_astro/plus-jakarta-sans-latin-ext-wght-italic.DJWiFoht.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:Plus Jakarta Sans Variable;font-style:italic;font-display:swap;font-weight:200 800;src:url(/_astro/plus-jakarta-sans-latin-wght-italic.DnD1KgkH.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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-cyrillic-ext-400-normal.xuaO2J-f.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-ext-400-normal.DMdlQ8Kv.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-cyrillic-400-normal.BSMlKf0J.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-400-normal.CEL4l2ZJ.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-vietnamese-400-normal.BulugwFq.woff2)format("woff2"),url(/_astro/ibm-plex-mono-vietnamese-400-normal.DDuiU_S-.woff)format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-latin-ext-400-normal.BmRBH3aV.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-ext-400-normal.D3D2R8hC.woff)format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/_astro/ibm-plex-mono-latin-400-normal.DMJ8VG8y.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-400-normal.CvHOgSBP.woff)format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-cyrillic-ext-500-normal.BqneJy0T.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-ext-500-normal.BIfNGwUT.woff)format("woff");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-cyrillic-500-normal.Bq9vWWag.woff2)format("woff2"),url(/_astro/ibm-plex-mono-cyrillic-500-normal.Ael50iVv.woff)format("woff");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-vietnamese-500-normal.DZ4AoWbu.woff2)format("woff2"),url(/_astro/ibm-plex-mono-vietnamese-500-normal.C8zxqsMH.woff)format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-latin-ext-500-normal.CAhNIIs5.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-ext-500-normal.CZ70TYgx.woff)format("woff");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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/_astro/ibm-plex-mono-latin-500-normal.DSY6xOcd.woff2)format("woff2"),url(/_astro/ibm-plex-mono-latin-500-normal.CB9ihrfo.woff)format("woff");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{--bg:#f3f4f5;--ink:#1e2329;--ink-2:#3a424c;--muted:#5a6370;--quiet:#4a525c;--accent:#5c7387;--accent-deep:#4f6477;--tint:#e3e9ee;--line:#cdd3d9;--line-strong:#9aa6b2;--placeholder:#dde3e9;--panel:#2a3139;--on-dark:#c9d1d9;--on-dark-quiet:#a9b6c3;--sans:"Plus Jakarta Sans Variable", "Plus Jakarta Sans", system-ui, sans-serif;--mono:"IBM Plex Mono", ui-monospace, monospace;--w-display:960px;--w-text:760px}*,:before,:after{box-sizing:border-box}body{background:var(--bg);color:var(--ink);font-family:var(--sans);flex-direction:column;min-height:100dvh;margin:0;font-size:17px;font-weight:400;line-height:1.65;display:flex}main{flex:1 0 auto}a{color:var(--ink);transition:color .18s}a:hover{color:var(--accent)}img{max-width:100%;display:block}summary{cursor:pointer;list-style:none}::selection{background:var(--accent-deep);color:#fff}summary::-webkit-details-marker{display:none}.mono{font-family:var(--mono);text-transform:uppercase;letter-spacing:.08em}.wrap{max-width:1280px;margin:0 auto;padding-left:40px;padding-right:40px}.sec{padding-top:112px;padding-bottom:112px}.tint{background:var(--tint)}.dark{background:var(--ink);color:var(--bg)}.label{color:var(--accent);font-size:12px}.label--deep{color:var(--accent-deep)}.label--light{color:var(--on-dark-quiet)}.h1{max-width:var(--w-display);letter-spacing:-.025em;margin:0;font-size:60px;font-weight:600;line-height:1.08}.h2{max-width:var(--w-display);letter-spacing:-.02em;margin:20px 0 0;font-size:40px;font-weight:600;line-height:1.15}.lede{max-width:var(--w-text);color:var(--ink-2);margin:16px 0 0;font-size:18px}.btn{border:1px solid var(--ink);color:var(--ink);padding:15px 22px;font-size:13px;text-decoration:none;transition:background-color .18s,border-color .18s,color .18s,transform .18s;display:inline-block}.btn--solid{background:var(--ink);color:var(--bg)}a.btn:hover,.nav__cta:hover,.nav__mobile>summary:hover{background:var(--accent-deep);border-color:var(--accent-deep);color:var(--bg);transform:translateY(-2px)}.more{color:var(--ink);border-bottom:1px solid var(--ink);margin-top:24px;padding-bottom:2px;font-size:13px;text-decoration:none;transition:color .18s,border-color .18s,transform .18s;display:inline-block}a.more:hover,a:hover>.more,a:hover .more{color:var(--accent-deep);border-color:var(--accent-deep);transform:translate(6px)}.nav-bar{border-bottom:1px solid var(--line)}.nav{justify-content:space-between;align-items:center;gap:24px;padding-top:28px;padding-bottom:28px;display:flex;position:relative}.nav__logo{letter-spacing:-.01em;font-size:18px;font-weight:700;text-decoration:none}.nav__links{align-items:center;gap:32px;font-size:12px;display:flex}.nav__link{color:var(--quiet);border-bottom:1px solid #0000;padding-bottom:2px;text-decoration:none;transition:color .18s,border-color .18s}.nav__link:hover{color:var(--ink);border-bottom-color:var(--accent)}.nav__link.is-active{color:var(--ink);border-bottom:1px solid var(--ink)}.nav__cta{border:1px solid var(--ink);color:var(--ink);padding:10px 16px;text-decoration:none;transition:background-color .18s,border-color .18s,color .18s,transform .18s}.nav__mobile{display:none}.nav__mobile>summary{border:1px solid var(--ink);padding:10px 14px;font-size:12px}.nav__panel{z-index:20;background:var(--bg);border-top:1px solid var(--line);border-bottom:1px solid var(--line);flex-direction:column;padding:4px 20px 24px;display:flex;position:absolute;top:100%;left:0;right:0}.nav__panel>*{border-bottom:1px solid var(--line);justify-content:space-between;gap:12px;padding:16px 0;font-size:13px;text-decoration:none;display:flex}.nav__panel .nav__cta{border:1px solid var(--ink);justify-content:center;margin-top:20px;padding:14px 16px}.footer{background:var(--ink);color:var(--on-dark-quiet)}.footer__in{flex-wrap:wrap;justify-content:space-between;gap:24px 48px;padding-top:40px;padding-bottom:40px;font-size:13px;display:flex}.footer__name{color:var(--bg);font-weight:600}.footer__links{gap:20px;margin-top:6px;font-size:11px;display:flex}.footer a{color:var(--on-dark)}.footer a:hover{color:#fff}.fig{margin:0}.fig img{object-fit:cover;filter:saturate(.7);width:100%}.fig__img--white{background:#fff}.fig__ph{background:var(--placeholder);text-align:center;width:100%;color:var(--quiet);justify-content:center;align-items:center;padding:24px;font-size:11px;line-height:1.7;display:flex}.fig__ph span{max-width:260px}.fig__cap{max-width:var(--w-text);color:var(--muted);margin-top:20px;font-size:13px;line-height:1.6}.fig__num{color:var(--ink);font-weight:500}.fig__cap--mono{margin-top:10px;font-size:11px}.fig__cap--mono .fig__num{color:inherit;font-weight:400}.seq{flex-wrap:wrap;gap:12px;display:flex}.seq__frame{flex-direction:column;flex:260px;gap:10px;display:flex}.seq__frame img{aspect-ratio:1/.98}.seq__t{color:var(--accent);font-size:12px}.band__in{padding-top:56px;padding-bottom:88px}.band__tabs{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.band__for{color:var(--accent-deep);flex:none;margin-right:12px;font-size:12px}.band__tab{cursor:pointer;color:var(--ink);border:1px solid var(--ink);font-family:var(--sans);letter-spacing:-.01em;background:0 0;padding:16px 32px;font-size:20px;font-weight:600;transition:background-color .18s,color .18s,transform .18s;position:relative;overflow:hidden}.band__tab:hover{background:#fff;transform:translateY(-2px)}.band__tab[aria-selected=true]{background:var(--ink);color:var(--bg)}.band__bar{background:var(--accent);width:0;height:3px;position:absolute;bottom:0;left:0}.is-auto .band__tab[aria-selected=true] .band__bar{animation:6s linear band-fill}.band:hover .band__bar,.band:focus-within .band__bar{animation-play-state:paused}@keyframes band-fill{0%{width:0}to{width:100%}}.band__slides{margin-top:56px;display:grid}.slide{visibility:hidden;opacity:0;grid-area:1/1}.slide.is-on{visibility:visible;opacity:1;transition:opacity .5s}.slide__body{max-width:var(--w-text);color:var(--ink-2);margin:28px 0 0;font-size:18px}.slide__cta{flex-wrap:wrap;gap:12px;margin-top:36px;display:flex}.slide__fig{margin-top:64px}.slide__fig .seq{flex-wrap:nowrap;gap:8px}.slide__fig .seq__frame{flex:1 1 0;gap:6px;min-width:0}.slide__fig .seq__t{font-size:10px}.tint .fig__ph{background:var(--bg)}.areas{flex-wrap:wrap;gap:24px;margin-top:56px;display:flex}.area{min-width:0;color:var(--ink);background:#fff;flex-direction:column;flex:300px;padding:24px 24px 32px;text-decoration:none;transition:transform .18s;display:flex}.area:hover{color:var(--ink);transform:translateY(-4px)}.area__title{letter-spacing:-.015em;margin:28px 0 0;font-size:30px;font-weight:600;line-height:1.2}.area p{color:var(--ink-2);flex:auto;margin:12px 0 0}.area .more{align-self:flex-start}.area--screenshot .fig img{object-fit:contain;background:#f6e1c6}.fields{flex-wrap:wrap;gap:24px;margin-top:56px;display:flex}.field{border-top:3px solid var(--accent-deep);background:#fff;flex-direction:column;flex:440px;gap:20px;padding:40px;display:flex}.field__title{letter-spacing:-.02em;font-size:34px;font-weight:600;line-height:1.15}.field__kicker{color:var(--muted);font-size:11px}.field p{color:var(--ink-2);margin:0}.field .more{align-self:flex-start;margin-top:4px}.field__q{border-top:1px solid var(--line);padding-top:18px}.field__q p{color:var(--accent-deep);font-size:20px;font-weight:500;line-height:1.45}.open{border:1px solid var(--line-strong);flex-wrap:wrap;align-items:baseline;gap:16px 40px;margin-top:24px;padding:28px 32px;display:flex}.open__text{flex:480px;font-size:17px}.open__text span{color:var(--muted)}.contact__open{max-width:var(--w-display);font-size:34px;font-weight:500;line-height:1.3}.contact__base{color:var(--on-dark-quiet);margin-top:24px;font-size:12px}.contact{border-top:1px solid #3a424c;flex-wrap:wrap;gap:64px;margin-top:72px;padding-top:56px;display:flex}.contact>div{flex:420px;min-width:0}.contact__h{letter-spacing:-.015em;margin:0;font-size:30px;font-weight:600;line-height:1.2}.contact__lede{max-width:460px;color:var(--on-dark);margin:12px 0 0}.contact__mail{flex-wrap:wrap;align-items:center;gap:16px;margin-top:28px;display:flex}.email{color:var(--bg);border-bottom:1px solid var(--accent);font-size:30px;font-weight:500;text-decoration:none;transition:color .18s,border-color .18s}.email:hover{color:#fff;border-bottom-color:#fff}.copy{cursor:pointer;color:var(--bg);border:1px solid var(--on-dark-quiet);background:0 0;padding:10px 14px;font-size:11px;transition:background-color .18s,border-color .18s,color .18s,transform .18s}.copy:hover{background:var(--accent);border-color:var(--accent);transform:translateY(-2px)}.copy--solid{background:var(--bg);color:var(--ink);border:0;margin-top:24px;padding:14px 20px;font-size:12px}.copy--solid:hover{background:var(--accent);color:var(--bg)}.contact__links{gap:24px;margin-top:28px;font-size:12px;display:flex}.contact__links a{color:var(--on-dark)}.intro{background:var(--panel);padding:36px}.intro__title{font-size:20px;font-weight:600}.intro__sub{color:var(--on-dark);margin:8px 0 0;font-size:15px}.intro__text{color:#e6eaee;margin:20px 0 0;font-size:15px;font-style:italic;line-height:1.7}.intro__meet{color:var(--on-dark-quiet);margin:24px 0 0;font-size:14px}.signoff{flex-direction:column;align-items:flex-end;margin-top:12px;display:flex}.sign{mix-blend-mode:multiply;width:240px;max-width:60%;height:auto}.signoff .more{margin-top:8px}.about-short{max-width:var(--w-text);margin-top:32px}.about-short p{color:var(--ink-2);margin:0;font-size:20px;line-height:1.6}.about-short p+p{margin-top:14px}.case-page{line-height:1.7}.case-head{padding-top:72px;padding-bottom:56px}.back{color:var(--muted);font-size:12px;text-decoration:none;transition:color .18s,transform .18s;display:inline-block}.back:hover{color:var(--ink);transform:translate(-4px)}.case-head .label{margin-top:40px;line-height:1.8}.h1--case{margin-top:20px;font-size:54px;line-height:1.1}.case-head__intro{max-width:var(--w-text);color:var(--ink-2);margin:32px 0 0;font-size:18px}.case-head__intro p{margin:0}.case-head__intro p+p{margin-top:16px}.case-head__cta{flex-wrap:wrap;gap:12px;margin-top:36px;display:flex}.case-head--photo{grid-template-columns:minmax(0, var(--w-text)) 392px;justify-content:space-between;align-items:start;column-gap:48px;display:grid}.case-head__photo{margin-top:20px}.case-head__names{color:var(--muted);margin:32px 0 0;font-size:12px;line-height:1.8}@media (width<=960px){.case-head--photo{grid-template-columns:minmax(0,1fr)}.case-head__photo{max-width:392px;margin-top:48px}}.stats{border-top:1px solid var(--line);border-bottom:1px solid var(--line);flex-wrap:wrap;margin-top:48px;display:flex}.stat{flex:200px;padding:24px 24px 24px 0}.stat__value{letter-spacing:-.02em;color:var(--accent-deep);font-size:36px;font-weight:600}.stat__label{color:var(--muted);font-size:11px}.case-fig{padding-bottom:24px}.row{flex-wrap:wrap;gap:24px 64px;padding-top:88px;padding-bottom:88px;display:flex}.row--line{border-top:1px solid var(--line)}.row__label{color:var(--accent);flex:0 0 220px;padding-top:6px;font-size:12px}.tint .row__label{color:var(--accent-deep)}.row__body{min-width:0;max-width:var(--w-text);gap:var(--gap,18px);flex-direction:column;flex:520px;display:flex}.row__body p{color:var(--ink-2);margin:0}.row__body p+p{margin-top:12px}.row__body>p+p{margin-top:0}.row__body .row__lead{color:var(--ink);font-size:22px;font-weight:500;line-height:1.5}.row__body strong{color:var(--ink)}.row__body>.more{align-self:flex-start;margin-top:6px}.sub__title{margin:0 0 8px;font-size:18px;font-weight:600}.sub__title--list{margin:30px 0 6px}.row__fig{margin-top:22px}.row__fig--small{max-width:420px}.row__fig .seq{flex-wrap:nowrap;gap:8px}.row__fig .seq__frame{flex:1 1 0;gap:6px;min-width:0}.row__fig .seq__t{font-size:10px}.tint .row__fig{margin-top:60px}.phones{gap:24px;display:flex}.phone{border:6px solid var(--ink);background:#fff;border-top-width:16px;border-bottom-width:16px;border-radius:26px;flex:0 214px;min-width:0;overflow:hidden}.fig .phone img{aspect-ratio:460/904;object-position:top;filter:none;display:block}@media (width<=560px){.phones{gap:10px}.phone{border-width:10px 4px;border-radius:16px}}.tint .fig__cap{color:var(--quiet);margin-top:16px}.status{color:var(--accent-deep);font-size:12px;line-height:1.7}.status+p{margin-top:12px}.btn--off{border-color:var(--line-strong);color:var(--muted)}.job__title{margin:0;font-size:20px;font-weight:600;line-height:1.3}.job__title--next{margin-top:14px}.job__meta{color:var(--muted);margin-top:4px;font-size:12px}.job p{margin-top:12px}.bullets{color:var(--ink-2);margin:14px 0 0;padding-left:18px}.bullets li+li{margin-top:8px}.bullets--flush{margin-top:0}.rules{margin:0;padding:0;list-style:none}.rules li{border-top:1px solid var(--line);color:var(--ink-2);padding:18px 0}.rules li:last-child{border-bottom:1px solid var(--line)}.note{color:var(--muted);font-size:11px}.chips{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.chip{border:1px solid var(--line-strong);padding:6px 10px;font-size:11px}.relevant{background:var(--tint);flex-wrap:wrap;gap:16px 64px;padding:40px;display:flex}.relevant .label{flex:0 0 196px;padding-top:6px}.relevant p{max-width:var(--w-text);flex:480px;margin:0;font-size:19px;line-height:1.6}.papers{flex-direction:column;gap:20px;margin:0;padding:0;list-style:none;display:flex}.papers__title{font-weight:500;text-decoration:none}a.papers__title{border-bottom:1px solid #0000;transition:color .18s,border-color .18s}a.papers__title:hover{color:var(--accent-deep);border-bottom-color:var(--accent-deep)}.papers__journal{color:var(--muted);font-size:14px}.paper-links{flex-wrap:wrap;gap:24px;margin-top:14px;font-size:12px;display:flex}.next{border-top:1px solid var(--line)}.next__text{transition:color .18s,transform .18s}.next a:hover .next__text{color:var(--accent-deep);transform:translate(8px)}.next a{color:var(--ink);flex-wrap:wrap;gap:24px 64px;padding-top:72px;padding-bottom:72px;text-decoration:none;display:flex}.next__label{color:var(--accent);flex:0 0 220px;padding-top:8px;font-size:12px}.next__body{min-width:0;max-width:var(--w-text);flex:520px}.next__text{letter-spacing:-.01em;font-size:28px;font-weight:500;line-height:1.35}.projs{border-bottom:1px solid var(--line)}.proj{border-top:1px solid var(--line);scroll-margin-top:24px}.proj__head{padding-top:56px;padding-bottom:56px}.proj__main{min-width:0;max-width:var(--w-text);flex-direction:column;flex:520px;display:flex}.proj__title{letter-spacing:-.02em;margin:0;font-size:36px;font-weight:600;line-height:1.15;transition:color .18s}.proj__sum{color:var(--ink-2);flex-direction:column;gap:12px;margin-top:18px;font-size:18px;display:flex}.proj__p{display:block}.proj__toggle{align-self:flex-start}.proj--fold>summary:hover .proj__title{color:var(--accent-deep)}.proj--fold>summary:hover .proj__toggle{color:var(--accent-deep);border-color:var(--accent-deep)}.proj__less,.proj[open] .proj__more{display:none}.proj[open] .proj__less{display:inline}.proj__visual{margin-top:36px;display:block}.proj__body{padding-bottom:32px}.proj__fig{padding-bottom:24px}.cta__h{margin:0}.js :is(.sec>.label,.sec>.h2,.sec>.lede,.area,.field,.about-short,.contact__base,.contact>*,.case-head>:not(.back),.case-fig,.row__label,.row__body,.relevant,.next){opacity:0;transition:opacity .6s ease-out,transform .6s ease-out;transform:translateY(14px)}.js .is-in.is-in{opacity:1;transform:none}@media (width<=760px){.contact__open{font-size:24px}.contact{margin-top:48px;padding-top:40px}.wrap{padding-left:20px;padding-right:20px}.sec{padding-top:72px;padding-bottom:72px}.h1{font-size:38px;line-height:1.12}.h1--case{font-size:36px}.h2{font-size:28px}.email{font-size:24px}.row{padding-top:48px;padding-bottom:48px}.proj__title{font-size:28px}.proj__sum{font-size:17px}.row__label,.next__label,.relevant .label{flex-basis:100%}.next__text{font-size:22px}.field,.intro,.relevant{padding:28px 24px}.case-fig .seq{flex-wrap:nowrap;gap:8px}.case-fig .seq__frame{flex:1 1 0;gap:6px;min-width:0}:is(.slide__fig,.case-fig) .seq__t{letter-spacing:.04em;font-size:9px}.band__in{padding-top:32px;padding-bottom:64px}.band__for{flex-basis:100%}.band__tab{flex:1 1 0;padding:14px 8px;font-size:16px}.band__slides{margin-top:36px}.slide__fig{margin-top:48px}.about-short p{font-size:18px}.nav__links{display:none}.nav__mobile{display:block}}
