.portfolio-page{--ink:#fff;--ink-2:#d4d4d4;--ink-3:#a3a3a3;--ink-mute:#737373;--rule:#ffffff14;--rule-2:#ffffff24;--accent:#00dc82;--accent-hover:#22ef9a;--accent-under:#00dc8238;--serif:var(--font-source-serif), "Source Serif 4", "Source Serif Pro", Georgia, "Times New Roman", serif;--mono:var(--font-jetbrains-mono), "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--max-read:720px;--max-grid:1180px}.portfolio-art{width:100%;color:var(--ink-2);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;letter-spacing:0;max-width:var(--max-grid);margin:0 auto;padding:7rem 2rem 4rem;font-size:16px;font-weight:400;line-height:1.6;animation:.55s cubic-bezier(.22,1,.36,1) both portfolio-rise}.portfolio-art *,.portfolio-art :before,.portfolio-art :after{box-sizing:border-box}@keyframes portfolio-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.portfolio-hero{text-align:center;max-width:720px;margin:0 auto 4rem;padding-top:1.5rem}.portfolio-eyebrow{font-family:var(--mono);letter-spacing:.24em;text-transform:uppercase;color:var(--accent);border-bottom:1px solid var(--accent-under);margin:0 0 1.6rem;padding-bottom:.4rem;font-size:.72rem;font-weight:500;display:inline-block}.portfolio-h1{font-family:var(--serif);letter-spacing:-.022em;color:var(--ink);text-wrap:pretty;margin:0 0 1.75rem;font-size:clamp(2.25rem,6vw,4.25rem);font-weight:500;line-height:1.04}.portfolio-h1 em{font-style:italic;font-family:var(--serif);color:var(--ink)}.portfolio-lede{color:var(--ink-2);max-width:var(--max-read);text-align:justify;text-justify:inter-word;-webkit-hyphens:auto;hyphens:auto;margin:0 auto;font-size:1.05rem;line-height:1.65}.portfolio-stats{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);text-align:center;grid-template-columns:repeat(3,1fr);align-items:center;gap:1rem;max-width:720px;margin:0 auto 4rem;padding:2rem 0;display:grid}.portfolio-stat{flex-direction:column;align-items:center;gap:.4rem;display:flex}.portfolio-stat-number{font-family:var(--serif);letter-spacing:-.02em;color:var(--ink);font-size:clamp(2rem,4vw,2.75rem);font-weight:300;line-height:1}.portfolio-stat-label{font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-mute);font-size:.7rem;font-weight:500}.portfolio-intro{max-width:var(--max-read);flex-direction:column;gap:1rem;margin:0 auto 5rem;display:flex}.portfolio-intro p{text-align:justify;text-justify:inter-word;-webkit-hyphens:auto;hyphens:auto;color:var(--ink-2);margin:0;font-size:1.02rem;line-height:1.7}.portfolio-intro a{color:var(--ink);text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px;-webkit-text-decoration-color:var(--accent-under);text-decoration-color:var(--accent-under);transition:color .2s,text-decoration-color .2s}.portfolio-intro a:hover{color:var(--accent);-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}.portfolio-bucket{margin-bottom:4.5rem}.portfolio-bucket-header{border-top:1px solid var(--rule-2);border-bottom:1px solid var(--rule);grid-template-columns:minmax(220px,1fr) 2fr;align-items:start;gap:2.5rem;margin:0 0 2rem;padding:1.5rem 0;display:grid}.portfolio-bucket-title{font-family:var(--serif);letter-spacing:-.012em;color:var(--ink);margin:0;font-size:clamp(1.5rem,2.6vw,1.875rem);font-weight:500;line-height:1.15}.portfolio-bucket-note{font-family:var(--serif);color:var(--ink-3);max-width:60ch;margin:0;font-size:1rem;font-style:italic;line-height:1.55}.portfolio-grid{border-top:1px solid var(--rule);border-left:1px solid var(--rule);grid-template-columns:repeat(3,1fr);margin:0;padding:0;list-style:none;display:grid}.portfolio-card{border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);flex-direction:column;gap:.45rem;padding:1.25rem 1.25rem 1.4rem;transition:background-color .2s;display:flex}.portfolio-card:hover{background:#ffffff04}.portfolio-card-name{font-family:var(--serif);letter-spacing:-.008em;color:var(--ink);border-bottom:1px solid #0000;align-self:flex-start;padding-bottom:1px;font-size:1.2rem;font-weight:500;line-height:1.25;text-decoration:none;transition:color .2s,border-color .2s}.portfolio-card-name:hover{color:var(--accent);border-bottom-color:var(--accent)}.portfolio-card-name:after{content:"↗";color:var(--ink-mute);margin-left:.4rem;font-size:.85em;transition:color .2s,transform .2s;display:inline-block}.portfolio-card-name:hover:after{color:var(--accent);transform:translate(1px,-1px)}.portfolio-card-desc{font-family:var(--serif);color:var(--ink-3);margin:0;font-size:.95rem;line-height:1.5}.portfolio-card-acquired{font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-mute);margin-top:.2rem;font-size:.62rem;font-weight:500}.portfolio-card-acquired span{color:var(--accent)}.portfolio-method{max-width:var(--max-read);border-top:1px solid var(--rule);flex-direction:column;gap:1rem;margin:4rem auto 0;padding:2rem 0;display:flex}.portfolio-method-title{font-family:var(--serif);letter-spacing:-.012em;color:var(--ink);margin:0 0 .5rem;font-size:clamp(1.5rem,2.6vw,1.875rem);font-weight:500;line-height:1.15}.portfolio-method p{color:var(--ink-2);margin:0;font-size:1.02rem;line-height:1.7}.portfolio-method-list{flex-direction:column;gap:.6rem;margin:0;padding:0;list-style:none;display:flex}.portfolio-method-list li{color:var(--ink-2);padding-left:1.25rem;font-size:1rem;line-height:1.6;position:relative}.portfolio-method-list li:before{content:"›";color:var(--accent);position:absolute;left:0}.portfolio-method a,.portfolio-method-list a{color:var(--ink);text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px;-webkit-text-decoration-color:var(--accent-under);text-decoration-color:var(--accent-under);transition:color .2s,text-decoration-color .2s}.portfolio-method a:hover,.portfolio-method-list a:hover{color:var(--accent);-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}.portfolio-related{max-width:720px;font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-mute);flex-wrap:wrap;justify-content:center;align-items:center;gap:.75rem;margin:3rem auto 0;padding:2rem 0 .25rem;font-size:.7rem;font-weight:500;display:flex}.portfolio-related a{color:var(--ink-2);border-bottom:1px solid var(--rule-2);padding-bottom:2px;text-decoration:none;transition:color .2s,border-color .2s}.portfolio-related a:hover{color:var(--ink);border-color:var(--accent)}.portfolio-closing{border-top:1px solid var(--rule);text-align:center;max-width:720px;margin:1.5rem auto 0;padding:1.5rem 0 1rem}.portfolio-closing p{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-mute);margin:0;font-size:.78rem;font-weight:500}.portfolio-closing a{color:var(--ink-2);text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:1px;-webkit-text-decoration-color:var(--accent-under);text-decoration-color:var(--accent-under);letter-spacing:.02em;transition:color .2s,text-decoration-color .2s}.portfolio-closing a:hover{color:var(--ink);-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}@media (max-width:900px){.portfolio-grid{grid-template-columns:repeat(2,1fr)}.portfolio-bucket-header{grid-template-columns:1fr;gap:.75rem}}@media (max-width:600px){.portfolio-art{padding:8rem 1.25rem 3rem}.portfolio-hero{margin-bottom:3rem}.portfolio-stats{grid-template-columns:1fr;gap:1.5rem;margin-bottom:3rem;padding:1.5rem 0}.portfolio-intro{margin-bottom:3.5rem}.portfolio-bucket{margin-bottom:3rem}.portfolio-grid{grid-template-columns:1fr}.portfolio-card{padding:1rem .75rem 1.1rem}.portfolio-closing{padding:2rem 0 .5rem}}.portfolio-art .portfolio-credibility-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:.55rem;margin:0 0 1.75rem;display:flex}.portfolio-art .portfolio-credibility{border:1px solid var(--rule-2);font-family:var(--mono);letter-spacing:.02em;color:var(--ink-2);background:#00dc820d;border-radius:999px;align-items:center;gap:.55rem;margin:0;padding:.4rem .85rem .4rem .5rem;font-size:.72rem;font-weight:500;display:inline-flex}.portfolio-art .portfolio-credibility-mark{width:18px;height:18px;color:var(--accent);flex-shrink:0}.portfolio-art .portfolio-credibility-text{flex-wrap:wrap;align-items:center;gap:.4rem;line-height:1.3;display:inline-flex}.portfolio-art .portfolio-credibility-text strong{color:var(--ink);text-transform:uppercase;letter-spacing:.05em;font-weight:600}.portfolio-art .portfolio-credibility-sep{color:var(--ink-mute)}.portfolio-art .portfolio-credibility-suffix{color:var(--ink-mute);text-transform:uppercase;letter-spacing:.05em;font-weight:500}@media (max-width:600px){.portfolio-art .portfolio-credibility{padding:.35rem .7rem .35rem .45rem;font-size:.66rem}.portfolio-art .portfolio-credibility-mark{width:16px;height:16px}}