.tilted-card-figure{position:relative;width:100%;height:100%;perspective:800px;display:flex;flex-direction:column;align-items:center;justify-content:center}.tilted-card-figure:before{content:"";position:absolute;inset:-6px;border-radius:50%;background:linear-gradient(135deg,#6366f1,#8b5cf6,#ec4899,#f43f5e);z-index:-1}.tilted-card-mobile-alert{position:absolute;top:1rem;text-align:center;font-size:.875rem;display:none}@media (max-width:640px){.tilted-card-mobile-alert{display:block}.tilted-card-caption{display:none}}.tilted-card-inner{position:relative;transform-style:preserve-3d;border-radius:50%;overflow:hidden;box-shadow:0 0 0 4px hsla(0,0%,100%,.8),0 4px 20px rgba(99,102,241,.3)}.tilted-card-img{top:0;left:0;-o-object-fit:cover;object-fit:cover;-o-object-position:center top;object-position:center top;border-radius:50%;transform:translateZ(0)}.tilted-card-img,.tilted-card-overlay{position:absolute;will-change:transform}.tilted-card-overlay{pointer-events:none;left:15px;bottom:50px;transform:translateX(-50%) translateZ(100%);z-index:4;width:100%}.tilted-card-caption{pointer-events:none;position:absolute;left:0;top:0;border-radius:4px;background-color:#9e7373;padding:4px 10px;font-size:10px;color:#f5f5f5;opacity:0;z-index:3}.project-card,.projects-section{position:relative}.project-card{border-radius:20px;overflow:hidden;background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 10px 40px rgba(102,126,234,.3);transition:transform .4s cubic-bezier(.175,.885,.32,1.275),box-shadow .4s ease;min-width:280px}.project-card:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 20px 60px rgba(102,126,234,.4)}.project-card-inner{position:relative;width:100%;height:100%;overflow:hidden}.project-card-image{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .6s cubic-bezier(.25,.46,.45,.94);image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}.project-card:hover .project-card-image{transform:scale(1.04)}.project-card-overlay{position:absolute;inset:0;background:linear-gradient(180deg,transparent,transparent 40%,rgba(0,0,0,.7));opacity:0;transition:opacity .4s ease}.project-card:hover .project-card-overlay{opacity:1}.project-card-content{position:absolute;bottom:0;left:0;right:0;padding:24px;transform:translateY(10px);animation:slideUpFade .6s ease forwards;animation-delay:calc(.1s * var(--card-index, 0))}@keyframes slideUpFade{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.project-card:hover .project-card-content{transform:translateY(0)}.project-card-title{font-size:1.25rem;font-weight:700;color:#fff;margin-bottom:8px;font-family:var(--font-archivo,"Archivo",sans-serif)}.project-card-description{font-size:.875rem;color:hsla(0,0%,100%,.9);margin-bottom:12px;line-height:1.5}.project-card-tags{display:flex;flex-wrap:wrap;gap:6px}.project-card-tag{padding:4px 10px;background:hsla(0,0%,100%,.2);backdrop-filter:blur(10px);border-radius:20px;font-size:.75rem;color:#fff;border:1px solid hsla(0,0%,100%,.3)}.project-card-link{display:flex;align-items:center;gap:8px;margin-top:12px;color:#fff;font-size:.875rem;font-weight:500;text-decoration:none;transition:gap .3s ease}.project-card-link:hover{gap:12px}.project-card-link-icon{transition:transform .3s ease}.project-card:hover .project-card-link-icon{transform:translateX(4px)}.showcase-card{background:linear-gradient(135deg,#f093fb,#f5576c);box-shadow:0 10px 40px rgba(245,87,108,.3)}.showcase-card:hover{box-shadow:0 20px 60px rgba(245,87,108,.4)}.showcase-card .project-card-image{-o-object-fit:contain;object-fit:contain;background:#1a1a2e;height:100%}.tilted-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:40px;padding:24px}.tilted-grid>div{width:100%;animation:fadeInUp .6s ease forwards;opacity:0}.tilted-grid>div:first-child{animation-delay:.1s}.tilted-grid>div:nth-child(2){animation-delay:.2s}.tilted-grid>div:nth-child(3){animation-delay:.3s}.tilted-grid>div:nth-child(4){animation-delay:.4s}@media (max-width:1024px){.tilted-grid{grid-template-columns:repeat(2,1fr);gap:32px}.tilted-grid>div{width:100%}}@media (max-width:640px){.tilted-grid{grid-template-columns:1fr;gap:24px}.tilted-grid>div{width:100%}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.hover-lift{transition:transform .3s ease,box-shadow .3s ease}.hover-lift:hover{transform:translateY(-5px);box-shadow:0 15px 30px rgba(0,0,0,.15)}