:root{--accent:#c9a96e;--accent-soft:#c9a96e1f;--bg:#101010;--surface:#161616;--ink-1:#e8e4df;--ink-2:#b7b2ab;--ink-3:#928d86;--ink-4:#857f78;--line:#242220;--line-faint:#ffffff0d;--radius:8px;--radius-sm:4px;--ease:ease;--dur:.25s}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--ink-2);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Outfit,sans-serif;font-size:15px;font-weight:300;line-height:1.65}::selection{background:var(--accent-soft);color:var(--ink-1)}a{color:var(--ink-1);transition:color var(--dur)var(--ease);text-decoration:none}a:hover{color:var(--accent)}.page{max-width:640px;margin:0 auto;padding:0 1.5rem}header{opacity:0;animation:fadeIn .6s var(--ease).1s forwards;padding:5rem 0 4rem}.name{color:var(--ink-1);letter-spacing:-.01em;margin-bottom:.5rem;font-family:Newsreader,serif;font-size:1.75rem;font-weight:400;line-height:1.2}.tagline{color:var(--ink-3);margin-bottom:1.5rem;font-size:.875rem}.header-links{flex-wrap:wrap;gap:.5rem 1rem;font-size:.8125rem;display:flex}.header-links a{color:var(--ink-3);transition:color var(--dur),border-color var(--dur);border-bottom:1px solid #0000;padding-bottom:1px}.header-links a:hover{color:var(--ink-1);border-bottom-color:var(--line)}section{border-top:1px solid var(--line);opacity:0;animation:fadeIn .6s var(--ease)forwards;padding:2.5rem 0}section:nth-child(2){animation-delay:.2s}section:nth-child(3){animation-delay:.3s}section:nth-child(4){animation-delay:.4s}.section-title{letter-spacing:.12em;text-transform:uppercase;color:var(--ink-3);margin-bottom:1.5rem;font-family:Newsreader,serif;font-size:.75rem;font-weight:400}.project{border-bottom:1px solid var(--line-faint);color:inherit;padding:1.5rem 0;text-decoration:none;transition:padding-left .3s;display:block;position:relative}.project:first-of-type{padding-top:0}.project:last-of-type{border-bottom:none}.project:hover{padding-left:.5rem}.project-link:after{content:"";z-index:0;position:absolute;inset:0}.project-desc a,.project-meta a{z-index:1;position:relative}.project-row{justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:.25rem;display:flex}.project-name{color:var(--ink-1);transition:color var(--dur);font-family:Newsreader,serif;font-size:1.1875rem;font-weight:400;line-height:1.25}.project:hover .project-name{color:var(--accent)}.project-status{letter-spacing:.06em;color:var(--ink-4);white-space:nowrap;font-size:.75rem;font-style:italic}.project-status-winner{color:var(--accent)}.project-desc{color:var(--ink-3);font-size:.8125rem;line-height:1.5}.project-meta{color:var(--ink-4);letter-spacing:.02em;margin-top:.25rem;font-size:.75rem}.project-meta a{color:var(--ink-4);transition:color var(--dur)}.project-meta a:hover{color:var(--accent)}.collab{color:var(--ink-4);font-style:italic}.collab-link{color:var(--ink-4);border-bottom:1px solid var(--line-faint);cursor:pointer;transition:color var(--dur);padding-bottom:1px}.collab-link:hover{color:var(--accent)}.now-group{margin-bottom:2rem}.now-group:last-child{margin-bottom:0}.now-label{color:var(--ink-1);margin-bottom:.75rem;font-family:Newsreader,serif;font-size:.9375rem;font-style:italic;line-height:1.3}.now-item{border-bottom:1px solid var(--line-faint);margin-bottom:.75rem;padding:0 0 .75rem}.now-item:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.now-item-title{color:var(--ink-1);font-size:.875rem}.now-item-title a{border-bottom:1px solid var(--line);padding-bottom:1px}.now-item-title a:hover{border-bottom-color:var(--accent)}.now-item-note{color:var(--ink-3);margin-top:.25rem;font-size:.75rem}footer{border-top:1px solid var(--line);text-align:center;opacity:0;animation:fadeIn .6s var(--ease).6s forwards;padding:3rem 0 4rem}.footer-email{color:var(--ink-2);border-bottom:1px solid var(--line);padding-bottom:2px;font-family:Newsreader,serif;font-size:1rem;font-style:italic}.footer-email:hover{color:var(--accent);border-bottom-color:var(--accent)}.footer-support{margin-top:1rem}.support-link{color:var(--ink-4);border-bottom:1px solid var(--line);transition:color var(--dur),border-color var(--dur);padding-bottom:1px;font-size:.75rem}.support-link:hover{color:var(--accent);border-bottom-color:var(--accent)}.footer-note{color:var(--ink-4);letter-spacing:.05em;margin-top:1.5rem;font-size:.75rem}.back-link{color:var(--ink-4);transition:color var(--dur),border-color var(--dur);border-bottom:1px solid #0000;padding-bottom:1px;font-size:.8125rem}.back-link:hover{color:var(--ink-1);border-bottom-color:var(--line)}.support-intro{color:var(--ink-2);margin-top:.75rem;font-size:.875rem;line-height:1.6}.donate-box{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);opacity:0;animation:fadeIn .6s var(--ease).3s forwards;padding:1.5rem}.donate-row{align-items:center;gap:1rem;margin-bottom:1rem;display:flex}.donate-label{color:var(--ink-4);white-space:nowrap;font-size:.8125rem}.qty-control{border:1px solid var(--line);border-radius:var(--radius-sm);align-items:center;display:flex;overflow:hidden}.qty-btn{color:var(--ink-2);cursor:pointer;background:0 0;border:none;width:44px;height:44px;font-family:Outfit,sans-serif;font-size:1rem;transition:background .2s,color .2s}.qty-btn:hover{color:var(--ink-1);background:#ffffff0d}.qty-value{text-align:center;width:40px;color:var(--ink-1);border-left:1px solid var(--line);border-right:1px solid var(--line);font-size:.875rem;line-height:44px}.donate-total{color:var(--ink-4);margin-bottom:1rem;font-size:.8125rem}.donate-amount{color:var(--ink-1)}.paypal-btn{letter-spacing:.05em;color:var(--ink-1);border:1px solid var(--line);border-radius:var(--radius-sm);cursor:pointer;background:0 0;padding:.7em 1.8em;font-family:Outfit,sans-serif;font-size:.8125rem;font-weight:400;transition:border-color .3s,background .3s;display:inline-block}.paypal-btn:hover{border-color:var(--accent);background:var(--accent-soft)}.donate-note{color:var(--ink-4);margin-top:1rem;font-size:.75rem;font-style:italic}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (max-width:500px){header{padding:3.5rem 0 3rem}.name{font-size:1.5rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}header,section,footer,.donate-box{opacity:1!important}}
