:root{--surface-raised:var(--surface);--surface-sunken:color-mix(in srgb, var(--brand-secondary) 6%, var(--bg));--hairline:#11111124;--hairline-strong:#11111147;--text-mono:10px;--text-meta:12px;--text-body:clamp(15px, .92rem + .1vw, 16px);--text-lead:clamp(17px, .95rem + .45vw, 21px);--text-h3:clamp(19px, .9rem + .7vw, 24px);--text-h2:clamp(30px, 1.2rem + 2.1vw, 52px);--text-display:clamp(44px, 1.6rem + 4.6vw, 104px);--text-metric:clamp(34px, 1.3rem + 2.9vw, 64px);--space-3:12px;--space-4:20px;--space-5:32px;--space-6:52px;--space-7:84px;--space-8:clamp(96px, 8vw, 160px);--space-9:clamp(140px, 12vw, 240px);--gutter:clamp(18px, 5vw, 92px);--dur-fast:.18s;--dur-mid:.42s}.case-page{--d-mobile:var(--brand-primary-bright);--d-mobile-text:var(--brand-primary-bright)}.case-eyebrow{font:500 var(--text-mono) / 1.2 var(--font-mono), monospace;letter-spacing:.26em;text-transform:uppercase;align-items:center;gap:10px;margin:0;display:flex}.case-live-dot{background:var(--brand-accent);border-radius:50%;width:7px;height:7px;animation:1.8s step-end infinite case-blink}@keyframes case-blink{50%{opacity:.25}}.case-chip--lab{color:var(--brand-secondary);opacity:.65}.case-block{padding:var(--space-8) var(--gutter);border-top:1px solid var(--hairline)}.case-block-head{margin-bottom:var(--space-6)}.case-block-head h2{font-size:var(--text-h2);letter-spacing:-.045em;margin:var(--space-4) 0 0;max-width:16ch;line-height:.98}.case-block-head h2 em{color:var(--case-accent,var(--brand-primary));font-style:italic}.case-narrative-body{font-size:var(--text-lead);max-width:62ch;margin:0;line-height:1.52}.case-tags{margin:var(--space-5) 0 0;flex-wrap:wrap;gap:8px;padding:0;list-style:none;display:flex}.case-tags li{font:500 var(--text-meta) / 1 var(--font-mono), monospace;letter-spacing:.08em;border:1px solid var(--hairline-strong);padding:8px 12px}.case-open{padding:var(--space-9) var(--gutter) var(--space-8);isolation:isolate;position:relative;overflow:hidden}.case-open:after{content:"";z-index:-1;aspect-ratio:1;background:var(--case-accent,var(--brand-primary));opacity:.14;filter:blur(60px);border-radius:50%;width:min(70vw,780px);position:absolute;inset:auto -10% -60% auto}.case-open-meta{font:500 var(--text-mono) / 1 var(--font-mono), monospace;letter-spacing:.2em;text-transform:uppercase;flex-wrap:wrap;align-items:center;gap:12px;display:flex}.case-title{font-size:var(--text-display);letter-spacing:-.055em;margin:var(--space-5) 0 0;max-width:14ch;line-height:.82}.case-lead{font-size:var(--text-lead);max-width:52ch;margin:var(--space-5) 0 0;line-height:1.45}.case-open-facts{gap:var(--space-6);margin:var(--space-7) 0 0;padding-top:var(--space-4);border-top:1px solid var(--hairline);flex-wrap:wrap;display:flex}.case-open-facts div{min-width:130px}.case-open-facts dt{font:500 var(--text-mono) / 1 var(--font-mono), monospace;letter-spacing:.2em;text-transform:uppercase;opacity:.65}.case-open-facts dd{font-size:var(--text-body);margin:8px 0 0;font-weight:600}.case-web{background:var(--surface-sunken)}.case-web-controls{margin-top:var(--space-5);border:1px solid var(--brand-secondary);display:inline-flex}.case-web-controls button{border:0;border-right:1px solid var(--hairline-strong);cursor:pointer;font:500 var(--text-meta) / 1 var(--font-mono), monospace;letter-spacing:.08em;transition:background var(--dur-fast) var(--ease);background:0 0;align-items:center;gap:7px;padding:10px 15px;display:inline-flex}.case-web-controls button:last-child{border-right:0}.case-web-controls button:hover{background:#11111112}.case-web-controls button.is-active{background:var(--brand-secondary);color:var(--bg)}.case-web-stage{justify-content:center;display:flex}.case-web-frame{background:var(--surface-raised);border:1px solid var(--brand-secondary);box-shadow:0 1px 2px #11111129, 0 10px 22px -8px #11111138, 0 40px 80px -40px #11111180, 0 0 68px -12px color-mix(in srgb, var(--case-accent,var(--brand-primary)) 24%, transparent);transition:width var(--dur-mid) var(--ease), height var(--dur-mid) var(--ease);flex-direction:column;display:flex;overflow:hidden}.case-web-frame[data-viewport=mobile],.case-web-frame[data-viewport=tablet]{border-radius:18px}.case-web-chrome{border-bottom:1px solid var(--hairline);background:var(--surface-sunken);flex:none;align-items:center;gap:12px;height:34px;padding:0 12px;display:flex}.case-web-dots{gap:5px;display:flex}.case-web-dots i{background:var(--hairline-strong);border-radius:50%;width:9px;height:9px}.case-web-url{font:500 11px/1 var(--font-mono), monospace;letter-spacing:.04em;opacity:.7;white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.case-web-size{font:500 10px/1 var(--font-mono), monospace;opacity:.65}.case-web-viewport{flex:1;position:relative;overflow:hidden}.case-web-viewport iframe{transform-origin:0 0;border:0;position:absolute;top:0;left:0}.case-web-poster{object-fit:cover;object-position:top center}.case-web-loading{text-align:center;font:500 var(--text-mono) / 1 var(--font-mono), monospace;letter-spacing:.2em;text-transform:uppercase;opacity:.65;position:absolute;inset:auto 0 16px}.case-web-foot{justify-content:space-between;align-items:center;gap:var(--space-4);margin-top:var(--space-6);padding-top:var(--space-4);border-top:1px solid var(--hairline);flex-wrap:wrap;display:flex}.case-web-foot p{font-size:var(--text-meta);opacity:.7;max-width:46ch;margin:0}.case-web-open{background:var(--brand-secondary);color:var(--bg);font:500 var(--text-meta) / 1 var(--font-mono), monospace;letter-spacing:.1em;transition:background var(--dur-fast) var(--ease);align-items:center;gap:8px;padding:12px 18px;display:inline-flex}.case-web-open:hover{background:var(--case-accent,var(--brand-primary))}.case-mobile{background:radial-gradient(120% 82% at 10% -4%, color-mix(in srgb, var(--brand-primary) 24%, transparent), transparent 58%), radial-gradient(92% 72% at 104% 108%, color-mix(in srgb, var(--brand-primary-bright) 13%, transparent), transparent 56%), var(--brand-secondary);color:var(--bg);position:relative;overflow:hidden}.case-mobile-inner{max-width:1600px;min-height:calc(100svh - var(--space-8) * 2);justify-content:space-between;gap:var(--space-5);flex-direction:column;margin:0 auto;display:flex}.case-mobile-grid{gap:var(--space-5);grid-template-columns:1fr;align-items:center;margin:auto 0;display:grid}@media (min-width:901px){.case-mobile-grid{gap:var(--space-5);grid-template-columns:.8fr 1.2fr}.case-mobile-grid.has-context{grid-template-columns:.8fr 1.2fr .8fr}}.case-mobile-info{gap:var(--space-3);flex-direction:column;display:flex}.case-mobile-heading{letter-spacing:-.03em;margin:var(--space-3) 0 0;font-size:clamp(38px,4vw,68px);line-height:.98}.case-mobile-heading-line{display:block}.case-mobile-heading-emphasis{color:var(--d-mobile-text);font-style:normal}.case-mobile-center{isolation:isolate;flex-direction:column;align-items:center;min-width:0;display:flex;position:relative}.case-platforms{margin:var(--space-4) 0 0;gap:8px;padding:0;list-style:none;display:flex}.case-platforms li{font:500 var(--text-mono) / 1 var(--font-mono), monospace;letter-spacing:.14em;text-transform:uppercase;border:1px solid #f2efe84d;padding:7px 11px}.case-mobile-context{opacity:0;transition:transform .3s var(--ease-out,ease-out);transform:translateY(10px)}.case-mobile-context.is-revealed{opacity:1;transition:opacity var(--dur-mid) var(--ease), transform var(--dur-mid) var(--ease);transition-delay:80ms;transform:none}.case-mobile-context-surface{gap:var(--space-3);padding:var(--space-4);border:1px solid color-mix(in srgb, var(--case-accent) 30%, #f2efe82e);background:#f2efe80d;border-radius:4px;align-content:start;display:grid}.case-mobile-context-surface.spotlight-surface:before{background:radial-gradient(260px circle at var(--spot-x,50%) var(--spot-y,50%), color-mix(in srgb, var(--case-accent) 32%, transparent), transparent 72%)}.case-mobile-context p{font-size:var(--text-body-sm,15px);opacity:.85;margin:0;line-height:1.5}.case-mobile-metric{padding-top:var(--space-3);border-top:1px solid #f2efe824}.case-mobile-context-surface>.case-mobile-metric:first-child{border-top:0;padding-top:0}.case-mobile-metric b{letter-spacing:-.02em;color:var(--bg);text-shadow:0 0 26px color-mix(in srgb, var(--brand-primary-bright) 46%, transparent);font-size:clamp(24px,2.2vw,34px);line-height:1;display:block}.case-mobile-metric span{font-size:var(--text-meta);text-transform:uppercase;letter-spacing:.08em;opacity:.65;margin-top:4px;display:block}.case-mobile-metric small{font-size:var(--text-meta);opacity:.5;margin-top:2px;display:block}.case-mobile-metric--sub{padding-top:var(--space-3,12px);border-top:1px solid #f2efe824}.case-mobile-metric--sub b{color:inherit;font-size:clamp(19px,1.8vw,24px)}.case-mobile-stage{z-index:1;perspective:1400px;justify-content:center;align-items:center;width:100%;max-width:620px;margin:0 auto;display:flex;position:relative}.case-mobile-dotgrid{z-index:0;-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 22% 78%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0%,#000 22% 78%,#0000 100%)}.case-mobile-callouts{z-index:4;pointer-events:none;position:absolute;inset:0}.case-mobile-callout{max-width:148px;font:500 var(--text-meta) / 1.35 var(--font-mono), monospace;letter-spacing:.02em;text-transform:uppercase;opacity:0;align-items:center;gap:8px;display:flex;position:absolute;transform:translateY(6px)}.case-mobile-callout.is-revealed{opacity:.92;transition:opacity var(--dur-mid) var(--ease), transform var(--dur-mid) var(--ease);transform:none}.case-mobile-callout.pos-right:first-of-type,.case-mobile-callout.pos-left:first-of-type{transition-delay:60ms}.case-mobile-callout:nth-of-type(2){transition-delay:.19s}.case-mobile-callout:nth-of-type(3){transition-delay:.32s}.case-mobile-callout-line{background:#f2efe880;flex:none;width:20px;height:1px}.case-mobile-callout.pos-left{text-align:right;flex-direction:row-reverse;left:clamp(-6px,-.5vw,4px)}.case-mobile-callout.pos-right{text-align:left;right:clamp(-6px,-.5vw,4px)}.case-mobile-glow{z-index:-1;aspect-ratio:1;opacity:.34;filter:blur(80px);border-radius:50%;width:min(50vw,460px);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.case-phone{background:var(--brand-secondary);border:2px solid #f2efe86b;border-radius:34px;margin:0;padding:8px;position:relative}.case-phone-screen{background:color-mix(in srgb, var(--brand-secondary) 95%, var(--white));border-radius:26px;width:100%;height:100%;position:relative;overflow:hidden}.case-phone-media{object-fit:cover;width:100%;height:100%}.case-phone--front{aspect-ratio:9/19;z-index:3;width:auto;min-width:260px;max-width:430px;height:clamp(460px,74vh,760px);box-shadow:0 2px 6px -1px #0000008c, 0 14px 28px -10px #0009, 0 50px 90px -30px #000c, 0 0 64px -6px color-mix(in srgb, var(--case-accent,var(--brand-primary)) 42%, transparent);transition:transform .35s var(--ease);transform-style:preserve-3d;transform:rotate(-1deg)}.case-phone--mid,.case-phone--back{aspect-ratio:9/19;opacity:.55;width:min(54vw,220px);position:absolute;bottom:60px}.case-phone--mid{z-index:2;right:12%;transform:rotate(7deg)}.case-phone--back{z-index:1;opacity:.3;left:12%;transform:rotate(-8deg)}.case-phone-notch{z-index:4;background:var(--brand-secondary);border-radius:12px;width:34%;height:20px;position:absolute;top:16px;left:50%;transform:translate(-50%)}.case-phone figcaption{text-align:center;font-size:var(--text-meta);opacity:.65;position:absolute;bottom:-34px;left:0;right:0}.case-mobile-dots{margin-top:var(--space-6);justify-content:center;gap:9px;display:flex}.case-mobile-dots button{cursor:pointer;width:34px;height:4px;transition:background var(--dur-fast) var(--ease);background:#f2efe84d;border:0;padding:0}.case-mobile-dots button.is-active{background:var(--d-mobile)}.case-automation{background:var(--surface-sunken)}.case-flow-steps{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(190px,1fr));margin:0;padding:0;list-style:none;display:grid}.case-flow-step{align-items:stretch;gap:var(--space-3);display:flex}.case-flow[data-animate=true] .case-flow-step{opacity:0;transform:translateY(14px)}.case-flow[data-animate=true].is-revealed .case-flow-step{opacity:1;transition:opacity var(--dur-mid) var(--ease), transform var(--dur-mid) var(--ease);transition-delay:calc(var(--step-index) * .11s);transform:none}.case-flow-node{background:var(--surface-raised);border:1px solid var(--hairline-strong);border-top:3px solid var(--flow-accent,var(--brand-primary));padding:var(--space-4);flex-direction:column;flex:1;gap:7px;display:flex}.case-flow-index{font:600 var(--text-mono) / 1 var(--font-mono), monospace;letter-spacing:.18em;color:var(--flow-accent,var(--brand-primary))}.case-flow-system{font:500 10px/1 var(--font-mono), monospace;letter-spacing:.14em;text-transform:uppercase;opacity:.65}.case-flow-node h3{font-size:var(--text-h3);letter-spacing:-.03em;margin:4px 0 0}.case-flow-node p{font-size:var(--text-meta);opacity:.75;margin:0;line-height:1.55}.case-flow-arrow{opacity:.35;flex:none;align-items:center;display:flex}.case-compare{align-items:center;gap:var(--space-4);margin-top:var(--space-7);grid-template-columns:1fr auto 1fr;display:grid}.case-compare-col{background:var(--surface-raised);border:1px solid var(--hairline-strong);padding:var(--space-5)}.case-compare-col--before{opacity:.72}.case-compare-col--after{border-width:2px}.case-compare-col h3{font:500 var(--text-mono) / 1 var(--font-mono), monospace;letter-spacing:.22em;text-transform:uppercase;margin:0 0 var(--space-4);opacity:.6}.case-compare-col dl{gap:var(--space-3);margin:0;display:grid}.case-compare-col dl div{padding-bottom:var(--space-3);border-bottom:1px solid var(--hairline);justify-content:space-between;align-items:baseline;gap:14px;display:flex}.case-compare-col dl div:last-child{border-bottom:0;padding-bottom:0}.case-compare-col dt{font-size:var(--text-meta);opacity:.7}.case-compare-col dd{font-weight:700;font-size:var(--text-body);text-align:right;margin:0}.case-compare-arrow{opacity:.35}.case-metrics{margin:var(--space-7) 0 0;gap:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));padding:0;list-style:none;display:grid}.case-metrics li{border-top:2px solid var(--case-accent,var(--brand-primary));padding-top:var(--space-4);flex-direction:column;gap:6px;display:flex}.case-metrics b{font-size:var(--text-metric);letter-spacing:-.05em;color:var(--case-accent,var(--brand-primary));text-shadow:0 0 30px color-mix(in srgb, var(--case-accent,var(--brand-primary)) 32%, transparent);line-height:.86}.case-metrics span{font-size:var(--text-body);font-weight:600}.case-metrics small{font-size:var(--text-meta);opacity:.6;line-height:1.5}.case-features{background:radial-gradient(78% 58% at 100% 0%, color-mix(in srgb, var(--brand-primary) 7%, transparent), transparent 68%), var(--bg)}.case-features-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1px;display:grid}.case-features-grid article{background:var(--bg);box-shadow:0 0 0 1px var(--hairline-strong);padding:var(--space-5);gap:var(--space-4);display:flex}.case-features-grid article>span{font:600 var(--text-mono) / 1 var(--font-mono), monospace;letter-spacing:.14em;color:var(--case-accent,var(--brand-primary));flex:none}.case-features-grid h3{font-size:var(--text-h3);letter-spacing:-.03em;margin:0 0 10px}.case-features-grid p{font-size:var(--text-meta);opacity:1;color:color-mix(in srgb, currentColor 68%, transparent);margin:0;line-height:1.6}.case-gallery{gap:var(--space-5);display:grid}.case-gallery figure{margin:0}.case-gallery img{width:100%;height:auto;display:block}.case-gallery figcaption{margin-top:var(--space-3);font-size:var(--text-meta);opacity:.65}.case-testimonial blockquote{max-width:60ch;margin:0}.case-testimonial p{font-size:var(--text-h2);letter-spacing:-.035em;text-wrap:balance;margin:0;line-height:1.15}.case-testimonial footer{margin-top:var(--space-5);flex-direction:column;gap:4px;display:flex}.case-testimonial footer b{font-size:var(--text-body)}.case-testimonial footer span{font-size:var(--text-meta);opacity:.6}.case-spec-grid{gap:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(190px,1fr));margin:0;display:grid}.case-spec-grid dt{font:500 var(--text-mono) / 1 var(--font-mono), monospace;letter-spacing:.2em;text-transform:uppercase;opacity:.65;padding-bottom:var(--space-3);border-bottom:1px solid var(--hairline)}.case-spec-grid dd{margin:var(--space-3) 0 0;font-size:var(--text-meta);line-height:1.6}.case-next{padding:var(--space-8) var(--gutter);background:var(--case-accent,var(--brand-secondary));color:var(--case-on-accent,var(--bg));transition:filter var(--dur-fast) var(--ease);gap:6px;display:grid;position:relative}.case-next:hover{filter:brightness(1.12)}.case-next span{font:500 var(--text-mono) / 1 var(--font-mono), monospace;letter-spacing:.24em;opacity:.75}.case-next strong{font-size:var(--text-h2);letter-spacing:-.045em;line-height:.95}.case-next small{font-size:var(--text-meta);opacity:.7}.case-next svg{right:var(--gutter);position:absolute;top:50%;transform:translateY(-50%)}.portfolio-filter{padding:0 var(--gutter) var(--space-6);flex-wrap:wrap;gap:8px;display:flex}.portfolio-filter a{border:1px solid var(--hairline-strong);font:500 var(--text-meta) / 1 var(--font-mono), monospace;letter-spacing:.1em;text-transform:uppercase;transition:background var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease);align-items:center;gap:8px;padding:11px 16px;display:inline-flex}.portfolio-filter a b{opacity:.65;font-size:10px}.portfolio-filter a:hover{background:#1111110f}.portfolio-filter a.is-active{background:var(--brand-secondary);color:var(--bg);border-color:var(--brand-secondary)}.portfolio-filter a.is-active b{opacity:.7}.portfolio-empty{padding:var(--space-8) var(--gutter);border-top:1px solid var(--hairline);max-width:60ch}.portfolio-empty h2{font-size:var(--text-h2);letter-spacing:-.045em;margin:var(--space-4) 0;line-height:1}.portfolio-empty h2 em{color:var(--brand-primary);font-style:italic}.portfolio-empty-actions{margin-top:var(--space-5);flex-wrap:wrap;gap:12px;display:flex}.portfolio-empty-actions a{border:1px solid var(--brand-secondary);font:500 var(--text-meta) / 1 var(--font-mono), monospace;letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:8px;padding:13px 20px;display:inline-flex}.portfolio-empty-actions a:last-child{background:var(--brand-secondary);color:var(--bg)}.portfolio-lab-disclaimer{margin:0 var(--gutter) var(--space-6);padding:var(--space-4);border-left:3px solid var(--brand-primary);background:var(--surface-sunken);font-size:var(--text-meta);max-width:70ch;line-height:1.6}.portfolio-lab-section-title{margin:0 var(--gutter) var(--space-4);opacity:.6}.portfolio-lab-grid{gap:var(--space-5);padding:0 var(--gutter) var(--space-8);grid-template-columns:repeat(auto-fill,minmax(300px,1fr));display:grid}.portfolio-lab-card{border:1px solid var(--hairline-strong);transition:transform var(--dur-fast) var(--ease);flex-direction:column;display:flex}.portfolio-lab-card:hover{transform:translateY(-4px)}.portfolio-lab-visual{aspect-ratio:4/3;background:var(--surface-sunken);border-bottom:1px solid var(--hairline-strong);position:relative;overflow:hidden}.portfolio-lab-visual .live-project-preview{width:100%;height:100%}.portfolio-lab-copy{padding:var(--space-4);border-top:3px solid var(--case-accent)}.portfolio-lab-copy h2{font-size:var(--text-h3);letter-spacing:-.035em;margin:10px 0 8px}.portfolio-lab-copy p{font-size:var(--text-meta);opacity:.75;margin:0;line-height:1.6}.portfolio-missing section{padding:var(--space-9) var(--gutter);max-width:60ch}.portfolio-missing h1{font-size:var(--text-h2);letter-spacing:-.05em;margin:var(--space-4) 0;line-height:.95}.portfolio-missing h1 em{color:var(--brand-accent);font-style:italic}.portfolio-missing-actions{margin-top:var(--space-6);flex-wrap:wrap;gap:12px;display:flex}.portfolio-missing-actions a{border:1px solid var(--brand-secondary);font:500 var(--text-meta) / 1 var(--font-mono), monospace;letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:8px;padding:13px 20px;display:inline-flex}.portfolio-missing-actions a:last-child{background:var(--brand-secondary);color:var(--bg)}@media (min-width:901px){.portfolio-filter{gap:10px}.portfolio-filter a{transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), color var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease)}.portfolio-filter a:hover{border-color:var(--brand-secondary);transform:translateY(-2px)}.portfolio-filter a.is-active{box-shadow:0 10px 24px -14px color-mix(in srgb, var(--brand-secondary) 70%, transparent)}@media (prefers-reduced-motion:reduce){.portfolio-filter a{transition:none}.portfolio-filter a:hover{transform:none}}}@media (max-width:900px){.case-compare{grid-template-columns:1fr}.case-compare-arrow{justify-self:center;transform:rotate(90deg)}.case-flow-arrow{display:none}.case-mobile-context{order:2}.case-mobile-callouts,.case-phone--mid,.case-phone--back{display:none}.case-web-controls{width:100%}.case-web-controls button{flex:1;justify-content:center}}@media (max-width:768px){.portfolio-page,.case-page{--brand-accent:var(--brand-primary);--gutter:clamp(18px, 5.2vw, 24px);--space-6:44px;--space-7:68px;--space-8:88px;--space-9:112px;--case-accent:var(--brand-primary)!important;--case-on-accent:var(--white)!important}.portfolio-page [style*=--case-accent],.case-page [style*=--case-accent]{--case-accent:var(--brand-primary)!important;--case-on-accent:var(--white)!important}.portfolio-page .portfolio-hero{background:linear-gradient(90deg, color-mix(in srgb, var(--brand-secondary) 6%, transparent) 1px, transparent 1px) 0 0 / 25vw 100%, radial-gradient(circle at 88% 11%, color-mix(in srgb, var(--brand-primary-bright) 14%, transparent), transparent 28%), var(--bg);min-height:min(610px,100svh - 68px);padding-top:clamp(68px,15svh,112px);padding-bottom:42px}.portfolio-page .portfolio-hero h1{letter-spacing:-.07em;max-width:8.6ch;margin:28px 0 54px;font-size:clamp(50px,14.8vw,64px);line-height:.84}.portfolio-page .portfolio-hero h1 em,.portfolio-page .portfolio-cta h2 em{-webkit-text-decoration-color:var(--brand-primary);text-decoration-color:var(--brand-primary)}.portfolio-hero-foot{gap:22px}.portfolio-hero-foot>p{font-family:var(--font-sans), sans-serif;font-size:14px;line-height:1.65}.portfolio-filter{overscroll-behavior-inline:contain;scroll-snap-type:inline proximity;scrollbar-width:none;flex-wrap:nowrap;gap:8px;padding-bottom:42px;overflow-x:auto}.portfolio-filter::-webkit-scrollbar{display:none}.portfolio-lab-grid::-webkit-scrollbar{display:none}.portfolio-filter a{scroll-snap-align:start;flex:none;min-height:44px;padding:0 16px}.portfolio-lab-disclaimer{margin-bottom:44px;padding:18px}.portfolio-lab-section-title{margin-bottom:18px}.portfolio-lab-section-title:after{background:linear-gradient(90deg, var(--brand-primary), transparent);content:"";flex:1;height:1px;margin-left:8px}.portfolio-lab-grid{padding-right:var(--gutter);overscroll-behavior-inline:contain;scroll-padding-left:var(--gutter);scroll-snap-type:inline mandatory;scrollbar-width:none;grid-template-columns:none;grid-auto-columns:min(84vw,350px);grid-auto-flow:column;gap:14px;padding-bottom:80px;overflow-x:auto}.portfolio-lab-card{scroll-snap-align:start;scroll-snap-stop:always;min-height:420px;box-shadow:0 24px 50px -40px color-mix(in srgb, var(--brand-secondary) 70%, transparent)}.portfolio-lab-card:active{transform:scale(.985)}.portfolio-lab-visual{aspect-ratio:1.2}.portfolio-lab-copy{border-top-color:var(--brand-primary);flex:1;padding:20px}.portfolio-cta{min-height:min(560px,76svh);padding-block:72px}.portfolio-page .portfolio-cta h2,.portfolio-cta h2{max-width:7ch;margin-block:24px 34px;font-size:clamp(54px,15vw,68px);line-height:.86}.portfolio-cta a{justify-content:center;min-height:52px}.case-open{padding-top:88px;padding-bottom:72px}.case-title{font-size:clamp(40px,14vw,64px);line-height:.86}.case-lead{font-size:17px;line-height:1.55}.case-open-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px 16px;margin-top:52px;display:grid}.case-open-facts div{min-width:0}.case-block{padding-block:76px}.case-block-head{margin-bottom:34px}.case-block-head h2{font-size:clamp(36px,10.5vw,46px)}.case-narrative-body{font-size:17px}.case-tags li{align-items:center;min-height:40px;display:inline-flex}.case-web-controls{scrollbar-width:none;width:100%;overflow-x:auto}.case-web-controls button{min-width:max-content;min-height:44px;padding-inline:14px}.case-web-open,.case-mobile-foot a{justify-content:center;min-height:48px}.case-mobile-inner{min-height:auto}.case-phone--front{aspect-ratio:9/19;width:min(76vw,300px);min-width:0;height:auto;box-shadow:0 2px 8px -2px #0009, 0 22px 44px -16px #000000b3, 0 0 46px -8px color-mix(in srgb, var(--case-accent,var(--brand-primary)) 40%, transparent)}.case-mobile-dots{gap:2px;margin-top:34px}.case-mobile-dots button{background:0 0;width:44px;height:44px;position:relative}.case-mobile-dots button:after{background:color-mix(in srgb, var(--bg) 30%, transparent);content:"";height:4px;position:absolute;top:20px;left:5px;right:5px}.case-mobile-dots button.is-active:after{background:var(--brand-primary-bright)}.case-flow-steps,.case-metrics,.case-features-grid{grid-template-columns:1fr}.case-flow-node,.case-compare-col,.case-features-grid article{padding:22px}.case-metrics{gap:32px;margin-top:48px}.case-next{background:var(--brand-primary);min-height:200px;color:var(--white);padding-right:58px}.case-next:active{filter:brightness(.92)}}@media (max-width:360px){.case-open-facts{grid-template-columns:1fr}.portfolio-page .portfolio-hero h1{font-size:48px}}@media (prefers-reduced-motion:reduce){.case-live-dot{animation:none}.case-flow[data-animate=true] .case-flow-step,.case-flow[data-animate=true].is-revealed .case-flow-step{opacity:1;transition:none;transform:none}.case-web-frame,.portfolio-lab-card{transition:none}.case-mobile-context,.case-mobile-callout{opacity:1;transition:none;transform:none}.case-phone--front{transition:none;transform:none}}.portfolio-page .portfolio-hero h1,.portfolio-hero h1{letter-spacing:-.05em;font-size:clamp(54px,5.2vw,88px)}.portfolio-page .portfolio-cta h2,.portfolio-cta h2{font-size:clamp(48px,5vw,84px)}.case-narrative-body{max-width:58ch}.case-phone-frame{transform-origin:0 0;background:var(--bg);border:0;position:absolute;top:0;left:0}.case-mobile-foot{justify-content:space-between;align-items:center;gap:var(--space-4);padding-top:var(--space-4);border-top:1px solid #f2efe829;flex-wrap:wrap;display:flex}.case-mobile-foot p{font-size:var(--text-meta);opacity:.65;max-width:46ch;margin:0}.case-mobile-foot a{font:500 var(--text-meta) / 1 var(--font-mono), monospace;letter-spacing:.1em;text-transform:uppercase;transition:background var(--dur-fast) var(--ease);border:1px solid #f2efe852;align-items:center;gap:8px;padding:12px 18px;display:inline-flex}.case-mobile-foot a:hover{background:#f2efe81f}@media (max-width:768px){.portfolio-page .portfolio-hero h1{font-size:clamp(50px,14.8vw,64px)}.portfolio-page .portfolio-cta h2,.portfolio-cta h2{font-size:clamp(54px,15vw,68px)}}.case-page[data-slug=lastraja-ro] .case-open{--case-fg:#f1f5fc;color:var(--case-fg);background-image:linear-gradient(#0b0f22b8 0%,#0b0f228c 45%,#0b0f22c7 100%),url(/case-studies/lastraja-ro/hero.png);background-position:50% 30%;background-repeat:no-repeat;background-size:cover}@supports (color:lab(0% 0 0)){.case-page[data-slug=lastraja-ro] .case-open{--case-fg:lab(96.4879% -.519067 -3.73547)}}.case-page[data-slug=lastraja-ro] .case-open:after{display:none}.case-page[data-slug=lastraja-ro] .case-open :is(h1,p,dd,span,dt){color:var(--case-fg)}.case-page[data-slug=lastraja-ro] .case-open-facts{border-top-color:#ffffff38}.case-page[data-slug=lastraja-ro] .case-open-facts dt{opacity:.8}.case-page[data-slug=lastraja-ro] .case-chip{color:var(--case-fg);border-color:#fff6}.case-page[data-slug=lastraja-ro] .case-chip[data-discipline]{background:#ffffff14}@media (max-width:768px){.case-page[data-slug=lastraja-ro] .case-open{background-image:linear-gradient(#0b0f22bd 0%,#0b0f229e 45%,#0b0f22d1 100%),url(/case-studies/lastraja-ro/hero.png);background-position:68% 28%}}.lastraja-story{isolation:isolate;--case-accent:#8ea6ff;--case-fg:#edf2fa;color:var(--case-fg);background:#0b0f22;position:relative;overflow:clip}@supports (color:lab(0% 0 0)){.lastraja-story{--case-fg:lab(95.3211% -.614941 -4.47812)}}.lastraja-veil{z-index:0;pointer-events:none;background:linear-gradient(#0b0f22,#0c1026 52%,#0b0f22);position:absolute;inset:-3% 0;overflow:hidden}.lastraja-veil-glow,.lastraja-veil-lines{will-change:transform;display:block;position:absolute;inset:-20%}.lastraja-veil-glow{background:radial-gradient(38% 30% at 80% 12%,#ffd6aa24,#0000 70%),radial-gradient(46% 40% at 10% 88%,#607ce033,#0000 72%);animation:26s ease-in-out infinite alternate lastraja-glow-drift}.lastraja-veil-lines{background-image:repeating-linear-gradient(102deg,#0000 0 38px,#96acff0d 38px 39px,#0000 39px 78px);animation:40s linear infinite lastraja-lines-drift;-webkit-mask-image:radial-gradient(70% 60% at 60% 40%,#000,#0000 78%);mask-image:radial-gradient(70% 60% at 60% 40%,#000,#0000 78%)}@keyframes lastraja-glow-drift{0%{transform:translate(-3%,-2%)scale(1.05)}to{transform:translate(3%,2%)scale(1.15)}}@keyframes lastraja-lines-drift{0%{transform:translate(0,0)}to{transform:translate(-78px,16px)}}@media (prefers-reduced-motion:reduce){.lastraja-veil-glow,.lastraja-veil-lines{animation:none}}.lastraja-story>.case-block{z-index:1;border-top-color:#ffffff1a;position:relative}.lastraja-story>.case-block:first-child{border-top:0}.lastraja-block{padding-left:calc(var(--gutter) + 24px)}.lastraja-spine{left:var(--gutter);top:var(--space-8);bottom:var(--space-8);background:linear-gradient(180deg, var(--case-accent), transparent);transform-origin:top;opacity:.75;width:2px;position:absolute}.lastraja-story .case-eyebrow{color:var(--case-fg);opacity:.58}.lastraja-story .case-block-head h2{color:var(--case-fg)}.lastraja-story .case-block-head h2 em{color:var(--case-accent)}.lastraja-story .case-narrative-body{color:color-mix(in srgb, var(--case-fg) 82%, transparent)}.lastraja-word{display:inline-block}.lastraja-story .case-tags li{color:color-mix(in srgb, var(--case-fg) 76%, transparent);transition:border-color .2s var(--ease), color .2s var(--ease), background .2s var(--ease);background:#ffffff08;border-color:#ffffff38}.lastraja-story .case-tags li:hover{border-color:color-mix(in srgb, var(--case-accent) 70%, transparent);color:var(--case-fg);background:#8ea6ff1f}@media (max-width:768px){.lastraja-block{padding-left:calc(var(--gutter) + 16px)}.lastraja-spine{top:56px;bottom:56px}}@media (prefers-reduced-motion:reduce){.lastraja-word{opacity:1!important;filter:none!important}}.case-page[data-slug=lastraja-ro]{--case-accent:#8ea6ff;--hairline:#ffffff1a;--hairline-strong:#ffffff29;color:#eaeff7;color:lab(94.1611% -.614464 -4.47786);background:#0b0f22}.case-page[data-slug=lastraja-ro] :is(.case-web,.case-outcome,.case-mobile){--case-accent:#8ea6ff!important;--case-on-accent:#0b0f22!important}.case-page[data-slug=lastraja-ro] .case-block{border-top-color:var(--hairline)}.case-page[data-slug=lastraja-ro] .case-web{background:radial-gradient(64% 50% at 82% 0,#ffd6aa0f,#0000 70%),radial-gradient(72% 60% at 6% 100%,#4a64c224,#0000 72%),#0b0f22}.case-page[data-slug=lastraja-ro] .case-web-frame{--hairline:#1111111f;--hairline-strong:#11111138;box-shadow:0 1px 2px #0000004d, 0 30px 70px -30px #0009, 0 0 80px -18px color-mix(in srgb, var(--case-accent) 30%, transparent);border-color:#ffffff2e}.case-page[data-slug=lastraja-ro] .case-web-controls{border-color:var(--hairline-strong)}.case-page[data-slug=lastraja-ro] .case-web-controls button{border-right-color:var(--hairline);color:inherit}.case-page[data-slug=lastraja-ro] .case-web-controls button:hover{background:#ffffff14}.case-page[data-slug=lastraja-ro] .case-web-controls button.is-active,.case-page[data-slug=lastraja-ro] .case-web-open{background:var(--case-accent);color:#0b0f22}.case-page[data-slug=lastraja-ro] .case-web-open:hover{background:color-mix(in srgb, var(--case-accent) 82%, white)}.case-page[data-slug=lastraja-ro] .case-outcome{background:radial-gradient(60% 60% at 100% 0,#8ea6ff14,#0000 70%),#0b0f22}.case-page[data-slug=lastraja-ro] .case-features{background:radial-gradient(78% 58% at 100% 0,#8ea6ff14,#0000 68%),#0b0f22}.case-page[data-slug=lastraja-ro] .case-features-grid article{box-shadow:0 0 0 1px var(--hairline-strong);background:#0c1026}.case-page[data-slug=lastraja-ro] .case-features-grid p{color:color-mix(in srgb, currentColor 72%, transparent)}.case-page[data-slug=lastraja-ro] .case-testimonial,.case-page[data-slug=lastraja-ro] .case-spec{background:#0b0f22}.case-page[data-slug=lastraja-ro] .case-next{--case-accent:#8ea6ff;--case-on-accent:#0b0f22}.case-page[data-slug=lastraja-ro] .portfolio-cta.dark-cta{background:#0b0f22}.case-outro{isolation:isolate;--_outro-navy:var(--brand-secondary);position:relative}.case-outro .case-next{padding-bottom:calc(var(--space-8) + 44px);background:radial-gradient(130% 150% at 14% -10%, color-mix(in srgb, var(--case-accent) 72%, white) 0%, transparent 56%), linear-gradient(180deg, var(--case-accent) 0%, color-mix(in srgb, var(--case-accent) 80%, var(--_outro-navy)) 100%);overflow:hidden}.case-outro .case-next:after{content:"";background:linear-gradient(180deg, transparent 0%, color-mix(in srgb, var(--case-accent) 24%, var(--_outro-navy)) 55%, var(--_outro-navy) 96%);pointer-events:none;height:190px;position:absolute;bottom:-1px;left:0;right:0}.case-outro .case-next>:not(svg){z-index:1;position:relative}.case-outro .portfolio-cta.dark-cta{padding-top:calc(var(--space-8) + 68px);background:radial-gradient(100% 62% at 50% -6%, color-mix(in srgb, var(--case-accent) 30%, var(--_outro-navy)) 0%, transparent 62%), radial-gradient(130% 90% at 50% 128%, var(--brand-primary-deep) 0%, transparent 55%), var(--_outro-navy);position:relative;overflow:hidden}.case-outro .portfolio-cta.dark-cta:before{content:"";background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--case-accent) 68%, white), transparent);opacity:.55;z-index:2;height:2px;position:absolute;inset:0 0 auto}.case-outro-aurora{z-index:0;aspect-ratio:1;filter:blur(60px);opacity:.5;pointer-events:none;will-change:transform;border-radius:50%;width:70vw;max-width:720px;position:absolute}.case-outro-aurora:first-of-type{background:radial-gradient(circle, color-mix(in srgb, var(--case-accent) 60%, transparent) 0%, transparent 68%);top:-22%;left:-12%}.case-outro-aurora:nth-of-type(2){background:radial-gradient(circle, color-mix(in srgb, var(--brand-primary-bright) 45%, transparent) 0%, transparent 70%);bottom:-26%;right:-14%}.case-outro .portfolio-cta.dark-cta>p,.case-outro .portfolio-cta.dark-cta>h2,.case-outro .portfolio-cta.dark-cta>a{z-index:1;position:relative}.case-outro .portfolio-cta.dark-cta a{font-size:var(--text-mono);letter-spacing:.12em;border-color:color-mix(in srgb, var(--case-accent) 52%, #fff6);background:color-mix(in srgb, var(--case-accent) 12%, transparent);transition:background var(--dur-fast) var(--ease), border-color var(--dur-fast) var(--ease), transform var(--dur-fast) var(--ease)}.case-outro .portfolio-cta.dark-cta a:hover{background:color-mix(in srgb, var(--case-accent) 30%, transparent);border-color:color-mix(in srgb, var(--case-accent) 78%, white);transform:translateY(-2px)}@media (prefers-reduced-motion:reduce){.case-outro-aurora{opacity:.35}}@media (max-width:768px){.case-outro .case-next{background:radial-gradient(150% 150% at 12% -10%, color-mix(in srgb, var(--case-accent) 74%, white) 0%, transparent 58%), linear-gradient(180deg, var(--case-accent) 0%, color-mix(in srgb, var(--case-accent) 78%, var(--_outro-navy)) 100%);min-height:240px;padding-bottom:68px}.case-outro .case-next:after{height:130px}.case-outro .portfolio-cta.dark-cta{padding-top:92px}.case-outro-aurora{filter:blur(44px);opacity:.42;width:130vw}}
.pg-d,.pg-m-root{--pg-gutter:var(--gutter,clamp(18px, 5vw, 92px));--pg-hairline:var(--hairline-strong,#0a16332e);--pg-sunken:var(--surface-sunken,color-mix(in srgb, var(--brand-secondary) 6%, var(--bg)))}.portfolio-filter a{transition:background .25s var(--ease), color .25s var(--ease), border-color .25s var(--ease), transform .25s var(--ease), box-shadow .25s var(--ease);border-radius:999px}.portfolio-filter a.is-active{box-shadow:0 12px 26px -14px color-mix(in srgb, var(--brand-secondary) 70%, transparent);animation:pg-pill-pop .34s var(--ease);transform:translateY(-1px)}@keyframes pg-pill-pop{0%{transform:scale(.94)translateY(-1px)}55%{transform:scale(1.045)translateY(-1px)}to{transform:scale(1)translateY(-1px)}}@media (prefers-reduced-motion:reduce){.portfolio-filter a,.portfolio-filter a.is-active{transition:none;animation:none;transform:none}}
.pg-d{padding:0 var(--pg-gutter) var(--space-8,clamp(96px, 8vw, 160px));grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(28px,3.4vw,60px);display:grid}.pg-d-card[data-lead]{grid-column:1/-1}.pg-d[data-few]{grid-template-columns:1fr;max-width:1180px;margin-inline:auto}.pg-d-card[data-filtered-out]{display:none}.pg-d-card{color:inherit;perspective:1200px;isolation:isolate;text-decoration:none;display:block;position:relative}.pg-d-card-inner{z-index:1;border:1px solid var(--pg-hairline);background:color-mix(in srgb, var(--surface,#fff) 90%, var(--bg));transform:rotateX(var(--pg-rx,0deg)) rotateY(var(--pg-ry,0deg));transform-style:preserve-3d;transition:transform .16s var(--ease), box-shadow .35s var(--ease);border-radius:5px;grid-template-columns:1fr;gap:clamp(16px,1.8vw,28px);padding:clamp(14px,1.4vw,22px);display:grid;position:relative;box-shadow:0 1px 2px #0a16330a,0 14px 34px -20px #0a163333}.pg-d-card:hover .pg-d-card-inner{box-shadow:0 2px 6px #0a163314, 0 34px 70px -28px #0a163357, 0 0 0 1px color-mix(in srgb, var(--case-accent) 55%, transparent)}.pg-d-card[data-lead] .pg-d-card-inner{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);align-items:center;gap:clamp(30px,3.6vw,68px);padding:clamp(18px,1.8vw,30px)}.pg-d-card:focus-visible{outline:none}.pg-d-card:focus-visible .pg-d-card-inner{outline:2px solid var(--brand-primary);outline-offset:4px}.pg-d-card-visual{aspect-ratio:16/10;border:1px solid var(--pg-hairline);background:var(--pg-sunken);border-radius:3px;display:block;position:relative;overflow:hidden}.pg-d-card[data-lead] .pg-d-card-visual{aspect-ratio:16/8}.pg-d-card-visual .live-project-preview{width:100%;height:100%}.pg-d-card-copy{flex-direction:column;align-items:flex-start;gap:11px;display:flex}.pg-d-card-tags{font:500 11px / 1 var(--font-mono), monospace;letter-spacing:.14em;text-transform:uppercase;opacity:.82;flex-wrap:wrap;align-items:center;gap:10px;display:flex}.pg-d-card-app{opacity:.9;border:1px solid;border-radius:999px;align-items:center;gap:4px;padding:3px 8px;display:inline-flex}.pg-d-card-title{letter-spacing:-.045em;margin-top:3px;font-size:clamp(23px,1.05rem + 1.3vw,38px);line-height:.98}.pg-d-card[data-lead] .pg-d-card-title{font-size:clamp(34px,1.4rem + 3vw,62px)}.pg-d-card-summary{opacity:.78;max-width:52ch;font-size:15px;line-height:1.55}.pg-d-card-metric{font:500 11px / 1 var(--font-mono), monospace;letter-spacing:.1em;text-transform:uppercase;align-items:baseline;gap:9px;display:flex}.pg-d-card-metric b{letter-spacing:-.04em;color:var(--case-accent);font-size:clamp(21px,.95rem + 1vw,30px);line-height:1}.pg-d-card-cta{font:500 11px / 1 var(--font-mono), monospace;letter-spacing:.14em;text-transform:uppercase;transition:color .2s var(--ease);border-bottom:1px solid;align-items:center;gap:8px;margin-top:5px;padding-bottom:5px;display:inline-flex}.pg-d-card:hover .pg-d-card-cta{color:var(--case-accent)}.pg-d-card-cta svg{transition:transform .2s var(--ease)}.pg-d-card:hover .pg-d-card-cta svg{transform:translate(3px,-3px)}.pg-d-card-spot{z-index:2;pointer-events:none;opacity:0;background:radial-gradient(300px circle at var(--pg-mx,50%) var(--pg-my,50%), color-mix(in srgb, var(--case-accent) 15%, transparent), transparent 55%);transition:opacity .3s var(--ease);border-radius:5px;position:absolute;inset:0}.pg-d-card:hover .pg-d-card-spot{opacity:.85}@media (max-width:1080px){.pg-d,.pg-d[data-few]{grid-template-columns:1fr}.pg-d-card[data-lead] .pg-d-card-inner{grid-template-columns:1fr;align-items:stretch}}@media (prefers-reduced-motion:reduce){.pg-d-card-inner{transition:box-shadow .35s var(--ease);transform:none!important}.pg-d-card-spot{display:none}.pg-d-card-cta svg{transition:none}.pg-d-card:hover .pg-d-card-cta svg{transform:none}}
@media (min-width:769px){.pg-m-root{display:none}}.pg-m-root{--pg-m-radius:18px;--pg-m-peek:7vw;--pg-m-slide:86vw;--pg-m-ink:var(--brand-secondary,#0b0f22);padding-bottom:24px}@media (scripting:none){.pg-m-list-item{opacity:1;transform:none}}.pg-m-sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.pg-m-carousel{margin-bottom:72px}.pg-m-carousel-head{padding:0 var(--gutter,20px) 16px;justify-content:space-between;align-items:baseline;gap:16px;display:flex}.pg-m-carousel-title{font-family:var(--font-mono,ui-monospace), monospace;letter-spacing:.16em;text-transform:uppercase;color:color-mix(in srgb, var(--pg-m-ink) 62%, transparent);margin:0;font-size:12px;font-weight:500}.pg-m-carousel-count{font-family:var(--font-mono,ui-monospace), monospace;letter-spacing:.1em;color:color-mix(in srgb, var(--pg-m-ink) 45%, transparent);margin:0;font-size:12px}.pg-m-carousel-count b{color:var(--pg-m-ink)}.pg-m-track{padding:0 var(--gutter,20px);overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scroll-padding-inline:var(--gutter,20px);scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:14px;margin:0;list-style:none;display:flex;overflow-x:auto}.pg-m-track::-webkit-scrollbar{display:none}.pg-m-track.is-single{scroll-snap-type:none}.pg-m-slide{flex:0 0 var(--pg-m-slide);scroll-snap-align:center;scroll-snap-stop:always}.pg-m-track.is-single .pg-m-slide{flex-basis:calc(100vw - var(--gutter,20px) * 2)}.pg-m-carousel-nav{padding:22px var(--gutter,20px) 0;justify-content:center;align-items:center;gap:14px;display:flex}.pg-m-arrow{border:1px solid var(--hairline,#0b0f2224);width:44px;height:44px;color:var(--pg-m-ink);transition:background var(--dur-fast,.15s) var(--ease,ease), border-color var(--dur-fast,.15s) var(--ease,ease), opacity var(--dur-fast,.15s) var(--ease,ease);background:0 0;border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.pg-m-arrow:active{background:color-mix(in srgb, var(--pg-m-ink) 8%, transparent)}.pg-m-arrow:disabled{opacity:.3}.pg-m-arrow:focus-visible{outline:2px solid var(--brand-primary,#2563eb);outline-offset:2px}.pg-m-dots{align-items:center;gap:8px;margin:0;padding:0;list-style:none;display:flex}.pg-m-dot{background:color-mix(in srgb, var(--pg-m-ink) 22%, transparent);width:8px;height:8px;transition:width var(--dur-fast,.15s) var(--ease,ease), background var(--dur-fast,.15s) var(--ease,ease);border:0;border-radius:999px;padding:0;display:block}.pg-m-dot:before{content:"";position:absolute;inset:-18px}.pg-m-dots li{display:flex;position:relative}.pg-m-dot.is-active{background:var(--brand-primary,#2563eb);width:22px}.pg-m-dot:focus-visible{outline:2px solid var(--brand-primary,#2563eb);outline-offset:3px}.pg-m-list-section{padding:0 var(--gutter,20px)}.pg-m-list{margin:0;padding:0;list-style:none}.pg-m-list-item{content-visibility:auto;contain-intrinsic-size:auto 480px;opacity:0;transition:opacity .42s var(--ease,cubic-bezier(.16, 1, .3, 1)), transform .42s var(--ease,cubic-bezier(.16, 1, .3, 1));transition-delay:var(--pg-m-delay,0s);transform:translateY(18px)}.pg-m-list-item.is-in{opacity:1;transform:none}.pg-m-list-item+.pg-m-list-item{border-top:1px solid var(--hairline,#0b0f2224);margin-top:44px;padding-top:44px}.pg-m-card{color:inherit;-webkit-tap-highlight-color:transparent;text-decoration:none;display:block}.pg-m-card-visual{aspect-ratio:1.42;border-radius:var(--pg-m-radius);background:color-mix(in srgb, var(--pg-m-ink) 6%, transparent);box-shadow:0 24px 50px -38px color-mix(in srgb, var(--pg-m-ink) 65%, transparent);transition:transform var(--dur-fast,.15s) var(--ease,ease), box-shadow var(--dur-fast,.15s) var(--ease,ease);position:relative;overflow:hidden}.pg-m-card-visual :is(.live-project-preview,img){object-fit:cover;object-position:top;width:100%;height:100%}.pg-m-card-visual .live-project-preview{background:color-mix(in srgb, var(--pg-m-ink) 6%, #fff)}.pg-m-card:active .pg-m-card-visual{box-shadow:0 14px 34px -30px color-mix(in srgb, var(--pg-m-ink) 60%, transparent);transform:scale(.985)}.pg-m-card:focus-visible{outline:none}.pg-m-card:focus-visible .pg-m-card-visual{outline:2px solid var(--brand-primary,#2563eb);outline-offset:3px}.pg-m-card-copy{padding-top:20px}.pg-m-card-tags{font-family:var(--font-mono,ui-monospace), monospace;letter-spacing:.08em;text-transform:uppercase;color:color-mix(in srgb, var(--pg-m-ink) 55%, transparent);flex-wrap:wrap;align-items:center;gap:8px 10px;font-size:11px;display:flex}.pg-m-chip{border:1px solid color-mix(in srgb, var(--pg-m-accent,currentColor) 40%, transparent);color:color-mix(in srgb, var(--pg-m-accent,currentColor) 88%, var(--pg-m-ink));border-radius:999px;padding:3px 9px}.pg-m-chip-app{align-items:center;gap:4px;display:inline-flex}.pg-m-card-title{letter-spacing:-.03em;color:var(--pg-m-ink);margin:14px 0 0;font-size:clamp(30px,8.4vw,40px);line-height:.98}.pg-m-card--carousel .pg-m-card-title{font-size:clamp(34px,10vw,46px)}.pg-m-card-summary{font-family:var(--font-sans,system-ui), sans-serif;color:color-mix(in srgb, var(--pg-m-ink) 78%, transparent);margin:12px 0 0;font-size:14px;line-height:1.6}.pg-m-card--carousel .pg-m-card-summary{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.pg-m-card-metric{font-family:var(--font-mono,ui-monospace), monospace;letter-spacing:.06em;text-transform:uppercase;color:color-mix(in srgb, var(--pg-m-ink) 55%, transparent);margin:16px 0 0;font-size:12px}.pg-m-card-metric b{letter-spacing:-.01em;color:var(--brand-primary,#2563eb);margin-right:6px;font-size:20px}.pg-m-card-cta{min-height:44px;font-family:var(--font-mono,ui-monospace), monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--pg-m-ink);align-items:center;gap:7px;margin-top:18px;font-size:12px;display:inline-flex}.pg-m-empty{padding:40px var(--gutter,20px) 72px}.pg-m-empty-eyebrow{font-family:var(--font-mono,ui-monospace), monospace;letter-spacing:.16em;color:color-mix(in srgb, var(--pg-m-ink) 50%, transparent);margin:0 0 16px;font-size:11px}.pg-m-empty h2{letter-spacing:-.03em;color:var(--pg-m-ink);margin:0;font-size:clamp(28px,8vw,38px);line-height:1.04}.pg-m-empty h2 em{text-decoration:underline;-webkit-text-decoration-color:var(--brand-primary,#2563eb);text-decoration-color:var(--brand-primary,#2563eb);text-underline-offset:4px;font-style:italic}.pg-m-empty-cta{min-height:44px;font-family:var(--font-mono,ui-monospace), monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--pg-m-ink);align-items:center;gap:7px;margin-top:24px;font-size:12px;display:inline-flex}@media (prefers-reduced-motion:reduce){.pg-m-list-item{opacity:1;transition:none;transform:none}.pg-m-track{scroll-behavior:auto}.pg-m-card:active .pg-m-card-visual,.pg-m-arrow,.pg-m-dot{transition:none}}
