/* JSON digital laboratory — scoped to services and selected work. */
.portfolio-card .portfolio-logo-frame{width:fit-content;max-width:100%;min-height:64px!important;padding:10px 14px!important;border-radius:9px}.portfolio-card .portfolio-logo-frame img{max-height:48px;width:auto;max-width:180px;height:auto}.portfolio-card .portfolio-logo-frame small{font-size:9px!important}
.capabilities{padding:48px 32px;background:radial-gradient(circle at 100% 0,#a3e6350b,transparent 35%),#101010;border:1px solid #303030;border-radius:24px}
.capabilities-heading h2,.portfolio-heading h2{font-size:clamp(30px,3.5vw,46px)!important;font-weight:550;line-height:1.12;letter-spacing:-.045em;max-width:680px}
.capabilities-heading>p,.portfolio-heading>p{font-size:14px;line-height:1.7;color:#a5a5a5}
.capabilities-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.capability-card{position:relative;overflow:hidden;padding:16px 20px 24px;border:1px solid #333;border-radius:18px;background:linear-gradient(145deg,#1c1c1c,#141414);box-shadow:0 10px 28px #0002;transition:transform .3s,border-color .3s,box-shadow .3s}
.capability-card:last-child{grid-column:auto}
.capability-card:hover,.capability-card:focus-within{transform:translateY(-4px);border-color:#a3e63599;box-shadow:0 8px 30px #a3e6350a}
.capability-card h3{font-size:18px;line-height:1.35;font-weight:550;letter-spacing:-.02em;margin:12px 0 9px}
.capability-card p{font-size:12px;line-height:1.8;color:#aaa;margin:0}
.capability-number{font:10px monospace;letter-spacing:.12em;opacity:.6}
.capabilities .capability-visual{position:relative;height:146px;margin:0 0 20px;border:1px solid #343434;border-radius:12px;background:radial-gradient(#ffffff13 .7px,transparent .7px) 0 0/12px 12px,#101010;filter:none;isolation:isolate}
.capability-visual:after{display:none}
.capabilities .mini-browser,.capabilities .mini-dashboard,.capabilities .mini-checkout,.capabilities .mini-calendar,.capabilities .mini-search,.capabilities .mini-support{width:76%;max-width:210px;background:#222;color:#ddd;border:1px solid #555;box-shadow:0 8px 24px #0008}
.capabilities .mini-browser strong,.capabilities .mini-browser>i,.capabilities .mini-dashboard span,.capabilities .mini-checkout i,.capabilities .mini-calendar .selected{background:#a3e635;color:#111}
.capabilities .mini-dashboard b,.capabilities .mini-search b{background:#303030;color:#ddd}
.capabilities .mini-search strong,.capabilities .mini-checkout strong,.capabilities .mini-support strong{color:#a3e635}
.capabilities .mini-calendar b,.capabilities .mini-checkout b{color:#ddd}
.capabilities .mini-flow span{font:9px monospace;border-radius:8px;padding:10px 8px}
.capabilities .mini-flow i{background:linear-gradient(90deg,#a3e635,#c4a0f0);height:2px}
.capabilities .mini-analytics{border-color:#555}
.capabilities .mini-analytics i:nth-of-type(1){background:#a3e635}.capabilities .mini-analytics i:nth-of-type(2){background:#c1a0eb}.capabilities .mini-analytics i:nth-of-type(3){background:#e6a48b}.capabilities .mini-analytics i:nth-of-type(4){background:#d6d6d6}
.capabilities .mini-analytics b{font:9px monospace;color:#a3e635}
.lab-pixel-j{display:grid!important;grid-template-columns:repeat(4,12px);grid-template-rows:repeat(5,12px);gap:3px;transform:none!important;animation:none!important}
.lab-pixel-j em{display:block;background:#a3e635;border-radius:1px;animation:labAssemble 4s both infinite;animation-delay:calc(var(--tile)*70ms);box-shadow:0 0 12px #a3e63522}
.capabilities .mini-motion{width:auto}.capabilities .mini-motion>i,.capabilities .mini-motion>b{display:none}
@keyframes labAssemble{0%,8%{opacity:0;transform:translateY(-18px) scale(.65)}25%,85%{opacity:1;transform:none}100%{opacity:0;transform:translateY(8px)}}
.capabilities .studio-process,.capabilities .partnership-panel{background:#151515;border-color:#353535;box-shadow:none}
.capabilities .process-copy h3,.capabilities .partnership-panel h3{font-size:clamp(22px,2.4vw,30px)}
.portfolio{padding-top:48px}
.portfolio-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.portfolio-grid-featured{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:22px}
.portfolio-card{display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid #353535;border-radius:18px;background:#151515;box-shadow:none;transition:transform .3s,border-color .3s,box-shadow .3s}
.portfolio-card:hover{transform:translateY(-4px);border-color:#a3e63588;box-shadow:0 12px 32px #0003}
.portfolio-card .portfolio-visual{width:auto;margin:12px 12px 0;border-radius:10px;border:1px solid #3c3c3c;overflow:hidden;position:relative}
.portfolio-card .portfolio-copy{padding:22px 20px;min-width:0}
.portfolio-card .portfolio-copy h3{font-size:21px;color:#eee;line-height:1.25}
.portfolio-card .portfolio-copy>p{font-size:12px;line-height:1.8;color:#aaa}
.portfolio-card .portfolio-meta{font-size:8px;line-height:1.6;letter-spacing:.1em;color:#a3e635}
.portfolio-card .portfolio-tags{gap:6px;flex-wrap:wrap}
.portfolio-card .portfolio-tags li{font-size:9px;padding:6px 9px;border:1px solid #3d3d3d;background:#222;color:#ccc;border-radius:20px}
.portfolio-card .portfolio-tags li:hover{background:#292f20;color:#d1f69a}
.portfolio-card .portfolio-visit{font-size:9px;padding:7px 10px;background:#111e;color:#d0edaa;border:1px solid #a3e63566;border-radius:20px;backdrop-filter:blur(8px)}
.lab-window-bar{height:25px;display:flex;align-items:center;gap:4px;padding:0 9px;border-bottom:1px solid #393939;background:#212121;color:#929292;font:7px monospace;position:relative;z-index:3}
.lab-window-bar i{width:4px;height:4px;border-radius:50%;background:#626262}.lab-window-bar i:first-child{background:#a3e635}.lab-window-bar span{margin-left:auto;letter-spacing:.1em}
@media(max-width:1050px){.portfolio-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){.capabilities-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.capabilities{padding:32px 20px}}
@media(max-width:600px){.capabilities{padding:28px 14px}.capabilities-grid,.portfolio-grid{grid-template-columns:minmax(0,1fr)}.capabilities .capability-visual{height:150px}.capabilities-heading h2,.portfolio-heading h2{font-size:32px!important}.portfolio-card .portfolio-copy{padding:22px}.portfolio-heading{gap:16px}.capability-card:last-child{grid-column:auto}}
@media(prefers-reduced-motion:reduce){.lab-pixel-j em{animation:none}.capability-card,.portfolio-card{transition:none}.capability-card:hover,.portfolio-card:hover{transform:none}}
