@import"https://fonts.googleapis.com/css2?family=Orbitron:wght@400;500;600;700&family=Roboto+Mono:wght@300;400;500&family=Space+Grotesk:wght@300;400;500;600&display=swap";.header-inner{display:flex;justify-content:space-between;align-items:center}.mobile-menu-button{order:1}.theme-toggle-container{order:2}.logo{order:3}.particle-background{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden;z-index:0}.particle-background canvas{display:block;width:100%;height:100%}.light-mode .particle-background{opacity:.6}@media (max-width: 768px){.particle-background{opacity:.6}.light-mode .particle-background{opacity:.4}}@media (prefers-reduced-motion: reduce){.particle-background{display:none}}.hero{min-height:100vh;position:relative;display:flex;align-items:center;color:var(--color-text);overflow:hidden}.hero-background{position:absolute;top:0;left:0;width:100%;height:100%;background-size:cover;background-position:center;z-index:-2}.hero-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(to bottom,rgba(18,18,18,.8),rgba(18,18,18,.95));z-index:-1}.light-mode .hero-overlay{background:linear-gradient(to bottom,rgba(245,245,247,.8),rgba(245,245,247,.95))}.hero .container{display:grid;grid-template-columns:1fr;gap:var(--space-6);width:100%}@media (min-width: 1024px){.hero .container{grid-template-columns:1fr 1fr;align-items:center}}.hero-content{max-width:600px}.hero-title{font-size:var(--font-size-5xl);margin-bottom:var(--space-4);line-height:1.1}.hero-subtitle{font-size:var(--font-size-2xl);margin-bottom:var(--space-4);color:var(--color-primary);font-weight:500}.hero-description{font-size:var(--font-size-lg);margin-bottom:var(--space-5);line-height:1.6;color:var(--color-text-secondary)}.hero-cta{margin-top:var(--space-5)}.hero-image-container{display:flex;justify-content:center;align-items:center;position:relative}.hero-image-wrapper{position:relative;z-index:1;transform-style:preserve-3d;perspective:1000px}.hero-image{width:100%;max-width:400px;height:auto;border-radius:var(--radius-md);position:relative;z-index:2}.hero-image-glow{position:absolute;width:100%;height:100%;border-radius:var(--radius-md);background:radial-gradient(circle,rgba(0,240,255,.4) 0%,transparent 70%);filter:blur(15px);z-index:1;opacity:.7}.scroll-indicator{position:absolute;bottom:var(--space-4);left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;color:var(--color-text-secondary);font-size:var(--font-size-sm);cursor:pointer;z-index:3;animation:float 2s ease-in-out infinite}.scroll-indicator span{margin-bottom:var(--space-2)}.scroll-indicator svg{animation:bounce 2s infinite}@media (max-width: 1023px){.hero-title{font-size:var(--font-size-4xl)}.hero-subtitle{font-size:var(--font-size-xl)}.hero-image{max-width:320px}}@media (max-width: 767px){.hero-title{font-size:var(--font-size-3xl)}.hero-subtitle{font-size:var(--font-size-lg)}.hero-description{font-size:var(--font-size-base)}.hero-image{max-width:280px}}.introduction{padding:var(--space-8) 0;background-color:var(--color-background);position:relative;overflow:hidden}.light-mode .introduction{background-color:var(--color-background-light)}.introduction:before,.introduction:after{content:"";position:absolute;background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));opacity:.05;border-radius:50%;z-index:0}.introduction:before{width:300px;height:300px;top:-150px;left:-100px;filter:blur(20px)}.introduction:after{width:400px;height:400px;bottom:-200px;right:-150px;filter:blur(30px)}.introduction-content{position:relative;z-index:1}.introduction-heading{margin-bottom:var(--space-6);position:relative;display:inline-block}.introduction-heading h2{font-size:var(--font-size-3xl);margin-bottom:var(--space-3);position:relative}.heading-line{height:4px;width:60px;background:var(--gradient-primary);border-radius:var(--radius-full)}.introduction-grid{display:grid;grid-template-columns:1fr;gap:var(--space-6)}@media (min-width: 768px){.introduction-grid{grid-template-columns:1.5fr 1fr;align-items:center}}.introduction-text{font-size:var(--font-size-lg);color:var(--color-text);line-height:1.7}.introduction-paragraph{margin-bottom:var(--space-5)}.introduction-text .highlight{color:var(--color-primary);font-weight:500;position:relative}.introduction-text .highlight:after{content:"";position:absolute;bottom:2px;left:0;width:100%;height:5px;background-color:var(--color-primary);opacity:.2;border-radius:var(--radius-sm)}.introduction-cta{margin-top:var(--space-6)}.introduction-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:var(--space-4)}.stat-item{padding:var(--space-4);background-color:var(--color-background-secondary);border-radius:var(--radius-md);text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;transition:transform var(--transition-normal) var(--ease-out),box-shadow var(--transition-normal) var(--ease-out)}.light-mode .stat-item{background-color:var(--color-background-secondary-light)}.stat-item:hover{transform:translateY(-5px);box-shadow:var(--shadow-medium)}.stat-value{font-family:var(--font-heading);font-size:var(--font-size-4xl);font-weight:700;color:var(--color-primary);line-height:1;margin-bottom:var(--space-2);position:relative;display:flex;align-items:center}.stat-plus{font-size:var(--font-size-xl);margin-left:2px;align-self:flex-start}.stat-label{font-size:var(--font-size-sm);color:var(--color-text-secondary);line-height:1.4}@media (max-width: 767px){.introduction-heading h2{font-size:var(--font-size-2xl)}.introduction-text{font-size:var(--font-size-md)}.stat-value{font-size:var(--font-size-3xl)}.stat-plus{font-size:var(--font-size-lg)}}.featured-projects{padding:var(--space-8) 0;background-color:var(--color-background);position:relative;overflow:hidden}.light-mode .featured-projects{background-color:var(--color-background-light)}.section-header{text-align:center;margin-bottom:var(--space-6)}.section-title-container{display:inline-flex;flex-direction:column;align-items:center;margin-bottom:var(--space-2)}.section-title{font-size:var(--font-size-3xl);margin-bottom:var(--space-2);position:relative;line-height:1.2}.section-title-line{height:4px;width:60px;background:var(--gradient-primary);border-radius:var(--radius-full);margin-top:var(--space-2)}.section-subtitle{font-size:var(--font-size-lg);color:var(--color-text-secondary);max-width:600px;margin:0 auto;line-height:1.6}.featured-projects-grid{display:grid;grid-template-columns:1fr;gap:var(--space-6);margin:0 auto;max-width:800px}@media (min-width: 1024px){.featured-projects-grid{max-width:1000px}.project-card{transform:scale(1.05);transition:transform .3s ease}.project-card:hover{transform:scale(1.08)}}.featured-projects-cta{text-align:center;margin-top:var(--space-8);position:relative;z-index:2}.featured-projects:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle at 10% 10%,rgba(191,0,255,.05) 0%,transparent 50%),radial-gradient(circle at 90% 90%,rgba(0,240,255,.05) 0%,transparent 50%);pointer-events:none;animation:gradientFloat 15s infinite linear}@keyframes gradientFloat{0%{transform:translate(0)}25%{transform:translate(5%,5%)}50%{transform:translateY(10%)}75%{transform:translate(-5%,5%)}to{transform:translate(0)}}.project-card{background-color:var(--card-bg, #1e1e1e);border-radius:16px;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease,background .3s ease;box-shadow:0 12px 40px #00000026,0 0 0 1px #ffffff0d;position:relative;min-height:400px}.project-card:hover{box-shadow:0 20px 50px #00000040,0 0 0 1px #ffffff1a;z-index:5}.project-card-image{height:220px;overflow:hidden;position:relative;border-bottom:2px solid rgba(255,255,255,.05)}.project-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.8,.2,1)}.project-card:hover .project-card-image img{transform:scale(1.05)}.project-card-content{padding:1.8rem;position:relative;background:linear-gradient(180deg,rgba(30,30,30,0) 0%,var(--card-bg, #1e1e1e) 30%)}.project-card-title{font-size:1.6rem;font-weight:600;margin-bottom:.6rem;color:var(--text-primary, #ffffff);letter-spacing:-.02em}.project-card-subtitle{font-size:1.05rem;color:var(--text-secondary, #b0b0b0);margin-bottom:1.2rem;line-height:1.5}.project-card-tech{display:flex;flex-wrap:wrap;gap:.6rem;margin-bottom:1.8rem}.tech-tag{background:rgba(0,240,255,.12);color:var(--primary-color, #00f0ff);padding:.3rem .9rem;border-radius:50px;font-size:.85rem;font-weight:500;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);transition:background .3s ease}.tech-tag:hover{background:rgba(0,240,255,.2)}.view-project{display:inline-flex;align-items:center;font-weight:500;color:var(--primary-color, #00f0ff);transition:transform .3s ease,color .3s ease}.view-project svg{margin-left:.6rem;transition:transform .3s ease}.project-card-link:hover .view-project{color:#7df2ff}.project-card-link:hover .view-project svg{transform:translate(4px)}.project-card-glow{position:absolute;width:150%;height:150%;top:50%;left:50%;transform:translate(-50%,-50%);background:radial-gradient(circle at 50% 50%,rgba(0,240,255,.15) 0%,rgba(0,0,0,0) 60%);opacity:0;transition:opacity .6s ease;pointer-events:none}.project-card:hover .project-card-glow{opacity:1}.biography{padding:var(--space-8) 0;background-color:var(--color-background);position:relative}.light-mode .biography{background-color:var(--color-background-light)}.section-title-container{display:flex;flex-direction:column;align-items:center;margin-bottom:var(--space-6);text-align:center}.section-title{font-size:var(--font-size-3xl);margin-bottom:var(--space-2);position:relative}.section-title-line{height:4px;width:60px;background:var(--gradient-primary);border-radius:var(--radius-full)}.biography-content{display:grid;grid-template-columns:1fr;gap:var(--space-6)}@media (min-width: 1024px){.biography-content{grid-template-columns:2fr 1fr;gap:var(--space-8);align-items:center}}.biography-text{font-size:var(--font-size-md);line-height:1.8;color:var(--color-text)}.biography-text p{margin-bottom:var(--space-4)}.biography-text p:last-child{margin-bottom:0}.biography-image{display:flex;flex-direction:column;align-items:center}.image-container{width:100%;max-width:300px;position:relative;margin-bottom:var(--space-5)}.image-container img{width:100%;height:auto;border-radius:var(--radius-md);position:relative;z-index:1}.image-glow{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:var(--radius-md);background:radial-gradient(circle,rgba(0,240,255,.3) 0%,transparent 70%);filter:blur(20px);z-index:0}.biography-quote{background-color:var(--color-background-secondary);padding:var(--space-4);border-radius:var(--radius-md);border-left:4px solid var(--color-primary);max-width:300px}.light-mode .biography-quote{background-color:var(--color-background-secondary-light)}.biography-quote blockquote{font-family:var(--font-heading);font-size:var(--font-size-md);line-height:1.6;color:var(--color-text);font-style:italic;position:relative}.biography-quote blockquote:before{content:'"';font-size:var(--font-size-4xl);color:var(--color-primary);opacity:.2;position:absolute;top:-25px;left:-10px}@media (max-width: 768px){.section-title{font-size:var(--font-size-2xl)}.biography-text{font-size:var(--font-size-base)}.image-container,.biography-quote{max-width:240px}.biography-quote blockquote{font-size:var(--font-size-sm)}}.skills{padding:var(--space-8) 0;background-color:var(--color-background-secondary);position:relative;overflow:hidden}.light-mode .skills{background-color:var(--color-background-secondary-light)}.skills-bg-element{position:absolute;border-radius:50%;filter:blur(60px);z-index:0}.skills-bg-1{width:400px;height:400px;background:radial-gradient(circle,rgba(0,240,255,.1) 0%,transparent 70%);top:-200px;right:-100px}.skills-bg-2{width:300px;height:300px;background:radial-gradient(circle,rgba(191,0,255,.1) 0%,transparent 70%);bottom:-150px;left:-100px}.skills .container{position:relative;z-index:1}.skills-tabs{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-2);margin-bottom:var(--space-6)}.tab-button{background:transparent;border:1px solid var(--color-border);color:var(--color-text-secondary);font-family:var(--font-heading);font-size:var(--font-size-sm);padding:var(--space-2) var(--space-3);border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-normal) var(--ease-out)}.tab-button:hover{border-color:var(--color-primary);color:var(--color-primary)}.tab-button.active{background-color:var(--color-primary);border-color:var(--color-primary);color:var(--color-background);box-shadow:var(--glow-primary)}.skills-grid{display:grid;grid-template-columns:repeat(1,1fr);gap:var(--space-5)}@media (min-width: 768px){.skills-grid{grid-template-columns:repeat(2,1fr)}}.skill-item{margin-bottom:var(--space-4)}.skill-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-2)}.skill-name{font-size:var(--font-size-md);font-weight:500;margin:0;color:var(--color-text)}.skill-level-text{font-size:var(--font-size-sm);color:var(--color-primary);font-family:var(--font-body)}.skill-bar-container{width:100%;height:6px;background-color:var(--color-background-tertiary);border-radius:var(--radius-full);overflow:hidden}.light-mode .skill-bar-container{background-color:var(--color-background-tertiary-light)}.skill-bar{height:100%;background:var(--gradient-primary);border-radius:var(--radius-full)}@media (max-width: 767px){.skills-tabs{justify-content:flex-start;overflow-x:auto;padding-bottom:var(--space-2);margin-bottom:var(--space-4)}.skill-name{font-size:var(--font-size-base)}}.timeline{padding:var(--space-8) 0;background-color:var(--color-background);position:relative}.light-mode .timeline{background-color:var(--color-background-light)}.timeline-tabs{display:flex;justify-content:center;gap:var(--space-4);margin-bottom:var(--space-6)}.timeline-tabs .tab-button{min-width:160px}.timeline-content{position:relative;max-width:800px;margin:0 auto}.timeline-items{position:relative;padding-left:40px}.timeline-items:before{content:"";position:absolute;top:0;bottom:0;left:15px;width:2px;background:linear-gradient(to bottom,var(--color-primary) 0%,var(--color-secondary) 100%)}.timeline-item{position:relative;margin-bottom:var(--space-6)}.timeline-item:last-child{margin-bottom:0}.timeline-marker{position:absolute;top:0;left:-40px;width:30px;height:30px;border-radius:50%;background-color:var(--color-background-secondary);border:2px solid var(--color-primary);box-shadow:var(--glow-primary);z-index:1}.timeline-marker.education{border-color:var(--color-secondary);box-shadow:var(--glow-secondary)}.timeline-item-content{background-color:var(--color-background-secondary);padding:var(--space-4);border-radius:var(--radius-md);box-shadow:var(--shadow-subtle)}.light-mode .timeline-item-content{background-color:var(--color-background-secondary-light)}.timeline-item-header{margin-bottom:var(--space-3)}.timeline-item-title{font-size:var(--font-size-lg);margin:0 0 var(--space-1);color:var(--color-text)}.timeline-item-company{display:block;font-size:var(--font-size-md);color:var(--color-primary);margin-bottom:var(--space-1)}.timeline-marker.education+.timeline-item-content .timeline-item-company{color:var(--color-secondary)}.timeline-item-period{display:block;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.timeline-item-description{margin-bottom:var(--space-3);line-height:1.6}.timeline-item-highlights{padding-left:var(--space-4);margin-bottom:0}.timeline-item-highlights li{margin-bottom:var(--space-2);position:relative}.timeline-item-highlights li:before{content:"";position:absolute;left:-15px;top:10px;width:6px;height:6px;border-radius:50%;background-color:var(--color-primary)}@media (max-width: 768px){.timeline-tabs{gap:var(--space-2)}.timeline-tabs .tab-button{min-width:120px;font-size:var(--font-size-xs)}.timeline-items{padding-left:30px}.timeline-items:before{left:10px}.timeline-marker{width:20px;height:20px;left:-30px}.timeline-item-title{font-size:var(--font-size-md)}.timeline-item-company{font-size:var(--font-size-base)}.timeline-item-content{padding:var(--space-3)}}.about-hero{padding:var(--space-8) 0;background-color:var(--color-background);position:relative;text-align:center;overflow:hidden}.light-mode .about-hero{background-color:var(--color-background-light)}.about-hero-content{position:relative;z-index:1}.about-hero h1{font-size:var(--font-size-4xl);margin-bottom:var(--space-3);background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text;color:transparent;display:inline-block}.about-subtitle{font-size:var(--font-size-lg);color:var(--color-text-secondary);max-width:600px;margin:0 auto}.about-cta{padding:var(--space-8) 0;background-color:var(--color-background-secondary);position:relative;overflow:hidden}.light-mode .about-cta{background-color:var(--color-background-secondary-light)}.cta-container{text-align:center;max-width:800px;margin:0 auto;padding:var(--space-6);background-color:var(--color-background-tertiary);border-radius:var(--radius-lg);position:relative;z-index:1;box-shadow:var(--shadow-medium)}.light-mode .cta-container{background-color:var(--color-background-tertiary-light)}.cta-container:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(135deg,rgba(0,240,255,.1),rgba(191,0,255,.1));z-index:-1;border-radius:var(--radius-lg);opacity:.6}.cta-container h2{font-size:var(--font-size-2xl);margin-bottom:var(--space-3)}.cta-container p{font-size:var(--font-size-lg);color:var(--color-text-secondary);margin-bottom:var(--space-5)}.cta-buttons{display:flex;justify-content:center;gap:var(--space-4)}@media (max-width: 768px){.about-hero h1{font-size:var(--font-size-3xl)}.about-subtitle{font-size:var(--font-size-md)}.cta-container h2{font-size:var(--font-size-xl)}.cta-container p{font-size:var(--font-size-md)}.cta-buttons{flex-direction:column;gap:var(--space-3)}}.project-grid{display:grid;grid-template-columns:repeat(1,1fr);gap:var(--space-6)}@media (min-width: 640px){.project-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.project-grid{grid-template-columns:repeat(3,1fr)}}.project-grid>div{transition:all var(--transition-normal) var(--ease-out)}@media (min-width: 1280px){.project-grid{grid-auto-flow:dense}.project-grid>div:nth-child(5n+1){grid-column:span 2}}.project-grid.loading{opacity:.6}.project-grid-empty{height:300px;display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary);background-color:var(--color-background-secondary);border-radius:var(--radius-md);font-size:var(--font-size-lg)}.light-mode .project-grid-empty{background-color:var(--color-background-secondary-light)}.project-header{padding:var(--space-7) 0 var(--space-5);background-color:var(--color-background);position:relative}.light-mode .project-header{background-color:var(--color-background-light)}.project-header:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at top right,rgba(191,0,255,.05),transparent 70%),radial-gradient(circle at bottom left,rgba(0,240,255,.05),transparent 70%);pointer-events:none}.project-title{font-size:var(--font-size-3xl);margin-bottom:var(--space-2)}.project-subtitle{font-size:var(--font-size-xl);color:var(--color-text-secondary);font-weight:400;margin-bottom:var(--space-4)}.project-meta{display:flex;flex-wrap:wrap;gap:var(--space-4);margin-bottom:var(--space-3)}.meta-label{color:var(--color-text-secondary);margin-right:var(--space-2);font-family:var(--font-heading);font-size:var(--font-size-sm)}.meta-value{color:var(--color-text)}.tech-tags{display:inline-flex;flex-wrap:wrap;gap:var(--space-2)}.tech-tag{background-color:var(--color-background-tertiary);color:var(--color-primary);padding:2px var(--space-2);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-family:var(--font-body)}.light-mode .tech-tag{background-color:var(--color-background-tertiary-light)}.project-content{padding:var(--space-5) 0 var(--space-8)}.project-grid{display:grid;grid-template-columns:1fr;gap:var(--space-6)}@media (min-width: 1024px){.project-grid{grid-template-columns:2fr 3fr;gap:var(--space-8)}}.project-details{margin-bottom:var(--space-6)}.project-details p{margin-bottom:var(--space-4);line-height:1.8}.project-links{display:flex;gap:var(--space-3);margin-top:var(--space-5)}.project-images{display:flex;flex-direction:column;gap:var(--space-4);position:relative}.featured-image,.additional-image{width:100%;border-radius:var(--radius-md);overflow:hidden;box-shadow:var(--shadow-medium)}.project-image{width:100%;height:auto;display:block;transition:transform var(--transition-normal) var(--ease-out)}.featured-image:hover .project-image,.additional-image:hover .project-image{transform:scale(1.02)}.related-projects{background-color:var(--color-background-secondary);padding:var(--space-7) 0}.light-mode .related-projects{background-color:var(--color-background-secondary-light)}.related-project{border-radius:var(--radius-md);overflow:hidden;background-color:var(--color-background);transition:transform var(--transition-normal) var(--ease-out),box-shadow var(--transition-normal) var(--ease-out)}.light-mode .related-project{background-color:var(--color-background-light)}.related-project:hover{transform:translateY(-5px);box-shadow:var(--shadow-medium)}.related-image{height:180px;overflow:hidden}.related-project:hover .related-image img{transform:scale(1.05)}.related-project-title{font-size:var(--font-size-md);margin:var(--space-3) var(--space-3) var(--space-1)}.related-project-category{color:var(--color-text-secondary);font-size:var(--font-size-sm);margin:0 var(--space-3) var(--space-3)}@media (max-width: 768px){.project-title{font-size:var(--font-size-2xl)}.project-subtitle{font-size:var(--font-size-lg)}.project-links{flex-direction:column}.related-title{font-size:var(--font-size-xl)}}.project-card{background-color:var(--card-bg, #1e1e1e);border-radius:12px;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease;box-shadow:0 10px 30px #0000001a;height:100%;min-height:350px;position:relative;transform-style:preserve-3d;perspective:1000px}.project-card-image{height:200px;overflow:hidden;position:relative}.project-card-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.project-card-content{padding:1.5rem;background-color:var(--card-bg, #1e1e1e);position:relative;z-index:2}.project-card-title{font-size:1.5rem;font-weight:600;margin-bottom:.5rem;color:var(--text-primary, #ffffff)}.project-card-subtitle{font-size:1rem;color:var(--text-secondary, #b0b0b0);margin-bottom:1rem}.project-card-tech{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.tech-tag{background:rgba(0,240,255,.1);color:var(--primary-color, #00f0ff);padding:.25rem .75rem;border-radius:50px;font-size:.8rem;font-weight:500;display:inline-block}.project-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:2rem;margin-top:2rem}@media (max-width: 768px){.project-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}}.view-project{display:flex;align-items:center;font-weight:500;color:var(--primary-color, #00f0ff);transition:transform .3s ease}.view-project svg{margin-left:.5rem;transition:transform .3s ease}.project-card-link:hover .view-project svg{transform:translate(3px)}.project-grid-empty,.portfolio-empty,.portfolio-loading{text-align:center;padding:3rem;background:rgba(255,255,255,.05);border-radius:12px;margin:2rem 0}.project-card-glow{position:absolute;width:100%;height:100%;top:0;left:0;pointer-events:none;z-index:1;opacity:0;transition:opacity .5s ease;background:radial-gradient(circle at 50% 50%,rgba(0,240,255,.4) 0%,rgba(0,0,0,0) 70%)}.portfolio-hero{padding:var(--space-7) 0 var(--space-5);background-color:var(--color-background);position:relative;text-align:center}.light-mode .portfolio-hero{background-color:var(--color-background-light)}.portfolio-hero:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at top right,rgba(191,0,255,.05),transparent 70%),radial-gradient(circle at bottom left,rgba(0,240,255,.05),transparent 70%);pointer-events:none}.portfolio-hero h1{font-size:var(--font-size-4xl);margin-bottom:var(--space-3);background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text;color:transparent;display:inline-block}.portfolio-subtitle{font-size:var(--font-size-lg);color:var(--color-text-secondary);max-width:600px;margin:0 auto}.portfolio-content{padding:var(--space-5) 0 var(--space-8)}.portfolio-filter{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-2);margin-bottom:var(--space-6)}.project-grid-empty{text-align:center;padding:var(--space-8) 0;color:var(--color-text-secondary)}@media (max-width: 768px){.portfolio-hero h1{font-size:var(--font-size-3xl)}.portfolio-subtitle{font-size:var(--font-size-md)}.portfolio-filter{gap:var(--space-1)}.filter-button{font-size:var(--font-size-xs);padding:var(--space-1) var(--space-2)}}.article-card{border-radius:var(--radius-md);background-color:var(--color-background-secondary);overflow:hidden;height:100%;transition:transform var(--transition-normal) var(--ease-out),box-shadow var(--transition-normal) var(--ease-out)}.light-mode .article-card{background-color:var(--color-background-secondary-light)}.article-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-medium)}.article-card-link{display:flex;flex-direction:column;height:100%;color:var(--color-text);text-decoration:none}.article-image{height:200px;position:relative;overflow:hidden}@media (min-width: 1024px){.article-list>div:first-child .article-image{height:300px}}.article-image img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-normal) var(--ease-out)}.article-categories{position:absolute;top:var(--space-3);left:var(--space-3);display:flex;flex-wrap:wrap;gap:var(--space-2)}.article-content{padding:var(--space-4);display:flex;flex-direction:column;flex-grow:1}.article-meta{display:flex;justify-content:space-between;margin-bottom:var(--space-2);font-size:var(--font-size-xs);color:var(--color-text-secondary)}.article-date,.article-read-time{display:inline-block}.article-title{font-size:var(--font-size-lg);margin-bottom:var(--space-2);line-height:1.3;transition:color var(--transition-fast) var(--ease-out)}.article-card:hover .article-title{color:var(--color-primary)}@media (min-width: 1024px){.article-list>div:first-child .article-title{font-size:var(--font-size-xl)}}.article-excerpt{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-bottom:var(--space-3);line-height:1.6;display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden;flex-grow:1;line-clamp:3}@media (min-width: 1024px){.article-list>div:first-child .article-excerpt{line-clamp:4;-webkit-line-clamp:4}}.article-footer{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:var(--space-3);border-top:1px solid var(--color-border)}.light-mode .article-footer{border-color:var(--color-border-light)}.author-avatar{width:24px;height:24px;border-radius:50%;margin-right:var(--space-2)}.author-name{font-size:var(--font-size-xs);color:var(--color-text-secondary)}.read-more{font-size:var(--font-size-xs);font-family:var(--font-heading);color:var(--color-primary);display:flex;align-items:center;gap:var(--space-1);transition:transform var(--transition-fast) var(--ease-out)}.article-card:hover .read-more{transform:translate(3px)}@media (max-width: 639px){.article-image{height:180px}.article-content{padding:var(--space-3)}.article-title{font-size:var(--font-size-md)}}.article-list{display:grid;grid-template-columns:repeat(1,1fr);gap:var(--space-6)}@media (min-width: 640px){.article-list{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.article-list{grid-template-columns:repeat(3,1fr)}}@media (min-width: 1024px){.article-list>div:first-child{grid-column:span 2}}.article-list-empty{height:300px;display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary);background-color:var(--color-background-secondary);border-radius:var(--radius-md);font-size:var(--font-size-lg)}.light-mode .article-list-empty{background-color:var(--color-background-secondary-light)}.article-list.loading{opacity:.6}.article-pagination{display:flex;justify-content:center;gap:var(--space-2);margin-top:var(--space-6)}.pagination-button{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background-color:var(--color-background-secondary);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);font-family:var(--font-heading);cursor:pointer;transition:all var(--transition-normal) var(--ease-out)}.light-mode .pagination-button{background-color:var(--color-background-secondary-light);border-color:var(--color-border-light)}.pagination-button:hover{border-color:var(--color-primary);color:var(--color-primary)}.pagination-button.active{background-color:var(--color-primary);border-color:var(--color-primary);color:var(--color-background);box-shadow:var(--glow-primary)}.pagination-button.disabled{opacity:.5;cursor:not-allowed}.article-card{background-color:var(--card-bg, #1e1e1e);border-radius:12px;overflow:hidden;transition:transform .3s ease,box-shadow .3s ease;box-shadow:0 10px 30px #0000001a;height:100%;min-height:350px;display:flex;flex-direction:column}.article-card:hover{transform:translateY(-5px);box-shadow:0 15px 35px #00000026}.article-card-link{text-decoration:none;color:inherit;display:flex;flex-direction:column;height:100%}.article-image{height:200px;overflow:hidden;position:relative}.article-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.article-card:hover .article-image img{transform:scale(1.05)}.article-content{padding:1.5rem;background-color:var(--card-bg, #1e1e1e);flex-grow:1;display:flex;flex-direction:column}.article-title{font-size:1.5rem;font-weight:600;margin-bottom:.75rem;color:var(--text-primary, #ffffff)}.article-excerpt{font-size:1rem;color:var(--text-secondary, #b0b0b0);margin-bottom:1.5rem;line-height:1.6;flex-grow:1}.article-meta{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;font-size:.9rem;color:var(--text-tertiary, #888888)}.article-categories{position:absolute;top:1rem;left:1rem;display:flex;gap:.5rem}.article-category{background:rgba(0,240,255,.2);color:#fff;padding:.25rem .75rem;border-radius:50px;font-size:.75rem;font-weight:500;display:inline-block}.article-footer{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:1rem;border-top:1px solid rgba(255,255,255,.1)}.article-author{display:flex;align-items:center}.author-avatar{width:30px;height:30px;border-radius:50%;object-fit:cover;margin-right:.5rem}.author-name{font-size:.85rem;color:var(--text-secondary, #b0b0b0)}.read-more{display:flex;align-items:center;font-weight:500;color:var(--primary-color, #00f0ff);transition:transform .3s ease}.read-more svg{margin-left:.5rem;transition:transform .3s ease}.article-card:hover .read-more svg{transform:translate(3px)}.article-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:2rem;margin-top:2rem}@media (max-width: 768px){.article-list{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}.article-list-empty,.blog-empty,.blog-loading{text-align:center;padding:3rem;background:rgba(255,255,255,.05);border-radius:12px;margin:2rem 0;color:var(--text-secondary, #b0b0b0)}.blog-filter{display:flex;flex-wrap:wrap;gap:.75rem;margin:2rem 0}.filter-button{background:rgba(255,255,255,.05);border:none;padding:.5rem 1.25rem;border-radius:50px;color:var(--text-secondary, #b0b0b0);font-size:.9rem;cursor:pointer;transition:all .3s ease}.filter-button:hover{background:rgba(255,255,255,.1)}.filter-button.active{background:var(--primary-color, #00f0ff);color:#000}.article-detail{margin-bottom:4rem}.article-header{padding:4rem 0 2rem}.article-content-wrapper{padding:3rem 0}.article-content{max-width:800px;margin:0 auto;line-height:1.8}.article-content h1,.article-content h2,.article-content h3,.article-content h4,.article-content h5,.article-content h6{margin-top:2rem;margin-bottom:1rem}.article-content p,.article-content ul,.article-content ol{margin-bottom:1.5rem}.article-content pre{background:rgba(0,0,0,.2);padding:1.5rem;border-radius:8px;overflow:auto;margin-bottom:1.5rem}.article-content code{font-family:Roboto Mono,monospace;font-size:.9em}.article-content blockquote{border-left:4px solid var(--primary-color, #00f0ff);padding-left:1.5rem;font-style:italic;margin:1.5rem 0;color:var(--text-secondary, #b0b0b0)}.related-articles{padding:3rem 0;background:rgba(0,0,0,.2)}.related-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:2rem;margin-top:2rem}.related-article{background:rgba(255,255,255,.05);border-radius:12px;overflow:hidden;transition:transform .3s ease}.related-article:hover{transform:translateY(-5px)}.related-image img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.related-article-title{padding:1rem;font-size:1.1rem;margin-bottom:.25rem}.related-article-date{padding:0 1rem 1rem;font-size:.85rem;color:var(--text-tertiary, #888888)}.share-buttons{display:flex;gap:1rem;margin-top:1rem}.share-button{display:flex;align-items:center;background:rgba(255,255,255,.05);border:none;padding:.6rem 1.25rem;border-radius:50px;color:var(--text-secondary, #b0b0b0);font-size:.9rem;cursor:pointer;transition:all .3s ease}.share-button svg{margin-right:.5rem}.share-button:hover{background:rgba(255,255,255,.1);transform:translateY(-2px)}.share-button.twitter:hover{color:#1da1f2}.share-button.facebook:hover{color:#4267b2}.share-button.linkedin:hover{color:#0077b5}.article-header{padding:var(--space-7) 0 var(--space-5);background-color:var(--color-background);position:relative}.light-mode .article-header{background-color:var(--color-background-light)}.article-header:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at top right,rgba(191,0,255,.05),transparent 70%),radial-gradient(circle at bottom left,rgba(0,240,255,.05),transparent 70%);pointer-events:none}.back-button{margin-bottom:var(--space-4)}.back-button button{display:flex;align-items:center;gap:var(--space-2);color:var(--color-text-secondary);transition:color var(--transition-normal) var(--ease-out)}.back-button button:hover{color:var(--color-primary)}.article-meta{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;margin-bottom:var(--space-4)}.article-categories{display:flex;flex-wrap:wrap;gap:var(--space-2)}.article-category{background-color:var(--color-primary);color:var(--color-background);font-size:var(--font-size-xs);padding:2px var(--space-2);border-radius:var(--radius-sm);font-family:var(--font-heading)}.article-date-info{display:flex;gap:var(--space-3);color:var(--color-text-secondary);font-size:var(--font-size-sm)}.article-title{font-size:var(--font-size-3xl);margin-bottom:var(--space-2);line-height:1.2}.article-subtitle{font-size:var(--font-size-xl);color:var(--color-text-secondary);font-weight:400;margin-bottom:var(--space-4)}.article-author{display:flex;align-items:center;margin-top:var(--space-4)}.author-avatar{width:40px;height:40px;border-radius:50%;margin-right:var(--space-2)}.author-name{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.article-featured-image{margin-bottom:var(--space-6)}.article-featured-image img{width:100%;height:auto;max-height:500px;object-fit:cover;border-radius:var(--radius-md)}.article-content-wrapper{padding:var(--space-5) 0 var(--space-8);background-color:var(--color-background)}.light-mode .article-content-wrapper{background-color:var(--color-background-light)}.article-content{max-width:800px;margin:0 auto;font-size:var(--font-size-md);line-height:1.8;color:var(--color-text)}.article-content h1,.article-content h2,.article-content h3,.article-content h4,.article-content h5,.article-content h6{margin-top:var(--space-6);margin-bottom:var(--space-3);line-height:1.3;font-family:var(--font-heading);position:relative}.article-content h1{font-size:var(--font-size-2xl)}.article-content h2{font-size:var(--font-size-xl)}.article-content h3{font-size:var(--font-size-lg)}.article-content h4{font-size:var(--font-size-md)}.article-content p{margin-bottom:var(--space-4)}.article-content a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast) var(--ease-out)}.article-content a:hover{color:var(--color-secondary);text-decoration:underline}.article-content img{max-width:100%;height:auto;border-radius:var(--radius-md);margin:var(--space-5) 0}.article-content blockquote{border-left:4px solid var(--color-primary);padding-left:var(--space-4);margin:var(--space-5) 0;font-style:italic;color:var(--color-text-secondary)}.article-content pre{background-color:var(--color-background-tertiary);padding:var(--space-4);border-radius:var(--radius-md);overflow-x:auto;font-family:var(--font-body);font-size:var(--font-size-sm);line-height:1.6;margin:var(--space-5) 0}.light-mode .article-content pre{background-color:var(--color-background-tertiary-light)}.article-content code{font-family:var(--font-body);font-size:.9em;padding:.2em .4em;background-color:var(--color-background-tertiary);border-radius:var(--radius-sm)}.light-mode .article-content code{background-color:var(--color-background-tertiary-light)}.article-content pre code{padding:0;background-color:transparent}.article-content ul,.article-content ol{margin:var(--space-4) 0;padding-left:var(--space-5)}.article-content li{margin-bottom:var(--space-2)}.article-content hr{border:none;height:1px;background-color:var(--color-border);margin:var(--space-6) 0}.light-mode .article-content hr{background-color:var(--color-border-light)}.article-tags{max-width:800px;margin:var(--space-6) auto 0;display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2)}.article-tags h3{font-size:var(--font-size-md);margin:0 var(--space-3) 0 0}.tags-list{display:flex;flex-wrap:wrap;gap:var(--space-2)}.article-tag{font-size:var(--font-size-xs);color:var(--color-text-secondary);background-color:var(--color-background-tertiary);padding:var(--space-1) var(--space-2);border-radius:var(--radius-full);transition:all var(--transition-normal) var(--ease-out)}.light-mode .article-tag{background-color:var(--color-background-tertiary-light)}.article-tag:hover{background-color:var(--color-primary);color:var(--color-background)}.article-share{max-width:800px;margin:var(--space-6) auto 0;display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-2)}.article-share h3{font-size:var(--font-size-md);margin:0 var(--space-3) 0 0}.share-buttons{display:flex;gap:var(--space-2)}.share-button{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);background-color:var(--color-background-tertiary);border:none;color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-sm);cursor:pointer;transition:all var(--transition-normal) var(--ease-out)}.light-mode .share-button{background-color:var(--color-background-tertiary-light)}.share-button:hover{transform:translateY(-3px)}.share-button.twitter:hover{background-color:#1da1f2;color:#fff}.share-button.facebook:hover{background-color:#4267b2;color:#fff}.share-button.linkedin:hover{background-color:#0077b5;color:#fff}.related-articles{padding:var(--space-7) 0;background-color:var(--color-background-secondary)}.light-mode .related-articles{background-color:var(--color-background-secondary-light)}.related-title{font-size:var(--font-size-2xl);margin-bottom:var(--space-5);text-align:center}.related-grid{display:grid;grid-template-columns:repeat(1,1fr);gap:var(--space-4)}@media (min-width: 640px){.related-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1024px){.related-grid{grid-template-columns:repeat(3,1fr)}}.related-article{border-radius:var(--radius-md);overflow:hidden;background-color:var(--color-background);transition:transform var(--transition-normal) var(--ease-out),box-shadow var(--transition-normal) var(--ease-out)}.light-mode .related-article{background-color:var(--color-background-light)}.related-article:hover{transform:translateY(-5px);box-shadow:var(--shadow-medium)}.related-link{display:block;color:var(--color-text);text-decoration:none}.related-image{height:160px;overflow:hidden}.related-image img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-normal) var(--ease-out)}.related-article:hover .related-image img{transform:scale(1.05)}.related-article-title{font-size:var(--font-size-md);margin:var(--space-3) var(--space-3) var(--space-1);transition:color var(--transition-fast) var(--ease-out)}.related-article:hover .related-article-title{color:var(--color-primary)}.related-article-date{color:var(--color-text-secondary);font-size:var(--font-size-sm);margin:0 var(--space-3) var(--space-3)}@media (max-width: 768px){.article-title{font-size:var(--font-size-2xl)}.article-subtitle{font-size:var(--font-size-lg)}.article-content{font-size:var(--font-size-base)}.article-meta{flex-direction:column;align-items:flex-start;gap:var(--space-2)}.article-featured-image img{max-height:300px}.related-title{font-size:var(--font-size-xl)}}.blog-hero{padding:var(--space-7) 0 var(--space-5);background-color:var(--color-background);position:relative;text-align:center}.light-mode .blog-hero{background-color:var(--color-background-light)}.blog-hero:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at top right,rgba(191,0,255,.05),transparent 70%),radial-gradient(circle at bottom left,rgba(0,240,255,.05),transparent 70%);pointer-events:none}.blog-hero h1{font-size:var(--font-size-4xl);margin-bottom:var(--space-3);background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text;color:transparent;display:inline-block}.blog-subtitle{font-size:var(--font-size-lg);color:var(--color-text-secondary);max-width:600px;margin:0 auto}.blog-content{padding:var(--space-5) 0 var(--space-8)}.blog-filter{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--space-2);margin-bottom:var(--space-6)}.filter-button{background:transparent;border:1px solid var(--color-border);color:var(--color-text-secondary);font-family:var(--font-heading);font-size:var(--font-size-sm);padding:var(--space-2) var(--space-3);border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-normal) var(--ease-out)}.filter-button:hover{border-color:var(--color-primary);color:var(--color-primary)}.filter-button.active{background-color:var(--color-primary);border-color:var(--color-primary);color:var(--color-background);box-shadow:var(--glow-primary)}.article-list-empty{text-align:center;padding:var(--space-8) 0;color:var(--color-text-secondary)}@media (max-width: 768px){.blog-hero h1{font-size:var(--font-size-3xl)}.blog-subtitle{font-size:var(--font-size-md)}.blog-filter{gap:var(--space-1);margin-bottom:var(--space-4);justify-content:flex-start;overflow-x:auto;padding-bottom:var(--space-2)}.filter-button{font-size:var(--font-size-xs);padding:var(--space-1) var(--space-2);white-space:nowrap}}.contact-form-wrapper{position:relative}.form-card{background-color:var(--color-background-secondary);border-radius:var(--radius-md);padding:var(--space-5);box-shadow:var(--shadow-medium)}.light-mode .form-card{background-color:var(--color-background-secondary-light)}.form-title{font-size:var(--font-size-2xl);margin-bottom:var(--space-4);text-align:center}.form-group{margin-bottom:var(--space-4)}.form-group label{display:block;font-family:var(--font-heading);font-size:var(--font-size-sm);margin-bottom:var(--space-2);color:var(--color-text-secondary)}.form-group input,.form-group textarea{width:100%;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:var(--color-background-tertiary);color:var(--color-text);font-family:var(--font-body);font-size:var(--font-size-base);transition:all var(--transition-normal) var(--ease-out)}.light-mode .form-group input,.light-mode .form-group textarea{background-color:var(--color-background-tertiary-light);border-color:var(--color-border-light)}.form-group input:focus,.form-group textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:var(--glow-primary)}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--color-text-secondary);opacity:.7}.form-submit{margin-top:var(--space-5)}.form-submit button{width:100%;display:flex;align-items:center;justify-content:center;gap:var(--space-2)}.spinner{display:inline-block;width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;animation:spin 1s infinite linear}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.form-error{margin-bottom:var(--space-4);padding:var(--space-3);background-color:#ff33331a;border-left:3px solid #ff3333;border-radius:var(--radius-md);display:flex;align-items:center;gap:var(--space-2);color:#f33}.form-error svg{flex-shrink:0}.form-success{text-align:center;padding:var(--space-6) var(--space-4)}.success-icon{width:80px;height:80px;margin:0 auto var(--space-4);border-radius:50%;background-color:#34d3991a;display:flex;align-items:center;justify-content:center;color:#34d399}.form-success h3{font-size:var(--font-size-xl);margin-bottom:var(--space-3);color:var(--color-text)}.form-success p{margin-bottom:var(--space-5);color:var(--color-text-secondary)}.form-success button{margin:0 auto}@media (max-width: 768px){.form-card{padding:var(--space-4)}.form-title{font-size:var(--font-size-xl)}}.contact-info{padding:var(--space-4);background-color:var(--color-background-secondary);border-radius:var(--radius-md);box-shadow:var(--shadow-medium)}.light-mode .contact-info{background-color:var(--color-background-secondary-light)}.info-title{font-size:var(--font-size-2xl);margin-bottom:var(--space-2)}.info-subtitle{color:var(--color-text-secondary);margin-bottom:var(--space-5)}.info-items{margin-bottom:var(--space-5)}.info-item{display:flex;align-items:flex-start;margin-bottom:var(--space-4)}.info-icon{flex-shrink:0;width:48px;height:48px;background-color:var(--color-background-tertiary);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--color-primary);margin-right:var(--space-3)}.light-mode .info-icon{background-color:var(--color-background-tertiary-light)}.info-content h3{font-size:var(--font-size-md);margin-bottom:var(--space-1)}.info-content a{color:var(--color-text);text-decoration:none;transition:color var(--transition-fast) var(--ease-out)}.info-content a:hover{color:var(--color-primary)}.info-content p{margin:0;color:var(--color-text)}.social-profiles{margin-top:var(--space-6);padding-top:var(--space-4);border-top:1px solid var(--color-border)}.light-mode .social-profiles{border-color:var(--color-border-light)}.social-profiles h3{font-size:var(--font-size-lg);margin-bottom:var(--space-3)}.social-links{display:flex;flex-wrap:wrap;gap:var(--space-3)}.social-link{display:flex;flex-direction:column;align-items:center;text-decoration:none;color:var(--color-text-secondary);transition:color var(--transition-normal) var(--ease-out)}.social-link:hover{color:var(--color-primary)}.social-icon{width:48px;height:48px;background-color:var(--color-background-tertiary);border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-2);transition:all var(--transition-normal) var(--ease-out)}.light-mode .social-icon{background-color:var(--color-background-tertiary-light)}.social-link:hover .social-icon{background-color:var(--color-primary);color:var(--color-background);box-shadow:var(--glow-primary)}.social-platform{font-size:var(--font-size-xs);font-family:var(--font-body)}@media (max-width: 768px){.info-title{font-size:var(--font-size-xl)}.info-icon{width:40px;height:40px}.info-content h3{font-size:var(--font-size-base)}.social-icon{width:40px;height:40px}}.contact-page{min-height:100vh;padding:var(--space-8) 0;background-color:var(--color-background);position:relative;overflow:hidden}.light-mode .contact-page{background-color:var(--color-background-light)}.particle-container{position:absolute;top:0;left:0;width:100%;height:100%;z-index:0}.contact-header{text-align:center;margin-bottom:var(--space-6);position:relative;z-index:1}.contact-header h1{font-size:var(--font-size-4xl);margin-bottom:var(--space-3);background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text;color:transparent;display:inline-block}.contact-subtitle{font-size:var(--font-size-lg);color:var(--color-text-secondary);max-width:600px;margin:0 auto}.contact-content{display:grid;grid-template-columns:1fr;gap:var(--space-6);margin-bottom:var(--space-8);position:relative;z-index:1}@media (min-width: 1024px){.contact-content{grid-template-columns:3fr 2fr;gap:var(--space-8)}}.availability-status{margin-top:var(--space-6);padding:var(--space-3) var(--space-4);background-color:var(--color-background-tertiary);border-radius:var(--radius-md);display:flex;align-items:center;gap:var(--space-3)}.light-mode .availability-status{background-color:var(--color-background-tertiary-light)}.availability-indicator{width:12px;height:12px;border-radius:50%;background-color:#4ade80;position:relative}.availability-indicator:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;border-radius:50%;background-color:#4ade80;animation:pulse 2s infinite}.availability-status p{margin:0;font-size:var(--font-size-sm)}.contact-map{margin-top:var(--space-6);position:relative;z-index:1}.map-placeholder{height:200px;background-color:var(--color-background-secondary);border-radius:var(--radius-md);display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--color-text-secondary);box-shadow:var(--shadow-medium);position:relative;overflow:hidden}.light-mode .map-placeholder{background-color:var(--color-background-secondary-light)}.map-placeholder:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at center,rgba(0,240,255,.05) 0%,transparent 70%);z-index:0}.map-pin{margin-bottom:var(--space-2);color:var(--color-primary);animation:bounce 2s infinite;position:relative;z-index:1}.location-text{font-family:var(--font-heading);font-size:var(--font-size-md);position:relative;z-index:1}@media (max-width: 768px){.contact-header h1{font-size:var(--font-size-3xl)}.contact-subtitle{font-size:var(--font-size-md)}}.not-found-page{height:100vh;display:flex;align-items:center;justify-content:center;background-color:var(--color-background);position:relative;overflow:hidden}.light-mode .not-found-page{background-color:var(--color-background-light)}.not-found-page:before,.not-found-page:after{content:"";position:absolute;z-index:0}.not-found-page:before{width:600px;height:600px;top:-300px;right:-200px;background:radial-gradient(circle,rgba(191,0,255,.1),transparent 70%);filter:blur(30px)}.not-found-page:after{width:500px;height:500px;bottom:-250px;left:-200px;background:radial-gradient(circle,rgba(0,240,255,.1),transparent 70%);filter:blur(30px)}.not-found-content{position:relative;z-index:2;text-align:center;padding:var(--space-5);max-width:800px}.not-found-code{position:relative;margin-bottom:var(--space-6)}.glitch{font-family:var(--font-heading);font-size:150px;font-weight:700;line-height:1;position:relative;color:var(--color-text);letter-spacing:-8px}@keyframes glitch-animation{0%{clip:rect(42px,9999px,44px,0)}5%{clip:rect(12px,9999px,59px,0)}10%{clip:rect(48px,9999px,29px,0)}15%{clip:rect(42px,9999px,73px,0)}20%{clip:rect(63px,9999px,27px,0)}25%{clip:rect(34px,9999px,55px,0)}30%{clip:rect(86px,9999px,73px,0)}35%{clip:rect(20px,9999px,20px,0)}40%{clip:rect(26px,9999px,60px,0)}45%{clip:rect(25px,9999px,66px,0)}50%{clip:rect(57px,9999px,98px,0)}55%{clip:rect(5px,9999px,46px,0)}60%{clip:rect(82px,9999px,31px,0)}65%{clip:rect(54px,9999px,27px,0)}70%{clip:rect(28px,9999px,99px,0)}75%{clip:rect(45px,9999px,69px,0)}80%{clip:rect(23px,9999px,85px,0)}85%{clip:rect(54px,9999px,84px,0)}90%{clip:rect(45px,9999px,47px,0)}95%{clip:rect(37px,9999px,20px,0)}to{clip:rect(4px,9999px,91px,0)}}@keyframes glitch-animation-2{0%{clip:rect(65px,9999px,100px,0)}5%{clip:rect(52px,9999px,74px,0)}10%{clip:rect(79px,9999px,85px,0)}15%{clip:rect(75px,9999px,5px,0)}20%{clip:rect(67px,9999px,61px,0)}25%{clip:rect(14px,9999px,79px,0)}30%{clip:rect(1px,9999px,66px,0)}35%{clip:rect(86px,9999px,30px,0)}40%{clip:rect(23px,9999px,98px,0)}45%{clip:rect(85px,9999px,72px,0)}50%{clip:rect(71px,9999px,75px,0)}55%{clip:rect(2px,9999px,48px,0)}60%{clip:rect(30px,9999px,16px,0)}65%{clip:rect(59px,9999px,50px,0)}70%{clip:rect(41px,9999px,62px,0)}75%{clip:rect(2px,9999px,82px,0)}80%{clip:rect(47px,9999px,73px,0)}85%{clip:rect(3px,9999px,27px,0)}90%{clip:rect(26px,9999px,55px,0)}95%{clip:rect(42px,9999px,97px,0)}to{clip:rect(38px,9999px,49px,0)}}.glitch:before,.glitch:after{content:attr(data-text);position:absolute;top:0;left:0;width:100%;height:100%}.glitch:before{left:2px;text-shadow:-1px 0 var(--color-primary);animation:glitch-animation 2s infinite linear alternate-reverse}.glitch:after{left:-2px;text-shadow:1px 0 var(--color-secondary);animation:glitch-animation-2 3s infinite linear alternate-reverse}.glow{font-family:var(--font-heading);font-size:150px;font-weight:700;line-height:1;position:absolute;top:0;left:0;width:100%;color:transparent;letter-spacing:-8px;text-shadow:0 0 20px var(--color-primary),0 0 30px var(--color-secondary);opacity:.2}.scanlines{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden;pointer-events:none}.scanlines:before{content:"";position:absolute;width:100%;height:100%;top:0;left:0;background:repeating-linear-gradient(to bottom,transparent 0%,rgba(255,255,255,.05) .5%,transparent 1%);animation:scanline 8s linear infinite}@keyframes scanline{0%{transform:translateY(0)}to{transform:translateY(100%)}}.not-found-title{font-size:var(--font-size-3xl);margin-bottom:var(--space-4);background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text;color:transparent}.not-found-message{font-size:var(--font-size-lg);color:var(--color-text-secondary);margin-bottom:var(--space-6);max-width:500px;margin-left:auto;margin-right:auto}.not-found-actions{display:flex;gap:var(--space-4);justify-content:center;margin-bottom:var(--space-6)}.not-found-terminal{width:100%;max-width:500px;margin:0 auto;background-color:var(--color-background-tertiary);border-radius:var(--radius-md);box-shadow:var(--shadow-medium);overflow:hidden}.terminal-header{background-color:var(--color-background-secondary);padding:var(--space-2) var(--space-3);display:flex;align-items:center;border-bottom:1px solid var(--color-border)}.terminal-button{width:12px;height:12px;border-radius:50%;margin-right:6px}.terminal-button:nth-child(1){background-color:#ff5f57}.terminal-button:nth-child(2){background-color:#ffbd2e}.terminal-button:nth-child(3){background-color:#28ca41}.terminal-title{margin-left:var(--space-3);font-family:var(--font-body);font-size:var(--font-size-xs);color:var(--color-text-secondary)}.terminal-content{padding:var(--space-3);font-family:var(--font-body);font-size:var(--font-size-sm);color:var(--color-text);line-height:1.6}.terminal-line{margin-bottom:var(--space-2);white-space:nowrap;overflow:hidden;animation:typing 3s steps(60,end)}.terminal-prompt{color:var(--color-primary);margin-right:var(--space-2)}.terminal-error{color:#ff5f57}.terminal-cursor{display:inline-block;width:10px;height:18px;background-color:var(--color-primary);animation:blink 1s step-end infinite}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}@media (max-width: 768px){.glitch,.glow{font-size:100px;letter-spacing:-4px}.not-found-title{font-size:var(--font-size-2xl)}.not-found-message{font-size:var(--font-size-base)}.not-found-actions{flex-direction:column;gap:var(--space-3)}.not-found-terminal{max-width:100%}}.cursor,.cursor-outer{position:fixed;pointer-events:none;will-change:transform;z-index:var(--z-cursor)}.cursor{width:8px;height:8px;background-color:var(--color-primary);border-radius:50%;transform:translate3d(-50%,-50%,0);mix-blend-mode:exclusion;transition:width .2s ease,height .2s ease,background-color .3s ease}.cursor-outer{width:30px;height:30px;border:1px solid var(--color-primary);border-radius:50%;opacity:.5;transform:translate3d(-50%,-50%,0) scale(1);transition:transform .3s ease,width .2s ease,height .2s ease,opacity .2s ease,background-color .3s ease}.cursor.hovering{width:0;height:0;opacity:0}.cursor-outer.hovering{width:50px;height:50px;background-color:#00f0ff1a;border-color:var(--color-secondary);opacity:.8;transform:translate3d(-50%,-50%,0) scale(1.2)}.cursor.clicking{background-color:var(--color-secondary);transform:translate3d(-50%,-50%,0) scale(.8)}.cursor-outer.clicking{width:40px;height:40px;opacity:.4;border-color:var(--color-tertiary);transform:translate3d(-50%,-50%,0) scale(.8)}@media (hover: none){.cursor,.cursor-outer{display:none}body.custom-cursor{cursor:auto}}@media (max-width: 767px){.cursor{width:5px;height:5px}.cursor-outer{width:20px;height:20px}.cursor-outer.hovering{width:30px;height:30px}}:root{--color-primary: #00f0ff;--color-secondary: #bf00ff;--color-tertiary: #39ff14;--color-background: #121212;--color-background-secondary: #1e1e1e;--color-background-tertiary: #2a2a2a;--color-text: #f0f0f0;--color-text-secondary: #b0b0b0;--color-border: #333333;--color-background-light: #f5f5f7;--color-background-secondary-light: #ffffff;--color-background-tertiary-light: #e5e5e7;--color-text-light: #121212;--color-text-secondary-light: #505050;--color-border-light: #d1d1d1;--gradient-primary: linear-gradient(135deg, var(--color-primary), var(--color-secondary));--gradient-background: linear-gradient(135deg, var(--color-background), rgba(30, 30, 30, .8));--font-heading: "Orbitron", sans-serif;--font-body: "Roboto Mono", monospace;--font-accent: "Space Grotesk", sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-md: 1.125rem;--font-size-lg: 1.25rem;--font-size-xl: 1.5rem;--font-size-2xl: 2rem;--font-size-3xl: 2.5rem;--font-size-4xl: 3rem;--font-size-5xl: 4rem;--space-1: .25rem;--space-2: .5rem;--space-3: 1rem;--space-4: 1.5rem;--space-5: 2rem;--space-6: 3rem;--space-7: 4rem;--space-8: 6rem;--space-9: 8rem;--radius-sm: .25rem;--radius-md: .5rem;--radius-lg: 1rem;--radius-full: 9999px;--transition-fast: .2s;--transition-normal: .3s;--transition-slow: .5s;--transition-very-slow: .8s;--ease-in-out: cubic-bezier(.4, 0, .2, 1);--ease-out: cubic-bezier(0, 0, .2, 1);--ease-in: cubic-bezier(.4, 0, 1, 1);--ease-bounce: cubic-bezier(.16, 1, .3, 1);--z-background: -10;--z-default: 1;--z-hover: 10;--z-header: 100;--z-modal: 1000;--z-cursor: 9999;--shadow-subtle: 0 4px 6px rgba(0, 0, 0, .1);--shadow-medium: 0 10px 15px rgba(0, 0, 0, .1);--shadow-strong: 0 20px 25px rgba(0, 0, 0, .15);--shadow-inner: inset 0 2px 4px rgba(0, 0, 0, .05);--glow-primary: 0 0 10px rgba(0, 240, 255, .5);--glow-secondary: 0 0 10px rgba(191, 0, 255, .5);--glow-tertiary: 0 0 10px rgba(57, 255, 20, .5)}.light-mode{--color-background: var(--color-background-light);--color-background-secondary: var(--color-background-secondary-light);--color-background-tertiary: var(--color-background-tertiary-light);--color-text: var(--color-text-light);--color-text-secondary: var(--color-text-secondary-light);--color-border: var(--color-border-light);--gradient-background: linear-gradient(135deg, var(--color-background-light), #ffffff)}@media (prefers-reduced-motion: reduce){:root{--transition-fast: 0ms;--transition-normal: 0ms;--transition-slow: 0ms;--transition-very-slow: 0ms}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes pulse{0%{transform:scale(1);box-shadow:0 0 #00f0ff66}70%{transform:scale(1.05);box-shadow:0 0 0 10px #00f0ff00}to{transform:scale(1);box-shadow:0 0 #00f0ff00}}@keyframes glow{0%{box-shadow:0 0 5px #00f0ff80}50%{box-shadow:0 0 20px #00f0ffcc,0 0 30px #bf00ff80}to{box-shadow:0 0 5px #00f0ff80}}@keyframes glitch{0%{transform:translate(0);text-shadow:none}20%{transform:translate(-2px,1px);text-shadow:3px 0 0 rgba(191,0,255,.7),-3px 0 0 rgba(0,240,255,.7)}40%{transform:translate(2px,-1px);text-shadow:3px 0 0 rgba(191,0,255,.7),-3px 0 0 rgba(0,240,255,.7)}60%{transform:translate(-2px,1px);text-shadow:-3px 0 0 rgba(191,0,255,.7),3px 0 0 rgba(0,240,255,.7)}80%{transform:translate(2px,-1px);text-shadow:-3px 0 0 rgba(191,0,255,.7),3px 0 0 rgba(0,240,255,.7)}to{transform:translate(0);text-shadow:none}}@keyframes typing{0%{width:0}to{width:100%}}@keyframes blink{50%{border-color:transparent}}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-10px)}to{transform:translateY(0)}}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-5px)}20%,40%,60%,80%{transform:translate(5px)}}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-15px)}60%{transform:translateY(-5px)}}.fade-in{animation:fadeIn var(--transition-normal) var(--ease-out) forwards}.fade-in-up{animation:fadeInUp var(--transition-normal) var(--ease-out) forwards}.fade-in-down{animation:fadeInDown var(--transition-normal) var(--ease-out) forwards}.fade-in-left{animation:fadeInLeft var(--transition-normal) var(--ease-out) forwards}.fade-in-right{animation:fadeInRight var(--transition-normal) var(--ease-out) forwards}.scale-in{animation:scaleIn var(--transition-normal) var(--ease-out) forwards}.pulse{animation:pulse 2s infinite}.glow{animation:glow 3s infinite}.glitch{animation:glitch .5s ease-in-out}.float{animation:float 4s ease-in-out infinite}.shake{animation:shake .5s ease-in-out}.bounce{animation:bounce 2s infinite}.rotate{animation:rotate 10s linear infinite}.typing{display:inline-block;overflow:hidden;white-space:nowrap;border-right:3px solid var(--color-primary);animation:typing 3.5s steps(40,end),blink .75s step-end infinite}.delay-100{animation-delay:.1s}.delay-200{animation-delay:.2s}.delay-300{animation-delay:.3s}.delay-400{animation-delay:.4s}.delay-500{animation-delay:.5s}.delay-1000{animation-delay:1s}.duration-300{animation-duration:.3s}.duration-500{animation-duration:.5s}.duration-700{animation-duration:.7s}.duration-1000{animation-duration:1s}.page-transition-enter{opacity:0;transform:translateY(20px)}.page-transition-enter-active{opacity:1;transform:translateY(0);transition:opacity .3s,transform .3s}.page-transition-exit{opacity:1;transform:translateY(0)}.page-transition-exit-active{opacity:0;transform:translateY(-20px);transition:opacity .3s,transform .3s}@media (prefers-reduced-motion: reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth}body{font-family:var(--font-body);font-size:var(--font-size-base);line-height:1.5;color:var(--color-text);background-color:var(--color-background);transition:background-color var(--transition-slow) var(--ease-out),color var(--transition-slow) var(--ease-out);overflow-x:hidden}body.custom-cursor{cursor:none}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:700;line-height:1.2;margin-bottom:var(--space-4)}h1{font-size:var(--font-size-4xl)}h2{font-size:var(--font-size-3xl)}h3{font-size:var(--font-size-2xl)}h4{font-size:var(--font-size-xl)}h5{font-size:var(--font-size-lg)}h6{font-size:var(--font-size-md)}p{margin-bottom:var(--space-4)}a{color:var(--color-primary);text-decoration:none;transition:all var(--transition-fast) var(--ease-out);position:relative}a:hover{color:var(--color-secondary)}a.animated-link{position:relative;display:inline-block}a.animated-link:after{content:"";position:absolute;width:0;height:2px;bottom:-2px;left:50%;background:var(--color-primary);transition:all var(--transition-normal) var(--ease-bounce)}a.animated-link:hover:after{width:100%;left:0;background:var(--gradient-primary)}ul,ol{padding-left:var(--space-4);margin-bottom:var(--space-4)}li{margin-bottom:var(--space-2)}button,.button{display:inline-block;font-family:var(--font-heading);font-size:var(--font-size-base);font-weight:500;padding:var(--space-2) var(--space-4);border:2px solid var(--color-primary);background-color:transparent;color:var(--color-primary);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-normal) var(--ease-out);position:relative;overflow:hidden;z-index:var(--z-default)}button:hover,.button:hover{background-color:var(--color-primary);color:var(--color-background);transform:translateY(-2px);box-shadow:var(--glow-primary)}button.primary,.button.primary{background-color:var(--color-primary);color:var(--color-background)}button.primary:hover,.button.primary:hover{background-color:var(--color-secondary);border-color:var(--color-secondary);box-shadow:var(--glow-secondary)}button.secondary,.button.secondary{border-color:var(--color-secondary);color:var(--color-secondary)}button.secondary:hover,.button.secondary:hover{background-color:var(--color-secondary);color:var(--color-background);box-shadow:var(--glow-secondary)}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 var(--space-4)}.section{padding:var(--space-7) 0;position:relative}.grid{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--space-4)}.card{background-color:var(--color-background-secondary);border-radius:var(--radius-md);padding:var(--space-4);transition:transform var(--transition-normal) var(--ease-out),box-shadow var(--transition-normal) var(--ease-out)}.card:hover{transform:translateY(-5px);box-shadow:var(--shadow-medium)}input,textarea,select{font-family:var(--font-body);font-size:var(--font-size-base);padding:var(--space-2) var(--space-3);background-color:var(--color-background-tertiary);border:2px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);transition:all var(--transition-normal) var(--ease-out);width:100%;margin-bottom:var(--space-3)}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--color-primary);box-shadow:var(--glow-primary)}label{display:block;font-family:var(--font-heading);font-size:var(--font-size-sm);margin-bottom:var(--space-2);color:var(--color-text-secondary)}.text-center{text-align:center}.text-right{text-align:right}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-2{gap:var(--space-2)}.gap-4{gap:var(--space-4)}.mb-2{margin-bottom:var(--space-2)}.mb-4{margin-bottom:var(--space-4)}.mb-6{margin-bottom:var(--space-6)}.mt-4{margin-top:var(--space-4)}.mt-6{margin-top:var(--space-6)}.p-4{padding:var(--space-4)}.hidden{display:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}@media (max-width: 1023px){h1{font-size:var(--font-size-3xl)}h2{font-size:var(--font-size-2xl)}.grid{gap:var(--space-3)}.section{padding:var(--space-6) 0}}@media (max-width: 767px){h1{font-size:var(--font-size-2xl)}h2{font-size:var(--font-size-xl)}h3{font-size:var(--font-size-lg)}.grid{grid-template-columns:repeat(4,1fr);gap:var(--space-2)}.section{padding:var(--space-5) 0}.container{padding:0 var(--space-3)}}
