@font-face{font-family:Anthropic Serif Display;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/AnthropicSerif-Display-Regular.otf)format("opentype")}@font-face{font-family:Anthropic Serif Display;font-style:italic;font-weight:400;font-display:swap;src:url(/assets/fonts/AnthropicSerif-Text-Italic.otf)format("opentype")}@font-face{font-family:Anthropic Serif Display;font-style:normal;font-weight:500;font-display:swap;src:url(/assets/fonts/AnthropicSerif-Display-Medium.otf)format("opentype")}@font-face{font-family:Anthropic Serif Display;font-style:normal;font-weight:600;font-display:swap;src:url(/assets/fonts/AnthropicSerif-Display-Semibold.otf)format("opentype")}:root{--reader-font-family:"Anthropic Serif Display", serif;--reader-body-size:17px;--reader-body-line-height:1.62;--reader-body-weight:400;--reader-body-color:#1a1916;--reader-body-letter-spacing:0;--reader-body-word-spacing:0;--reader-emphasis-weight:500;--reader-body-measure:clamp(42rem, 58vw, 58.8rem);--reader-title-measure:26ch;--reader-title-size:clamp(2.1rem, 4.2vw, 3.5rem);--reader-title-weight:500;--reader-title-line-height:.98;--reader-title-letter-spacing:-.025em;--reader-subtitle-measure:38rem;--reader-subtitle-size:clamp(1.05rem, 1.4vw, 1.125rem);--reader-subtitle-weight:400;--reader-subtitle-line-height:1.35;--reader-section-title-size:clamp(1.65rem, 3vw, 2.25rem);--reader-section-title-weight:400;--reader-section-title-line-height:1.16;--reader-subsection-title-size:1.55rem;--reader-quote-size:1.08em;--reader-quote-weight:400}button,[role=button],.back-link,.blog-feature-link,.blog-read,.blog-subscribe a,.case-link,.paper-actions a,.es-primary,.es-secondary,.lib-row-cta{font-family:var(--sans)}.action-arrow{fill:currentColor;vertical-align:-.18em;flex:0 0 1.15em;width:1.15em;height:1.15em}@font-face{font-family:Anthropic Serif Display;src:url(/_astro/AnthropicSerif-Display-Regular.DQTew62e.otf)format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Anthropic Serif Display;src:url(/_astro/AnthropicSerif-Display-Medium.DyO49ZFm.otf)format("opentype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Anthropic Serif Display;src:url(/_astro/AnthropicSerif-Display-Semibold.BDnxWP_z.otf)format("opentype");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Anthropic Serif Display;src:url(/_astro/AnthropicSerif-Text-Italic.B_j2S9tD.otf)format("opentype");font-weight:400;font-style:italic;font-display:swap}@font-face{font-family:Anthropic Sans;src:url(/_astro/AnthropicSans-Text-Regular.qvjqf9cj.otf)format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Anthropic Sans;src:url(/_astro/AnthropicSans-Text-Medium.BASbuOq1.otf)format("opentype");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Anthropic Sans;src:url(/_astro/AnthropicSans-Text-Semibold.BgSNB4Bq.otf)format("opentype");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Anthropic Sans Display;src:url(/_astro/AnthropicSans-Display-Regular.B1aUon5J.otf)format("opentype");font-weight:400;font-style:normal;font-display:swap}:root{--page:#fff;--ink:#2a2926;--text:#1a1916;--muted:#5f5c55;--soft:#938f85;--rule:#1a19161f;--accent:#4f6f63;--external-link:#055aa5;--footer:#2d2d2d;--philpapers:#2c5aa0;--philpapers-hover:#24497f;--frame:min(1184px, calc(100vw - 96px));--serif:var(--reader-font-family);--sans:"Anthropic Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--sans-display:"Anthropic Sans Display", "Anthropic Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--fs-subtitle:var(--reader-subtitle-size);--fs-section-h2:var(--reader-section-title-size);--fs-subhead:var(--reader-subsection-title-size);--fs-card-title:var(--reader-subsection-title-size);--fs-feature-title:var(--reader-section-title-size);--fs-body:var(--reader-body-size);--fw-section-h2:var(--reader-section-title-weight);--fw-subhead:var(--reader-section-title-weight);--lh-subhead:var(--reader-section-title-line-height);--lh-body:var(--reader-body-line-height)}*{box-sizing:border-box}html{background:var(--page);color:var(--text);font-family:var(--sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.35}body{background:var(--page);flex-direction:column;min-height:100vh;margin:0;display:flex}main{color:var(--reader-body-color);font-family:var(--sans);font-size:var(--reader-body-size);font-weight:var(--reader-body-weight);line-height:var(--reader-body-line-height);letter-spacing:var(--reader-body-letter-spacing);word-spacing:var(--reader-body-word-spacing)}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}h1,h2,h3,h4,h5,h6{font-weight:500}.frame{width:var(--frame);margin-inline:auto}.site-header{border-bottom:1px solid var(--rule);position:relative}.header-inner{justify-content:space-between;align-items:center;height:68px;display:flex}.header-actions{align-items:center;gap:18px;display:flex}.logo{align-items:center;display:inline-flex}.logo img{width:auto;height:15px;display:block}.desktop-nav{align-items:center;gap:32px;font-size:16px;display:flex}.desktop-nav a.active{text-underline-offset:4px;font-style:normal;font-weight:500;text-decoration:underline}.menu-button{background:0 0;border:0;width:40px;height:40px;padding:7px;display:none;position:relative}.menu-button span{background:var(--ink);height:2px;margin:6px 0;display:block}.mobile-panel{display:none}main{flex:1 0 auto;min-height:62vh}.page-shell{padding:54px 0 88px}.page-hero{width:var(--frame);border-bottom:1px solid var(--rule);grid-template-columns:.95fr 1.05fr;align-items:start;gap:72px;margin:0 auto;padding:30px 0 62px;display:grid}.page-hero.centered{text-align:center;max-width:760px;display:block}.page-hero.centered h1,.page-hero.centered p{margin-inline:auto}.editorial-page{padding-top:0}.editorial-page .page-hero{border-bottom:0;width:min(920px,100vw - 96px);max-width:920px;padding:66px 0 76px;position:relative}.editorial-page .page-hero h1{max-width:18ch}.editorial-page .page-hero p{color:#434343;max-width:700px;margin-top:20px}.editorial-page .page-hero:after{content:"";background:#cfc8b8;width:52px;height:1px;position:absolute;bottom:34px;left:50%;transform:translate(-50%)}.about-page .section-grid{border-top:1px solid var(--rule);border-bottom:0;grid-template-columns:minmax(180px,.58fr) minmax(0,1.42fr);gap:clamp(56px,8vw,112px);padding:54px 0 72px}.about-page .section-grid h2{max-width:22ch;color:var(--muted);font-family:var(--sans);letter-spacing:.12em;text-transform:uppercase;font-size:13px;font-weight:500;line-height:1.45}.about-page .stack{gap:0}.about-page .text-block{padding:0 0 34px}.about-page .text-block+.text-block{border-top:1px solid var(--rule);padding-top:34px}.about-page .text-block h3{color:var(--ink);font-family:var(--serif);letter-spacing:-.01em;margin-bottom:12px;font-size:22px;font-weight:500;line-height:1.25}.about-page .text-block p{max-width:64ch}.work-page .work-grid{padding-top:0}.work-page .case-grid{grid-template-columns:minmax(0,1fr);gap:0}.work-page .case-card{border-top:1px solid var(--rule);border-bottom:0;grid-template-columns:minmax(0,.85fr) minmax(380px,1.15fr);grid-template-areas:"title image""meta image""link image""body image";align-items:start;column-gap:clamp(48px,7vw,96px);padding:64px 0;display:grid}.work-page .case-card h3{color:var(--ink);font-family:var(--serif);letter-spacing:-.025em;grid-area:title;font-size:clamp(1.75rem,2.4vw,2.2rem);font-weight:500;line-height:1.08}.work-page .case-card .meta{grid-area:meta;margin-top:14px}.work-page .case-link{grid-area:link;margin:2px 0 24px}.work-page .case-card p{grid-area:body;max-width:54ch;margin-bottom:0}.work-page .case-image{grid-area:image;width:100%;height:340px}.page-hero h1{color:var(--ink);font-family:var(--serif);max-width:var(--reader-title-measure);font-size:var(--reader-title-size);font-weight:var(--reader-title-weight);line-height:var(--reader-title-line-height);letter-spacing:var(--reader-title-letter-spacing);margin:0}.page-hero p{color:#434343;max-width:640px;font-family:var(--sans);margin:0;font-size:18px;font-style:normal;font-weight:400;line-height:1.34}.section-grid{width:var(--frame);border-bottom:1px solid var(--rule);grid-template-columns:.95fr 1.05fr;gap:72px;margin:0 auto;padding:48px 0 70px;display:grid}.section-grid:last-child{border-bottom:0}.section-grid h2{color:var(--ink);font-family:var(--serif);font-size:var(--fs-section-h2);font-weight:var(--fw-section-h2);line-height:var(--reader-section-title-line-height);text-wrap:balance;max-width:20ch;margin:0}.stack{gap:54px;display:grid}.text-block h3{font-family:var(--serif);font-size:var(--fs-subhead);font-weight:var(--fw-subhead);line-height:var(--lh-subhead);color:var(--ink);margin:0 0 8px}.text-block p{max-width:720px;color:var(--reader-body-color);font-size:var(--fs-body);line-height:var(--lh-body);margin:0}.work-grid{width:var(--frame);margin:0 auto;padding-top:40px}.work-grid h2{font-family:var(--serif);font-size:var(--fs-section-h2);font-weight:var(--fw-section-h2);color:var(--ink);margin:0 0 40px;line-height:1.2}.case-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:58px 78px;display:grid}.case-card{border-bottom:1px solid var(--rule);padding-bottom:46px}.case-card h3{font-family:var(--serif);font-size:var(--fs-card-title);font-weight:var(--reader-section-title-weight);line-height:var(--reader-section-title-line-height);color:var(--ink);margin:0}.case-card .meta{color:var(--muted);font-family:var(--sans);text-transform:uppercase;letter-spacing:.08em;flex-wrap:wrap;align-items:center;gap:8px;margin:8px 0 16px;font-size:12px;font-weight:500;display:flex}.case-card .meta .meta-item{white-space:nowrap;align-items:center;gap:8px;display:inline-flex}.case-card .meta .meta-sep{background:var(--ink);width:1px;height:.85em}.case-link{color:var(--external-link);font-family:var(--sans);margin:2px 0 16px;font-size:16px;font-weight:500;text-decoration:none;display:inline-block}.case-link:hover{text-decoration:underline}.case-card p{font-size:var(--fs-body);line-height:var(--lh-body);color:var(--reader-body-color);margin:0 0 28px}.case-image{border:1px solid var(--rule);background:#f7f7f5;height:260px;overflow:hidden}.case-image img{object-fit:cover;width:100%;height:100%}.case-image.logo-image{place-items:center;display:grid}.case-image.logo-image img{opacity:.55;object-fit:contain;width:42%;height:auto}.case-image.no-public-image{place-items:center;display:grid}.case-image.no-public-image span{color:var(--soft);letter-spacing:.08em;text-transform:uppercase;font-size:14px}.blog-feature{width:var(--frame);border-bottom:1px solid var(--rule);grid-template-columns:1.35fr .75fr;gap:36px;margin:0 auto;padding:46px 0;display:grid}.feature-image{aspect-ratio:1.55;background:#050505;place-items:center;display:grid}.lock-drawing{aspect-ratio:1;border:14px solid #fffdf1;width:46%;position:relative}.lock-drawing:before{content:"";border:10px solid #fffb22;border-top:0;border-radius:0 0 44px 44px;position:absolute;inset:24%}.feature-caption{grid-template-columns:.75fr 1fr;gap:30px;margin-top:24px;display:grid}.feature-caption h2{font-family:var(--serif);font-size:var(--fs-feature-title);color:var(--ink);margin:0;font-weight:500;line-height:1.05}.feature-caption p{color:var(--muted);font-size:var(--fs-subtitle);margin:0;line-height:1.4}.teaser p,.post-table p{color:var(--muted);font-size:var(--fs-body);line-height:var(--lh-body);margin:0}.teaser-list{display:grid}.teaser{border-bottom:1px solid var(--rule);margin-bottom:24px;padding:0 0 24px}.kicker{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);gap:14px;margin-bottom:10px;font-size:12px;font-weight:500;display:flex}.teaser h3{font-family:var(--serif);font-size:var(--fs-card-title);color:var(--ink);margin:0 0 8px;font-weight:500;line-height:1.1}.post-table h3{font-family:var(--serif);font-size:var(--fs-card-title);color:var(--ink);margin:0 0 4px;font-weight:500;line-height:1.2}.featured-post{width:var(--frame);margin:clamp(8px,2vh,24px) auto 0;color:inherit;border-bottom:1px solid var(--rule);grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:clamp(24px,4vw,48px);margin-inline:auto;padding:clamp(20px,3vw,34px) 0;text-decoration:none;display:grid;position:relative}.featured-post:before{content:"";opacity:0;z-index:0;background:#efece4;transition:opacity .2s;position:absolute;inset:0}.featured-post:hover:before{opacity:1}.featured-post>*{z-index:1;transition:transform .26s cubic-bezier(.2,.7,.2,1);position:relative}.featured-post:hover>*{transform:translate(9px)}.featured-media img{aspect-ratio:545/361;object-fit:cover;width:100%;height:auto;display:block}.featured-title{font-family:var(--serif);letter-spacing:-.015em;color:var(--ink);text-wrap:balance;margin:0;font-size:clamp(28px,3vw,40px);font-weight:500;line-height:1.06}.featured-dek{max-width:52ch;color:var(--muted);margin:12px 0 0;font-size:16px;line-height:1.55}.featured-intro{max-width:60ch;color:var(--muted);margin:14px 0 0;font-size:16px;line-height:1.6}.featured-more{color:var(--ink);align-items:center;gap:10px;margin-top:22px;font-size:16px;font-weight:500;display:inline-flex}.featured-more .arrow{font-size:18px;transition:transform .22s cubic-bezier(.2,.7,.2,1)}.featured-post:hover .featured-more .arrow{transform:translate(6px)}@media (prefers-reduced-motion:reduce){.featured-post>*,.featured-post:hover>*,.featured-post:hover .featured-more .arrow{transform:none}}@media (width<=760px){.featured-post{grid-template-columns:1fr;gap:18px;padding:20px 0 26px}.featured-media img{aspect-ratio:4/5;object-fit:cover;height:auto}.featured-title{text-wrap:pretty;font-size:28px}.featured-more{margin-top:18px}}.post-table{width:var(--frame);border-bottom:1px solid var(--rule);grid-template-columns:1fr 1fr;margin:0 auto 90px;display:grid}.post-row{border-bottom:1px solid var(--rule);grid-template-columns:140px minmax(0,1fr);align-items:start;gap:24px;padding:26px 0;display:grid;position:relative}.post-row:nth-child(odd){border-right:1px solid var(--rule);padding-right:40px}.post-row:nth-child(2n){padding-left:40px}.post-thumb{background:#f1f0ea;align-self:start;width:140px;height:140px;overflow:hidden}.post-thumb img,.post-thumb-empty{object-fit:cover;width:100%;height:100%;display:block}.post-thumb-empty{background:linear-gradient(135deg,#edece6,#e2e0d8)}.post-excerpt{margin-top:8px}.post-more{color:var(--ink);align-items:center;gap:8px;margin-top:14px;font-size:15px;font-weight:500;display:inline-flex}.post-more .arrow{color:inherit;font-size:16px;transition:transform .22s cubic-bezier(.2,.7,.2,1)}.post-row:hover .post-more .arrow{transform:translate(6px)}.post-row:before{content:"";opacity:0;z-index:0;background:#efece4;border-radius:0;transition:opacity .17s;position:absolute;inset:0}.post-row:hover:before{opacity:1}.post-row>*{z-index:1;transition:transform .22s cubic-bezier(.2,.7,.2,1);position:relative}.post-row:hover>*{transform:translate(8px)}.post-kicker{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px;font-size:12px;font-weight:500;display:flex}.post-kicker .k-item{white-space:nowrap;align-items:center;gap:8px;display:inline-flex}.post-kicker .k-sep{background:var(--ink);width:1px;height:.85em}@media (prefers-reduced-motion:reduce){.post-row>*,.post-row:hover>*,.post-row:hover .post-more .arrow{transform:none}}.paper-list{width:var(--frame);margin:0 auto;padding:40px 0 84px}.paper-row{border-bottom:1px solid var(--rule);grid-template-columns:1fr 1.15fr 150px;align-items:center;gap:42px;padding:21px 0;display:grid}.paper-row h2{font-family:var(--serif);font-size:var(--reader-subsection-title-size);font-weight:var(--reader-section-title-weight);line-height:var(--reader-section-title-line-height);margin:0}.paper-row p{color:var(--muted);margin:0;font-size:19px;line-height:1.22}.paper-row a{color:var(--ink);font-family:var(--serif);white-space:nowrap;justify-self:end;font-size:18px;font-weight:500}.paper-row a.ext{color:var(--external-link)}.article-shell{width:var(--frame);margin:0 auto;padding:42px 0 90px}.article-theme-switch{background:#f1f1ef;border-radius:6px;flex:none;grid-template-columns:repeat(2,23px);padding:2px;display:grid}.article-theme-switch button{width:23px;height:23px;color:var(--soft);cursor:pointer;background:0 0;border:0;border-radius:5px;place-items:center;padding:0;display:grid}.article-theme-switch button.is-active{background:var(--page);color:var(--ink);box-shadow:0 1px 3px #1a191629}.article-theme-switch svg{fill:currentColor;width:14px;height:14px}.header-actions{padding-right:58px}.article-theme-switch{position:absolute;top:50%;right:16px;transform:translateY(-50%)}.article-theme-switch button:hover,.article-theme-switch button:focus-visible{color:var(--ink)}html[data-article-theme=dark]{color-scheme:dark;--page:#14140f;--ink:#e9e5d8;--text:#e9e5d8;--muted:#b3ad9c;--soft:#8e8879;--rule:#e9e5d829;--accent:#9eb7ad;--external-link:#f0c75e;--footer:#0e0e0b;--reader-body-color:#e9e5d8}html[data-article-theme=dark] .site-header .logo img{filter:brightness(0)invert()}html[data-article-theme=dark] .editorial-page .page-hero p,html[data-article-theme=dark] .text-block h3,html[data-article-theme=dark] .case-card h3{color:var(--ink)}html[data-article-theme=dark] .article-theme-switch{background:#24231d}html[data-article-theme=dark] .article-theme-switch button.is-active{background:#3a382f;box-shadow:0 1px 3px #0000006b}html[data-article-theme=dark] .article-page .meta-listen-icon,html[data-article-theme=dark] .article-page .audio-player .ap-play{background:var(--external-link);color:#14140f}html[data-article-theme=dark] .article-page .audio-player .ap-play:hover,html[data-article-theme=dark] .article-page .audio-player .ap-play:focus-visible{color:#14140f;background:#ffdb7a}html[data-article-theme=dark] .article-page .audio-player,html[data-article-theme=dark] .article-page .focus-exit{background:var(--page)}html[data-article-theme=dark] .article-page .article-tools .focus-toggle{background:#24231d}html[data-article-theme=dark] .article-page .text-size-control button{color:var(--ink)}html[data-article-theme=dark] .article-page .text-size-control button:hover,html[data-article-theme=dark] .article-page .text-size-control button:focus-visible{background:#24231d}html[data-article-theme=dark] .article-page .text-size-control button.is-active{background:var(--external-link);color:#14140f}html[data-article-theme=dark] .case-link,html[data-article-theme=dark] .paper-row a.ext,html[data-article-theme=dark] .paper-links a,html[data-article-theme=dark] .es-secondary,html[data-article-theme=dark] .lib-row-cta--ext{color:var(--external-link)}html[data-article-theme=dark] .pub-cta-rec{background:var(--external-link);color:#14140f}html[data-article-theme=dark] .pub-cta-rec:hover,html[data-article-theme=dark] .pub-cta-rec:focus-visible{background:#ffdb7a}html[data-article-theme=dark] .article-page .callout,html[data-article-theme=dark] .article-page .legacy-content .interactive-note,html[data-article-theme=dark] .article-page .legacy-content .tool-panel,html[data-article-theme=dark] .article-page .legacy-content .scenario-box,html[data-article-theme=dark] .article-page .legacy-content .article-callout,html[data-article-theme=dark] .article-page .legacy-content .detail,html[data-article-theme=dark] .article-page .legacy-content .ux-demo,html[data-article-theme=dark] .article-page .legacy-content .ifig,html[data-article-theme=dark] .article-page .legacy-content .xfig,html[data-article-theme=dark] .article-page .legacy-content .boundary-visual,html[data-article-theme=dark] .article-page .legacy-content .scale-demo,html[data-article-theme=dark] .article-page .legacy-content .genre-lab,html[data-article-theme=dark] .article-page .legacy-content .lock-actor,html[data-article-theme=dark] .article-page .legacy-content .route-surface{background:#1d1c16}html[data-article-theme=dark] .article-page .legacy-content .demo-card,html[data-article-theme=dark] .article-page .legacy-content .flow-step,html[data-article-theme=dark] .article-page .legacy-content .boundary-card,html[data-article-theme=dark] .article-page .legacy-content .scale-demo>div,html[data-article-theme=dark] .article-page .legacy-content .genre-stage>div,html[data-article-theme=dark] .article-page .legacy-content .lock-card,html[data-article-theme=dark] .article-page .legacy-content .actor-card{background:var(--page)}.back-link{color:var(--accent);font-size:16px}.article-hero{text-align:center;border-bottom:1px solid var(--rule);flex-direction:column;align-items:center;gap:18px;padding:44px 0 28px;display:flex}.article-hero h1{max-width:20ch;color:var(--ink);font-family:var(--serif);letter-spacing:-.02em;text-wrap:balance;margin:0;font-size:clamp(38px,4vw,56px);font-weight:500;line-height:1.05}.article-tags{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.article-hero-main{display:block}.article-kicker{color:var(--accent);text-transform:uppercase;letter-spacing:.13em;margin:0 0 14px;font-size:12.5px;font-weight:500}.article-hero .article-dek{max-width:620px;color:var(--muted);font-size:var(--fs-subtitle);margin:0;line-height:1.4}.article-meta{border-bottom:1px solid var(--rule);grid-template-columns:.85fr repeat(3,1fr);align-items:center;gap:26px;padding:12px 0;display:grid}.audio-pill{align-items:center;gap:16px;display:flex}.audio-value{align-items:center;gap:10px;display:flex}.play{background:var(--ink);color:#fff;cursor:pointer;border:0;border-radius:50%;flex:none;place-items:center;width:30px;height:30px;transition:background .15s;display:grid}.play svg{margin-left:1px;display:block}.play svg[data-open-icon-pause]{margin-left:0}.play:hover{background:#000}.audio-label{font-weight:500}.meta-label{color:var(--soft);text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:500}.meta-value{margin-top:4px;font-size:15px}.hero-image{object-fit:cover;width:100%;height:355px;margin:12px 0 26px}.blog-visual{border:1px solid var(--rule);background:#fafaf8;grid-template-columns:140px 1fr;align-items:center;gap:20px;min-height:230px;margin:18px 0 28px;padding:22px;display:grid}.lock-mark{background:var(--page);border:2px solid #1a19164d;border-radius:7px;width:112px;height:112px;margin:auto;position:relative}.lock-mark:before{content:"";border:2px solid #1a19164d;border-bottom:0;border-radius:42px 42px 0 0;width:60px;height:64px;position:absolute;top:-54px;left:24px}.lock-mark span{background:#4f6f638c;border-radius:999px;width:14px;height:34px;position:absolute;top:42px;left:48px}.word-stream{flex-wrap:wrap;align-content:center;gap:10px;display:flex}.word-stream span{border:1px solid var(--rule);background:var(--page);min-height:42px;color:var(--muted);font-family:var(--serif);border-radius:999px;justify-content:center;align-items:center;padding:9px 14px;font-size:clamp(18px,2.4vw,25px);display:inline-flex}.article-layout{grid-template-columns:190px minmax(0,760px);align-items:start;gap:56px;padding-top:36px;display:grid}.article-side{align-content:start;gap:12px;display:grid;position:sticky;top:22px}.download-side{border:1px solid var(--rule);color:var(--ink);border-radius:8px;align-items:center;gap:8px;padding:11px 14px;font-size:14.5px;font-weight:400;display:inline-flex}.toc{border-left:1px solid var(--rule);gap:11px;padding-left:17px;font-size:14.5px;display:grid}.toc a{color:var(--soft);line-height:1.3;transition:color .15s}.toc a.toc-active{color:var(--ink);font-weight:500}.article-content a{color:var(--accent);text-underline-offset:3px;text-decoration:underline 1px #4f6f6373;transition:color .15s,text-decoration-color .15s}.article-content a:hover{text-decoration-color:currentColor}.article-content .file-download,.article-content .bookmark-card a{color:var(--ink);text-decoration:none}.article-content h2{font-family:var(--serif);font-size:var(--reader-section-title-size);font-weight:var(--reader-section-title-weight);line-height:var(--reader-section-title-line-height);margin:0 0 16px}.article-content h3{font-family:var(--serif);font-weight:var(--reader-section-title-weight);font-size:var(--reader-subsection-title-size);line-height:var(--reader-section-title-line-height);color:var(--ink);margin:26px 0 12px}.article-content p{margin:0 0 18px;font-size:17px;line-height:1.6}.article-content section{border-bottom:1px solid var(--rule);margin-bottom:30px;padding-bottom:30px}.article-content figure{margin:26px 0}.article-content figure img{object-fit:cover;width:100%;max-height:420px}.article-content figcaption{color:var(--soft);margin-top:8px;font-size:13px;line-height:1.3}.pullquote{border-left:3px solid var(--accent);color:var(--ink);font-family:var(--article-serif,var(--serif));margin:28px 0;padding-left:18px;font-size:21px;font-style:italic;line-height:1.14}.callout{border-left:2px solid var(--accent);background:#f2f4f3;border-radius:0 7px 7px 0;margin:24px 0;padding:18px 22px}.article-content .callout p{color:var(--ink);font-family:var(--sans);margin:0;font-size:17px;line-height:1.6}.article-content .pullquote p{font-family:inherit;font-size:inherit;line-height:inherit;margin:0}.audio-empty{width:30px;height:30px;display:block}.article-end{border-top:1px solid var(--rule);margin:48px 0 0;padding:32px 0 0}.article-keywords{margin-bottom:34px}.kw-label{color:var(--soft);letter-spacing:.08em;text-transform:uppercase;margin-bottom:12px;font-size:11px;font-weight:500;display:block}.kw-list{flex-wrap:wrap;gap:8px;display:flex}.share-row{gap:12px;margin-bottom:48px;display:flex}.share-row a{border:1px solid var(--rule);width:28px;height:28px;color:var(--ink);place-items:center;font-size:13px;display:grid}.article-end h2{font-family:var(--serif);margin:0 0 24px;font-size:30px}.related-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;display:grid}.related-card{border:1px solid var(--rule);background:#fafaf8;border-radius:10px;align-content:start;gap:10px;padding:22px 20px;text-decoration:none;transition:border-color .15s;display:grid}.related-card:hover{border-color:var(--soft)}.related-tag{justify-self:start}.related-card h3{font-family:var(--serif);color:var(--ink);margin:0;font-size:20px;font-weight:500;line-height:1.15}.related-card p{color:var(--muted);margin:0;font-size:15px;line-height:1.5}.related-more{color:var(--accent);margin-top:2px;font-size:14px;font-weight:500}.site-footer{background:var(--footer);color:#f4f2ee;padding:42px 0 54px}.footer-grid{grid-template-columns:1.6fr 1fr 1fr;gap:72px;display:grid}.site-footer .logo img{filter:brightness(0)invert();opacity:.92;height:14px}.footer-brand{gap:38px;display:grid}.footer-brand p,.footer-brand a,.site-footer nav a{color:#bdb9b2;font-size:14px}.site-footer nav{align-content:start;gap:12px;display:grid}.tag,.ptag,.kw{--tag-clip:polygon(9px 0, 100% 0, 100% 100%, 9px 100%, 0 50%);font-family:var(--sans);letter-spacing:.01em;color:var(--ink);background:var(--ink);white-space:nowrap;clip-path:var(--tag-clip);border:0;flex:none;align-items:center;gap:0;padding:3px 11px 3px 18px;font-size:11px;font-weight:500;line-height:1.5;text-decoration:none;display:inline-flex;position:relative}.tag{place-self:center start}.tag:after,.ptag:after,.kw:after{content:"";background:var(--page);clip-path:var(--tag-clip);z-index:0;position:absolute;inset:1px}.tag>span,.ptag>span,.kw>span{z-index:1;position:relative}.tag svg{display:none}.tag:before,.ptag:before,.kw:before{content:"";border:1px solid var(--ink);z-index:1;border-radius:50%;width:4px;height:4px;position:absolute;top:50%;left:7px;transform:translateY(-50%)}.tag--accent{color:var(--accent);border-color:#4f6f6366}.tag--solid{color:var(--ink);background:#f0eee6;border-color:#0000}.tag--soft{border-radius:8px}.tag svg{flex:none;width:14px;height:14px}a.tag,button.tag{cursor:pointer;transition:border-color .15s,color .15s,background .15s}a.tag:hover,button.tag:hover{border-color:var(--ink);color:var(--ink)}.filter-bar{flex-wrap:wrap;gap:8px;display:flex}.filter-tab{border:1px solid var(--rule);background:var(--page);color:var(--muted);font-family:var(--sans);cursor:pointer;border-radius:999px;align-items:center;gap:8px;padding:8px 16px;font-size:15px;font-weight:500;transition:border-color .15s,color .15s,background .15s;display:inline-flex}.filter-tab .ft-icon{flex:none;display:inline-flex}.filter-tab .ft-icon svg{width:17px;height:17px}.filter-tab:hover{border-color:var(--ink);color:var(--ink)}.filter-tab.is-active{background:var(--ink);border-color:var(--ink);color:#fff}.pagination{font-family:var(--sans);align-items:center;gap:6px;display:flex}.pagination button{border:1px solid var(--rule);background:var(--page);min-width:38px;height:38px;color:var(--muted);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;padding:0 10px;font-size:14px;transition:border-color .15s,color .15s,background .15s;display:inline-flex}.pagination button:hover:not(:disabled){border-color:var(--ink);color:var(--ink)}.pagination button.is-active{background:var(--ink);border-color:var(--ink);color:#fff;font-weight:500}.pagination button:disabled{opacity:.4;cursor:default}.pagination .ellipsis{min-width:20px;color:var(--soft);cursor:default;background:0 0;border:0}.pagination .ellipsis:hover{color:var(--soft)}.pub-toolbar{width:var(--frame);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:18px 24px;margin:0 auto;padding:34px 0 26px;display:flex}.pub-toolbar .filter-bar{flex:auto}.pub-count{color:var(--ink);font-family:var(--serif);white-space:nowrap;font-variant-numeric:tabular-nums;flex:none;font-size:17px;font-weight:500}.pub-num{min-width:1.7em;color:var(--ink);font-family:var(--serif);font-variant-numeric:tabular-nums;text-align:center;margin-right:14px;font-size:1em;font-weight:500;display:inline-block}.pub-list{width:var(--frame);margin:0 auto}.pub-row{border-bottom:1px solid var(--rule);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:28px;padding:18px 0;display:grid}.pub-row[hidden]{display:none}.pub-main{gap:4px;min-width:0;display:grid}.pub-tags{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.pub-title{font-family:var(--serif);color:var(--ink);font-size:19px;font-weight:500;line-height:1.2}.pub-sub{color:var(--muted);font-size:14px;line-height:1.35}.pub-actions{flex-wrap:wrap;justify-content:flex-end;align-self:end;gap:8px;display:flex}.pub-cta{white-space:nowrap;border:1px solid #0000;border-radius:8px;align-items:center;gap:7px;padding:8px 15px;font-size:14px;font-weight:500;text-decoration:none;transition:background .15s,border-color .15s;display:inline-flex}.pub-cta-icon{font-size:13px;line-height:1}.pub-cta-rec{background:var(--philpapers);color:#fff}.pub-cta-rec:hover{background:var(--philpapers-hover)}.pub-cta-pdf{background:var(--ink);color:#fff}.pub-cta-pdf:hover{background:#000}.pub-pagination{width:var(--frame);justify-content:center;margin:34px auto 24px}@media (width<=760px){:root{--frame:calc(100vw - 44px);--fs-subtitle:var(--reader-subtitle-size);--fs-subhead:var(--reader-subsection-title-size);--fs-card-title:var(--reader-subsection-title-size);--fs-feature-title:var(--reader-section-title-size);--fs-body:var(--reader-body-size);--lh-subhead:var(--reader-section-title-line-height);--lh-body:var(--reader-body-line-height)}.article-theme-switch{display:none}.header-actions{padding-right:0}.desktop-nav{display:none}.menu-button{display:block}.nav-float .menu-button,.menu-open .menu-button{right:18px;bottom:calc(18px + env(safe-area-inset-bottom));z-index:30;background:var(--ink);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:52px;height:52px;padding:0;transition:bottom .3s cubic-bezier(.2,.7,.2,1),background .16s;animation:.22s cubic-bezier(.2,.7,.2,1) menu-fab-in;display:flex;position:fixed;box-shadow:0 6px 18px #1a191647}.nav-float .menu-button span,.menu-open .menu-button span{background:#fff;width:20px;height:2px;margin:0}@keyframes menu-fab-in{0%{opacity:0;transform:scale(.86)}to{opacity:1;transform:none}}body.audio-open .menu-button{bottom:196px}@media (prefers-reduced-motion:reduce){.nav-float .menu-button,.menu-open .menu-button{transition:background .16s;animation:none}}.mobile-panel{z-index:20;background:var(--footer);padding:max(48px, env(safe-area-inset-top)) 24px calc(96px + env(safe-area-inset-bottom));opacity:0;visibility:hidden;pointer-events:none;flex-direction:column;transition:opacity .24s,transform .3s cubic-bezier(.2,.7,.2,1),visibility .24s;display:flex;position:fixed;inset:0;transform:translateY(-14px)}.menu-open .mobile-panel{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}.mobile-nav a{opacity:0;transition:opacity .26s,transform .34s cubic-bezier(.2,.7,.2,1);transform:translateY(12px)}.menu-open .mobile-nav a{opacity:1;transform:translateY(0)}.menu-open .mobile-nav a:first-child{transition-delay:70ms}.menu-open .mobile-nav a:nth-child(2){transition-delay:.12s}.menu-open .mobile-nav a:nth-child(3){transition-delay:.17s}.menu-open .mobile-nav a:nth-child(4){transition-delay:.22s}.menu-open .mobile-nav a:nth-child(5){transition-delay:.27s}@media (prefers-reduced-motion:reduce){.mobile-panel,.mobile-nav a{transition:opacity .12s,visibility .12s;transform:none}}.nav-on-dark .menu-button,.menu-open .menu-button{box-shadow:none;background:#ffffff29}.menu-open .menu-button span{opacity:0}.menu-open{overflow:hidden}.menu-button span{transition:transform .16s,opacity .16s,background .16s}.menu-open .menu-button:before,.menu-open .menu-button:after{content:"";background:#fff;height:2px;position:absolute;top:25px;left:16px;right:16px}.menu-open .menu-button:before{transform:rotate(45deg)}.menu-open .menu-button:after{transform:rotate(-45deg)}.mobile-nav{flex-direction:column;flex:1;display:flex}.mobile-nav a{color:#fff;font-family:var(--serif);letter-spacing:-.012em;border-bottom:1px solid #fff3;flex:1;align-items:center;padding:12px 0;font-size:clamp(3.375rem,16vw,4.4rem);font-weight:500;line-height:1;display:flex}.mobile-nav a span[aria-hidden=true]{flex:none;margin-left:auto;font-size:.55em}.page-shell{padding:38px 0 70px}.page-hero,.section-grid,.blog-feature,.article-hero,.article-layout,.paper-row,.footer-grid{grid-template-columns:1fr;gap:22px}.page-hero{padding:28px 0 42px}.editorial-page .page-hero{width:var(--frame);padding:48px 0 70px}.editorial-page .page-hero:after{bottom:28px}.page-hero h1{font-size:clamp(42px,11.5vw,50px)}.page-hero p{color:#4f4d48;font-family:var(--sans);font-size:18px;font-style:normal;font-weight:400;line-height:1.42}.editorial-page .page-hero p{color:#4f4d48;font-size:18px;line-height:1.42}.section-grid{gap:32px;padding:34px 0 52px}.about-page .section-grid{grid-template-columns:minmax(0,1fr);gap:28px;padding:38px 0 46px}.about-page .text-block,.about-page .text-block+.text-block{padding-top:26px;padding-bottom:26px}.about-page .text-block:first-child{padding-top:0}.about-page .section-grid h2{font-size:14px}.about-page .text-block h3{font-size:24px}.about-page .text-block p,.work-page .case-card p{font-size:18px;line-height:1.58}.case-grid,.blog-feature{grid-template-columns:1fr}.work-page .case-card{grid-template-columns:minmax(0,1fr);grid-template-areas:"title""meta""link""body""image";gap:0;padding:42px 0 48px}.work-page .case-image{height:230px;margin-top:28px}.work-page .case-card h3{font-size:32px}.work-page .case-card .meta{font-size:13px}.case-image{height:230px}.case-link{font-size:18px}.feature-caption,.post-table{grid-template-columns:1fr}.post-row,.post-row:nth-child(odd),.post-row:nth-child(2n){border-right:none;grid-template-columns:minmax(0,1fr);gap:12px;padding-left:0;padding-right:0}.post-thumb{width:100%;height:170px}.post-thumb:has(.post-thumb-empty){display:none}.article-hero h1{font-size:clamp(30px,8.8vw,42px)}.article-hero .article-dek{font-size:18px}.article-meta{grid-template-columns:1fr 1fr}.toc{display:none}.article-side{position:static}.hero-image{height:auto;margin:8px 0 6px}.article-layout{padding-top:14px}.article-shell{width:auto;padding:24px 20px 64px}.article-content p{font-size:17px;line-height:1.62}.article-content h2{font-size:23px;line-height:1.12}.article-content section{margin-bottom:22px;padding-bottom:22px}.article-side:not(:has(.download-side)){display:none}.blog-visual{grid-template-columns:1fr;gap:24px;min-height:0}.lock-mark{margin:0 auto}.site-footer{padding:34px 0 42px}.related-grid{grid-template-columns:1fr}.paper-row{gap:12px}.paper-row a{justify-self:start}.pub-row{grid-template-columns:1fr;align-items:start;gap:16px}.pub-title{font-size:22px}.pub-actions{justify-content:flex-start}}.legacy-content .blog-section,.legacy-content section{border-bottom:1px solid var(--rule);margin-bottom:30px;padding-bottom:30px}.legacy-content .blog-section:last-child,.legacy-content section:last-child{border-bottom:0}.legacy-content .intro-section>p:first-child,.legacy-content .section-lead,.legacy-content .lede{color:var(--muted);font-size:20px;line-height:1.42}.legacy-content blockquote,.legacy-content .pullquote,.legacy-content .blog-pullquote{border-left:3px solid var(--accent);color:var(--ink);font-family:var(--serif);font-size:var(--reader-quote-size);font-weight:var(--reader-quote-weight);line-height:var(--reader-section-title-line-height);background:0 0;margin:28px 0;padding-left:18px}.legacy-content blockquote p,.legacy-content .pullquote p,.legacy-content .blog-pullquote p{font-family:inherit;font-size:inherit;line-height:inherit}.legacy-content .interactive-note,.legacy-content .tool-panel,.legacy-content .scenario-box,.legacy-content .article-callout,.legacy-content .detail{border:1px solid var(--rule);background:#f7f7f5;margin:24px 0;padding:18px}.legacy-content .ihint,.legacy-content .note-label{color:var(--soft);letter-spacing:.08em;text-transform:uppercase;margin-bottom:8px;font-size:11px;font-weight:500}.legacy-content .ux-demo,.legacy-content .ifig,.legacy-content .xfig,.legacy-content .boundary-visual,.legacy-content .scale-demo,.legacy-content .genre-lab,.legacy-content .lock-actor,.legacy-content .route-surface{border:1px solid var(--rule);background:var(--page);margin:28px 0;padding:18px}.legacy-content .demo-grid,.legacy-content .list-columns,.legacy-content .flow-track,.legacy-content .boundary-visual,.legacy-content .scale-demo{gap:14px;display:grid}.legacy-content .demo-grid,.legacy-content .list-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.legacy-content .flow-track{grid-template-columns:repeat(4,minmax(0,1fr))}.legacy-content .demo-card,.legacy-content .flow-step,.legacy-content .genre-controls button,.legacy-content .xcontrols button,.legacy-content .route-grid button{appearance:none;border:1px solid var(--rule);background:var(--page);width:100%;min-height:52px;color:var(--text);font:inherit;text-align:left;cursor:pointer;border-radius:0;gap:10px;padding:14px;display:grid}.legacy-content .demo-card span,.legacy-content .boundary-card span,.legacy-content .scale-demo span{color:var(--soft);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:500}.legacy-content .demo-card label{gap:7px;font-weight:500;display:grid}.legacy-content .demo-card input{border:1px solid var(--rule);width:100%;min-height:42px;color:var(--text);font:inherit;border-radius:0;padding:9px 10px}.legacy-content .demo-card small{color:var(--muted)}.legacy-content .demo-card.on,.legacy-content .flow-step.on,.legacy-content .genre-controls button.on,.legacy-content .xcontrols button.on,.legacy-content .route-grid button.on,.legacy-content .demo-card:hover,.legacy-content .flow-step:hover,.legacy-content .genre-controls button:hover,.legacy-content .xcontrols button:hover,.legacy-content .route-grid button:hover{border-color:var(--accent);background:#f7f9f7}.legacy-content .demo-output{max-width:none;color:var(--ink);font-family:var(--serif);margin:16px 0 0;font-size:20px;line-height:1.3}.legacy-content .boundary-visual{grid-template-columns:repeat(2,minmax(0,1fr))}.legacy-content .scale-demo{grid-template-columns:repeat(3,minmax(0,1fr))}.legacy-content .lock-actor,.legacy-content .genre-stage{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.legacy-content .genre-stage{margin-bottom:16px}.legacy-content .xstage,.legacy-content .route-output{border:1px solid var(--rule);border-left:2px solid var(--accent);background:#f7f9f7;margin:0 0 14px;padding:15px 18px}.legacy-content .xstage p,.legacy-content .route-output p{max-width:none;color:var(--ink);font-family:var(--serif);margin:0;font-size:19px;line-height:1.34}.legacy-content .route-output strong{color:var(--soft);letter-spacing:.08em;text-transform:uppercase;margin-bottom:6px;font-size:11px;font-weight:500;display:block}.legacy-content .xcontrols,.legacy-content .genre-controls,.legacy-content .route-grid{flex-wrap:wrap;gap:8px;display:flex}.legacy-content .xcontrols button,.legacy-content .genre-controls button,.legacy-content .route-grid button{width:auto;min-width:0;min-height:0;padding:9px 14px;font-size:14px;font-weight:500;display:inline-block}.legacy-content .irow{border:1px solid var(--rule);background:var(--page);cursor:pointer;grid-template-columns:minmax(0,34%) minmax(0,1fr);gap:16px;padding:13px 14px;transition:border-color .15s,background .15s;display:grid}.legacy-content .irow+.irow{margin-top:8px}.legacy-content .irow .it-t{color:var(--ink);font-weight:500}.legacy-content .irow .it-d{color:var(--muted);font-size:15px;line-height:1.5}.legacy-content .irow:hover,.legacy-content .irow.on{border-color:var(--accent);background:#f7f9f7}.legacy-content .ifig figcaption{color:var(--soft);margin-top:10px;font-size:13px}.legacy-content .boundary-card,.legacy-content .scale-demo>div,.legacy-content .genre-stage>div,.legacy-content .lock-card,.legacy-content .actor-card{border:1px solid var(--rule);background:var(--page);align-content:start;gap:8px;padding:16px;display:grid}.legacy-content .boundary-card.formal,.legacy-content .lock-card{border-left:2px solid var(--accent)}.legacy-content .boundary-card.semantic,.legacy-content .actor-card{border-left:2px solid var(--soft)}.legacy-content .genre-stage>div span,.legacy-content .lock-card span,.legacy-content .actor-card span{color:var(--soft);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:500}.legacy-content .boundary-card strong,.legacy-content .scale-demo strong,.legacy-content .genre-stage strong,.legacy-content .lock-card strong,.legacy-content .actor-card strong{font-family:var(--serif);color:var(--ink);font-size:19px;font-weight:500;line-height:1.2}.legacy-content .boundary-card p,.legacy-content .scale-demo p,.legacy-content .genre-stage p,.legacy-content .lock-card p,.legacy-content .actor-card p{max-width:none;color:var(--muted);margin:0;font-size:15px;line-height:1.5}.legacy-content .lock-card ol,.legacy-content .actor-card ol{color:var(--text);margin:2px 0 0;padding-left:18px;font-size:14px;line-height:1.6}@media (width<=760px){.legacy-content .demo-grid,.legacy-content .list-columns,.legacy-content .flow-track,.legacy-content .scale-demo,.legacy-content .boundary-visual,.legacy-content .lock-actor,.legacy-content .genre-stage{grid-template-columns:1fr}.legacy-content .irow{grid-template-columns:1fr;gap:4px}}html.js body.reveal .page-shell>*,html.js body.reveal .contact>*,html.js body.reveal .home .frame>*{opacity:0;will-change:opacity, transform;transition:opacity .7s,transform .7s cubic-bezier(.16,.84,.3,1);transform:translateY(26px)}html.js body.reveal .page-shell>.in-view,html.js body.reveal .contact>.in-view,html.js body.reveal .home .frame>.in-view{opacity:1;transform:none}html.js body.reveal .page-shell>:nth-child(2),html.js body.reveal .contact>:nth-child(2),html.js body.reveal .home .frame>:nth-child(2){transition-delay:50ms}html.js body.reveal .page-shell>:nth-child(3),html.js body.reveal .contact>:nth-child(3),html.js body.reveal .home .frame>:nth-child(3){transition-delay:.1s}html.js body.reveal .page-shell>:nth-child(n+4),html.js body.reveal .contact>:nth-child(n+4),html.js body.reveal .home .frame>:nth-child(n+4){transition-delay:.15s}@media (prefers-reduced-motion:reduce){html.js body.reveal .page-shell>*,html.js body.reveal .contact>*,html.js body.reveal .home .frame>*{opacity:1;transition:none;transform:none}}.audio-player{z-index:1000;border-top:1px solid var(--rule);opacity:0;pointer-events:none;background:#fff;width:100%;transition:transform .35s cubic-bezier(.2,.7,.2,1),opacity .35s;position:fixed;bottom:0;left:0;transform:translateY(100%);box-shadow:0 -6px 28px #1a19161a}.audio-player.is-open{opacity:1;pointer-events:auto;transform:none}.audio-player-inner{width:100%;max-width:680px;padding:15px 20px calc(15px + env(safe-area-inset-bottom));box-sizing:border-box;flex-direction:column;gap:11px;margin:0 auto;display:flex}.ap-header{text-align:center;flex-direction:column;align-items:center;gap:2px;display:flex}.ap-overline{text-transform:uppercase;letter-spacing:.08em;color:var(--soft);font-size:11px;font-weight:500}.ap-title{font-family:var(--serif);color:var(--ink);margin:0;font-size:17px;font-weight:500;line-height:1.2}.ap-close{top:12px;right:max(20px, calc((100% - var(--frame)) / 2));color:var(--soft);cursor:pointer;background:0 0;border:0;padding:6px 8px;font-size:15px;line-height:1;position:absolute}.ap-close:hover{color:var(--ink)}.ap-timeline{align-items:center;gap:12px;display:flex}.ap-time{font-variant-numeric:tabular-nums;color:var(--muted);min-width:44px;font-size:13px}.ap-time[data-ap-current]{text-align:right}.ap-time[data-ap-total]{text-align:left}.ap-progress-container{flex:1;align-items:center;height:24px;display:flex;position:relative}.ap-progress{appearance:none;cursor:pointer;z-index:2;background:0 0;width:100%;margin:0;position:relative}.ap-progress:focus{outline:none}.ap-progress::-webkit-slider-runnable-track{background:var(--rule);border-radius:2px;height:3px}.ap-progress::-webkit-slider-thumb{-webkit-appearance:none;background:var(--ink);border-radius:50%;width:12px;height:12px;margin-top:-4.5px;transition:transform .15s;box-shadow:0 2px 4px #0000001f}.ap-progress:hover::-webkit-slider-thumb{transform:scale(1.3)}.ap-progress:active::-webkit-slider-thumb{transform:scale(1.3)}.ap-progress::-moz-range-track{background:var(--rule);border-radius:2px;height:3px}.ap-progress::-moz-range-thumb{background:var(--ink);border:0;border-radius:50%;width:12px;height:12px;box-shadow:0 2px 4px #0000001f}.ap-fill{background:var(--ink);pointer-events:none;z-index:1;border-radius:2px;width:0%;height:3px;position:absolute;top:50%;left:0;transform:translateY(-50%)}.ap-controls{justify-content:center;align-items:center;gap:26px;display:flex;position:relative}.ap-btn{cursor:pointer;color:var(--ink);background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;padding:8px;transition:opacity .2s,transform .1s;display:flex}.ap-btn:hover{opacity:.7}.ap-btn:active{transform:scale(.95)}.ap-btn svg{width:24px;height:24px}.ap-play{background:var(--ink);color:#fff;width:56px;height:56px;box-shadow:0 4px 12px #0000001a}.ap-play:hover{opacity:1;background:#333}.ap-play svg{fill:currentColor;stroke:none;width:28px;height:28px}.ap-speed-group{align-items:center;gap:1px;display:flex;position:absolute;top:50%;right:0;transform:translateY(-50%)}.ap-speed-step{width:24px;height:40px;font-family:var(--sans);color:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-size:17px;font-weight:600;line-height:1;transition:opacity .15s}.ap-speed-step:disabled{opacity:.28;cursor:default}.ap-speed-rate{font-family:var(--sans);text-align:center;font-variant-numeric:tabular-nums;width:38px;font-size:13px;font-weight:600}@media (width<=760px){.ap-controls{gap:18px}.ap-speed-step{width:20px;font-size:15px}.ap-speed-rate{width:34px;font-size:12px}}@media (prefers-reduced-motion:reduce){.audio-player{transition:opacity .2s}}.sr-only{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.article-shell{--article-serif:var(--reader-font-family);--article-body-size:17px;width:min(1320px,100% - 64px);font-family:var(--article-serif);padding:16px 0 96px;position:relative}.article-shell .back-link{color:var(--accent);font-family:var(--sans);align-items:center;gap:7px;font-size:14px;font-weight:500;display:inline-flex;position:absolute;top:17px;left:0}.article-shell .article-hero{gap:16px;padding:38px 0 28px}.article-published{color:var(--muted);font-family:var(--sans);letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:11px;font-weight:600}.article-shell .article-hero h1{max-width:var(--reader-title-measure);font-family:var(--article-serif);font-size:var(--reader-title-size);font-weight:var(--reader-title-weight);line-height:var(--reader-title-line-height);letter-spacing:var(--reader-title-letter-spacing)}.article-shell .article-hero .article-dek{max-width:var(--reader-subtitle-measure);font-family:var(--article-serif);font-size:var(--reader-subtitle-size);font-style:italic;font-weight:var(--reader-subtitle-weight);line-height:var(--reader-subtitle-line-height)}.ap-time{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}.ap-progress,.ap-volume input{accent-color:var(--ink)}.article-shell .hero-image{object-fit:contain;width:100%;height:auto;max-height:none;margin:0;display:block}.article-shell .article-layout{grid-template-columns:minmax(150px,190px) minmax(0,720px) minmax(150px,180px);justify-content:center;gap:38px;padding-top:32px;display:grid}.article-shell .article-side,.article-tools{align-self:start;position:sticky;top:24px}.article-shell .article-side,.article-shell .article-tools,.article-shell .article-meta .meta-label{font-family:var(--sans)}.side-label{color:var(--soft);letter-spacing:.13em;text-transform:uppercase;margin:0 0 14px;font-size:10px;font-weight:600}.article-shell .toc{gap:13px;padding-left:14px;font-size:13px}.article-main{min-width:0}.article-main .article-meta{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-bottom:22px;padding:0 0 16px}.article-meta-listen{color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px;padding:0;display:grid}.article-meta-listen>span:last-child{gap:2px;display:grid}.meta-listen-icon{background:var(--ink);color:#fff;border-radius:50%;place-items:center;width:32px;height:32px;display:grid}.meta-listen-icon svg{fill:currentColor;width:17px;height:17px}.article-meta-listen:hover .meta-label,.article-meta-listen:focus-visible .meta-label{color:var(--accent)}.article-main .meta-value{font-family:var(--serif);font-size:16px}.article-shell .article-content{color:var(--reader-body-color);font-family:var(--article-serif);font-size:var(--article-body-size);font-weight:var(--reader-body-weight);line-height:var(--reader-body-line-height);letter-spacing:var(--reader-body-letter-spacing);word-spacing:var(--reader-body-word-spacing)}.article-shell .article-content p,.article-shell .article-content ul,.article-shell .article-content ol{font-family:inherit;font-size:inherit;line-height:inherit}.article-shell .article-content strong{font-weight:var(--reader-emphasis-weight)}.article-shell .article-content h1,.article-shell .article-content h2,.article-shell .article-content h3,.article-shell .article-content h4,.article-shell .article-content h5,.article-shell .article-content h6{font-family:var(--article-serif);font-weight:var(--reader-section-title-weight)}.article-shell .article-content blockquote,.article-shell .article-content .pullquote,.article-shell .article-content .blog-pullquote,.article-shell .article-content blockquote p,.article-shell .article-content .pullquote p,.article-shell .article-content .blog-pullquote p{font-family:var(--article-serif);font-style:italic;font-weight:var(--reader-quote-weight)}.article-tools{align-content:start;gap:2px;display:grid}.article-tools>button,.article-tools>a{width:100%;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;justify-content:flex-start;align-items:center;gap:10px;padding:9px 0;font-size:13px;display:flex}.article-tools>button svg,.article-tools>a svg{fill:currentColor;flex:0 0 18px;width:18px;height:18px}.article-tools>button:hover,.article-tools>a:hover{color:var(--accent)}.share-status{min-height:18px;color:var(--accent);margin:8px 0 0;font-size:12px}.text-size-control{margin-top:18px;padding:12px 0 0}.text-size-control>span{color:var(--soft);letter-spacing:.12em;text-transform:uppercase;margin-bottom:12px;font-size:10px;font-weight:600;display:block}.text-size-control>div{align-items:center;gap:10px;display:flex}.text-size-control button{width:34px;height:34px;color:var(--ink);font-family:var(--serif);cursor:pointer;background:0 0;border:0}.text-size-control button:first-child{font-size:13px}.text-size-control button:nth-child(2){font-size:17px}.text-size-control button:last-child{font-size:22px}.text-size-control button.is-active{background:#ece9e2}.article-tools .focus-toggle{background:#f2f0ea;margin-top:16px;padding:10px 12px}.article-post-nav{border-top:1px solid var(--rule);grid-template-columns:repeat(3,minmax(0,1fr));align-items:center;width:min(720px,100%);margin:24px auto 0;padding:10px 0 48px;display:grid}.article-post-nav>a,.article-post-nav>span{color:#312f2b;font-family:var(--sans);align-items:center;gap:3px;font-size:15px;font-weight:500;line-height:normal;text-decoration:none;display:inline-flex}html[data-article-theme=dark] .article-post-nav>a,html[data-article-theme=dark] .article-post-nav>span,.article-post-nav>a:hover{color:var(--ink)}.article-post-nav__previous{justify-self:start}.article-post-nav__top{justify-self:center}.article-post-nav__next{justify-self:end}.article-post-nav .is-disabled{color:var(--rule);cursor:default;user-select:none}.focus-exit{display:none}.article-shell.is-focus{width:min(760px,100% - 48px)}.article-shell.is-focus .back-link,.article-shell.is-focus .article-published,.article-shell.is-focus .hero-image,.article-shell.is-focus .article-side,.article-shell.is-focus .article-tools,.article-shell.is-focus .article-meta,.article-shell.is-focus .article-post-nav,.article-shell.is-focus+.audio-player:not(.is-open){display:none}.article-shell.is-focus .article-layout{grid-template-columns:minmax(0,720px);padding-top:48px}.article-shell.is-focus .focus-exit{z-index:900;border:1px solid var(--rule);background:var(--paper);color:var(--ink);font:inherit;cursor:pointer;padding:9px 12px;font-size:12px;display:block;position:fixed;top:18px;right:18px}.audio-player{box-shadow:0 -2px 14px #1a191614}.audio-player-inner{grid-template-columns:230px minmax(0,1fr);align-items:center;gap:28px;max-width:none;min-height:72px;padding:10px max(24px,50% - 660px);display:grid}.audio-player .ap-header{text-align:left;grid-template-columns:52px minmax(0,1fr);align-items:center;gap:12px;min-width:0;display:grid}.audio-player .ap-header img{object-fit:cover;width:52px;height:52px}.audio-player .ap-header>span{gap:3px;min-width:0;display:grid}.audio-player .ap-header strong,.audio-player .ap-header small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.audio-player .ap-header strong{font-family:var(--serif);font-size:14px;font-weight:500}.audio-player .ap-header small{color:var(--soft);font-size:11px}.audio-player .ap-controls{grid-template-columns:30px 38px 30px 42px minmax(120px,1fr) 48px 94px 92px 48px;justify-content:stretch;gap:10px;display:grid}.audio-player .ap-play{width:36px;height:36px;box-shadow:none}.audio-player .ap-play svg{width:19px;height:19px}.audio-player .ap-time[data-ap-current],.audio-player .ap-time[data-ap-total]{text-align:center;min-width:0}.audio-player .ap-speed-group{justify-content:center;position:static;transform:none}.ap-skip,.audio-player .ap-close{color:var(--muted);font:inherit;cursor:pointer;background:0 0;border:0;font-size:11px}.audio-player .ap-skip{color:var(--ink);place-items:center;padding:3px;display:grid}.audio-player .ap-skip svg{fill:currentColor;width:23px;height:23px}.audio-player .ap-skip:hover,.audio-player .ap-skip:focus-visible{color:var(--ink)}.audio-player .ap-close{padding:0;position:static}.ap-volume input{width:88px}body.audio-open{padding-bottom:74px}@media (width<=980px){.article-shell .article-layout{grid-template-columns:150px minmax(0,1fr)}.article-tools{grid-column:1/-1;grid-template-columns:repeat(4,minmax(0,1fr));gap:0 18px;position:static}.text-size-control,.article-tools .focus-toggle,.share-status{grid-column:span 2}.audio-player-inner{grid-template-columns:180px minmax(0,1fr);gap:16px}.audio-player .ap-controls{grid-template-columns:38px 40px minmax(90px,1fr) 44px 82px 48px}.audio-player .ap-skip,.audio-player .ap-volume,.audio-player .ap-speed-step{display:none}}@media (width<=760px){.article-shell{width:auto;padding:20px 20px 64px}.article-shell .article-hero{gap:14px;padding:28px 0 26px}.article-shell .article-hero h1{font-size:clamp(2.45rem,10.8vw,2.8rem);line-height:var(--reader-title-line-height)}.article-shell .article-hero .article-dek{font-size:18px;line-height:1.42}.article-shell .hero-image{height:auto;max-height:none}.article-shell .article-layout{grid-template-columns:minmax(0,1fr);gap:24px;padding-top:22px;display:grid}.article-shell .article-side{display:none}.article-main{display:contents}.article-main .article-meta{order:1;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0}.article-tools{order:2;grid-column:auto;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 18px}.text-size-control,.article-tools .focus-toggle,.share-status{grid-column:span 2}.article-content{order:3}.article-content a{overflow-wrap:anywhere}.article-post-nav{margin-top:24px;padding:11px 0 32px}.article-post-nav>a,.article-post-nav>span{gap:2px;font-size:13px}.audio-player-inner{min-height:142px;padding:16px 18px calc(16px + env(safe-area-inset-bottom));grid-template-rows:28px 72px;grid-template-columns:52px 48px 64px 48px 52px;justify-content:space-between;gap:10px 6px;position:relative}.audio-player .ap-header{grid-area:2/1;display:block}.audio-player .ap-header img{border-radius:50%;width:52px;height:52px;margin-top:10px}.audio-player .ap-header>span{display:none}.audio-player .ap-controls{display:contents}.audio-player .ap-time[data-ap-current]{text-align:left;font-variant-numeric:tabular-nums;grid-area:1/1;align-self:center;min-width:0;font-size:15px;display:block}.audio-player .ap-progress-container{grid-area:1/2/auto/5;align-self:center;width:100%;height:44px}.audio-player .ap-time[data-ap-total]{text-align:right;font-variant-numeric:tabular-nums;grid-area:1/5;align-self:center;min-width:0;font-size:15px}.audio-player .ap-skip{align-self:center;width:48px;height:52px;padding:0;display:grid}.audio-player .ap-skip[data-ap-rewind]{grid-area:2/2}.audio-player .ap-play{grid-area:2/3;align-self:center;width:64px;height:64px}.audio-player .ap-play svg{width:30px;height:30px}.audio-player .ap-skip[data-ap-forward]{grid-area:2/4}.audio-player .ap-skip svg{width:34px;height:34px}.audio-player .ap-speed-group{background:color-mix(in srgb, var(--rule) 52%, transparent);border-radius:50%;grid-area:2/5;place-self:center end;width:52px;height:52px;display:flex;position:static;transform:none}.audio-player .ap-speed-rate{width:100%;font-size:15px}.audio-player .ap-speed-step,.audio-player .ap-volume{display:none}.audio-player .ap-close{background:var(--page);border-radius:50%;width:40px;height:40px;padding:0;font-size:0;position:absolute;top:-46px;right:8px;box-shadow:0 2px 10px #1a19161f}.audio-player .ap-close:after{content:"×";font-size:25px;line-height:40px}body.audio-open{padding-bottom:142px}}@media print{.site-header,.site-footer,.back-link,.article-side,.article-tools,.article-end,.audio-player,.focus-exit{display:none!important}body,body.audio-open{background:#fff!important;padding:0!important}.article-shell,.article-shell.is-focus{width:100%;padding:0}.article-shell .article-hero{padding-top:0}.article-shell .article-hero h1{font-size:42pt}.article-shell .hero-image{height:auto;max-height:none;margin-bottom:24px}.article-shell .article-layout,.article-shell.is-focus .article-layout{padding:0;display:block}.article-main .article-meta{display:grid!important}.article-content section{break-inside:avoid-page}.article-content a{color:inherit}}
