.pf-zen{--zen-bg:color-mix(in srgb,var(--scheme-tint,#ede8df)6%,#ede8df);--zen-ink:#3c3a36;--zen-bg-time:color-mix(in srgb,var(--scheme-tint,#ede8df)6%,#ede8df);--zen-bg-target:var(--zen-bg-time);--zen-line:color-mix(in srgb,var(--scheme-tint,#3c3a3624)14%,#3c3a3624);--zen-accent-soft:color-mix(in srgb,var(--accent)72%,#6b6a63);--zen-accent-text:color-mix(in srgb,var(--accent)58%,#2c2a26);--zen-on-accent:#fdfbf6;--zen-veil:color-mix(in srgb,var(--scheme-tint,#3c3a360a)14%,#3c3a360a);--zen-progress:0%;background:var(--zen-bg-target);min-height:100vh;color:var(--zen-ink);font-family:Lora,ui-serif,Georgia,serif;font-size:19px;line-height:1.6;transition:background-color .8s cubic-bezier(.16,1,.3,1);position:relative;overflow-x:clip}.pf-zen ::selection{background:var(--zen-accent-soft);color:var(--zen-on-accent)}.pf-zen__progress-track{z-index:60;pointer-events:none;background:0 0;height:3px;position:fixed;top:0;left:0;right:0}.pf-zen__progress-fill{height:100%;width:var(--zen-progress);background:var(--zen-accent-soft);transition:width .1s linear;position:relative}.pf-zen__progress-fill:after{content:"";background:var(--zen-accent-soft);width:6px;height:6px;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent)22%,transparent);border-radius:50%;position:absolute;top:50%;right:-1px;transform:translate(50%,-50%)}.pf-zen__menu-btn{z-index:61;cursor:pointer;letter-spacing:.16em;text-transform:uppercase;color:var(--zen-ink);opacity:.7;background:0 0;border:1px solid #0000;border-radius:999px;align-items:center;gap:7px;padding:8px 12px;font-family:Space Grotesk,ui-sans-serif,sans-serif;font-size:11px;transition:opacity .3s,border-color .3s,background-color .3s;display:inline-flex;position:fixed;top:22px;right:clamp(20px,5vw,48px)}.pf-zen__menu-btn:hover,.pf-zen__menu-btn:focus-visible{opacity:1;border-color:var(--zen-line);background:var(--zen-veil)}.pf-zen__mode-toggle{z-index:61;width:34px;height:34px;color:var(--zen-ink);opacity:.6;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;padding:0;transition:opacity .3s,border-color .3s,background-color .3s;display:inline-flex;position:fixed;top:22px;right:calc(clamp(20px,5vw,48px) + 52px)}.pf-zen__mode-toggle:hover,.pf-zen__mode-toggle:focus-visible{opacity:1;border-color:var(--zen-line);background:var(--zen-veil)}.pf-zen__mode-toggle svg{width:16px;height:16px}.pf-zen__menu-glyph{flex-direction:column;gap:3px;width:14px;display:inline-flex}.pf-zen__menu-glyph span{background:currentColor;border-radius:1px;height:1.3px;display:block}.pf-zen__menu-glyph span:nth-child(2){width:70%}.pf-zen__overlay{z-index:70;opacity:0;visibility:hidden;background:#1e1d1bf0;justify-content:center;align-items:center;transition:opacity .5s cubic-bezier(.16,1,.3,1),visibility .5s;display:flex;position:fixed;inset:0}.pf-zen__overlay[data-open=true]{opacity:1;visibility:visible}.pf-zen__overlay-close{color:#f2efe6;letter-spacing:.16em;text-transform:uppercase;cursor:pointer;opacity:.6;background:0 0;border:none;padding:8px 6px;font-family:Space Grotesk,ui-sans-serif,sans-serif;font-size:11px;position:absolute;top:22px;right:clamp(20px,5vw,48px)}.pf-zen__overlay-close:hover{opacity:1}.pf-zen__overlay-index{text-align:center;flex-direction:column;gap:clamp(10px,3vw,18px);margin:0;padding:0;list-style:none;display:flex}.pf-zen__overlay-link{color:#f2efe6;opacity:.7;font-family:Lora,serif;font-size:clamp(1.6rem,6vw,3.2rem);font-style:italic;text-decoration:none;transition:opacity .3s}.pf-zen__overlay-link:hover,.pf-zen__overlay-link:focus-visible{opacity:1}.pf-zen__col{max-width:660px;margin:0 auto;padding:clamp(48px,8vh,96px) 24px 120px}.pf-zen__enter{animation:.9s cubic-bezier(.16,1,.3,1) both pf-zen-fade}@keyframes pf-zen-fade{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.pf-zen__enter{animation:none}}.pf-zen__greeting{letter-spacing:-.01em;color:var(--zen-ink);overflow-wrap:anywhere;margin:0 0 22px;font-family:Lora,ui-serif,Georgia,serif;font-size:clamp(2.1rem,3.6vw + 1rem,3.3rem);font-weight:500;line-height:1.14}.pf-zen__greeting-lead{letter-spacing:.16em;text-transform:uppercase;color:var(--zen-accent-text);margin:0 0 12px;font-family:Space Grotesk,ui-sans-serif,sans-serif;font-size:clamp(11px,1vw,13px);font-weight:500;display:block}.pf-zen__availability{letter-spacing:.04em;color:var(--zen-accent-text);align-items:center;gap:8px;margin:0 0 30px;font-family:Space Grotesk,ui-sans-serif,sans-serif;font-size:12px;display:inline-flex}.pf-zen__dot{background:var(--zen-accent-soft);border-radius:50%;flex:none;width:7px;height:7px;animation:4.5s ease-out infinite pf-zen-pulse}@keyframes pf-zen-pulse{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--accent)45%,transparent)}40%{box-shadow:0 0 0 8px color-mix(in srgb,var(--accent)0%,transparent)}to{box-shadow:0 0 0 0 color-mix(in srgb,var(--accent)0%,transparent)}}.pf-zen__bio{margin:0 0 6px;font-size:clamp(1.05rem,1.3vw + .85rem,1.28rem);line-height:1.65}.pf-zen__bio-lead{overflow-wrap:anywhere}.pf-zen__bio-headline-src{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.pf-zen__underline-wrap{white-space:nowrap;position:relative}.pf-zen__underline-svg{pointer-events:none;width:104%;height:10px;position:absolute;bottom:-6px;left:-2%;overflow:visible}.pf-zen__underline-svg path{fill:none;stroke:var(--zen-accent-soft);stroke-width:2.5px;stroke-linecap:round;stroke-dasharray:320;stroke-dashoffset:320px;transition:stroke-dashoffset 1.1s cubic-bezier(.16,1,.3,1) .15s}.pf-zen__underline-svg[data-drawn=true] path{stroke-dashoffset:0}.pf-zen__meta-row{letter-spacing:.03em;color:var(--zen-ink);flex-wrap:wrap;gap:6px 14px;margin:26px 0 0;font-family:Space Grotesk,ui-sans-serif,sans-serif;font-size:12px;display:flex}.pf-zen__links{letter-spacing:.03em;flex-wrap:wrap;gap:8px 18px;margin:20px 0 0;font-family:Space Grotesk,ui-sans-serif,sans-serif;font-size:12px;display:flex}.pf-zen__garden{justify-content:center;align-items:flex-end;gap:clamp(14px,3.4vw,26px);height:52px;margin:clamp(56px,9vh,96px) 0;display:flex}.pf-zen__section{margin:0 0 clamp(48px,8vh,88px);scroll-margin-top:72px;position:relative}.pf-zen__label{letter-spacing:.18em;text-transform:uppercase;color:var(--zen-accent-text);margin:0 0 22px;font-family:Space Grotesk,ui-sans-serif,sans-serif;font-size:11px;display:block}@container (min-width:1024px){.pf-zen__label{text-align:right;width:96px;margin:0;position:absolute;top:3px;left:-128px}}.pf-zen__role{margin:0 0 34px}.pf-zen__role:last-child{margin-bottom:0}.pf-zen__role-head{border-bottom:1px solid var(--zen-line);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 16px;margin-bottom:12px;padding-bottom:8px;display:flex}.pf-zen__role-title{color:var(--zen-ink);font-size:1.05em;font-weight:500}.pf-zen__role-org{color:var(--zen-accent-text);font-style:italic}.pf-zen__role-dates{letter-spacing:.03em;color:var(--zen-ink);opacity:.55;white-space:nowrap;font-family:Space Grotesk,ui-sans-serif,sans-serif;font-size:12px}.pf-zen__prose{color:var(--zen-ink);opacity:.92;margin:0;line-height:1.6}.pf-zen .pf-zen__prose.pf-list{margin:0;padding-left:0;list-style:none}.pf-zen .pf-zen__prose.pf-list li{margin:0 0 4px;padding-left:1.15em;position:relative}.pf-zen .pf-zen__prose.pf-list li:before{content:"–";color:var(--zen-accent-soft);position:absolute;left:0}.pf-zen__project{grid-template-columns:2.2rem 1fr;gap:4px 16px;margin:0 0 26px;display:grid}.pf-zen__project-index{color:var(--zen-accent-text);opacity:.75;padding-top:3px;font-family:Space Grotesk,ui-sans-serif,sans-serif;font-size:13px}.pf-zen__project-title-row{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.pf-zen__project-title{overflow-wrap:anywhere;font-size:1.16em;font-weight:500}.pf-zen__project-subtitle{color:var(--zen-ink);opacity:.5;letter-spacing:.02em;font-family:Space Grotesk,ui-sans-serif,sans-serif;font-size:12px}.pf-zen__project-desc{opacity:.9;grid-column:2;margin:4px 0 0}@media (max-width:520px){.pf-zen__project-desc{grid-column:1/-1}}.pf-zen__visit{letter-spacing:.02em;color:var(--zen-accent-text);overflow-wrap:anywhere;grid-column:2;align-items:center;gap:5px;width:fit-content;margin-top:6px;font-family:Space Grotesk,ui-sans-serif,sans-serif;font-size:12px;text-decoration:none;display:inline-flex}@media (max-width:520px){.pf-zen__visit{grid-column:1/-1}}.pf-zen__visit svg{flex:none;transition:transform .3s cubic-bezier(.16,1,.3,1)}.pf-zen__visit:hover svg,.pf-zen__visit:focus-visible svg{transform:translate(3px,-3px)}.pf-zen__visit span{position:relative}.pf-zen__visit span:after{content:"";opacity:.35;transform-origin:0;background:currentColor;height:1px;transition:transform .3s;position:absolute;bottom:-2px;left:0;right:0;transform:scaleX(.4)}.pf-zen__visit:hover span:after{transform:scaleX(1)}.pf-zen__tags{letter-spacing:.04em;color:var(--zen-ink);opacity:.7;flex-wrap:wrap;grid-column:2;gap:6px 10px;margin:10px 0 0;padding:0;font-family:Space Grotesk,ui-sans-serif,sans-serif;font-size:11px;list-style:none;display:flex}@media (max-width:520px){.pf-zen__tags{grid-column:1/-1}}.pf-zen__tag:before{content:"#";opacity:.5}.pf-zen__project-media{grid-column:1/-1;margin-top:12px}.pf-zen__artifact{background:linear-gradient(135deg,var(--zen-artifact-a,#e2e6da),var(--zen-artifact-b,#eee6da)60%,var(--zen-artifact-c,#e6e0d3));border-radius:4px;grid-column:1/-1;justify-content:center;align-items:center;margin:18px calc(-1*clamp(24px,6vw,64px)) 26px;padding:clamp(28px,5vw,46px) clamp(24px,6vw,64px);display:flex}.pf-zen__plate{letter-spacing:.02em;width:84px;height:84px;color:var(--zen-on-accent);border-radius:50%;justify-content:center;align-items:center;font-family:Space Grotesk,ui-sans-serif,sans-serif;font-size:26px;display:flex;box-shadow:0 10px 30px #3c3a3624}.pf-zen__skills{margin:0}.pf-zen__skill-row{border-top:1px solid var(--zen-line);grid-template-columns:9rem 1fr;gap:4px 20px;padding:12px 0;display:grid}.pf-zen__skill-row:last-child{border-bottom:1px solid var(--zen-line)}.pf-zen__skill-term{letter-spacing:.1em;text-transform:uppercase;color:var(--zen-accent-text);margin:0;font-family:Space Grotesk,ui-sans-serif,sans-serif;font-size:11px}.pf-zen__skill-def{opacity:.92;margin:0}@media (max-width:520px){.pf-zen__skill-row{grid-template-columns:1fr;gap:4px}}.pf-zen__edu{margin:0 0 14px}.pf-zen__edu:last-child{margin-bottom:0}.pf-zen__edu-line{margin:0 0 2px}.pf-zen__edu-school{font-weight:500}.pf-zen__edu-degree{color:var(--zen-accent-text);font-style:italic}.pf-zen__edu-dates{opacity:.55;letter-spacing:.02em;font-family:Space Grotesk,ui-sans-serif,sans-serif;font-size:12px}.pf-zen__edu-note{opacity:.75;margin:2px 0 0;font-style:italic}.pf-zen__quote{border-left:2px solid var(--zen-line);margin:0 0 30px;padding-left:20px}.pf-zen__quote:last-child{margin-bottom:0}.pf-zen__quote blockquote{opacity:.92;margin:0 0 10px;font-style:italic}.pf-zen__quote-by{letter-spacing:.03em;color:var(--zen-accent-text);opacity:.9;font-family:Space Grotesk,ui-sans-serif,sans-serif;font-size:12px;font-style:normal;display:block}.pf-zen__quote-role{opacity:.7}.pf-zen__custom{margin:0 0 34px}.pf-zen__custom:last-child{margin-bottom:0}.pf-zen__custom-head{border-bottom:1px solid var(--zen-line);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 16px;margin-bottom:12px;padding-bottom:8px;display:flex}.pf-zen__custom-heading{font-size:1.05em;font-weight:500}.pf-zen__custom-sub{color:var(--zen-accent-text);font-style:italic}.pf-zen__custom-date{letter-spacing:.03em;opacity:.55;white-space:nowrap;font-family:Space Grotesk,ui-sans-serif,sans-serif;font-size:12px}.pf-zen__custom-media{margin-top:12px}.pf-zen__foot{border-top:1px solid var(--zen-line);text-align:center;margin-top:clamp(64px,10vh,110px);padding-top:clamp(36px,6vh,56px)}.pf-zen__foot-mailto{color:var(--zen-ink);margin:0 0 26px;font-size:clamp(1.6rem,4.5vw,2.4rem);font-style:italic;text-decoration:none;display:inline-block;position:relative}.pf-zen__foot-mailto .pf-zen__underline-svg{height:14px;bottom:-8px}.pf-zen__foot-mailto .pf-zen__underline-svg path{stroke-width:2.75px}.pf-zen__foot-links{letter-spacing:.03em;flex-wrap:wrap;justify-content:center;gap:8px 18px;margin:0 0 34px;font-family:Space Grotesk,ui-sans-serif,sans-serif;font-size:12px;display:flex}.pf-zen__breathing{border-radius:50%;justify-content:center;align-items:center;width:46px;height:46px;margin:0 auto 16px;display:flex;position:relative}.pf-zen__breathing:before{content:"";border:1.5px solid var(--zen-accent-soft);border-radius:50%;animation:4.5s ease-in-out infinite pf-zen-breathe;position:absolute;inset:0}.pf-zen__foot-initials{letter-spacing:.08em;color:var(--zen-accent-soft);opacity:.85;margin:0;font-family:Space Grotesk,ui-sans-serif,sans-serif;font-size:12px;position:relative}@keyframes pf-zen-breathe{0%,to{opacity:.35;transform:scale(.85)}50%{opacity:.65;transform:scale(1.15)}}.pf-zen__foot-copy{opacity:.4;margin:0;font-family:Space Grotesk,ui-sans-serif,sans-serif;font-size:11px}@media (prefers-reduced-motion:reduce){.pf-zen__underline-svg[data-drawn] path{stroke-dashoffset:0;transition:none}.pf-zen__dot,.pf-zen__breathing:before{animation:none}}@media (max-width:640px){.pf-zen__col{padding:64px 18px 90px}.pf-zen__project{grid-template-columns:1.6rem 1fr}.pf-zen__artifact{margin-left:-18px;margin-right:-18px}}.pf-zen--dark{--zen-bg:color-mix(in srgb,var(--scheme-tint,#201e1b)12%,#201e1b);--zen-bg-time:color-mix(in srgb,var(--scheme-tint,#201e1b)12%,#201e1b);--zen-ink:#e7e1d6;--zen-line:color-mix(in srgb,var(--scheme-tint,#e7e1d629)15%,#e7e1d629);--zen-accent-soft:color-mix(in srgb,var(--accent)66%,#d8d2c4);--zen-accent-text:color-mix(in srgb,var(--accent)52%,#e7e1d6);--zen-on-accent:#201e1b;--zen-veil:color-mix(in srgb,var(--scheme-tint,#e7e1d60f)15%,#e7e1d60f)}.pf-zen--dark .pf-zen__artifact{background:color-mix(in srgb,var(--zen-ink)6%,var(--zen-bg));border:1px solid var(--zen-line)}.pf-zen--dark .pf-zen__plate{box-shadow:0 10px 30px #0006}
