.portfolio-page-shell{--portfolio-width:1440px;background:radial-gradient(circle at 91% 3%, #2347ff1a, transparent 23rem), var(--bone)}.portfolio-page-shell .nav-links a[aria-current=page]{color:var(--blue)}.portfolio-page-shell .section-frame{width:min(100%, var(--portfolio-width))}.portfolio-hero{border-bottom:1px solid var(--ink);background-image:linear-gradient(90deg,#15151009 1px,#0000 1px);background-size:6rem 100%;grid-template-columns:minmax(0,1.22fr) minmax(20rem,.58fr);align-items:center;gap:clamp(2.5rem,6vw,6rem);min-height:min(54rem,100svh - 5.5rem);padding-block:clamp(4.5rem,8vw,7rem);display:grid}.portfolio-hero-copy{min-width:0}.portfolio-hero h1{max-width:63rem;font-family:var(--font-sans);letter-spacing:-.062em;text-wrap:balance;margin:clamp(1.5rem,3vw,2.25rem) 0 1.8rem;font-size:clamp(3.35rem,5.7vw,5.9rem);font-weight:620;line-height:1.01}.portfolio-hero h1 span{color:var(--blue);font-weight:720}.portfolio-hero-deck{color:#484741;letter-spacing:-.02em;max-width:53rem;margin:0;font-size:clamp(1.05rem,1.5vw,1.25rem);line-height:1.72}.portfolio-range-card{border:1px solid var(--ink);background:var(--paper);flex-direction:column;align-self:stretch;display:flex;box-shadow:1rem 1rem #2347ff1f}.range-card-heading{border-bottom:1px solid var(--ink);justify-content:space-between;align-items:center;gap:1rem;min-height:5.25rem;padding:1rem 1.35rem;display:flex}.range-card-heading span,.portfolio-range-card>p{letter-spacing:.11em;text-transform:uppercase;font-size:.62rem;font-weight:800}.range-card-heading b{color:var(--blue);font-family:var(--font-display);font-size:2.2rem;font-weight:400}.range-list{flex:1}.range-list a{border-bottom:1px solid var(--rule);min-height:4.5rem;color:inherit;grid-template-columns:2rem minmax(0,.8fr) minmax(0,1.2fr);align-items:center;gap:.75rem;padding:.75rem 1.35rem;text-decoration:none;transition:background .18s,padding .18s;display:grid}.range-list a:hover{background:var(--citrus);padding-inline:1.65rem 1.05rem}.range-list a span{color:var(--blue);font-family:var(--font-display);font-size:1rem}.range-list a b{font-size:.8rem}.range-list a small{color:var(--muted);font-size:.62rem;line-height:1.35}.portfolio-range-card>p{color:var(--muted);margin:0;padding:1.2rem 1.35rem;line-height:1.55}.project-index{z-index:60;border-bottom:1px solid var(--ink);background:color-mix(in srgb, var(--paper) 94%, transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);scroll-margin-top:7rem;position:sticky;top:5.5rem}.project-index-inner{grid-template-columns:repeat(6,minmax(0,1fr));min-height:4.4rem;padding-block:0;display:grid}.project-index a{border-left:1px solid var(--rule);color:inherit;text-transform:uppercase;align-items:center;gap:.65rem;padding:.85rem clamp(.65rem,1.4vw,1.1rem);font-size:.66rem;text-decoration:none;transition:background .18s,color .18s;display:flex}.project-index a:last-child{border-right:1px solid var(--rule)}.project-index a:hover{background:var(--ink);color:var(--paper)}.project-index a span{color:var(--blue);font-family:var(--font-display);font-size:1rem}.project-index a b{letter-spacing:.05em;text-overflow:ellipsis;white-space:nowrap;font-weight:800;overflow:hidden}.project-case{--case-accent:var(--blue);--case-bg:var(--paper);--case-ink:var(--ink);--case-muted:var(--muted);--case-rule:#15151059;--case-panel:#1515100b;background:var(--case-bg);color:var(--case-ink);padding-block:clamp(6.5rem,11vw,10rem);scroll-margin-top:9.8rem;position:relative;overflow:clip}.project-case:before{content:"";pointer-events:none;background-image:linear-gradient(90deg, color-mix(in srgb, var(--case-ink) 3.5%, transparent) 1px, transparent 1px);background-size:6rem 100%;position:absolute;inset:0}.project-case>.section-frame{z-index:1;position:relative}.project-case-blue{--case-accent:var(--citrus);--case-bg:#1d3bd7;--case-ink:#fff;--case-muted:#ffffffba;--case-rule:#ffffff47;--case-panel:#0a125c38}.project-case-citrus{--case-accent:var(--blue);--case-bg:#f1f8ca;--case-ink:var(--ink);--case-muted:#55564c;--case-rule:#15151054;--case-panel:#dcff454d}.project-case-signal{--case-accent:var(--blue);--case-bg:#e8ebff;--case-ink:#151510;--case-muted:#55576a;--case-rule:#2347ff40;--case-panel:#2347ff13}.project-case-ink{--case-accent:var(--citrus);--case-bg:#181814;--case-ink:var(--paper);--case-muted:#aaa99f;--case-rule:#4d4d46;--case-panel:#ffffff0b}.project-case-paper{--case-accent:var(--blue);--case-bg:var(--paper);--case-ink:var(--ink);--case-muted:var(--muted);--case-rule:#15151059;--case-panel:#2347ff0f}.project-case-grid{--case-accent:var(--blue);--case-bg:var(--bone);--case-ink:var(--ink);--case-muted:var(--muted);--case-rule:#15151059;--case-panel:#dcff4547}.project-case-grid:after{content:"06";color:#2347ff0e;font-family:var(--font-display);pointer-events:none;font-size:min(46vw,38rem);line-height:1;position:absolute;bottom:-.24em;right:-.03em}.project-case-header{border-bottom:1px solid var(--case-rule);padding-bottom:clamp(2.5rem,5vw,4rem)}.project-case-meta{color:var(--case-muted);letter-spacing:.1em;text-transform:uppercase;grid-template-columns:4rem 1fr auto;align-items:center;gap:1rem;font-size:.64rem;font-weight:800;display:grid}.project-case-meta span:first-child{color:var(--case-accent);font-family:var(--font-display);letter-spacing:0;font-size:1.3rem;font-weight:400}.project-case-meta span:last-child{border:1px solid;padding:.48rem .65rem}.project-case-heading{grid-template-columns:minmax(14rem,.55fr) minmax(0,1.1fr);align-items:end;gap:clamp(2rem,6vw,6rem);margin-top:clamp(2.25rem,5vw,4.5rem);display:grid}.project-case-heading h2{font-family:var(--font-sans);letter-spacing:-.062em;margin:0;font-size:clamp(3.5rem,6vw,6.25rem);font-weight:680;line-height:.94}.project-case-heading p{max-width:49rem;font-family:var(--font-sans);letter-spacing:-.045em;text-wrap:balance;margin:0;font-size:clamp(1.65rem,3.2vw,3rem);font-weight:560;line-height:1.08}.project-case-lead{border-bottom:1px solid var(--case-rule);grid-template-columns:minmax(0,.92fr) minmax(24rem,1.08fr);align-items:start;gap:clamp(3rem,7vw,7rem);padding-block:clamp(4rem,8vw,7rem);display:grid}.project-summary{max-width:48rem;color:var(--case-ink);letter-spacing:-.03em;margin:0 0 clamp(3rem,6vw,5rem);font-size:clamp(1.25rem,2.2vw,1.8rem);font-weight:520;line-height:1.5}.narrative-block{border-top:1px solid var(--case-rule);grid-template-columns:9rem minmax(0,1fr);gap:1.5rem;padding-block:1.65rem;display:grid}.narrative-block>h3,.project-proof h3{color:var(--case-accent);letter-spacing:.1em;text-transform:uppercase;margin:0;font-size:.64rem;font-weight:800;line-height:1.5}.case-subheading{margin:0}.narrative-block p{color:var(--case-muted);margin:0;font-size:.92rem;line-height:1.75}.project-system-wrap{position:sticky;top:11.5rem}.project-system{border:1px solid var(--case-rule);background:var(--case-panel);box-shadow:1rem 1rem 0 color-mix(in srgb, var(--case-accent) 22%, transparent)}.system-meta,.system-footer{min-height:3.7rem;color:var(--case-muted);letter-spacing:.11em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:1rem;padding:.9rem 1.15rem;font-size:.58rem;font-weight:800;display:flex}.system-meta{border-bottom:1px solid var(--case-rule)}.system-footer{border-top:1px solid var(--case-rule);justify-content:flex-start}.system-footer .signal-dot{border-color:var(--case-accent);background:var(--case-accent);box-shadow:none}.system-flow{align-items:center;min-height:21rem;padding:clamp(1.5rem,4vw,3rem);display:flex}.system-step-wrap{flex:1 1 0;align-items:center;min-width:0;display:flex}.system-node{border:1px solid var(--case-rule);background:color-mix(in srgb, var(--case-bg) 88%, var(--case-ink) 12%);text-transform:uppercase;flex-direction:column;flex:auto;justify-content:space-between;gap:1.5rem;min-width:0;min-height:8rem;padding:1rem;font-size:clamp(.72rem,1vw,.88rem);font-weight:780;line-height:1.3;display:flex}.system-node small{color:var(--case-accent);font-family:var(--font-display);font-size:1.25rem;font-weight:400}.system-connector{background:var(--case-accent);transform-origin:0;flex:none;width:clamp(.8rem,2vw,2.1rem);height:1px}.project-build-grid{border-bottom:1px solid var(--case-rule);grid-template-columns:minmax(19rem,.72fr) minmax(0,1.28fr);gap:clamp(3rem,7vw,7rem);padding-block:clamp(4rem,8vw,7rem);display:grid}.project-case .case-label{color:var(--case-accent)}.built-panel ul,.project-tags{margin:0;padding:0;list-style:none}.built-panel ul{border-top:1px solid var(--case-rule);margin-top:2rem}.built-panel li{border-bottom:1px solid var(--case-rule);color:var(--case-muted);padding:1.25rem 0 1.25rem 1.6rem;font-size:.88rem;line-height:1.6;position:relative}.built-panel li:before{content:"↳";color:var(--case-accent);position:absolute;left:0}.complexity-panel>.case-label{margin-bottom:1rem}.complexity-panel article{border-top:1px solid var(--case-rule);grid-template-columns:3.5rem minmax(0,1fr);gap:1.4rem;padding-block:1.6rem;display:grid}.complexity-panel article>span{color:var(--case-accent);font-family:var(--font-display);font-size:1.25rem}.complexity-panel h4{font-family:var(--font-sans);letter-spacing:-.035em;margin:0 0 .55rem;font-size:clamp(1.25rem,2vw,1.8rem);font-weight:670}.complexity-panel p{max-width:47rem;color:var(--case-muted);margin:0;font-size:.86rem;line-height:1.72}.project-proof{border-right:1px solid var(--case-rule);border-bottom:1px solid var(--case-rule);border-left:1px solid var(--case-rule);background:var(--case-panel);grid-template-columns:1fr 1fr;display:grid}.project-proof>div{padding:clamp(1.5rem,4vw,2.6rem)}.project-proof>div+div{border-left:1px solid var(--case-rule)}.project-proof p{max-width:47rem;color:var(--case-muted);margin:1.2rem 0 0;font-size:.88rem;line-height:1.75}.project-tags{flex-wrap:wrap;gap:.55rem;padding-top:1.25rem;display:flex}.project-tags li{border:1px solid var(--case-rule);color:var(--case-muted);letter-spacing:.07em;text-transform:uppercase;padding:.55rem .72rem;font-size:.6rem;font-weight:780}.transfer-section{border-top:1px solid var(--ink);background:var(--paper)}.transfer-heading{grid-template-columns:minmax(0,1.1fr) minmax(18rem,.55fr);align-items:end;gap:clamp(2rem,6vw,6rem);margin-bottom:clamp(3rem,6vw,5rem);display:grid}.transfer-heading h2{max-width:64rem;font-family:var(--font-sans);letter-spacing:-.06em;margin:1.4rem 0 0;font-size:clamp(3rem,5.2vw,5.3rem);font-weight:630;line-height:1}.transfer-heading>p{color:var(--muted);margin:0;line-height:1.72}.transfer-grid{border-top:1px solid var(--ink);border-left:1px solid var(--ink);grid-template-columns:repeat(4,1fr);display:grid}.transfer-grid article{border-right:1px solid var(--ink);border-bottom:1px solid var(--ink);min-height:19rem;padding:clamp(1.3rem,3vw,2rem);transition:background .18s,transform .18s}.transfer-grid article:hover{background:var(--citrus);transform:translateY(-4px)}.transfer-grid article>span{color:var(--blue);font-family:var(--font-display);font-size:1.25rem}.transfer-grid h3{font-family:var(--font-sans);letter-spacing:-.04em;margin:4rem 0 .8rem;font-size:clamp(1.35rem,2vw,1.8rem);font-weight:680;line-height:1.08}.transfer-grid p{color:var(--muted);margin:0;font-size:.82rem;line-height:1.65}.portfolio-contact .contact-inner h2{max-width:54rem;font-family:var(--font-sans);letter-spacing:-.065em;font-size:clamp(3.8rem,7vw,7rem);font-weight:650;line-height:.96}@media (width<=1120px){.portfolio-hero{grid-template-columns:minmax(0,1fr) minmax(18rem,21rem);gap:3rem}.portfolio-hero h1{font-size:clamp(3.2rem,5.5vw,4.8rem)}.range-list a{grid-template-columns:1.5rem 1fr}.range-list a small{display:none}.project-case-heading,.project-case-lead,.project-build-grid{gap:3rem}.transfer-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=900px){.portfolio-hero{grid-template-columns:1fr;min-height:auto;padding-block:5.5rem}.portfolio-range-card{box-shadow:.75rem .75rem #2347ff1f}.range-list a{grid-template-columns:2rem minmax(0,.8fr) minmax(0,1.2fr)}.range-list a small{display:block}.project-index{top:5.5rem;overflow-x:auto}.project-index-inner{grid-template-columns:repeat(6,minmax(9rem,1fr));width:max-content;min-width:100%}.project-case{scroll-margin-top:9rem}.project-case-heading,.project-case-lead,.project-build-grid,.project-proof,.transfer-heading{grid-template-columns:1fr}.project-case-heading{gap:1.5rem}.project-case-heading h2{font-size:clamp(3.5rem,10vw,5.6rem)}.project-case-heading p{max-width:44rem}.project-system-wrap{position:static}.project-proof>div+div{border-top:1px solid var(--case-rule);border-left:0}.transfer-heading{align-items:start}}@media (width<=840px){.project-index{top:4.75rem}}@media (width<=620px){.portfolio-hero{background-size:4rem 100%;padding-block:4.25rem}.portfolio-hero h1{letter-spacing:-.057em;font-size:clamp(2.85rem,12vw,4rem)}.portfolio-hero-deck{font-size:.98rem}.range-list a{grid-template-columns:1.6rem 1fr}.range-list a small{display:none}.project-case{padding-block:5.5rem}.project-case-meta{grid-template-columns:2rem 1fr}.project-case-meta span:last-child{grid-column:2;width:fit-content}.project-case-heading h2{font-size:clamp(3rem,14vw,4.5rem)}.project-case-heading p{font-size:clamp(1.5rem,7vw,2.15rem)}.project-summary{font-size:1.15rem}.narrative-block{grid-template-columns:1fr;gap:.65rem}.system-flow{flex-direction:column;min-height:auto;padding:1.4rem}.system-step-wrap{flex-direction:column;width:100%}.system-node{width:100%;min-height:6rem}.system-connector{width:1px;height:1.4rem}.project-system{box-shadow:.6rem .6rem 0 color-mix(in srgb, var(--case-accent) 22%, transparent)}.complexity-panel article{grid-template-columns:2.4rem minmax(0,1fr);gap:.85rem}.transfer-heading h2{font-size:clamp(2.8rem,13vw,4.2rem)}.transfer-grid{grid-template-columns:1fr}.transfer-grid article{min-height:16rem}.portfolio-contact .contact-inner h2{font-size:clamp(3.2rem,15vw,5rem)}}@media (prefers-reduced-motion:reduce){.portfolio-page-shell *,.portfolio-page-shell :before,.portfolio-page-shell :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
