.portfolio{--bg:#0e0d0b;--bg-soft:#151411;--bg-card:#181613;--fg:#f5f1ea;--fg-muted:#96918a;--fg-dim:#615d57;--border:#2b2825;--border-strong:#45423e;--accent:#e1d644;--accent-ink:#191701;--font-display:var(--portfolio-display), "Times New Roman", serif;--font-sans:var(--portfolio-sans), "Helvetica Neue", Helvetica, system-ui, sans-serif;--font-mono:var(--portfolio-mono), ui-monospace, "SFMono-Regular", monospace;--max-w:1480px;--gutter:clamp(20px, 4vw, 56px);--radius:14px;--radius-sm:8px;background:var(--bg);color:var(--fg);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;background-image:radial-gradient(ellipse at top, oklch(from var(--bg) calc(l + .02) c h) 0%, transparent 55%), var(--bg);min-height:100dvh;font-size:16px;line-height:1.55;overflow-x:hidden}@supports (color:lab(0% 0 0)){.portfolio{--bg:lab(3.70746% .192635 1.07586);--bg-soft:lab(6.20848% .32647 1.81975);--bg-card:lab(7.24251% .428721 2.34144);--fg:lab(95.3886% .58049 3.77289);--fg-muted:lab(60.5928% .723779 4.54586);--fg-dim:lab(39.7069% .610814 3.79365);--border:lab(16.5006% .50649 3.04802);--border-strong:lab(28.1015% .48916 3.03528);--accent:lab(84.6653% -8.00324 69.1051);--accent-ink:lab(7.43301% -1.76287 10.5603)}}.portfolio[data-theme=light]{--bg:#f7f5f1;--bg-soft:#edebe7;--bg-card:#fdfcf9;--fg:#14110d;--fg-muted:#514c46;--fg-dim:#7d7a74;--border:#cdcac5;--border-strong:#a19e99;--accent-ink:#191701}@supports (color:lab(0% 0 0)){.portfolio[data-theme=light]{--bg:lab(96.5348% .282526 1.88144);--bg-soft:lab(93.0576% .341147 2.25912);--bg-card:lab(98.849% .167638 1.12768);--fg:lab(5.28425% .542134 2.63397);--fg-muted:lab(32.7508% .759721 4.57203);--fg-dim:lab(51.3075% .600398 3.78634);--border:lab(81.463% .462264 3.01695);--border-strong:lab(65.2228% .466764 3.01988);--accent-ink:lab(7.43301% -1.76287 10.5603)}}.portfolio *{box-sizing:border-box}.portfolio ::selection{background:var(--accent);color:var(--accent-ink)}.portfolio a{color:inherit;text-decoration:none}.portfolio button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}.portfolio section{position:relative}.portfolio .wrap{max-width:var(--max-w);padding-inline:var(--gutter);margin-inline:auto}.portfolio .display{font-family:var(--font-display);letter-spacing:-.02em;font-feature-settings:"ss01" on;font-weight:400;line-height:.92}.portfolio .eyebrow{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--fg-muted);font-size:11px}.portfolio .section-num{font-family:var(--font-mono);letter-spacing:.16em;color:var(--fg-dim);font-size:11px}.portfolio .italic{font-style:italic}.portfolio .nav{z-index:50;padding:18px var(--gutter);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:color-mix(in oklch, var(--bg) 75%, transparent);border-bottom:1px solid #0000;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;transition:border-color .3s,background .3s;display:grid;position:fixed;top:0;left:0;right:0}.portfolio .nav.is-scrolled{border-bottom-color:var(--border)}.portfolio .nav .brand{font-family:var(--font-mono);letter-spacing:.08em;align-items:center;gap:10px;font-size:12px;display:flex}.portfolio .nav .brand-mark{border:1px solid var(--border-strong);width:26px;height:26px;font-family:var(--font-display);border-radius:999px;place-items:center;font-size:14px;line-height:1;display:grid}.portfolio .nav .links{font-family:var(--font-mono);letter-spacing:.05em;gap:28px;font-size:12px;display:flex}.portfolio .nav .links a{color:var(--fg-muted);padding:4px 0;transition:color .2s;position:relative}.portfolio .nav .links a:before{content:"";background:var(--fg);transform-origin:0;width:100%;height:1px;transition:transform .4s cubic-bezier(.2,.7,.2,1);position:absolute;bottom:-2px;left:0;transform:scaleX(0)}.portfolio .nav .links a:hover{color:var(--fg)}.portfolio .nav .links a:hover:before{transform:scaleX(1)}.portfolio .nav .meta{font-family:var(--font-mono);color:var(--fg-muted);justify-self:end;align-items:center;gap:14px;font-size:11px;display:flex}.portfolio .status-dot{background:#6ed274;background:lab(76.4344% -44.8513 36.877);border-radius:999px;width:7px;height:7px;animation:2.4s ease-in-out infinite portfolio-pulse;box-shadow:0 0 0 3px #6ed2744d;box-shadow:0 0 0 3px lab(76.4344% -44.8513 36.877/.3)}@keyframes portfolio-pulse{0%,to{opacity:1}50%{opacity:.45}}.portfolio .hero{flex-direction:column;justify-content:space-between;min-height:100vh;padding-top:120px;padding-bottom:80px;display:flex;position:relative}.portfolio .hero-top{grid-template-columns:1fr 1fr;gap:40px;margin-bottom:40px;display:grid}.portfolio .hero-top .col-meta{flex-direction:column;gap:24px;display:flex}.portfolio .hero-top .intro-line{max-width:32ch;color:var(--fg-muted);font-size:15px;line-height:1.5}.portfolio .hero-top .intro-line b{color:var(--fg);font-weight:500}.portfolio .hero-top .availability{border:1px solid var(--border);font-family:var(--font-mono);color:var(--fg-muted);border-radius:999px;align-self:flex-start;align-items:center;gap:8px;padding:8px 12px;font-size:11px;display:inline-flex}.portfolio .hero-name{margin:0;font-size:clamp(56px,14vw,220px);line-height:.9;display:block;position:relative}.portfolio .hero-name .word{display:block}.portfolio .hero-name .word span{animation:1.1s cubic-bezier(.2,.8,.2,1) forwards portfolio-rise;display:inline-block;transform:translateY(110%)}.portfolio .hero-name .word:nth-child(2) span{animation-delay:.12s}@keyframes portfolio-rise{to{transform:translateY(0)}}.portfolio .hero-name .accent-dot{vertical-align:top;background:var(--accent);border-radius:999px;width:.18em;height:.18em;margin-top:.4em;margin-left:.15em;display:inline-block}.portfolio .hero-bottom{border-top:1px solid var(--border);grid-template-columns:2fr 1fr 1fr;align-items:end;gap:40px;margin-top:32px;padding-top:32px;display:grid}.portfolio .role-rotator{font-family:var(--font-display);flex-wrap:wrap;align-items:baseline;gap:14px;font-size:clamp(24px,3.4vw,44px);line-height:1;display:flex}.portfolio .role-rotator .static{color:var(--fg-muted);font-style:italic}.portfolio .role-rotator .rot-track{height:1em;display:inline-grid;position:relative;overflow:hidden}.portfolio .role-rotator .rot-track .slot{grid-area:1/1;transition:opacity .5s,transform .5s cubic-bezier(.2,.8,.2,1);display:inline-block}.portfolio .role-rotator .rot-track .slot.is-out{opacity:0;transform:translateY(-110%)}.portfolio .role-rotator .rot-track .slot.is-in{opacity:1;transform:translateY(0)}.portfolio .role-rotator .rot-track .slot.is-next{opacity:0;transform:translateY(110%)}.portfolio .hero-stat{flex-direction:column;gap:6px;display:flex}.portfolio .hero-stat .label{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:var(--fg-dim);font-size:10px}.portfolio .hero-stat .value{font-family:var(--font-display);font-size:clamp(28px,3vw,40px);line-height:1}.portfolio .hero-stat .value small{font-family:var(--font-sans);color:var(--fg-muted);margin-left:6px;font-size:12px}.portfolio .hero-marquee{border-top:1px solid var(--border);border-bottom:1px solid var(--border);white-space:nowrap;gap:60px;margin-top:28px;padding:18px 0;display:flex;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 6% 94%,#0000);mask-image:linear-gradient(90deg,#0000,#000 6% 94%,#0000)}.portfolio .hero-marquee .track{font-family:var(--font-display);gap:60px;font-size:clamp(28px,4vw,56px);line-height:1;animation:38s linear infinite portfolio-marquee;display:inline-flex}.portfolio .hero-marquee .track span{align-items:center;gap:60px;display:inline-flex}.portfolio .hero-marquee .track .dot{background:var(--accent);border-radius:999px;width:10px;height:10px;display:inline-block}@keyframes portfolio-marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.portfolio .hero-grid-bg{background-image:linear-gradient(var(--border) 1px, transparent 1px), linear-gradient(90deg, var(--border) 1px, transparent 1px);opacity:.35;pointer-events:none;background-size:80px 80px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(at 70% 30%,#000 0%,#0000 65%);mask-image:radial-gradient(at 70% 30%,#000 0%,#0000 65%)}.portfolio .section-head{border-top:1px solid var(--border);grid-template-columns:200px 1fr;align-items:baseline;gap:40px;padding:80px 0 40px;display:grid}.portfolio .section-head h2{font-family:var(--font-display);letter-spacing:-.02em;margin:0;font-size:clamp(40px,6vw,80px);font-weight:400;line-height:1}.portfolio .about-grid{grid-template-columns:200px 1fr 1fr;gap:40px;padding:20px 0 100px;display:grid}.portfolio .about-grid .label-col .eyebrow{margin-bottom:10px;display:block}.portfolio .about-bio{font-family:var(--font-display);letter-spacing:-.01em;font-size:clamp(22px,2.2vw,34px);line-height:1.28}.portfolio .about-bio b{font-style:italic;font-weight:400}.portfolio .about-side{border-left:1px solid var(--border);flex-direction:column;gap:24px;padding-left:32px;display:flex}.portfolio .about-side .kv{grid-template-columns:90px 1fr;gap:12px;font-size:13px;display:grid}.portfolio .about-side .kv .k{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--fg-dim);padding-top:4px;font-size:10px}.portfolio .about-side .kv .v{color:var(--fg);line-height:1.55}.portfolio .about-side .kv .v ul{margin:0;padding:0;list-style:none}.portfolio .about-side .kv .v li{padding:2px 0}.portfolio .work-list{border-top:1px solid var(--border);grid-template-columns:1fr;margin-bottom:80px;display:grid}.portfolio .work-row{border-bottom:1px solid var(--border);cursor:pointer;color:inherit;grid-template-columns:60px 1.4fr 1fr 1fr 200px;align-items:center;gap:24px;padding:26px 0;text-decoration:none;transition:padding .4s cubic-bezier(.2,.7,.2,1);display:grid;position:relative}.portfolio .work-row:hover{padding-left:18px}.portfolio .work-row .num{font-family:var(--font-mono);color:var(--fg-dim);letter-spacing:.1em;font-size:11px}.portfolio .work-row .title-wrap{flex-direction:column;gap:8px;min-width:0;display:flex}.portfolio .work-row .title{font-family:var(--font-display);font-size:clamp(22px,2.4vw,36px);line-height:1.1}.portfolio .work-row .blurb{color:var(--fg-muted);max-width:60ch;font-size:13.5px;line-height:1.45}.portfolio .work-row .client{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--fg-muted);font-size:11px}.portfolio .work-row .tags{flex-wrap:wrap;gap:6px;display:flex}.portfolio .work-row .tag{font-family:var(--font-mono);letter-spacing:.06em;border:1px solid var(--border);color:var(--fg-muted);border-radius:999px;padding:4px 8px;font-size:10px}.portfolio .work-row .year{font-family:var(--font-mono);color:var(--fg-muted);text-align:right;font-size:12px}.portfolio .work-row .arrow{opacity:0;font-size:22px;transition:all .4s cubic-bezier(.2,.7,.2,1);position:absolute;top:50%;right:0;transform:translate(20px,-50%)}.portfolio .work-row:hover .arrow{opacity:1;transform:translateY(-50%)}.portfolio .work-row:before{content:"";background:var(--bg-soft);z-index:-1;transform-origin:bottom;transition:transform .4s cubic-bezier(.2,.7,.2,1);position:absolute;inset:0;transform:scaleY(0)}.portfolio .work-row:hover:before{transform-origin:top;transform:scaleY(1)}.portfolio .list-tight{border-top:1px solid var(--border);padding:8px 0 80px}.portfolio .list-row{border-bottom:1px solid var(--border);color:var(--fg);grid-template-columns:80px 100px 1fr 1fr 24px;align-items:center;gap:24px;padding:20px 0;transition:padding .35s cubic-bezier(.2,.7,.2,1),color .2s;display:grid;position:relative}.portfolio .list-row:hover{padding-left:14px}.portfolio .list-row:before{content:"";background:var(--bg-soft);z-index:-1;transform-origin:bottom;transition:transform .35s cubic-bezier(.2,.7,.2,1);position:absolute;inset:0;transform:scaleY(0)}.portfolio .list-row:hover:before{transform-origin:top;transform:scaleY(1)}.portfolio .list-row .list-date{font-family:var(--font-mono);letter-spacing:.1em;color:var(--fg-dim);font-size:11px}.portfolio .list-row .list-kind{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--fg-muted);border:1px solid var(--border);border-radius:999px;justify-self:start;padding:4px 8px;font-size:10px}.portfolio .list-row .list-title{font-family:var(--font-display);letter-spacing:-.005em;font-size:clamp(20px,1.8vw,26px);line-height:1.2}.portfolio .list-row .list-venue{color:var(--fg-muted);font-size:13px}.portfolio .list-row .list-arr{font-family:var(--font-mono);color:var(--fg-muted);text-align:right;font-size:16px;transition:transform .3s cubic-bezier(.2,.8,.2,1)}.portfolio .list-row:hover .list-arr{color:var(--fg);transform:translate(4px,-4px)}.portfolio .exp-list{padding:20px 0 100px}.portfolio .exp-row{border-top:1px solid var(--border);grid-template-columns:80px 200px 1fr 160px;align-items:center;gap:32px;padding:22px 0;transition:padding .4s cubic-bezier(.2,.7,.2,1),background .25s;display:grid}.portfolio .exp-row:hover{padding-left:12px}.portfolio .exp-row:last-child{border-bottom:1px solid var(--border)}.portfolio .exp-logo{justify-content:flex-start;align-items:center;height:44px;display:flex}.portfolio .exp-logo img{object-fit:contain;filter:grayscale()opacity(.85);width:auto;max-width:100%;height:auto;max-height:100%;transition:filter .25s}.portfolio .exp-row:hover .exp-logo img{filter:grayscale(0)opacity()}.portfolio .exp-row .company{font-family:var(--font-display);font-size:clamp(22px,2.2vw,32px);line-height:1.1}.portfolio .exp-row .role{color:var(--fg-muted);max-width:60ch;font-size:14px}.portfolio .exp-row .period{font-family:var(--font-mono);color:var(--fg-dim);text-align:right;letter-spacing:.08em;font-size:11px}.portfolio .quotes{grid-template-columns:repeat(3,1fr);gap:24px;padding:20px 0 120px;display:grid}.portfolio .quote-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-soft);flex-direction:column;gap:24px;padding:28px;transition:transform .4s cubic-bezier(.2,.7,.2,1),border-color .2s;display:flex}.portfolio .quote-card:hover{border-color:var(--border-strong);transform:translateY(-3px)}.portfolio .quote-mark{font-family:var(--font-display);color:var(--accent);height:24px;font-size:56px;line-height:.4}.portfolio .quote-body{font-family:var(--font-display);letter-spacing:-.005em;flex:1;font-size:19px;line-height:1.35}.portfolio .quote-author{flex-direction:column;gap:2px;display:flex}.portfolio .quote-author .name{font-size:13px;font-weight:500}.portfolio .quote-author .role{font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--fg-dim);font-size:10px}.portfolio .contact{border-top:1px solid var(--border);grid-template-columns:200px 1fr;gap:40px;padding:80px 0 60px;display:grid}.portfolio .contact-big{font-family:var(--font-display);letter-spacing:-.025em;font-size:clamp(48px,8vw,140px);line-height:.95}.portfolio .contact-big a{background:linear-gradient(transparent 62%, color-mix(in oklch, var(--accent) 70%, transparent) 62%) no-repeat;background-size:0% 100%;transition:background-size .6s cubic-bezier(.2,.8,.2,1);display:inline-block;position:relative}.portfolio .contact-big a:hover{background-size:100% 100%}.portfolio .contact-sub{font-family:var(--font-display);color:var(--fg-muted);max-width:36ch;margin-top:30px;font-size:clamp(20px,2vw,28px);font-style:italic}.portfolio .contact-side{flex-direction:column;gap:18px;display:flex}.portfolio .contact-side a{border-top:1px solid var(--border);font-family:var(--font-mono);letter-spacing:.06em;color:var(--fg-muted);grid-template-columns:1fr auto;gap:12px;padding:14px 0;font-size:12px;transition:color .2s;display:grid}.portfolio .contact-side a:last-of-type{border-bottom:1px solid var(--border)}.portfolio .contact-side a:hover{color:var(--fg)}.portfolio .contact-side a .arr{transition:transform .3s cubic-bezier(.2,.8,.2,1);display:inline-block}.portfolio .contact-side a:hover .arr{transform:translate(4px,-4px)}.portfolio .footer{padding:40px var(--gutter);border-top:1px solid var(--border);font-family:var(--font-mono);color:var(--fg-dim);letter-spacing:.08em;justify-content:space-between;align-items:center;font-size:11px;display:flex}.portfolio .footer .br-mark{font-family:var(--font-display);color:var(--fg);letter-spacing:-.02em;font-size:18px}.portfolio .reveal{opacity:0;transition:opacity .9s,transform .9s cubic-bezier(.2,.7,.2,1);transform:translateY(20px)}.portfolio .reveal.is-in{opacity:1;transform:none}.portfolio-cursor{background:var(--accent);pointer-events:none;z-index:100;mix-blend-mode:difference;border-radius:999px;width:8px;height:8px;transition:width .25s,height .25s,background .2s;position:fixed;transform:translate(-50%,-50%)}.portfolio-cursor.is-hover{background:var(--fg);width:36px;height:36px}@media (max-width:900px){.portfolio .hero-top,.portfolio .hero-bottom,.portfolio .section-head,.portfolio .about-grid,.portfolio .contact,.portfolio .exp-row{grid-template-columns:1fr}.portfolio .list-row{grid-template-columns:60px 1fr 16px;gap:12px}.portfolio .list-row .list-kind,.portfolio .list-row .list-venue{display:none}.portfolio .work-row{grid-template-columns:40px 1fr;gap:12px}.portfolio .work-row .client,.portfolio .work-row .tags,.portfolio .work-row .year{display:none}.portfolio .quotes{grid-template-columns:1fr}.portfolio-cursor{display:none}}
