:root{font-family:Inter,Helvetica Neue,Arial,sans-serif;line-height:1.6;font-weight:400;color-scheme:light;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0}img,picture,video,canvas,svg{display:block;max-width:100%}button,input,textarea{font:inherit}:root{--primary-background: #fdf6eb;--secondary-background: #f0e0c9;--surface-color: #fff7ef;--card-surface: #ffffff;--neutral-100: #f4e5d3;--neutral-200: #ebd9c4;--neutral-300: #decab2;--primary-cta: #5d909c;--primary-cta-hover: #4c7f89;--secondary-action: #d6a470;--secondary-action-hover: #c48e59;--primary-text: #3f312c;--secondary-text: #5e4b45;--muted-text: #8c746b;--border-soft: rgba(222, 187, 164, .6);--shadow-soft: 0 20px 40px rgba(118, 92, 78, .15);--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-xxl: 3rem;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-md: 1rem;--font-size-lg: 1.25rem;--font-size-xl: 1.5rem;--font-size-xxl: 2rem;--font-size-hero: clamp(2.5rem, 4vw, 3.75rem)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}body{font-family:Inter,Helvetica Neue,Arial,sans-serif;background:linear-gradient(180deg,var(--primary-background) 0%,var(--secondary-background) 100%);color:var(--primary-text);line-height:1.6;text-align:left;min-height:100vh;overflow-x:hidden}body>div#root{width:100%;display:flex;flex-direction:column;min-height:100vh}h1,h2,h3,h4,h5,h6{margin-bottom:var(--space-md);font-weight:600;color:var(--primary-text)}p{margin-bottom:var(--space-md)}a{color:var(--secondary-text);text-decoration:none;transition:color .3s ease}a:hover,a:focus{color:var(--primary-cta-hover)}button,.button{cursor:pointer;padding:var(--space-sm) var(--space-md);border:none;border-radius:999px;font-weight:600;transition:all .3s ease;font-family:inherit}.button-primary{background-color:var(--primary-cta);color:#fff;box-shadow:0 8px 22px #5d909c40}.button-primary:hover,.button-primary:focus,.button-primary:focus-visible,.button-primary:active{background-color:var(--primary-cta-hover);color:#fff}.button-secondary{background-color:var(--secondary-action);color:#fff;box-shadow:0 8px 20px #d6a47040}.button-secondary:hover,.button-secondary:focus,.button-secondary:focus-visible,.button-secondary:active{background-color:var(--secondary-action-hover);color:#fff}section{padding:var(--space-xxl) var(--space-xl);margin-bottom:var(--space-xxl)}.container{max-width:1200px;margin:0 auto;padding:0 var(--space-md);width:100%}.text-center{text-align:center}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media (max-width: 992px){section{padding:var(--space-xl) var(--space-lg);margin-bottom:var(--space-xl)}}@media (max-width: 600px){section{padding:var(--space-lg) var(--space-md)}}.article-modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#3f312c8c;display:flex;justify-content:center;align-items:center;z-index:1000;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.article-modal{position:relative;width:90%;max-width:900px;max-height:90vh;background-color:var(--card-surface);border-radius:24px;overflow:hidden;box-shadow:0 30px 80px #765c4e47;display:flex;flex-direction:column}.article-modal-close{position:absolute;top:15px;right:15px;width:36px;height:36px;background-color:#ffffffe6;border:none;border-radius:50%;font-size:1.5rem;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:10;box-shadow:0 12px 24px #765c4e38;transition:all .3s ease}.article-modal-close:hover{background-color:var(--primary-cta);color:#fff;transform:rotate(90deg)}.article-modal-image{width:100%;height:300px;background-size:cover;background-position:center;position:relative}.article-modal-content{padding:2.25rem;overflow-y:auto}.article-modal-title{font-size:2rem;margin-bottom:1.5rem;color:var(--primary-text)}.article-modal-preview{font-size:1rem;line-height:1.8;margin-bottom:2rem;color:var(--primary-text)}.article-modal-button{display:inline-block;padding:.75rem 1.5rem;margin-top:1rem;border-radius:999px}@media (max-width: 768px){.article-modal{width:95%;max-height:85vh}.article-modal-image{height:200px}.article-modal-title{font-size:1.5rem}.article-modal-content{padding:1.5rem}}.articles-section{padding:5rem 0;background:linear-gradient(180deg,#fbf1df,#f3dfbf 65%,#ead0a6);margin-bottom:0}.articles-heading{display:inline-flex;padding:.4rem 1.4rem;border-radius:16px;background:linear-gradient(135deg,#e0ac65b3,#f5d8ae99);color:#3f2a16;letter-spacing:.06em;font-size:2.75rem;transform:rotateY(-12deg) skew(-4deg);text-transform:uppercase;text-shadow:4px 12px 18px rgba(139,96,45,.38),0 2px 6px rgba(255,244,226,.6);box-shadow:0 22px 30px #97693159;border:1px solid rgba(193,146,83,.55);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.articles-content{display:flex;align-items:center;justify-content:space-between;gap:2rem}.articles-text{flex:1;max-width:500px}.articles-description{font-size:1.1rem;line-height:1.6;color:var(--primary-text);margin-bottom:2rem}.magazine-stand-container{flex:1.2;position:relative;min-height:500px;display:flex;justify-content:center;align-items:center;perspective:1400px}.magazine-stand{position:relative;width:100%;max-width:600px;height:700px;display:flex;flex-direction:column;justify-content:space-between;align-items:center;transform-style:preserve-3d;background:linear-gradient(180deg,#f1ddb9,#d4a264 45%,#9b6b3b);border-radius:24px;padding:28px 32px;border:1px solid rgba(145,96,48,.55);box-shadow:0 40px 100px #784e2373,inset 0 2px 6px #fff3de80;transform:rotateY(-9deg) rotateX(3deg);overflow:visible}.magazine-stand:before{content:"";position:absolute;inset:3px;border-radius:20px;background:linear-gradient(135deg,#ffffff73,#fff0);pointer-events:none;z-index:1}.magazine-stand-shelf{width:calc(100% - 36px);height:24px;background:linear-gradient(180deg,#f0d2a2,#c78a43,#9d652f);border-radius:18px;margin:22px auto 8px;box-shadow:0 16px 28px #70461e59,inset 0 2px 8px #ffe9c7d9;transform:translateZ(-12px);position:relative}.magazine-stand-shelf:before{content:"";position:absolute;inset:-6px -18px 12px;border-radius:18px;background:linear-gradient(180deg,rgba(255,255,255,.5),transparent);opacity:.9;filter:blur(6px);z-index:-1}.magazine-row-container{width:100%;margin-bottom:18px;position:relative;z-index:2}.magazine-row{width:100%;display:flex;justify-content:center;align-items:center;margin:0;padding:0 10px;position:relative;height:120px;background:linear-gradient(135deg,#fff6e866,#bd854c4d);border-radius:14px;box-shadow:inset 0 1px 3px #fffcf08c,inset 0 -6px 12px #895c2e8c}.magazine{width:110px;height:152px;border-radius:6px;box-shadow:0 20px 35px #794e2073;cursor:pointer;transition:transform .35s ease,box-shadow .35s ease;margin:0 12px;transform-origin:center bottom;position:relative;top:0;display:inline-block;border:1px solid rgba(255,255,255,.12);overflow:hidden;display:flex;flex-direction:column;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px)}.magazine:focus-visible{outline:3px solid rgba(182,124,58,.55);outline-offset:6px}.magazine-cover{position:relative;flex:0 0 70%;width:100%;background-size:cover;background-position:center;border-top-left-radius:6px;border-top-right-radius:6px;overflow:hidden}.magazine-cover:after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,rgba(255,255,255,.18),transparent 55%);mix-blend-mode:screen;opacity:.9;transition:opacity .35s ease}.magazine-title-overlay{width:100%;flex:0 0 30%;background:#48321cd9;padding:.6rem .55rem;display:flex;align-items:center;justify-content:center;text-align:center;border-top:1px solid rgba(201,156,92,.45)}.magazine:hover{box-shadow:0 26px 40px #794e208c}.magazine:hover .magazine-cover:after{opacity:.5}.magazine-title-overlay h3{color:#f8e8ce;font-size:.75rem;margin:0;font-weight:500;line-height:1.2;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}@media (max-width: 992px){.articles-content{flex-direction:column}.articles-heading{transform:rotateY(-8deg) skew(-3deg);font-size:2.4rem;color:#543f47}.articles-text{max-width:100%;text-align:center}}@media (max-width: 768px){.magazine-stand-container{min-height:400px}.magazine{width:100px;height:160px;margin:0 10px}.magazine-title-overlay h3{font-size:.7rem}}@media (max-width: 480px){.magazine{width:80px;height:130px;margin:0 6px}.magazine-stand{transform:rotateY(-6deg) rotateX(2deg);padding:22px}}.pf .count-up{font-variant-numeric:tabular-nums}.pf .local-time{display:flex;flex-wrap:wrap;align-items:center;gap:4px 10px;margin-top:14px;font-family:var(--mono);font-size:11px;color:var(--muted)}.pf .local-dot{width:6px;height:6px;border-radius:50%;background:var(--live);animation:pf-breathe 2.8s ease-in-out infinite}.pf .local-mood{font-family:var(--hand);font-size:17px;line-height:1;color:var(--text)}.pf .now-line{display:flex;align-items:center;gap:12px;margin-top:20px;padding:4px 0;border:0;background:none;font:12px/1.5 var(--mono);color:var(--muted);text-align:left;cursor:pointer}.pf .now-rule{flex:0 0 54px;height:1px;background:var(--line)}.pf .now-label{color:var(--text)}.pf .now-text{animation:pf-now-in .35s cubic-bezier(.2,.7,.2,1)}.pf .now-cycle{opacity:0;transition:opacity .15s ease,transform .3s ease}.pf .now-line:hover .now-cycle,.pf .now-line:focus-visible .now-cycle{opacity:1}.pf .now-line:active .now-cycle{transform:rotate(180deg)}@keyframes pf-now-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.pf .moment{display:inline-flex;align-items:center;margin-left:12px;vertical-align:middle}.pf .tambola-ball{width:28px;height:28px;justify-content:center;border-radius:50%;border:2px solid var(--c, var(--text));font:700 12px/1 var(--mono);letter-spacing:0;color:var(--text);animation:pf-ball .5s cubic-bezier(.3,1.6,.5,1)}@keyframes pf-ball{0%{transform:rotate(-200deg) scale(.4);opacity:0}to{transform:none;opacity:1}}.pf .shorts-moment{position:relative;width:48px;height:24px}.pf .shorts-moment svg,.pf .shorts-moment em{position:absolute;left:0;transition:transform .35s cubic-bezier(.4,0,.2,1),opacity .3s ease,filter .3s ease}.pf .shorts-moment em{font:italic 400 19px/1 var(--hand);letter-spacing:0;color:var(--muted);opacity:0;transform:translateY(4px)}.pf .work-card:hover .shorts-moment svg{transform:scale(.2) rotate(40deg);opacity:0;filter:blur(2px)}.pf .work-card:hover .shorts-moment em{opacity:1;transform:none;transition-delay:.15s}.pf .margin-note{position:relative;display:block;width:max-content;margin-top:28px;transform:rotate(-4deg);transform-origin:left;font:400 23px/1.05 var(--hand);letter-spacing:0;text-transform:none;color:var(--live)}.pf .margin-note-arrow{position:absolute;left:calc(100% - 4px);top:-30px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}@media (prefers-reduced-motion: no-preference){.pf .margin-note-text{opacity:0;transition:opacity .5s ease .5s}.pf .margin-note-arrow path{stroke-dasharray:1;stroke-dashoffset:1;transition:stroke-dashoffset .6s ease .9s}.pf .margin-note-arrow path+path{transition-delay:1.4s;transition-duration:.25s}.pf [data-shown] .margin-note-text{opacity:1}.pf [data-shown] .margin-note-arrow path{stroke-dashoffset:0}}@media (max-width: 600px){.pf .margin-note{margin-top:10px}.pf .margin-note-arrow{transform:rotate(105deg) scale(.7);top:0;left:calc(100% - 8px)}}.pf .settle-word{display:inline-block;white-space:nowrap}.pf .settle-char{display:inline-block}@media (prefers-reduced-motion: no-preference){.pf .settle-char{animation:pf-settle 1.15s cubic-bezier(.2,.8,.2,1) var(--d) backwards}.pf .settle-snap{display:inline;animation:pf-snap .55s cubic-bezier(.3,1.3,.5,1) 1.15s backwards}}@keyframes pf-settle{0%{transform:translate(var(--x),var(--y)) rotate(var(--r));filter:blur(var(--b));opacity:.2}35%{transform:translate(calc(var(--x) * -.5),calc(var(--y) * -.4)) rotate(calc(var(--r) * -.4));filter:blur(calc(var(--b) * .5));opacity:.55}65%{transform:translate(calc(var(--x) * .2),calc(var(--y) * .15)) rotate(calc(var(--r) * .15));filter:blur(1px);opacity:.85}to{transform:none;filter:none;opacity:1}}@keyframes pf-snap{0%{filter:blur(12px);opacity:0}60%{filter:blur(0);opacity:1}to{filter:none;opacity:1}}.pf .portrait.dither{position:relative;overflow:hidden;background:var(--soft)}.pf .portrait.dither canvas{position:absolute;inset:0;width:100%;height:100%;image-rendering:pixelated}.pf .portrait.dither img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;filter:grayscale(1) contrast(1.35) blur(3px);transition:opacity .25s ease,filter .25s ease}.pf .portrait.dither canvas{transition:opacity .25s ease}.pf .portrait.dither.revealed img{opacity:1;filter:none;transition:opacity .9s cubic-bezier(.4,0,.2,1),filter 1.6s cubic-bezier(.4,0,.2,1) .25s}.pf .portrait.dither.revealed canvas{opacity:0;transition:opacity 1.1s cubic-bezier(.4,0,.2,1) .35s}.pf .work-peek{position:fixed;left:0;top:0;z-index:15;width:300px;pointer-events:none;opacity:0;scale:.92;transition:opacity .18s ease,scale .25s cubic-bezier(.3,1.4,.5,1)}.pf .work-peek.on{opacity:1;scale:1}.pf .work-peek img{display:block;width:100%;max-height:220px;object-fit:cover;object-position:top;border:1px solid var(--line);background:var(--surface);box-shadow:0 18px 40px #00000038}@media (hover: none),(max-width: 899px){.pf .work-peek{display:none}}.pf .spotlight>*{position:relative}.pf .spotlight>*:after,.pf .spotlight>*:before{content:"";position:absolute;pointer-events:none}.pf .spotlight>*:after{inset:-1px;border:1px solid transparent;background:radial-gradient(200px circle at var(--mx, -999px) var(--my, -999px),var(--text),transparent 70%) border-box;-webkit-mask:linear-gradient(#000 0 0) padding-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude}.pf .spotlight>*:before{inset:0;background:radial-gradient(300px circle at var(--mx, -999px) var(--my, -999px),color-mix(in srgb,var(--text) 5%,transparent),transparent 70%)}.pf .contact-inner.has-push{grid-template-columns:1fr minmax(0,460px);align-items:end}.pf .push-side{display:flex;flex-direction:column;gap:16px;align-items:flex-start}.pf .push-terminal{width:100%;min-height:252px;margin:0;padding:16px 18px;overflow:hidden;border:1px solid var(--line);background:var(--soft);font:12px/1.6 var(--mono);color:var(--body);white-space:pre-wrap;overflow-wrap:anywhere}.pf .push-prompt,.pf .push-new{color:var(--live)}.pf .push-terminal a{color:var(--text);text-decoration:underline;text-underline-offset:3px}.pf .push-caret{display:inline-block;width:7px;height:14px;margin-left:2px;vertical-align:-2px;background:var(--text);animation:pf-caret 1s steps(1) infinite}@keyframes pf-caret{50%{opacity:0}}@media (max-width: 900px){.pf .contact-inner.has-push{grid-template-columns:1fr}}@media (max-width: 600px){.pf .push-terminal{font-size:11px;padding:14px}}.pf{--bg: #f7f7f5;--surface: #ffffff;--text: #151515;--body: #444;--muted: #5a5a56;--line: #d9d9d4;--soft: #eeeeea;--max: 1180px;--live: #1f883d;--serif: Georgia, "Times New Roman", serif;--sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mono: "SFMono-Regular", Consolas, "Liberation Mono", monospace;--hand: Caveat, "Bradley Hand", "Segoe Print", cursive;min-height:100vh;background:var(--bg);color:var(--text);font-family:var(--sans);line-height:1.55}.pf[data-theme=dark]{--bg: #121211;--surface: #1b1b19;--text: #f1f1ee;--body: #c4c4bf;--muted: #a8a8a2;--line: #333330;--soft: #1d1d1b;--live: #3fb950}.pf *,.pf *:before,.pf *:after{box-sizing:border-box}.pf a,.pf a:hover,.pf a:focus{color:inherit;text-decoration:none}.pf h1,.pf h2,.pf h3{color:var(--text);font-weight:700;margin:0;text-wrap:balance}.pf p{margin:0;color:inherit;text-wrap:pretty}.pf ul{margin:0;padding:0;list-style:none}.pf section{padding:112px 0;margin:0;border-top:1px solid var(--line)}.pf main{display:block}.pf .page{width:min(calc(100% - 48px),var(--max));margin:0 auto}.pf .page-flex{display:flex;flex-direction:column;min-height:100vh}.pf .pf-header{height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:10;background:var(--bg)}.pf .header-nav{display:flex;gap:26px;font-size:13px;margin-left:auto}.pf .header-nav a{color:var(--muted)}.pf .header-nav a:hover{color:var(--text)}.pf .menu-toggle{display:none;padding:6px 10px;border:1px solid var(--line);border-radius:0;background:transparent;color:var(--text);font-size:12px;font-weight:600}.pf section[id]{scroll-margin-top:76px}.pf .wordmark{font-weight:700;letter-spacing:-.03em}.pf .header-meta{display:flex;align-items:center;gap:22px;font-size:13px}.pf .status{display:inline-flex;align-items:center;gap:8px;color:var(--muted)}.pf .status-dot{width:7px;height:7px;border-radius:50%;background:var(--live)}.pf .theme-toggle{width:54px;height:28px;padding:0;border:1px solid var(--line);border-radius:999px;position:relative;background:var(--soft);color:var(--muted);cursor:pointer}.pf .theme-toggle .tt-track{position:absolute;inset:0;display:flex;align-items:center;justify-content:space-between;padding:0 7px}.pf .theme-toggle .tt-track svg{width:12px;height:12px;opacity:.55}.pf .theme-toggle .tt-knob{position:absolute;top:2px;left:2px;display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--text);color:var(--bg);box-shadow:0 1px 3px #00000040;transition:transform .45s cubic-bezier(.34,1.56,.64,1)}.pf .theme-toggle .tt-knob svg{grid-area:1 / 1;transition:opacity .25s ease,transform .45s cubic-bezier(.16,1,.3,1)}.pf .theme-toggle .tt-knob .tt-moon{opacity:0;transform:rotate(-60deg) scale(.6)}.pf[data-theme=dark] .theme-toggle .tt-knob{transform:translate(26px)}.pf[data-theme=dark] .theme-toggle .tt-knob .tt-sun{opacity:0;transform:rotate(60deg) scale(.6)}.pf[data-theme=dark] .theme-toggle .tt-knob .tt-moon{opacity:1;transform:none}.pf .theme-toggle:hover .tt-track svg{opacity:.8}.pf .eyebrow{font-family:var(--mono);text-transform:uppercase;letter-spacing:.12em;font-size:12px;color:var(--muted);margin-bottom:24px}.pf .button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 18px;border:1px solid var(--text);border-radius:0;font-size:14px;font-weight:650;background:transparent;color:var(--text)}.pf .button.primary,.pf .button.primary:hover,.pf .button.primary:focus{background:var(--text);color:var(--bg)}.pf .site-footer-links{display:flex;gap:18px}.pf .site-footer-links a{text-decoration:underline;text-underline-offset:3px}.pf footer.site-footer{margin:0;background:none;border:0;border-top:1px solid var(--line);padding:20px 0 34px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;color:var(--muted);font-family:var(--mono);font-size:12px}.pf .page-body{min-height:calc(100vh - 146px)}@media (max-width: 900px){.pf .header-meta .status{display:none}}@media (max-width: 600px){.pf .page{width:min(calc(100% - 32px),var(--max))}.pf .pf-header{height:64px}.pf .menu-toggle{display:inline-block}.pf .header-nav{display:none;position:absolute;top:100%;left:0;right:0;margin:0;flex-direction:column;gap:0;background:var(--bg);border-bottom:1px solid var(--line)}.pf .header-nav.open{display:flex}.pf .header-nav a{padding:16px 0;border-top:1px solid var(--line);font-size:15px}.pf section{padding:76px 0}}.pf a:focus-visible,.pf button:focus-visible,.pf summary:focus-visible{outline:2px solid var(--text);outline-offset:3px}.pf .theme-toggle:before{content:"";position:absolute;inset:-12px -6px}.pf .header-nav a,.pf .wordmark{padding:12px 0}.pf .to-top{position:fixed;right:24px;bottom:24px;z-index:20;width:44px;height:44px;padding:0;border:1px solid var(--text);border-radius:0;background:var(--bg);color:var(--text);font-family:var(--mono);font-size:18px;cursor:pointer}.pf .to-top:hover{background:var(--text);color:var(--bg)}@media (pointer: coarse){.pf .menu-toggle{min-height:44px;padding:0 14px}}::view-transition-old(root),::view-transition-new(root){animation:none;mix-blend-mode:normal}@media (prefers-reduced-motion: no-preference){.pf [data-reveal=fade]{opacity:0;transform:translateY(8px);transition:opacity .6s ease var(--d, 0ms),transform .6s cubic-bezier(.2,.7,.2,1) var(--d, 0ms)}.pf [data-reveal=fade][data-shown]{opacity:1;transform:none}}.pf .button,.pf .release,.pf .to-top,.pf .theme-toggle,.pf .menu-toggle{transition:transform .12s ease,background .15s ease,color .15s ease}.pf .button:active,.pf .release:not(.stretch):active,.pf .to-top:active,.pf .menu-toggle:active{transform:scale(.98)}.pf .theme-toggle:active{transform:scale(.94)}.pf .u-draw,.pf .site-footer-links a,.pf .build-hash{text-decoration:none;background:linear-gradient(currentColor,currentColor) no-repeat 0 100% / 100% 1px;padding-bottom:1px}.pf .u-draw:hover,.pf .site-footer-links a:hover,.pf .build-hash:hover{animation:pf-underline .35s cubic-bezier(.2,.7,.2,1)}@keyframes pf-underline{0%{background-size:0 1px}to{background-size:100% 1px}}.pf .header-nav a{background:linear-gradient(currentColor,currentColor) no-repeat 0 calc(100% - 10px) / 0 1px;transition:background-size .3s cubic-bezier(.2,.7,.2,1),color .15s ease}.pf .header-nav a:hover{background-size:100% 1px}@media (max-width: 600px){.pf .header-nav a,.pf .header-nav a:hover{background-size:0 0}}.pf .status-dot{animation:pf-breathe 2.8s ease-in-out infinite}@keyframes pf-breathe{0%,to{box-shadow:0 0 color-mix(in srgb,var(--live) 45%,transparent)}50%{box-shadow:0 0 0 5px transparent}}.pf .build-hash{position:relative;color:var(--text)}.pf .build-hash:after{content:attr(data-tip);position:absolute;right:0;bottom:calc(100% + 8px);white-space:nowrap;padding:5px 8px;background:var(--text);color:var(--bg);font-size:11px;text-transform:none;opacity:0;transform:translateY(4px);pointer-events:none;transition:opacity .15s ease,transform .15s ease}.pf .build-hash:hover:after,.pf .build-hash:focus-visible:after{opacity:1;transform:none}.pf .term-toast-region{position:fixed;left:24px;bottom:24px;z-index:30;pointer-events:none}.pf .term-toast{display:flex;flex-direction:column;gap:2px;padding:10px 14px;min-width:240px;background:var(--text);color:var(--bg);font-family:var(--mono);font-size:12px;line-height:1.5;box-shadow:0 8px 24px #0000002e;animation:pf-toast 2.4s cubic-bezier(.2,.7,.2,1) both}.pf .term-toast .cmd{opacity:.6}@keyframes pf-toast{0%{opacity:0;transform:translateY(10px)}8%,85%{opacity:1;transform:none}to{opacity:0;transform:translateY(4px)}}@media (max-width: 600px){.pf .term-toast-region{left:16px;right:76px;bottom:16px}.pf .term-toast{min-width:0}}@media (prefers-reduced-motion: reduce){.pf *,.pf *:before,.pf *:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.pf .term-toast{animation:none}}.pf section.hero{min-height:660px;display:grid;border-top:0;grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr);gap:80px;align-items:center;padding:72px 0 46px}.pf .hero h1{font-size:clamp(54px,7vw,94px);line-height:.94;letter-spacing:-.045em;word-spacing:.06em;max-width:800px}.pf .hero-sub{margin-top:30px;max-width:690px;font-size:20px;line-height:1.45;color:var(--body)}.pf .hero-sub strong{color:var(--text)}.pf .hero-actions{display:flex;gap:12px;margin-top:34px;flex-wrap:wrap}.pf .hero-quote{margin-top:34px;padding-left:16px;border-left:2px solid var(--text);max-width:620px;font-family:var(--serif);font-size:18px;font-style:italic}.pf .portrait-panel{align-self:stretch;display:flex;flex-direction:column;justify-content:center}.pf .portrait{aspect-ratio:4 / 5;border:1px solid var(--line);background:linear-gradient(135deg,transparent 49.7%,var(--line) 50%,transparent 50.3%),linear-gradient(45deg,transparent 49.7%,var(--line) 50%,transparent 50.3%),var(--soft);display:grid;place-items:center;color:var(--muted);font-family:var(--mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase}.pf .portrait-label{border:1px solid var(--line);border-top:0;padding:13px 14px;display:flex;justify-content:space-between;font-family:var(--mono);font-size:11px;color:var(--muted)}.pf .section-head{display:grid;grid-template-columns:220px 1fr;gap:50px;margin-bottom:56px}.pf .section-number{font-family:var(--mono);font-size:12px;color:var(--muted)}.pf h2{font-size:clamp(38px,5vw,62px);line-height:1;letter-spacing:-.035em;word-spacing:.05em}.pf .section-intro{max-width:720px;color:var(--muted);font-size:18px;margin-top:18px}.pf .highlight-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.pf .highlight{min-height:150px;padding:24px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.pf .highlight strong{display:block;font-size:30px;letter-spacing:-.04em;line-height:1.1;margin-bottom:12px}.pf .highlight>span{color:var(--muted);font-size:13px}.pf .approach-grid{display:grid;gap:56px}.pf .approach-copy{max-width:720px;margin-left:270px}.pf .approach-copy{font-size:21px;line-height:1.42;letter-spacing:-.02em}.pf .approach-copy p{margin-bottom:1em}.pf .principles{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.pf .principle{display:grid;grid-template-columns:48px 1fr;gap:18px;padding:28px 24px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.pf .principle-no{font-family:var(--mono);color:var(--muted);font-size:12px}.pf .principle h3{margin:0 0 6px;font-size:17px}.pf .principle p{color:var(--muted);font-size:14px;max-width:420px}.pf .work-list{border-top:1px solid var(--line)}.pf .work-card{display:grid;grid-template-columns:180px 1fr 180px;gap:35px;padding:34px 0;border-bottom:1px solid var(--line)}.pf .work-type{font-family:var(--mono);text-transform:uppercase;letter-spacing:.08em;font-size:12px;color:var(--muted)}.pf .work-card h3{font-size:30px;line-height:1.15;letter-spacing:-.04em}.pf .work-card p{margin-top:10px;max-width:650px;color:var(--muted)}.pf .work-meta{text-align:right;color:var(--muted);font-size:13px}.pf .work-card{position:relative}.pf .work-card.linked:hover h3{text-decoration:underline;text-underline-offset:5px}.pf .card-link:after{content:"";position:absolute;inset:0}.pf .tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:18px}.pf .tag{border:1px solid var(--line);padding:4px 8px;font-family:var(--mono);font-size:12px}.pf .timeline{border-top:1px solid var(--line)}.pf .role{display:grid;grid-template-columns:180px 1fr;gap:35px;padding:36px 0;border-bottom:1px solid var(--line)}.pf .role-date{font-family:var(--mono);font-size:12px;color:var(--muted)}.pf .role h3{font-size:27px;letter-spacing:-.03em}.pf .role-title{color:var(--muted);margin:4px 0 20px}.pf .role ul{padding-left:20px;list-style:disc}.pf .role li{margin:8px 0;color:var(--body)}.pf .writing-grid,.pf .testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.pf .writing-card{border:1px solid var(--line);padding:24px;min-height:210px;display:flex;flex-direction:column;justify-content:space-between}.pf .writing-card .type{font-family:var(--mono);color:var(--muted);font-size:12px;text-transform:uppercase}.pf .writing-card h3{font-size:21px;line-height:1.15;letter-spacing:-.03em;margin:12px 0}.pf .writing-card .read{font-size:12px}.pf .writing-card:hover .read .u-draw{animation:pf-underline .35s cubic-bezier(.2,.7,.2,1)}.pf .writing-more{margin-top:24px;font-family:var(--mono);font-size:13px;color:var(--muted)}.pf .writing-more a:hover{color:var(--text)}.pf blockquote{margin:0;border:1px solid var(--line);padding:26px;min-height:250px;display:flex;flex-direction:column;justify-content:space-between}.pf blockquote p{font-family:var(--serif);font-size:18px;line-height:1.5}.pf blockquote footer{font-size:12px;color:var(--muted);margin:20px 0 0;padding:0;background:none;border:0}.pf blockquote footer{display:flex;flex-direction:column;gap:2px}.pf blockquote footer strong{color:var(--text);font-size:14px}.pf blockquote footer a{align-self:flex-start;margin-top:6px}.pf section.contact{padding-bottom:80px}.pf .contact-inner{display:grid;grid-template-columns:1fr auto;gap:60px;align-items:end}.pf .contact h2{max-width:760px}.pf .contact-links{display:flex;gap:20px;flex-wrap:wrap;margin-top:30px}.pf .contact-links a{font-size:14px}@media (max-width: 900px){.pf section.hero{grid-template-columns:1fr;gap:44px;padding-top:58px}.pf .portrait-panel{max-width:420px}.pf .highlight-grid{grid-template-columns:repeat(2,1fr)}.pf .section-head{grid-template-columns:1fr;gap:14px}.pf .approach-copy{margin-left:0}.pf .work-card{grid-template-columns:120px 1fr}.pf .work-meta{grid-column:2;text-align:left}.pf .writing-grid,.pf .testimonial-grid{grid-template-columns:1fr}.pf .role{grid-template-columns:120px 1fr}.pf .contact-inner{grid-template-columns:1fr}}@media (max-width: 600px){.pf section.hero{min-height:auto;padding:52px 0 45px}.pf .hero h1{font-size:clamp(48px,16vw,74px)}.pf .hero-sub{font-size:17px}.pf .highlight-grid{grid-template-columns:1fr}.pf .highlight{min-height:auto}.pf .work-card,.pf .role{grid-template-columns:1fr;gap:12px}.pf .work-meta{grid-column:auto}.pf .approach-copy{font-size:19px}.pf .principles{grid-template-columns:1fr}.pf .principle{padding:22px 18px}}.pf .section-number .hash{display:block;margin-top:6px;padding:0;border:0;background:none;font:inherit;color:var(--muted);cursor:copy;transition:color .15s ease}.pf .section-number .hash:hover,.pf .section-number .hash:focus-visible{color:var(--text)}.pf .head-pill{display:inline-block;margin-left:10px;padding:1px 6px;border:1px solid var(--live);color:var(--live);font-size:10px;letter-spacing:.06em;vertical-align:1px}.pf .timeline{position:relative;padding-left:30px}.pf .timeline:before{content:"";position:absolute;left:5px;top:0;bottom:0;width:2px;background:linear-gradient(var(--line) 85%,transparent)}.pf .role{position:relative}.pf .role:before{content:"";position:absolute;left:-30px;top:41px;width:12px;height:12px;border-radius:50%;background:var(--bg);border:2px solid var(--muted);box-sizing:border-box}.pf .role:first-child:before{background:var(--live);border-color:var(--live)}@media (max-width: 600px){.pf .timeline{padding-left:24px}.pf .role:before{left:-24px;top:38px}}.pf .work-list{--graph: color-mix(in srgb, var(--muted) 45%, transparent);--pl: 64px;--main-x: 6px;--lane-x: 36px;--r: 22px;position:relative;padding-left:var(--pl)}.pf .work-list:before{content:"";position:absolute;left:calc(var(--main-x) - 1px);top:0;bottom:-48px;width:2px;background:linear-gradient(var(--graph) calc(100% - 96px),transparent)}.pf section#work{padding-bottom:88px}.pf .work-card .graph,.pf .work-card .graph i{position:absolute;display:block;pointer-events:none}.pf .work-card .graph{inset:0}.pf .work-card .node{top:calc(var(--ny, 41px) - 6px);width:12px;height:12px;border-radius:50%;box-sizing:border-box;background:var(--bg);border:2px solid var(--muted)}.pf .work-card.trunk .node{left:calc(var(--main-x) - var(--pl) - 6px);background:var(--text);border-color:var(--text)}.pf .work-card.branch .node{left:calc(var(--lane-x) - var(--pl) - 6px);border-color:var(--c);background:var(--c)}.pf .work-card.trunk .fork,.pf .work-card.trunk .lane{display:none}.pf .work-card .fork{left:calc(var(--main-x) - var(--pl));top:0;width:calc(var(--lane-x) - var(--main-x));height:var(--r);border-top:2px solid var(--c);border-right:2px solid var(--c);border-top-right-radius:var(--r)}.pf .work-card .lane{left:calc(var(--lane-x) - var(--pl) - 1px);top:calc(var(--r) - 1px);height:calc(var(--ny, 41px) - var(--r));width:2px;background:var(--c)}@media (max-width: 600px){.pf .work-list{--pl: 46px;--lane-x: 26px;--r: 18px}.pf .work-card{--ny: 37px}.pf .work-card.compact{--ny: 30px}}.pf .work-meta{display:flex;flex-direction:column;align-items:flex-end;gap:10px}.pf .release,.pf .release:hover,.pf .release:focus{position:relative;z-index:1;display:inline-flex;align-items:center;gap:7px;padding:4px 9px;border:1px solid var(--muted);border-radius:999px;font-family:var(--mono);font-size:12px;color:var(--text);white-space:nowrap}.pf .release svg{color:var(--live)}.pf .work-card.linked:hover .release,.pf .release:hover{background:var(--text);border-color:var(--text);color:var(--bg)}.pf .work-card.linked:hover .release svg{color:inherit}.pf .release.stretch,.pf .release.stretch:hover{position:static}.pf .release.stretch:after{content:"";position:absolute;inset:0}.pf .work-card.linked{transition:background .15s ease}.pf .work-card.linked:hover{background:color-mix(in srgb,var(--text) 3.5%,transparent)}@media (max-width: 900px){.pf .work-meta{align-items:flex-start}}.pf .work-card.compact{--ny: 35px;padding:20px 0;align-items:baseline}.pf .work-card.compact h3{font-size:21px}.pf .work-card.compact p{display:none}.pf .work-card.compact .tags{margin-top:8px}.pf .work-card.compact .tag:nth-child(n+4){display:none}.pf .work-card.compact .work-meta{flex-direction:row;align-items:center;justify-content:flex-end;gap:14px}.pf .work-toggle{margin-top:28px}.pf .approach-more summary{display:inline-flex;align-items:center;gap:8px;margin:4px 0 20px;cursor:pointer;font-family:var(--mono);font-size:13px;letter-spacing:0;color:var(--text);list-style:none;border-bottom:1px solid var(--text);padding-bottom:2px}.pf .approach-more summary::-webkit-details-marker{display:none}.pf .approach-more summary:before{content:"+"}.pf .approach-more[open] summary:before{content:"−"}.pf .approach-more[open] summary{margin-bottom:24px}@media (max-width: 900px){.pf .work-card.compact .work-meta{justify-content:flex-start}}@media (max-width: 600px){.pf .work-card.compact{--ny: 30px}}.pf .work-link,.pf .work-link:hover{position:relative;z-index:1;font-family:var(--mono);font-size:12px;color:var(--muted)}.pf .work-link:hover{color:var(--text)}.pf .work-card.compact .work-link{display:none}@media (pointer: coarse){.pf .release{min-height:40px}.pf .work-link{padding:10px 0}}@media (prefers-reduced-motion: no-preference){.pf .work-list:before{transform-origin:top}.pf .work-list:not([data-shown]):before{transform:scaleY(0)}.pf .work-list[data-shown]:before{animation:pf-grow 1.6s cubic-bezier(.4,0,.2,1) backwards}.pf .work-card:not([data-shown])>:not(.graph),.pf .work-card:not([data-shown]) .fork,.pf .work-card:not([data-shown]) .lane,.pf .work-card:not([data-shown]) .node{opacity:0}.pf .work-card[data-shown]>:not(.graph,.work-meta){animation:pf-rise .55s cubic-bezier(.2,.7,.2,1) .12s backwards}.pf .work-card[data-shown]>.work-meta{animation:pf-fade .55s ease .12s backwards}.pf .work-card[data-shown] .fork{animation:pf-wipe .3s ease-out backwards}.pf .work-card[data-shown] .lane{transform-origin:top;animation:pf-grow .2s linear .28s backwards}.pf .work-card[data-shown] .node{animation:pf-pop .45s cubic-bezier(.3,1.6,.5,1) .45s backwards}.pf .work-card.trunk[data-shown] .node{animation-delay:.1s}}@keyframes pf-grow{0%{transform:scaleY(0)}}@keyframes pf-wipe{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}@keyframes pf-pop{0%{transform:scale(0)}}@keyframes pf-rise{0%{opacity:0;transform:translateY(8px)}}@keyframes pf-fade{0%{opacity:0}}.pf .work-card .graph{transition:opacity .2s ease,filter .2s ease}.pf .work-card .node{transition:transform .2s cubic-bezier(.3,1.6,.5,1),box-shadow .2s ease}@media (hover: hover){.pf .work-list:has(.work-card:hover) .work-card:not(:hover) .graph{opacity:.3}.pf .work-card.branch:hover .graph{filter:drop-shadow(0 0 3px color-mix(in srgb,var(--c) 70%,transparent))}.pf .work-card:hover .node{transform:scale(1.3)}.pf .work-card.branch:hover .node{box-shadow:0 0 0 4px color-mix(in srgb,var(--c) 22%,transparent)}}.pf .head-pill{animation:pf-head 3.2s ease-in-out infinite}@keyframes pf-head{0%,to{box-shadow:0 0 color-mix(in srgb,var(--live) 35%,transparent)}50%{box-shadow:0 0 0 4px transparent}}.pf blockquote.review{padding:0}.pf .review-head{display:flex;align-items:center;gap:10px;min-height:58px;padding:10px 18px;border-bottom:1px solid var(--line);background:var(--soft);font-size:13px;color:var(--muted)}.pf .review-head strong{color:var(--text)}.pf .avatar{position:relative;flex:none;display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--text);color:var(--bg);font:700 10px/1 var(--mono);letter-spacing:.02em}.pf .avatar:after{content:"✓";position:absolute;right:-5px;bottom:-4px;display:grid;place-items:center;width:14px;height:14px;border-radius:50%;border:2px solid var(--soft);background:var(--live);color:#fff;font:700 8px/1 var(--sans)}.pf blockquote.review p{padding:22px 24px 0}.pf blockquote.review footer{padding:0 24px 24px}
