#app[data-v-4a6d096a]{font-family:Inter,system-ui,-apple-system,sans-serif;min-height:100vh;background:linear-gradient(160deg,#fff9e6,#fff3cc);padding:3rem 0}.container[data-v-4a6d096a]{max-width:1440px;margin:0 auto;padding:0 2rem}.page-title[data-v-4a6d096a]{font-size:3.2rem;font-weight:700;color:#1a1a1a;text-align:center;margin-bottom:2rem;letter-spacing:-.03em;text-shadow:0 2px 4px rgba(0,0,0,.1)}.cta[data-v-4a6d096a]{text-align:center;margin:1rem auto 3rem;max-width:800px;padding:0}.button-group[data-v-4a6d096a]{display:flex;flex-direction:row;justify-content:center;gap:1rem;margin-top:1rem;flex-wrap:wrap}.btn[data-v-4a6d096a],.carousel-btn[data-v-4a6d096a]{display:inline-flex;align-items:center;justify-content:center;padding:.8rem 2rem;border-radius:28px;font-weight:600;font-size:1.1rem;text-decoration:none;transition:all .25s cubic-bezier(.4,0,.2,1);gap:.6rem;border:2px solid transparent;cursor:pointer;white-space:nowrap}.btn.primary[data-v-4a6d096a]{background:#ffd600;color:#1a1a1a;box-shadow:0 2px 8px rgba(255,180,0,.2)}.btn.primary[data-v-4a6d096a]:hover{background:#ffe066;transform:translateY(-2px) scale(1.02);box-shadow:0 4px 12px rgba(255,180,0,.3)}.carousel-controls[data-v-4a6d096a]{gap:1.2rem}.carousel-btn[data-v-4a6d096a]{background:rgba(255,214,0,.9);color:#1a1a1a;padding:.7rem 1.8rem;font-size:1rem;border:2px solid rgba(255,214,0,.2)}.carousel-btn[data-v-4a6d096a]:hover{border-color:#ffd600}.btn svg[data-v-4a6d096a],.carousel-btn .btn-icon[data-v-4a6d096a]{width:20px;height:20px;transition:transform .2s ease}.btn:hover svg[data-v-4a6d096a]{transform:translateX(3px)}.carousel-intro-container[data-v-4a6d096a]{display:flex;gap:2rem;margin-bottom:3rem;align-items:stretch}.carousel-card[data-v-4a6d096a]{flex:2;min-width:100px;background:hsla(0,0%,100%,.9);border-radius:24px;box-shadow:0 12px 20px rgba(255,180,0,.1);backdrop-filter:blur(6px);border:1px solid rgba(255,214,0,.15);transition:transform .3s ease}.carousel-card[data-v-4a6d096a]:hover{transform:translateY(-5px)}.carousel-image[data-v-4a6d096a]{height:700px;width:100%;border-radius:16px;overflow:hidden;position:relative;margin-bottom:1rem}.carousel-image img[data-v-4a6d096a]{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;transition:transform .3s ease;max-height:100vh}.carousel-controls[data-v-4a6d096a]{display:flex;justify-content:center;gap:1rem;margin:1.5rem 0}.btn-group[data-v-4a6d096a]{display:flex;gap:1rem;width:100%;max-width:300px;margin:0 auto}.carousel-btn[data-v-4a6d096a]{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.6rem 1.2rem;font-size:.8rem;background:linear-gradient(90deg,#ffd600,#ffea33);border:none;border-radius:50px;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 12px rgba(0,0,0,.1);font-weight:600}.carousel-btn[data-v-4a6d096a]:hover{background:#fff;color:#ffd600;transform:translateY(-2px)}.carousel-btn .btn-icon[data-v-4a6d096a]{font-size:1.2rem}.project-intro[data-v-4a6d096a]{flex:1;min-width:100px;background:hsla(0,0%,100%,.95);border-radius:14px;padding:1rem;box-shadow:0 12px 40px rgba(255,180,0,.1);backdrop-filter:blur(8px);transition:all .4s cubic-bezier(.25,.46,.45,.94);border:1px solid rgba(255,214,0,.15);transform:translateZ(0);max-height:800px;overflow-y:auto;box-sizing:border-box}.project-intro[data-v-4a6d096a]:hover{transform:translateY(-8px) scale(1.01);box-shadow:0 20px 50px rgba(255,180,0,.2)}.project-intro h2[data-v-4a6d096a]{font-size:1.8rem;color:#664d00;margin-bottom:1.5rem;position:relative;padding-bottom:.8rem}.project-intro h2[data-v-4a6d096a]:after{content:"";position:absolute;bottom:0;left:0;width:60px;height:3px;background:linear-gradient(90deg,#ffd600,#ffea33);border-radius:2px}.intro-content[data-v-4a6d096a]{font-size:.95rem;line-height:1.8;color:#4d3800;padding-right:0}.intro-content[data-v-4a6d096a]::-webkit-scrollbar{width:6px}.intro-content[data-v-4a6d096a]::-webkit-scrollbar-track{background:rgba(255,214,0,.1)}.intro-content[data-v-4a6d096a]::-webkit-scrollbar-thumb{background:#ffd600;border-radius:4px}.intro-content h3[data-v-4a6d096a]{font-size:1.2rem;color:#806000;margin:1.8rem 0 1rem;padding-left:.8rem;border-left:3px solid #ffd600}.intro-content p[data-v-4a6d096a]{margin-bottom:1.5rem;padding:1.2rem;background:rgba(255,214,0,.06);border-radius:12px;border:1px solid rgba(255,214,0,.1);word-wrap:break-word}.intro-content ul[data-v-4a6d096a]{padding-left:1.2rem;margin:1.5rem 0}.intro-content li[data-v-4a6d096a]{position:relative;padding-left:2rem;margin-bottom:1.2rem;list-style:none;line-height:1.6;word-wrap:break-word}.intro-content li[data-v-4a6d096a]:before{content:"•";position:absolute;left:0;color:#ffd600;font-size:1.4em;top:-.1em}strong[data-v-4a6d096a]{color:#806000;font-weight:600;display:block;margin-bottom:.8rem;font-size:1.05rem}.grid[data-v-4a6d096a]{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem;padding:10 2rem}.card[data-v-4a6d096a]{background:hsla(0,0%,100%,.9);border-radius:24px;padding:2rem;box-shadow:0 8px 32px rgba(0,0,0,.08);transition:all .4s cubic-bezier(.175,.885,.4,1.275);backdrop-filter:blur(6px);border:1px solid rgba(255,214,0,.1);position:relative;overflow:hidden;height:300px}.card[data-v-4a6d096a]:hover{background:rgba(255,214,0,.9);transform:translateY(-15px) scale(1.03);box-shadow:0 25px 50px rgba(255,180,0,.25);z-index:10}.card[data-v-4a6d096a]:active{transform:translateY(-10px) scale(.98)}.card h2[data-v-4a6d096a]{font-size:1.8rem;font-weight:600;color:#1a1a1a;margin-bottom:1.5rem;position:relative}.card h2[data-v-4a6d096a]:after{content:"";position:absolute;width:40px;height:3px;background:#ffd600;bottom:-10px;left:0}.card ul[data-v-4a6d096a]{padding-left:1.2rem}.card li[data-v-4a6d096a]{font-size:1.1rem;line-height:1.8;color:#444;margin-bottom:1rem;position:relative}.card li[data-v-4a6d096a]:before{content:"▷";color:#ffd600;font-weight:700;position:absolute;left:-1.2rem}.tech-stack[data-v-4a6d096a]{margin-top:1.5rem;display:flex;gap:.8rem;flex-wrap:wrap}.tech-tag[data-v-4a6d096a]{background:rgba(255,214,0,.15);padding:.6rem 1.2rem;border-radius:20px;font-size:.9rem;font-weight:500;color:#664d00}.animate-pop-in[data-v-4a6d096a]{animation:pop-in-4a6d096a .6s ease-out forwards}.animate-fade-in[data-v-4a6d096a]{opacity:0;transform:translateY(20px);animation:fade-in-4a6d096a .6s ease-out forwards;animation-delay:var(--delay)}.animate-slide-up[data-v-4a6d096a]{opacity:0;transform:translateY(20px);animation:slide-up-4a6d096a .8s ease-out forwards}@keyframes pop-in-4a6d096a{0%{transform:scale(.8);opacity:0}to{transform:scale(1);opacity:1}}@keyframes fade-in-4a6d096a{to{opacity:1;transform:translateY(0)}}@keyframes slide-up-4a6d096a{to{opacity:1;transform:translateY(0)}}@media (max-width:1024px){.carousel-image[data-v-4a6d096a]{height:500px}}@media (max-width:768px){.page-title[data-v-4a6d096a]{font-size:2rem}.carousel-intro-container[data-v-4a6d096a]{flex-direction:column}.carousel-card[data-v-4a6d096a],.project-intro[data-v-4a6d096a]{min-width:auto;width:100%;margin:0 auto}.carousel-image[data-v-4a6d096a]{height:350px}.grid[data-v-4a6d096a]{grid-template-columns:repeat(2,1fr)}.card[data-v-4a6d096a]{height:auto;padding:1.5rem}.cta[data-v-4a6d096a]{margin-top:1rem}.button-group[data-v-4a6d096a]{flex-direction:row;gap:1rem}.btn[data-v-4a6d096a]{width:auto;padding:.8rem 1.5rem;font-size:1rem}.project-intro[data-v-4a6d096a]{width:100%;max-width:600px}}@media (max-width:576px){.carousel-image[data-v-4a6d096a]{height:250px}.button-group[data-v-4a6d096a]{flex-wrap:wrap}.btn[data-v-4a6d096a]{width:100%;max-width:300px}.btn-group[data-v-4a6d096a]{max-width:250px}.carousel-btn[data-v-4a6d096a]{padding:.5rem 1rem;font-size:.7rem}.project-intro[data-v-4a6d096a]{padding:1rem;max-width:100%}.intro-content li[data-v-4a6d096a],.intro-content p[data-v-4a6d096a]{padding:.8rem;font-size:.9rem}}@media (max-width:480px){.grid[data-v-4a6d096a]{grid-template-columns:1fr}.container[data-v-4a6d096a]{padding:0 1rem}.project-intro[data-v-4a6d096a]{padding:1rem}.intro-content p[data-v-4a6d096a]{padding:.8rem;font-size:.9rem}.card[data-v-4a6d096a]{min-height:250px}.card h2[data-v-4a6d096a]{font-size:1.4rem;margin-bottom:1rem}.card ul[data-v-4a6d096a]{padding-left:1rem}.card li[data-v-4a6d096a]{font-size:1rem}.btn[data-v-4a6d096a]{width:100%;max-width:250px;padding:.6rem 1rem;font-size:.8rem}}