@font-face{font-family:geist;font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/geist-latin-400.woff2)format("woff2")}@font-face{font-family:geist;font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/geist-latin-400-italic.woff2)format("woff2")}:root{color-scheme:dark;--df-paper:#111210;--df-ink:#eeeae2;--df-muted:#a5a59c;--df-line:#343630;--df-accent:#e7a578;--df-panel:#191b17;--df-mono:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;background:var(--df-paper);scroll-behavior:smooth}*{box-sizing:border-box}body{margin:0;color:var(--df-ink);font-family:helvetica neue,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}::selection{background:var(--df-accent);color:var(--df-paper)}a{color:inherit;text-decoration:none;text-underline-offset:5px}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--df-accent);outline-offset:6px}a:hover{color:var(--df-accent)}button{font:inherit}button[hidden]{display:none}.df-arrow{display:inline-block;width:1em;height:1em;vertical-align:-.125em;flex-shrink:0}h1,h2,h3,h4,p,figure{margin:0}h1,h2,h3,h4{font-weight:400}.df-site{max-width:1320px;min-height:100svh;margin:auto;padding:0 56px;display:flex;flex-direction:column;font-size:16px;line-height:1.6}.df-site>main{flex:1;min-width:0}.df-site section[id]{scroll-margin-top:36px}.df-site .df-skip-link{position:absolute;top:12px;left:16px;z-index:10;padding:10px 16px;background:var(--df-paper);border:1px solid var(--df-accent);transform:translateY(-160%)}.df-site .df-skip-link:focus{transform:translateY(0)}.df-header{height:112px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--df-line)}.df-wordmark{font-family:var(--df-mono);font-weight:500;font-size:30px;letter-spacing:-3px;line-height:1}.df-wordmark span{color:var(--df-accent);margin-left:5px}.df-header nav{display:flex;gap:34px;align-items:center;font-size:13px}.df-header nav a{display:inline-flex;gap:7px;align-items:center;min-height:44px}.df-header nav a[aria-current]{text-decoration:underline;text-decoration-color:var(--df-accent);text-underline-offset:8px}.df-kicker{font-family:var(--df-mono);font-size:10px;font-weight:400;line-height:1.7;letter-spacing:.08em;text-transform:uppercase;color:var(--df-muted)}.df-period{color:var(--df-accent)}.df-text-link,.df-quiet-link{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;min-height:44px;font-size:13px}.df-text-link{border-bottom:1px solid var(--df-accent)}.df-text-link span,.df-quiet-link span{color:var(--df-accent);transition:transform 180ms ease}.df-text-link:hover span,.df-quiet-link:hover span{transform:translate(2px,-2px)}.df-quiet-link{color:var(--df-muted);gap:12px}.df-hero{display:grid;grid-template-columns:1fr 1.12fr;align-items:center;gap:24px;min-height:700px;padding:40px 0 58px}.df-hero-copy{position:relative;z-index:1;padding:30px 0}.df-hero .df-kicker{color:var(--df-accent);font-size:10px;letter-spacing:.065em}.df-hero h1{margin:28px 0 30px;font-family:geist,helvetica neue,Helvetica,Arial,sans-serif;font-size:clamp(88px,9.5vw,118px);line-height:1;letter-spacing:-.03em}.df-hero h1>span:not(.df-period){font-style:italic}.df-headline{max-width:325px;font-size:21px;line-height:1.5;letter-spacing:-.025em}.df-hero-links{display:flex;flex-wrap:wrap;gap:16px 30px;margin-top:29px}.df-flow{min-width:0;align-self:stretch;display:flex;flex-direction:column;justify-content:center}.df-flow-field{position:relative;width:100%;aspect-ratio:1}.df-flow-still,#df-flow-canvas{position:absolute;inset:0;width:100%;height:100%}.df-flow-still{color:var(--df-accent)}#df-flow-canvas{opacity:0}.df-flow[data-rendered] #df-flow-canvas{opacity:1}.df-flow[data-rendered] .df-flow-still{visibility:hidden}.df-flow-coordinate{position:absolute;font:14px var(--df-mono);color:#63655b}.df-flow-coordinate-top{top:8%;right:6%}.df-flow-coordinate-bottom{bottom:8%;left:6%}.df-flow figcaption{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin:0 6%;padding-top:18px;border-top:1px solid var(--df-line);font-family:var(--df-mono);font-size:9px;line-height:1.7}.df-flow-label{display:block;text-transform:uppercase;letter-spacing:.05em}.df-flow-hint{display:block;color:var(--df-muted);margin-top:3px}.df-motion-toggle{min-height:44px;margin-top:-11px;padding:10px 0 10px 10px;display:inline-flex;gap:12px;align-items:center;color:var(--df-muted);background:0 0;border:0;cursor:pointer;white-space:nowrap}.df-motion-toggle:hover{color:var(--df-ink)}.df-motion-toggle span{font-size:12px}.df-research{display:grid;grid-template-columns:1fr 2fr;gap:64px;border-top:1px solid var(--df-line);padding:62px 0 76px}.df-section-intro h2{font-size:45px;letter-spacing:-.045em;line-height:1.1;margin-top:24px}.df-section-intro h2 em,.df-about-copy h2 em{font-family:Georgia,times new roman,serif;font-weight:400}.df-section-intro>p:not(.df-kicker){max-width:245px;margin-top:22px;color:var(--df-muted);font-size:14px;line-height:1.75}.df-section-intro .df-text-link{margin-top:24px}.df-research-entry{position:relative;display:block;padding:26px 48px 30px 0;border-bottom:1px solid var(--df-line)}.df-research-entry:first-child{padding-top:0}.df-research-meta{display:flex;flex-wrap:wrap;gap:8px 20px;justify-content:space-between;font:10px/1.7 var(--df-mono);letter-spacing:.03em;text-transform:uppercase;color:var(--df-muted)}.df-research-meta time{color:var(--df-accent)}.df-research-entry h3{margin:13px 0 10px;font-size:27px;letter-spacing:-.035em;line-height:1.25;max-width:540px;transition:color 180ms ease}.df-research-entry p{max-width:490px;color:var(--df-muted);font-size:14px;line-height:1.75}.df-entry-arrow{position:absolute;right:0;top:64px;font-size:23px;color:var(--df-muted);transition:transform 180ms ease,color 180ms ease}.df-research-entry:first-child .df-entry-arrow{top:38px}.df-research-entry:hover .df-entry-arrow{color:var(--df-accent);transform:translate(3px,-3px)}.df-about-section{display:grid;grid-template-columns:1fr 2fr;gap:64px;padding:58px 0 70px;border-top:1px solid var(--df-line)}.df-about-copy h2{font-size:37px;line-height:1.25;letter-spacing:-.04em}.df-about-copy>p{max-width:540px;color:var(--df-muted);font-size:16px;line-height:1.8;margin-top:24px}.df-about-links{display:flex;flex-wrap:wrap;gap:16px 32px;margin-top:22px}.df-footer{display:flex;justify-content:space-between;align-items:baseline;gap:16px;flex-wrap:wrap;padding:26px 0 30px;border-top:1px solid var(--df-line);font-size:11px;color:var(--df-muted)}.df-footer>span{font-family:var(--df-mono)}.df-footer>div{display:flex;flex-wrap:wrap;gap:26px}.df-footer a{display:inline-flex;align-items:center;gap:6px;min-height:44px}.df-page-heading{padding:72px 0 38px}.df-page-heading h1{font-size:56px;line-height:1.1;letter-spacing:-.055em;margin:20px 0 24px;text-wrap:balance;overflow-wrap:anywhere}.df-page-intro{max-width:620px;color:var(--df-muted);font-size:17px;line-height:1.8}.df-page-intro p{margin-bottom:18px}.df-back-link{display:inline-flex;align-items:center;gap:6px;min-height:44px;color:var(--df-muted);font-size:12px}.df-back-link:hover{text-decoration:underline}.df-archive{max-width:820px;margin:0 auto 76px}.df-archive-year{display:grid;grid-template-columns:80px minmax(0,1fr);column-gap:28px;border-top:1px solid var(--df-line);padding:18px 0}.df-section-heading h2{font:12px/1.8 var(--df-mono);color:var(--df-accent);padding-top:15px}.df-writing-row{display:flex;justify-content:space-between;align-items:baseline;gap:24px;grid-column:2;padding:14px 0;font-size:17px;line-height:1.5}.df-writing-row:nth-child(2){grid-row:1}.df-writing-row time{flex-shrink:0;font:11px var(--df-mono);color:var(--df-muted)}.df-writing-row:hover>span{text-decoration:underline}.df-article{max-width:720px;margin:0 auto 72px}.df-article-meta{display:flex;flex-wrap:wrap;gap:18px;color:var(--df-muted);font:11px/1.7 var(--df-mono)}.df-prose{font-size:18px;line-height:1.8;overflow-wrap:anywhere}.df-prose p,.df-prose ul,.df-prose ol,.df-prose blockquote{margin:0 0 26px}.df-prose ul,.df-prose ol{padding-left:26px}.df-prose li+li{margin-top:8px}.df-prose h1,.df-prose h2,.df-prose h3,.df-prose h4{font-weight:500;letter-spacing:-.025em;line-height:1.3;margin:52px 0 20px;scroll-margin-top:28px}.df-prose h1{font-size:32px}.df-prose h2{font-size:28px}.df-prose h3{font-size:23px}.df-prose h4{font-size:19px}.df-prose h1+h2,.df-prose h2+h3{margin-top:24px}.df-prose a{text-decoration:underline;text-decoration-color:#74766b;text-decoration-thickness:1px}.df-prose a:hover{text-decoration-color:var(--df-accent)}.df-prose strong{font-weight:600}.df-prose img{display:block;max-width:100%;height:auto;margin:32px auto}.df-prose .df-figure{margin:36px 0}.df-prose .df-figure img{margin:0 auto}.df-prose .df-figure figcaption{padding:14px 0;border-bottom:1px solid var(--df-line);color:var(--df-muted);font-size:12px;line-height:1.7}.df-prose .df-figure figcaption a{white-space:nowrap}.df-prose code{font-family:var(--df-mono);font-size:.83em}.df-prose :not(pre)>code{color:var(--df-accent)}.df-prose pre{max-width:100%;overflow-x:auto;margin:28px 0;padding:24px;background:var(--df-panel);border:1px solid var(--df-line);line-height:1.75;overflow-wrap:normal;tab-size:4}.df-prose .highlight{min-width:0}.df-prose .highlight pre{background:var(--df-panel)}.df-prose pre code{padding:0;border:0;background:0 0;font-size:13px}.df-prose blockquote{border-left:1px solid var(--df-accent);padding:4px 0 4px 24px;color:var(--df-muted)}.df-prose blockquote p:last-child{margin-bottom:0}.df-prose hr{border:0;border-top:1px solid var(--df-line);margin:40px 0}.df-prose table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse;margin:28px 0;font-size:14px}.df-prose th,.df-prose td{padding:12px 16px;border:1px solid var(--df-line);text-align:left}.df-prose th{background:var(--df-panel)}.df-toc{padding:16px 0;margin-bottom:36px;border-top:1px solid var(--df-line);border-bottom:1px solid var(--df-line);font-size:13px}.df-toc summary{cursor:pointer;color:var(--df-muted);min-height:28px;align-content:center}.df-toc nav{margin:16px 0}.df-toc ul{padding-left:20px}.df-toc li{margin:8px 0}.df-toc a:hover{text-decoration:underline}.df-article-footer{padding-top:22px;margin-top:48px;border-top:1px solid var(--df-line)}.df-error{max-width:620px;padding:100px 0}.df-error h1{font-size:100px;letter-spacing:-.06em}.df-error-links{display:flex;align-items:center;flex-wrap:wrap;gap:24px;margin:24px 0}.df-profile{max-width:960px}.df-profile .df-page-heading{margin-left:224px}.df-profile-body{display:grid;grid-template-columns:176px minmax(0,1fr);gap:48px;align-items:start}.df-portrait{display:block;width:176px;height:176px;object-fit:cover;border:1px solid var(--df-line);border-radius:4px}@media(min-width:1050px){.df-prose>.highlight,.df-prose>.df-figure{width:calc(100% + 120px);max-width:none;margin-left:-60px}}@media(max-width:1000px){.df-site{padding:0 36px}.df-hero{min-height:600px;gap:0}.df-hero h1{font-size:104px}.df-hero .df-kicker{max-width:290px}.df-headline{font-size:19px;max-width:285px}.df-hero-links{gap:12px 20px}.df-research,.df-about-section{grid-template-columns:1fr 1.7fr;gap:36px}.df-research-entry h3{font-size:24px}.df-about-copy h2{font-size:31px}}@media(max-width:760px){.df-site{padding:0 24px}.df-header{height:86px}.df-header nav{gap:24px}.df-hero{grid-template-columns:minmax(0,1fr);padding:32px 0 44px}.df-hero-copy{padding:24px 0 0}.df-hero .df-kicker{max-width:none;font-size:9px}.df-hero h1{font-size:clamp(92px,20vw,140px);margin:26px 0}.df-headline{max-width:330px;font-size:20px}.df-hero-links{margin-top:22px;gap:16px 28px}.df-flow{width:min(100%,470px);justify-self:center;margin-top:16px}.df-flow figcaption{margin:0 3%;padding-top:14px}.df-research,.df-about-section{grid-template-columns:minmax(0,1fr);gap:34px;padding:38px 0 44px}.df-section-intro h2{font-size:39px;margin-top:18px}.df-section-intro h2 br{display:none}.df-section-intro h2 em::before{content:" "}.df-section-intro>p:not(.df-kicker){max-width:320px;margin-top:14px}.df-section-intro .df-text-link{margin-top:14px}.df-research-entry{padding-right:30px}.df-research-entry h3{font-size:25px}.df-research-entry p{font-size:14px}.df-entry-arrow{font-size:20px}.df-about-copy h2{font-size:32px}.df-footer{padding:22px 0}.df-footer>div{gap:24px}.df-page-heading{padding:42px 0 30px}.df-page-heading h1{font-size:42px}.df-prose{font-size:17px;line-height:1.8}.df-prose h2{font-size:26px}.df-prose pre{padding:18px}.df-toc summary{min-height:32px}.df-archive-year{grid-template-columns:48px minmax(0,1fr);column-gap:18px}.df-writing-row{font-size:16px;gap:12px;align-items:flex-start}.df-writing-row time{padding-top:5px}.df-profile .df-page-heading{margin-left:0}.df-profile-body{grid-template-columns:minmax(0,1fr);gap:32px}.df-portrait{justify-self:center;width:144px;height:144px}}@media(max-width:380px){.df-site{padding:0 20px}.df-header nav{gap:18px;font-size:12px}.df-hero h1{font-size:clamp(72px,22vw,88px)}.df-hero-links{gap:12px 20px}.df-text-link,.df-quiet-link{font-size:12px}.df-page-heading h1{font-size:36px}.df-research-meta{font-size:9px}}@media(prefers-reduced-motion:reduce){:root{scroll-behavior:auto}*,*::before,*::after{transition:none!important}.df-text-link:hover span,.df-quiet-link:hover span,.df-research-entry:hover .df-entry-arrow{transform:none}}.df-pointer-hint{display:none}@media(pointer:fine) and (prefers-reduced-motion:no-preference){.df-flow[data-running] .df-pointer-hint{display:inline}}