.projects-page{--projects-max:1280px;--projects-grid-gap:24px;padding:144px 40px 0;overflow:clip}.projects-hero,.projects-index-section{width:min(100%,var(--projects-max));margin-inline:auto}.projects-hero{padding-top:48px;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));align-content:end;column-gap:var(--projects-grid-gap);row-gap:clamp(72px,10vh,120px);padding-bottom:64px}.projects-hero h1{position:relative;grid-column:1/-1;width:100%;font:500 min(14.75rem,calc((100vw - 80px) / 5.5))/.86 var(--font-mono);letter-spacing:-.06em;color:var(--color-fg-primary)}.projects-hero h1 sup{position:absolute;top:.05em;right:0;color:var(--color-accent-orange);font:500 var(--text-label)/1 var(--font-mono);letter-spacing:0}.projects-index-section{padding-bottom:128px}.projects-list-head,.projects-row{display:grid;padding-inline:20px;grid-template-columns:48px minmax(320px,1.55fr) minmax(160px,.78fr) minmax(230px,1fr) 72px;column-gap:20px;align-items:center}.projects-list-head{min-height:56px;border-bottom:1px solid var(--color-border-hairline);color:var(--color-fg-tertiary);font:var(--text-label--font-weight) var(--text-label)/1.2 var(--font-mono);letter-spacing:var(--text-label--letter-spacing);text-transform:uppercase}.projects-list-head span:last-child{text-align:right}@media (min-width:1024px){.projects-list-head,.projects-row{grid-template-columns:repeat(12,minmax(0,1fr));column-gap:var(--projects-grid-gap)}.projects-list-head>:first-child,.projects-row>:first-child{grid-column:1}.projects-list-head>:nth-child(2),.projects-row>:nth-child(2){grid-column:2/span 6}.projects-list-head>:nth-child(3),.projects-row>:nth-child(3){grid-column:8/span 2}.projects-list-head>:nth-child(4),.projects-row>:nth-child(4){grid-column:10/span 2}.projects-list-head>:nth-child(5),.projects-row>:nth-child(5){grid-column:12}}.projects-list-items{list-style:none}.projects-list-item{border-bottom:1px solid var(--color-border-hairline)}.projects-row{position:relative;min-height:132px;color:inherit;text-decoration:none;isolation:isolate}.projects-row:before{content:"";position:absolute;inset:0;z-index:-1;background:rgba(255,153,34,.07);transform:scaleX(0);transform-origin:left;transition:transform var(--motion-base) var(--ease-entrance)}.projects-row:focus-visible:before,.projects-row:hover:before{transform:scaleX(1)}.projects-row-number,.projects-row-year{font:var(--text-label--font-weight) var(--text-label)/1.5 var(--font-mono);letter-spacing:var(--text-label--letter-spacing);color:var(--color-fg-tertiary)}.projects-row-meta{font:400 var(--text-body)/1.5 var(--font-sans)}.projects-row-client{display:block;margin-top:6px;color:var(--color-fg-tertiary);font:var(--text-label--font-weight) var(--text-label)/1.4 var(--font-mono);letter-spacing:var(--text-label--letter-spacing);text-transform:uppercase}.projects-row-number{font-variant-numeric:tabular-nums}.projects-row-year{text-align:right}.projects-row-title{font:500 20px/28px var(--font-mono);letter-spacing:-.2px;text-wrap:balance;transition:color var(--motion-fast) ease}.projects-row:focus-visible .projects-row-title,.projects-row:hover .projects-row-title{color:var(--color-accent-orange)}.projects-row-meta{display:flex;flex-wrap:wrap;gap:8px;color:var(--color-fg-secondary)}.projects-row-meta em{justify-self:start;width:fit-content;padding:2px 6px;border:1px solid var(--color-border-technical);color:var(--color-accent-orange);font:var(--text-label--font-weight) var(--text-label)/1.2 var(--font-mono);letter-spacing:var(--text-label--letter-spacing);font-style:normal;text-transform:uppercase}.projects-row-mobile-label{display:none}.project-detail-page{padding:148px 40px 128px}.project-case{width:min(100%,1280px);margin-inline:auto}.project-case--modal{width:100%;padding-inline:56px}.project-case-hero{padding:16px 0 56px}.project-case--modal .project-case-hero{padding-top:48px}.project-case--modal .project-case-hero h2{padding-right:72px}.project-case-status{display:inline-block;margin-left:12px;padding:2px 6px;border:1px solid var(--color-border-technical);color:var(--color-accent-orange);font:var(--text-label--font-weight) var(--text-label)/1.2 var(--font-mono);font-style:normal;vertical-align:3px}.project-case-back,.project-case-status{letter-spacing:var(--text-label--letter-spacing);text-transform:uppercase}.project-case-back{display:inline-flex;margin-bottom:64px;color:var(--color-fg-secondary);font:var(--text-label--font-weight) var(--text-label)/1.4 var(--font-mono);text-decoration:none}.project-case-hero h1,.project-case-hero h2{max-width:22ch;color:var(--color-fg-primary);font:500 56px/1.25 var(--font-mono);letter-spacing:-1.5px;text-wrap:balance}.project-case-hero>p{width:min(100%,760px);margin:24px 0 0;color:var(--color-fg-secondary);font:400 var(--text-body-lg)/1.65 var(--font-sans)}.project-case-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--color-border-hairline);border-bottom:1px solid var(--color-border-hairline)}.project-case-facts>div{position:relative;min-width:0;padding:32px 28px 32px 68px}.project-case-facts>div+div{padding-left:96px;border-left:1px solid var(--color-border-hairline)}.project-case-facts dt{margin-bottom:8px;color:var(--color-fg-tertiary);font:var(--text-label--font-weight) var(--text-label)/1.3 var(--font-mono);letter-spacing:var(--text-label--letter-spacing);text-transform:uppercase}.project-case-client{grid-template-columns:1fr;border-bottom:0}.project-case-fact-icon{position:absolute;top:34px;left:0;display:block;width:48px;height:48px;color:var(--color-accent-orange)}.project-case-facts>div+div .project-case-fact-icon{left:28px}.project-case-fact-icon svg{width:100%;height:100%;stroke:currentColor;stroke-width:1.25;stroke-linecap:square;stroke-linejoin:miter;vector-effect:non-scaling-stroke}.project-case-facts dd{color:var(--color-fg-primary);font:500 20px/1.4 var(--font-mono);letter-spacing:-.2px}.project-gallery{margin-top:48px}.project-gallery-frame{position:relative;aspect-ratio:16/9;overflow:hidden;background:#111}.project-gallery-image{object-fit:cover;object-position:center}.project-gallery-shade{position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent 72%,rgba(0,0,0,.35))}.project-gallery-controls{position:absolute;right:20px;bottom:20px;display:flex;align-items:center;gap:10px;padding:8px}.project-gallery-controls>span{margin-inline:8px 10px;color:var(--color-fg-primary);font:400 var(--text-label)/1 var(--font-mono);font-variant-numeric:tabular-nums}.project-gallery .gallery-arrow{display:grid;width:48px;height:44px;place-items:center;border:1px solid hsla(0,0%,96%,.55);background:transparent;color:var(--color-fg-primary);cursor:pointer;transition:color var(--motion-fast),border-color var(--motion-fast)}.project-gallery .gallery-arrow:focus-visible,.project-gallery .gallery-arrow:hover{color:var(--color-accent-orange);border-color:var(--color-accent-orange)}.project-gallery .gallery-arrow[data-direction=previous] svg{transform:rotate(180deg)}.project-case-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:48px;border-top:1px solid var(--color-border-hairline);border-bottom:1px solid var(--color-border-hairline)}.project-case-metrics>div{min-width:0;padding:36px 28px 40px 0}.project-case-metrics>div+div{padding-left:28px;border-left:1px solid var(--color-border-hairline)}.project-case-metrics span,.project-case-metrics strong{display:block}.project-case-metrics strong{color:var(--color-accent-orange);font:500 56px/1 var(--font-mono);letter-spacing:-1.5px}.project-case-metrics span{margin-top:16px;color:var(--color-fg-secondary);font:var(--text-label--font-weight) var(--text-label)/1.4 var(--font-mono);letter-spacing:var(--text-label--letter-spacing);text-transform:uppercase}.project-case-sections{margin-top:48px}.project-case-sections section{display:grid;grid-template-columns:minmax(180px,.72fr) minmax(0,1.8fr);gap:56px;padding:36px 0 40px;border-top:1px solid var(--color-border-hairline)}.project-case-contact h3,.project-case-sections h3,.project-case-tools h3,.project-timeline-intro h3{color:var(--color-fg-primary);font:500 24px/32px var(--font-mono);letter-spacing:-.5px}.project-case-contact p,.project-case-sections p{max-width:68ch;color:var(--color-fg-secondary);font:400 var(--text-body)/1.75 var(--font-sans)}.project-case-tools{display:grid;grid-template-columns:minmax(180px,.72fr) minmax(0,1.8fr);gap:56px;padding:36px 0 48px;border-top:1px solid var(--color-border-hairline);border-bottom:1px solid var(--color-border-hairline)}.project-case-tools ul{display:flex;flex-wrap:wrap;gap:10px;list-style:none}.project-case-tools li{padding:9px 12px;border:1px solid hsla(0,0%,96%,.2);color:var(--color-fg-secondary);font:400 var(--text-label)/1.3 var(--font-mono)}.project-case-contact{display:grid;grid-template-columns:minmax(0,1.2fr) auto;align-items:end;gap:56px;padding:64px 0 80px}.project-case-contact h3{font-size:40px;line-height:1.2;letter-spacing:-1px}.project-case-contact p{margin-top:18px}.project-case-contact-actions{display:flex;flex-direction:column;align-items:flex-start;gap:22px}.project-case-contact-actions>a:last-child{color:var(--color-fg-secondary);font:var(--text-label--font-weight) var(--text-label)/1.4 var(--font-mono);letter-spacing:var(--text-label--letter-spacing);text-transform:uppercase;text-decoration:none}.project-timeline{--timeline-bg:var(--color-bg-primary);display:grid;grid-template-columns:minmax(180px,.72fr) minmax(0,1.8fr);gap:56px;padding:48px 0 72px;border-top:1px solid var(--color-border-hairline)}.pdi-fdg-content .project-timeline{--timeline-bg:rgb(var(--case-surface))}.project-timeline-intro{position:sticky;top:128px;align-self:start}.project-case--modal .project-timeline-intro{top:40px}.project-timeline-intro p{max-width:30ch;margin-top:12px;color:var(--color-fg-secondary);font:400 var(--text-body)/1.65 var(--font-sans)}.project-timeline-list{position:relative;list-style:none}.project-timeline-list:after,.project-timeline-list:before{content:"";position:absolute;top:0;left:7px;width:1px}.project-timeline-list:before{bottom:0;background:var(--color-border-hairline)}.project-timeline-list:after{height:var(--timeline-fill,0);background:var(--color-accent-orange);transition:height var(--motion-slow) var(--ease-entrance)}.project-timeline-list>li{position:relative;padding:0 0 72px 48px;transition:opacity var(--motion-base) var(--ease-entrance)}.project-timeline-list>li:last-child{padding-bottom:0}.project-timeline-node{position:absolute;z-index:1;top:1px;left:0;width:15px;height:15px;border:1px solid hsla(0,0%,96%,.4);border-radius:50%;background:var(--timeline-bg);transition:background-color var(--motion-base) var(--ease-entrance),border-color var(--motion-base) var(--ease-entrance),box-shadow var(--motion-base) var(--ease-entrance)}.project-timeline-label{display:block;color:var(--color-accent-orange);font:var(--text-label--font-weight) var(--text-label)/1.4 var(--font-mono);letter-spacing:var(--text-label--letter-spacing);text-transform:uppercase}.project-timeline-list h4{margin-top:12px;color:var(--color-fg-primary);font:500 24px/32px var(--font-mono);letter-spacing:-.5px}.project-timeline-list>li>p{max-width:56ch;margin-top:12px;color:var(--color-fg-secondary);font:400 var(--text-body)/1.65 var(--font-sans)}.project-timeline-list[data-ready]>li[data-state=next]{opacity:.35}.project-timeline-list[data-ready]>li[data-state=next]:hover{opacity:.8}.project-timeline-list[data-ready]>li[data-state=past] .project-timeline-node{border-color:var(--color-accent-orange)}.project-timeline-list[data-ready]>li[data-state=active] .project-timeline-node{border-color:var(--color-accent-orange);background:var(--color-accent-orange);box-shadow:0 0 0 6px rgba(255,153,34,.16)}.pdi-fdg-panel{width:min(1280px,100%)}.pdi-fdg-content .project-case{color:var(--color-fg-primary)}@media (max-width:1023px){.projects-list-head,.projects-row{grid-template-columns:32px minmax(0,1.6fr) minmax(0,.8fr) minmax(0,1fr) 56px;column-gap:16px}}@media (max-width:767px){.projects-page{padding:120px 20px 0}.projects-hero{min-height:auto;display:flex;gap:56px;padding-bottom:72px}.projects-hero h1{width:100%;font-size:calc((100vw - 40px) / 5.5);line-height:.9}.projects-hero h1 sup{top:-.45em;right:0}.projects-index-section{padding-bottom:80px}.projects-list-head{display:none}.projects-list-item{padding-block:32px}.projects-row{display:grid;grid-template-columns:1fr auto;gap:12px 24px;min-height:0}.projects-row:before{display:none}.projects-row{padding-inline:0}.projects-row-number,.projects-row-year{grid-row:1}.projects-row-year{grid-column:2}.projects-row-title{grid-column:1/-1;grid-row:2;margin-top:4px;color:var(--color-fg-primary)!important}.projects-row-meta{grid-column:1/-1;display:grid;grid-template-columns:minmax(88px,.45fr) 1fr;gap:16px}.projects-row-mobile-label{display:inline;color:var(--color-fg-tertiary);font:var(--text-label--font-weight) var(--text-label)/1.5 var(--font-mono);letter-spacing:var(--text-label--letter-spacing);text-transform:uppercase}.project-detail-page{padding:118px 20px 72px}.project-case--modal{padding-inline:24px}.project-case--modal .project-case-hero,.project-case-hero{padding:16px 0 36px}.project-case--modal .project-case-hero{padding-top:24px}.project-case--modal .project-case-hero h2{padding-right:56px;font-size:32px;line-height:1.2}.project-case-back{margin-bottom:48px}.project-case-contact h3{font-size:32px}.project-case-hero h1,.project-case-hero h2{font-size:40px;line-height:1.15;letter-spacing:-1px}.project-case-hero>p{margin-top:24px;font-size:var(--text-body)}.project-case-facts{grid-template-columns:1fr}.project-case-facts>div,.project-case-facts>div+div{padding:20px 0 20px 60px;border-left:0;border-top:1px solid var(--color-border-hairline)}.project-case-facts>div:first-child{border-top:0}.project-case-facts>div .project-case-fact-icon,.project-case-facts>div+div .project-case-fact-icon{top:26px;left:0;width:40px;height:40px}.project-case-metrics,.project-gallery{margin-top:32px}.project-gallery-frame{aspect-ratio:4/3}.project-gallery-controls{right:10px;bottom:10px;gap:6px;padding:6px}.project-gallery-controls>span{margin-inline:4px 6px}.project-gallery .gallery-arrow{width:44px;height:42px}.project-case-metrics{grid-template-columns:1fr}.project-case-metrics>div,.project-case-metrics>div+div{display:grid;grid-template-columns:minmax(110px,.7fr) 1fr;align-items:baseline;gap:20px;padding:22px 0;border-left:0;border-top:1px solid var(--color-border-hairline)}.project-case-metrics>div:first-child{border-top:0}.project-case-metrics strong{font-size:40px;letter-spacing:-1px}.project-case-metrics span{margin:0}.project-case-sections section,.project-case-tools,.project-timeline{grid-template-columns:1fr;gap:14px;padding:28px 0 32px}.project-timeline{gap:32px}.project-timeline-intro{position:static}.project-timeline-list>li{padding:0 0 48px 40px}.project-case-contact{grid-template-columns:1fr;align-items:start;gap:32px;padding:48px 0 max(56px,env(safe-area-inset-bottom))}.pdi-fdg-panel{width:100%}}@media (prefers-reduced-motion:reduce){.project-timeline-list:after,.project-timeline-list>li,.project-timeline-node,.projects-row:before{transition:none}}