:root{--bg: #e4e4e2;--bg-2: #dcdcda;--fg: #1a1a1a;--muted: #888888;--line: rgba(26, 26, 26, .14);--line-strong: rgba(26, 26, 26, .35);--font-display: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono: "Space Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--transition-fast: .2s ease}*{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--bg);color:var(--fg);font-family:var(--font-display);font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body{overflow-x:hidden}a{color:inherit;text-decoration:none}em{font-style:normal}img{max-width:100%;display:block}.nav{position:sticky;top:0;z-index:50;background:var(--bg);display:grid;grid-template-columns:repeat(8,1fr);align-items:stretch;border-bottom:.5px solid var(--line);margin:0 0 64px;font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.05em;line-height:1.5}.nav .brand{grid-column:1 / 4;padding:18px 20px;border-right:.5px solid var(--line);color:var(--fg);font-weight:700}.nav .links{grid-column:5 / 9;padding:18px 20px;border-left:.5px solid var(--line);text-align:right;display:flex;justify-content:flex-end;align-items:flex-start;flex-wrap:wrap}.nav .links a{color:var(--fg);padding:4px 6px;margin-left:8px;transition:background var(--transition-fast),color var(--transition-fast)}.nav .links a:first-child{margin-left:0}.nav .links a:hover,.nav .links a.is-current{background:var(--fg);color:var(--bg)}.nav-toggle,.hero-nav-toggle{display:none;background:none;border:.5px solid var(--line-strong);padding:10px;cursor:pointer;width:40px;height:40px;flex-direction:column;justify-content:space-between;align-items:stretch}.nav-toggle span,.hero-nav-toggle span{display:block;height:1.5px;background:var(--fg);transition:transform .22s ease,opacity .18s ease;transform-origin:center}.nav-toggle.is-open span:nth-child(1),.hero-nav-toggle.is-open span:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav-toggle.is-open span:nth-child(2),.hero-nav-toggle.is-open span:nth-child(2){opacity:0}.nav-toggle.is-open span:nth-child(3),.hero-nav-toggle.is-open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.hero{position:relative;width:100vw;height:100vh;min-height:720px;overflow:hidden;background:var(--bg)}#canvas-container{position:absolute;inset:0;z-index:1}#ui-overlay{position:absolute;inset:0;z-index:10;pointer-events:none;display:grid;grid-template-columns:repeat(8,1fr);grid-template-rows:repeat(10,1fr)}.ui-element{padding:18px 20px;border-left:.5px solid var(--line);border-top:.5px solid var(--line);pointer-events:auto;font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.05em;line-height:1.5}.ui-element a{color:var(--fg);text-decoration:none;display:inline-block;padding:4px 6px;transition:background var(--transition-fast),color var(--transition-fast)}.ui-element a:hover{background:var(--fg);color:var(--bg)}.hd-main{grid-column:1 / 4;grid-row:1;font-weight:700}.hd-status{grid-column:5 / 9;grid-row:1;text-align:right}.y-labels{grid-column:1;grid-row:2 / 10;display:flex;flex-direction:column;justify-content:space-between;padding:18px 20px;border-left:.5px solid var(--line);pointer-events:none;font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.05em}.y-labels div{color:var(--muted)}.x-labels{grid-column:2 / 9;grid-row:10;display:grid;grid-template-columns:repeat(7,1fr);border-top:.5px solid var(--line);border-left:.5px solid var(--line);font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.05em}.x-labels div{padding:16px 20px;color:var(--muted);border-left:.5px solid var(--line)}.x-labels div:first-child{border-left:none}.signature{grid-column:1 / 6;grid-row:7 / 10;align-self:end;pointer-events:none;padding:28px 32px}.signature .name{font-family:var(--font-display);font-weight:500;letter-spacing:-.04em;font-size:clamp(56px,7vw,108px);line-height:.9}.signature .name em{font-style:normal;font-weight:500}.signature .role{margin-top:18px;color:var(--muted);max-width:420px;line-height:1.8;font-family:var(--font-mono);font-size:11px;letter-spacing:0;text-transform:none}.scroll-cue{position:absolute;bottom:16px;left:50%;transform:translate(-50%);z-index:11;color:var(--muted);font-family:var(--font-mono);font-size:9px;text-transform:uppercase;letter-spacing:.05em;pointer-events:none;animation:nudge 2s ease-in-out infinite}@keyframes nudge{50%{transform:translate(-50%,4px)}}.doc{position:relative;z-index:2;background:var(--bg);border-top:.5px solid var(--line-strong);padding:40px 0}.section-head{display:grid;grid-template-columns:repeat(8,1fr);border-bottom:.5px solid var(--line-strong)}.section-head .lbl{grid-column:1 / 3;padding:56px 32px;border-right:.5px solid var(--line);color:var(--muted);font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.05em}.section-head .ttl{grid-column:3 / 9;padding:56px 32px}.section-head .ttl .big{font-family:var(--font-display);font-weight:500;letter-spacing:-.03em;font-size:clamp(36px,4.5vw,64px);line-height:1}.section-head .ttl .big em{font-style:normal;font-weight:500}.proj-row{display:grid;grid-template-columns:2fr 4fr 1.5fr;text-decoration:none;color:inherit;border-bottom:.5px solid var(--line);align-items:stretch;cursor:pointer;transition:background var(--transition-fast)}.proj-row:hover{background:var(--bg-2)}.proj-row>div{padding:36px 24px;border-left:.5px solid var(--line)}.proj-row>div:first-child{border-left:none}.proj-row .pname{font-family:var(--font-display);font-weight:500;letter-spacing:-.025em;font-size:28px;line-height:1.1}.proj-row .pdesc{font-family:var(--font-mono);font-size:10px;line-height:1.7;color:#2a2a2a}.proj-row .plabel{color:var(--muted);margin-bottom:6px;font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.05em}.proj-row .pmeta{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.05em}.proj-row .pstatus{display:flex;align-items:center;gap:8px}.proj-row .pstatus .dot{width:6px;height:6px;background:var(--fg);border-radius:50%}.proj-row[data-st=building] .pstatus .dot{background:transparent;border:1px solid var(--fg)}.proj-row[data-st=active] .pstatus .dot{background:var(--fg);box-shadow:0 0 0 2px var(--bg),0 0 0 3px var(--fg)}#proj-peek{position:fixed;top:0;left:0;width:360px;aspect-ratio:4 / 3;pointer-events:none;z-index:100;border:.5px solid var(--line-strong);background:var(--bg);opacity:0;transform:translate(-50%,-50%) scale(.95);transition:opacity .22s ease,transform .26s cubic-bezier(.2,.8,.2,1);will-change:transform,opacity;overflow:hidden}#proj-peek.is-visible{opacity:1;transform:translate(-50%,-50%) scale(1)}#proj-peek img{width:100%;height:100%;object-fit:cover}@media(hover:none),(max-width:900px){#proj-peek{display:none}}.method-grid{display:grid;grid-template-columns:3fr 5fr;border-bottom:.5px solid var(--line-strong)}.method-portrait{border-right:.5px solid var(--line);padding:56px 40px;display:flex;flex-direction:column;gap:28px}.mp-frame{position:relative;aspect-ratio:575 / 744;width:100%;max-width:320px;filter:grayscale(1) contrast(1.05)}.mp-frame img{width:100%;height:100%;object-fit:cover;mix-blend-mode:multiply}.mp-frame:after{content:"";position:absolute;inset:0;border:.5px solid var(--fg);pointer-events:none}.mp-mark{position:absolute;width:14px;height:14px;pointer-events:none}.mp-mark:before,.mp-mark:after{content:"";position:absolute;background:var(--fg)}.mp-mark:before{left:50%;top:0;bottom:0;width:.5px;transform:translate(-50%)}.mp-mark:after{top:50%;left:0;right:0;height:.5px;transform:translateY(-50%)}.mp-tl{top:-7px;left:-7px}.mp-tr{top:-7px;right:-7px}.mp-bl{bottom:-7px;left:-7px}.mp-br{bottom:-7px;right:-7px}.mp-caption{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.05em;line-height:1.7}.method-axioms{display:grid;grid-template-rows:repeat(3,1fr)}.axiom{padding:56px 40px;border-bottom:.5px solid var(--line);font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.05em}.axiom:last-child{border-bottom:none}.axiom-num{color:var(--muted)}.axiom-body{font-family:var(--font-display);font-size:clamp(20px,2vw,28px);line-height:1.35;margin-top:16px;max-width:640px;text-transform:none;letter-spacing:-.01em;font-weight:400}.axiom-body em{font-style:normal;font-weight:500}.transform-lead{padding:64px 32px;border-bottom:.5px solid var(--line);max-width:980px}.transform-lead p{font-family:var(--font-display);font-size:clamp(20px,2vw,26px);line-height:1.5;letter-spacing:-.01em;color:var(--fg);margin-bottom:24px;text-wrap:pretty}.transform-lead p:last-child{margin-bottom:0}.transform-lead p em{font-style:normal;font-weight:500}.transform-grid{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:.5px solid var(--line)}.transform-cell{padding:56px 32px;border-left:.5px solid var(--line);display:flex;flex-direction:column;gap:16px}.transform-cell:first-child{border-left:none}.transform-cell .t-num{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.transform-cell .t-title{font-family:var(--font-display);font-weight:500;letter-spacing:-.02em;font-size:28px;line-height:1.15}.transform-cell .t-desc{font-family:var(--font-mono);font-size:11px;line-height:1.7;color:#2a2a2a;text-transform:none;letter-spacing:0}.transform-cta{display:grid;grid-template-columns:1fr auto;gap:32px;align-items:end;padding:56px 32px;border-bottom:.5px solid var(--line-strong)}.transform-cta .t-cta-lbl{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:12px}.transform-cta .t-cta-big{font-family:var(--font-display);font-size:clamp(24px,3vw,36px);line-height:1.2;letter-spacing:-.02em;text-wrap:balance;max-width:720px}.transform-cta .t-cta-mail{font-family:var(--font-mono);font-size:13px;text-transform:uppercase;letter-spacing:.05em;color:var(--fg);border-bottom:.5px solid var(--fg);padding-bottom:4px;transition:background var(--transition-fast),color var(--transition-fast)}.transform-cta .t-cta-mail:hover{background:var(--fg);color:var(--bg)}.log-grid{display:grid;grid-template-columns:repeat(2,1fr)}.log-row{display:grid;grid-template-columns:100px 110px 1fr 24px;gap:16px;padding:28px 24px;border-bottom:.5px solid var(--line);border-left:.5px solid var(--line);text-decoration:none;color:var(--fg);cursor:pointer;transition:background var(--transition-fast),padding .24s;align-items:baseline;font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.05em}.log-row:nth-child(odd){border-left:.5px solid var(--line-strong)}.log-row:hover{background:var(--fg);color:var(--bg);padding-left:32px}.log-row:hover .log-tag{background:var(--bg);color:var(--fg)}.log-row .log-date{color:var(--muted)}.log-row:hover .log-date{color:#e4e4e299}.log-tag{background:var(--fg);color:var(--bg);padding:3px 7px;width:fit-content;font-size:9px}.log-title{font-family:var(--font-display);font-weight:500;letter-spacing:-.015em;font-size:18px;line-height:1.3;text-transform:none}.log-row .arrow{font-family:var(--font-display);font-size:14px}.nl{display:grid;grid-template-columns:1fr;border-bottom:.5px solid var(--line-strong)}.nl>div{padding:56px 32px}.nl h3{font-family:var(--font-display);font-weight:500;letter-spacing:-.03em;font-size:clamp(36px,4.5vw,64px);line-height:.95;max-width:700px}.nl h3 em{font-style:normal;font-weight:500}.nl p{font-family:var(--font-mono);font-size:11px;line-height:1.7;color:#2a2a2a;max-width:520px;margin-top:18px;text-transform:none;letter-spacing:0}.nl-form{margin-top:22px;display:flex;border:.5px solid var(--fg);max-width:520px}.nl-form input{flex:1;background:transparent;border:none;outline:none;padding:14px 16px;font-family:var(--font-mono);font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:var(--fg)}.nl-form input::placeholder{color:var(--muted)}.nl-form button{background:var(--fg);color:var(--bg);border:none;padding:0 22px;cursor:pointer;font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase}.nl-form button:hover{background:var(--bg);color:var(--fg)}.nl-message{margin-top:18px;font-family:var(--font-mono);font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.site-footer{display:grid;grid-template-columns:repeat(8,1fr);border-bottom:.5px solid var(--line);font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.05em}.site-footer .fcell{padding:32px;border-left:.5px solid var(--line)}.site-footer .fcell:first-child{border-left:none}.site-footer .fcell--brand{grid-column:1 / 5}.site-footer .fcell--contact{grid-column:5 / 7}.site-footer .fcell--social{grid-column:7 / 9}.site-footer .fcell .fbrand{font-family:var(--font-display);font-weight:500;letter-spacing:-.03em;font-size:28px;text-transform:none}.site-footer .fcell .fbrand em{font-style:normal;font-weight:500}.site-footer .fcell .fdesc{margin-top:14px;font-family:var(--font-mono);text-transform:none;font-size:11px;line-height:1.7;max-width:380px;color:var(--muted);letter-spacing:0}.site-footer .fcell .flbl{color:var(--muted);margin-bottom:12px}.site-footer .fcell a{display:block;color:var(--fg);padding:4px 0;transition:padding var(--transition-fast),background var(--transition-fast),color var(--transition-fast)}.site-footer .fcell a:hover{background:var(--fg);color:var(--bg);padding-left:6px}.colophon{display:grid;grid-template-columns:repeat(8,1fr);padding:22px 0;font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.05em}.colophon>div{color:var(--muted)}.colophon .col-left{grid-column:1 / 5;padding:0 32px}.colophon .col-right{grid-column:7 / 9;padding:0 32px;text-align:right}.subpage-wrap{max-width:1080px;margin:0 auto;padding:0 32px 120px}.subpage-narrow{max-width:720px;margin:0 auto;padding:0 32px 120px}.hej-head{display:grid;grid-template-columns:1fr 1fr;gap:64px;margin-bottom:96px;align-items:end}.hej-head .meta{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);line-height:2}.hej-head .meta .row{display:grid;grid-template-columns:90px 1fr;padding:6px 0;border-bottom:.5px solid var(--line)}.hej-head .meta .row:first-child{border-top:.5px solid var(--line)}.hej-head .meta .row span:last-child{color:var(--fg)}.hej-head h1{font-family:var(--font-display);font-weight:400;font-size:clamp(56px,8vw,112px);line-height:.95;letter-spacing:-.035em;grid-column:1;grid-row:1}.hej-head h1 em{font-style:normal;font-weight:500}.hej-head .meta-block{grid-column:2;grid-row:1}.body-grid{display:grid;grid-template-columns:1fr 2fr;gap:64px;align-items:start}.portrait{position:sticky;top:100px}.portrait .frame{width:100%;aspect-ratio:4 / 5;background:#d0d0cf;border:.5px solid var(--line);overflow:hidden}.portrait .frame img{width:100%;height:100%;object-fit:cover}.portrait .cap{margin-top:12px;font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);display:flex;justify-content:space-between}.prose p{font-size:19px;line-height:1.65;color:#2a2a2a;margin-bottom:24px;text-wrap:pretty}.prose p:first-child{font-size:24px;line-height:1.5;color:var(--fg);margin-bottom:32px;letter-spacing:-.005em}.prose p:first-child:first-line{font-weight:500}.prose em{font-style:italic}.pullquote{margin:48px 0;padding:32px 0;border-top:.5px solid var(--line);border-bottom:.5px solid var(--line);font-family:var(--font-display);font-size:28px;line-height:1.3;letter-spacing:-.015em;color:var(--fg);text-wrap:balance}.pullquote:before{content:"—";display:block;color:var(--muted);font-family:var(--font-mono);font-size:12px;margin-bottom:12px}.hej-cta{margin-top:96px;padding-top:32px;border-top:.5px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:end}.hej-cta .lbl{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:12px}.hej-cta .big{font-family:var(--font-display);font-size:32px;line-height:1.15;letter-spacing:-.02em;text-wrap:balance}.hej-cta a.mail{font-family:var(--font-mono);font-size:13px;text-transform:uppercase;letter-spacing:.05em;color:var(--fg);border-bottom:.5px solid var(--fg);padding-bottom:4px;transition:background var(--transition-fast),color var(--transition-fast);align-self:end;justify-self:end}.hej-cta a.mail:hover{background:var(--fg);color:var(--bg)}.subpage-foot{margin-top:64px;padding-top:24px;border-top:.5px solid var(--line);color:var(--muted);font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.05em;display:flex;justify-content:space-between}.tanker-head{margin-bottom:64px}.tanker-head h1{font-family:var(--font-display);font-weight:400;font-size:56px;line-height:1;letter-spacing:-.025em;margin-bottom:20px}.tanker-head h1 em{font-style:normal;font-weight:500}.tanker-head p{color:#444;font-size:18px;line-height:1.55;max-width:560px}.filters{display:flex;gap:18px;flex-wrap:wrap;padding:18px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:24px;font-size:14px;color:var(--muted)}.filters button{background:none;border:none;padding:0;font:inherit;color:var(--muted);cursor:pointer}.filters button:hover,.filters button.active{color:var(--fg)}.tanker-list a.row{display:grid;grid-template-columns:110px 1fr auto;gap:24px;padding:24px 0;border-bottom:1px solid var(--line);align-items:baseline;transition:padding .22s}.tanker-list a.row:hover{padding-left:8px}.tanker-list a.row .date{color:var(--muted);font-size:13px;font-family:var(--font-mono)}.tanker-list a.row .title{font-family:var(--font-display);font-size:22px;line-height:1.25;letter-spacing:-.015em}.tanker-list a.row .meta{color:var(--muted);font-size:13px;white-space:nowrap;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em}.article-wrap{max-width:680px;margin:0 auto;padding:0 32px 120px}.article-meta{font-family:var(--font-mono);font-size:12px;color:var(--muted);margin-bottom:24px;display:flex;gap:14px;text-transform:uppercase;letter-spacing:.05em}.article-meta .dot:before{content:"·";margin-right:14px;color:var(--muted)}.article-title{font-family:var(--font-display);font-weight:400;font-size:52px;line-height:1.05;letter-spacing:-.025em;margin-bottom:28px}.article-title em{font-style:normal;font-weight:500}.article-lede{font-family:var(--font-display);font-size:22px;line-height:1.5;color:#2a2a2a;margin-bottom:56px}.article-body{font-size:18px;line-height:1.7;color:var(--fg)}.article-body p{margin-bottom:1.4em}.article-body h2{font-family:var(--font-display);font-weight:400;font-size:28px;line-height:1.2;letter-spacing:-.02em;margin:2.4em 0 .8em}.article-body h2 em{font-style:normal}.article-body h3{font-family:var(--font-display);font-weight:500;font-size:22px;line-height:1.3;letter-spacing:-.015em;margin:2em 0 .6em}.article-body blockquote{font-family:var(--font-display);font-size:24px;line-height:1.4;margin:2em 0;padding-left:24px;border-left:1px solid var(--fg);color:var(--fg)}.article-body ul,.article-body ol{padding-left:22px;margin:1.2em 0 1.6em}.article-body li{margin-bottom:.4em}.article-body a{border-bottom:1px solid currentColor}.article-body a:hover{color:var(--muted)}.article-body strong{font-weight:600}.article-body code{font-family:var(--font-mono);font-size:.9em;background:var(--bg-2);padding:2px 6px;border-radius:3px}.article-body pre{background:var(--bg-2);padding:18px 20px;overflow-x:auto;margin:1.6em 0;font-family:var(--font-mono);font-size:13px;line-height:1.6}.article-body pre code{background:none;padding:0}.signoff{margin-top:72px;padding-top:24px;border-top:1px solid var(--line);color:var(--muted);font-size:14px;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em}.signoff strong{display:block;color:var(--fg);font-family:var(--font-display);font-weight:400;font-size:22px;margin-top:6px;text-transform:none;letter-spacing:-.015em}.more{margin-top:80px;padding-top:32px;border-top:1px solid var(--line)}.more h3{font-family:var(--font-display);font-weight:400;font-size:20px;margin-bottom:18px;color:var(--muted)}.more a.row{display:grid;grid-template-columns:1fr auto;gap:16px;padding:16px 0;border-bottom:1px solid var(--line);align-items:baseline;transition:padding .22s}.more a.row:hover{padding-left:8px}.more a.row .t{font-family:var(--font-display);font-size:18px;line-height:1.3}.more a.row .m{color:var(--muted);font-size:13px;white-space:nowrap;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em}#progress{position:fixed;top:0;left:0;height:2px;background:var(--fg);width:0%;z-index:60;transition:width 60ms linear}@media(max-width:900px){.section-head{grid-template-columns:repeat(4,1fr)}.section-head .lbl{grid-column:1 / 2;padding:32px 20px}.section-head .ttl{grid-column:2 / 5;padding:32px 20px}.log-grid,.transform-grid{grid-template-columns:1fr}.transform-cell{border-left:none;border-top:.5px solid var(--line);padding:36px 20px}.transform-cell:first-child{border-top:none}.transform-lead{padding:36px 20px}.transform-cta{grid-template-columns:1fr;padding:36px 20px}.nl>div{padding:32px 20px}.method-grid{grid-template-columns:1fr}.method-portrait{border-right:none;border-bottom:.5px solid var(--line);padding:32px 20px}.mp-frame{max-width:220px}.axiom{padding:32px 20px}.hej-head{grid-template-columns:1fr;gap:32px}.hej-head .meta-block{grid-column:1;grid-row:2}.body-grid{grid-template-columns:1fr;gap:40px}.portrait{position:static;max-width:320px}.prose p:first-child{font-size:20px}.prose p{font-size:17px}.pullquote{font-size:22px}.hej-cta{grid-template-columns:1fr}.hej-cta a.mail{justify-self:start}}@media(max-width:820px){.nav{grid-template-columns:1fr auto;margin-bottom:40px;position:sticky;top:0;z-index:80}.nav .brand{grid-column:1;grid-row:1;border-right:none;padding:16px 20px}.nav-toggle{display:flex;grid-column:2;grid-row:1;align-self:center;justify-self:end;margin-right:16px}.nav .links{grid-column:1 / -1;grid-row:2;border-left:none;border-top:.5px solid var(--line);padding:0 20px;text-align:left;justify-content:flex-start;flex-direction:column;gap:0;max-height:0;overflow:hidden;transition:max-height .28s ease,padding .2s ease}.nav .links.is-open{max-height:360px;padding:12px 20px 20px;background:var(--bg)}.nav .links a{display:block;margin:0;padding:10px 6px;font-size:12px;border-bottom:.5px dashed var(--line);width:100%}.nav .links a:last-child{border-bottom:none}.proj-row{grid-template-columns:1fr;gap:0}.proj-row>div{padding:24px 20px;border-left:none;border-top:.5px dashed var(--line)}.proj-row>div:first-child{border-top:none;padding-bottom:8px}.proj-row .pname{font-size:24px}.proj-row .pdesc{font-size:11px;line-height:1.6}.site-footer{grid-template-columns:1fr}.site-footer .fcell,.site-footer .fcell--brand,.site-footer .fcell--contact,.site-footer .fcell--social{grid-column:1 / -1;border-left:none;border-top:.5px solid var(--line);padding:24px 20px}.site-footer .fcell:first-child{border-top:none}.colophon{grid-template-columns:1fr;gap:6px;padding:20px 0}.colophon .col-left,.colophon .col-right{grid-column:1 / -1;padding:0 20px;text-align:left}.hero{height:auto;min-height:100vh}#ui-overlay{grid-template-columns:1fr auto;grid-template-rows:auto 1fr auto}.hd-main{grid-column:1;grid-row:1;padding:16px 20px;border-left:none}.hd-status{grid-column:2;grid-row:1;text-align:right;padding:12px 16px;border-left:.5px solid var(--line);position:relative}.y-labels,.x-labels{display:none}.signature{grid-column:1 / -1;grid-row:3;padding:24px 20px}.signature .name{font-size:clamp(48px,13vw,80px)}.signature .role{font-size:11px;line-height:1.7}.hd-status .hero-nav-toggle{display:flex}.hd-status .hero-nav-links{display:none;position:absolute;top:calc(100% + .5px);right:0;background:var(--bg);border:.5px solid var(--line-strong);padding:12px 20px;min-width:200px;text-align:left;z-index:30}.hd-status .hero-nav-links.is-open{display:block}.hd-status .hero-nav-links a{display:block;padding:10px 0;margin:0;border-bottom:.5px dashed var(--line)}.hd-status .hero-nav-links a:last-child{border-bottom:none}.scroll-cue{display:none}}@media(min-width:821px){.hd-status .hero-nav-toggle{display:none}.hd-status .hero-nav-links{display:inline;position:static;background:none;border:none;padding:0}.hd-status .hero-nav-links a{display:inline-block;border:none;padding:4px 6px}}@media(max-width:600px){.subpage-wrap,.subpage-narrow,.article-wrap{padding:0 22px 80px}.article-title{font-size:36px}.article-lede{font-size:19px;margin-bottom:32px}.article-body{font-size:17px}.article-meta{font-size:11px;gap:10px;flex-wrap:wrap}.article-meta .dot:before{margin-right:10px}.tanker-head h1{font-size:40px}.tanker-list a.row{grid-template-columns:1fr;gap:6px;padding:18px 0}.tanker-list a.row .date{font-size:11px}.tanker-list a.row .title{font-size:19px}.tanker-list a.row .meta{font-size:11px}.filters{gap:14px;font-size:13px;padding:14px 0}.section-head .lbl{padding:24px 20px 8px;grid-column:1 / -1;border-right:none}.section-head .ttl{padding:8px 20px 28px;grid-column:1 / -1}.section-head .ttl .big,.nl h3{font-size:clamp(28px,8vw,40px)}.nl-form{flex-direction:column}.nl-form button{padding:14px}.more a.row{grid-template-columns:1fr;gap:4px;padding:14px 0}.more a.row .m{font-size:11px}.pullquote{font-size:20px;padding:24px 0;margin:32px 0}.hej-cta .big{font-size:24px}.signoff{font-size:12px}.signoff strong{font-size:18px}}.kb-wrap{padding:0 32px 96px;max-width:1440px;margin:0 auto}.kb-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding-bottom:28px;border-bottom:.5px solid var(--line-strong);margin-bottom:28px}.kb-title{display:flex;flex-direction:column;gap:6px}.kb-eyebrow{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.kb-title h1{font-family:var(--font-display);font-weight:500;font-size:32px;letter-spacing:-.02em;line-height:1.1}.kb-status{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);min-height:14px}.kb-load-error{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 18px;margin-bottom:18px;border:.5px solid #b00020;background:#b000200f;color:#b00020}.kb-load-error[hidden],.kb-toast[hidden]{display:none!important}.kb-load-error>div{display:flex;flex-direction:column;gap:4px}.kb-load-error strong{font-family:var(--font-display);font-weight:500;font-size:14px}.kb-load-error span{font-family:var(--font-display);font-size:12px;color:#1a1a1a}.kb-load-error button{background:#b00020;color:var(--bg);border:.5px solid #b00020;padding:10px 16px;cursor:pointer;font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.08em;flex:0 0 auto}.kb-load-error button:hover{background:var(--bg);color:#b00020}.kb-add:disabled{opacity:.4;cursor:not-allowed}.kb-add:disabled:hover{background:transparent;color:var(--fg)}.kb-board{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:.5px solid var(--line);border-left:.5px solid var(--line)}.kb-column{border-right:.5px solid var(--line);border-bottom:.5px solid var(--line);background:var(--bg);display:flex;flex-direction:column;min-height:60vh}.kb-col-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:.5px solid var(--line);background:var(--bg-2);position:sticky;top:0;z-index:2}.kb-col-head h2{font-family:var(--font-mono);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--fg)}.kb-add{background:transparent;border:.5px solid var(--fg);color:var(--fg);padding:6px 10px;cursor:pointer;font-family:var(--font-mono);font-size:9px;text-transform:uppercase;letter-spacing:.08em;transition:background var(--transition-fast),color var(--transition-fast)}.kb-add:hover{background:var(--fg);color:var(--bg)}.kb-add span{margin-right:4px;font-weight:700}.kb-list{flex:1;padding:12px;display:flex;flex-direction:column;gap:10px;min-height:80px}.kb-empty{border:.5px dashed var(--line-strong);padding:24px 16px;text-align:center;font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.kb-card{background:var(--bg-2);border:.5px solid var(--line-strong);padding:12px 14px;cursor:grab;display:flex;flex-direction:column;gap:8px;transition:border-color var(--transition-fast),transform var(--transition-fast)}.kb-card:hover{border-color:var(--fg)}.kb-card:focus-visible{outline:2px solid var(--fg);outline-offset:-2px}.kb-card:active{cursor:grabbing}.kb-card-title{font-family:var(--font-display);font-weight:500;font-size:14px;line-height:1.35;letter-spacing:-.01em;color:var(--fg)}.kb-card-desc{font-family:var(--font-display);font-size:12px;line-height:1.5;color:#444;white-space:pre-wrap;word-wrap:break-word;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.kb-card-meta{display:flex;flex-wrap:wrap;gap:6px;margin-top:2px}.kb-tag{font-family:var(--font-mono);font-size:9px;text-transform:uppercase;letter-spacing:.08em;padding:3px 7px;border:.5px solid var(--line-strong);color:var(--fg);background:var(--bg);line-height:1}.kb-tag-assignee[data-assignee=martin]{border-color:var(--fg)}.kb-tag-assignee[data-assignee=sophia]{border-color:var(--fg);background:var(--fg);color:var(--bg)}.kb-tag-date.is-overdue{border-color:#b00020;color:#b00020}.kb-card-ghost{opacity:.35}.kb-card-chosen{border-color:var(--fg)}.kb-card-drag{box-shadow:0 8px 24px #0000001f;transform:rotate(.5deg)}.kb-modal{border:.5px solid var(--fg);background:var(--bg);color:var(--fg);padding:0;max-width:560px;width:calc(100vw - 32px);max-height:calc(100vh - 64px);overflow:auto}.kb-modal::backdrop{background:#1a1a1a73}.kb-modal[open]{animation:kbModalIn .18s ease}@keyframes kbModalIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.kb-modal form{display:flex;flex-direction:column;gap:16px;padding:22px 22px 18px}.kb-modal-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:12px;border-bottom:.5px solid var(--line)}.kb-modal-head h2{font-family:var(--font-display);font-weight:500;font-size:18px;letter-spacing:-.01em}.kb-icon-btn{background:transparent;border:none;cursor:pointer;font-size:22px;line-height:1;color:var(--muted);padding:4px 8px}.kb-icon-btn:hover{color:var(--fg)}.kb-field{display:flex;flex-direction:column;gap:6px}.kb-field span{font-family:var(--font-mono);font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.kb-field input,.kb-field textarea,.kb-field select{font-family:var(--font-display);font-size:14px;color:var(--fg);background:var(--bg);border:.5px solid var(--line-strong);padding:10px 12px;outline:none;transition:border-color var(--transition-fast);appearance:none;-webkit-appearance:none;border-radius:0}.kb-field textarea{resize:vertical;min-height:80px}.kb-field select{background-image:linear-gradient(45deg,transparent 50%,var(--fg) 50%),linear-gradient(135deg,var(--fg) 50%,transparent 50%);background-position:calc(100% - 14px) 50%,calc(100% - 9px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:28px}.kb-field input:focus,.kb-field textarea:focus,.kb-field select:focus{border-color:var(--fg)}.kb-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}.kb-modal-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:14px;border-top:.5px solid var(--line)}.kb-modal-actions{display:flex;gap:8px}.kb-primary,.kb-ghost,.kb-danger{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.08em;padding:10px 16px;cursor:pointer;border:.5px solid var(--fg);transition:background var(--transition-fast),color var(--transition-fast)}.kb-primary{background:var(--fg);color:var(--bg)}.kb-primary:hover{background:var(--bg);color:var(--fg)}.kb-ghost{background:transparent;color:var(--fg)}.kb-ghost:hover{background:var(--fg);color:var(--bg)}.kb-danger{background:transparent;color:#b00020;border-color:#b00020}.kb-danger:hover{background:#b00020;color:var(--bg)}.kb-toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%);background:var(--fg);color:var(--bg);padding:10px 16px;font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.08em;z-index:200}@media(max-width:900px){.kb-wrap{padding:0 16px 64px}.kb-head{flex-direction:column;align-items:flex-start;gap:8px}.kb-board{grid-template-columns:1fr}.kb-column{min-height:auto}.kb-card,.kb-card:active{cursor:pointer}.kb-row{grid-template-columns:1fr}}.kb-cal-wrap{margin-top:48px;padding-top:28px;border-top:.5px solid var(--line-strong)}.kb-cal-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:18px}.kb-cal-head h2{font-family:var(--font-display);font-weight:500;font-size:22px;letter-spacing:-.01em}.kb-cal-legend{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.kb-cal{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));border-top:.5px solid var(--line);border-left:.5px solid var(--line)}.kb-cal-month{border-right:.5px solid var(--line);border-bottom:.5px solid var(--line);background:var(--bg);display:flex;flex-direction:column}.kb-cal-mhead{font-family:var(--font-mono);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;text-align:center;padding:10px 8px;border-bottom:.5px solid var(--line);background:var(--bg-2)}.kb-cal-day{display:grid;grid-template-columns:14px 22px 1fr 22px;align-items:center;column-gap:6px;padding:5px 8px;border-bottom:.5px solid var(--line);font-family:var(--font-mono);font-size:10px;line-height:1.3;color:var(--fg);min-height:22px}.kb-cal-day:last-child{border-bottom:none}.kb-cal-day.is-weekend{background:var(--bg-2)}.kb-cal-day.is-today{background:var(--fg);color:var(--bg)}.kb-cal-holiday{color:var(--muted)}.kb-cal-deadline{color:#c2410c;font-weight:600}.kb-cal-day.is-today .kb-cal-holiday{color:var(--bg);opacity:.65}.kb-cal-day.is-today .kb-cal-deadline{color:#fbbf24}.kb-cal-day.has-deadline{cursor:help}.kb-cal-day.has-deadline:hover,.kb-cal-day.has-deadline:focus-visible{outline:.5px solid #c2410c;outline-offset:-1px;background:#c2410c0f}.kb-cal-day.is-today.has-deadline:hover,.kb-cal-day.is-today.has-deadline:focus-visible{background:var(--fg);outline-color:#fbbf24}.kb-cal-pop{position:fixed;z-index:200;background:var(--bg);border:.5px solid var(--fg);padding:14px 16px;width:280px;max-width:calc(100vw - 32px);font-family:var(--font-display);color:var(--fg);pointer-events:none;box-shadow:0 12px 32px #00000024;line-height:1.4}.kb-cal-pop[hidden]{display:none!important}.kb-cal-pop-card{display:flex;flex-direction:column;gap:4px}.kb-cal-pop-card+.kb-cal-pop-card{margin-top:12px;padding-top:12px;border-top:.5px solid var(--line)}.kb-cal-pop-title{font-weight:500;font-size:14px;letter-spacing:-.01em;color:var(--fg)}.kb-cal-pop-meta{font-family:var(--font-mono);font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.kb-cal-pop-desc{font-size:12px;color:#444;white-space:pre-wrap;word-wrap:break-word;margin-top:2px}.kb-cal-wd{text-transform:uppercase;color:var(--muted)}.kb-cal-day.is-today .kb-cal-wd{color:var(--bg);opacity:.7}.kb-cal-num{text-align:left;font-variant-numeric:tabular-nums}.kb-cal-label{color:var(--fg);font-family:var(--font-display);font-size:11px;font-weight:400;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;letter-spacing:0}.kb-cal-day.is-today .kb-cal-label{color:var(--bg)}.kb-cal-day.has-deadline .kb-cal-label{font-weight:500}.kb-cal-week{text-align:right;font-weight:700;font-variant-numeric:tabular-nums;color:var(--fg)}.kb-cal-week.is-empty{visibility:hidden}.kb-cal-day.is-today .kb-cal-week{color:var(--bg)}@media(max-width:1100px){.kb-cal{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:700px){.kb-cal{grid-template-columns:repeat(2,minmax(0,1fr))}.kb-cal-day{font-size:9px}.kb-cal-label{font-size:10px}}@media(max-width:480px){.kb-cal{grid-template-columns:1fr}}.pb-home{max-width:1080px;margin:0 auto;padding:0 32px 120px}.pb-hero{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:end;margin-bottom:96px}.pb-hero h1{font-family:var(--font-display);font-weight:400;font-size:clamp(44px,6vw,84px);line-height:1;letter-spacing:-.03em}.pb-hero h1 em{font-style:normal;font-weight:500}.pb-hero-sub{margin-top:14px;font-family:var(--font-display);font-weight:400;font-size:clamp(20px,2.4vw,30px);line-height:1.2;letter-spacing:-.01em;color:var(--muted)}.pb-hero .meta{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);line-height:2}.pb-hero .meta .row{display:grid;grid-template-columns:110px 1fr;padding:6px 0;border-bottom:.5px solid var(--line)}.pb-hero .meta .row:first-child{border-top:.5px solid var(--line)}.pb-hero .meta .row span:last-child{color:var(--fg)}.pb-intro-prose{max-width:680px;margin:0 0 96px;font-size:19px;line-height:1.65;color:#2a2a2a}.pb-intro-prose p{margin-bottom:18px}.pb-intro-prose p:first-child{font-size:22px;line-height:1.5;color:var(--fg)}.pb-intro-prose em{font-style:italic;font-weight:inherit}.pb-pyramid-wrap{margin:0 0 96px;padding:56px 0;border-top:.5px solid var(--line-strong);border-bottom:.5px solid var(--line-strong)}.pb-pyramid-eyebrow{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:24px}.pb-pyramid{display:block;width:100%;max-width:720px;margin:0 auto;height:auto}.pb-pyramid-row{cursor:pointer;transition:opacity var(--transition-fast);opacity:0;transform:translateY(-8px);animation:pbRowIn .42s ease forwards}@keyframes pbRowIn{to{opacity:1;transform:translateY(0)}}.pb-pyramid-row rect,.pb-pyramid-row polygon{fill:var(--bg);stroke:var(--fg);stroke-width:.75;transition:fill var(--transition-fast),stroke var(--transition-fast)}.pb-pyramid-row text{fill:var(--fg);font-family:var(--font-display);transition:fill var(--transition-fast)}.pb-pyramid-row .pb-pyramid-num{font-family:var(--font-mono);font-size:9px;text-transform:uppercase;letter-spacing:.08em;fill:var(--muted)}.pb-pyramid-row:hover rect,.pb-pyramid-row:hover polygon,.pb-pyramid-row:focus-visible rect,.pb-pyramid-row:focus-visible polygon{fill:var(--fg)}.pb-pyramid-row:hover text,.pb-pyramid-row:focus-visible text{fill:var(--bg)}.pb-pyramid-row:hover .pb-pyramid-num,.pb-pyramid-row:focus-visible .pb-pyramid-num{fill:var(--bg);opacity:.6}.pb-pyramid-row:focus-visible{outline:none}.pb-layers{margin:0 0 80px;border-top:.5px solid var(--line-strong)}.pb-layer-row{display:grid;grid-template-columns:100px 1fr 120px 36px;gap:24px;padding:28px 0;border-bottom:.5px solid var(--line);text-decoration:none;color:var(--fg);align-items:baseline;transition:padding var(--transition-fast),background var(--transition-fast),color var(--transition-fast);font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.05em}.pb-layer-row:hover{background:var(--fg);color:var(--bg);padding-left:24px;padding-right:24px}.pb-layer-row:hover .pb-layer-meta{color:#e4e4e299}.pb-layer-row .pb-layer-num{color:var(--muted)}.pb-layer-row:hover .pb-layer-num{color:#e4e4e299}.pb-layer-row .pb-layer-title{font-family:var(--font-display);font-weight:500;font-size:22px;line-height:1.25;letter-spacing:-.015em;text-transform:none}.pb-layer-row .pb-layer-meta{color:var(--muted);text-align:right}.pb-layer-row .arrow{font-family:var(--font-display);font-size:16px;text-align:right}.pb-search-wrap{margin:0 0 80px;padding:32px 0;border-top:.5px solid var(--line);border-bottom:.5px solid var(--line)}.pb-search-eyebrow{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:12px}.pb-search-trigger{display:flex;align-items:center;justify-content:space-between;width:100%;background:var(--bg);border:.5px solid var(--line-strong);padding:14px 16px;cursor:pointer;color:var(--muted);font-family:var(--font-mono);font-size:11px;letter-spacing:.05em;text-transform:uppercase;transition:border-color var(--transition-fast),color var(--transition-fast)}.pb-search-trigger:hover{border-color:var(--fg);color:var(--fg)}.pb-search-trigger .kbd{border:.5px solid var(--line-strong);padding:3px 6px;font-size:9px;color:var(--muted);background:var(--bg-2)}.pb-search-trigger:hover .kbd{border-color:var(--fg);color:var(--fg)}.pb-shell{display:grid;grid-template-columns:200px minmax(0,680px) 200px;gap:48px;max-width:1240px;margin:0 auto;padding:0 32px 120px;align-items:start}.pb-aside{position:sticky;top:96px;font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.05em}.pb-aside-eyebrow{display:block;color:var(--muted);margin-bottom:14px;padding-bottom:12px;border-bottom:.5px solid var(--line)}.pb-aside-eyebrow--link{color:var(--fg);transition:color var(--transition-fast),padding var(--transition-fast)}.pb-aside-eyebrow--link:hover{color:var(--muted);padding-left:4px}.pb-aside-list{list-style:none;padding:0;margin:0}.pb-aside-list li{margin:0;padding:0}.pb-aside-list a{display:grid;grid-template-columns:28px 1fr;gap:8px;padding:10px 0;border-bottom:.5px dashed var(--line);color:var(--fg);transition:padding var(--transition-fast),color var(--transition-fast)}.pb-aside-list a:last-child{border-bottom:none}.pb-aside-list a .num{color:var(--muted)}.pb-aside-list a:hover{padding-left:4px}.pb-aside-list a.is-current,.pb-aside-list a.is-current .num{color:var(--fg)}.pb-aside-list li{position:relative}.pb-aside-list li:has(a.is-current):before{content:"›";position:absolute;left:-14px;top:50%;transform:translateY(-50%);color:var(--fg);font-family:var(--font-display);font-size:14px;line-height:1}.pb-toc{position:sticky;top:96px;font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.05em}.pb-toc-eyebrow{color:var(--muted);margin-bottom:14px;padding-bottom:12px;border-bottom:.5px solid var(--line)}.pb-toc-list{list-style:none;padding:0;margin:0}.pb-toc-list li{padding:0;margin:0}.pb-toc-list a{display:block;padding:8px 0;color:var(--muted);border-bottom:.5px dashed var(--line);transition:color var(--transition-fast),padding var(--transition-fast);line-height:1.45;word-wrap:break-word}.pb-toc-list a:last-child{border-bottom:none}.pb-toc-list a:hover{color:var(--fg);padding-left:4px}.pb-toc-list a.is-active{color:var(--fg)}.pb-article-meta{font-family:var(--font-mono);font-size:10px;color:var(--muted);margin-bottom:18px;display:flex;gap:14px;text-transform:uppercase;letter-spacing:.05em;flex-wrap:wrap}.pb-article-meta .dot:before{content:"·";margin-right:14px;color:var(--muted)}.pb-article-meta a.pb-back-link{color:var(--fg);padding:2px 4px;margin:-2px -4px;transition:background var(--transition-fast),color var(--transition-fast)}.pb-article-meta a.pb-back-link:hover{background:var(--fg);color:var(--bg)}.pb-article h1{font-family:var(--font-display);font-weight:400;font-size:clamp(36px,5vw,52px);line-height:1.05;letter-spacing:-.025em;margin-bottom:24px}.pb-article h1 em{font-style:normal;font-weight:500}.pb-article .pb-lede{font-family:var(--font-display);font-size:22px;line-height:1.5;color:#2a2a2a;margin-bottom:56px}.pb-principle{margin:64px 0;padding:36px 32px;border-top:.5px solid var(--line-strong);border-bottom:.5px solid var(--line-strong);background:var(--bg-2)}.pb-principle .lbl{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:12px}.pb-principle p{font-family:var(--font-display);font-size:clamp(22px,2.6vw,30px);line-height:1.3;letter-spacing:-.015em;color:var(--fg);text-wrap:balance;font-weight:400}.pb-principle p em{font-style:normal;font-weight:500}.pb-next{margin-top:56px;padding-top:32px;border-top:.5px solid var(--line);display:grid;grid-template-columns:1fr auto;gap:24px;align-items:end;text-decoration:none;color:var(--fg);transition:padding var(--transition-fast)}.pb-next:hover{padding-left:6px}.pb-next .lbl{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:8px}.pb-next .ttl{font-family:var(--font-display);font-weight:500;font-size:26px;letter-spacing:-.02em;line-height:1.15}.pb-next .arrow{font-family:var(--font-display);font-size:22px;align-self:end}.pb-mobile-nav{display:none;margin-bottom:32px;border-top:.5px solid var(--line);border-bottom:.5px solid var(--line)}.pb-mobile-nav summary{padding:14px 0;cursor:pointer;font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);display:flex;justify-content:space-between;align-items:center;list-style:none}.pb-mobile-nav summary::-webkit-details-marker{display:none}.pb-mobile-nav summary:after{content:"+";font-family:var(--font-display);font-size:16px;color:var(--fg)}.pb-mobile-nav[open] summary:after{content:"−"}.pb-mobile-nav .pb-aside-list a{font-size:11px}.pb-mobile-nav-inner{padding:0 0 14px}.pb-mobile-toc{display:none;margin-bottom:32px;border:.5px solid var(--line);padding:0 16px}.pb-mobile-toc summary{padding:14px 0;cursor:pointer;font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);display:flex;justify-content:space-between;list-style:none}.pb-mobile-toc summary::-webkit-details-marker{display:none}.pb-mobile-toc summary:after{content:"+";font-family:var(--font-display);font-size:16px;color:var(--fg)}.pb-mobile-toc[open] summary:after{content:"−"}.pb-mobile-toc-inner{padding:0 0 14px}.pb-article-body{font-size:18px;line-height:1.7;color:var(--fg)}.pb-article-body p{margin-bottom:1.4em}.pb-article-body h2{font-family:var(--font-display);font-weight:400;font-size:28px;line-height:1.2;letter-spacing:-.02em;margin:2.4em 0 .8em;scroll-margin-top:88px}.pb-article-body h2 em{font-style:normal}.pb-article-body h3{font-family:var(--font-display);font-weight:500;font-size:22px;line-height:1.3;letter-spacing:-.015em;margin:2em 0 .6em;scroll-margin-top:88px}.pb-article-body blockquote{font-family:var(--font-display);font-size:24px;line-height:1.4;margin:2em 0;padding-left:24px;border-left:1px solid var(--fg);color:var(--fg)}.pb-article-body ul,.pb-article-body ol{padding-left:22px;margin:1.2em 0 1.6em}.pb-article-body li{margin-bottom:.4em}.pb-article-body a{border-bottom:1px solid currentColor}.pb-article-body a:hover{color:var(--muted)}.pb-article-body strong{font-weight:600}.pb-article-body code{font-family:var(--font-mono);font-size:.9em;background:var(--bg-2);padding:2px 6px;border-radius:3px}.pb-article-body pre{background:var(--bg-2);padding:18px 20px;overflow-x:auto;margin:1.6em 0;font-family:var(--font-mono);font-size:13px;line-height:1.6}.pb-article-body pre code{background:none;padding:0}.pb-figure{margin:2.4em 0}.pb-figure{margin:2.4em 0;padding:0}.pb-figcaption{margin-top:14px;font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);text-align:center;line-height:1.6}.pb-venn{display:block;width:100%;max-width:560px;margin:0 auto;height:auto}.pb-venn .ring{fill:var(--fg);fill-opacity:.08;stroke:var(--fg);stroke-width:.75;stroke-opacity:1;transition:fill-opacity var(--transition-fast),stroke-width var(--transition-fast),stroke-opacity var(--transition-fast)}.pb-venn[data-hover="0"] .ring[data-ring="0"],.pb-venn[data-hover="1"] .ring[data-ring="1"],.pb-venn[data-hover="2"] .ring[data-ring="2"]{fill-opacity:.18;stroke-width:1.25}.pb-venn[data-hover="0"] .ring:not([data-ring="0"]),.pb-venn[data-hover="1"] .ring:not([data-ring="1"]),.pb-venn[data-hover="2"] .ring:not([data-ring="2"]){fill-opacity:.03;stroke-opacity:.35}.pb-venn .label{fill:var(--fg);font-family:var(--font-display);font-size:14px;font-weight:500;letter-spacing:-.005em}.pb-venn .label-sub{fill:var(--muted);font-family:var(--font-mono);font-size:10px;letter-spacing:.04em}.pb-venn .sweet-link{cursor:pointer}.pb-venn .sweet-hit{fill:transparent;stroke:none;transition:fill var(--transition-fast)}.pb-venn .sweet-link:hover .sweet-hit,.pb-venn .sweet-link:focus-visible .sweet-hit{fill:var(--fg);fill-opacity:.06}.pb-venn .sweet-link:focus-visible{outline:none}.pb-venn .sweet-text{fill:var(--fg);font-family:var(--font-display);font-size:14px;font-weight:500;letter-spacing:-.01em;pointer-events:none}.pb-tools{max-width:1080px;margin:0 auto;padding:0 32px 120px}.pb-tools-head{margin-bottom:40px}.pb-tools-head h1{font-family:var(--font-display);font-weight:400;font-size:clamp(48px,6vw,72px);line-height:1;letter-spacing:-.025em;margin-bottom:16px}.pb-tools-head h1 em{font-style:normal;font-weight:500}.pb-tools-head .lede{font-size:19px;line-height:1.55;color:#2a2a2a;max-width:640px}.pb-tools-stamp{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:24px;padding:12px 0;border-top:.5px solid var(--line);border-bottom:.5px solid var(--line);display:flex;justify-content:space-between;gap:16px}.pb-tools-stamp strong{color:var(--fg);font-weight:500}.pb-tools-filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:32px}.pb-pill{background:transparent;border:.5px solid var(--line-strong);color:var(--fg);padding:8px 14px;cursor:pointer;font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.05em;transition:background var(--transition-fast),color var(--transition-fast),border-color var(--transition-fast)}.pb-pill:hover{border-color:var(--fg)}.pb-pill.is-active{background:var(--fg);color:var(--bg);border-color:var(--fg)}.pb-tools-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:.5px solid var(--line);border-left:.5px solid var(--line)}.pb-tool-card{border-right:.5px solid var(--line);border-bottom:.5px solid var(--line);padding:24px;display:flex;flex-direction:column;gap:12px;text-decoration:none;color:var(--fg);transition:background var(--transition-fast);min-height:180px}.pb-tool-card:hover{background:var(--bg-2)}.pb-tool-card .pb-tool-name{font-family:var(--font-display);font-weight:500;font-size:22px;letter-spacing:-.015em;line-height:1.15}.pb-tool-card .pb-tool-desc{font-size:14px;line-height:1.5;color:#2a2a2a;flex:1}.pb-tool-card .pb-tool-foot{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-top:auto}.pb-tool-card .pb-tool-cat{font-family:var(--font-mono);font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.pb-tool-card .pb-tool-arrow{font-family:var(--font-display);font-size:16px}.pb-tools-empty{grid-column:1 / -1;padding:56px 24px;text-align:center;font-family:var(--font-mono);font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.pb-search-overlay[hidden]{display:none!important}.pb-search-overlay{position:fixed;inset:0;z-index:90;background:#1a1a1a73;display:flex;justify-content:center;align-items:flex-start;padding:80px 16px 24px;overflow-y:auto}.pb-search-panel{background:var(--bg);border:.5px solid var(--fg);width:100%;max-width:640px;padding:20px;max-height:calc(100vh - 120px);display:flex;flex-direction:column}.pb-search-panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px;padding-bottom:12px;border-bottom:.5px solid var(--line)}.pb-search-panel-head h2{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.pb-search-close{background:none;border:none;cursor:pointer;font-family:var(--font-display);font-size:22px;color:var(--muted);line-height:1;padding:4px 8px}.pb-search-close:hover{color:var(--fg)}.pb-search-panel .pagefind-ui{--pagefind-ui-primary: var(--fg);--pagefind-ui-text: var(--fg);--pagefind-ui-background: var(--bg);--pagefind-ui-border: var(--line-strong);--pagefind-ui-tag: var(--bg-2);--pagefind-ui-border-width: .5px;--pagefind-ui-border-radius: 0;--pagefind-ui-image-border-radius: 0;--pagefind-ui-image-box-ratio: 3 / 2;--pagefind-ui-font: var(--font-display)}.pb-search-panel .pagefind-ui__search-input{font-family:var(--font-mono);font-size:12px;letter-spacing:.05em;text-transform:uppercase}.pb-search-panel .pagefind-ui__search-clear{font-size:11px}.pb-search-panel .pagefind-ui__result-title{font-family:var(--font-display);font-weight:500;font-size:16px}.pb-search-panel .pagefind-ui__result-excerpt{font-family:var(--font-display);font-size:13px;line-height:1.5}.pb-search-panel .pagefind-ui__result-tags{font-family:var(--font-mono)}.pb-admin{max-width:880px;margin:0 auto;padding:0 32px 96px}.pb-admin-head{margin-bottom:48px}.pb-admin-eyebrow{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:16px}.pb-admin-head h1{font-family:var(--font-display);font-weight:400;font-size:clamp(36px,5vw,56px);line-height:1;letter-spacing:-.025em;margin-bottom:18px}.pb-admin-head p{font-size:16px;line-height:1.55;color:#2a2a2a;max-width:620px}.pb-admin-token-section{border:.5px solid var(--line-strong);padding:24px;margin-bottom:48px;display:flex;flex-direction:column;gap:16px;max-width:480px}.pb-admin-token-actions{display:flex;gap:8px}.pb-admin-status{font-family:var(--font-mono);font-size:11px;color:var(--muted);margin:0;min-height:14px}.pb-admin-list-head{display:flex;align-items:baseline;gap:12px;margin-bottom:24px}.pb-admin-list-head h2{font-family:var(--font-display);font-weight:500;font-size:22px;letter-spacing:-.015em}.pb-admin-count{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.pb-admin-page{margin-bottom:40px}.pb-admin-page h3{font-family:var(--font-mono);font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:14px;padding-bottom:8px;border-bottom:.5px solid var(--line)}.pb-admin-page h3 span{color:var(--fg);margin-left:8px}.pb-admin-jump{font-family:var(--font-mono);font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);border-bottom:.5px solid var(--line);padding-bottom:1px}.pb-admin-jump:hover{color:var(--fg);border-bottom-color:var(--fg)}.pb-anno-mark{background:#1a1a1a12;border-bottom:.5px solid var(--line-strong);padding:1px;cursor:pointer;transition:background var(--transition-fast),border-color var(--transition-fast);color:inherit}.pb-anno-mark:hover,.pb-anno-mark:focus-visible{background:#1a1a1a2e;border-bottom-color:var(--fg);outline:none}.pb-anno-mark.is-flash{animation:pbAnnoFlash 1.2s ease-out}@keyframes pbAnnoFlash{0%,30%{background:var(--fg);color:var(--bg)}to{background:#1a1a1a12;color:inherit}}.pb-anno-toolbar{position:absolute;z-index:80;background:var(--fg);color:var(--bg);border:.5px solid var(--fg);padding:0;display:inline-flex;box-shadow:0 6px 20px #0000002e}.pb-anno-toolbar[hidden]{display:none!important}.pb-anno-toolbar button{background:transparent;border:none;color:var(--bg);padding:9px 14px;cursor:pointer;font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.08em;transition:background var(--transition-fast)}.pb-anno-toolbar button:hover{background:#ffffff1f}.pb-anno-modal{border:.5px solid var(--fg);background:var(--bg);color:var(--fg);padding:0;max-width:540px;width:calc(100vw - 32px);max-height:calc(100vh - 64px);overflow:auto;margin:auto;inset:0}.pb-anno-modal::backdrop{background:#1a1a1a8c}.pb-anno-modal[open]{animation:pbAnnoModalIn .18s ease}@keyframes pbAnnoModalIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.pb-anno-modal form{display:flex;flex-direction:column;gap:16px;padding:22px 22px 18px}.pb-anno-modal header{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-bottom:12px;border-bottom:.5px solid var(--line)}.pb-anno-modal header h2{font-family:var(--font-display);font-weight:500;font-size:18px;letter-spacing:-.01em}.pb-anno-modal .pb-anno-close{background:transparent;border:none;cursor:pointer;font-size:22px;line-height:1;color:var(--muted);padding:4px 8px}.pb-anno-modal .pb-anno-close:hover{color:var(--fg)}.pb-anno-modal-quote{font-family:var(--font-display);font-style:italic;font-size:14px;line-height:1.5;color:#2a2a2a;padding:12px 14px;border-left:.5px solid var(--line-strong);background:var(--bg-2);max-height:120px;overflow:auto}.pb-anno-field{display:flex;flex-direction:column;gap:6px}.pb-anno-field span{font-family:var(--font-mono);font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.pb-anno-field textarea,.pb-anno-field input{font-family:var(--font-display);font-size:14px;color:var(--fg);background:var(--bg);border:.5px solid var(--line-strong);padding:10px 12px;outline:none;transition:border-color var(--transition-fast);border-radius:0;appearance:none;-webkit-appearance:none}.pb-anno-field textarea{resize:vertical;min-height:80px}.pb-anno-field textarea:focus,.pb-anno-field input:focus{border-color:var(--fg)}.pb-anno-honeypot{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}.pb-anno-error{font-family:var(--font-mono);font-size:11px;color:#b00020;margin:0}.pb-anno-error[hidden]{display:none}.pb-anno-modal footer{display:flex;justify-content:flex-end;gap:8px;padding-top:14px;border-top:.5px solid var(--line)}.pb-anno-modal .pb-anno-cancel,.pb-anno-modal .pb-anno-submit{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.08em;padding:10px 16px;cursor:pointer;border:.5px solid var(--fg);transition:background var(--transition-fast),color var(--transition-fast)}.pb-anno-modal .pb-anno-cancel{background:transparent;color:var(--fg)}.pb-anno-modal .pb-anno-cancel:hover,.pb-anno-modal .pb-anno-submit{background:var(--fg);color:var(--bg)}.pb-anno-modal .pb-anno-submit:hover{background:var(--bg);color:var(--fg)}.pb-anno-modal .pb-anno-submit:disabled{opacity:.5;cursor:not-allowed}.pb-anno-popover{position:absolute;z-index:70;background:var(--bg);border:.5px solid var(--fg);padding:12px 14px;width:300px;max-width:calc(100vw - 24px);box-shadow:0 10px 28px #00000024;pointer-events:none}.pb-anno-popover[hidden]{display:none!important}.pb-anno-pop-comment{font-family:var(--font-display);font-size:13px;line-height:1.5;color:var(--fg);margin-bottom:8px;white-space:pre-wrap}.pb-anno-pop-meta{display:flex;justify-content:space-between;align-items:center;gap:8px;font-family:var(--font-mono);font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);pointer-events:auto}.pb-anno-pop-author{color:var(--fg)}.pb-anno-pop-delete{background:transparent;border:.5px solid #b00020;color:#b00020;padding:2px 6px;cursor:pointer;font-size:11px}.pb-anno-pop-delete:hover{background:#b00020;color:var(--bg)}.pb-anno-list{margin-top:56px;padding-top:32px;border-top:.5px solid var(--line)}.pb-anno-list[hidden]{display:none}.pb-anno-list>header{display:flex;align-items:baseline;gap:12px;margin-bottom:24px}.pb-anno-list>header h2{font-family:var(--font-display);font-weight:500;font-size:22px;letter-spacing:-.015em;line-height:1.2}.pb-anno-count{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted)}.pb-anno-list-items{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:14px}.pb-anno-card{border:.5px solid var(--line-strong);padding:16px 18px;cursor:pointer;transition:background var(--transition-fast)}.pb-anno-card:hover{background:var(--bg-2)}.pb-anno-card.is-flash{animation:pbAnnoFlashCard 1.2s ease-out}@keyframes pbAnnoFlashCard{0%,30%{background:var(--fg);color:var(--bg)}to{background:var(--bg);color:inherit}}.pb-anno-card-quote{font-family:var(--font-display);font-style:italic;font-size:13px;line-height:1.5;color:#2a2a2a;border-left:.5px solid var(--line-strong);padding-left:12px;margin-bottom:10px}.pb-anno-card-comment{font-family:var(--font-display);font-size:15px;line-height:1.55;color:var(--fg);margin:0 0 10px;white-space:pre-wrap}.pb-anno-card-foot{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-family:var(--font-mono);font-size:9px;text-transform:uppercase;letter-spacing:.08em}.pb-anno-card-author{color:var(--fg)}.pb-anno-card-date{color:var(--muted)}.pb-anno-delete{background:transparent;border:.5px solid #b00020;color:#b00020;padding:4px 8px;cursor:pointer;font-family:var(--font-mono);font-size:9px;text-transform:uppercase;letter-spacing:.08em;margin-left:auto}.pb-anno-delete:hover{background:#b00020;color:var(--bg)}.pb-footer{margin:96px auto 0;max-width:1080px;padding:56px 32px 80px;border-top:.5px solid var(--line-strong)}.pb-footer-eyebrow{font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:28px}.pb-footer h2{font-family:var(--font-display);font-weight:500;font-size:22px;letter-spacing:-.015em;line-height:1.2;margin-bottom:14px}.pb-footer-method{margin-bottom:48px;max-width:680px}.pb-footer-method p{font-size:16px;line-height:1.6;color:#2a2a2a;margin-bottom:14px}.pb-footer-method p:last-child{margin-bottom:0}.pb-footer-method a{color:var(--fg);border-bottom:.5px solid var(--fg);padding-bottom:1px;transition:background var(--transition-fast),color var(--transition-fast)}.pb-footer-method a:hover{background:var(--fg);color:var(--bg)}.pb-footer-refs ol{list-style:none;padding:0;margin:0;counter-reset:pb-ref;border-top:.5px solid var(--line)}.pb-footer-refs li{counter-increment:pb-ref;display:grid;grid-template-columns:32px 1fr;gap:12px;padding:16px 0;border-bottom:.5px solid var(--line);font-size:14px;line-height:1.55;color:#2a2a2a}.pb-footer-refs li:before{content:counter(pb-ref,decimal-leading-zero);font-family:var(--font-mono);font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);padding-top:3px}.pb-ref-cite{font-family:var(--font-display);font-weight:500;color:var(--fg);letter-spacing:-.005em}.pb-ref-cite a{color:var(--fg);border-bottom:.5px solid var(--fg);padding-bottom:1px;transition:background var(--transition-fast),color var(--transition-fast)}.pb-ref-cite a:hover{background:var(--fg);color:var(--bg)}.pb-ref-sep{color:var(--muted)}.pb-ref-note{color:#2a2a2a}@media(max-width:820px){.pb-footer{padding:40px 22px 64px;margin-top:64px}.pb-footer h2{font-size:18px}.pb-footer-method p{font-size:15px}.pb-footer-refs li{grid-template-columns:26px 1fr;gap:10px;font-size:13px;padding:14px 0}}@media(max-width:1100px){.pb-shell{grid-template-columns:minmax(0,720px);justify-content:center;gap:0;max-width:720px}.pb-aside,.pb-toc{display:none}.pb-mobile-nav,.pb-mobile-toc{display:block}.pb-tools-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:820px){.pb-home,.pb-tools,.pb-shell{padding:0 22px 80px}.pb-hero{grid-template-columns:1fr;gap:32px;margin-bottom:56px}.pb-intro-prose{margin-bottom:56px;font-size:17px}.pb-intro-prose p:first-child{font-size:19px}.pb-pyramid-wrap{padding:32px 0;margin-bottom:56px}.pb-layer-row{grid-template-columns:64px 1fr 28px;gap:12px;padding:22px 0}.pb-layer-row:hover{padding-left:12px;padding-right:12px}.pb-layer-row .pb-layer-meta{display:none}.pb-layer-row .pb-layer-title{font-size:18px}.pb-tools-grid{grid-template-columns:1fr}.pb-tool-card{min-height:auto}.pb-article h1{font-size:36px}.pb-article .pb-lede{font-size:19px;margin-bottom:32px}.pb-article-body{font-size:17px}.pb-principle{padding:28px 22px;margin:40px 0}.pb-next .ttl{font-size:22px}.pb-tools-stamp{flex-direction:column;gap:6px}}@media(max-width:600px){.pb-hero h1{font-size:clamp(34px,9vw,52px)}.pb-tools-head h1{font-size:clamp(32px,9vw,48px)}}
