:root{--bg-primary:#000000;--text-dim:rgba(255,255,255,0.6);--color-white:#ffffff;--color-gray:#a3a3a3;--color-dark-gray:#3a3a3a;--radius-xl:24px;--transition-smooth:cubic-bezier(0.25,1,0.3,1);--transition-bounce:cubic-bezier(0.34,1.56,0.64,1);}html{background-color:#000000;scroll-behavior:smooth;}body{font-family:'Poppins',sans-serif;background-color:#000000;background:radial-gradient(ellipse 80% 50% at 50% -20%,rgba(255,255,255,0.04) 0%,transparent 60%),radial-gradient(circle at 80% 70%,rgba(80,80,80,0.06) 0%,transparent 50%),#000000;color:#ffffff;overflow-x:hidden;}.text-gradient{background:linear-gradient(135deg,#ffffff 0%,#a3a3a3 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}.text-gradient-subtle{background:linear-gradient(90deg,#ffffff 0%,#737373 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}.bg-blue-gradient{background:linear-gradient(157.81deg,#ffffff 0%,#e5e5e5 50%,#d4d4d4 100%);}.bg-black-gradient{background:linear-gradient(144.39deg,rgba(255,255,255,0.02) -278.56%,rgba(109,109,109,0.05) -78.47%,#11101d 91.61%);}.bg-black-gradient-2{background:linear-gradient(-168.39deg,rgba(255,255,255,0.02) -278.56%,rgba(109,109,109,0.05) -78.47%,#11101d 91.61%);}.reveal{opacity:0;transform:translateY(60px);transition:opacity 0.9s var(--transition-smooth),transform 0.9s var(--transition-smooth);}.reveal.active{opacity:1;transform:translateY(0);}.reveal-left{opacity:0;transform:translateX(-70px);transition:opacity 0.9s var(--transition-smooth),transform 0.9s var(--transition-smooth);}.reveal-left.active{opacity:1;transform:translateX(0);}.reveal-right{opacity:0;transform:translateX(70px);transition:opacity 0.9s var(--transition-smooth),transform 0.9s var(--transition-smooth);}.reveal-right.active{opacity:1;transform:translateX(0);}.reveal-scale{opacity:0;transform:scale(0.85);transition:opacity 0.8s var(--transition-smooth),transform 0.8s var(--transition-bounce);}.reveal-scale.active{opacity:1;transform:scale(1);}.delay-100{transition-delay:0.1s;}.delay-200{transition-delay:0.2s;}.delay-300{transition-delay:0.3s;}.delay-400{transition-delay:0.4s;}.delay-500{transition-delay:0.5s;}.delay-600{transition-delay:0.6s;}.delay-700{transition-delay:0.7s;}.delay-800{transition-delay:0.8s;}header{background:rgba(0,0,0,0.6);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-bottom:1px solid rgba(255,255,255,0.04);transition:background 0.4s ease,box-shadow 0.4s ease;}header.scrolled{background:rgba(0,0,0,0.85);box-shadow:0 4px 40px rgba(0,0,0,0.6);border-bottom-color:rgba(255,255,255,0.08);}nav li a{position:relative;display:inline-block;padding:8px 12px;margin:-4px 0;}nav li a::after{content:'';position:absolute;bottom:0;left:0;width:0;height:1.5px;background:linear-gradient(90deg,#ffffff,#666666);transition:width 0.3s var(--transition-smooth);border-radius:2px;}nav li a:hover::after,nav li a.active-link::after{width:100%;}#home{position:relative;}#particles-canvas{position:fixed;inset:0;width:100vw;height:100vh;pointer-events:none;z-index:1;opacity:0.3;}.hero-title-shimmer{background:linear-gradient( 90deg,#ffffff 0%,#ffffff 40%,#a3a3a3 50%,#ffffff 60%,#ffffff 100% );background-size:200% auto;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:text-shimmer 4s linear infinite;}@keyframes text-shimmer{from{background-position:200% center;}to{background-position:-200% center;}}.typing-cursor{display:inline-block;width:2.5px;height:1.1em;background:linear-gradient(to bottom,#ffffff,#666666);margin-left:4px;animation:blink-cursor 0.9s ease-in-out infinite;vertical-align:middle;border-radius:2px;}@keyframes blink-cursor{0%,45%{opacity:1;}55%,100%{opacity:0;}}.social-icon-glass{background:rgba(255,255,255,0.04);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,0.08);transition:all 0.4s var(--transition-bounce);}.social-icon-glass:hover{color:#ffffff;border-color:rgba(255,255,255,0.35);transform:translateY(-5px) scale(1.12);box-shadow:0 12px 28px rgba(255,255,255,0.1);background:rgba(255,255,255,0.08);}.animate-float{animation:float 7s ease-in-out infinite;}@keyframes float{0%,100%{transform:translateY(0px) rotate(0deg);}33%{transform:translateY(-14px) rotate(0.5deg);}66%{transform:translateY(-6px) rotate(-0.5deg);}}.animate-spin-slow{animation:spin-slow 18s linear infinite;}@keyframes spin-slow{from{transform:rotate(0deg);}to{transform:rotate(360deg);}}@keyframes pulse-slow{0%,100%{opacity:0.25;transform:scale(1);}50%{opacity:0.4;transform:scale(1.08);}}.animate-pulse-slow{animation:pulse-slow 5s ease-in-out infinite;}.portrait-orbit{position:absolute;inset:-24px;border-radius:50%;border:1px dashed rgba(255,255,255,0.08);animation:orbit-rotate 25s linear infinite;}.portrait-orbit::before{content:'';position:absolute;top:-4px;left:50%;transform:translateX(-50%);width:8px;height:8px;border-radius:50%;background:#ffffff;box-shadow:0 0 12px rgba(255,255,255,0.6);}.portrait-orbit-2{position:absolute;inset:-48px;border-radius:50%;border:1px dashed rgba(255,255,255,0.04);animation:orbit-rotate 40s linear infinite reverse;}@keyframes orbit-rotate{from{transform:rotate(0deg);}to{transform:rotate(360deg);}}.gradient-border{position:relative;background:linear-gradient(135deg,#050505 0%,#0d0d0d 100%);}.gradient-border::before{content:'';position:absolute;inset:0;border-radius:inherit;padding:2px;background:linear-gradient(135deg,#ffffff,#888888,#222222);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none;animation:border-glow 4s ease-in-out infinite;}@keyframes border-glow{0%,100%{opacity:1;}50%{opacity:0.6;}}#scroll-progress{position:fixed;top:0;left:0;height:2px;width:0%;background:linear-gradient(90deg,#ffffff,#555555);z-index:9999;transition:width 0.05s linear;}.section-label{display:inline-flex;align-items:center;gap:12px;font-size:0.7rem;font-weight:700;letter-spacing:0.25em;text-transform:uppercase;color:rgba(255,255,255,0.4);margin-bottom:1.5rem;}.section-label::before{content:'';display:inline-block;width:32px;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,0.4));}.section-label::after{content:'';display:inline-block;width:32px;height:1px;background:linear-gradient(90deg,rgba(255,255,255,0.4),transparent);}.stat-card{position:relative;overflow:hidden;padding:2rem 1.5rem;border-radius:20px;border:1px solid rgba(255,255,255,0.07);background:rgba(255,255,255,0.02);transition:all 0.4s var(--transition-smooth);cursor:default;}.stat-card::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,0.3),transparent);transform:translateX(-100%);transition:transform 0.6s ease;}.stat-card:hover::before{transform:translateX(0);}.stat-card:hover{border-color:rgba(255,255,255,0.18);background:rgba(255,255,255,0.04);transform:translateY(-6px);box-shadow:0 20px 50px rgba(0,0,0,0.6),0 0 30px rgba(255,255,255,0.03);}.stat-number{font-size:3rem;font-weight:800;background:linear-gradient(135deg,#ffffff,#888888);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1;}.feature-card{background:transparent;transition:all 0.4s cubic-bezier(0.25,0.8,0.25,1);position:relative;overflow:hidden;}.feature-card::after{content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,rgba(255,255,255,0.3),transparent);transform:scaleX(0);transition:transform 0.4s ease;}.feature-card:hover::after{transform:scaleX(1);}.feature-card:hover{background:linear-gradient(144.39deg,rgba(255,255,255,0.06) -278.56%,rgba(109,109,109,0.06) -78.47%,rgba(17,16,29,0.5) 91.61%);box-shadow:0px 24px 60px rgba(0,0,0,0.5);transform:translateY(-8px);}.feature-card:hover .icon-bounce{animation:icon-pop 0.5s var(--transition-bounce);}@keyframes icon-pop{0%{transform:scale(1);}50%{transform:scale(1.25);}100%{transform:scale(1.1);}}.stack-card{position:relative;overflow:hidden;transition:all 0.4s var(--transition-smooth);}.stack-card::before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 50% 0%,rgba(255,255,255,0.06) 0%,transparent 70%);opacity:0;transition:opacity 0.4s ease;}.stack-card:hover::before{opacity:1;}.stack-card:hover{transform:translateY(-10px) scale(1.03);border-color:rgba(255,255,255,0.25) !important;box-shadow:0 20px 50px rgba(0,0,0,0.7),0 0 20px rgba(255,255,255,0.04);}.gradient-border-hover{position:relative;transition:all 0.3s ease;}.gradient-border-hover::before{content:'';position:absolute;top:0;left:0;right:0;bottom:0;border-radius:inherit;padding:1.5px;background:linear-gradient(135deg,#ffffff 0%,#444444 100%);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity 0.4s ease;pointer-events:none;z-index:1;}.gradient-border-hover:hover::before{opacity:1;}.gradient-border-hover:hover{border-color:transparent !important;}.project-accordion-container{display:flex;flex-direction:column;height:750px;width:100%;gap:0.75rem;}@media (min-width:768px){.project-accordion-container{flex-direction:row;height:620px;gap:1rem;}}.project-accordion-card{position:relative;display:flex;flex-direction:column;justify-content:flex-end;height:100%;overflow:hidden;border-radius:20px;border:1px solid rgba(255,255,255,0.06);cursor:pointer;background-color:#080810;transition:flex 0.7s var(--transition-smooth),border-color 0.3s ease,box-shadow 0.3s ease;box-shadow:0 10px 30px rgba(0,0,0,0.5);}.project-accordion-card:hover{border-color:rgba(255,255,255,0.18);box-shadow:0 16px 48px rgba(0,0,0,0.7);}@media (max-width:767px){.project-accordion-card{flex:0 0 54px;border-radius:14px;}.project-accordion-card.active{flex:1 1 auto;border-radius:20px;}}@media (min-width:768px){.project-accordion-card{flex:0.6;}.project-accordion-card.active{flex:4.2;cursor:default;}}.project-accordion-card .card-bg-img{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0.3;transition:transform 0.8s var(--transition-smooth),opacity 0.6s ease;z-index:0;}.project-accordion-card::after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,0.97) 0%,rgba(0,0,0,0.65) 60%,rgba(0,0,0,0.25) 100%);z-index:1;pointer-events:none;transition:opacity 0.5s ease;}.project-accordion-card.active .card-bg-img{opacity:0.1;transform:scale(1.05);}.collapsed-content{position:absolute;inset:0;display:flex;align-items:center;justify-content:space-between;padding:0.75rem 1.25rem;z-index:2;opacity:1;transition:opacity 0.4s ease;}@media (min-width:768px){.collapsed-content{flex-direction:column;justify-content:space-between;align-items:center;padding:2.2rem 0.75rem;}}.project-accordion-card.active .collapsed-content{opacity:0;pointer-events:none;}.collapsed-title{font-family:'Poppins',sans-serif;font-weight:700;text-transform:uppercase;font-size:0.8rem;color:rgba(255,255,255,0.35);letter-spacing:0.15em;white-space:nowrap;transition:color 0.3s ease;}@media (min-width:768px){.collapsed-title{writing-mode:vertical-rl;transform:rotate(180deg);margin:auto 0;}}.project-accordion-card:hover .collapsed-title{color:rgba(255,255,255,0.85);}.expanded-content{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-start;padding:1.5rem;z-index:2;opacity:0;pointer-events:none;overflow:hidden;transform:translateY(20px);transition:opacity 0.5s var(--transition-smooth),transform 0.5s var(--transition-smooth);}@media (min-width:768px){.expanded-content{padding:2rem 2.5rem;}}.project-accordion-card.active .expanded-content{opacity:1;pointer-events:auto;transform:translateY(0);transition-delay:0.18s;}.browser-mockup{width:100%;border-radius:14px;border:1px solid rgba(255,255,255,0.08);background-color:#0b0a12;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 20px 40px rgba(0,0,0,0.6);transition:transform 0.5s var(--transition-smooth),border-color 0.3s ease;}.screenshot-container{width:100%;aspect-ratio:16 / 9;overflow:hidden;background:#fff;}.screenshot-container img{width:100%;height:100%;object-fit:cover;}.project-accordion-card.active:hover .browser-mockup{transform:translateY(-4px) scale(1.01);border-color:rgba(255,255,255,0.15);}.service-card{position:relative;overflow:hidden;transition:all 0.45s var(--transition-smooth);}.service-card::before{content:'';position:absolute;top:-60%;left:-60%;width:220%;height:220%;background:radial-gradient(circle,rgba(255,255,255,0.03) 0%,transparent 65%);opacity:0;transition:opacity 0.5s ease;pointer-events:none;}.service-card:hover::before{opacity:1;}.service-card:hover{transform:translateY(-10px);border-color:rgba(255,255,255,0.18) !important;box-shadow:0 30px 70px rgba(0,0,0,0.6);}.service-icon{transition:all 0.4s var(--transition-bounce);}.service-card:hover .service-icon{transform:scale(1.18) rotate(-5deg);}.contact-form-input{width:100%;background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.08);border-radius:14px;padding:14px 18px;font-size:0.875rem;color:#ffffff;outline:none;font-family:'Poppins',sans-serif;transition:border-color 0.3s ease,background 0.3s ease,box-shadow 0.3s ease;}.contact-form-input::placeholder{color:rgba(255,255,255,0.2);}.contact-form-input:focus{border-color:rgba(255,255,255,0.35);background:rgba(255,255,255,0.05);box-shadow:0 0 0 3px rgba(255,255,255,0.04),0 0 20px rgba(255,255,255,0.03);}input:-webkit-autofill,textarea:-webkit-autofill{-webkit-text-fill-color:white !important;-webkit-box-shadow:0 0 0 30px rgba(5,5,15,0.95) inset !important;}footer{position:relative;}footer::before{content:'';position:absolute;top:0;left:10%;right:10%;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,0.12),transparent);}.bg-glow{position:absolute;border-radius:50%;filter:blur(90px);opacity:0.08;pointer-events:none;z-index:0;will-change:transform;}.sidebar-open{transform:translateX(0);}.sidebar-closed{transform:translateX(100%);}::-webkit-scrollbar{width:5px;}::-webkit-scrollbar-track{background:#000000;}::-webkit-scrollbar-thumb{background:#222222;border-radius:4px;}::-webkit-scrollbar-thumb:hover{background:#555555;}.cursor-dot{width:7px;height:7px;background-color:#ffffff;position:fixed;top:0;left:0;pointer-events:none;z-index:9999;border-radius:50%;transform:translate3d(0,0,0) translate(-50%,-50%);transition:width 0.2s,height 0.2s,background-color 0.2s;}.cursor-outline{width:38px;height:38px;border:1.5px solid rgba(255,255,255,0.35);position:fixed;top:0;left:0;pointer-events:none;z-index:9998;border-radius:50%;transform:translate3d(0,0,0) translate(-50%,-50%);transition:width 0.2s,height 0.2s,border-color 0.2s,background-color 0.2s;}.cursor-dot.cursor-hover{width:4px;height:4px;background-color:rgba(255,255,255,0.7);}.cursor-outline.cursor-hover{width:52px;height:52px;border-color:rgba(255,255,255,0.7);background-color:rgba(255,255,255,0.06);}@media (min-width:768px){html,body,a,button,input,textarea,select,[role="button"]{cursor:none !important;}}@media (max-width:767px){.cursor-dot,.cursor-outline{display:none !important;}}.section-nav-dots{position:fixed;right:2rem;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:24px;z-index:100;}.section-nav-dot{position:relative;width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,0.2);border:1px solid rgba(255,255,255,0.15);transition:all 0.4s var(--transition-bounce);cursor:pointer;}.section-nav-dot::before{content:'';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:30px;height:30px;}.section-nav-dot:hover{background:rgba(255,255,255,0.6);transform:scale(1.3);}.section-nav-dot.active{background:#ffffff;transform:scale(1.4);box-shadow:0 0 10px rgba(255,255,255,0.5);}@media (max-width:768px){.section-nav-dots{display:none;}}@keyframes fadeInUp{from{opacity:0;transform:translateY(28px);}to{opacity:1;transform:translateY(0);}}@keyframes shimmer-line{0%{transform:translateX(-100%);}100%{transform:translateX(100%);}}.svg-glow{filter:drop-shadow(0px 0px 8px rgba(255,255,255,0.2));}.scroll-indicator{animation:scroll-bounce 2.2s ease-in-out infinite;}@keyframes scroll-bounce{0%,100%{transform:translateX(-50%) translateY(0);opacity:0.5;}50%{transform:translateX(-50%) translateY(10px);opacity:1;}}body::before{content:'';position:fixed;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='1'/%3E%3C/svg%3E");opacity:0.018;pointer-events:none;z-index:9997;}.contact-banner{position:relative;overflow:hidden;}.contact-banner::before{content:'';position:absolute;top:-50%;left:-50%;width:80%;height:200%;background:radial-gradient(ellipse,rgba(255,255,255,0.03) 0%,transparent 70%);pointer-events:none;animation:banner-pulse 8s ease-in-out infinite;}@keyframes banner-pulse{0%,100%{transform:translateY(0) rotate(0deg);opacity:0.6;}50%{transform:translateY(10%) rotate(2deg);opacity:1;}}.tech-tag{transition:all 0.3s ease;}.tech-tag:hover{background:rgba(255,255,255,0.15);border-color:rgba(255,255,255,0.3);transform:scale(1.05);}.bg-subtle-glow{position:absolute;border-radius:50%;filter:blur(100px);opacity:0.12;pointer-events:none;z-index:0;animation:ambient-float 10s ease-in-out infinite alternate;}@keyframes ambient-float{0%{transform:translateY(0px) scale(1);opacity:0.08;}50%{transform:translateY(-15px) scale(1.08);opacity:0.15;}100%{transform:translateY(10px) scale(0.95);opacity:0.1;}}.stack-card .w-14{transition:transform 0.4s var(--transition-bounce),box-shadow 0.4s ease,border-color 0.4s ease;}.stack-card:hover .w-14{transform:scale(1.12) translateY(-2px);box-shadow:0 0 25px rgba(255,255,255,0.2);border-color:rgba(255,255,255,0.4) !important;}.service-card:hover .service-icon{transform:translateY(-4px) scale(1.1);box-shadow:0 8px 24px rgba(255,255,255,0.12);border-color:rgba(255,255,255,0.3);}.feature-card:hover .w-12{transform:translateY(-3px) scale(1.08);box-shadow:0 6px 20px rgba(255,255,255,0.1);}button[type="submit"]{position:relative;overflow:hidden;transition:all 0.4s var(--transition-smooth);}button[type="submit"]::after{content:'';position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:linear-gradient( 60deg,transparent 30%,rgba(255,255,255,0.25) 50%,transparent 70% );transform:rotate(30deg) translateX(-100%);transition:transform 0.8s ease;}button[type="submit"]:hover::after{transform:rotate(30deg) translateX(100%);}@media (max-width:767px){#home h1{font-size:2.15rem !important;line-height:2.65rem !important;}#home h2{font-size:1.4rem !important;line-height:1.85rem !important;}#home .min-h-\[44px\]{font-size:1.15rem !important;}#about h2,#stack h2,#projects h2,#services h2,#contact h2{font-size:2.25rem !important;line-height:2.75rem !important;}body{overflow-x:hidden !important;}.portrait-orbit-2{display:none !important;}.portrait-orbit{inset:-12px !important;}.project-accordion-container{height:820px;gap:0.5rem;}.project-accordion-card{flex:0 0 46px;}.project-accordion-card.active{flex:1 1 auto;}.collapsed-content{padding:0.5rem 1rem !important;}.expanded-content{padding:1rem !important;overflow-y:auto;-webkit-overflow-scrolling:touch;}.expanded-content h3{font-size:1.25rem !important;margin-bottom:0.5rem !important;}.browser-mockup{margin-bottom:0.5rem !important;}#mobile-menu{left:1rem !important;right:1rem !important;width:auto !important;background:rgba(10,10,15,0.96) !important;backdrop-filter:blur(24px) !important;-webkit-backdrop-filter:blur(24px) !important;border:1px solid rgba(255,255,255,0.12) !important;box-shadow:0 20px 50px rgba(0,0,0,0.9) !important;}}#services,.section-nav-dot[data-section="services"]{display:none !important;visibility:hidden !important;height:0 !important;margin:0 !important;padding:0 !important;pointer-events:none !important;}@media (min-width:480px) and (max-width:767px){#home h1{font-size:3.1rem !important;line-height:3.6rem !important;}#home h2{font-size:1.85rem !important;line-height:2.35rem !important;}}#about #stack{margin-top:2.5rem !important;padding-top:0.5rem !important;}@media (min-width:768px){#about #stack{margin-top:3.5rem !important;padding-top:0.5rem !important;}}.tech-marquee-wrapper{position:relative;overflow:hidden;width:100%;}.tech-marquee-wrapper::before,.tech-marquee-wrapper::after{content:'';position:absolute;top:0;bottom:0;width:120px;z-index:2;pointer-events:none;}.tech-marquee-wrapper::before{left:0;background:linear-gradient(to right,#000000 0%,transparent 100%);}.tech-marquee-wrapper::after{right:0;background:linear-gradient(to left,#000000 0%,transparent 100%);}.tech-marquee-track{display:flex;gap:1.25rem;width:max-content;will-change:transform;}.tech-marquee-left{animation:marquee-left 28s linear infinite;}.tech-marquee-right{animation:marquee-right 32s linear infinite;}.tech-marquee-wrapper:hover .tech-marquee-left,.tech-marquee-wrapper:hover .tech-marquee-right{animation-play-state:paused;}@keyframes marquee-left{0%{transform:translateX(0);}100%{transform:translateX(calc(-50% - 0.625rem));}}@keyframes marquee-right{0%{transform:translateX(calc(-50% - 0.625rem));}100%{transform:translateX(0);}}.tech-marquee-card{flex-shrink:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1.75rem 1.5rem;width:148px;background:linear-gradient(-168.39deg,rgba(255,255,255,0.02) -278.56%,rgba(109,109,109,0.05) -78.47%,#11101d 91.61%);border-radius:20px;border:1px solid rgba(255,255,255,0.07);transition:border-color 0.35s ease,transform 0.35s var(--transition-bounce),box-shadow 0.35s ease,background 0.35s ease;cursor:default;position:relative;overflow:hidden;}.tech-marquee-card::before{content:'';position:absolute;inset:0;border-radius:inherit;background:radial-gradient(circle at 50% 0%,rgba(255,255,255,0.05) 0%,transparent 70%);opacity:0;transition:opacity 0.35s ease;}.tech-marquee-card:hover::before{opacity:1;}.tech-marquee-card:hover{border-color:rgba(255,255,255,0.25);transform:translateY(-8px) scale(1.04);box-shadow:0 20px 45px rgba(0,0,0,0.7),0 0 20px rgba(255,255,255,0.04);background:linear-gradient(-168.39deg,rgba(255,255,255,0.04) -278.56%,rgba(109,109,109,0.08) -78.47%,#15141f 91.61%);}.tech-icon-circle{width:3.5rem;height:3.5rem;border-radius:50%;background:#050509;border:1px solid rgba(255,255,255,0.08);display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,0.7);margin-bottom:1rem;transition:transform 0.4s var(--transition-bounce),box-shadow 0.4s ease,border-color 0.4s ease,color 0.4s ease;box-shadow:inset 0 1px 0 rgba(255,255,255,0.05);}.tech-marquee-card:hover .tech-icon-circle{transform:scale(1.15) translateY(-2px);box-shadow:0 0 22px rgba(255,255,255,0.18);border-color:rgba(255,255,255,0.35);color:#ffffff;}.coverflow-card{width:var(--cf-card);background:linear-gradient(-168.39deg,rgba(255,255,255,0.03) -278.56%,rgba(109,109,109,0.05) -78.47%,#11101d 91.61%);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 25px 60px rgba(0,0,0,0.7);transition:border-color 0.4s ease,box-shadow 0.4s ease;}.coverflow-card:hover{border-color:rgba(255,255,255,0.35) !important;}@media (max-width:640px){#coverflow-container{--cf-card:clamp(280px,86vw,480px) !important;}}.project-grid-container{display:grid;grid-template-columns:repeat(1,1fr);gap:1.5rem;}@media (min-width:640px){.project-grid-container{grid-template-columns:repeat(2,1fr);}}@media (min-width:1024px){.project-grid-container{grid-template-columns:repeat(3,1fr);}}.proj-card{position:relative;border-radius:20px;overflow:hidden;background:#0d0d16;border:1px solid rgba(255,255,255,0.08);transition:transform 0.4s var(--transition-smooth),border-color 0.4s ease,box-shadow 0.4s ease;display:flex;flex-direction:column;text-decoration:none;}.proj-card:hover{transform:translateY(-8px);border-color:rgba(255,255,255,0.25);box-shadow:0 20px 50px rgba(0,0,0,0.7),0 0 30px rgba(245,224,199,0.08);}.proj-card-img-wrap{position:relative;width:100%;aspect-ratio:2 / 1;overflow:hidden;background:#05050a;display:flex;align-items:center;justify-content:center;}.proj-card-img{width:100%;height:100%;object-fit:cover;transition:transform 0.6s var(--transition-smooth),filter 0.4s ease;display:block;}.proj-card:hover .proj-card-img{transform:scale(1.05);filter:brightness(0.9);}.proj-card-info{padding:1.25rem 1.4rem 1.4rem;display:flex;flex-direction:column;gap:0.35rem;flex:1;border-top:1px solid rgba(255,255,255,0.06);background:rgba(255,255,255,0.01);}.proj-card-cat{font-size:0.65rem;font-weight:600;letter-spacing:0.15em;text-transform:uppercase;color:rgba(255,255,255,0.4);font-family:'Poppins',sans-serif;}.proj-card-title{font-size:1rem;font-weight:700;color:#ffffff;font-family:'Poppins',sans-serif;line-height:1.35;margin-top:0.1rem;margin-bottom:0.2rem;transition:color 0.3s ease;}.proj-card:hover .proj-card-title{color:#f3e0c7;}.proj-card-tags{display:flex;flex-wrap:wrap;gap:0.4rem;margin-top:0.25rem;}.proj-tag{font-size:0.65rem;padding:3px 10px;border-radius:6px;background:rgba(255,255,255,0.06);color:rgba(255,255,255,0.55);border:1px solid rgba(255,255,255,0.08);font-family:'Poppins',sans-serif;font-weight:500;transition:background 0.25s ease,color 0.25s ease,border-color 0.25s ease;}.proj-card:hover .proj-tag{background:rgba(255,255,255,0.1);color:rgba(255,255,255,0.75);border-color:rgba(255,255,255,0.25);}.proj-load-more-btn{display:inline-flex;align-items:center;gap:10px;padding:14px 32px;border-radius:9999px;background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.15);color:#ffffff;font-weight:600;font-size:0.92rem;font-family:'Poppins',sans-serif;cursor:pointer;transition:all 0.35s var(--transition-bounce);box-shadow:none;}.proj-load-more-btn:hover{background:#ffffff;color:#000000;border-color:#ffffff;transform:translateY(-2px);box-shadow:none;}.coverflow-nav-btn{flex-shrink:0;width:48px;height:48px;border-radius:50%;background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.14);display:flex;align-items:center;justify-content:center;color:rgba(255,255,255,0.65);cursor:pointer;transition:background 0.2s ease,border-color 0.2s ease,color 0.2s ease,transform 0.2s ease;backdrop-filter:blur(8px);z-index:20;box-shadow:0 4px 24px rgba(0,0,0,0.4);}.coverflow-nav-btn:hover{background:rgba(255,255,255,0.18);border-color:rgba(255,255,255,0.38);color:#ffffff;transform:scale(1.1);}.coverflow-nav-btn:active{transform:scale(0.95);}#coverflow-pagination{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:28px;padding:8px 0;}.coverflow-dot{position:relative;width:10px;height:10px;border-radius:50%;background:rgba(255,255,255,0.28);border:none;cursor:pointer;transition:all 0.25s ease;flex-shrink:0;padding:0;outline:none;box-shadow:none;}.coverflow-dot::before{content:'';position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:28px;height:28px;}.coverflow-dot:hover{background:rgba(255,255,255,0.65);transform:scale(1.2);}.coverflow-dot.active{width:10px;height:10px;background:#ffffff;border:none;transform:scale(1.5);box-shadow:none;}.coverflow-card.is-active{ring:2px solid rgba(255,255,255,0.4);box-shadow:0 0 40px rgba(255,255,255,0.15);}