.navbar{left:0;padding:20px 0;position:fixed;right:0;top:0;transition:all var(--transition-normal);z-index:1000}.navbar.scrolled{background:var(--bg-primary);box-shadow:0 4px 20px #0000001a;padding:15px 0}.navbar-container{justify-content:space-between;margin:0 auto;max-width:var(--container-width);padding:0 24px}.navbar-container,.navbar-logo{align-items:center;display:flex}.navbar-logo{font-size:1.75rem;font-weight:700}.logo-text{color:var(--text-primary)}.logo-dot{color:var(--primary);font-size:2rem}.navbar-menu{gap:40px}.navbar-links,.navbar-menu{align-items:center;display:flex}.navbar-links{gap:32px;list-style:none}.navbar-link{color:var(--text-secondary);font-size:.95rem;font-weight:500;padding:8px 0;position:relative;transition:color var(--transition-fast)}.navbar-link:after{background:var(--primary);bottom:0;content:"";height:2px;left:0;position:absolute;transition:width var(--transition-normal);width:0}.navbar-link:hover{color:var(--primary)}.navbar-link:hover:after{width:100%}.navbar-actions{align-items:center;display:flex;gap:16px}.navbar-actions-mobile{display:none}.theme-toggle{align-items:center;background:var(--bg-tertiary);border:none;border-radius:50%;color:var(--text-primary);cursor:pointer;display:flex;font-size:1.1rem;height:42px;justify-content:center;transition:all var(--transition-normal);width:42px}.theme-toggle:hover{background:var(--primary);color:#fff;transform:rotate(180deg)}.navbar-toggle{align-items:center;background:var(--bg-tertiary);border:none;border-radius:8px;color:var(--text-primary);cursor:pointer;display:none;font-size:1.3rem;height:42px;justify-content:center;transition:all var(--transition-normal);width:42px}@media (max-width:992px){.navbar-menu{background:var(--bg-primary);box-shadow:-10px 0 30px #0000001a;flex-direction:column;gap:40px;height:100vh;justify-content:center;max-width:400px;padding:40px;position:fixed;right:-100%;top:0;transition:right var(--transition-normal);width:80%;z-index:999}.navbar-menu.active{right:0}.navbar-links{flex-direction:column;gap:24px}.navbar-link{font-size:1.25rem}.navbar-actions{display:none}.navbar-actions-mobile{align-items:center;display:flex;flex-direction:column;gap:20px}.navbar-toggle{display:flex;z-index:1001}.navbar-menu.active:before{background:#00000080;content:"";height:100vh;left:0;position:fixed;top:0;width:100vw;z-index:-1}}.hero{align-items:center;display:flex;min-height:100vh;overflow:hidden;padding:100px 0 60px;position:relative}.hero-bg{inset:0;pointer-events:none;position:absolute}.hero-bg .blob-1{height:600px;right:-100px;top:-100px;width:600px}.hero-bg .blob-2{bottom:-150px;height:500px;left:-150px;width:500px}.hero-grid{background-image:linear-gradient(var(--border-color) 1px,#0000 1px),linear-gradient(90deg,var(--border-color) 1px,#0000 1px);background-size:60px 60px;inset:0;opacity:.3;position:absolute}.hero-container{grid-gap:60px;align-items:center;display:grid;gap:60px;grid-template-columns:1fr 1fr;margin:0 auto;max-width:var(--container-width);padding:0 24px}.hero-badge{align-items:center;background:var(--bg-tertiary);border-radius:50px;color:var(--text-secondary);display:inline-flex;font-size:.875rem;gap:8px;margin-bottom:24px;padding:8px 16px}.badge-dot{animation:pulse 2s infinite;background:#22c55e;border-radius:50%;height:8px;width:8px}.hero-title{font-size:clamp(2.5rem,5vw,4rem);line-height:1.1;margin-bottom:24px}.hero-role{color:var(--text-secondary);display:block;font-size:clamp(1.5rem,3vw,2.5rem);font-weight:500;margin-top:8px}.cursor{animation:blink 1s infinite;color:var(--primary)}@keyframes blink{0%,to{opacity:1}50%{opacity:0}}.hero-description{font-size:1.125rem;line-height:1.8;margin-bottom:32px;max-width:500px}.hero-cta{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:40px}.hero-social{align-items:center;display:flex;gap:20px}.social-label{color:var(--text-muted);font-size:.875rem;font-weight:500}.hero-image{align-items:center;display:flex;justify-content:center}.hero-image-wrapper{max-width:450px;position:relative;width:100%}.hero-image-bg{animation:morphing 8s ease-in-out infinite;background:linear-gradient(135deg,var(--primary) 0,var(--secondary) 100%);border-radius:30% 70% 70% 30%/30% 30% 70% 70%;inset:20px;opacity:.2;position:absolute}@keyframes morphing{0%,to{border-radius:30% 70% 70% 30%/30% 30% 70% 70%}25%{border-radius:58% 42% 75% 25%/76% 46% 54% 24%}50%{border-radius:50% 50% 33% 67%/55% 27% 73% 45%}75%{border-radius:33% 67% 58% 42%/63% 68% 32% 37%}}.hero-avatar{padding:20px;position:relative;z-index:2}.hero-avatar img{border-radius:30% 70% 70% 30%/30% 30% 70% 70%;box-shadow:0 20px 50px #0003;height:auto;object-fit:cover;width:100%}.hero-float-card{align-items:center;background:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;box-shadow:var(--card-shadow);color:var(--text-primary);display:flex;font-size:.9rem;font-weight:500;gap:10px;padding:12px 20px;position:absolute;z-index:3}.card-icon{font-size:1.25rem}.card-1{left:-10%;top:10%}.card-2{right:-5%;top:50%}.card-3{bottom:10%;left:5%}.scroll-indicator{align-items:center;bottom:40px;color:var(--text-muted);display:flex;flex-direction:column;font-size:.8rem;gap:8px;left:50%;letter-spacing:2px;position:absolute;text-transform:uppercase;transform:translateX(-50%)}.scroll-line{background:var(--border-color);border-radius:2px;height:60px;overflow:hidden;position:relative;width:2px}.scroll-dot{animation:scrollDown 2s ease-in-out infinite;background:var(--primary);border-radius:2px;height:20px;width:100%}@keyframes scrollDown{0%{transform:translateY(-20px)}to{transform:translateY(60px)}}@media (max-width:992px){.hero-container{grid-template-columns:1fr;text-align:center}.hero-content{order:2}.hero-image{order:1}.hero-description{margin-left:auto;margin-right:auto}.hero-cta,.hero-social{justify-content:center}.hero-image-wrapper{max-width:350px}.hero-float-card,.scroll-indicator{display:none}}@media (max-width:576px){.hero{padding:120px 0 60px}.hero-cta{align-items:center;flex-direction:column}.hero-cta .btn{max-width:280px;width:100%}}.about{background:var(--bg-secondary)}.about-content{grid-gap:60px;align-items:start;display:grid;gap:60px;grid-template-columns:1fr 1.2fr;margin-bottom:80px}.about-image-wrapper{position:relative}.about-image-wrapper img{border-radius:var(--border-radius-lg);box-shadow:var(--card-shadow);height:auto;width:100%}.about-experience{align-items:center;background:linear-gradient(135deg,var(--primary) 0,var(--primary-dark) 100%);border-radius:var(--border-radius);bottom:-20px;box-shadow:0 10px 30px #6366f166;color:#fff;display:flex;flex-direction:column;padding:24px;position:absolute;right:-20px;text-align:center}.exp-number{font-size:2.5rem;font-weight:800;line-height:1}.exp-text{font-size:.875rem;margin-top:4px;opacity:.9}.about-info h3{font-size:1.75rem;line-height:1.4;margin-bottom:24px}.about-info p{font-size:1.05rem;margin-bottom:16px}.about-highlights{display:flex;flex-direction:column;gap:12px;margin:32px 0}.highlight-item{align-items:center;color:var(--text-primary);display:flex;font-size:1rem;gap:12px}.highlight-icon{font-size:1.25rem}.about-personal{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--border-radius);margin-top:32px;padding:24px}.about-personal h4{color:var(--text-secondary);font-size:1rem;margin-bottom:16px}.personal-interests{display:flex;flex-wrap:wrap;gap:10px}.interest-tag{background:var(--bg-tertiary);border-radius:20px;color:var(--text-primary);font-size:.875rem;padding:8px 16px;transition:all var(--transition-fast)}.interest-tag:hover{background:var(--primary);color:#fff;transform:translateY(-2px)}.about-stats{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(4,1fr);margin-bottom:80px}.stat-item{background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--border-radius);padding:32px;text-align:center;transition:all var(--transition-normal)}.stat-item:hover{box-shadow:var(--card-shadow);transform:translateY(-5px)}.stat-number{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,var(--primary) 0,var(--secondary) 100%);-webkit-background-clip:text;background-clip:text;display:block;font-size:3rem;font-weight:800;line-height:1;margin-bottom:8px}.stat-label{color:var(--text-secondary);font-size:.95rem}.about-services{margin-bottom:80px}.services-title,.skills-title{font-size:1.75rem;margin-bottom:40px;text-align:center}.services-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(3,1fr)}.service-card{padding:32px;text-align:center}.service-icon{align-items:center;background:linear-gradient(135deg,#6366f11a,#ec48991a);border-radius:16px;color:var(--primary);display:flex;font-size:1.5rem;height:60px;justify-content:center;margin:0 auto 20px;width:60px}.service-card h4{font-size:1.25rem;margin-bottom:12px}.service-card p{color:var(--text-secondary);font-size:.95rem}.skills-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(4,1fr)}.skill-item{align-items:center;background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--border-radius);display:flex;flex-direction:column;padding:24px;text-align:center;transition:all var(--transition-normal)}.skill-item:hover{border-color:var(--primary);box-shadow:var(--card-shadow);transform:translateY(-5px)}.skill-icon{color:var(--primary);font-size:2.5rem;margin-bottom:12px}.skill-name{color:var(--text-primary);font-weight:600;margin-bottom:4px}.skill-category{color:var(--text-muted);font-size:.8rem}@media (max-width:992px){.about-content{gap:40px;grid-template-columns:1fr}.about-image-wrapper{margin:0 auto;max-width:500px}.about-stats,.services-grid{grid-template-columns:repeat(2,1fr)}.skills-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width:576px){.about-stats{gap:16px;grid-template-columns:repeat(2,1fr)}.stat-item{padding:24px 16px}.stat-number{font-size:2rem}.services-grid{grid-template-columns:1fr}.skills-grid{grid-template-columns:repeat(2,1fr)}.about-experience{bottom:-10px;padding:16px;right:10px}.exp-number{font-size:2rem}}.portfolio{background:var(--bg-primary)}.portfolio-filters{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-bottom:48px}.filter-btn{background:#0000;border:2px solid var(--border-color);border-radius:50px;color:var(--text-secondary);cursor:pointer;font-size:.9rem;font-weight:500;padding:10px 24px;transition:all var(--transition-normal)}.filter-btn.active,.filter-btn:hover{background:var(--primary);border-color:var(--primary);color:#fff}.portfolio-grid{grid-gap:30px;display:grid;gap:30px;grid-template-columns:repeat(3,1fr)}.portfolio-item{background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);display:flex;flex-direction:column;height:100%;overflow:hidden;transition:all var(--transition-normal)}.portfolio-item:hover{box-shadow:var(--card-shadow-hover);transform:translateY(-10px)}.portfolio-image{aspect-ratio:16/10;flex-shrink:0;overflow:hidden;position:relative}.portfolio-image img{height:100%;object-fit:cover;transition:transform var(--transition-slow);width:100%}.portfolio-item:hover .portfolio-image img{transform:scale(1.1)}.portfolio-overlay{align-items:center;background:linear-gradient(135deg,#6366f1e6,#ec4899e6);display:flex;inset:0;justify-content:center;opacity:0;position:absolute;transition:opacity var(--transition-normal)}.portfolio-item:hover .portfolio-overlay{opacity:1}.portfolio-links{display:flex;gap:16px}.portfolio-link{align-items:center;background:#fff;border-radius:50%;color:var(--primary);display:flex;font-size:1.25rem;height:50px;justify-content:center;opacity:0;transform:translateY(20px);transition:all var(--transition-normal);width:50px}.portfolio-item:hover .portfolio-link{opacity:1;transform:translateY(0)}.portfolio-item:hover .portfolio-link:nth-child(2){transition-delay:.1s}.portfolio-link:hover{background:var(--text-primary);color:#fff;transform:scale(1.1)}.portfolio-content{display:flex;flex-direction:column;flex-grow:1;padding:24px}.portfolio-category{color:var(--primary);display:inline-block;font-size:.8rem;font-weight:600;letter-spacing:1px;margin-bottom:8px;text-transform:uppercase}.portfolio-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;font-size:1.25rem;line-height:1.4;margin-bottom:12px;min-height:2.8em;overflow:hidden;transition:color var(--transition-fast)}.portfolio-item:hover .portfolio-title{color:var(--primary)}.portfolio-description{-webkit-line-clamp:3;-webkit-box-orient:vertical;color:var(--text-secondary);display:-webkit-box;flex-grow:1;font-size:.95rem;line-height:1.6;margin-bottom:16px;min-height:4.8em;overflow:hidden}.portfolio-tech{align-items:flex-start;display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px;min-height:32px}.tech-tag{font-size:.75rem;font-weight:500;padding:4px 12px}.tech-tag.more{background:var(--primary);color:#fff}.portfolio-btn{align-items:center;color:var(--primary);display:inline-flex;font-size:.95rem;font-weight:600;gap:8px;margin-top:auto;transition:all var(--transition-fast)}.portfolio-btn:hover{color:var(--primary-dark);gap:12px}.portfolio-load-more{margin-top:48px;text-align:center}@media (max-width:992px){.portfolio-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:576px){.portfolio-grid{grid-template-columns:1fr}.portfolio-filters{gap:8px}.filter-btn{font-size:.85rem;padding:8px 16px}.portfolio-description,.portfolio-title{min-height:auto}}.resume{background:var(--bg-primary)}.resume-download{margin-bottom:60px;text-align:center}.resume-content{grid-gap:60px;display:grid;gap:60px;grid-template-columns:1fr 1fr;margin-bottom:80px}.resume-section-header{align-items:center;display:flex;gap:12px;margin-bottom:32px}.resume-section-header.centered{justify-content:center}.section-icon{color:var(--primary)}.resume-section-header h3,.section-icon{font-size:1.5rem}.timeline{padding-left:30px;position:relative}.timeline:before{background:linear-gradient(to bottom,var(--primary),var(--secondary));bottom:0;content:"";left:0;position:absolute;top:0;width:2px}.timeline-item{margin-bottom:32px;position:relative}.timeline-item:last-child{margin-bottom:0}.timeline-marker{background:var(--primary);border:3px solid var(--bg-primary);border-radius:50%;box-shadow:0 0 0 3px var(--primary);height:12px;left:-35px;position:absolute;top:24px;width:12px}.timeline-content{padding:24px}.timeline-header{align-items:flex-start;display:flex;gap:16px;justify-content:space-between;margin-bottom:16px}.timeline-title{font-size:1.15rem;margin-bottom:4px}.timeline-company{color:var(--primary);font-size:.95rem;font-weight:600;margin-bottom:2px}.timeline-location,.timeline-period{color:var(--text-muted);font-size:.85rem}.timeline-period{background:var(--bg-tertiary);border-radius:20px;padding:6px 14px;white-space:nowrap}.timeline-description{font-size:.95rem;margin-bottom:16px}.timeline-achievements{list-style:none}.timeline-achievements li{align-items:flex-start;color:var(--text-secondary);display:flex;font-size:.9rem;gap:10px;margin-bottom:8px}.check-icon{color:var(--accent);flex-shrink:0;margin-top:3px}.certifications{margin-bottom:80px}.certifications-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(4,1fr);margin-top:32px}.certification-card{padding:24px;text-align:center}.cert-badge{align-items:center;background:linear-gradient(135deg,var(--primary) 0,var(--secondary) 100%);border-radius:12px;color:#fff;display:flex;font-size:1.5rem;height:50px;justify-content:center;margin:0 auto 16px;width:50px}.certification-card h4{font-size:1rem;margin-bottom:8px}.cert-issuer{color:var(--text-secondary);font-size:.85rem;margin-bottom:8px}.cert-year{background:#6366f11a;border-radius:20px;color:var(--primary);display:inline-block;font-size:.8rem;font-weight:600;padding:4px 12px}.technical-skills{background:var(--bg-secondary);border-radius:var(--border-radius-lg);padding:48px}.skills-section-title{font-size:1.5rem;margin-bottom:40px;text-align:center}.skills-categories{grid-gap:32px;display:grid;gap:32px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.skill-category{text-align:center}.category-title{color:var(--primary);font-size:1rem;letter-spacing:1px;margin-bottom:16px;text-transform:uppercase}.category-skills{display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.skill-badge{background:var(--card-bg);border:1px solid var(--border-color);border-radius:20px;color:var(--text-primary);font-size:.85rem;padding:8px 16px;transition:all var(--transition-normal)}.skill-badge:hover{background:var(--primary);border-color:var(--primary);color:#fff;transform:translateY(-2px)}@media (max-width:992px){.resume-content{gap:48px;grid-template-columns:1fr}.certifications-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:576px){.timeline-header{flex-direction:column;gap:8px}.timeline-period{align-self:flex-start}.certifications-grid{grid-template-columns:1fr}.technical-skills{padding:32px 24px}.skills-categories{grid-template-columns:1fr}}.contact{background:var(--bg-secondary)}.contact-content{grid-gap:60px;align-items:start;display:grid;gap:60px;grid-template-columns:1fr 1.2fr}.contact-info h3{font-size:1.75rem;margin-bottom:16px}.contact-text{color:var(--text-secondary);font-size:1.05rem;line-height:1.8;margin-bottom:32px}.contact-details{display:flex;flex-direction:column;gap:20px;margin-bottom:32px}.contact-item{gap:16px}.contact-icon,.contact-item{align-items:center;display:flex}.contact-icon{background:linear-gradient(135deg,var(--primary) 0,var(--primary-dark) 100%);border-radius:12px;color:#fff;font-size:1.25rem;height:50px;justify-content:center;width:50px}.contact-item-content{display:flex;flex-direction:column}.contact-label{color:var(--text-muted);font-size:.85rem;margin-bottom:2px}.contact-value{color:var(--text-primary);font-size:1rem;font-weight:500;transition:color var(--transition-fast)}a.contact-value:hover{color:var(--primary)}.contact-social{margin-bottom:32px}.contact-social h4{color:var(--text-secondary);font-size:1rem;margin-bottom:16px}.contact-cta{border-top:1px solid var(--border-color);padding-top:24px}.cta-badge{align-items:center;background:#22c55e1a;border:1px solid #22c55e4d;border-radius:50px;color:#22c55e;display:inline-flex;font-weight:500;gap:10px;padding:12px 20px}.status-dot{animation:pulse 2s infinite;background:#22c55e;border-radius:50%;height:10px;width:10px}.contact-form-wrapper{background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--border-radius-lg);box-shadow:var(--card-shadow);padding:40px}.contact-form{display:flex;flex-direction:column;gap:24px}.form-row{grid-gap:24px;display:grid;gap:24px;grid-template-columns:1fr 1fr}.form-group{display:flex;flex-direction:column}.form-group label{color:var(--text-primary);font-size:.9rem;font-weight:500;margin-bottom:8px}.form-group input,.form-group textarea{background:var(--bg-primary);border:2px solid var(--border-color);border-radius:var(--border-radius);color:var(--text-primary);font-family:inherit;font-size:1rem;padding:14px 18px;transition:all var(--transition-normal)}.form-group input:focus,.form-group textarea:focus{border-color:var(--primary);box-shadow:0 0 0 4px #6366f11a;outline:none}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-muted)}.form-group textarea{min-height:120px;resize:vertical}.form-group.error input,.form-group.error textarea{border-color:#ef4444}.error-message{color:#ef4444;font-size:.8rem;margin-top:6px}.submit-btn{font-size:1rem;padding:16px;width:100%}.submit-btn.loading{pointer-events:none}.submit-btn.success{background:#22c55e;box-shadow:0 4px 15px #22c55e66}.spinner{animation:spin .8s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;height:20px;width:20px}@keyframes spin{to{transform:rotate(1turn)}}@media (max-width:992px){.contact-content{gap:48px;grid-template-columns:1fr}.contact-info{text-align:center}.contact-details,.contact-social{align-items:center}.contact-social{display:flex;flex-direction:column}.contact-cta{display:flex;justify-content:center}}@media (max-width:576px){.form-row{gap:20px;grid-template-columns:1fr}.contact-form-wrapper{padding:24px}}.footer{background:var(--bg-primary);border-top:1px solid var(--border-color);padding:80px 0 0;position:relative}.footer-top{grid-gap:48px;display:grid;gap:48px;grid-template-columns:1.5fr 1fr 1fr 1.5fr;padding-bottom:48px}.footer-logo{align-items:center;display:inline-flex;font-size:1.75rem;font-weight:700;margin-bottom:16px}.footer-logo .logo-text{color:var(--text-primary)}.footer-logo .logo-dot{color:var(--primary);font-size:2rem}.footer-tagline{color:var(--text-secondary);font-size:.95rem;line-height:1.7;margin-bottom:24px;max-width:300px}.footer-social{display:flex;gap:12px}.footer-contact h4,.footer-nav h4,.footer-newsletter h4{color:var(--text-primary);font-size:1.1rem;margin-bottom:20px}.footer-contact ul,.footer-nav ul{list-style:none}.footer-contact li,.footer-nav li{margin-bottom:12px}.footer-contact a,.footer-contact li,.footer-nav a{color:var(--text-secondary);font-size:.95rem;transition:color var(--transition-fast)}.footer-contact a:hover,.footer-nav a:hover{color:var(--primary)}.footer-newsletter p{color:var(--text-secondary);font-size:.9rem;margin-bottom:16px}.newsletter-form{display:flex;gap:12px}.newsletter-form input{background:var(--bg-secondary);border:2px solid var(--border-color);border-radius:8px;color:var(--text-primary);flex:1 1;font-size:.9rem;padding:12px 16px;transition:all var(--transition-normal)}.newsletter-form input:focus{border-color:var(--primary);outline:none}.newsletter-form .btn{padding:12px 20px;white-space:nowrap}.footer-divider{background:var(--border-color);height:1px}.footer-bottom{justify-content:space-between;padding:24px 0}.copyright,.footer-bottom{align-items:center;display:flex}.copyright{color:var(--text-muted);font-size:.9rem;gap:6px}.heart-icon{animation:heartbeat 1.5s infinite;color:#ef4444}@keyframes heartbeat{0%,to{transform:scale(1)}50%{transform:scale(1.2)}}.footer-links{display:flex;gap:24px}.footer-links a{color:var(--text-muted);font-size:.9rem;transition:color var(--transition-fast)}.footer-links a:hover{color:var(--primary)}.scroll-to-top{align-items:center;background:linear-gradient(135deg,var(--primary) 0,var(--primary-dark) 100%);border:none;border-radius:50%;bottom:30px;box-shadow:0 4px 15px #6366f166;color:#fff;cursor:pointer;display:flex;font-size:1.25rem;height:50px;justify-content:center;position:fixed;right:30px;transition:all var(--transition-normal);width:50px;z-index:100}.scroll-to-top:hover{box-shadow:0 8px 25px #6366f180;transform:translateY(-5px)}@media (max-width:992px){.footer-top{gap:40px;grid-template-columns:1fr 1fr}.footer-brand{grid-column:span 2;text-align:center}.footer-tagline{margin-left:auto;margin-right:auto;max-width:none}.footer-social{justify-content:center}}@media (max-width:576px){.footer{padding:60px 0 0}.footer-top{grid-template-columns:1fr;text-align:center}.footer-brand{grid-column:span 1}.footer-contact ul,.footer-nav ul{align-items:center;display:flex;flex-direction:column}.footer-bottom,.newsletter-form{flex-direction:column}.footer-bottom{gap:16px;text-align:center}.footer-links{justify-content:center}.scroll-to-top{bottom:20px;height:45px;right:20px;width:45px}}.project-detail{padding-top:80px}.project-not-found{align-items:center;display:flex;flex-direction:column;gap:24px;justify-content:center;min-height:60vh;text-align:center}.project-hero{background:var(--bg-secondary);padding:60px 0 80px}.back-link{align-items:center;color:var(--text-secondary);display:inline-flex;font-weight:500;gap:8px;margin-bottom:32px;transition:color var(--transition-fast)}.back-link:hover{color:var(--primary)}.project-hero-content{max-width:800px}.project-category{color:var(--primary);display:inline-block;font-size:.9rem;font-weight:600;letter-spacing:2px;margin-bottom:16px;text-transform:uppercase}.project-title{font-size:clamp(2rem,4vw,3.5rem);line-height:1.2;margin-bottom:20px}.project-subtitle{color:var(--text-secondary);font-size:1.15rem;line-height:1.8;margin-bottom:32px}.project-meta{display:flex;flex-wrap:wrap;gap:24px;margin-bottom:32px}.meta-item{align-items:center;color:var(--text-muted);display:flex;font-size:.95rem;gap:8px}.meta-item svg{color:var(--primary)}.project-actions{display:flex;flex-wrap:wrap;gap:16px}.project-gallery{background:var(--bg-primary);padding:60px 0}.gallery-main{border-radius:var(--border-radius-lg);box-shadow:var(--card-shadow);margin-bottom:20px;overflow:hidden}.gallery-main img{display:block;height:auto;width:100%}.gallery-thumbnails{display:flex;gap:12px;justify-content:center}.thumbnail{background:none;border:3px solid #0000;border-radius:8px;cursor:pointer;height:70px;overflow:hidden;padding:0;transition:all var(--transition-normal);width:100px}.thumbnail img{height:100%;object-fit:cover;width:100%}.thumbnail.active,.thumbnail:hover{border-color:var(--primary)}.project-content{background:var(--bg-secondary);padding:80px 0}.content-grid{grid-gap:60px;align-items:start;display:grid;gap:60px;grid-template-columns:1fr 350px}.content-block{margin-bottom:48px}.content-block h2{font-size:1.75rem;margin-bottom:20px;padding-bottom:12px;position:relative}.content-block h2:after{background:linear-gradient(90deg,var(--primary),var(--secondary));border-radius:2px;bottom:0;content:"";height:3px;left:0;position:absolute;width:60px}.content-block p{font-size:1.05rem;line-height:1.9}.results-list{list-style:none}.results-list li{align-items:flex-start;color:var(--text-secondary);display:flex;font-size:1.05rem;gap:12px;margin-bottom:16px}.result-icon{align-items:center;background:linear-gradient(135deg,var(--primary) 0,var(--secondary) 100%);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:.75rem;height:24px;justify-content:center;margin-top:2px;width:24px}.sidebar-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--border-radius);margin-bottom:24px;padding:24px}.sidebar-card h3{font-size:1.1rem;margin-bottom:20px}.info-item{border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:12px 0}.info-item:last-child{border-bottom:none}.info-label{color:var(--text-muted);font-size:.9rem}.info-value{color:var(--text-primary);font-size:.9rem;font-weight:500}.tech-tags{display:flex;flex-wrap:wrap;gap:8px}.tech-tag{background:var(--bg-tertiary);border-radius:20px;color:var(--text-secondary);font-size:.85rem;padding:6px 14px;transition:all var(--transition-fast)}.tech-tag:hover{background:var(--primary);color:#fff}.next-project{background:var(--bg-primary);padding:80px 0}.next-project h2{font-size:2rem;margin-bottom:48px;text-align:center}.next-project-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(3,1fr)}.next-project-card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--border-radius);overflow:hidden;transition:all var(--transition-normal)}.next-project-card:hover{box-shadow:var(--card-shadow-hover);transform:translateY(-5px)}.next-project-image{aspect-ratio:16/10;overflow:hidden}.next-project-image img{height:100%;object-fit:cover;transition:transform var(--transition-slow);width:100%}.next-project-card:hover .next-project-image img{transform:scale(1.1)}.next-project-info{padding:20px}.next-project-category{color:var(--primary);font-size:.8rem;font-weight:600;letter-spacing:1px;text-transform:uppercase}.next-project-info h3{font-size:1.15rem;margin-top:8px;transition:color var(--transition-fast)}.next-project-card:hover .next-project-info h3{color:var(--primary)}@media (max-width:992px){.content-grid{gap:48px;grid-template-columns:1fr}.sidebar{grid-gap:24px;display:grid;gap:24px;grid-template-columns:1fr 1fr}.sidebar-card{margin-bottom:0}.next-project-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:576px){.project-hero{padding:40px 0 60px}.project-actions{flex-direction:column}.project-actions .btn{justify-content:center;width:100%}.next-project-grid,.sidebar{grid-template-columns:1fr}.thumbnail{height:55px;width:80px}}.fade-in{animation:fadeInUp .8s ease forwards;opacity:0;transform:translateY(30px)}@keyframes fadeInUp{to{opacity:1;transform:translateY(0)}}.slide-in-left{animation:slideInLeft .8s ease forwards;opacity:0;transform:translateX(-50px)}.slide-in-right{animation:slideInRight .8s ease forwards;opacity:0;transform:translateX(50px)}@keyframes slideInLeft{to{opacity:1;transform:translateX(0)}}@keyframes slideInRight{to{opacity:1;transform:translateX(0)}}.scale-in{animation:scaleIn .6s ease forwards;opacity:0;transform:scale(.9)}@keyframes scaleIn{to{opacity:1;transform:scale(1)}}.delay-1{animation-delay:.1s}.delay-2{animation-delay:.2s}.delay-3{animation-delay:.3s}.delay-4{animation-delay:.4s}.delay-5{animation-delay:.5s}.delay-6{animation-delay:.6s}.gradient-text{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,var(--primary) 0,var(--secondary) 100%);-webkit-background-clip:text;background-clip:text}.card{background:var(--card-bg);border:1px solid var(--border-color);border-radius:var(--border-radius);box-shadow:var(--card-shadow);transition:all var(--transition-normal)}.card:hover{box-shadow:var(--card-shadow-hover);transform:translateY(-5px)}.tag{background:var(--bg-tertiary);border-radius:20px;color:var(--text-secondary);display:inline-block;font-size:.8rem;font-weight:500;padding:6px 14px;transition:all var(--transition-fast)}.tag:hover{background:var(--primary);color:#fff}.icon-btn{align-items:center;background:var(--bg-tertiary);border:none;border-radius:50%;color:var(--text-primary);cursor:pointer;display:flex;height:45px;justify-content:center;transition:all var(--transition-normal);width:45px}.icon-btn:hover{background:var(--primary);color:#fff;transform:scale(1.1)}.social-links{display:flex;gap:12px}.social-link{align-items:center;background:var(--bg-tertiary);border-radius:50%;color:var(--text-secondary);display:flex;font-size:1.1rem;height:42px;justify-content:center;transition:all var(--transition-normal);width:42px}.social-link:hover{background:var(--primary);color:#fff;transform:translateY(-3px)}.divider{background:linear-gradient(90deg,#0000,var(--border-color),#0000);height:1px;margin:40px 0}.blob{border-radius:50%;filter:blur(60px);opacity:.5;pointer-events:none;position:absolute}.blob-1{background:var(--primary);height:400px;opacity:.1;width:400px}.blob-2{background:var(--secondary);height:300px;opacity:.1;width:300px}.glass{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3}body.dark-mode .glass{background:#0003;border:1px solid #ffffff1a}.highlight-box{background:linear-gradient(135deg,#6366f11a,#ec48991a);border-left:4px solid var(--primary);border-radius:var(--border-radius);padding:24px}.progress-bar{background:var(--bg-tertiary);border-radius:4px;height:8px;overflow:hidden}.progress-fill{background:linear-gradient(90deg,var(--primary),var(--secondary));border-radius:4px;height:100%;transition:width 1s ease}.floating{animation:floating 3s ease-in-out infinite}@keyframes floating{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.pulse{animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@media (max-width:768px){.hide-mobile{display:none!important}}@media (min-width:769px){.hide-desktop{display:none!important}}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}:root{--primary:#6366f1;--primary-dark:#4f46e5;--primary-light:#818cf8;--secondary:#ec4899;--accent:#14b8a6;--bg-primary:#fff;--bg-secondary:#f8fafc;--bg-tertiary:#f1f5f9;--text-primary:#1e293b;--text-secondary:#64748b;--text-muted:#94a3b8;--border-color:#e2e8f0;--card-bg:#fff;--card-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;--card-shadow-hover:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;--font-primary:"Inter",-apple-system,BlinkMacSystemFont,sans-serif;--font-display:"Playfair Display",Georgia,serif;--section-padding:100px 0;--container-width:1200px;--border-radius:12px;--border-radius-lg:20px;--transition-fast:0.2s ease;--transition-normal:0.3s ease;--transition-slow:0.5s ease}body.dark-mode{--bg-primary:#0f172a;--bg-secondary:#1e293b;--bg-tertiary:#334155;--text-primary:#f1f5f9;--text-secondary:#cbd5e1;--text-muted:#94a3b8;--border-color:#334155;--card-bg:#1e293b;--card-shadow:0 4px 6px -1px #0000004d,0 2px 4px -1px #0003;--card-shadow-hover:0 20px 25px -5px #0006,0 10px 10px -5px #0000004d}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background-color:#fff;background-color:var(--bg-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-family:var(--font-primary);line-height:1.6;overflow-x:hidden;transition:background-color .3s ease,color .3s ease;transition:background-color var(--transition-normal),color var(--transition-normal)}body,h1,h2,h3,h4,h5,h6{color:#1e293b;color:var(--text-primary)}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.2}h1{font-size:clamp(2.5rem,5vw,4rem)}h2{font-size:clamp(2rem,4vw,3rem)}h3{font-size:clamp(1.5rem,3vw,2rem)}p{color:#64748b;color:var(--text-secondary);font-size:1rem;line-height:1.8}a{color:inherit;text-decoration:none;transition:color .2s ease;transition:color var(--transition-fast)}.container{margin:0 auto;max-width:1200px;max-width:var(--container-width);padding:0 24px}.section{padding:100px 0;padding:var(--section-padding)}.section-header{margin-bottom:60px;text-align:center}.section-subtitle{color:#6366f1;color:var(--primary);display:inline-block;font-size:.875rem;font-weight:600;letter-spacing:2px;margin-bottom:12px;text-transform:uppercase}.section-title{font-family:Playfair Display,Georgia,serif;font-family:var(--font-display);margin-bottom:16px}.section-description{color:#64748b;color:var(--text-secondary);margin:0 auto;max-width:600px}.btn{align-items:center;border:none;border-radius:50px;cursor:pointer;display:inline-flex;font-size:.95rem;font-weight:600;gap:8px;justify-content:center;padding:14px 28px;transition:all .3s ease;transition:all var(--transition-normal)}.btn-primary{background:linear-gradient(135deg,#6366f1,#4f46e5);background:linear-gradient(135deg,var(--primary) 0,var(--primary-dark) 100%);box-shadow:0 4px 15px #6366f166;color:#fff}.btn-primary:hover{box-shadow:0 8px 25px #6366f180;transform:translateY(-3px)}.btn-secondary{background:#0000;border:2px solid #e2e8f0;border:2px solid var(--border-color);color:#1e293b;color:var(--text-primary)}.btn-secondary:hover{border-color:#6366f1;border-color:var(--primary);transform:translateY(-3px)}.btn-outline,.btn-secondary:hover{color:#6366f1;color:var(--primary)}.btn-outline{background:#0000;border:2px solid #6366f1;border:2px solid var(--primary)}.btn-outline:hover{background:#6366f1;background:var(--primary);color:#fff;transform:translateY(-3px)}.loader-container{background:#fff;background:var(--bg-primary);height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:9999}.loader,.loader-container{align-items:center;display:flex}.loader{gap:8px}.loader-text{color:#6366f1;color:var(--primary);font-size:1.5rem;font-weight:600}.loader-dots{display:flex;gap:4px}.loader-dots span{animation:bounce 1.4s ease-in-out infinite both;background:#6366f1;background:var(--primary);border-radius:50%;height:8px;width:8px}.loader-dots span:first-child{animation-delay:-.32s}.loader-dots span:nth-child(2){animation-delay:-.16s}@keyframes bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#f8fafc;background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:#6366f1;background:var(--primary);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#4f46e5;background:var(--primary-dark)}::selection{background:#6366f1;background:var(--primary);color:#fff}@media (max-width:768px){.section{padding:60px 0}.section-header{margin-bottom:40px}}
/*# sourceMappingURL=main.f38dc231.css.map*/