/* Optional home-page stream; the gallery orbit is independent. */
.featured-view-switch{display:flex;width:fit-content;gap:4px;padding:4px;margin:-12px 0 28px auto;border:1px solid var(--line);border-radius:999px;background:var(--surface)}
.featured-view-switch button{display:flex;align-items:center;gap:8px;border:0;border-radius:999px;padding:10px 16px;font:inherit;font-size:12px;color:var(--ink);background:none;cursor:pointer}
.featured-view-switch button[aria-pressed=true]{background:#dfb88e;color:#27251f}.featured-view-switch button>span{font-size:19px;line-height:1}.featured-view-switch svg{width:21px;height:21px;stroke:currentColor;stroke-width:1.5;stroke-linecap:round}
.featured-flow{border:1px solid #454e43;border-radius:20px;overflow:hidden;isolation:isolate;background:#141b18;color:#f0eee4;scroll-margin-top:105px}
.flow-stage{height:600px;position:relative;overflow:hidden;contain:layout paint;touch-action:pan-y;user-select:none;cursor:grab;outline-offset:-5px!important}
.flow-stage.is-dragging,.flow-stage.is-dragging *{cursor:grabbing}.flow-atmosphere{position:absolute;inset:0;overflow:hidden;pointer-events:none;background:radial-gradient(ellipse at 35% 30%,#ad86531c,transparent 65%)}
.flow-light{position:absolute;width:80%;height:120%;left:10%;top:-10%;background:radial-gradient(ellipse,#c2a0721c,transparent 64%);transform:rotate(-28deg)}
.flow-lines{position:absolute;width:120%;height:55%;top:18%;left:-10%;transform:perspective(600px) rotateY(-15deg) rotateZ(-9deg);border-top:1px solid #d5bd8d28;border-bottom:1px solid #d5bd8d20;box-shadow:0 -17px 0 #d5bd8d06,0 25px 0 #d5bd8d05}
.flow-dust{position:absolute;inset:-15%;background-image:radial-gradient(circle,#e0cda65c 1px,transparent 1.6px),radial-gradient(circle,#b9cbb54a 1px,transparent 1.5px);background-size:123px 103px,197px 163px;background-position:17px 29px,63px 51px;animation:flow-drift 24s linear infinite;opacity:.65;will-change:transform}
@keyframes flow-drift{from{transform:translate3d(30px,0,0)}to{transform:translate3d(-93px,-103px,0)}}
.flow-still .flow-dust{animation-play-state:paused}.flow-eyebrow{position:absolute;left:30px;right:30px;top:29px;display:flex;align-items:center;justify-content:space-between;font-size:9px;letter-spacing:.18em;color:#b6b6a2;z-index:120;pointer-events:none}.flow-eyebrow>span{font-size:22px;letter-spacing:.3em;color:#d3b081}
.flow-deck{position:absolute;inset:0;pointer-events:none}.flow-card{position:absolute;left:50%;top:51%;display:block;width:430px;padding:8px;border:1px solid #58614e;border-radius:17px;background:#253026;color:#eeeede;text-decoration:none;overflow:hidden;pointer-events:auto;transform-origin:center;backface-visibility:hidden;will-change:transform;box-shadow:0 20px 38px #0004}
.flow-card.is-current{border-color:#d6b286;box-shadow:0 22px 50px #0007,0 0 0 1px #e3c49416}.flow-card .project-visual{height:260px;min-height:0;aspect-ratio:auto;margin:0;border-radius:10px;pointer-events:none}.flow-card .gallery-visual{container-type:inline-size}
.flow-card-caption{display:grid;grid-template-columns:1fr auto;gap:9px 14px;padding:18px 14px 13px}.flow-card-caption strong{font-size:21px;letter-spacing:-.035em;line-height:1.2;font-weight:550}.flow-card-caption>span{font-size:23px;color:#d4b287;line-height:1}.flow-card-caption p{grid-column:1/-1;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:12px;line-height:1.7;color:#b5bdac;margin:0;min-height:40px}
.flow-card .life-visual{display:block;position:relative;padding:0}.flow-card .life-visual>img{position:absolute;left:6%;top:23%;width:88%;height:59%;object-fit:contain}.flow-card .visual-kicker{left:6%;top:8%;font-size:8px}.flow-card .visual-footnote{left:6%;bottom:7%;font-size:8px}.flow-card .sketch-inset{width:25%;padding:6px;left:5%;bottom:6%}.flow-card .sketch-inset img{height:auto}.flow-card .sketch-inset span{font-size:6px}.flow-card .visual-pill{font-size:9px;padding:5px 8px;right:5%;top:6%}.flow-card .phone-preview{border-width:3px;border-radius:18px}.flow-card .demo-titlebar{min-height:8px}
.flow-hint{position:absolute;bottom:24px;left:12px;right:12px;text-align:center;font-size:11px;letter-spacing:.02em;color:#aeb9a8;pointer-events:none}.flow-touch-hint{display:none}
.flow-navigation{position:relative;display:flex;align-items:center;justify-content:center;gap:25px;padding:20px 65px;min-height:92px;border-top:1px solid #424d3d;background:#1b241d}.flow-arrow,.flow-pause{display:grid;place-items:center;flex-shrink:0;background:none;border:1px solid #57634f;border-radius:50%;color:inherit;cursor:pointer}.flow-arrow{width:38px;height:38px;font-size:20px}.flow-arrow:disabled{opacity:.3;cursor:default}.flow-arrow:hover:not(:disabled),.flow-pause:hover{background:#344032}.flow-current{display:grid;gap:7px;text-align:center;width:300px;min-width:0;color:inherit;text-decoration:none}.flow-counter{font-size:9px;letter-spacing:.13em;color:#b1b69f}.flow-current strong{font-size:16px;font-weight:550;letter-spacing:-.025em}.flow-pause{position:absolute;right:24px;width:30px;height:30px;font-size:12px}
.flow-finale{background:linear-gradient(145deg,#ddd7bc,#b9c8af);color:#273c30;min-height:390px}.flow-finale-art{position:relative;height:180px;margin:16px 20px 0}.flow-finale-art i{position:absolute;left:18%;top:27px;width:60%;height:145px;border:1px solid #ffffff8a;border-radius:9px;background:#8da78e;transform:rotate(-12deg);box-shadow:0 12px 20px #263c3017}.flow-finale-art i:nth-child(2){background:#dbb98e;transform:translate(18px,-9px) rotate(4deg)}.flow-finale-art i:nth-child(3){background:linear-gradient(145deg,#eef0dc,#c6d3b5);transform:translate(35px,-14px) rotate(16deg)}.flow-finale-art>span{position:absolute;right:22%;top:35px;font-size:82px;line-height:1;transform:rotate(16deg);color:#52725b}.flow-finale-copy{padding:22px 25px 24px;display:grid;gap:14px}.flow-finale-copy>span:first-child{font-size:11px;color:#5d715d}.flow-finale-copy>strong{font-weight:550;font-size:33px;line-height:1.12;letter-spacing:-.055em}.flow-gallery-cta{display:flex;justify-content:center;align-items:center;min-height:44px;padding:10px 16px;border-radius:999px;background:#293f30;color:#f2f1dd;font-size:12px;margin-top:7px}
.featured-view-switch button:focus-visible,.flow-stage:focus-visible,.featured-flow a:focus-visible,.featured-flow button:focus-visible{outline:2px solid #e4a672;outline-offset:5px}
[data-theme=light] .featured-flow{background:#e4e8dc;color:#283b2d;border-color:#bbc7b3}[data-theme=light] .flow-navigation{background:#dae2d3;border-color:#bbc7b3}[data-theme=light] .flow-hint,[data-theme=light] .flow-eyebrow,[data-theme=light] .flow-counter{color:#5b6c56}[data-theme=light] .flow-lines{border-color:#84957640}[data-theme=light] .flow-arrow:hover:not(:disabled),[data-theme=light] .flow-pause:hover{background:#c8d4bf}
@media(max-width:650px){.featured-view-switch{margin:0 0 23px auto}.featured-view-switch button{font-size:11px;padding:9px 13px}.flow-stage{height:470px}.flow-eyebrow{top:23px;left:20px;right:20px;font-size:8px}.flow-eyebrow>span{font-size:18px}.flow-card{width:calc(100% - 72px);max-width:330px;padding:6px;border-radius:13px}.flow-card .project-visual{height:185px}.flow-card-caption{padding:14px 10px 10px;gap:7px 9px}.flow-card-caption strong{font-size:17px}.flow-card-caption p{font-size:10px;min-height:34px}.flow-card .visual-kicker,.flow-card .visual-footnote{font-size:6px}.flow-card .sketch-inset span{font-size:4px}.flow-card .visual-pill{font-size:7px}.flow-hint{bottom:21px;font-size:10px}.flow-desktop-hint{display:none}.flow-touch-hint{display:inline}.flow-navigation{min-height:88px;gap:12px;padding:17px 45px 17px 15px}.flow-arrow{width:30px;height:30px;font-size:17px}.flow-current strong{font-size:13px}.flow-pause{right:10px;width:25px;height:25px;font-size:10px}.flow-finale{min-height:300px}.flow-finale-art{height:126px;margin:7px 10px 0}.flow-finale-art i{height:102px;top:20px;width:55%;left:12%}.flow-finale-art>span{font-size:60px;top:21px;right:27%}.flow-finale-copy{padding:15px 18px 18px;gap:9px}.flow-finale-copy>span:first-child{font-size:9px}.flow-finale-copy>strong{font-size:26px}.flow-gallery-cta{min-height:37px;font-size:10px;margin-top:3px}}
@media(prefers-reduced-motion:reduce){.flow-dust{animation:none}.flow-card{will-change:auto}}
