.featured-work-section{padding-block:44px 36px;padding-inline:clamp(20px,2.5vw,48px)}.featured-work-heading{margin-bottom:32px;text-align:center}.featured-work-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-areas:"demo demo" "method source";align-items:start;gap:32px}.featured-demo{grid-area:demo;min-width:0}.featured-method{grid-area:method}.featured-open-source{grid-area:source}.featured-method,.featured-open-source{min-width:0;padding-top:22px;border-top:1px solid #3f3f46}.featured-aside-title{font-size:clamp(20px,1.6vw,27px);font-weight:650;line-height:1.18;letter-spacing:-.035em;color:#e4e4e7}.featured-method-steps{display:grid;gap:20px;margin-top:26px}.featured-method-steps li{display:flex;align-items:start;gap:12px}.featured-step-number{flex-shrink:0;padding-top:3px;font:10px/1.6 ui-monospace,monospace;color:#fbbf24}.featured-method-steps h4{font-size:14px;font-weight:600;color:#e4e4e7}.featured-aside-copy,.featured-method-steps p,.featured-tools p{max-width:350px;font-size:12px;line-height:1.7;color:#a1a1aa}.featured-method-steps p{margin-top:5px}.featured-aside-copy{margin-top:14px}.featured-tools{display:grid;gap:15px;margin-top:22px}.featured-tools li{max-width:350px;border-top:1px solid #27272a;padding-top:13px}.featured-tools a{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:26px;font-size:13px;font-weight:600;color:#e4e4e7}.featured-tools a:hover{color:#fbbf24}.featured-tools a svg{color:#71717a}.featured-tools p{margin-top:3px;font-size:11px;line-height:1.6}.featured-aside-link{display:inline-flex;align-items:center;gap:7px;min-height:40px;margin-top:19px;font-size:12px;font-weight:500;color:#fbbf24}.featured-aside-link:hover{color:#fde68a}@media (min-width:1280px){.featured-work-grid{grid-template-columns:minmax(200px,1fr) minmax(0,760px) minmax(200px,1fr);grid-template-areas:"method demo source";align-items:center;gap:clamp(24px,2.6vw,52px)}.featured-method,.featured-open-source{border-top:0;padding-block:12px}.featured-method{padding-right:clamp(0px,1vw,20px)}.featured-open-source{padding-left:clamp(0px,1vw,20px)}}@media (max-width:599px){.featured-work-section{padding-inline:12px;padding-block:36px 28px}.featured-work-heading{margin-bottom:25px}.featured-work-heading>p:last-child{max-width:320px;margin-inline:auto;font-size:12px}.featured-work-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"demo" "method" "source";gap:26px}.featured-method,.featured-open-source{padding-top:20px}.featured-method-steps{gap:16px;margin-top:20px}.featured-aside-title br{display:none}.featured-aside-title{font-size:21px}.featured-aside-link{margin-top:12px}.featured-tools{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px}.featured-tools a{font-size:12px;gap:5px}.featured-tools p{font-size:10px;line-height:1.6}}.project-notebook{width:min(100%,760px);margin-inline:auto}.notebook-device{position:relative;width:100%;padding-inline:22px;perspective:1300px}.notebook-lid{position:relative;padding:0 9px;border:1px solid #52525b;border-bottom:0;border-radius:18px 18px 2px 2px;background:linear-gradient(135deg,#28282d,#0b0b0e 65%);box-shadow:0 0 0 1px #000,inset 0 1px #ffffff18;transform-origin:bottom center}.notebook-camera{display:flex;height:18px;align-items:center;justify-content:center}.notebook-camera span{width:4px;height:4px;border-radius:50%;background:#151921;box-shadow:inset 0 0 0 1px #ffffff14}.notebook-screen{position:relative;isolation:isolate;overflow:hidden;aspect-ratio:16/10;border:1px solid #08080a;border-radius:4px;background:#0c1010}.notebook-desktop{position:absolute;inset:0 0 29px;background:#101115}.notebook-boot,.notebook-story{position:absolute;inset:0 0 29px;z-index:1;display:none;flex-direction:column;justify-content:center;background:radial-gradient(ellipse at 50% 80%,#fbbf240a,transparent 70%),#0b0d10}.notebook-boot{align-items:center;padding:24px;text-align:center}.notebook-power{width:30px;height:30px;margin-bottom:20px;color:#fbbf24}.notebook-boot-label,.notebook-story-label{font:10px/1.5 ui-monospace,monospace;letter-spacing:.1em;text-transform:uppercase;color:#71717a}.notebook-boot h3{margin-top:10px;font-size:clamp(17px,2.6vw,30px);font-weight:600;letter-spacing:-.035em;color:#f4f4f5}.notebook-cursor{color:#fbbf24}.notebook-load-track{overflow:hidden;width:min(220px,70%);height:2px;margin-top:24px;background:#27272a}.notebook-load-track span{display:block;width:100%;height:100%;transform:scaleX(0);transform-origin:left;background:#fbbf24}.notebook-boot-detail{margin-top:13px;font:9px/1.5 ui-monospace,monospace;color:#52525b}.notebook-story{padding:clamp(20px,5vw,66px)}.notebook-story-label{color:#fbbf24}.notebook-story h3{max-width:550px;margin-top:16px;font-size:clamp(20px,3.2vw,38px);font-weight:750;line-height:1.12;letter-spacing:-.04em;color:#fafafa}.notebook-story ul{display:grid;gap:12px;margin-top:25px}.notebook-story li{display:flex;align-items:start;gap:10px;font-size:clamp(11px,1.5vw,15px);line-height:1.4;color:#a1a1aa}.notebook-story li svg{width:15px;height:15px;flex-shrink:0;color:#fbbf24}.notebook-screen-bar{position:absolute;inset:auto 0 0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:12px;height:29px;padding-inline:12px;border-top:1px solid #ffffff0c;background:#15161a;font:9px ui-monospace,monospace;color:#a1a1aa}.notebook-case-name,.notebook-screen-bar a{display:inline-flex;align-items:center;gap:7px}.notebook-case-name i{width:4px;height:4px;border-radius:50%;background:#34d399}.notebook-screen-bar a{min-height:25px;color:#fbbf24}.notebook-chin{display:flex;height:22px;align-items:center;justify-content:center;gap:7px;font:7px ui-monospace,monospace;letter-spacing:.14em;color:#52525b}.notebook-chin span{color:#fbbf2455}.notebook-base{position:relative;height:14px;margin-inline:-22px;border:1px solid #52525b;border-top-color:#a1a1aa;border-radius:1px 1px 45% 45%/1px 1px 90% 90%;background:linear-gradient(#77777e,#3a3a41 35%,#1b1b20 80%);box-shadow:0 3px 8px #0008}.notebook-base span{position:absolute;top:-1px;left:42%;width:16%;height:5px;border-radius:0 0 7px 7px;background:#27272a;box-shadow:inset 0 -1px #ffffff18}.notebook-shadow{position:absolute;right:3%;bottom:-13px;left:3%;z-index:-1;height:25px;border-radius:50%;background:#000a;filter:blur(12px)}.notebook-controls{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:24px}.notebook-projects{display:flex;flex-wrap:wrap;gap:8px}.notebook-projects button{display:inline-flex;min-height:38px;align-items:center;gap:8px;border:1px solid #3f3f46;border-radius:6px;padding:7px 12px;background:#111114;font-size:12px;color:#a1a1aa;cursor:pointer}.notebook-projects button span{font:9px ui-monospace,monospace;color:#52525b}.notebook-projects button[aria-pressed=true]{border-color:#fbbf2466;color:#fbbf24}.notebook-projects button[aria-pressed=true] span{color:#fbbf2488}.notebook-playback{display:flex;gap:5px}.notebook-playback button{display:flex;width:36px;height:38px;align-items:center;justify-content:center;border:1px solid #27272a;border-radius:6px;color:#a1a1aa;cursor:pointer}.notebook-playback svg{width:14px;height:14px}.notebook-playback button:hover{border-color:#fbbf2455;color:#fbbf24}.notebook-ready[data-phase=boot] .notebook-boot,.notebook-ready[data-phase=story] .notebook-story{display:flex}.notebook-ready[data-phase=boot] .notebook-desktop,.notebook-ready[data-phase=story] .notebook-desktop{visibility:hidden}.notebook-started .notebook-lid{animation:notebook-open .85s cubic-bezier(.2,.8,.2,1) both}.notebook-started[data-phase=boot] .notebook-load-track span{animation:notebook-load 1.8s ease-in-out both}.notebook-ready[data-phase=story] .notebook-story{animation:notebook-story-in .35s ease-out both}.notebook-ready[data-phase=result] .notebook-desktop{animation:notebook-reveal .45s cubic-bezier(.2,.8,.2,1) both}.project-notebook[data-paused=true] .notebook-load-track span{animation-play-state:paused}@keyframes notebook-open{0%{opacity:0;transform:rotateX(-45deg)}to{opacity:1;transform:rotateX(0)}}@keyframes notebook-load{to{transform:scaleX(1)}}@keyframes notebook-story-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes notebook-reveal{0%{opacity:0;transform:scale(1.045);filter:blur(5px)}to{opacity:1;transform:scale(1);filter:blur(0)}}@media (max-width:480px){.notebook-device{padding-inline:10px}.notebook-lid{padding-inline:5px;border-radius:11px 11px 1px 1px}.notebook-camera{height:11px}.notebook-chin{height:14px;font-size:5px;gap:4px}.notebook-screen-bar{height:23px;padding-inline:7px;gap:6px;font-size:7px}.notebook-boot,.notebook-desktop,.notebook-story{bottom:23px}.notebook-case-name,.notebook-screen-bar a{gap:4px}.notebook-base{height:9px;margin-inline:-10px}.notebook-base span{height:3px}.notebook-boot{padding:12px}.notebook-power{width:20px;height:20px;margin-bottom:9px}.notebook-boot-label,.notebook-story-label{font-size:8px;letter-spacing:.05em}.notebook-boot h3{margin-top:5px;font-size:16px;line-height:1.2}.notebook-load-track{margin-top:13px}.notebook-boot-detail{margin-top:8px;font-size:7px}.notebook-story{padding:13px}.notebook-story h3{margin-top:8px;font-size:16px}.notebook-story ul{margin-top:11px;gap:6px}.notebook-story li{gap:6px;font-size:10px}.notebook-story li svg{width:12px;height:12px}.notebook-controls{margin-top:18px;gap:7px}.notebook-projects{gap:5px}.notebook-projects button{min-height:35px;gap:5px;padding:6px 8px;font-size:10px}.notebook-playback{gap:4px}.notebook-playback button{width:30px;height:35px}}@media (prefers-reduced-motion:reduce){.project-notebook .notebook-desktop,.project-notebook .notebook-lid{animation:none;transform:none}}.build-scene{position:relative;isolation:isolate;overflow:hidden;width:100%;border-bottom:1px solid #27272a;background:#09090b}.scene-bottomline,.scene-topline{position:relative;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px clamp(12px,1.3vw,24px);font:10px/1.4 ui-monospace,monospace;letter-spacing:.08em;color:#a1a1aa}.scene-topline{border-bottom:1px solid #ffffff0c}.scene-topline-detail{color:#52525b}.scene-live,.scene-product-label>span:first-child{display:flex;align-items:center;gap:7px;color:#fbbf24}.scene-live i,.scene-product-label i,.scene-status i{height:5px;width:5px;flex-shrink:0;background:#fbbf24;border-radius:50%}.scene-performance{position:relative;min-height:650px;height:calc(100svh - 237px);max-height:960px;perspective:1200px;overflow:hidden}.scene-grid{position:absolute;inset:0;background-image:linear-gradient(#ffffff04 1px,transparent 0),linear-gradient(90deg,#ffffff04 1px,transparent 0);background-size:64px 64px;mask-image:linear-gradient(180deg,transparent,#000 30%,#000 70%,transparent)}.scene-orbit{position:absolute;width:600px;height:600px;border:1px solid #fbbf2410;border-radius:50%;right:-100px;top:-100px;pointer-events:none}.scene-orbit-two{width:850px;height:850px;right:-225px;top:-225px}.docker-box{position:relative;transform:rotate(-6deg);filter:drop-shadow(0 30px 60px #0009)}.docker-box-face{position:relative;display:flex;align-items:center;gap:15px;min-height:150px;padding:30px 25px;background:repeating-linear-gradient(90deg,#0875c2,#0875c2 23px,#0b84d8 24px,#0b84d8 30px,#085c9a 31px,#0875c2 34px);border:3px solid #4fb7f6;box-shadow:inset 0 -12px #043e6b55,inset 0 10px #70c9ff33}.docker-box-face img{width:65px;height:65px;filter:brightness(0) invert(1)}.docker-box-face strong{display:block;font-size:clamp(22px,3vw,44px);font-weight:900;letter-spacing:-.03em}.docker-box-face div>span{font:9px ui-monospace,monospace;color:#d4efff}.docker-box-top{height:20px;background:#1498e8;transform:skewX(-35deg);transform-origin:bottom left;margin-left:14px;border:2px solid #5bc7ff}.docker-stamp{margin-left:auto;transform:rotate(-10deg);border:2px solid #d2eeff99;padding:7px;font:900 11px/1.1 ui-monospace,monospace;color:#d2eeff}.docker-door{position:absolute;right:0;top:20px;bottom:0;width:16%;background:repeating-linear-gradient(90deg,#065b9f,#065b9f 15px,#218acf 16px,#218acf 20px);border:3px solid #71ccff;transform-origin:right center}.docker-door-glow{position:absolute;inset:35px -90px 10px auto;width:100px;background:#fbbf2488;filter:blur(25px);opacity:0}.docker-shadow{position:absolute;bottom:-65px;left:5%;width:90%;height:30px;background:#000;filter:blur(17px)}.code-packet{position:absolute;z-index:8;left:42%;top:46%;display:flex;flex-direction:column;gap:7px;min-width:280px;max-width:460px;padding:15px 20px;border:1px solid var(--packet-color);border-radius:5px;background:#111114f5;box-shadow:0 0 30px color-mix(in srgb,var(--packet-color) 15%,transparent);opacity:0;pointer-events:none}.code-packet>span{font:9px ui-monospace,monospace;letter-spacing:.14em;color:var(--packet-color)}.code-packet code{font:12px ui-monospace,monospace;white-space:nowrap;color:#f4f4f5}.scene-result{position:absolute;inset:0;display:grid;grid-template-columns:.75fr 1.25fr;align-items:center;gap:3vw;padding:24px clamp(12px,1.3vw,24px)}.scene-pitch{position:relative;z-index:2;min-width:0}.scene-kicker{font:10px ui-monospace,monospace;letter-spacing:.12em;color:#a1a1aa;margin-bottom:20px}.scene-pitch h1{font-size:clamp(70px,9vw,175px);font-weight:950;line-height:.81;letter-spacing:-.075em;color:#f4f4f5}.scene-pitch h1>span{color:#fbbf24}.scene-pitch h1 .scene-title-dot{color:#f4f4f5}.scene-description{margin-top:18px;font-size:14px;line-height:1.6;color:#a1a1aa}.scene-actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px;margin-top:28px}.scene-more{display:inline-flex;align-items:center;gap:8px;font-size:12px;color:#a1a1aa}.scene-more:hover{color:#fbbf24}.scene-product-label{display:flex;justify-content:space-between;gap:10px;margin-bottom:14px;font:9px ui-monospace,monospace;letter-spacing:.1em;color:#71717a}.scene-browser{position:relative;overflow:hidden;border:1px solid #52525b;border-radius:10px;background:#18181b;box-shadow:0 35px 100px #0008,0 0 100px #fbbf2408}.scene-browser-bar{display:flex;align-items:center;gap:5px;padding:12px 14px;border-bottom:1px solid #27272a}.scene-browser-bar>span{width:6px;height:6px;border-radius:50%;background:#52525b}.scene-browser-bar>span:nth-child(3){background:#fbbf24}.scene-browser-bar code{margin-left:10px;font:9px ui-monospace,monospace;color:#a1a1aa}.scene-screen{position:relative;aspect-ratio:16/10;background:#f4f4f5}.scene-fracture{position:absolute;inset:0;z-index:10;pointer-events:none;opacity:0}.scene-fracture svg{width:100%;height:100%;fill:none;stroke:#fbbf24;stroke-width:1.6;filter:drop-shadow(0 0 6px #fbbf24)}.scene-fracture path:nth-child(2){stroke:#fff;stroke-width:.5}.scene-shards{position:absolute;inset:0;z-index:9;pointer-events:none}.scene-shard{position:absolute;inset:0;background:linear-gradient(135deg,#ffffff12,#ffffff02);border:1px solid #ffffff33;opacity:0}.scene-shard-0{clip-path:polygon(0 0,45% 0,65% 51%,0 31%)}.scene-shard-1{clip-path:polygon(45% 0,85% 0,65% 51%)}.scene-shard-2{clip-path:polygon(85% 0,100% 0,100% 65%,65% 51%)}.scene-shard-3{clip-path:polygon(65% 51%,100% 65%,100% 100%,80% 100%)}.scene-shard-4{clip-path:polygon(65% 51%,80% 100%,35% 100%)}.scene-shard-5{clip-path:polygon(0 31%,65% 51%,35% 100%,0 100%)}.scene-bottomline{border-top:1px solid #ffffff0c;min-height:54px;flex-wrap:wrap}.scene-status{display:flex;align-items:center;gap:8px;color:#a1a1aa}.scene-status i{background:#34d399}.scene-replay{display:flex;align-items:center;gap:7px;min-height:32px;color:#fbbf24;font-size:10px;cursor:pointer}.scene-replay:disabled{display:none}.scene-bottom-detail{color:#52525b;font-size:9px}.code-packet-0{--packet-index:0;--packet-y:-180px;--packet-rotate:-8deg}.code-packet-1{--packet-index:1;--packet-y:-80px;--packet-rotate:5deg}.code-packet-2{--packet-index:2;--packet-y:20px;--packet-rotate:-4deg}.code-packet-3{--packet-index:3;--packet-y:120px;--packet-rotate:7deg}.scene-shard-0{--shard-x:-30vw;--shard-y:-20vh;--shard-rotate:-25deg}.scene-shard-1{--shard-x:5vw;--shard-y:-35vh;--shard-rotate:16deg}.scene-shard-2{--shard-x:30vw;--shard-y:-12vh;--shard-rotate:25deg}.scene-shard-3{--shard-x:35vw;--shard-y:25vh;--shard-rotate:30deg}.scene-shard-4{--shard-x:5vw;--shard-y:40vh;--shard-rotate:-15deg}.scene-shard-5{--shard-x:-30vw;--shard-y:25vh;--shard-rotate:-30deg}@media (min-width:1800px){.scene-performance{min-height:800px}.scene-description{font-size:18px}.scene-kicker{font-size:12px}}@media (max-width:899px){.scene-performance{min-height:800px;height:auto}.scene-result{position:relative;grid-template-columns:1fr;gap:30px;padding-top:28px;padding-bottom:35px}.scene-pitch h1{font-size:clamp(70px,16vw,130px)}.scene-pitch h1 br{display:none}.scene-pitch h1>span:before{content:" "}.scene-kicker{margin-bottom:16px}.scene-description br{display:none}.scene-description{margin-top:10px;max-width:450px}.scene-actions{margin-top:20px}.code-packet{left:20%;top:43%;min-width:240px}.code-packet code{font-size:10px}.scene-bottom-detail,.scene-topline-detail{display:none}.scene-live{font-size:8px}}@media (max-width:480px){.scene-performance{min-height:680px}.scene-pitch h1{font-size:17vw}.scene-description{font-size:13px;max-width:290px}.scene-kicker{font-size:8px}.scene-browser-bar{padding:8px 10px}.scene-product-label{font-size:8px;margin-bottom:10px}.scene-actions{gap:16px}.docker-box-face{min-height:120px;padding:20px 15px}.docker-box-face img{width:48px;height:48px}.docker-stamp{font-size:8px;padding:5px}.scene-bottomline{padding-block:10px;font-size:8px;gap:8px}.scene-topline{font-size:8px;gap:6px}.scene-replay{font-size:9px}}.portfolio-factory .scene-performance{height:auto;min-height:max(620px,calc(100svh - 237px));max-height:none}.portfolio-factory .scene-result{position:relative;inset:auto;min-height:inherit;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(24px,3vw,64px);align-items:center;padding:clamp(28px,3.3vh,48px) clamp(20px,2.5vw,48px)}.portfolio-factory .scene-pitch{animation:none}.portfolio-factory .scene-pitch h1{font-size:clamp(45px,5.5vw,108px);line-height:.96;letter-spacing:-.065em}.portfolio-factory .scene-kicker{margin-bottom:18px;font-size:9px}.factory-container{position:relative;width:96%;margin:34px 0 28px;perspective:900px}.factory-container .docker-box{transform:rotate(-4deg)}.factory-container .docker-box-face{min-height:clamp(155px,12.5vw,260px);padding:25px;gap:18px}.factory-container .docker-box-face img{width:clamp(55px,5vw,96px);height:clamp(55px,5vw,96px);filter:none;border-radius:16px;box-shadow:0 0 25px #082c5266}.factory-container .docker-box-face strong{font-size:clamp(30px,3.5vw,67px)}.factory-container .docker-box-face div>span{font-size:clamp(8px,.7vw,12px)}.factory-container .docker-stamp{font-size:clamp(9px,.9vw,15px);padding:9px}.factory-container .docker-shadow{bottom:-24px;height:22px}.portfolio-factory .scene-description{font-size:16px;line-height:1.5;margin-top:12px}.factory-categories{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}.factory-categories button{display:flex;align-items:center;gap:7px;min-height:34px;border:1px solid #3f3f46;border-radius:5px;padding:5px 10px;font-size:11px;color:#a1a1aa;cursor:pointer}.factory-categories button[aria-pressed=true]{color:#fbbf24;border-color:#fbbf2488;background:#fbbf2408}.portfolio-factory .scene-actions{margin-top:23px}.factory-output{--preview-height:clamp(260px,calc(100svh - 440px),600px);position:relative;min-width:0;width:100%;justify-self:center;max-width:min(100%,calc(var(--preview-height) * 16 / 9))}.factory-output-stage{position:relative;min-width:0;isolation:isolate}.factory-project{position:relative;z-index:1;min-width:0}.factory-project .scene-browser{transform:rotate(-1.5deg);transform-origin:center}.factory-project .scene-screen{aspect-ratio:16/9}.factory-build-placeholder{position:absolute;inset:0;z-index:-1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;border:1px dashed #3f3f46;border-radius:12px;background:#0e0e11;color:#fbbf24;font:12px ui-monospace,monospace;opacity:0}.factory-build-placeholder>span:last-child{font-size:10px;color:#71717a}.factory-build-spinner{width:32px;height:32px;border:2px solid #fbbf2422;border-top-color:#fbbf24;border-radius:50%;animation:factory-spin 1s linear infinite}.factory-project-info{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:24px;min-height:129px}.factory-project-info>div{min-width:0}.factory-project-info h2{margin-top:4px;font-size:clamp(25px,2.7vw,52px);font-weight:800;letter-spacing:-.04em;line-height:1.08}.factory-project-description{max-width:590px;margin-top:8px;color:#a1a1aa;font-size:14px;line-height:1.45}.factory-stack{margin-top:10px;font:10px/1.5 ui-monospace,monospace;color:#71717a}.factory-project-link{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:50px;height:50px;border:1px solid #fbbf2466;border-radius:50%;color:#fbbf24;transition:background .2s}.factory-project-link:hover{background:#fbbf2415}.factory-controls{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:18px;border-top:1px solid #27272a;padding-top:10px}.factory-progress{display:flex;align-items:center;gap:5px;min-width:0}.factory-progress button{display:flex;align-items:center;width:21px;height:32px;cursor:pointer}.factory-progress button span{display:block;width:100%;height:2px;background:#3f3f46;transition:background .2s}.factory-progress button[aria-current=true] span{height:3px;background:#fbbf24}.factory-arrows{display:flex;gap:4px}.factory-arrows button{display:flex;width:34px;height:34px;align-items:center;justify-content:center;border:1px solid #27272a;border-radius:5px;color:#a1a1aa;cursor:pointer}.factory-arrows button:hover{color:#fbbf24;border-color:#fbbf2455}.factory-arrows button:disabled{display:none}.factory-terminal{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;gap:25px;padding:clamp(18px,2.4vw,44px);background:radial-gradient(ellipse at 90% 0,#173b3440,transparent 65%),#0c1010}.factory-terminal>p:first-child{font:clamp(16px,2vw,32px) ui-monospace,monospace;letter-spacing:-.04em;color:#6ee7b7}.factory-terminal>p:first-child span{color:#6ee7b766}.factory-terminal pre{overflow:hidden;white-space:pre-wrap;overflow-wrap:anywhere;font:clamp(9px,.85vw,15px)/1.65 ui-monospace,monospace;color:#a1a1aa;max-height:65%}.factory-terminal-end{font:10px ui-monospace,monospace;color:#6ee7b7}@media (max-width:899px){.portfolio-factory .scene-performance{height:auto;min-height:0}.portfolio-factory .scene-result{grid-template-columns:1fr;gap:40px;padding-top:26px}.portfolio-factory .scene-pitch h1{font-size:clamp(45px,9vw,78px)}.portfolio-factory .scene-pitch h1 br{display:block}.portfolio-factory .scene-pitch h1>span:before{content:none}.factory-container{width:min(88%,650px);margin-top:24px;margin-bottom:26px}.factory-container .docker-box-face{min-height:155px}.factory-output{width:100%;max-width:none}.factory-project-info{min-height:125px}.portfolio-factory .scene-description{font-size:14px}.portfolio-factory .code-packet{left:25%;top:35%}.factory-project .scene-screen{aspect-ratio:16/9}.factory-terminal pre{font-size:12px}.factory-terminal>p:first-child{font-size:25px}.factory-project-info h2{font-size:32px}}@media (max-width:480px){.portfolio-factory .scene-pitch h1{font-size:10.3vw}.portfolio-factory .scene-kicker{font-size:8px;margin-bottom:14px}.factory-container{width:96%;margin-top:22px;margin-bottom:24px}.factory-container .docker-box-face{min-height:125px;padding:15px;gap:10px}.factory-container .docker-box-face strong{font-size:32px}.factory-container .docker-box-face img{width:52px;height:52px;border-radius:9px}.factory-container .docker-stamp{padding:5px;font-size:8px}.factory-categories{gap:6px}.factory-categories button{font-size:10px;padding:5px 8px}.portfolio-factory .scene-result{gap:35px}.factory-project-info{margin-top:18px;min-height:147px;gap:12px}.factory-project-info h2{font-size:27px}.factory-project-description{font-size:12px}.factory-stack{font-size:9px}.factory-project-link{width:40px;height:40px}.factory-progress{gap:4px}.factory-progress button{width:13px}.factory-arrows button{width:30px}.factory-terminal{padding:15px;gap:14px}.factory-terminal>p:first-child{font-size:18px}.factory-terminal pre{font-size:9px}.factory-terminal-end{font-size:8px}.factory-controls{gap:8px}}.scene-ready .docker-door{animation:door-open .6s 1.9s both}.scene-ready .docker-door-glow{animation:glow-open 1.4s 1.9s both}.scene-ready .code-packet{animation:packet-flight 1.5s calc(2s + var(--packet-index)*.22s) both}.scene-ready .scene-fracture{animation:screen-crack .65s 4.65s both}.scene-ready .scene-shard{animation:glass-fly .9s 4.75s both}@keyframes door-open{to{transform:perspective(500px) rotateY(-115deg)}}@keyframes glow-open{0%,to{opacity:0}30%,70%{opacity:1}}@keyframes packet-flight{0%{opacity:0;transform:translate(-70px) scale(.4)}25%{opacity:1}60%{opacity:1;transform:translate(10vw,var(--packet-y)) rotate(var(--packet-rotate)) scale(1)}to{opacity:0;transform:translate(35vw) scale(.2)}}@keyframes screen-crack{0%{opacity:0}35%,8%{opacity:1}to{opacity:0}}@keyframes glass-fly{0%{opacity:1;transform:translate(0) rotate(0)}to{opacity:0;transform:translate(var(--shard-x),var(--shard-y)) rotate(var(--shard-rotate)) scale(.7)}}.scene-static .scene-code,.scene-static .scene-fracture,.scene-static .scene-shards{display:none}.scene-static .scene-pitch{animation:none;opacity:1}@media (prefers-reduced-motion:reduce){.scene-code,.scene-fracture,.scene-shards{display:none!important}.scene-pitch{animation:none!important;opacity:1!important}}.scene-ready .factory-container{animation:factory-arrive 1.1s .1s both}.scene-ready .factory-project{animation:factory-output .85s 2.9s both}.scene-ready .factory-build-placeholder{animation:factory-placeholder 3.8s both}.portfolio-factory.scene-ready .docker-door,.portfolio-factory.scene-ready .docker-door-glow{animation-delay:1.05s}.portfolio-factory.scene-ready .code-packet{animation-delay:calc(1.1s + var(--packet-index)*.2s)}.portfolio-factory.scene-ready .scene-fracture{animation-delay:3.3s}.portfolio-factory.scene-ready .scene-shard{animation-delay:3.4s}.scene-ready .factory-project-next{animation-delay:.2s;animation-duration:.7s}.portfolio-factory.scene-ready .scene-code-next .code-packet{animation-delay:calc(var(--packet-index)*.08s);animation-duration:.7s}@keyframes factory-arrive{0%{opacity:0;transform:translateX(-100vw) rotate(-12deg)}65%{opacity:1;transform:translateX(14px) rotate(2deg)}to{opacity:1;transform:translateX(0) rotate(0)}}@keyframes factory-output{0%{opacity:0;transform:translate(80px,-80px) rotate(8deg) scale(.85)}55%{opacity:1;transform:translate(-5px,9px) rotate(-1deg) scale(1.01)}to{opacity:1;transform:translate(0) rotate(0) scale(1)}}@keyframes factory-placeholder{0%,80%{opacity:1}to{opacity:0;visibility:hidden}}@keyframes factory-spin{to{transform:rotate(1turn)}}.scene-static .factory-build-placeholder,.scene-static .factory-container,.scene-static .factory-project{animation:none}.scene-static .factory-project{opacity:1}.scene-static .factory-build-placeholder{display:none}@media (prefers-reduced-motion:reduce){.factory-container,.factory-project{animation:none!important;opacity:1!important}.factory-build-placeholder{display:none}}