:root{--paper: #f5f0e4;--paper-2: #ebe4d1;--ink: #1a1815;--ink-soft: #4a4640;--ink-faint: #8f8a7e;--rule: #d6cfbc;--rule-soft: #e6e0cd;--t-history: #b84a2b;--t-systems: #2d5a3d;--t-design: #3a4f7a;--t-culture: #8a6b2e;--serif: "Instrument Serif", "EB Garamond", Georgia, serif;--mono: "JetBrains Mono", ui-monospace, Menlo, monospace}html.dark{--paper: #141310;--paper-2: #1d1c17;--ink: #ece5d2;--ink-soft: #b5ad98;--ink-faint: #6a6455;--rule: #2a2720;--rule-soft: #1f1d18;--t-history: #e07a5f;--t-systems: #7ab089;--t-design: #8aa3d1;--t-culture: #d2b06e}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--paper);color:var(--ink)}body{font-family:var(--serif);font-size:18px;line-height:1.5;font-feature-settings:"ss01","liga";-webkit-font-smoothing:antialiased;transition:background .2s ease,color .2s ease}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}.masthead{max-width:1200px;margin:0 auto;padding:28px 32px 20px;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:24px;border-bottom:1px solid var(--ink);position:relative}.masthead:after{content:"";position:absolute;left:32px;right:32px;bottom:-5px;border-bottom:1px solid var(--ink)}.mast-left{font-family:var(--mono);font-size:11px;color:var(--ink-soft);letter-spacing:.08em;text-transform:uppercase}.mast-mid{font-family:var(--serif);font-style:italic;font-size:42px;line-height:1;letter-spacing:-.5px;text-align:center}.mast-mid a{text-decoration:none}.mast-right{display:flex;justify-content:flex-end;gap:18px;font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);flex-wrap:nowrap;white-space:nowrap;align-items:center}.mast-right a.current{color:var(--ink);border-bottom:1px solid var(--ink);padding-bottom:2px}.mast-right button.mode-toggle{font:inherit;background:transparent;border:1px solid var(--ink-soft);color:var(--ink-soft);padding:3px 8px;cursor:pointer;letter-spacing:.1em;text-transform:uppercase;white-space:nowrap}.mast-right button.mode-toggle:hover{color:var(--ink);border-color:var(--ink)}.tagline{max-width:1200px;margin:0 auto;padding:14px 32px 0;font-family:var(--serif);font-style:italic;font-size:22px;color:var(--ink-soft);text-align:center}footer{max-width:1200px;margin:80px auto 0;padding:24px 32px 40px;border-top:1px solid var(--ink);display:grid;grid-template-columns:1fr 1fr 1fr;gap:24px;font-family:var(--mono);font-size:11px;color:var(--ink-soft);letter-spacing:.08em;text-transform:uppercase}footer .f-mid{text-align:center}footer .f-right{text-align:right}footer .sig{font-family:var(--serif);font-style:italic;font-size:18px;color:var(--ink);text-transform:none;letter-spacing:0}.t-history{color:var(--t-history)}.t-systems{color:var(--t-systems)}.t-design{color:var(--t-design)}.t-culture{color:var(--t-culture)}.kicker{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase}.home{max-width:1200px;margin:0 auto;padding:32px 32px 0}.home-head{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:end;padding:8px 0 22px;margin-bottom:28px;border-bottom:1px dashed var(--rule)}.home-head h1{font-family:var(--serif);font-style:italic;font-weight:400;font-size:72px;line-height:.95;margin:0;letter-spacing:-1px}.home-head .sub{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);text-align:right}.home-head .sub b{color:var(--ink);font-weight:500}.sort-bar{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:20px;font-family:var(--mono);font-size:11px;color:var(--ink-soft);letter-spacing:.1em;text-transform:uppercase}.sort-bar .sort{display:flex;gap:14px}.sort-bar .sort a.on{color:var(--ink);border-bottom:1px solid var(--ink);padding-bottom:2px}.sort-bar .count{color:var(--ink-soft)}.cards{display:grid;grid-template-columns:repeat(2,1fr);gap:22px 28px}.card{position:relative;background:var(--paper);border:1px solid var(--ink);padding:22px 26px 24px;min-height:230px;display:flex;flex-direction:column;transition:transform .18s ease,box-shadow .18s ease,background .2s ease;text-decoration:none;color:inherit}.card:hover{transform:translate(-2px,-2px);box-shadow:4px 4px 0 var(--ink);text-decoration:none}html.dark .card:hover{box-shadow:4px 4px 0 var(--ink-soft)}.card:before{content:"";position:absolute;left:26px;right:26px;top:64px;border-bottom:1px solid currentColor;opacity:.35;color:var(--t-culture)}.card.t-history:before{color:var(--t-history)}.card.t-systems:before{color:var(--t-systems)}.card.t-design:before{color:var(--t-design)}.card.t-culture:before{color:var(--t-culture)}.card:after{content:"";position:absolute;left:26px;right:26px;top:82px;border-bottom:1px solid var(--rule);box-shadow:0 22px 0 -1px var(--rule),0 44px 0 -1px var(--rule),0 66px 0 -1px var(--rule),0 88px 0 -1px var(--rule);pointer-events:none}.card .punch{position:absolute;top:14px;left:50%;transform:translate(-50%);width:16px;height:16px;border:1px solid currentColor;border-radius:50%;background:var(--paper-2);color:var(--t-culture)}.card.t-history .punch{color:var(--t-history);background:var(--t-history)}.card.t-systems .punch{color:var(--t-systems);background:var(--t-systems)}.card.t-design .punch{color:var(--t-design);background:var(--t-design)}.card.t-culture .punch{color:var(--t-culture);background:var(--t-culture)}.card .head{display:flex;justify-content:space-between;align-items:baseline;font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft);margin-bottom:20px;position:relative;z-index:1}.card .head .theme{font-weight:500}.card.t-history .head .theme{color:var(--t-history)}.card.t-systems .head .theme{color:var(--t-systems)}.card.t-design .head .theme{color:var(--t-design)}.card.t-culture .head .theme{color:var(--t-culture)}.card .title{font-family:var(--serif);font-style:italic;font-weight:400;font-size:32px;line-height:1.05;margin:0 0 18px;letter-spacing:-.3px;position:relative;z-index:1;max-width:95%}.card .excerpt{font-family:var(--serif);font-style:normal;font-size:15px;line-height:22px;color:var(--ink-soft);position:relative;z-index:1;flex:1;max-width:100%}.card .foot{display:flex;justify-content:space-between;font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);margin-top:14px;position:relative;z-index:1}.card .foot .read{color:var(--ink-soft);border-bottom:1px solid var(--ink-soft);padding-bottom:1px}.card:nth-child(4n+1){transform:rotate(-.3deg)}.card:nth-child(4n+2){transform:rotate(.4deg)}.card:nth-child(4n+3){transform:rotate(.2deg)}.card:nth-child(4n+4){transform:rotate(-.4deg)}.card:hover{transform:translate(-2px,-2px) rotate(0)}.home-more{margin-top:48px;padding:18px 0;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);display:flex;justify-content:space-between;align-items:center;font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft)}.home-more .all{font-family:var(--serif);font-style:italic;font-size:22px;color:var(--ink);text-transform:none;letter-spacing:0}.themes{max-width:1200px;margin:0 auto;padding:32px 32px 0}.themes-head{padding:8px 0 24px;margin-bottom:32px;border-bottom:1px solid var(--ink);display:grid;grid-template-columns:1fr auto;align-items:end;gap:20px}.themes-head h1{font-family:var(--serif);font-style:italic;font-weight:400;font-size:52px;line-height:1.02;margin:0;letter-spacing:-.5px;max-width:10ch}.themes-head .blurb{font-family:var(--serif);font-style:italic;font-size:20px;color:var(--ink-soft);max-width:380px;text-align:right;line-height:1.3}.theme-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px 36px}.theme-row{display:grid;grid-template-columns:70px 1fr;gap:20px;padding:22px 24px 22px 20px;background:var(--paper);border:1px solid var(--ink);position:relative;transition:transform .18s ease,box-shadow .18s ease;color:inherit;text-decoration:none}.theme-row:hover{transform:translate(-2px,-2px);box-shadow:4px 4px 0 var(--ink);text-decoration:none}html.dark .theme-row:hover{box-shadow:4px 4px 0 var(--ink-soft)}.theme-row .bar{position:absolute;left:0;top:0;bottom:0;width:6px;background:var(--t-culture)}.theme-row.t-history .bar{background:var(--t-history)}.theme-row.t-systems .bar{background:var(--t-systems)}.theme-row.t-design .bar{background:var(--t-design)}.theme-row.t-culture .bar{background:var(--t-culture)}.theme-row .num{font-family:var(--serif);font-style:italic;font-size:48px;line-height:1;color:var(--ink-faint);padding-top:4px}.theme-row .body .name{font-family:var(--serif);font-style:italic;font-size:34px;line-height:1.05;margin-bottom:6px;letter-spacing:-.3px}.theme-row .body .desc{font-family:var(--serif);font-size:16px;color:var(--ink-soft);margin-bottom:14px;line-height:1.35;max-width:420px}.theme-row .body .posts{border-top:1px dashed var(--rule);padding-top:10px;display:grid;gap:6px}.theme-row .body .posts .p{display:grid;grid-template-columns:1fr auto;gap:12px;font-family:var(--mono);font-size:10px;color:var(--ink-faint);letter-spacing:.06em;text-transform:uppercase;align-items:baseline}.theme-row .body .posts .p .t{font-family:var(--serif);font-style:italic;font-size:17px;letter-spacing:0;text-transform:none;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.theme-row .body .posts .p .d{white-space:nowrap}.theme-row .count{font-family:var(--mono);font-size:10px;color:var(--ink-faint);letter-spacing:.1em;text-transform:uppercase;text-align:right}.theme-row .count .n{display:block;font-family:var(--serif);font-style:italic;font-size:44px;line-height:1;color:var(--ink);margin-bottom:4px}.post-wrap{max-width:1200px;margin:0 auto;padding:40px 32px 0;display:grid;grid-template-columns:200px minmax(0,640px) 200px;gap:40px;justify-content:center;align-items:start;position:relative}.post{grid-column:2;max-width:640px;width:100%;margin:0;position:relative}.post-head{padding-bottom:24px;border-bottom:1px solid var(--ink);margin-bottom:36px;overflow:hidden}.post-head .kicker{color:var(--t-culture);margin-bottom:14px}.post-head h1{font-family:var(--serif);font-style:italic;font-weight:400;font-size:68px;line-height:.98;letter-spacing:-1px;margin:0 0 20px}.post-head .meta{font-family:var(--mono);font-size:11px;color:var(--ink-soft);letter-spacing:.1em;text-transform:uppercase;display:flex;gap:18px}.rail-left{grid-column:1;position:sticky;top:24px;padding-right:16px;border-right:1px solid var(--rule);align-self:start}.rail-left .k{font-family:var(--mono);font-size:10px;color:var(--ink-faint);letter-spacing:.12em;text-transform:uppercase;margin-bottom:6px}.rail-left .t{font-family:var(--serif);font-style:italic;font-size:26px;line-height:1.05;color:var(--t-culture);margin-bottom:6px}.rail-left .c{font-family:var(--mono);font-size:10px;color:var(--ink-soft);letter-spacing:.08em;text-transform:uppercase;margin-bottom:18px}.rail-left .sibs{list-style:none;margin:0;padding:8px 0 0;border-top:1px solid var(--rule)}.rail-left .sibs li{padding:5px 0;font-family:var(--serif);font-size:14px;color:var(--ink-soft);line-height:1.25;display:flex;gap:6px;align-items:baseline}.rail-left .sibs li .n{font-family:var(--mono);font-size:9px;color:var(--ink-faint);min-width:22px;letter-spacing:.08em}.rail-left .sibs li.active{color:var(--ink);font-style:italic}.rail-left .sibs li.active .n{color:var(--t-culture)}.rail-left .sibs li a{color:inherit;text-decoration:none}.rail-left .sibs li a:hover{color:var(--ink)}.margin-col{grid-column:3;align-self:start;display:flex;flex-direction:column;gap:32px;padding-top:120px}.margin-note{padding-left:16px;border-left:1px solid var(--rule);font-family:var(--serif);font-style:italic;font-size:15px;line-height:1.35;color:var(--ink-soft)}.margin-note .k{font-family:var(--mono);font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-faint);font-style:normal;display:block;margin-bottom:6px}.margin-note a{color:var(--t-culture);text-decoration:none;border-bottom:1px solid var(--t-culture)}.margin-note a:hover{opacity:.7}.post-body{font-family:var(--serif);font-size:20px;line-height:1.55;color:var(--ink)}.post-body>p:first-of-type:first-letter{font-family:var(--serif);font-style:italic;font-size:64px;line-height:1;float:left;padding:8px 10px 0 0;margin-top:4px;color:var(--t-culture)}.post-body p{margin:0 0 18px;text-wrap:pretty}.post-body h2{font-family:var(--serif);font-style:italic;font-weight:400;font-size:32px;line-height:1.1;margin:36px 0 14px;letter-spacing:-.3px}.post-body blockquote{margin:24px 0;padding:2px 0 2px 20px;border-left:2px solid var(--t-culture);font-family:var(--serif);font-style:italic;font-size:22px;line-height:1.35;color:var(--ink-soft)}.post-body em{font-style:italic}.post-body strong{font-weight:600;color:var(--ink)}.post-body a{border-bottom:1px solid var(--rule);padding-bottom:1px}.post-body a:hover{border-color:var(--ink);text-decoration:none}.post-sketch{margin:28px 0;background:var(--paper-2);border:1px solid var(--rule);height:240px;display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);background-image:repeating-linear-gradient(135deg,transparent 0 8px,rgba(26,24,21,.04) 8px 9px)}html.dark .post-sketch{background-image:repeating-linear-gradient(135deg,transparent 0 8px,rgba(236,229,210,.04) 8px 9px)}.post-foot{margin-top:48px;padding-top:20px;border-top:1px solid var(--ink);display:grid;grid-template-columns:1fr auto 1fr;gap:18px;font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-soft);align-items:center}.post-foot .center{text-align:center;color:var(--t-culture);font-family:var(--serif);font-style:italic;font-size:18px;text-transform:none;letter-spacing:0}.post-foot .next{text-align:right}.post-foot a:hover{color:var(--ink)}#tweaks{position:fixed;right:18px;bottom:18px;z-index:100;background:var(--paper);border:1px solid var(--ink);padding:16px 18px;width:260px;font-family:var(--serif);display:none;box-shadow:4px 4px 0 var(--ink)}html.dark #tweaks{box-shadow:4px 4px 0 var(--ink-soft)}#tweaks.on{display:block}#tweaks h4{font-family:var(--serif);font-style:italic;font-weight:400;margin:0 0 12px;font-size:22px;border-bottom:1px solid var(--ink);padding-bottom:6px}#tweaks .row{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:12px;font-size:14px}#tweaks label{color:var(--ink-soft);font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase}#tweaks select,#tweaks button{font-family:var(--mono);font-size:11px;background:var(--paper);color:var(--ink);border:1px solid var(--ink);padding:4px 8px;cursor:pointer}#tweaks .swatches{display:flex;gap:6px}#tweaks .sw{width:22px;height:22px;border:1px solid var(--ink);cursor:pointer;border-radius:50%}#tweaks .sw.sel{outline:2px solid var(--ink);outline-offset:2px}@media (max-width: 900px){.cards,.theme-grid{grid-template-columns:1fr}.post-wrap{grid-template-columns:1fr;gap:24px}.rail-left{position:static;border-right:none;padding-right:0}.margin-col{padding-top:0}.post-head h1{font-size:44px}.mast-mid{font-size:30px}.home-head h1,.themes-head h1{font-size:48px}}.theme-page-head{max-width:1200px;margin:0 auto 28px;padding:32px 32px 22px;display:grid;grid-template-columns:1fr auto;gap:24px;align-items:end;border-bottom:1px solid var(--ink);position:relative}.theme-page-head .kicker{margin-bottom:10px}.theme-page-head h1{font-family:var(--serif);font-style:italic;font-weight:400;font-size:96px;line-height:.92;letter-spacing:-1.5px;margin:0}.theme-page-head .blurb{font-family:var(--serif);font-style:italic;font-size:20px;color:var(--ink-soft);max-width:320px;text-align:right;line-height:1.3}.theme-page-head .blurb .meta{font-family:var(--mono);font-size:10px;color:var(--ink-faint);letter-spacing:.12em;text-transform:uppercase;font-style:normal;margin-top:10px;display:block}.theme-nav{max-width:1200px;margin:0 auto 28px;padding:0 32px;display:flex;justify-content:space-between;align-items:center;font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--ink-soft)}.theme-nav .tabs{display:flex;gap:20px}.theme-nav .tabs a{white-space:nowrap}.theme-nav .tabs a.on{color:var(--t-culture);border-bottom:1px solid var(--t-culture);padding-bottom:2px}.theme-nav .tabs a:hover{color:var(--ink);text-decoration:none}
