/* A small, continuous portfolio above its own reflecting surface. */
/* Square icon masters retain their safe margins on every portfolio surface. */
.ap-work-image:has(img[src*="/portfolio/"]),.ap-case-hero:has(img[src*="/portfolio/"]){background:radial-gradient(ellipse at 50% 45%,var(--ap-soft),var(--ap-paper));border:1px solid var(--ap-line)}
.ap-work-image img[src*="/portfolio/"],.ap-capability-visual img[src*="/portfolio/"],.ap-mega-product img[src*="/portfolio/"]{object-fit:contain;object-position:center}
.ap-case-hero:has(img[src*="/portfolio/"]){border-radius:25px;padding:0;overflow:hidden}
.ap-case-hero img[src*="/portfolio/"]{height:clamp(280px,45vw,600px);width:100%;object-fit:contain;object-position:center;border-radius:0}
.ap-case-hero:has(img[src*="/portfolio/"]) figcaption{padding:0 22px 5px}
.ap-portfolio-section{padding:60px 0 0!important;border-top:1px solid var(--ap-line);border-bottom:1px solid var(--ap-line);overflow:hidden}
.ap-portfolio-heading{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:30px}
.ap-portfolio-heading h2{font-family:"Plex Mono",monospace;font-size:8px;font-weight:500;letter-spacing:.09em;line-height:1.7;color:var(--ap-detail);margin:0}
.ap-portfolio-heading>div{display:flex;align-items:center;gap:23px;flex:none}
.ap-portfolio-heading a{font-size:11px;display:flex;align-items:center;gap:14px;min-height:40px}
.ap-portfolio-heading a span{font-size:18px}
.ap-portfolio-heading .ap-portfolio-toggle{font-family:inherit;font-size:9px;border:1px solid var(--ap-border);background:var(--ap-header);color:var(--ap-muted);border-radius:30px;padding:9px 12px;cursor:pointer;min-height:38px}
.ap-portfolio-viewport{--circle-size:160px;--circle-gap:55px;--row-top:20px;--pool-top:245px;isolation:isolate;position:relative;height:465px;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;scroll-snap-type:x mandatory;mask-image:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent)}
.ap-portfolio-track{position:absolute;left:0;top:var(--row-top);display:flex;width:max-content;will-change:transform}
.ap-portfolio-group{display:flex;gap:var(--circle-gap);padding-right:var(--circle-gap);flex:none}
.ap-portfolio-group[aria-hidden="true"]{display:none}
[data-portfolio-mode="moving"] .ap-portfolio-viewport{overflow:hidden;scroll-snap-type:none}
[data-portfolio-mode="moving"] .ap-portfolio-group[aria-hidden="true"]{display:flex}
.ap-portfolio-item{position:relative;width:var(--circle-size);flex:none;display:flex;align-items:center;flex-direction:column;scroll-snap-align:start;text-align:center}
.ap-portfolio-circle{display:block;overflow:hidden;width:var(--circle-size);height:var(--circle-size);border-radius:50%;border:3px solid var(--ap-surface);box-shadow:0 8px 22px #16161617,0 0 0 1px var(--ap-border);background:var(--ap-soft);transition:transform .35s}
.ap-portfolio-circle img{width:100%;height:100%;display:block;object-fit:cover;object-position:center}
.ap-portfolio-item:hover .ap-portfolio-circle{transform:translateY(-4px)}
.ap-portfolio-name{font-size:13px;line-height:1.5;margin-top:16px;display:block;color:var(--ap-ink)}
.ap-portfolio-status{font-family:"Plex Mono",monospace;font-size:6px;color:var(--ap-detail);margin-top:6px;text-transform:uppercase;letter-spacing:.06em}
.ap-portfolio-reflection{position:absolute;top:calc(2*(var(--pool-top) - var(--row-top)) - var(--circle-size));width:var(--circle-size);height:var(--circle-size);pointer-events:none;opacity:.25;mask-image:linear-gradient(#000b,transparent);filter:blur(.6px)}
.ap-portfolio-reflection img{display:block;width:100%;height:100%;border-radius:50%;object-fit:cover;transform:scaleY(-1)}
.ap-portfolio-pool{position:absolute;top:var(--pool-top);left:0;right:0;bottom:0;pointer-events:none;border-top:1px solid var(--ap-line);background:linear-gradient(0deg,var(--ap-paper),transparent),linear-gradient(180deg,#b5a3870e,#b7ad9f0d);z-index:-1}
.ap-portfolio-water{position:absolute;left:0;top:var(--pool-top);width:100%;height:calc(100% - var(--pool-top));pointer-events:none;opacity:0;z-index:3}
.ap-portfolio-water.ready{opacity:1}
[data-portfolio-webgl="ready"] .ap-portfolio-reflection{visibility:hidden}
@media(max-width:850px){.ap-portfolio-viewport{--circle-size:145px;--circle-gap:40px;--pool-top:225px;height:430px}.ap-portfolio-heading{gap:20px}.ap-portfolio-heading>div{gap:15px}}
@media(max-width:680px){.ap-portfolio-section{padding-top:32px!important}.ap-portfolio-heading{align-items:flex-start;gap:18px;margin-bottom:22px}.ap-portfolio-heading h2{font-size:6px;max-width:160px;line-height:1.9;padding-top:6px}.ap-portfolio-heading>div{flex-direction:column;align-items:flex-end;gap:3px}.ap-portfolio-heading a{font-size:10px;min-height:34px;gap:9px}.ap-portfolio-toggle{font-size:8px;min-height:35px;padding:7px 10px}.ap-portfolio-viewport{--circle-size:112px;--circle-gap:30px;--pool-top:195px;--row-top:15px;height:365px;mask-image:linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent)}.ap-portfolio-name{font-size:12px;margin-top:14px}.ap-portfolio-status{font-size:6px;margin-top:5px}.ap-portfolio-circle{border-width:2px}}
@media(prefers-reduced-motion:reduce){.ap-portfolio-circle{transition:none}.ap-portfolio-item:hover .ap-portfolio-circle{transform:none}.ap-portfolio-track{will-change:auto}}

@media(max-width:680px){.ap-portfolio-heading .ap-portfolio-toggle{font-size:8px}}

/* Match optical subject size across the thirteen transparent masters. */
img[src$="/portfolio/duma-energy.webp"]{--ap-art-scale:0.9029}
img[src$="/portfolio/skolr-ai.webp"]{--ap-art-scale:0.8732}
img[src$="/portfolio/invo-tax.webp"]{--ap-art-scale:0.9366}
img[src$="/portfolio/icubelabs.webp"]{--ap-art-scale:0.9074}
img[src$="/portfolio/callr-suite.webp"]{--ap-art-scale:1.0283}
img[src$="/portfolio/ari-market.webp"]{--ap-art-scale:1.0077}
img[src$="/portfolio/dualtakes.webp"]{--ap-art-scale:0.8783}
img[src$="/portfolio/haum.webp"]{--ap-art-scale:1.0077}
img[src$="/portfolio/taxxy.webp"]{--ap-art-scale:0.9444}
img[src$="/portfolio/darkmtr.webp"]{--ap-art-scale:0.8607}
img[src$="/portfolio/kornerstone.webp"]{--ap-art-scale:1.0077}
img[src$="/portfolio/haiti-news-network.webp"]{--ap-art-scale:1.0133}
img[src$="/portfolio/lyfemax-ai.webp"]{--ap-art-scale:0.9047}
img[src*="/portfolio/"]{transform:scale(var(--ap-art-scale,1));transform-origin:center}
.ap-work-image:hover img[src*="/portfolio/"]{transform:scale(calc(var(--ap-art-scale,1)*1.035))}
.ap-portfolio-reflection img[src*="/portfolio/"]{transform:scaleY(-1) scale(var(--ap-art-scale,1))}
.ap-service-project-image img[src*="/portfolio/"]{object-fit:contain;object-position:center}
.ap-service-project-image:hover img[src*="/portfolio/"]{transform:scale(calc(var(--ap-art-scale,1)*1.03))}
