@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap";.theme-toggle{position:relative;width:50px;height:28px;background-color:var(--color-gray-200);border:none;border-radius:var(--border-radius-full);cursor:pointer;transition:all var(--transition-normal);overflow:hidden;padding:0}.theme-toggle:hover{background-color:var(--color-gray-300);transform:scale(1.05)}.theme-toggle:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.theme-toggle-icons{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:space-between;padding:0 6px}.theme-toggle-icon{position:absolute;transition:all var(--transition-normal);color:var(--color-gray-600)}.theme-toggle-icon.active{color:var(--color-primary);transform:scale(1.1)}.theme-toggle-icon:first-child{left:6px}.theme-toggle-icon:last-child{right:6px}[data-theme=dark] .theme-toggle{background-color:var(--color-gray-700)}[data-theme=dark] .theme-toggle:hover{background-color:var(--color-gray-600)}[data-theme=dark] .theme-toggle-icon{color:var(--color-gray-400)}[data-theme=dark] .theme-toggle-icon.active{color:var(--color-primary-light)}.theme-toggle-icon{opacity:.6}.theme-toggle-icon.active{opacity:1}.theme-toggle:before{content:"";position:absolute;top:2px;left:2px;width:24px;height:24px;background-color:var(--color-white);border-radius:var(--border-radius-full);transition:transform var(--transition-normal);box-shadow:var(--shadow-sm);z-index:1}[data-theme=dark] .theme-toggle:before{transform:translate(22px);background-color:var(--color-gray-800)}@media (max-width: 768px){.theme-toggle{width:46px;height:26px}.theme-toggle:before{width:22px;height:22px}[data-theme=dark] .theme-toggle:before{transform:translate(20px)}}.nav{position:fixed;top:0;left:0;right:0;z-index:1000;background-color:var(--bg-primary);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border-primary);transition:all var(--transition-normal);box-shadow:var(--shadow-sm)}.nav-container{max-width:var(--container-max-width);margin:0 auto;padding:0 var(--spacing-md);display:flex;justify-content:space-between;align-items:center;height:var(--nav-height);position:relative}.nav-logo{background:none;border:none;cursor:pointer;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius-md);transition:all var(--transition-fast);position:absolute;left:0;z-index:10}.nav-logo:hover{transform:scale(1.02)}.nav-profile-wrapper{display:flex;align-items:center;gap:var(--spacing-sm)}.nav-profile-image{width:40px;height:40px;border-radius:var(--border-radius-full);overflow:hidden;border:none;background:none;padding:0;transition:all var(--transition-normal)}.nav-logo:hover .nav-profile-image{transform:rotate(5deg)}.nav-profile-img{width:100%;height:100%;object-fit:cover;border-radius:var(--border-radius-full);display:block}.nav-profile-name{font-size:var(--font-size-xl);font-weight:700;color:var(--color-primary);transition:color var(--transition-fast)}.nav-logo:hover .nav-profile-name{color:var(--color-primary-dark)}.nav-desktop{display:none;gap:var(--spacing-lg);margin-left:auto;align-items:center}.nav-link{background:none;border:none;color:var(--text-secondary);font-weight:500;font-size:var(--font-size-base);cursor:pointer;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius-md);position:relative;transition:all var(--transition-fast)}.nav-link:after{content:"";position:absolute;bottom:-2px;left:50%;width:0;height:2px;background-color:var(--color-primary);transform:translate(-50%);transition:width var(--transition-normal)}.nav-link:hover{color:var(--color-primary)}.nav-link:hover:after{width:80%}.nav-link-active{color:var(--color-primary);font-weight:600}.nav-link-active:after{width:80%}.nav-mobile-controls{display:flex;align-items:center;gap:var(--spacing-md);margin-left:auto}.nav-mobile-toggle{display:flex;background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:var(--spacing-sm);border-radius:var(--border-radius-md);transition:all var(--transition-fast)}.nav-mobile-toggle:hover{color:var(--color-primary);background-color:var(--bg-tertiary)}.nav-mobile-menu{position:absolute;top:100%;left:0;right:0;background-color:var(--bg-primary);border-bottom:1px solid var(--border-primary);box-shadow:var(--shadow-lg);padding:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-xs)}.nav-mobile-link{background:none;border:none;color:var(--text-secondary);font-weight:500;font-size:var(--font-size-lg);cursor:pointer;padding:var(--spacing-md);text-align:left;border-radius:var(--border-radius-md);transition:all var(--transition-fast)}.nav-mobile-link:hover{color:var(--color-primary);background-color:var(--bg-secondary)}.nav-mobile-link-active{color:var(--color-primary);background-color:var(--bg-secondary);font-weight:600}[data-theme=dark] .nav{background-color:#0f172af2}[data-theme=dark] .nav-profile-name{color:var(--color-primary-light)}[data-theme=dark] .nav-logo:hover .nav-profile-name{color:var(--color-primary)}@media (min-width: 640px){.nav-container{padding:0 var(--spacing-lg)}.nav-logo{left:-var(--spacing-sm)}.nav-profile-image{width:44px;height:44px}.nav-profile-name{font-size:var(--font-size-2xl)}}@media (min-width: 768px){.nav-container{padding:0 var(--spacing-xl)}.nav-logo{left:-var(--spacing-md)}.nav-desktop{display:flex}.nav-mobile-controls,.nav-mobile-menu{display:none}}@media (min-width: 1024px){.nav-container{padding:0 var(--spacing-2xl)}.nav-logo{left:-var(--spacing-lg)}.nav-desktop{gap:var(--spacing-2xl)}.nav-profile-image{width:48px;height:48px}}@media (min-width: 1280px){.nav-container{padding:0 var(--spacing-3xl)}.nav-logo{left:-var(--spacing-xl)}}.hero{min-height:100vh;padding:var(--nav-height) var(--spacing-md) var(--spacing-5xl);background:linear-gradient(135deg,var(--bg-secondary) 0%,var(--bg-tertiary) 100%);position:relative;overflow:hidden;display:flex;align-items:center;transition:background var(--transition-normal)}[data-theme=dark] .hero{background:linear-gradient(135deg,var(--color-gray-900) 0%,var(--color-gray-800) 100%)}.hero-container{max-width:var(--container-max-width);margin:0 auto;width:100%;position:relative;z-index:2}.hero-content{text-align:center;max-width:800px;margin:0 auto;position:relative;z-index:10}.hero-text{margin-bottom:var(--spacing-3xl)}.hero-title{font-size:var(--font-size-4xl);font-weight:800;color:var(--text-primary);margin-bottom:var(--spacing-lg);line-height:1.1;animation:fadeInUp .8s ease-out}.hero-name{color:var(--color-primary);position:relative}.hero-name:after{display:none}.hero-subtitle{font-size:var(--font-size-xl);font-weight:600;color:var(--text-secondary);margin-bottom:var(--spacing-lg);animation:fadeInUp .8s ease-out .2s both}.hero-description{font-size:var(--font-size-lg);color:var(--text-secondary);line-height:1.7;max-width:600px;margin:0 auto;animation:fadeInUp .8s ease-out .4s both}.hero-social{display:flex;justify-content:center;gap:var(--spacing-lg);margin-bottom:var(--spacing-3xl);animation:fadeInUp .8s ease-out .6s both;position:relative;z-index:15}.hero-social-link{position:relative;z-index:20;display:flex;align-items:center;justify-content:center;width:48px;height:48px;background-color:var(--bg-primary);color:var(--text-secondary);border-radius:var(--border-radius-full);box-shadow:var(--shadow-md);transition:all var(--transition-normal);text-decoration:none;cursor:pointer}.hero-social-link:hover{color:var(--color-primary);transform:translateY(-2px);box-shadow:var(--shadow-lg)}.hero-actions{display:flex;flex-direction:column;gap:var(--spacing-md);align-items:center;margin-bottom:var(--spacing-4xl);animation:fadeInUp .8s ease-out .8s both;position:relative;z-index:15}.hero-actions .btn{min-width:180px;font-size:var(--font-size-lg);padding:var(--spacing-md) var(--spacing-xl)}.hero-scroll{background:none;border:none;color:var(--text-tertiary);cursor:pointer;padding:var(--spacing-md);border-radius:var(--border-radius-full);transition:all var(--transition-normal);animation:fadeInUp .8s ease-out 1s both,bounce 2s infinite 2s;position:relative;z-index:15}.hero-scroll:hover{color:var(--color-primary);transform:translateY(-2px)}.hero-bg{position:absolute;inset:0;z-index:1;opacity:.6}.hero-bg-circle{position:absolute;border-radius:var(--border-radius-full);background:linear-gradient(135deg,var(--color-primary-light),var(--color-primary));animation:float 6s ease-in-out infinite;pointer-events:none}[data-theme=dark] .hero-bg-circle{background:linear-gradient(135deg,#60a5fa4d,#3b82f633)}.hero-bg-circle-1{width:300px;height:300px;top:10%;right:10%;animation-delay:0s}.hero-bg-circle-2{width:200px;height:200px;bottom:20%;left:10%;animation-delay:2s}.hero-bg-circle-3{width:150px;height:150px;top:50%;right:20%;animation-delay:4s}@keyframes slideInLeft{0%{transform:scaleX(0);transform-origin:left}to{transform:scaleX(1);transform-origin:left}}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}@keyframes float{0%,to{transform:translateY(0) rotate(0)}33%{transform:translateY(-30px) rotate(120deg)}66%{transform:translateY(30px) rotate(240deg)}}@media (min-width: 640px){.hero-actions{flex-direction:row;justify-content:center}.hero-social{gap:var(--spacing-xl)}}@media (min-width: 768px){.hero{padding:var(--nav-height) var(--spacing-lg) var(--spacing-5xl)}.hero-title{font-size:var(--font-size-6xl)}.hero-subtitle{font-size:var(--font-size-2xl)}.hero-bg-circle-1{width:400px;height:400px}.hero-bg-circle-2{width:250px;height:250px}}@media (min-width: 1024px){.hero{padding:var(--nav-height) var(--spacing-2xl) var(--spacing-5xl)}.hero-title{font-size:var(--font-size-7xl)}.hero-social-link{width:56px;height:56px}}.about{padding:var(--spacing-5xl) var(--spacing-md);background-color:var(--bg-primary)}.about-container{max-width:var(--container-max-width);margin:0 auto}.about-content{display:grid;gap:var(--spacing-4xl);align-items:start}.about-text{order:1}.about-title{font-size:var(--font-size-4xl);font-weight:800;color:var(--text-primary);margin-bottom:var(--spacing-lg);position:relative}.about-title:after{content:"";position:absolute;bottom:-8px;left:0;width:60px;height:4px;background:linear-gradient(90deg,var(--color-primary),var(--color-primary-dark));border-radius:var(--border-radius-full)}.about-description{margin-bottom:var(--spacing-2xl)}.about-description p{font-size:var(--font-size-lg);line-height:1.7;color:var(--text-secondary);margin-bottom:var(--spacing-lg)}.about-description p:last-child{margin-bottom:0}.about-actions{display:flex;flex-direction:column;gap:var(--spacing-md);align-items:flex-start}.about-actions .btn{min-width:180px}.about-skills{order:2}.skills-title{font-size:var(--font-size-3xl);font-weight:700;color:var(--color-gray-900);margin-bottom:var(--spacing-xl);text-align:center}.skills-grid{display:grid;gap:var(--spacing-lg)}.skill-category{background-color:var(--bg-secondary);padding:var(--spacing-xl);border-radius:var(--border-radius-2xl);border:1px solid var(--border-primary);transition:all var(--transition-normal)}.skill-category:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.skill-category-title{font-size:var(--font-size-xl);font-weight:600;color:var(--color-gray-800);margin-bottom:var(--spacing-md);text-align:center}.skill-tags{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);justify-content:center}.skill-tag{padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius-full);font-size:var(--font-size-sm);font-weight:500;text-align:center;transition:all var(--transition-normal);cursor:default;border:1px solid transparent}.skill-tag:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}.skill-frontend{background-color:#dbeafe;color:#1e40af;border-color:#93c5fd}.skill-frontend:hover{background-color:#bfdbfe}.skill-backend{background-color:#dcfce7;color:#166534;border-color:#86efac}.skill-backend:hover{background-color:#bbf7d0}.skill-database{background-color:#fef3c7;color:#92400e;border-color:#fcd34d}.skill-database:hover{background-color:#fde68a}.skill-tools{background-color:var(--color-gray-100);color:var(--color-gray-700);border-color:var(--color-gray-300)}.skill-tools:hover{background-color:var(--color-gray-200)}@media (min-width: 640px){.about-actions{flex-direction:row}}@media (min-width: 768px){.about{padding:var(--spacing-5xl) var(--spacing-lg)}.about-content{grid-template-columns:1fr 1fr;gap:var(--spacing-5xl);align-items:start}.about-text{order:1}.about-skills{order:2}.skills-title{text-align:left}.skills-grid{grid-template-columns:1fr;gap:var(--spacing-lg)}.skill-tags{justify-content:flex-start}}@media (min-width: 1024px){.about{padding:var(--spacing-5xl) var(--spacing-2xl)}.about-content{gap:var(--spacing-5xl)}.skills-grid{grid-template-columns:1fr 1fr;gap:var(--spacing-xl)}}@media (min-width: 1280px){.about-content{grid-template-columns:3fr 2fr}}.projects{padding:var(--spacing-5xl) var(--spacing-md);background-color:var(--bg-secondary)}.projects-container{max-width:var(--container-max-width);margin:0 auto}.projects-header{text-align:center;margin-bottom:var(--spacing-4xl)}.projects-title{font-size:var(--font-size-4xl);font-weight:800;color:var(--color-gray-900);margin-bottom:var(--spacing-lg);position:relative}.projects-title:after{content:"";position:absolute;bottom:-8px;left:50%;transform:translate(-50%);width:60px;height:4px;background:linear-gradient(90deg,var(--color-primary),var(--color-primary-dark));border-radius:var(--border-radius-full)}.projects-description{font-size:var(--font-size-lg);color:var(--color-gray-600);max-width:600px;margin:0 auto;line-height:1.7}.projects-filters{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-4xl)}.filter-btn{background:none;border:2px solid var(--color-gray-300);color:var(--color-gray-600);padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--border-radius-full);font-weight:500;cursor:pointer;transition:all var(--transition-normal)}.filter-btn:hover{border-color:var(--color-primary);color:var(--color-primary);transform:translateY(-1px)}.filter-btn-active{background-color:var(--color-primary);border-color:var(--color-primary);color:var(--color-white)}.filter-btn-active:hover{background-color:var(--color-primary-dark);border-color:var(--color-primary-dark);color:var(--color-white)}.projects-grid{display:grid;gap:var(--spacing-5xl)}.projects-empty{text-align:center;padding:var(--spacing-4xl);color:var(--color-gray-500)}.projects-empty p{font-size:var(--font-size-lg);margin-bottom:var(--spacing-lg)}.projects-footer{text-align:center;margin-top:var(--spacing-4xl);padding-top:var(--spacing-3xl);border-top:1px solid var(--color-gray-200)}.projects-footer p{font-size:var(--font-size-lg);color:var(--color-gray-600);margin-bottom:var(--spacing-lg)}.project-card{display:grid;gap:var(--spacing-3xl);align-items:center;background-color:var(--bg-primary);border-radius:var(--border-radius-2xl);overflow:hidden;box-shadow:var(--shadow-lg);transition:all var(--transition-normal)}.project-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-xl)}.project-image-container{position:relative;overflow:hidden;border-radius:var(--border-radius-xl)}.project-image{width:100%;height:300px;object-fit:cover;transition:transform var(--transition-slow)}.project-card:hover .project-image{transform:scale(1.05)}.project-overlay{position:absolute;inset:0;background:linear-gradient(135deg,#3b82f6e6,#6366f1e6);display:flex;align-items:center;justify-content:center;gap:var(--spacing-lg);opacity:0;transition:opacity var(--transition-normal)}.project-card:hover .project-overlay{opacity:1}.project-overlay-link{display:flex;align-items:center;justify-content:center;width:48px;height:48px;background-color:var(--color-white);color:var(--color-primary);border-radius:var(--border-radius-full);transition:all var(--transition-fast);text-decoration:none}.project-overlay-link:hover{transform:scale(1.1);color:var(--color-primary-dark)}.project-featured-badge{position:absolute;top:var(--spacing-md);right:var(--spacing-md);background:linear-gradient(135deg,var(--color-warning),#d97706);color:var(--color-white);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius-full);font-size:var(--font-size-xs);font-weight:600;display:flex;align-items:center;gap:var(--spacing-xs);box-shadow:var(--shadow-md)}.project-content{padding:var(--spacing-xl)}.project-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-md)}.project-title{font-size:var(--font-size-2xl);font-weight:700;color:var(--text-primary)}.project-featured-icon{color:var(--color-warning);flex-shrink:0}.project-description{font-size:var(--font-size-base);line-height:1.7;color:var(--color-gray-600);margin-bottom:var(--spacing-lg)}.project-technologies{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);margin-bottom:var(--spacing-xl)}.project-tech-tag{background-color:#dbeafe;color:#1e40af;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--border-radius-full);font-size:var(--font-size-sm);font-weight:500;border:1px solid #93c5fd}.project-links{display:flex;flex-direction:column;gap:var(--spacing-sm)}.project-links .btn{min-width:140px;justify-content:center}@media (min-width: 640px){.project-links{flex-direction:row}}@media (min-width: 768px){.projects{padding:var(--spacing-5xl) var(--spacing-lg)}.project-card{grid-template-columns:1fr 1fr;gap:var(--spacing-4xl)}.project-card-reversed .project-image-container{order:2}.project-card-reversed .project-content{order:1}.project-image{height:350px}}@media (min-width: 1024px){.projects{padding:var(--spacing-5xl) var(--spacing-2xl)}.project-card{grid-template-columns:3fr 2fr}.project-card-reversed{grid-template-columns:2fr 3fr}.project-image{height:400px}}.contact{padding:var(--spacing-5xl) var(--spacing-md);background-color:var(--color-white)}.contact-container{max-width:var(--container-max-width);margin:0 auto}.contact-header{text-align:center;margin-bottom:var(--spacing-4xl)}.contact-title{font-size:var(--font-size-4xl);font-weight:800;color:var(--color-gray-900);margin-bottom:var(--spacing-lg);position:relative}.contact-title:after{content:"";position:absolute;bottom:-8px;left:50%;transform:translate(-50%);width:60px;height:4px;background:linear-gradient(90deg,var(--color-primary),var(--color-primary-dark));border-radius:var(--border-radius-full)}.contact-description{font-size:var(--font-size-lg);color:var(--color-gray-600);max-width:600px;margin:0 auto;line-height:1.7}.contact-content{display:grid;gap:var(--spacing-4xl)}.contact-methods{background-color:var(--color-gray-50);padding:var(--spacing-2xl);border-radius:var(--border-radius-2xl);border:1px solid var(--color-gray-200)}.contact-methods-title{font-size:var(--font-size-2xl);font-weight:700;color:var(--color-gray-900);margin-bottom:var(--spacing-lg);text-align:center}.contact-methods-grid{display:grid;gap:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.contact-method{display:flex;align-items:flex-start;gap:var(--spacing-md);padding:var(--spacing-lg);background-color:var(--color-white);border-radius:var(--border-radius-xl);border:1px solid var(--color-gray-200);transition:all var(--transition-normal)}.contact-method:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.contact-method-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;background-color:#dbeafe;color:var(--color-primary);border-radius:var(--border-radius-xl);flex-shrink:0}.contact-method-content{flex:1}.contact-method-title{font-size:var(--font-size-lg);font-weight:600;color:var(--color-gray-900);margin-bottom:var(--spacing-xs)}.contact-method-description{font-size:var(--font-size-sm);color:var(--color-gray-500);margin-bottom:var(--spacing-xs)}.contact-method-link{font-size:var(--font-size-base);color:var(--color-primary);text-decoration:none;font-weight:500;transition:color var(--transition-fast)}.contact-method-link:hover{color:var(--color-primary-dark);text-decoration:underline}.contact-method-value{font-size:var(--font-size-base);color:var(--color-gray-700);font-weight:500}.contact-social{border-top:1px solid var(--color-gray-200);padding-top:var(--spacing-lg)}.contact-social-title{font-size:var(--font-size-base);font-weight:600;color:var(--color-gray-700);margin-bottom:var(--spacing-md);text-align:center}.contact-social-links{display:flex;justify-content:center;gap:var(--spacing-lg);flex-wrap:wrap}.contact-social-link{color:var(--color-gray-600);text-decoration:none;font-weight:500;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--border-radius-md);transition:all var(--transition-fast)}.contact-social-link:hover{color:var(--color-primary);background-color:#dbeafe}.contact-cta{background:linear-gradient(135deg,var(--color-primary),var(--color-primary-dark));color:var(--color-white);padding:var(--spacing-3xl);border-radius:var(--border-radius-2xl);text-align:center;position:relative;overflow:hidden}.contact-cta:before{content:"";position:absolute;inset:0;background-image:radial-gradient(circle at 25% 25%,rgba(255,255,255,.1) 1px,transparent 1px),radial-gradient(circle at 75% 75%,rgba(255,255,255,.05) 1px,transparent 1px);background-size:50px 50px}.contact-cta-icon{display:flex;align-items:center;justify-content:center;width:80px;height:80px;background-color:#ffffff1a;border-radius:var(--border-radius-full);margin:0 auto var(--spacing-lg);color:var(--color-white);position:relative;z-index:1}.contact-cta-title{font-size:var(--font-size-2xl);font-weight:700;margin-bottom:var(--spacing-md);position:relative;z-index:1}.contact-cta-description{font-size:var(--font-size-lg);line-height:1.7;margin-bottom:var(--spacing-xl);opacity:.9;position:relative;z-index:1}.contact-cta-actions{display:flex;flex-direction:column;gap:var(--spacing-md);align-items:center;position:relative;z-index:1}.contact-cta-actions .btn{min-width:200px}.contact-cta-actions .btn-outline{background-color:transparent;color:var(--color-white);border-color:#ffffff4d}.contact-cta-actions .btn-outline:hover{background-color:#ffffff1a;border-color:var(--color-white)}@media (min-width: 640px){.contact-methods-grid{grid-template-columns:1fr 1fr}.contact-cta-actions{flex-direction:row;justify-content:center}}@media (min-width: 768px){.contact{padding:var(--spacing-5xl) var(--spacing-lg)}.contact-content{grid-template-columns:1fr 1fr;gap:var(--spacing-5xl);align-items:start}.contact-methods-grid{grid-template-columns:1fr}.contact-methods-title,.contact-social-title{text-align:left}.contact-social-links{justify-content:flex-start}}@media (min-width: 1024px){.contact{padding:var(--spacing-5xl) var(--spacing-2xl)}.contact-content{grid-template-columns:3fr 2fr}.contact-methods-grid{grid-template-columns:1fr 1fr}}.footer{background-color:var(--color-gray-900);color:var(--color-white);padding:var(--spacing-4xl) var(--spacing-md) var(--spacing-lg)}.footer-container{max-width:var(--container-max-width);margin:0 auto}.footer-content{display:grid;gap:var(--spacing-3xl);margin-bottom:var(--spacing-3xl);padding-bottom:var(--spacing-3xl);border-bottom:1px solid var(--color-gray-700)}.footer-brand{text-align:center}.footer-brand-name{font-size:var(--font-size-2xl);font-weight:700;color:var(--color-white);margin-bottom:var(--spacing-md)}.footer-brand-description{font-size:var(--font-size-base);color:var(--color-gray-300);line-height:1.7;max-width:400px;margin:0 auto}.footer-section{text-align:center}.footer-section-title{font-size:var(--font-size-lg);font-weight:600;color:var(--color-white);margin-bottom:var(--spacing-lg)}.footer-nav{display:flex;flex-direction:column;gap:var(--spacing-sm);align-items:center}.footer-nav-link{background:none;border:none;color:var(--color-gray-300);font-size:var(--font-size-base);cursor:pointer;padding:var(--spacing-xs) 0;transition:color var(--transition-fast)}.footer-nav-link:hover{color:var(--color-primary-light)}.footer-social{display:flex;flex-direction:column;gap:var(--spacing-sm);align-items:center}.footer-social-link{color:var(--color-gray-300);text-decoration:none;font-size:var(--font-size-base);padding:var(--spacing-xs) 0;transition:color var(--transition-fast)}.footer-social-link:hover{color:var(--color-primary-light)}.footer-contact{display:flex;flex-direction:column;gap:var(--spacing-sm);align-items:center}.footer-contact-link{color:var(--color-gray-300);text-decoration:none;font-size:var(--font-size-base);transition:color var(--transition-fast)}.footer-contact-link:hover{color:var(--color-primary-light)}.footer-contact-location{color:var(--color-gray-400);font-size:var(--font-size-sm);margin:0}.footer-bottom{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-lg);position:relative}.footer-copyright{color:var(--color-gray-400);font-size:var(--font-size-sm);margin:0;display:flex;align-items:center;gap:var(--spacing-xs);text-align:center}.footer-heart{color:var(--color-error);animation:heartbeat 1.5s ease-in-out infinite}.footer-scroll-top{display:flex;align-items:center;justify-content:center;width:48px;height:48px;background-color:var(--color-primary);color:var(--color-white);border:none;border-radius:var(--border-radius-full);cursor:pointer;transition:all var(--transition-normal);box-shadow:var(--shadow-lg)}.footer-scroll-top:hover{background-color:var(--color-primary-dark);transform:translateY(-2px);box-shadow:var(--shadow-xl)}@keyframes heartbeat{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}@media (min-width: 640px){.footer-bottom{flex-direction:row;justify-content:space-between;align-items:center}.footer-copyright{text-align:left}}@media (min-width: 768px){.footer{padding:var(--spacing-4xl) var(--spacing-lg) var(--spacing-lg)}.footer-content{grid-template-columns:1fr 1fr 1fr 1fr;gap:var(--spacing-2xl);align-items:start}.footer-brand,.footer-section{text-align:left}.footer-nav,.footer-social,.footer-contact{align-items:flex-start}}@media (min-width: 1024px){.footer{padding:var(--spacing-4xl) var(--spacing-2xl) var(--spacing-lg)}.footer-content{grid-template-columns:2fr 1fr 1fr 1fr}}.app{min-height:100vh;display:flex;flex-direction:column}.main{flex:1}:root{--color-primary: #3b82f6;--color-primary-dark: #1d4ed8;--color-primary-light: #60a5fa;--color-gray-50: #f8fafc;--color-gray-100: #f1f5f9;--color-gray-200: #e2e8f0;--color-gray-300: #cbd5e1;--color-gray-400: #94a3b8;--color-gray-500: #64748b;--color-gray-600: #475569;--color-gray-700: #334155;--color-gray-800: #1e293b;--color-gray-900: #0f172a;--color-white: #ffffff;--color-black: #000000;--color-success: #22c55e;--color-warning: #eab308;--color-error: #ef4444;--bg-primary: var(--color-white);--bg-secondary: var(--color-gray-50);--bg-tertiary: var(--color-gray-100);--text-primary: var(--color-gray-900);--text-secondary: var(--color-gray-600);--text-tertiary: var(--color-gray-500);--border-primary: var(--color-gray-200);--border-secondary: var(--color-gray-300);--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--spacing-3xl: 4rem;--spacing-4xl: 6rem;--spacing-5xl: 8rem;--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--font-size-5xl: 3rem;--font-size-6xl: 3.75rem;--font-size-7xl: 4.5rem;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--border-radius-sm: .25rem;--border-radius-md: .375rem;--border-radius-lg: .5rem;--border-radius-xl: .75rem;--border-radius-2xl: 1rem;--border-radius-full: 9999px;--transition-fast: .15s ease;--transition-normal: .3s ease;--transition-slow: .5s ease;--nav-height: 80px;--container-max-width: 1280px}[data-theme=dark]{--color-primary: #60a5fa;--color-primary-dark: #3b82f6;--color-primary-light: #93c5fd;--bg-primary: var(--color-gray-900);--bg-secondary: var(--color-gray-800);--bg-tertiary: var(--color-gray-700);--text-primary: var(--color-gray-100);--text-secondary: var(--color-gray-300);--text-tertiary: var(--color-gray-400);--border-primary: var(--color-gray-700);--border-secondary: var(--color-gray-600);--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .3), 0 2px 4px -1px rgba(0, 0, 0, .2);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .3), 0 4px 6px -2px rgba(0, 0, 0, .2);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .3), 0 10px 10px -5px rgba(0, 0, 0, .2)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;line-height:1.15;-webkit-text-size-adjust:100%;transition:background-color var(--transition-normal),color var(--transition-normal)}body{font-family:var(--font-family);font-size:var(--font-size-base);line-height:1.6;color:var(--text-primary);background-color:var(--bg-secondary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color var(--transition-normal),color var(--transition-normal)}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.2;color:var(--text-primary);margin-bottom:var(--spacing-md)}h1{font-size:var(--font-size-5xl)}h2{font-size:var(--font-size-4xl)}h3{font-size:var(--font-size-3xl)}h4{font-size:var(--font-size-2xl)}h5{font-size:var(--font-size-xl)}h6{font-size:var(--font-size-lg)}p{margin-bottom:var(--spacing-md);color:var(--text-secondary);line-height:1.7}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-primary-dark)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-xl);border:none;border-radius:var(--border-radius-lg);font-family:inherit;font-size:var(--font-size-base);font-weight:600;text-decoration:none;cursor:pointer;transition:all var(--transition-normal);white-space:nowrap}.btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.btn-primary{background-color:var(--color-primary);color:var(--color-white)}.btn-primary:hover{background-color:var(--color-primary-dark);transform:translateY(-1px);box-shadow:var(--shadow-lg)}.btn-outline{background-color:transparent;color:var(--color-primary);border:2px solid var(--color-primary)}.btn-outline:hover{background-color:var(--color-primary);color:var(--color-white)}[data-theme=dark] .btn-outline{color:var(--color-primary-light);border-color:var(--color-primary-light)}[data-theme=dark] .btn-outline:hover{background-color:var(--color-primary-light);color:var(--color-gray-900)}.container{max-width:var(--container-max-width);margin:0 auto;padding:0 var(--spacing-md)}@media (min-width: 768px){.container{padding:0 var(--spacing-lg)}}@media (min-width: 1024px){.container{padding:0 var(--spacing-2xl)}}section{position:relative;scroll-margin-top:var(--nav-height)}@media (max-width: 768px){h1{font-size:var(--font-size-3xl)}h2{font-size:var(--font-size-2xl)}h3{font-size:var(--font-size-xl)}}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg-tertiary)}::-webkit-scrollbar-thumb{background:var(--border-secondary);border-radius:var(--border-radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--text-tertiary)}::selection{background-color:var(--color-primary);color:var(--color-white)}*:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}.animate-fade-in-up{animation:fadeInUp .6s ease-out}.animate-fade-in-left{animation:fadeInLeft .6s ease-out}.animate-fade-in-right{animation:fadeInRight .6s ease-out}
