.portfolio-home{--portfolio-ease-out:cubic-bezier(.23, 1, .32, 1);--foreground:#16231f;--foreground-soft:#52615a;--muted-foreground:#657068;--border-soft:#16231f24;--surface:#fbf9f4d6;--surface-soft:#e8e3d8d1;--surface-deep:linear-gradient(145deg, #173f39, #0f2d29);--surface-clay:linear-gradient(145deg, #eee4d0, #e6dac1);--shadow-soft:0 18px 48px #16231f12;--accent-gold:#b38a32;--accent-clay:#8b432c}.portfolio-skip-link{z-index:100;color:#0f2d29;background:#fbf9f4;border-radius:999px;padding:.7rem 1rem;font-size:.86rem;font-weight:700;position:fixed;top:.65rem;left:.75rem;transform:translateY(-180%);box-shadow:0 8px 28px #0f2d2938}.portfolio-skip-link:focus{transform:translateY(0)}.portfolio-menu-toggle,.portfolio-mobile-menu{display:none}.portfolio-detail-page{background-color:#f5f0e6;background-image:linear-gradient(#173f3907 1px,#0000 1px),linear-gradient(90deg,#173f3907 1px,#0000 1px),none;background-position:0 0,0 0,0 0;background-repeat:repeat,repeat,repeat;background-size:32px 32px;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box}.portfolio-detail-hero{padding-block:clamp(3.5rem,8vw,7rem) clamp(4rem,8vw,6.5rem)}.portfolio-detail-crumb{border-bottom:1px solid var(--portfolio-line);letter-spacing:.15em;color:#657068;justify-content:space-between;align-items:center;gap:1rem;padding-bottom:.8rem;font-size:.64rem;font-weight:700;display:flex}.portfolio-detail-hero-grid{grid-template-columns:minmax(0,1.25fr) minmax(18rem,.58fr);align-items:end;gap:clamp(3rem,8vw,8rem);padding-top:clamp(2.5rem,6vw,5rem);display:grid}.portfolio-detail-hero-copy h1{white-space:pre-line;max-width:13ch;font-family:var(--font-display-serif), "Songti SC", Georgia, serif;letter-spacing:-.065em;color:var(--portfolio-green);text-wrap:balance;margin-top:.8rem;font-size:clamp(3.3rem,6.6vw,7rem);font-weight:500;line-height:.94}.portfolio-detail-subtitle{color:#334640;margin-top:1.6rem;font-size:clamp(1.02rem,1.4vw,1.2rem);font-weight:600;line-height:1.6}.portfolio-detail-note{color:#52615a;max-width:46rem;margin-top:.75rem;font-size:.94rem;line-height:1.8}.portfolio-detail-signal{background:var(--portfolio-green-deep);color:#f9f5eb;border-radius:1.1rem;padding:1.2rem;overflow:hidden;box-shadow:0 22px 54px #0f2d292e}.portfolio-detail-signal-head{letter-spacing:.14em;color:#fff9;border-bottom:1px solid #ffffff24;justify-content:space-between;align-items:center;gap:1rem;padding-bottom:.85rem;font-size:.63rem;font-weight:700;display:flex}.portfolio-detail-signal ol{margin:0;padding:0;list-style:none;display:grid}.portfolio-detail-signal li{border-bottom:1px solid #ffffff1a;grid-template-columns:2.2rem minmax(0,1fr);align-items:center;gap:.7rem;min-height:3.7rem;display:grid}.portfolio-detail-signal li span{color:#d5ad52;font-family:var(--font-display-serif), Georgia, serif}.portfolio-detail-signal li strong{font-size:.9rem;font-weight:560}.portfolio-detail-signal>a{color:#ffffffd1;justify-content:space-between;align-items:center;width:100%;min-height:3rem;padding-top:.7rem;font-size:.78rem;font-weight:650;display:inline-flex}.portfolio-detail-content{padding-bottom:clamp(5rem,9vw,8rem)}.portfolio-detail-content .section-kicker{color:#657068}.portfolio-detail-content .detail-panel-paper,.portfolio-detail-content .detail-stat,.portfolio-detail-content .resume-project-list{border-color:var(--portfolio-line);box-shadow:var(--shadow-soft);background:#fbf9f4d6}.portfolio-detail-content .detail-panel-deep{background:var(--surface-deep);box-shadow:0 22px 50px #0f2d2929}.portfolio-detail-content .detail-panel-deep .section-kicker{color:#ffffffb8}.portfolio-detail-content .detail-panel-deep .detail-body{color:#ffffffd1}.portfolio-detail-content .detail-panel-clay{background:var(--surface-clay);border-color:#b38a322e}.portfolio-detail-content .detail-panel,.portfolio-detail-content .detail-stat,.portfolio-detail-content .resume-project-list,.portfolio-detail-content .selected-index-shell{border-radius:1rem}.portfolio-detail-content .detail-panel-title,.portfolio-detail-content .selected-index-title,.portfolio-detail-content .ai-workflow-project-head h3{color:var(--portfolio-ink)}.portfolio-detail-content .detail-body,.portfolio-detail-content .selected-section-note,.portfolio-detail-content .selected-dossier-summary,.portfolio-detail-content .ai-workflow-project-summary,.portfolio-detail-content .ai-workflow-process-item p,.portfolio-detail-content .ai-workflow-evidence-copy p,.portfolio-detail-content .resume-project-body,.portfolio-detail-content .resume-project-detail,.portfolio-detail-content .resume-overview-summary,.portfolio-detail-content .resume-overview-direction,.portfolio-detail-content .resume-pdf-note{color:#52615a}.portfolio-detail-contact{border-top:1px solid var(--portfolio-line);grid-template-columns:minmax(0,1.15fr) minmax(17rem,.5fr);align-items:end;gap:3rem;padding-block:clamp(4rem,8vw,7rem);display:grid}.portfolio-detail-contact h2{max-width:13ch;font-family:var(--font-display-serif), "Songti SC", Georgia, serif;letter-spacing:-.055em;color:var(--portfolio-green);margin-top:.75rem;font-size:clamp(2.5rem,5vw,5rem);font-weight:500;line-height:.98}.portfolio-detail-contact-actions{flex-wrap:wrap;align-items:center;gap:.8rem 1.2rem;display:flex}.portfolio-content-heading{max-width:50rem}.portfolio-content-heading h2,.portfolio-story-focus h2,.portfolio-process-principle h2{font-family:var(--font-display-serif), "Songti SC", Georgia, serif;letter-spacing:-.055em;color:var(--portfolio-green);text-wrap:balance;margin-top:.7rem;font-size:clamp(2.4rem,4.8vw,4.8rem);font-weight:500;line-height:1}.portfolio-story-layout{grid-template-columns:minmax(0,1.2fr) minmax(19rem,.55fr);align-items:start;gap:clamp(3rem,8vw,8rem);display:grid}.portfolio-story-list{border-top:1px solid var(--portfolio-line);margin-top:clamp(2.5rem,5vw,4rem)}.portfolio-story-item{border-bottom:1px solid var(--portfolio-line);grid-template-columns:3rem minmax(0,1fr);gap:1.2rem;padding-block:1.6rem;display:grid}.portfolio-story-index{font-family:var(--font-display-serif), Georgia, serif;color:#82601f;padding-top:.2rem}.portfolio-story-item h3{color:var(--portfolio-ink);font-size:1.15rem;font-weight:650}.portfolio-story-item p{color:#52615a;margin-top:.55rem;font-size:.96rem;line-height:1.85}.portfolio-story-focus{background:var(--portfolio-green-deep);color:#f9f5eb;border-radius:1rem;padding:1.4rem;position:sticky;top:7rem}.portfolio-story-focus .portfolio-section-index{color:#ffffff8c}.portfolio-story-focus h2{color:#f9f5eb;font-size:clamp(2rem,3.3vw,3.3rem)}.portfolio-story-focus ul{margin:2rem 0 0;padding:0;list-style:none;display:grid}.portfolio-story-focus li{border-top:1px solid #ffffff1f;grid-template-columns:2.2rem minmax(0,1fr);align-items:center;gap:.7rem;min-height:3.8rem;display:grid}.portfolio-story-focus li span{color:#d5ad52;font-size:.75rem}.portfolio-story-focus li strong{font-size:.9rem;font-weight:560}.portfolio-story-focus>a{color:#fff;border-bottom:1px solid #ffffff47;gap:.6rem;margin-top:1.6rem;padding-bottom:.35rem;font-size:.84rem;display:inline-flex}.portfolio-process-layout{gap:clamp(4rem,8vw,7rem);display:grid}.portfolio-process-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin:clamp(2.5rem,5vw,4rem) 0 0;padding:0;list-style:none;display:grid}.portfolio-process-step{border:1px solid var(--portfolio-line);min-height:23rem;box-shadow:var(--shadow-soft);background:#fbf9f4d1;border-radius:1rem;flex-direction:column;padding:1.25rem;display:flex}.portfolio-process-step:nth-child(2){background:var(--portfolio-green-deep);color:#fff;transform:translateY(1.5rem)}.portfolio-process-step-head{border-bottom:1px solid var(--portfolio-line);letter-spacing:.13em;color:#657068;justify-content:space-between;align-items:center;gap:1rem;padding-bottom:.8rem;font-size:.66rem;font-weight:700;display:flex}.portfolio-process-step:nth-child(2) .portfolio-process-step-head{color:#ffffff94;border-color:#ffffff26}.portfolio-process-step h3{font-family:var(--font-display-serif), "Songti SC", Georgia, serif;letter-spacing:-.05em;color:var(--portfolio-green);margin-top:2.2rem;font-size:clamp(2rem,3.6vw,3.6rem);font-weight:500;line-height:1}.portfolio-process-step:nth-child(2) h3{color:#f9f5eb}.portfolio-process-step p{color:#52615a;margin-top:auto;padding-top:2rem;font-size:.94rem;line-height:1.8}.portfolio-process-step:nth-child(2) p{color:#ffffffb8}.portfolio-process-principle{border-top:1px solid var(--portfolio-line);border-bottom:1px solid var(--portfolio-line);grid-template-columns:minmax(0,1fr) minmax(19rem,.58fr);align-items:end;gap:4rem;padding-block:3rem;display:grid}.portfolio-process-principle>div:last-child p{color:#52615a;font-size:.98rem;line-height:1.85}.portfolio-process-principle a{color:var(--portfolio-green);border-bottom:1px solid #173f3940;gap:.6rem;margin-top:1.2rem;padding-bottom:.35rem;font-size:.84rem;font-weight:650;display:inline-flex}.selected-disclosure-card{border-left:4px solid var(--portfolio-gold)!important}.selected-disclosure-card .detail-panel-title{margin-top:.5rem;font-size:clamp(1.7rem,3vw,2.7rem)}.selected-index-shell{background:#fbf9f4db;border-radius:1rem}.selected-index-group,.selected-index-link,.selected-insight-card,.selected-method-card,.selected-dossier-section,.selected-dossier-list,.selected-doc,.selected-download-card,.ai-workflow-process-card,.ai-workflow-prototype-card,.ai-workflow-project-evidence-card,.resume-contact-item{border-color:var(--portfolio-line);border-radius:.85rem}.selected-sticky-nav{top:5.7rem}.selected-sticky-track{border-color:var(--portfolio-line);background-color:#fbf9f4f0;background-image:linear-gradient(90deg,#fbf9f4 0,#fbf9f400 1.5rem),linear-gradient(-90deg,#fbf9f4 0,#fbf9f400 1.5rem),none;background-position:0,100%,0 0;background-repeat:no-repeat;background-size:2.5rem 100%,2.5rem 100%,100% 100%;background-attachment:local,local,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;border-radius:.9rem}.selected-sticky-link{border-radius:.65rem;align-items:center;min-height:2.9rem;display:inline-flex}.selected-doc-summary,.selected-download-link,.ai-workflow-prd-window-head a,.ai-workflow-prototype-head a,.resume-download-button{min-height:2.75rem}.selected-doc-table-wrap:focus-visible,.selected-sticky-track:focus-visible,.portfolio-home button:focus-visible,.portfolio-home summary:focus-visible,.portfolio-home [tabindex]:focus-visible{outline-offset:3px;outline:3px solid #b38a3280}.selected-doc-local-link{color:#52615a;background:#173f390f;border-radius:.35rem;padding:.15rem .4rem;font-size:.82rem}.ai-workflow-process-card{background:#f5f0e6b8;border-color:#173f3924}.ai-workflow-project-head>span{background:#e4e7dd}.ai-workflow-process-item>span{color:#82601f}.ai-workflow-prd-window{background:#f5f0e6bd;border-color:#173f392e}.ai-workflow-project-evidence-media,.ai-workflow-evidence-media{color:#fff}.ai-workflow-prd-window-head a{color:var(--portfolio-green);border-color:#173f394d;align-items:center;display:inline-flex}.ai-workflow-prototype-card{background:#e7efeab8}.ai-workflow-prototype-card .section-kicker{color:#52615a}.ai-workflow-ending-card,.selected-ending-card{border-left:4px solid var(--portfolio-gold)!important}.resume-download-button{background:var(--portfolio-green)}.resume-pdf-fallback{color:#52615a;padding:1rem;font-size:.9rem;display:none}.resume-pdf-fallback a{color:var(--portfolio-green);margin-inline:.25rem;text-decoration:underline}.portfolio-primary-action,.portfolio-menu-toggle,.resume-download-button,.selected-download-link,.ai-workflow-prototype-head a{transition:transform .16s var(--portfolio-ease-out), background-color .18s ease, color .18s ease}.portfolio-primary-action:active,.portfolio-menu-toggle:active,.resume-download-button:active,.selected-download-link:active,.ai-workflow-prototype-head a:active{transform:scale(.97)}@media (max-width:900px){.portfolio-detail-hero-grid,.portfolio-story-layout,.portfolio-process-principle,.portfolio-detail-contact{grid-template-columns:1fr}.portfolio-detail-signal{max-width:38rem}.portfolio-story-focus{position:static}.portfolio-process-steps{grid-template-columns:1fr}.portfolio-process-step,.portfolio-process-step:nth-child(2){min-height:18rem;transform:none}}@media (max-width:700px){.portfolio-nav-shell{padding-top:env(safe-area-inset-top)}.portfolio-nav-links-desktop{display:none}.portfolio-menu-toggle{z-index:3;background:#fbf9f4b8;border:1px solid #173f3929;border-radius:50%;place-content:center;gap:.36rem;width:3rem;height:3rem;margin-left:auto;display:grid;position:relative}.portfolio-menu-toggle span{background:var(--portfolio-green);width:1.15rem;height:1px;transition:transform .18s}.portfolio-menu-toggle.is-open span:first-child{transform:translateY(.22rem)rotate(45deg)}.portfolio-menu-toggle.is-open span:last-child{transform:translateY(-.22rem)rotate(-45deg)}.portfolio-mobile-menu{z-index:2;min-height:calc(100svh - 4.25rem - env(safe-area-inset-top));background:linear-gradient(#ffffff0b 1px, transparent 1px), linear-gradient(90deg, #ffffff0b 1px, transparent 1px), var(--portfolio-green-deep);padding:1.25rem max(.75rem, env(safe-area-inset-right)) max(1.4rem, env(safe-area-inset-bottom)) max(.75rem, env(safe-area-inset-left));color:#fff;background-size:24px 24px;display:none;position:absolute;top:100%;left:0;right:0}.portfolio-mobile-menu.is-open{grid-template-rows:auto 1fr auto;display:grid}.portfolio-mobile-menu-head{letter-spacing:.13em;color:#ffffff8a;border-bottom:1px solid #ffffff24;justify-content:space-between;gap:1rem;padding-bottom:.9rem;font-size:.62rem;font-weight:700;display:flex}.portfolio-mobile-links{align-content:center;display:grid}.portfolio-mobile-menu .portfolio-nav-link.is-mobile{min-height:3.6rem;font-family:var(--font-display-serif), Georgia, serif;letter-spacing:-.035em;color:#f9f5eb;border-bottom:1px solid #ffffff1f;border-radius:0;justify-content:space-between;padding:.65rem 0;font-size:1.8rem;font-weight:500;display:flex}.portfolio-mobile-menu .portfolio-nav-link.is-mobile:after{display:none}.portfolio-mobile-menu .portfolio-nav-link.is-mobile.is-active{color:#d5ad52}.portfolio-mobile-menu .portfolio-nav-link.is-mobile.is-highlight{font-family:var(--font-body-sans), sans-serif;border:1px solid #fff6;border-radius:999px;margin:1rem 0 0;padding-inline:1rem;font-size:.9rem}.portfolio-mobile-menu>p{letter-spacing:.08em;color:#ffffff7a;padding-top:1rem;font-size:.68rem}.portfolio-detail-hero{padding-block:2.6rem 4rem}.portfolio-detail-crumb span:last-child{display:none}.portfolio-detail-hero-grid{gap:2.5rem;padding-top:2.4rem}.portfolio-detail-hero-copy h1{font-size:clamp(3rem,15vw,4.8rem)}.portfolio-content-heading h2,.portfolio-process-principle h2{font-size:clamp(2.3rem,12vw,3.8rem)}.portfolio-story-item{grid-template-columns:2.2rem minmax(0,1fr);gap:.7rem}.portfolio-detail-contact{gap:2rem}.portfolio-detail-contact-actions{flex-direction:column;align-items:stretch}.portfolio-detail-contact-actions .portfolio-primary-action,.portfolio-detail-contact-actions .portfolio-text-action{width:100%}.portfolio-detail-contact-actions .portfolio-text-action{justify-content:space-between}.portfolio-detail-content .detail-panel,.portfolio-detail-content .detail-stat,.portfolio-detail-content .selected-index-shell{padding-inline:1rem}.selected-sticky-nav{top:calc(4.25rem + env(safe-area-inset-top));margin-inline:-.2rem}.selected-sticky-track{border-radius:.8rem}.selected-doc-summary{min-height:3.2rem}.ai-workflow-prd-window-head,.ai-workflow-prototype-head{flex-direction:column}.ai-workflow-prd-window-head a,.ai-workflow-prototype-head a,.resume-download-button,.selected-download-link{justify-content:center;width:100%}.resume-pdf-frame{display:none}.resume-pdf-fallback{display:block}}@media (hover:none){.portfolio-home a,.portfolio-home button,.portfolio-home summary{touch-action:manipulation}.portfolio-primary-action:hover,.resume-download-button:hover,.selected-download-link:hover{transform:none}}
