:root{--primary-color:#007bff;--secondary-color:#6c757d;--accent-color:#28a745;--background-dark:#121212;--card-dark:#1e1e1e;--text-primary:#fff;--text-secondary:#b0b0b0;--border-color:#333;--hover-color:#2a2a2a;--transition-speed:0.3s;--max-width:1200px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#121212;background-color:var(--background-dark);color:#fff;color:var(--text-primary);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;line-height:1.6;margin:0;transition:background-color .3s,color .3s;transition:background-color var(--transition-speed),color var(--transition-speed)}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#1e1e1e}::-webkit-scrollbar-thumb{background:#007bff;background:var(--primary-color);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#0056b3}.skip-link{background:#007bff;background:var(--primary-color);border-radius:0 0 4px 0;color:#fff;font-weight:600;left:0;padding:8px 16px;position:absolute;text-decoration:none;top:-100%;z-index:10000}.skip-link:focus{top:0}:focus-visible{outline:2px solid #007bff;outline:2px solid var(--primary-color);outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}.home{padding:20px 0}.hero-section{align-items:center;display:flex;gap:40px;justify-content:space-between;margin-bottom:60px}.hero-content{flex:1 1;text-align:left}.hero-greeting{color:var(--text-secondary);display:block;font-size:clamp(1rem,2vw,1.2rem);margin-bottom:8px}.hero-content h1{color:var(--text-primary);font-size:clamp(2.5rem,5vw,3.5rem);line-height:1.1;margin-bottom:10px}.rotating-title-wrapper{align-items:center;display:flex;margin-bottom:20px;min-height:2.5em}.rotating-title{-webkit-text-fill-color:#0000;background:linear-gradient(90deg,var(--primary-color),var(--accent-color));-webkit-background-clip:text;background-clip:text;color:var(--primary-color);font-size:clamp(1.3rem,3vw,1.8rem);font-weight:600}.hero-summary{color:var(--text-secondary);font-size:clamp(.95rem,1.5vw,1.1rem);line-height:1.7;margin-bottom:24px;max-width:580px}.hero-summary-short{display:none}.hero-buttons{display:flex;flex-wrap:wrap;gap:15px}.social-icons-home{display:flex;gap:12px;margin:20px 0}.social-icons-home a{align-items:center;background-color:#ffffff14;border:1px solid var(--border-color);border-radius:50%;color:var(--text-primary);display:flex;font-size:1.3rem;height:42px;justify-content:center;transition:all var(--transition-speed);width:42px}.social-icons-home a:hover{background-color:var(--primary-color);border-color:var(--primary-color);transform:translateY(-3px)}.hero-image{display:flex;flex:0 0 auto;justify-content:center}.image-placeholder{animation:float 6s ease-in-out infinite;border:4px solid var(--primary-color);border-radius:50%;box-shadow:0 10px 30px #0000004d,0 0 40px #007bff1a;height:clamp(220px,25vw,300px);overflow:hidden;position:relative;width:clamp(220px,25vw,300px)}.image-placeholder img{border-radius:50%;height:100%;object-fit:cover;width:100%}.highlights-strip{border-bottom:1px solid var(--border-color);border-top:1px solid var(--border-color);display:flex;flex-wrap:wrap;gap:30px;justify-content:center;margin:20px 0 40px;padding:30px 20px}.highlight-item{align-items:center;display:flex;flex-direction:column;gap:4px;text-align:center}.highlight-value{-webkit-text-fill-color:#0000;background:linear-gradient(90deg,var(--primary-color),var(--accent-color));-webkit-background-clip:text;background-clip:text;font-size:clamp(1.5rem,3vw,2rem);font-weight:700}.highlight-label{color:var(--text-secondary);font-size:.85rem;font-weight:500}.home-sections{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(3,1fr);margin-top:40px}.section-card{padding:30px 20px;text-align:center}.section-card h3{color:var(--text-primary);font-size:1.2rem;margin-bottom:12px}.section-card p{color:var(--text-secondary);font-size:.95rem;margin-bottom:20px}.highlight{-webkit-text-fill-color:#0000;background:linear-gradient(90deg,var(--primary-color),var(--accent-color));-webkit-background-clip:text;background-clip:text}@media (max-width:992px){.hero-section{flex-direction:column}.hero-content,.hero-section{text-align:center}.hero-summary{max-width:100%}.hero-buttons,.social-icons-home{justify-content:center}.home-sections{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.home-sections{grid-template-columns:1fr}.hero-buttons{align-items:center;flex-direction:column}.btn{justify-content:center;max-width:260px;width:100%}.highlights-strip{gap:20px}.highlight-item{min-width:120px}}@media (max-width:480px){.hero-summary-full{display:none}.hero-summary-short{display:inline}.image-placeholder{height:200px;width:200px}}@media (max-width:320px){.image-placeholder{height:170px;width:170px}}.about{padding:20px 0}.about-content{grid-gap:30px;display:grid;gap:30px;grid-template-columns:1fr 1fr}.about-card{text-align:left}.about-card h2{color:var(--primary-color);display:inline-block;font-size:clamp(1.4rem,2.5vw,1.8rem);margin-bottom:20px;position:relative}.about-card h2:after{background:var(--accent-color);border-radius:1.5px;bottom:-5px;content:"";height:3px;left:0;position:absolute;width:50px}.about-card p{color:var(--text-secondary);font-size:.95rem;line-height:1.7;margin-bottom:15px}.services{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(2,1fr)}.service-item{background-color:#ffffff08;border:1px solid var(--border-color);border-radius:8px;padding:20px 15px;text-align:center;transition:all var(--transition-speed)}.service-item:hover{background-color:#007bff0f;border-color:#007bff33}.service-icon{font-size:1.8rem;margin-bottom:12px}.service-item h3{color:var(--text-primary);font-size:.95rem;margin-bottom:8px}.service-item p{color:var(--text-secondary);font-size:.85rem;line-height:1.5;margin-bottom:0}@media (max-width:992px){.about-content{grid-template-columns:1fr}.services{grid-template-columns:repeat(2,1fr)}}@media (max-width:600px){.services{grid-template-columns:1fr}}@media (max-width:480px){.about-card{padding:20px}}.experience{padding:20px 0}.experience-timeline{margin-bottom:50px;padding-left:40px;position:relative}.timeline-line{background:linear-gradient(to bottom,var(--primary-color),var(--accent-color));border-radius:2px;bottom:0;left:15px;position:absolute;top:0;width:3px}.experience-item{margin-bottom:40px;position:relative}.experience-item:last-child{margin-bottom:0}.experience-marker{align-items:center;display:flex;height:20px;justify-content:center;left:-33px;position:absolute;top:28px;width:20px}.marker-dot{background-color:var(--primary-color);border:3px solid var(--background-dark);border-radius:50%;box-shadow:0 0 0 3px var(--primary-color);height:14px;transition:all var(--transition-speed);width:14px}.experience-item:hover .marker-dot{background-color:var(--accent-color);box-shadow:0 0 0 3px var(--accent-color)}.experience-card{text-align:left}.experience-header{align-items:flex-start;display:flex;gap:15px;margin-bottom:20px}.experience-logo{border:2px solid var(--border-color);border-radius:10px;flex-shrink:0;height:60px;overflow:hidden;width:60px}.experience-logo img{height:100%;object-fit:cover;width:100%}.experience-meta{flex:1 1}.experience-meta h3{color:var(--text-primary);font-size:clamp(1.1rem,2vw,1.3rem);margin-bottom:4px}.experience-meta h4{color:var(--primary-color);font-size:1rem;font-weight:500;margin-bottom:4px}.experience-period{color:var(--accent-color);font-size:.85rem;font-weight:600}.experience-link{border-radius:6px;color:var(--text-secondary);padding:8px;text-decoration:none;transition:all var(--transition-speed)}.experience-link:hover{background-color:#007bff1a;color:var(--primary-color)}.experience-project{background-color:#ffffff05;border:1px solid #ffffff0d;border-radius:8px;margin-top:16px;padding:16px}.experience-project+.experience-project{margin-top:12px}.project-name{align-items:center;color:var(--text-primary);display:flex;font-size:1rem;font-weight:600;gap:8px;margin-bottom:10px}.project-name a{color:var(--text-secondary);font-size:.8rem;transition:color var(--transition-speed)}.project-name a:hover{color:var(--primary-color)}.project-responsibilities{list-style:none;margin:0 0 12px;padding:0}.project-responsibilities li{color:var(--text-secondary);font-size:.9rem;line-height:1.6;margin-bottom:8px;padding-left:18px;position:relative}.project-responsibilities li:before{color:var(--accent-color);content:"▹";font-weight:700;left:0;position:absolute}.project-tech-tags{display:flex;flex-wrap:wrap;gap:6px}.education-section{margin-bottom:50px;text-align:left}.education-card{align-items:center;display:flex;gap:20px;margin-top:16px}.education-logo{border:2px solid var(--border-color);border-radius:10px;flex-shrink:0;height:60px;overflow:hidden;width:60px}.education-logo img{height:100%;object-fit:cover;width:100%}.education-info h3{color:var(--text-primary);font-size:1.1rem;margin-bottom:4px}.education-info h4{color:var(--primary-color);font-size:.95rem;font-weight:500;margin-bottom:4px}.certifications-section{text-align:left}.certifications-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));margin-top:16px}.certification-card{display:flex;flex-direction:column;gap:8px;padding:20px}.cert-header h4{color:var(--text-primary);font-size:.95rem;line-height:1.4;margin-bottom:4px}.cert-issuer{color:var(--primary-color);font-size:.85rem;font-weight:500}.cert-date{color:var(--text-secondary);font-size:.8rem}.cert-link{align-items:center;color:var(--accent-color);display:inline-flex;font-size:.82rem;font-weight:500;gap:6px;margin-top:4px;text-decoration:none;transition:color var(--transition-speed)}.cert-link:hover{color:var(--primary-color)}@media (max-width:768px){.experience-timeline{padding-left:30px}.timeline-line{left:10px}.experience-marker{left:-27px}.experience-header{flex-direction:column;gap:12px}.education-card{flex-direction:column;text-align:center}.certifications-grid{grid-template-columns:1fr}}@media (max-width:480px){.experience-timeline{padding-left:24px}.timeline-line{left:7px}.experience-marker{left:-22px}.marker-dot{height:12px;width:12px}.experience-project{padding:12px}}.skills{padding:20px 0}.skills-content{grid-gap:25px;display:grid;gap:25px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.skills-category{text-align:left}.skills-category h2{color:var(--primary-color);display:inline-block;font-size:clamp(1.1rem,2vw,1.4rem);margin-bottom:20px;position:relative}.skills-category h2:after{background:var(--accent-color);border-radius:1.5px;bottom:-6px;content:"";height:3px;left:0;position:absolute;width:40px}.skills-badges{display:flex;flex-wrap:wrap;gap:8px}.skill-badge{background-color:#007bff0f;border:1px solid var(--border-color);border-radius:20px;color:var(--text-primary);display:inline-block;font-size:.85rem;font-weight:500;padding:6px 14px;transition:all var(--transition-speed)}.skill-badge:hover{background-color:#007bff1f;border-color:var(--primary-color);transform:translateY(-2px)}@media (max-width:768px){.skills-content{grid-template-columns:1fr}}@media (max-width:480px){.skill-badge{font-size:.8rem;padding:5px 12px}}.projects{padding:20px 0}.featured-projects,.professional-projects{margin-bottom:50px;text-align:left}.projects-grid{grid-gap:25px;display:grid;gap:25px;margin-top:20px}.featured-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr))}.professional-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.project-card{display:flex;flex-direction:column;overflow:hidden;position:relative}.project-card.featured{border:1px solid #007bff33}.project-card:before{background:linear-gradient(90deg,#0000,#ffffff08,#0000);content:"";height:100%;left:-100%;pointer-events:none;position:absolute;top:0;transition:left .6s ease;width:50%;z-index:0}.project-card:hover:before{left:100%}.project-image{height:200px;overflow:hidden;position:relative}.project-image img{height:100%;object-fit:cover;transition:transform .4s ease;width:100%}.project-card:hover .project-image img{transform:scale(1.05)}.project-image-overlay{background:linear-gradient(180deg,#0000 60%,#0006);inset:0;pointer-events:none;position:absolute}.project-content{display:flex;flex:1 1;flex-direction:column;padding:20px;position:relative;text-align:left;z-index:1}.project-header{align-items:center;display:flex;gap:10px;justify-content:space-between;margin-bottom:6px}.project-content h3{color:var(--text-primary);font-size:1.2rem}.project-status{background-color:#28a74526;border-radius:12px;color:var(--accent-color);font-size:.72rem;font-weight:600;padding:3px 8px;white-space:nowrap}.project-subtitle{color:var(--primary-color);font-size:.88rem;font-weight:500;margin-bottom:10px}.project-description{color:var(--text-secondary);font-size:.9rem;line-height:1.6;margin-bottom:14px}.project-tech{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}.project-links{display:flex;gap:12px;margin-top:auto}.project-link-btn{align-items:center;border:1px solid var(--border-color);border-radius:6px;color:var(--text-secondary);display:inline-flex;font-size:.85rem;font-weight:500;gap:6px;padding:8px 16px;text-decoration:none;transition:all var(--transition-speed)}.project-link-btn:hover{background-color:#007bff14;border-color:var(--primary-color);color:var(--text-primary)}.project-link-btn.primary{border-color:var(--primary-color);color:var(--primary-color)}.project-link-btn.primary:hover{background-color:var(--primary-color);color:#fff}.project-card.compact .project-content{padding:0}.project-category-badge{background-color:#6c757d26;border-radius:4px;color:var(--secondary-color);display:inline-block;font-size:.72rem;font-weight:500;margin-top:auto;padding:3px 8px}@media (max-width:768px){.featured-grid,.professional-grid{grid-template-columns:1fr}.project-image{height:180px}}@media (max-width:480px){.project-image{height:150px}.project-links{flex-direction:column}.project-link-btn{justify-content:center}}.contact{padding:20px 0}.contact-content{grid-gap:30px;display:grid;gap:30px;grid-template-columns:1fr 1fr}.contact-info{text-align:left}.contact-info h2{color:var(--primary-color);display:inline-block;font-size:1.3rem;margin-bottom:20px;position:relative}.contact-info h2:after{background:var(--accent-color);border-radius:1.5px;bottom:-5px;content:"";height:3px;left:0;position:absolute;width:50px}.contact-details{margin-bottom:30px}.contact-item{align-items:flex-start;border-radius:8px;display:flex;gap:15px;margin-bottom:16px;padding:12px;transition:all var(--transition-speed)}.contact-item:hover{background-color:#ffffff08}.contact-icon{color:var(--primary-color);flex-shrink:0;font-size:1.3rem;margin-top:4px}.contact-item h3{color:var(--text-primary);font-size:.9rem;margin-bottom:3px}.contact-item a,.contact-item p{color:var(--text-secondary);font-size:.9rem;margin:0;text-decoration:none;transition:color var(--transition-speed)}.contact-item a:hover{color:var(--primary-color)}.social-links{display:flex;flex-wrap:wrap;gap:12px}.social-links a{align-items:center;border:1px solid var(--border-color);border-radius:8px;color:var(--text-secondary);display:flex;font-size:.9rem;gap:8px;padding:10px 16px;text-decoration:none;transition:all var(--transition-speed)}.social-links a:hover{background-color:#007bff14;border-color:var(--primary-color);color:var(--primary-color);transform:translateY(-2px)}.social-links svg{color:var(--primary-color);font-size:1.2rem}.contact-form{text-align:left}.contact-form h2{color:var(--primary-color);display:inline-block;font-size:1.3rem;margin-bottom:20px;position:relative}.contact-form h2:after{background:var(--accent-color);border-radius:1.5px;bottom:-5px;content:"";height:3px;left:0;position:absolute;width:50px}.form-message{border-radius:8px;font-size:.9rem;margin-bottom:20px;padding:12px 16px}.form-message.success{background-color:#28a7451a;border:1px solid #28a74533;color:var(--accent-color)}.form-group{margin-bottom:18px}.form-group label{color:var(--text-secondary);display:block;font-size:.85rem;font-weight:500;margin-bottom:6px}.form-group input,.form-group textarea{background-color:#ffffff08;border:1px solid var(--border-color);border-radius:8px;color:var(--text-primary);font-family:inherit;font-size:.95rem;padding:12px 15px;resize:vertical;transition:all var(--transition-speed);width:100%}.form-group input:focus,.form-group textarea:focus{background-color:#ffffff0d;border-color:var(--primary-color);box-shadow:0 0 0 3px #007bff26;outline:none}.form-group input[aria-invalid=true],.form-group textarea[aria-invalid=true]{border-color:#dc3545}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-secondary);opacity:.6}.form-error{color:#dc3545;display:block;font-size:.8rem;margin-top:4px}.submit-btn{align-items:center;display:flex;gap:8px;justify-content:center;width:100%}.submit-btn:disabled{cursor:not-allowed;opacity:.6}@media (max-width:768px){.contact-content{grid-template-columns:1fr}}@media (max-width:480px){.contact-form,.contact-info{padding:20px}}.header{background-color:var(--card-dark);border-bottom:1px solid var(--border-color);box-shadow:0 2px 10px #0000004d;position:-webkit-sticky;position:sticky;top:0;transition:padding var(--transition-speed),background-color var(--transition-speed);z-index:100}.header-scrolled{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background-color:#1e1e1ef2;padding:0}.header-container{align-items:center;display:flex;justify-content:space-between;margin:0 auto;max-width:var(--max-width);padding:16px 20px}.header-scrolled .header-container{padding:12px 20px}.logo,.logo h1{text-decoration:none}.logo h1{-webkit-text-fill-color:#0000;background:linear-gradient(90deg,var(--primary-color),var(--accent-color));-webkit-background-clip:text;background-clip:text;color:var(--text-primary);font-size:clamp(1.4rem,2.5vw,1.8rem);margin:0;position:relative}.logo h1:after{background:linear-gradient(90deg,var(--primary-color),var(--accent-color));bottom:-4px;content:"";height:2px;left:0;position:absolute;transform:scaleX(0);transform-origin:right;transition:transform .3s ease;width:100%}.logo:focus-visible h1:after,.logo:hover h1:after{transform:scaleX(1);transform-origin:left}.nav-list{display:flex;gap:clamp(15px,2.5vw,30px);list-style:none;margin:0;padding:0}.nav-list a{color:var(--text-secondary);font-size:.95rem;font-weight:500;padding:5px 0;position:relative;text-decoration:none;transition:all var(--transition-speed)}.nav-list a:after{background-color:var(--primary-color);bottom:0;content:"";height:2px;left:0;position:absolute;transition:width var(--transition-speed);width:0}.nav-list a:focus-visible,.nav-list a:hover{color:var(--text-primary)}.nav-list a:focus-visible:after,.nav-list a:hover:after{width:100%}.nav-list a.active{color:var(--primary-color)}.nav-list a.active:after{background-color:var(--accent-color);width:100%}.menu-toggle{background:none;border:none;color:var(--text-primary);cursor:pointer;display:none;font-size:1.8rem;line-height:1;padding:8px;z-index:1000}@media (max-width:768px){.header-container{padding:12px 15px}.menu-toggle{display:block}.nav{align-items:center;background-color:var(--card-dark);box-shadow:-5px 0 15px #0000004d;display:flex;height:100vh;justify-content:center;max-width:300px;position:fixed;right:-100%;top:0;transition:right .3s ease;width:70%;z-index:999}.nav-open{right:0}.nav-list{align-items:center;flex-direction:column;gap:20px}.nav-list a{border-radius:30px;font-size:1.1rem;padding:10px 24px}.nav-list a:focus-visible,.nav-list a:hover{background-color:#007bff1a}.logo h1{font-size:1.4rem}}@media (max-width:480px){.nav{max-width:none;width:100%}}.footer{background-color:var(--card-dark);border-top:1px solid var(--border-color);color:var(--text-secondary);margin-top:auto;padding:30px 0}.footer-container{margin:0 auto;max-width:var(--max-width);padding:0 20px;text-align:center}.footer-content{align-items:center;display:flex;flex-direction:column;gap:10px}.footer p{font-size:.9rem;margin:0}.footer-links{display:flex;gap:20px;margin-top:12px}.footer-links a{align-items:center;color:var(--text-secondary);display:flex;font-size:.9rem;gap:6px;text-decoration:none;transition:all var(--transition-speed)}.footer-links a:hover{color:var(--primary-color)}@media (max-width:768px){.footer-links{flex-wrap:wrap;gap:15px;justify-content:center}}.App{background-color:var(--background-dark);color:var(--text-primary);display:flex;flex-direction:column;min-height:100vh;overflow-x:hidden;position:relative;text-align:center}main{flex:1 1;margin:0 auto;max-width:var(--max-width);padding:20px;width:100%;z-index:10}.App:before{background:radial-gradient(circle at 10% 20%,#007bff14 0,#0000 20%),radial-gradient(circle at 90% 80%,#28a74514 0,#0000 20%);content:"";height:100%;left:0;pointer-events:none;position:fixed;top:0;width:100%;z-index:1}.section{padding:clamp(40px,6vw,80px) 20px;position:relative}.section-header{margin-bottom:clamp(30px,4vw,50px);position:relative}.section-header h1{display:inline-block;font-size:clamp(2rem,4vw,2.5rem);margin-bottom:15px;position:relative}.section-header h1:after{background:var(--primary-color);border-radius:2px;bottom:-10px;content:"";height:4px;left:50%;position:absolute;transform:translateX(-50%);width:80px}.section-header p{color:var(--text-secondary);font-size:clamp(1rem,2vw,1.2rem);margin:0 auto;max-width:600px}.subsection-title{color:var(--primary-color);display:inline-block;font-size:clamp(1.4rem,3vw,1.8rem);margin:40px 0 20px;position:relative}.subsection-title:after{background:var(--accent-color);border-radius:1.5px;bottom:-8px;content:"";height:3px;left:0;position:absolute;width:60px}.subsection-desc{color:var(--text-secondary);font-size:.95rem;margin-bottom:20px}.card{background-color:var(--card-dark);border:1px solid var(--border-color);border-radius:10px;box-shadow:0 10px 30px #0000004d;padding:clamp(20px,3vw,30px);transition:transform var(--transition-speed),box-shadow var(--transition-speed)}.card:hover{box-shadow:0 15px 35px #00000080}.btn{align-items:center;border:none;border-radius:30px;cursor:pointer;display:inline-flex;font-size:.95rem;font-weight:600;gap:8px;overflow:hidden;padding:12px 24px;position:relative;text-decoration:none;transition:all var(--transition-speed);z-index:1}.btn-icon{font-size:.85em}.btn:before{background:linear-gradient(90deg,#ffffff1a,#ffffff4d);content:"";height:100%;left:0;position:absolute;top:0;transition:all var(--transition-speed);width:0;z-index:-1}.btn:hover:before{width:100%}.btn-primary{background-color:var(--primary-color);box-shadow:0 4px 15px #007bff4d;color:#fff}.btn-primary:hover{background-color:#0069d9;box-shadow:0 7px 20px #007bff66;transform:translateY(-3px)}.btn-secondary{background-color:var(--secondary-color);box-shadow:0 4px 15px #6c757d4d;color:#fff}.btn-secondary:hover{background-color:#5a6268;box-shadow:0 7px 20px #6c757d66;transform:translateY(-3px)}.btn-outline{background-color:initial;border:2px solid var(--primary-color);box-shadow:0 4px 15px #007bff1a;color:var(--primary-color)}.btn-outline:hover{background-color:var(--primary-color);box-shadow:0 7px 20px #007bff4d;color:#fff;transform:translateY(-3px)}.grid{grid-gap:30px;display:grid;gap:30px}.tech-tag{background-color:#007bff1a;border:1px solid #007bff33;border-radius:4px;font-size:.8rem}.tech-badge,.tech-tag{color:var(--primary-color);display:inline-block;font-weight:500;padding:4px 10px}.tech-badge{background-color:#007bff14;border:1px solid #007bff26;border-radius:20px;font-size:.78rem;transition:all var(--transition-speed)}.tech-badge:hover{background-color:#007bff26;border-color:#007bff4d}.tech-more{background-color:#ffffff0d;border-color:var(--border-color);color:var(--text-secondary)}@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-12px)}to{transform:translateY(0)}}.float{animation:float 3s ease-in-out infinite}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.fade-in{animation:fadeIn .6s ease-out forwards}@keyframes shine{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}@keyframes gradient{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}.gradient-animation{animation:gradient 3s ease infinite;background-size:200% 200%}.scroll-progress{background:linear-gradient(90deg,var(--primary-color),var(--accent-color));height:3px;left:0;position:fixed;top:0;transition:width .1s ease;z-index:1000}
/*# sourceMappingURL=main.517c9521.css.map*/