/* A quiet edge footer leaves the central navigation capsule independent. */
.site-footer.site-footer{position:fixed;z-index:80;left:28px;right:28px;bottom:max(17px,env(safe-area-inset-bottom));max-width:none;margin:0;padding:0;border:0;display:flex;align-items:center;justify-content:space-between;flex-wrap:nowrap;gap:16px;pointer-events:none;font:400 12px/1.4 var(--mono,"Courier Prime",monospace);color:var(--muted,#676b66);text-shadow:0 1px 5px var(--paper,#f5f4ef),0 0 12px var(--paper,#f5f4ef)}
.site-footer .footer-credit{font:inherit;white-space:nowrap}
.site-footer .footer-socials{display:flex;align-items:center;gap:20px}
.site-footer .footer-social-icon{display:none;flex:none;fill:none;stroke:currentColor}
.site-footer a{display:inline-flex;align-items:center;min-height:44px;padding:0;font:inherit;color:inherit;text-decoration:none;pointer-events:auto}
.site-footer a:hover{text-decoration:underline;text-underline-offset:4px}
body[data-page="home"] .site-footer{display:none}
body:is([data-page="work"],[data-page="library"]) main{min-height:100dvh;padding-bottom:24px}
body:is([data-page="work"],[data-page="library"]) .site-footer{position:relative;inset:auto;margin:24px 28px 0;padding-bottom:max(17px,env(safe-area-inset-bottom))}
@media(max-width:760px){
 .site-footer.site-footer{left:20px;right:20px;bottom:max(18px,env(safe-area-inset-bottom));height:46px;align-items:flex-end;font-size:11px;gap:12px}
 .site-footer.site-footer{--footer-text-inset:16.5px}
 body:has(.archive-dock) .site-footer{--footer-text-inset:17px}
 .site-footer :is(.footer-credit,.footer-socials){transform:translateY(calc(-1 * var(--footer-text-inset)))}
 .site-footer .footer-credit{display:flex;align-items:flex-end;gap:.25em}
 .site-footer .footer-credit a{align-items:flex-end}
 .site-footer .footer-socials{align-items:flex-end;gap:4px}
 .site-footer .footer-socials a{align-items:flex-end;justify-content:center;width:32px;min-height:32px;height:32px;flex:none}
 .site-footer .footer-social-icon{display:block;width:18px;height:18px}
 .site-footer .footer-social-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
 .site-footer .footer-socials a:focus-visible{outline:1px solid currentColor;outline-offset:2px;border-radius:3px}
 body>.motion-resume{bottom:calc(126px + env(safe-area-inset-bottom))}
 body[data-page="about"] main{padding-bottom:150px}
 body:is([data-page="work"],[data-page="library"]) .site-footer.site-footer{position:relative;inset:auto;margin:24px 20px 0;height:calc(46px + max(18px,env(safe-area-inset-bottom)));padding:0 0 max(18px,env(safe-area-inset-bottom))}
 html[data-wall-viewport="true"] .site-footer.site-footer{top:calc(var(--wall-top,0px) + var(--wall-height,100dvh) - max(18px,env(safe-area-inset-bottom)) - 46px);bottom:auto}
}
@media(max-width:360px){
 .site-footer.site-footer{left:16px;right:16px}
 .site-footer .footer-socials a{width:24px;min-height:28px;height:28px}
 .site-footer .footer-social-icon{width:16px;height:16px}
 body:is([data-page="work"],[data-page="library"]) .site-footer.site-footer{margin-inline:16px}
}
