@font-face{font-family:PK Inter;src:url(inter-latin.3100e775e8.woff2) format('woff2');font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:PK Mono;src:url(ibm-plex-mono-500.01d2854474.woff2) format('woff2');font-weight:500;font-style:normal;font-display:swap}:root{color-scheme:dark;--bg:#111;--text:#f4f4f1;--muted:#c9c9c5;--soft:#aaa9a6;--line:#383838;--mono:'PK Mono',monospace;--sans:'PK Inter',Arial,sans-serif}*,*::before,*::after{box-sizing:border-box}html{scroll-padding-top:32px}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);font-size:18px;line-height:1.6;-webkit-font-smoothing:antialiased}a{color:inherit;text-underline-offset:.22em;text-decoration-thickness:1px}a:hover{color:#fff}a:focus-visible,summary:focus-visible{outline:2px solid var(--text);outline-offset:7px}img{display:block;max-width:100%;height:auto}button,input{font:inherit}::selection{background:var(--text);color:var(--bg)}.shell{width:min(1280px,calc(100% - 96px));margin-inline:auto}.skip-link{position:fixed;top:8px;left:8px;z-index:99;padding:12px 20px;background:var(--text);color:var(--bg);transform:translateY(-150%)}.skip-link:focus{transform:none}.contact-strip{border-bottom:1px solid var(--line);font-size:12px}.contact-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:42px}.contact-strip a{text-decoration:none}.site-header{display:flex;align-items:center;justify-content:space-between;gap:32px;padding-block:32px}.brand{display:inline-flex;flex:none;align-items:center;width:76px}.brand svg{display:block;width:100%;height:auto}.header-right{text-align:right}.identity,.eyebrow,.meta,.index-line,.breadcrumb,.toc summary,.toc-title,.article-back,.footer-note,.card-link,.simple-nav,.section-label{font-family:var(--mono);font-weight:500;font-size:11px;line-height:1.6;letter-spacing:.065em;text-transform:uppercase}.identity{color:var(--muted);margin:0 0 13px}.primary-nav{display:flex;justify-content:flex-end;flex-wrap:wrap;column-gap:24px;row-gap:10px}.primary-nav a{font-family:var(--mono);font-size:11px;letter-spacing:.07em;text-transform:uppercase;text-decoration:none;padding-bottom:3px;border-bottom:1px solid transparent}.primary-nav a[aria-current=page],.primary-nav a:hover{border-color:var(--muted)}.blog-intro{padding-block:80px 54px}.eyebrow{color:var(--soft);margin:0 0 25px}.eyebrow .arrow{margin-right:14px;font-size:18px;color:var(--text)}h1,h2,h3,h4{line-height:1.12;font-weight:500;letter-spacing:-.052em;text-wrap:balance}h1{font-size:clamp(56px,8.4vw,118px);margin:0 0 30px;line-height:1.01}.blog-intro h1 span{color:var(--soft)}.intro-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:48px}.intro-copy{font-size:clamp(18px,1.6vw,22px);line-height:1.6;max-width:650px;color:var(--muted);margin:0}.intro-count{font-family:var(--mono);font-size:11px;text-transform:uppercase;white-space:nowrap;letter-spacing:.06em;color:var(--soft);margin:0 0 5px}.index-line{display:flex;justify-content:space-between;gap:16px;padding-block:20px;border-block:1px solid var(--line);color:var(--soft)}.index-line span:first-child{color:var(--text)}.article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:60px 36px;padding-block:42px 96px}.post-card{min-width:0;display:flex;flex-direction:column}.card-image{display:block;overflow:hidden;background:#1c1c1c;text-decoration:none}.card-image img{width:100%;aspect-ratio:3/2;object-fit:cover;transition:transform .35s ease}.card-image:hover img{transform:scale(1.025)}.card-meta{display:flex;align-items:baseline;justify-content:space-between;gap:12px;color:var(--soft);font-size:10px;margin-block:20px 14px}.card-meta time{flex:none}.card-title{font-size:clamp(24px,2.1vw,29px);line-height:1.15;letter-spacing:-.04em;margin:0 0 16px}.card-title a{text-decoration:none}.card-title a:hover{text-decoration:underline;text-decoration-thickness:1px}.card-excerpt{font-size:15px;line-height:1.7;color:var(--muted);margin:0 0 24px}.card-link{display:flex;align-items:center;justify-content:space-between;gap:20px;text-decoration:none;border-bottom:1px solid var(--line);padding-block:0 15px;margin-top:auto}.card-link span{font-size:23px;font-family:var(--sans);line-height:1}.breadcrumb{display:flex;flex-wrap:wrap;gap:10px;color:var(--soft);padding-block:35px 24px}.breadcrumb a{text-decoration:none}.breadcrumb span[aria-hidden]{color:#666}.article-header{padding-block:24px 46px}.article-meta{display:flex;flex-wrap:wrap;gap:10px 20px;color:var(--soft);margin:0 0 25px}.article-header h1{font-size:clamp(34px,5.2vw,73px);line-height:1.07;max-width:1150px;letter-spacing:-.055em;margin:0 0 28px;overflow-wrap:break-word}.article-author{font-size:13px;color:var(--muted);margin:0}.article-cover{margin:0 0 65px;background:#191919}.article-cover img{width:100%;max-height:620px;object-fit:contain}.reading-layout{display:grid;grid-template-columns:240px minmax(0,760px);column-gap:70px;justify-content:center;align-items:start;padding-block:0 100px}.reading-sidebar{position:sticky;top:32px}.article-back{display:inline-block;margin-bottom:30px;color:var(--soft);text-decoration:none}.toc{border-block:1px solid var(--line);padding-block:18px}.toc summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:10px}.toc summary::after{content:'+';font-size:18px;line-height:1}.toc[open] summary::after{content:'−'}.toc summary::-webkit-details-marker{display:none}.toc ol{padding-left:18px;margin:18px 0 0}.toc li{padding-left:5px;margin:0 0 13px;color:var(--soft);font-size:12px;line-height:1.55}.toc a{text-decoration:none}.toc a:hover{text-decoration:underline}.prose{min-width:0;color:var(--muted);font-size:20px;line-height:1.85;overflow-wrap:break-word}.prose>p:first-of-type{color:var(--text);font-size:clamp(21px,2vw,25px);line-height:1.65;margin-top:0}.prose p{margin:0 0 1.45em}.prose h2,.prose h3,.prose h4{color:var(--text);margin:2em 0 .8em;scroll-margin-top:35px}.prose h2{font-size:clamp(28px,2.8vw,38px);line-height:1.18}.prose h3{font-size:clamp(23px,2.2vw,29px);letter-spacing:-.035em;line-height:1.25}.prose h4{font-size:23px;line-height:1.3;letter-spacing:-.025em}.prose h2 strong,.prose h3 strong,.prose h4 strong{font-weight:500}.prose strong{color:var(--text);font-weight:600}.prose ul,.prose ol{padding-left:1.4em;margin-block:0 1.7em}.prose li{padding-left:.2em;margin-block:.6em}.prose li::marker{color:var(--soft)}.prose figure{margin:2.5em 0}.prose figure img{max-height:780px;width:100%;object-fit:contain}.prose figcaption{font-size:13px;line-height:1.6;margin-top:12px;color:var(--soft)}.prose blockquote{border-left:2px solid var(--soft);margin:2em 0;padding-left:1.5em;color:var(--text)}.prose a{color:var(--text);overflow-wrap:anywhere}.prose table{border-collapse:collapse;width:100%;font-size:.85em}.prose td,.prose th{border:1px solid var(--line);padding:12px}.prose .table-scroll{overflow-x:auto}.more-reading{border-top:1px solid var(--line);padding-block:44px 0}.section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:25px}.section-heading h2{font-size:clamp(30px,4vw,50px);margin:0}.section-heading>a{font-family:var(--mono);text-transform:uppercase;font-size:11px;letter-spacing:.04em}.more-reading .article-grid{padding-block:35px 90px}.contact-cta{border-block:1px solid var(--line);padding-block:45px;display:flex;align-items:center;justify-content:space-between;gap:35px}.contact-cta h2{font-size:clamp(32px,4vw,50px);margin:0 0 12px}.contact-cta p{font-size:16px;color:var(--muted);margin:0;max-width:650px}.cta-link{display:flex;gap:28px;align-items:center;padding:15px 20px;background:var(--text);color:var(--bg);font-size:13px;text-decoration:none;flex:none}.cta-link:hover{color:var(--bg);background:#fff}.cta-link span{font-size:23px}.site-footer{display:flex;align-items:center;justify-content:space-between;gap:35px;padding-block:38px}.footer-brand{display:flex;align-items:center;gap:25px}.footer-brand .brand{width:58px}.footer-note{font-size:10px;color:var(--soft)}.footer-links{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:12px 25px}.footer-links a{font-size:12px;color:var(--muted)}.legal-header{padding-block:60px 35px}.legal-header h1{font-size:clamp(38px,6vw,80px)}.legal-prose{max-width:820px;margin:0 auto;padding-bottom:80px;font-size:17px}.legal-prose h2{font-size:30px}.legal-prose h3{font-size:24px}.empty-page{padding-block:90px}.empty-page h1{font-size:clamp(48px,9vw,110px)}@media(min-width:1600px){.shell{width:min(1380px,calc(100% - 120px))}}@media(max-width:1100px){.article-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:45px 28px}.card-title{font-size:27px}.reading-layout{grid-template-columns:200px minmax(0,1fr);gap:40px}.article-header h1{font-size:clamp(34px,5.5vw,64px)}}@media(max-width:800px){.shell{width:calc(100% - 48px)}.site-header{padding-block:26px}.blog-intro{padding-block:60px 40px}.reading-layout{display:block;padding-bottom:65px}.reading-sidebar{position:static;margin:0 0 35px}.article-back{margin-bottom:20px}.toc ol{columns:2;column-gap:35px}.toc li{break-inside:avoid}.article-cover{margin-bottom:35px}.article-header{padding-bottom:30px}.contact-cta{align-items:flex-start;flex-direction:column}.site-footer{align-items:flex-start}.footer-brand{align-items:flex-start;flex-direction:column;gap:12px}.footer-links{max-width:200px}.article-header h1{font-size:clamp(34px,6.6vw,53px)}}@media(max-width:600px){.shell{width:calc(100% - 40px)}.contact-inner{font-size:10px;gap:12px}.contact-inner a:last-child{overflow-wrap:anywhere}.site-header{gap:20px;align-items:flex-start}.brand{width:60px}.identity{font-size:8px;letter-spacing:.045em;line-height:1.7}.primary-nav{column-gap:15px;row-gap:9px}.primary-nav a{font-size:9px}.blog-intro{padding-block:48px 34px}.blog-intro h1{font-size:clamp(48px,12.3vw,74px);letter-spacing:-.06em;margin-bottom:25px}.eyebrow{font-size:9px;margin-bottom:20px}.intro-bottom{display:block}.intro-copy{font-size:17px}.intro-count{margin-top:20px;font-size:10px}.index-line{font-size:9px;padding-block:17px}.article-grid{grid-template-columns:1fr;gap:40px;padding-block:30px 60px}.card-title{font-size:27px;line-height:1.2}.card-meta{font-size:9px;margin-block:16px 12px}.card-excerpt{font-size:16px}.breadcrumb{font-size:9px;padding-block:20px}.article-header{padding-top:12px}.article-header h1{font-size:clamp(31px,7.8vw,46px);line-height:1.12;letter-spacing:-.045em;hyphens:auto}.article-meta{font-size:9px;gap:8px 12px;margin-bottom:18px}.article-author{font-size:12px}.article-cover{margin-bottom:28px}.prose{font-size:18px;line-height:1.8}.prose>p:first-of-type{font-size:20px}.prose h2{font-size:29px}.prose h3{font-size:24px}.toc ol{columns:1}.section-heading{align-items:flex-start;flex-direction:column;gap:12px}.more-reading .article-grid{padding-bottom:55px}.contact-cta{padding-block:35px}.contact-cta h2{font-size:34px}.site-footer{gap:22px;flex-wrap:wrap;padding-block:30px}.footer-links{justify-content:flex-start;max-width:none}.footer-note{font-size:9px}.legal-prose{font-size:16px}}.toc a{display:block}@media(max-width:600px){.index-line{display:block}.index-line span{display:block}.index-line span+span{margin-top:8px}.card-meta span{min-width:0;overflow-wrap:anywhere}.card-title{hyphens:auto;overflow-wrap:break-word}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}@media print{body{background:#fff;color:#111;font-size:12pt}.contact-strip,.site-header,.reading-sidebar,.more-reading,.contact-cta,.site-footer,.breadcrumb{display:none}.shell{width:100%}.reading-layout{display:block;padding:0}.article-cover img{max-height:250px}.prose,.prose strong,.prose a,.prose h2,.prose h3{color:#111}.article-header h1{font-size:28pt}.article-header,.article-cover{margin-bottom:20px}.prose{font-size:12pt;line-height:1.6}}/* Four real editorial categories; navigation works without JavaScript. */.blog-intro h1{margin-bottom:26px}.blog-intro{padding-block:65px 42px}.topic-nav{margin:0 0 36px}.topic-strip{display:flex;flex-wrap:wrap;gap:10px;padding-block:24px;border-block:1px solid var(--line)}.topic-link{display:flex;align-items:center;gap:16px;justify-content:space-between;text-decoration:none;min-height:44px;border:1px solid var(--line);padding:11px 15px;font-size:13px;line-height:1.5;color:var(--muted)}.topic-link span:last-child{font-family:var(--mono);font-size:10px;color:var(--soft)}.topic-link:hover{border-color:var(--muted)}.topic-link[aria-current=page]{background:var(--text);color:var(--bg);border-color:var(--text)}.topic-link[aria-current=page] span:last-child{color:#444}.topic-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border-block:1px solid var(--line)}.topic-tile{display:flex;flex-direction:column;gap:17px;padding:24px 24px 24px 0;border-right:1px solid var(--line);text-decoration:none;min-width:0}.topic-tile:not(:first-child){padding-left:24px}.topic-tile:last-child{border-right:0}.topic-number{font-family:var(--mono);font-size:10px;color:var(--soft);display:flex;justify-content:space-between}.topic-name{font-size:clamp(18px,1.8vw,25px);font-weight:500;line-height:1.2;letter-spacing:-.04em;overflow-wrap:anywhere}.topic-description{font-size:13px;color:var(--soft);line-height:1.7;margin:0}.topic-tile:hover .topic-name{text-decoration:underline;text-underline-offset:.18em}.topic-tile[aria-current=page] .topic-name{color:#fff;text-decoration:underline}.topic-all{display:inline-block;font:10px var(--mono);text-transform:uppercase;letter-spacing:.06em;margin-top:15px;color:var(--muted)}.topic-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:55px;align-items:start}.topic-sidebar{position:sticky;top:30px}.topic-sidebar summary{font:11px var(--mono);text-transform:uppercase;letter-spacing:.08em;padding-block:20px;cursor:pointer;border-top:1px solid var(--line)}.topic-sidebar nav{display:grid;gap:0}.topic-sidebar .topic-link{border:0;border-bottom:1px solid var(--line);padding:16px 0;background:transparent;color:var(--muted)}.topic-sidebar .topic-link[aria-current=page]{color:#fff;text-decoration:underline;text-underline-offset:5px}.topic-sidebar .topic-link span:last-child{color:var(--soft)}.topic-sidebar-note{font-size:12px;line-height:1.7;color:var(--soft);margin-top:22px}.topic-layout .article-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding-top:0}.topic-layout .index-line{margin-bottom:32px;border-top:0;padding-top:0}.category-intro .eyebrow a{text-decoration:none}.category-intro h1{font-size:clamp(38px,6vw,84px);overflow-wrap:break-word;hyphens:auto}.preview-bar{display:flex;justify-content:space-between;align-items:center;gap:15px;flex-wrap:wrap;padding:13px 24px;background:#242424;border-bottom:1px solid #444;font:10px var(--mono);text-transform:uppercase;letter-spacing:.05em}.preview-bar a{color:var(--text)}.preview-bar nav{display:flex;gap:20px}.design-picker{padding-block:65px 90px}.design-picker h1{font-size:clamp(40px,7vw,85px);max-width:900px}.design-picker>p{color:var(--muted);max-width:700px}.design-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;margin-top:50px}.design-option{border-block:1px solid var(--line);padding-block:25px;display:flex;flex-direction:column}.design-option h2{font-size:27px;margin:0 0 15px}.design-option p{font-size:15px;color:var(--muted)}.design-option .card-link{margin-top:auto}.design-mini{min-height:190px;background:#1b1b1b;padding:24px 18px;margin-bottom:25px;pointer-events:none;font:10px var(--mono);line-height:1.6}.mini-strip{display:flex;flex-wrap:wrap;gap:7px}.mini-strip span{border:1px solid #444;padding:5px}.mini-strip span:first-child{background:#f4f4f1;color:#111}.mini-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.mini-grid span{border:1px solid #444;padding:12px 7px}.mini-sidebar{display:grid;grid-template-columns:1fr 1.2fr;gap:15px}.mini-sidebar>div:first-child{display:grid;gap:10px;border-right:1px solid #444}.mini-lines{background:repeating-linear-gradient(to bottom,#333 0 2px,transparent 2px 20px);min-height:125px}.portfolio-body{max-width:950px;margin-inline:auto;padding-block:0 70px}.portfolio-body>figure img{max-height:none}.portfolio-body .prose>p:first-of-type{font-size:20px}.portfolio-body .prose h2{font-size:35px}.portfolio-body .prose img{max-height:none}.portfolio-body .prose figure{background:#1b1b1b}.archive-note{font:11px var(--mono);text-transform:uppercase;color:var(--soft);letter-spacing:.06em}.portfolio-index{display:flex;flex-wrap:wrap;gap:15px 25px;margin-top:30px;font-size:13px}.snippet-preview{background:#fff;color:#202124;border-radius:0;padding:28px;max-width:680px;font-family:Arial,sans-serif}.snippet-url{font-size:13px;color:#4d5156}.snippet-title{font-size:21px;color:#1a0dab;margin-block:8px;line-height:1.3}.snippet-description{font-size:14px;line-height:1.6;color:#4d5156}@media(max-width:1100px){.topic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.topic-tile:nth-child(2){border-right:0}.topic-tile:nth-child(3){padding-left:0;border-top:1px solid var(--line)}.topic-tile:nth-child(4){border-top:1px solid var(--line)}.topic-layout{grid-template-columns:180px minmax(0,1fr);gap:30px}.design-options{grid-template-columns:1fr}.design-mini{max-width:500px}}@media(max-width:800px){.topic-layout{display:block}.topic-sidebar{position:static;margin-bottom:30px}.topic-sidebar nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}.topic-layout .article-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.topic-sidebar-note{display:none}}@media(max-width:600px){.blog-intro{padding-block:40px 30px}.topic-strip{gap:8px;padding-block:18px}.topic-link{font-size:11px;padding:10px 12px;gap:12px;min-height:44px;max-width:100%}.topic-link span:first-child{overflow-wrap:anywhere}.topic-tile{padding:20px 16px 20px 0;gap:14px}.topic-tile:not(:first-child){padding-left:16px}.topic-tile:nth-child(3){padding-left:0}.topic-name{font-size:19px;hyphens:auto}.topic-description{font-size:12px}.topic-sidebar nav{grid-template-columns:1fr}.topic-layout .article-grid{grid-template-columns:1fr}.topic-nav{margin-bottom:25px}.preview-bar{padding:12px 20px;font-size:9px}.preview-bar nav{gap:15px}.portfolio-body .prose h2{font-size:28px}.category-intro h1{font-size:clamp(29px,8.5vw,48px)}}