.portfolio{background-color:#0000;padding-bottom:2rem;position:relative}.portfolio-container{max-width:1300px;margin:0 auto}.portfolio-bento-grid{grid-template-columns:1fr;row-gap:4rem;max-width:1000px;margin:0 auto;padding:0 2%;display:grid}.bento-image-wrapper{aspect-ratio:21/9;background:var(--bg-color-light);border-radius:20px;text-decoration:none;transition:transform .6s cubic-bezier(.2,1,.3,1),box-shadow .6s;display:block;position:relative;overflow:hidden;box-shadow:0 10px 40px #0006}.bento-image-wrapper:hover{transform:translateY(-8px);box-shadow:0 25px 60px #00c62026}.bento-image{object-fit:cover;width:100%;height:100%;transition:transform .8s cubic-bezier(.2,1,.3,1);transform:scale(1.02)}.bento-image-wrapper:hover .bento-image{transform:scale(1.05)}.bento-gradient-shield{pointer-events:none;opacity:.8;background:linear-gradient(#0000 0%,#05050599 60%,#050505f2 100%);width:100%;height:70%;transition:opacity .5s;position:absolute;bottom:0;left:0}.bento-image-wrapper:hover .bento-gradient-shield{opacity:1}.bento-content-dock{z-index:2;justify-content:space-between;align-items:flex-end;width:100%;padding:2.5rem;transition:transform .5s cubic-bezier(.2,1,.3,1);display:flex;position:absolute;bottom:0;left:0;transform:translateY(15px)}.bento-image-wrapper:hover .bento-content-dock{transform:translateY(0)}.bento-text-data{flex-direction:column;display:flex}.bento-category{color:var(--accent-secondary);font-size:.85rem;font-family:var(--font-secondary);letter-spacing:3px;text-transform:uppercase;opacity:0;margin-bottom:.8rem;font-weight:700;transition:all .4s .1s;transform:translateY(10px)}.bento-image-wrapper:hover .bento-category{opacity:1;transform:translateY(0)}.bento-title{color:#fff;text-shadow:0 4px 20px #00000080;margin:0;font-size:2.7rem;font-weight:800;line-height:1}.bento-action-btn{background:linear-gradient(45deg, var(--accent-primary), var(--accent-secondary));color:#050505;opacity:0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:55px;height:55px;transition:all .5s cubic-bezier(.2,1,.3,1) .1s;display:flex;transform:scale(.5)rotate(-45deg);box-shadow:0 4px 15px #00aa244d}.bento-image-wrapper:hover .bento-action-btn{opacity:1;transform:scale(1)rotate(0)}.portfolio-footer-cta{text-align:center;margin-top:5rem}@media (max-width:1024px){.portfolio-bento-grid{row-gap:3rem}}@media (max-width:768px){.portfolio-bento-grid{row-gap:2.5rem}.bento-image-wrapper{aspect-ratio:16/9;border-radius:15px}.bento-content-dock{padding:1.5rem}.bento-title{font-size:2rem}}
