*{margin:0}.portfolio-root{--bg:#0f172a;--panel:#1e293b;--text:#94a3b8;--muted:#64748b;--faint:#475569;--heading:#e2e8f0;--accent:#5eead4;--accent-strong:#2dd4bf;--accent-bg:#2dd4bf1a;--card-bg:#1e293b80;--card-border:#94a3b81a;background:var(--bg);height:100vh;color:var(--text);text-align:left;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;position:relative;overflow:hidden}.portfolio-root *{box-sizing:border-box}.portfolio-root a{color:var(--heading);text-decoration:none}.portfolio-root p,.portfolio-root h1,.portfolio-root h2,.portfolio-root h3{margin:0}.portfolio-spotlight{z-index:0;pointer-events:none;background:radial-gradient(600px circle at var(--spotlight-x,-9999px) var(--spotlight-y,-9999px), #1d4ed826, transparent 80%);position:fixed;inset:0}.portfolio-layout{z-index:1;width:100%;height:100vh;padding-left:max(24px,50vw - 568px);display:flex;position:relative;overflow:hidden}.portfolio-sidebar{flex-direction:column;flex:0 0 520px;justify-content:space-between;height:100vh;padding:96px 0;display:flex;overflow:hidden}.portfolio-name{max-width:540px;color:var(--heading);letter-spacing:0;padding-bottom:15px;font-size:60px;font-weight:650;line-height:1}.portfolio-title{color:var(--heading);margin-top:24px;padding-bottom:24px;font-size:20px;font-weight:500;line-height:1.3}.portfolio-tagline{max-width:320px;color:var(--text);margin-top:22px;font-size:16px;line-height:1.55}.portfolio-nav{flex-direction:column;gap:14px;margin-top:40px;display:flex}.portfolio-nav-item{width:fit-content;color:var(--muted);cursor:pointer;font:inherit;letter-spacing:.12em;text-transform:uppercase;background:0 0;border:0;align-items:center;gap:16px;padding:0;font-size:12px;font-weight:700;line-height:1;transition:color .16s;display:flex}.portfolio-nav-item:hover,.portfolio-nav-item.is-active{color:var(--heading)}.portfolio-nav-line{background:var(--faint);width:32px;height:1px;transition:width .16s,background-color .16s;display:block}.portfolio-nav-item:hover .portfolio-nav-line,.portfolio-nav-item.is-active .portfolio-nav-line{background:var(--heading);width:64px}.portfolio-socials{align-items:center;gap:20px;display:flex}.portfolio-social-link{width:24px;height:24px;color:var(--muted);transition:color .16s;display:inline-flex}.portfolio-social-link:hover{color:var(--heading)}.portfolio-social-link svg{fill:currentColor;width:100%;height:100%}.portfolio-main{scrollbar-color:#94a3b8 #f8fafc;flex:auto;min-width:0;height:100vh;overflow-y:auto}.portfolio-main-inner{width:100%;max-width:600px;padding:96px 24px}.portfolio-section{margin-bottom:144px;scroll-margin-top:96px}.portfolio-section-heading{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.portfolio-about{color:var(--text);font-size:16px;line-height:1.75}.portfolio-about p+p{margin-top:20px}.portfolio-about a,.portfolio-footer a{color:var(--heading);font-weight:500;transition:color .16s}.portfolio-about a:hover,.portfolio-footer a:hover{color:var(--accent)}.portfolio-pill-list{flex-wrap:wrap;gap:8px;margin-top:24px;display:flex}.portfolio-pill-list.small{gap:6px;margin-top:16px}.portfolio-pill{background:var(--accent-bg);color:var(--accent-strong);border-radius:999px;align-items:center;padding:7px 12px;font-size:12px;font-weight:500;line-height:1;display:inline-flex}.portfolio-card-list{gap:12px;display:grid}.portfolio-card{color:inherit;border:1px solid #0000;border-radius:6px;grid-template-columns:120px 1fr;gap:24px;margin-left:-20px;padding:20px;transition:background-color .16s,border-color .16s,box-shadow .16s;display:grid}.portfolio-card:hover{border-color:var(--card-border);background:var(--card-bg);box-shadow:inset 0 1px #94a3b81a}.portfolio-card-kicker,.portfolio-project-number{color:var(--faint);letter-spacing:.06em;text-transform:uppercase;padding-top:3px;font-size:12px;font-weight:500;line-height:1.6}.portfolio-card-title{color:var(--heading);align-items:baseline;gap:6px;font-size:15px;font-weight:600;line-height:1.35;transition:color .16s;display:inline-flex}.portfolio-card:hover .portfolio-card-title{color:var(--accent)}.portfolio-card-desc{color:var(--text);margin-top:8px;font-size:14px;line-height:1.7}.portfolio-project-links{flex-wrap:wrap;gap:14px;margin-top:12px;display:flex}.portfolio-project-link{color:var(--heading);align-items:baseline;gap:4px;font-size:13px;font-weight:600;transition:color .16s;display:inline-flex}.portfolio-project-link:hover{color:var(--accent)}.portfolio-arrow{width:14px;height:14px;display:inline-flex;transform:translateY(2px)}.portfolio-arrow svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:14px;height:14px}.portfolio-card:hover .portfolio-arrow,.portfolio-resume-link:hover .portfolio-arrow{transform:translate(3px,-1px)}.portfolio-resume-link{color:var(--heading);align-items:baseline;gap:6px;margin-top:28px;font-size:15px;font-weight:600;transition:color .16s;display:inline-flex}.portfolio-resume-link:hover{color:var(--accent)}.portfolio-project-card{grid-template-columns:206px 1fr;align-items:start;min-height:116px;margin-bottom:24px}.portfolio-project-media{aspect-ratio:16/9;background:#0f172abf;border:2px solid #94a3b81a;border-radius:4px;width:206px;overflow:hidden}.portfolio-project-media img{object-fit:cover;opacity:.62;filter:saturate(.7)contrast(1.05);width:100%;height:100%;transition:opacity .16s,filter .16s,transform .16s;display:block}.portfolio-project-card:hover .portfolio-project-media img{opacity:1;filter:saturate()contrast();transform:scale(1.03)}.portfolio-project-year{color:var(--text);margin-bottom:6px;font-size:22px;font-weight:700;line-height:1.15}.portfolio-project-card .portfolio-card-title{color:var(--heading);font-size:22px;line-height:1.2}.portfolio-project-card .portfolio-card-title a,.portfolio-project-card .portfolio-card-title span{align-items:baseline;gap:7px;display:inline-flex}.portfolio-project-details{opacity:0;max-height:0;transition:max-height .22s,opacity .16s,transform .16s;overflow:hidden;transform:translateY(-4px)}.portfolio-project-card:hover .portfolio-project-details,.portfolio-project-card:focus-within .portfolio-project-details{opacity:1;max-height:360px;transform:translateY(0)}.portfolio-footer{max-width:520px;color:var(--faint);padding-bottom:16px;font-size:13px;line-height:1.7}@media (width<=1023px){.portfolio-root{height:auto;min-height:100vh;overflow:hidden auto}.portfolio-layout{height:auto;min-height:100vh;padding:48px 24px 64px;display:block;overflow:visible}.portfolio-sidebar{height:auto;padding:0 0 64px;overflow:visible}.portfolio-name{font-size:48px}.portfolio-title{font-size:20px}.portfolio-nav{display:none}.portfolio-socials{margin-top:32px}.portfolio-main{height:auto;overflow:visible}.portfolio-main-inner{max-width:none;padding:0}.portfolio-section{margin-bottom:96px;scroll-margin-top:0}.portfolio-section-heading{z-index:10;clip:auto;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);width:auto;height:auto;color:var(--heading);letter-spacing:.12em;text-transform:uppercase;white-space:normal;background:#0f172ad9;margin:0 0 24px;padding:20px 0;font-size:12px;font-weight:700;position:sticky;top:0;overflow:visible}.portfolio-card,.portfolio-project-card{margin-left:0;padding:0;display:block}.portfolio-card:hover{box-shadow:none;background:0 0;border-color:#0000}.portfolio-card-kicker,.portfolio-project-number{margin-bottom:8px}.portfolio-project-media{width:100%;max-width:220px;margin-bottom:16px}.portfolio-project-year,.portfolio-project-card .portfolio-card-title{font-size:18px}.portfolio-project-details{opacity:1;max-height:none;overflow:visible;transform:none}}@media (width<=640px){.portfolio-layout{padding-inline:20px}.portfolio-name{font-size:42px}.portfolio-about{font-size:15px}}
