/* Portfolio refinement and independently scoped product identities. */
.grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem}.project-item{min-width:0;display:flex}.project-item[hidden]{display:none}.project-item .card{width:100%}.card__title{font-size:1.35rem}.card__tag{font-size:1rem}.card__body{padding:1.4rem}.card__foot{align-items:flex-end}.card__foot .chips{gap:.3rem}.card__foot .chip{font-size:.65rem;padding:.25rem .5rem}.collection-tools{display:flex;justify-content:space-between;align-items:end;gap:1rem;margin:1.5rem 0}.filters{display:flex;flex-wrap:wrap;gap:.5rem}.filter{font:inherit;font-size:.88rem;border:1px solid var(--steel);border-radius:100px;color:var(--muted);padding:.6rem 1rem;background:#111a2b;cursor:pointer}.filter.selected{color:#08121a;background:var(--aqua);border-color:var(--aqua)}.search-label{font-size:.72rem;color:var(--muted);display:grid;gap:.3rem}.project-search{background:#111a2b;border:1px solid var(--steel);border-radius:9px;color:var(--mist);font:inherit;padding:.6rem .8rem;max-width:100%}.result-count{font-size:.75rem;color:var(--muted);margin-bottom:1rem}.project-status{font-size:.8rem;color:var(--aqua);margin:1rem 0}.detail__banner{aspect-ratio:auto;min-height:240px}.detail__banner .card__img{position:relative;max-height:500px;object-fit:contain}.detail__banner .cover-svg{position:absolute;inset:0}.gallery img{cursor:zoom-in;object-fit:contain;background:#090e18}.product-page{position:relative;z-index:5;padding:calc(var(--navh) + 2rem) 0 4rem;background:linear-gradient(155deg,#101c2aee,#0b0f1af2)}.product-page h1{font-size:clamp(2.8rem,5.6vw,5rem);line-height:1.06;letter-spacing:-.04em}.product-page em{font-style:normal;color:var(--product-accent,var(--aqua))}.product-intro{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:3rem;padding:2rem 0 4rem}.product-intro p{color:var(--muted);margin:1.5rem 0;font-size:1.15rem;max-width:48ch}.product-art{position:relative;aspect-ratio:4/3;overflow:hidden;border:1px solid var(--steel);border-radius:18px;box-shadow:0 25px 80px #0005}.product-art .card__img{object-fit:contain;background:#0a0f1a}.variant-grid,.feature-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin:0 0 3rem}.variant-grid section,.feature-strip section{padding:1.6rem;border-top:2px solid var(--product-accent,var(--aqua));background:#ffffff04}.variant-grid h2,.feature-strip h2{font-size:1.35rem;margin:.8rem 0}.variant-grid p,.feature-strip p{color:var(--muted)}.variant-grid span{font-size:.72rem;color:var(--product-accent)}.compat-note{border:1px solid #58b6ff44;padding:1rem;border-radius:12px;color:var(--muted)}.product-content{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(260px,1fr);gap:3rem;padding:4rem 0;scroll-margin-top:90px}.product-content h2{font-size:2rem;margin-bottom:1.5rem}.product-copy p{color:var(--muted);margin-bottom:1.2rem}.product-support{padding:1.5rem 0;color:var(--muted);font-size:.9rem}.product-support a{display:inline-block;margin-top:.7rem}.product-return{display:flex;align-items:center;flex-wrap:wrap;gap:2rem;padding-top:2rem;border-top:1px solid var(--steel)}.product-projector{--product-accent:#58b6ff;background:radial-gradient(at 90% 0%,#143b5eee,transparent 55%),#0b121df5}.product-converter{--product-accent:#f5b54c;background:linear-gradient(120deg,#201b12f5,#0b0f1af5)}.workflow{display:flex;flex-wrap:wrap;gap:.7rem;color:#f5b54c;font-size:.75rem}.workflow span{border:1px solid #f5b54c44;padding:.7rem;border-radius:5px}.product-trimmer{--product-accent:#4fd8c6;background:#0b1719f5}.trim-preview{display:grid;grid-template-columns:2fr 1fr;gap:7px;padding:20px;min-height:320px;border:1px solid #4fd8c655;border-radius:12px;background:repeating-linear-gradient(0deg,transparent 0 29px,#4fd8c610 30px),repeating-linear-gradient(90deg,transparent 0 29px,#4fd8c610 30px)}.trim-preview div{border:1px solid #4fd8c699;display:grid;place-items:center;font-family:var(--mono);color:#4fd8c6;background:#4fd8c60b}.trim-preview div:nth-child(2){background:#8b8dff18;color:#b6b7ff}.trim-preview div:nth-child(3){grid-column:span 2}.trim-preview span{grid-column:span 2;font-size:.7rem;color:var(--muted)}.trimmer-banner{position:relative;aspect-ratio:21/8;overflow:hidden}.trimmer-banner .card__img{object-fit:contain}.product-arcade{--product-accent:#b2a0ff;background:radial-gradient(at 50% 10%,#352052ee,#0a0915f5 60%)}.arcade-hero{text-align:center;max-width:900px;margin:auto}.arcade-hero p{margin:1.3rem auto;color:var(--muted)}.arcade-art{position:relative;aspect-ratio:16/6;margin:2rem auto;max-width:720px;overflow:hidden}.arcade-art .card__img{object-fit:contain;image-rendering:pixelated}.arcade-hero h1{font-family:var(--mono);font-size:clamp(2rem,4.5vw,4rem);letter-spacing:-.05em}.arcade-stats{display:grid;grid-template-columns:repeat(3,1fr);text-align:center;border-block:1px solid #b2a0ff44;margin-top:3rem;padding:2rem;font-size:.8rem;color:var(--muted)}.arcade-stats strong{display:block;font-size:2.5rem;color:#b2a0ff}.gallery-heading{margin-top:3rem}.detail__grid aside:empty{display:none}.back{margin-bottom:1rem}@media(max-width:1000px){.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.product-intro{gap:1.5rem}.product-content{gap:1.5rem}}@media(max-width:650px){.grid,.product-intro,.product-content,.variant-grid,.feature-strip{grid-template-columns:1fr}.collection-tools{align-items:stretch;flex-direction:column}.project-search{width:100%}.row-head{align-items:start;flex-direction:column}.product-art{aspect-ratio:16/10}.product-intro{padding:1rem 0 2rem}.product-content{padding:3rem 0}.arcade-stats{padding:1.5rem .4rem;font-size:.65rem}.arcade-stats strong{font-size:2rem}.card__foot{flex-wrap:wrap}.product-page h1{font-size:clamp(2.5rem,10vw,3.8rem)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
/* Turbo ScrumBag: a dedicated lime workspace identity with replaceable artwork. */
.product-scrumbag{--product-accent:#c5ee72;--aqua:#c5ee72;background:radial-gradient(ellipse at 85% 2%,#c5ee7212,transparent 48%),#101613f7}.scrum-hero{display:grid;grid-template-columns:1fr 1.2fr;gap:3rem;align-items:center;padding:3rem 0 4rem}.scrum-hero h1{font-size:clamp(2.8rem,5.2vw,4.8rem)}.scrum-hero-copy>p{font-size:1.1rem;color:#acb9b0;max-width:42ch;margin-top:1.5rem}.scrum-hero-copy .scrum-status{font-size:.72rem;color:#c5ee72}.scrum-primary{background:#c5ee72;color:#142012;font-weight:700}.scrum-primary:hover{background:#d6fc91;transform:translateY(-2px)}.scrum-board-placeholder{margin:0;padding:1.2rem;background:#1b241f;border:1px solid #52624b;border-radius:16px;box-shadow:0 30px 70px #0005;transform:rotate(-1.5deg)}.scrum-board-top{display:flex;align-items:center;justify-content:space-between;color:#c5ee72;font-size:.6rem;letter-spacing:.1em;padding-bottom:1rem;border-bottom:1px solid #ffffff12}.scrum-board-dot{height:8px;width:8px;border-radius:50%;background:#c5ee72}.scrum-board-summary{display:flex;flex-direction:column;gap:.2rem;padding:1.4rem 0}.scrum-board-summary>strong{font-size:1.4rem;letter-spacing:-.03em}.scrum-board-summary>span{color:#9eb1a3;font-size:.6rem}.scrum-board-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem}.scrum-column-title{display:flex;justify-content:space-between;gap:.2rem;color:#c5ee72;font-size:.7rem;margin-bottom:.7rem}.scrum-column-title span:last-child{color:#90a286}.scrum-example-task{padding:.8rem;margin-bottom:.6rem;background:#29342c;border:1px solid #ffffff10;border-radius:7px;min-height:126px;display:flex;flex-direction:column}.scrum-example-task strong{font-size:.78rem;line-height:1.35;margin:.5rem 0}.scrum-task-label{color:#c5ee72;font-size:.47rem;letter-spacing:.04em}.scrum-task-lines{width:70%;height:12px;background:repeating-linear-gradient(0deg,transparent 0 3px,#94ac9044 3px 4px);margin:0 0 .7rem}.scrum-task-foot{color:#a4b59e;font-size:.49rem;margin-top:auto}.scrum-board-placeholder figcaption{font-size:.54rem;color:#adbaaa;margin:.7rem 0 0;line-height:1.6}.scrum-overview{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;padding:1.5rem 0;border-block:1px solid #c5ee7240;font-size:.68rem;color:#b1c4a6}.scrum-benefits{display:grid;grid-template-columns:1fr 1.5fr;gap:4rem;padding:5rem 0 1rem}.scrum-section-heading h2{font-size:clamp(2rem,4vw,3.3rem)}.scrum-section-heading p{color:#acb9b0;margin-top:1.3rem;max-width:30ch}.scrum-features{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.scrum-features section{border-top:1px solid #c5ee7244;padding-top:1rem}.scrum-features span{color:#c5ee72;font-size:.7rem}.scrum-features h3{font-size:1.2rem;margin:.7rem 0}.scrum-features p{font-size:.95rem;color:#acb9b0}.product-scrumbag .dist{background:#1b241f;border-color:#52624b}.product-scrumbag .dl__row{flex-wrap:wrap}.product-scrumbag .dl__meta{min-width:0}.product-scrumbag .ilink{color:#c5ee72}.product-scrumbag .product-copy p{color:#acb9b0}.product-scrumbag .product-art{background:#1b241f}.scrum-visual{min-width:0}@media(max-width:1000px){.scrum-hero{gap:1.5rem;grid-template-columns:1fr 1fr}.scrum-board-placeholder{padding:.8rem}.scrum-example-task{padding:.5rem}.scrum-benefits{gap:2rem}}@media(max-width:750px){.scrum-hero,.scrum-benefits{grid-template-columns:1fr}.scrum-board-placeholder{transform:none;margin-top:1rem}.scrum-overview{grid-template-columns:1fr 1fr}.scrum-benefits{padding-top:3rem}.scrum-hero{padding-top:1rem}.scrum-board-summary>strong{font-size:1.2rem}}@media(max-width:380px){.scrum-board-columns{gap:.4rem}.scrum-features{grid-template-columns:1fr}.scrum-example-task strong{font-size:.65rem}.scrum-board-top{font-size:.5rem}}
/* Animated Turbo backdrop: confined to the ScrumBag route. */
.product-scrumbag{isolation:isolate;background:#131c36;--scrum-turbo-motion:running}.product-scrumbag>.wrap{position:relative;z-index:1}.scrum-turbo-backdrop{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden;contain:strict;background:#131c36 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='150' height='150'%3E%3Cpath d='m27 16 3 8 8 3-8 3-3 8-3-8-8-3 8-3Z' fill='none' stroke='%23a7d6ff' opacity='.14'/%3E%3Ccircle cx='106' cy='103' r='2' fill='%23d2b5ff' opacity='.2'/%3E%3C/svg%3E")}.scrum-turbo-glow{position:absolute;inset:-25%;background:radial-gradient(ellipse at 20% 20%,#558bdb26,transparent 44%),radial-gradient(ellipse at 85% 75%,#aa71d226,transparent 47%);animation:scrum-turbo-glow 17s ease-in-out infinite alternate}.scrum-turbo-checkers{position:absolute;inset:-80px;background:repeating-conic-gradient(#aacaff12 0% 25%,transparent 0% 50%) 0 0/64px 64px;mask-image:radial-gradient(ellipse at 100% 100%,#000,transparent 64%);animation:scrum-turbo-checkers 18s linear infinite}.scrum-turbo-stripes{position:absolute;inset:-80px;background:repeating-linear-gradient(135deg,#b5cbff0e 0 12px,transparent 12px 30px);mask-image:linear-gradient(110deg,#000,transparent 60%);animation:scrum-turbo-stripes 14s linear infinite}.scrum-turbo-shape{position:absolute;width:140px;color:#a7d6ff;opacity:.3;will-change:transform}.scrum-turbo-shape svg{width:100%;height:auto;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.scrum-turbo-planet{right:4%;top:12%;width:200px;animation:scrum-turbo-orbit 12s ease-in-out infinite alternate}.scrum-turbo-stars{left:2%;top:48%;width:130px;color:#d2b5ff;animation:scrum-turbo-drift 9s ease-in-out infinite alternate-reverse}.scrum-turbo-bolt{right:15%;bottom:3%;width:110px;color:#d2b5ff;animation:scrum-turbo-drift 11s ease-in-out infinite alternate}.scrum-turbo-plane{left:44%;top:2%;width:100px;animation:scrum-turbo-glide 14s ease-in-out infinite alternate}.scrum-turbo-spark{left:44%;bottom:14%;width:80px;color:#a1e6ce;animation:scrum-turbo-orbit 10s ease-in-out infinite alternate-reverse}.scrum-turbo-backdrop>*{animation-play-state:var(--scrum-turbo-motion)}.scrum-page-toolbar{display:flex;justify-content:space-between;align-items:center;gap:1rem}.scrum-page-toolbar .back{margin:0}.scrum-turbo-hidden .product-scrumbag{--scrum-turbo-motion:paused}.scrum-turbo-page #bg{visibility:hidden}.scrum-turbo-page .overlay{visibility:hidden}.scrum-turbo-page .nav.scrolled{background:#131c36ed}.product-scrumbag .scrum-board-placeholder{background:#1b2947e8;border-color:#5775a4}.product-scrumbag .scrum-example-task{background:#223354}.product-scrumbag .scrum-hero-copy>p,.product-scrumbag .scrum-section-heading p,.product-scrumbag .scrum-features p,.product-scrumbag .product-copy p{color:#b6c9e5}.product-scrumbag .dist{background:#1b2947ed;border-color:#5775a4}.scrum-turbo-page .footer{background:#131c36f2}
@keyframes scrum-turbo-orbit{from{transform:translate3d(-38px,-32px,0) rotate(-20deg)}to{transform:translate3d(42px,65px,0) rotate(23deg)}}@keyframes scrum-turbo-drift{from{transform:translate3d(-30px,40px,0) rotate(-18deg)}to{transform:translate3d(55px,-55px,0) rotate(20deg)}}@keyframes scrum-turbo-glide{from{transform:translate3d(-90px,30px,0) rotate(-15deg)}to{transform:translate3d(100px,-24px,0) rotate(17deg)}}@keyframes scrum-turbo-glow{from{transform:translate3d(-3%,-2%,0) rotate(-4deg)}to{transform:translate3d(5%,4%,0) rotate(5deg)}}@keyframes scrum-turbo-checkers{to{transform:translate3d(64px,64px,0)}}@keyframes scrum-turbo-stripes{to{transform:translate3d(59.4px,0,0)}}@media(max-width:650px){.scrum-turbo-shape{opacity:.2}.scrum-turbo-planet{width:140px;right:-2%}.scrum-turbo-plane{left:50%;width:75px}.scrum-turbo-stars{width:90px;left:-5%}.scrum-turbo-spark{display:none}.scrum-page-toolbar{align-items:start;flex-wrap:wrap}}@media(prefers-reduced-motion:reduce){.scrum-turbo-backdrop>*{animation:none!important;will-change:auto}}

/* Preserve the original tilted-board treatment with the real, uncropped screenshot. */
.scrum-screenshot{margin:0;border:1px solid #5775a4;border-radius:16px;overflow:hidden;background:#f4f6ff;box-shadow:0 30px 70px #0005;transform:rotate(-1.5deg)}.scrum-screenshot img{display:block;width:100%;height:auto}@media(max-width:750px){.scrum-screenshot{margin:1rem .35rem 0}}

.scrum-ownership{display:grid;grid-template-columns:1fr 1.35fr;gap:3rem;margin-top:3rem;padding:2.5rem;border:1px solid #5775a45c;border-radius:18px;background:#1b2947b3}.scrum-ownership h2{font-size:clamp(2rem,4vw,3.3rem);line-height:1.1;margin:1rem 0 1.25rem}.scrum-ownership p{color:#b6c9e5;line-height:1.7}.scrum-ownership-options{display:grid;grid-template-columns:1fr 1fr;gap:1.6rem}.scrum-ownership-options section>span{font-size:.65rem;color:#c5ee72}.scrum-ownership h3{font-size:1.2rem;margin:.65rem 0}.scrum-ownership-options section p{font-size:.95rem}.scrum-ownership-route{grid-column:1/-1;display:flex;align-items:center;flex-wrap:wrap;gap:.75rem;font-size:.7rem;color:#d7e4f5}.scrum-ownership-route>span:not(.scrum-ownership-connector){padding:.8rem 1rem;border:1px solid #5775a4;border-radius:8px;background:#131c36}.scrum-ownership-connector{color:#c5ee72}.scrum-ownership-note{grid-column:1/-1;font-size:.85rem;margin:0}@media(max-width:1000px){.scrum-ownership{grid-template-columns:1fr;gap:2rem}}@media(max-width:550px){.scrum-ownership{padding:1.4rem}.scrum-ownership-options{grid-template-columns:1fr}.scrum-ownership-route{gap:.55rem}.scrum-ownership-connector{width:100%}}

.trimmer-screenshot{min-width:0;position:relative;margin:1rem .4rem;background:#101b20;border:1px solid #4fd8c66b;border-radius:16px;overflow:hidden;box-shadow:0 28px 65px #0007;transform:rotate(2deg)}.trimmer-screenshot img{display:block;width:100%;height:auto}.scrum-ownership p,.scrum-features p{white-space:pre-line}.dl__row.dl__row--action{display:flex;flex-direction:column;align-items:stretch;gap:.35rem;padding:0;border:0;background:none}.dl__row .btn.dl__action{width:100%;min-height:48px;padding:.9rem 1rem;font-size:.75rem;line-height:1.5;text-align:center;white-space:normal}.dl__action>span:first-child{min-width:0;overflow-wrap:anywhere}.dl__row--action>.dl__note{padding:0 .25rem .5rem;color:var(--muted)}.product-scrumbag .dl__action.btn--ghost{border-color:#718fbc;background:#182b4b}.product-scrumbag .dl__action.btn--primary{background:linear-gradient(120deg,#59d3bf,#8e91ff);color:#071019}@media(max-width:650px){.trimmer-screenshot{margin:1rem .35rem}}

.profiler-screenshot{position:relative;min-width:0;margin:1rem .4rem;border:1px solid #8b8dff66;border-radius:14px;overflow:hidden;background:#111427;box-shadow:0 28px 65px #0007;transform:rotate(-1.5deg)}.profiler-screenshot img{display:block;width:100%;height:auto}@media(max-width:650px){.profiler-screenshot{margin:1rem .35rem}}

.product-screenshot{position:relative;min-width:0;margin:1rem .4rem;border:1px solid color-mix(in srgb,var(--product-accent,var(--aqua)) 45%,transparent);border-radius:16px;overflow:hidden;background:#101623;box-shadow:0 28px 65px #0007;transform:rotate(1.5deg)}.product-screenshot img{display:block;width:100%;height:auto}.product-screenshot.profiler-screenshot{transform:rotate(-1.5deg)}.product-screenshot.trimmer-screenshot{transform:rotate(2deg)}.product-screenshot.arcade-intro-art{max-width:720px;margin:2rem auto;transform:rotate(-1deg)}.arcade-intro-art img{image-rendering:pixelated}.detail__intro-image{display:block;width:100%;height:auto;max-height:640px;object-fit:contain}.detail__intro{background:var(--surface)}@media(max-width:650px){.product-screenshot{margin:1rem .35rem}}

/* Selected new projects extend the welcome page without adding the full collection. */
.home-latest{padding:5rem 0 7rem}.home-latest-heading{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:2.2rem}.home-latest-heading h2{font-size:clamp(2.6rem,5vw,4.8rem);line-height:1.05;letter-spacing:-.05em;margin-top:.7rem}.home-latest-heading .ilink{font-size:.8rem}.home-latest-list{display:grid;gap:2rem}.latest-feature{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:center;border:1px solid var(--steel);border-radius:22px;overflow:hidden;background:var(--surface);text-decoration:none;box-shadow:0 25px 65px #0003;transition:transform .25s,border-color .25s}.latest-feature:hover{transform:translateY(-5px);border-color:var(--aqua)}.latest-feature:focus-visible{outline:3px solid var(--aqua);outline-offset:6px}.latest-feature-copy{padding:clamp(1.7rem,4vw,3.3rem);min-width:0}.latest-feature-label{font-size:.65rem;letter-spacing:.13em;color:var(--aqua)}.latest-feature h3{font-size:clamp(1.8rem,3.1vw,3rem);line-height:1.15;letter-spacing:-.04em;margin:1.2rem 0}.latest-feature p{font-size:1rem;line-height:1.8;color:var(--muted);max-width:45ch}.latest-feature-action{display:flex;align-items:center;justify-content:space-between;gap:1rem;color:var(--aqua);font-size:.73rem;margin-top:2rem}.latest-feature-action>span{font-size:1.5rem}.latest-feature-art{min-width:0;position:relative;padding:2rem 2rem 2rem 0}.latest-feature-art img{display:block;width:100%;height:auto;border-radius:10px;border:1px solid var(--steel);box-shadow:0 15px 40px #0004}.latest-feature-art .cover-svg{position:relative;width:100%;aspect-ratio:16/10}.home-latest-cue{margin-top:2.2rem;color:var(--muted);background:none;border:0;border-bottom:1px solid var(--steel);padding:.5rem 0;cursor:pointer;font-size:.65rem;letter-spacing:.1em}.home-latest-cue:hover{color:var(--aqua)}@media(max-width:750px){.home-latest{padding:3rem 0 5rem}.latest-feature{grid-template-columns:1fr}.latest-feature-art{padding:0 1.5rem 1.5rem}.home-latest-heading{align-items:start;flex-direction:column;gap:1rem}.latest-feature h3{font-size:2rem}.latest-feature-copy{padding:1.7rem}}
