.portfolio-showcase{position:relative;isolation:isolate;overflow:hidden;padding:80px var(--gutter) 60px;background:#080819;color:var(--paper);text-align:center}
.showcase-glow{position:absolute;inset:-20%;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 20% 40%,#191970aa,transparent 50%),radial-gradient(ellipse at 85% 65%,#89c4f438,transparent 45%);animation:showcaseGlow 12s ease-in-out infinite alternate}
.showcase-heading{position:relative;margin:0 auto 42px;max-width:1000px}.showcase-heading .eyebrow{color:var(--sky);margin-bottom:18px}.showcase-heading h2{font-family:var(--display);font-size:clamp(48px,6.5vw,96px);font-weight:400;line-height:1}.showcase-heading h2 span{color:var(--sky)}.showcase-subtitle{margin-top:18px;color:#b7bbcf;font-size:16px}
.showcase-project{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:center;gap:6px 14px;margin-top:26px}
.showcase-project-name{font-family:var(--display);font-weight:400;font-size:clamp(24px,2.6vw,34px);letter-spacing:.005em;text-transform:uppercase;line-height:1;color:var(--paper)}
.showcase-project-detail{font-family:var(--mono);font-size:10px;letter-spacing:.055em;text-transform:uppercase;color:var(--sky)}
.showcase-stage{perspective:1400px;max-width:1000px;margin:auto;padding:12px 0 20px}
.showcase-slides{display:grid}
.showcase-preview{grid-area:1/1;display:block;position:relative;border-radius:24px;overflow:hidden;border:1px solid #ffffff25;box-shadow:0 35px 80px #0008,0 0 50px #89c4f413;transform:rotateX(5deg);transition:transform .7s cubic-bezier(.22,1,.36,1),box-shadow .7s;color:white;outline-offset:8px}
.showcase-preview img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.showcase-preview:hover,.showcase-preview:focus-visible{transform:rotateX(0) translateY(-6px);box-shadow:0 40px 90px #0009,0 0 60px #89c4f430}.showcase-preview:focus-visible{outline:2px solid var(--sky)}
.showcase-open{position:absolute;right:20px;bottom:20px;display:flex;gap:22px;align-items:center;padding:12px 20px;background:#080819e6;border:1px solid #89c4f470;border-radius:100px;font-size:14px;backdrop-filter:blur(12px);transition:background .3s}.showcase-preview:hover .showcase-open{background:var(--blue)}
.showcase-preview:not(.is-active){opacity:0;pointer-events:none;transform:rotateX(5deg) scale(.985)}
.showcase-preview{opacity:1;transition:opacity .5s ease,transform .7s cubic-bezier(.22,1,.36,1),box-shadow .7s}
.showcase-controls{display:flex;align-items:center;justify-content:center;gap:22px;margin-top:24px}
.showcase-arrow{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:transparent;border:1px solid #89c4f470;color:var(--paper);font-size:17px;line-height:1;transition:background .25s,border-color .25s,transform .25s}
.showcase-arrow:hover:not(:disabled){background:var(--blue);border-color:var(--sky);transform:translateY(-2px)}
.showcase-arrow:disabled{opacity:.3;cursor:default}
.showcase-thumbs{display:flex;align-items:flex-start;gap:16px}
.showcase-thumb{display:block;width:162px;padding:0;background:transparent;text-align:center;opacity:.5;transition:opacity .25s,transform .25s}
.showcase-thumb img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border:1px solid #ffffff2e;border-radius:6px}
.showcase-thumb span{display:block;min-height:1.6em;margin-top:10px;font-family:var(--mono);font-size:9px;letter-spacing:.055em;text-transform:uppercase;line-height:1.5;color:#a9aec5}
.showcase-thumb:hover{opacity:.85;transform:translateY(-2px)}
.showcase-thumb[aria-selected="true"]{opacity:1}
.showcase-thumb[aria-selected="true"] img{border-color:var(--sky)}
.showcase-thumb[aria-selected="true"] span{color:var(--sky)}
.showcase-caption{margin-top:20px;font-size:13px;color:#a9aec5}
@keyframes showcaseGlow{to{transform:translate(4%,-3%) scale(1.1)}}
@media(max-width:600px){.portfolio-showcase{padding-top:55px;padding-bottom:45px}.showcase-project{margin-top:20px;gap:4px}.showcase-project-detail{font-size:9px}.showcase-controls{gap:12px;margin-top:22px}.showcase-arrow{width:38px;height:38px;font-size:15px}.showcase-thumbs{gap:10px}.showcase-thumb{width:104px}.showcase-thumb span{font-size:8px;margin-top:7px}.showcase-heading{margin-bottom:25px}.showcase-preview{border-radius:14px}.showcase-open{right:10px;bottom:10px;font-size:11px;padding:8px 12px;gap:12px}.showcase-caption{font-size:12px}}
@media(prefers-reduced-motion:reduce){.showcase-glow{animation:none}.showcase-preview{transform:none!important;transition:opacity .01s}.showcase-arrow,.showcase-thumb{transition:none;transform:none!important}}
