body:has([data-folio]){--folio-muted:color-mix(in srgb, var(--color-accent) 64%, #586576);--folio-bright:color-mix(in srgb, var(--color-accent) 70%, white)}.living-folio{pointer-events:none}.living-folio__surface{z-index:-1;contain:strict;fill:none;stroke-width:1px;width:100%;height:100%;position:fixed;inset:0}.living-folio__island{fill:url(#folio-face);stroke:url(#folio-rim)}.living-folio__thread{stroke:url(#folio-thread);stroke-dasharray:210 40 130 105 225 290;stroke-width:.85px}.living-folio__traveler{stroke:var(--folio-bright);stroke-width:1.2px;stroke-dasharray:9 991;opacity:.35;animation:42s linear infinite folio-travel}.living-folio__trace{stroke:var(--folio-bright);stroke-width:1.5px;stroke-dasharray:34 966;opacity:0}.living-folio__trace--echo{stroke:var(--folio-muted);stroke-width:1px}.folio-accent{--turn:0deg;--open:0;--echo:0;--shift-x:0px;--shift-y:0px;--piece:0;stroke:var(--color-accent);opacity:.65}.folio-accent__response{transform:translate(var(--shift-x), var(--shift-y))}.folio-accent__float{animation:9s ease-in-out infinite alternate folio-float}.folio-accent--crescent .folio-accent__float{animation-duration:11s;animation-delay:-5s}.folio-accent--fold .folio-accent__float{animation-duration:12s;animation-delay:-3s}.folio-accent--whisker-near .folio-accent__float{animation-delay:-7s}.folio-accent--spark .folio-accent__float{animation-duration:8s;animation-delay:-2s}.folio-accent--stitch .folio-accent__float{animation-duration:10s;animation-delay:-6s}.folio-accent__turn{transform:rotate(var(--turn))}.folio-accent__secondary{transform:rotate(calc(var(--turn) * -.45)) translate(calc(var(--echo) * 13px), calc(var(--echo) * -9px));opacity:calc(.45 + var(--echo) * .3)}.folio-accent__ribbon{fill:var(--color-accent);fill-opacity:.18;stroke-opacity:.75}.folio-accent__muted{stroke:var(--folio-muted)}.folio-accent__tip{stroke:var(--folio-bright);stroke-width:1.7px}.folio-accent__paper{fill:var(--color-accent);fill-opacity:.08}.folio-accent__crease{fill:var(--color-accent);fill-opacity:.12;stroke-opacity:.4}.folio-accent__spark{fill:var(--color-accent);fill-opacity:.35;stroke:var(--folio-bright)}.folio-accent [data-piece="0"]{--piece:-1}.folio-accent [data-piece="1"]{--piece:0}.folio-accent [data-piece="2"]{--piece:1}.folio-accent [data-piece="3"]{--piece:2}.folio-accent__piece{transform:translate(calc(var(--echo) * var(--piece) * 14px), calc(var(--open) * var(--piece) * 16px)) rotate(calc(var(--turn) * var(--piece) * .4))}body:has([data-folio]) .home-hero--intro{padding-block:5rem}body:has([data-folio]) .page{min-height:100dvh}@media (width<640px){body:has([data-folio]) .home-hero--intro{padding-block:clamp(1.5rem,5svh,2.75rem)}}@keyframes folio-float{0%{transform:translateY(-3px)rotate(-2deg)}to{transform:translateY(3px)rotate(2deg)}}@keyframes folio-travel{to{stroke-dashoffset:-1000px}}.living-folio[data-sleep] *{animation-play-state:paused}@media (prefers-reduced-motion:reduce){.living-folio *{animation:none!important}}@media (forced-colors:active){.living-folio{display:none}}.folio-dust{fill:#bdb8ad;fill-opacity:.24;stroke:none;pointer-events:none}[data-folio-star]{opacity:.72}.folio-dust__response{transform:translate(var(--dust-x,0px), var(--dust-y,0px))}.folio-dust__drift{animation:31s ease-in-out infinite alternate folio-dust-drift}.folio-dust__drift--1{animation-duration:43s;animation-delay:-13s}.folio-dust__drift--2{animation-duration:53s;animation-delay:-29s}.folio-dust__spark{fill-opacity:.5;animation:37s linear infinite folio-dust-twinkle}.folio-dust__drift--1 .folio-dust__spark{animation-duration:47s;animation-delay:-19s}.folio-dust__drift--2 .folio-dust__spark{animation-duration:59s;animation-delay:-7s}@keyframes folio-dust-drift{0%{transform:translate(-.7px,.8px)}to{transform:translate(1px,-1.2px)}}@keyframes folio-dust-twinkle{0%,42%,48%,to{opacity:.5}45%{opacity:1}}[data-folio-star]:nth-child(12) .folio-dust__spark{animation-duration:43s;animation-delay:-31s}@media (width<900px){body:has([data-folio]) .home-hero--intro .home-hero__tagline{max-width:min(24rem,100vw - 80px)}.folio-accent--whisker,.folio-accent--fold,.living-folio__traveler,.living-folio__trace,[data-folio-star][visibility=hidden]{display:none}.folio-accent__response{scale:.5}.folio-accent__float,.folio-dust__drift,.folio-dust__spark{animation:none}.folio-accent--crescent .folio-accent__float{animation:14s ease-in-out infinite alternate folio-mobile-float}.living-folio__thread{opacity:.28;stroke-dasharray:none}}@keyframes folio-mobile-float{0%{transform:translateY(-1px)}to{transform:translateY(1px)}}@media (width<380px){body:has([data-folio]) .home-hero--intro .home-hero__tagline{max-width:calc(100vw - 72px);font-size:1rem;line-height:1.6}}body:has(.folio-nav) .folio-accent--fold,body:has(.folio-nav) .folio-accent--crescent,body:has(.folio-nav) .folio-accent--stitch{display:none}.folio-nav{justify-content:center;gap:1rem;margin-top:2rem;display:flex}.folio-nav:is([data-ready],[data-measuring]){pointer-events:none;margin:0;position:fixed;inset:0}.folio-waypoint{width:150px;min-height:120px;color:var(--color-text-interactive);pointer-events:auto;-webkit-tap-highlight-color:transparent;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;text-decoration:none;display:flex}.folio-nav:is([data-ready],[data-measuring]) .folio-waypoint{left:var(--waypoint-x);top:var(--waypoint-y);position:absolute;transform:translate(-50%,-50%)}.folio-waypoint svg{fill:none;stroke:currentColor;stroke-width:.85px;width:72px;height:72px;transition:transform .65s cubic-bezier(.2,.8,.2,1);overflow:visible}.folio-waypoint__mark{fill:color-mix(in srgb, var(--color-accent) 9%, transparent);transition:fill .3s}.folio-waypoint__echo{opacity:.35;transform-origin:50%;transition:transform .65s cubic-bezier(.2,.8,.2,1),opacity .3s}.folio-waypoint__label{font-family:var(--font-mono);letter-spacing:.04em;border-bottom:1px solid #0000;font-size:.9rem;transition:border-color .2s}.folio-waypoint:is(:hover,:focus-visible) svg{transform:translateY(-5px)rotate(-8deg)}.folio-waypoint:is(:hover,:focus-visible) .folio-waypoint__echo{opacity:.8;transform:rotate(14deg)scale(1.12)}.folio-waypoint:is(:hover,:focus-visible) .folio-waypoint__mark{fill:color-mix(in srgb, var(--color-accent) 20%, transparent)}.folio-waypoint:is(:hover,:focus-visible) .folio-waypoint__label{border-color:currentColor}.folio-waypoint:focus-visible{outline:1px dashed var(--color-focus-ring);outline-offset:5px}.folio-waypoint:active svg{transition-duration:.1s;transform:scale(.9)}@media (width<900px){.folio-nav{gap:.5rem}.folio-waypoint{width:88px;min-height:90px}.folio-waypoint svg{width:48px;height:48px}.folio-waypoint__label{font-size:.8rem}}@media (prefers-reduced-motion:reduce){.folio-waypoint,.folio-waypoint *{transition:none!important}}@media (forced-colors:active){.folio-waypoint{color:linktext}.folio-waypoint__label{text-decoration:underline}}@media (height<640px){.folio-nav:is([data-ready],[data-measuring]){pointer-events:auto;margin-top:6rem;position:static}.folio-nav:is([data-ready],[data-measuring]) .folio-waypoint{position:static;transform:none}.folio-nav{gap:.5rem}.folio-waypoint{width:88px;min-height:90px}.folio-waypoint svg{width:48px;height:48px}}@media (scripting:enabled){.living-folio:not([data-ready]) .living-folio__surface,.folio-nav:not([data-ready]){visibility:hidden}}.folio-world{display:none}@media (width>=1280px) and (height>=700px) and (hover:hover) and (pointer:fine){.folio-world{z-index:0;pointer-events:none;fill:none;width:100%;height:100%;stroke:var(--folio-muted);stroke-width:.85px;stroke-linecap:round;stroke-linejoin:round;contain:strict;display:block;position:fixed;inset:0}.folio-world__mark{fill:var(--folio-muted);fill-opacity:.035}.folio-world__hit{fill:#0000;stroke:none;pointer-events:all;cursor:grab}.folio-world[data-dragging] .folio-world__hit{cursor:grabbing}.folio-world__secret{stroke:var(--folio-bright)}.folio-world__name{fill:var(--folio-bright);stroke:none;font-family:var(--font-mono);letter-spacing:.24em;opacity:0;font-size:11px}.folio-world__note{fill:var(--folio-muted);letter-spacing:.06em;font-size:9.5px}.folio-world__thread,.folio-world__trail{stroke-width:.65px}.folio-world__ripple{stroke-width:.6px;stroke-dasharray:2 13}}@media (prefers-reduced-motion:reduce){.folio-world__hit{pointer-events:none;cursor:default}}.home{text-align:center;width:100%;max-width:30rem;margin:auto}.home h1{margin-bottom:var(--space-sm)}.home p{color:var(--color-text-primary);overflow-wrap:break-word;margin:0 auto}.home__links{margin-top:var(--space-md);font-family:var(--font-mono);font-size:var(--text-sm);text-transform:lowercase;flex-wrap:wrap;justify-content:center;gap:.85rem;display:flex}.intro{padding:var(--space-lg) 0;display:flow-root}.intro-image{float:right;object-fit:cover;width:160px;height:160px;margin-left:var(--space-md);margin-bottom:var(--space-sm);border-radius:16px}.intro p{color:var(--color-text-secondary);max-width:34rem}.intro p:first-of-type{color:var(--color-text-primary)}.section-heading{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--color-text-muted);text-transform:lowercase;letter-spacing:.04em;margin-bottom:var(--space-sm);font-weight:500}.home-hero{padding:var(--space-lg) 0 var(--space-md);justify-content:center;gap:var(--space-sm);flex-direction:column;display:flex;position:relative}.home-hero__name{font-family:var(--font-body);letter-spacing:-.03em;color:var(--color-text-primary);text-wrap:balance;margin:0;font-size:clamp(1.65rem,4.2vw,2rem);font-weight:700;line-height:1.15}.home-hero__tagline{max-width:32rem;font-family:var(--font-body);font-size:var(--text-base);letter-spacing:.005em;color:var(--color-text-secondary);overflow-wrap:break-word;text-wrap:pretty;margin:0;font-weight:400;line-height:1.65}.home-hero__tagline a{text-underline-offset:.15em;font-weight:500}.home-hero__tagline a:hover,.home-hero__tagline a:focus-visible{text-decoration:underline}.home-hero--intro{text-align:center;padding:var(--space-lg) 0 var(--space-md);flex:1;justify-content:center;align-items:center;gap:0}.home-hero--intro .home-hero__name{margin-bottom:var(--space-sm);letter-spacing:-.032em;font-weight:700}.home-hero--intro .home-hero__tagline{max-width:24rem;color:var(--color-text-secondary);font-size:clamp(1.05rem,2.4vw,1.2rem);line-height:1.7}.home-hero__contact{justify-content:center;gap:var(--space-xs);margin:var(--space-sm) 0 0;padding:0;list-style:none;display:flex}.home-hero__contact a{width:2.25rem;height:2.25rem;color:var(--color-text-muted);border-radius:50%;place-items:center;transition:color .15s;display:grid}.home-hero__contact a:hover,.home-hero__contact a:focus-visible{color:var(--color-text-interactive-hover)}.home-hero__contact a:focus-visible{outline:1px dashed var(--color-focus-ring);outline-offset:2px}@media (forced-colors:active){.home-hero__contact a{color:linktext}}.home-section{padding:var(--space-md) 0}.home-section--cta{padding-top:var(--space-md);padding-bottom:var(--space-md);flex-wrap:wrap;justify-content:center;gap:.75rem;display:flex}.now-card{padding:var(--space-sm) var(--space-sm);border:1px solid var(--color-rule);background:var(--color-surface-raised);color:var(--color-text-secondary);border-radius:12px;flex-wrap:wrap;align-items:baseline;gap:.5rem;text-decoration:none;transition:border-color .15s,background .15s;display:flex}.now-card:hover,.now-card:focus-visible{border-color:var(--color-accent);background:var(--color-surface-elevated)}.now-card__label{color:var(--color-text-secondary);font-size:var(--text-base)}.now-card__link{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--color-text-interactive);margin-left:auto}.home-card-list{flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.home-card-list li{border-top:1px solid var(--color-rule)}.home-card-list li:last-child{border-bottom:1px solid var(--color-rule)}.home-card{border:1px solid #0000;border-radius:10px;flex-direction:column;gap:.2rem;padding:.7rem .75rem;text-decoration:none;transition:background .15s;display:flex}.home-card:hover,.home-card:focus-visible{background:var(--color-surface-raised)}.home-card__title{font-size:var(--text-base);color:var(--color-text-primary);font-weight:600;line-height:var(--leading-tight)}.home-card__desc{font-family:var(--font-mono);color:var(--color-text-muted);font-size:.78rem}.home-empty{color:var(--color-text-secondary);font-size:var(--text-sm);margin:var(--space-sm) 0 0}@media (width<=640px){.home-hero--intro{padding:var(--space-md) 0 var(--space-sm)}.now-card__link{margin-left:0}}@media (width<=480px){.home-hero--intro{padding:var(--space-sm) 0}}
