*{box-sizing:border-box;margin:0;padding:0}:root{--color-bg-primary:#000;--color-bg-secondary:#1d1d1f;--color-bg-tertiary:#2c2c2e;--color-text-primary:#f5f5f7;--color-text-secondary:#a1a1a6;--color-text-tertiary:#86868b;--color-accent-blue:#0071e3;--color-accent-blue-hover:#0077ed;--color-accent-purple:#bf5af2;--color-accent-green:#30d158;--color-accent-orange:#ff9f0a;--color-border:#ffffff1a;--color-shadow:#00000080;--color-glass-bg:#ffffff0d;--color-glass-border:#ffffff1a;--font-family:-apple-system,BlinkMacSystemFont,"SF Pro Display","SF Pro Text","Helvetica Neue",Arial,sans-serif;--font-size-hero:56px;--font-size-h1:48px;--font-size-h2:36px;--font-size-h3:24px;--font-size-body:17px;--font-size-small:14px;--spacing-xs:8px;--spacing-sm:16px;--spacing-md:24px;--spacing-lg:40px;--spacing-xl:80px;--radius-sm:8px;--radius-md:12px;--radius-lg:18px;--radius-full:980px;--transition-fast:0.2s cubic-bezier(0.4,0,0.2,1);--transition-medium:0.3s cubic-bezier(0.4,0,0.2,1);--transition-slow:0.5s cubic-bezier(0.4,0,0.2,1)}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#000;background-color:var(--color-bg-primary);color:#f5f5f7;color:var(--color-text-primary);font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,SF Pro Text,Helvetica Neue,Arial,sans-serif;font-family:var(--font-family);font-weight:400;letter-spacing:-.022em;line-height:1.47059}code{font-family:SF Mono,Monaco,Inconsolata,Fira Code,Droid Sans Mono,Source Code Pro,monospace}@media (max-width:1024px){:root{--font-size-hero:48px;--font-size-h1:40px;--font-size-h2:32px;--font-size-h3:22px;--font-size-body:16px}}@media (max-width:768px){:root{--font-size-hero:40px;--font-size-h1:32px;--font-size-h2:28px;--font-size-h3:20px;--font-size-body:15px;--font-size-small:13px;--spacing-md:20px;--spacing-lg:32px;--spacing-xl:60px}}@media (max-width:480px){:root{--font-size-hero:32px;--font-size-h1:28px;--font-size-h2:24px;--font-size-h3:18px;--font-size-body:14px;--font-size-small:12px;--spacing-sm:12px;--spacing-md:16px;--spacing-lg:24px;--spacing-xl:40px}}.home-section{align-items:center;background:var(--color-bg-primary);color:var(--color-text-primary);display:flex;flex-direction:column;justify-content:center;min-height:100vh;min-height:100dvh;overflow:hidden;padding:max(120px,calc(80px + env(safe-area-inset-top, 0px))) var(--spacing-md) 80px;position:relative;text-align:center;width:100%}.parallax-background{animation:subtleGlow 15s ease-in-out infinite;background:radial-gradient(circle at 50% 30%,#0071e314,#0000 50%),radial-gradient(circle at 80% 20%,#0071e30d,#0000 40%),radial-gradient(circle at 20% 80%,#0071e30d,#0000 40%);bottom:0;left:0;pointer-events:none;position:absolute;right:0;top:0;will-change:transform;z-index:0}@keyframes subtleGlow{0%,to{opacity:.5}50%{opacity:.8}}.home-content{margin:0 auto;max-width:980px;position:relative;transform:translateY(0);z-index:1}.home-content h1{color:var(--color-text-primary);font-size:var(--font-size-hero);font-weight:600;letter-spacing:-.015em;line-height:1.07143;margin-bottom:var(--spacing-md);margin-top:0}.large-profile-pic{border:3px solid var(--color-border);border-radius:50%;box-shadow:0 8px 24px var(--color-shadow);height:140px;margin-bottom:var(--spacing-md);object-fit:cover;transition:transform var(--transition-medium),box-shadow var(--transition-medium);width:140px;will-change:transform,box-shadow}.large-profile-pic:hover{box-shadow:0 12px 40px #0071e34d;transform:scale(1.05) translateZ(0)}.subheading{color:var(--color-text-tertiary);font-size:var(--font-size-h3);font-weight:500;letter-spacing:-.015em;line-height:1.3;margin-bottom:var(--spacing-md);margin-left:auto;margin-right:auto;margin-top:0;max-width:920px;padding:0 var(--spacing-md)}.bio{color:var(--color-text-secondary);font-size:var(--font-size-body);font-weight:400;letter-spacing:-.022em;line-height:1.47059;margin:0 auto var(--spacing-md);max-width:692px}.home-buttons{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);justify-content:center;margin-bottom:var(--spacing-md)}.btn{background-color:var(--color-accent-blue);border:none;border-radius:var(--radius-full);color:#fff;cursor:pointer;display:inline-block;font-size:var(--font-size-body);font-weight:400;letter-spacing:-.022em;min-width:140px;padding:12px 22px;transition:all var(--transition-fast);will-change:transform,box-shadow}.btn,.btn:hover{text-decoration:none}.btn:hover{background-color:var(--color-accent-blue-hover);box-shadow:0 4px 12px #0071e366;transform:scale(1.02) translateZ(0)}.ripple-container{overflow:hidden;position:relative}.ripple{animation:ripple .6s ease-out;background:#ffffff80;border-radius:50%;pointer-events:none;position:absolute;transform:scale(0)}.social-links{display:flex;gap:var(--spacing-md);justify-content:center;margin-bottom:0;margin-top:var(--spacing-sm)}.social-links a{border-radius:var(--radius-sm);color:var(--color-text-tertiary);display:inline-block;font-size:19px;padding:var(--spacing-xs) var(--spacing-sm);position:relative;text-decoration:none;transition:all var(--transition-fast);will-change:transform}.social-links a:hover{background-color:#0071e31a;color:var(--color-accent-blue);text-decoration:none;transform:translateY(-2px) translateZ(0)}.home-work-experience{margin-top:80px;max-width:1000px;width:100%}.work-experience-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,var(--color-text-primary),var(--color-accent-blue));-webkit-background-clip:text;background-clip:text;font-size:clamp(32px,5vw,48px);font-weight:700;letter-spacing:-.02em;margin-bottom:40px;text-align:center}.modal-overlay{animation:modalOverlayFadeIn .3s cubic-bezier(.4,0,.2,1);background-color:#000000b3}.modal-overlay.closing{animation:modalOverlayFadeOut .3s cubic-bezier(.4,0,.2,1)}.modal-content{animation:modalContentScaleIn .3s cubic-bezier(.4,0,.2,1);background-color:#2c2c2e;border-radius:12px;color:#f5f5f7;padding:20px}.modal-content.closing{animation:modalContentScaleOut .3s cubic-bezier(.4,0,.2,1)}.modal-scroll{padding-right:10px}.modal-content h1{font-size:32px;margin-bottom:10px}.close-btn{background:none;border:none;color:#f5f5f7;font-size:24px;right:20px;top:10px}.modal-overlay{align-items:center;animation:modalOverlayFadeIn var(--transition-medium);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background-color:#000000bf;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;will-change:opacity;z-index:1000}.modal-overlay.closing{animation:modalOverlayFadeOut var(--transition-medium)}.modal-content{animation:modalContentScaleIn var(--transition-medium);background-color:var(--color-bg-tertiary);border:.5px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:0 20px 60px #000c;color:var(--color-text-primary);display:flex;flex-direction:column;max-height:90vh;max-width:850px;overflow:hidden;padding:var(--spacing-lg);position:relative;width:90%;will-change:transform,opacity}.modal-content.closing{animation:modalContentScaleOut var(--transition-medium)}.modal-scroll{max-height:80vh;overflow-y:auto;padding-right:var(--spacing-sm)}.modal-scroll::-webkit-scrollbar{width:8px}.modal-scroll::-webkit-scrollbar-track{background:#ffffff0d;border-radius:4px}.modal-scroll::-webkit-scrollbar-thumb{background:#fff3;border-radius:4px}.modal-scroll::-webkit-scrollbar-thumb:hover{background:#ffffff4d}.modal-content h1{font-size:var(--font-size-h2);margin-bottom:var(--spacing-md);margin-top:0;padding-top:0;text-align:center}.close-btn{align-items:center;background:#ffffff14;border:.5px solid var(--color-border);border-radius:50%;color:var(--color-text-secondary);cursor:pointer;display:flex;font-size:28px;font-weight:300;height:36px;justify-content:center;line-height:1;padding:0;position:absolute;right:var(--spacing-md);top:var(--spacing-md);transition:all var(--transition-fast);width:36px}.close-btn:hover{background-color:#ff4d4d26;border-color:#ff4d4d;color:#ff4d4d;transform:scale(1.1)}.close-btn:focus-visible{outline:2px solid #ff4d4d;outline-offset:2px}@keyframes modalOverlayFadeIn{0%{opacity:0}to{opacity:1}}@keyframes modalOverlayFadeOut{0%{opacity:1}to{opacity:0}}@keyframes modalContentScaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes modalContentScaleOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.95)}}@media (max-width:1024px){.home-content{max-width:90%;transform:translateY(0)}.home-content h1{font-size:40px}.large-profile-pic{height:130px;width:130px}.subheading{font-size:20px}.bio{font-size:16px;max-width:100%}}@media (max-width:768px){.home-section{padding:max(88px,calc(64px + env(safe-area-inset-top, 0px))) var(--spacing-sm) 48px}.home-content{max-width:100%;transform:translateY(0)}.home-content h1{font-size:32px;margin-bottom:12px}.large-profile-pic{height:120px;margin-bottom:16px;width:120px}.subheading{font-size:18px}.bio,.subheading{margin-bottom:16px}.bio{font-size:15px;line-height:1.5;padding:0 var(--spacing-xs)}.btn{font-size:14px;min-width:120px;padding:10px 18px}.home-buttons{gap:var(--spacing-xs);margin-bottom:16px}.social-links{gap:var(--spacing-sm);margin-top:12px}.social-links a{font-size:16px;padding:var(--spacing-xs)}.home-work-experience{margin-top:60px}.modal-content{max-height:85vh;padding:var(--spacing-md);width:95%}.modal-scroll{max-height:75vh}}@media (max-width:480px){.home-content{transform:translateY(0)}.home-content h1{font-size:28px;margin-bottom:10px}.large-profile-pic{height:100px;margin-bottom:12px;width:100px}.subheading{font-size:16px}.bio,.subheading{margin-bottom:12px}.bio{font-size:14px}.btn{font-size:13px;min-width:110px;padding:8px 14px}.home-buttons{align-items:center;flex-direction:column;gap:var(--spacing-xs)}.social-links{flex-direction:row;flex-wrap:wrap;gap:var(--spacing-xs);justify-content:center}.home-work-experience{margin-top:40px}.modal-content{padding:var(--spacing-sm);width:98%}}@media (min-width:1440px){.home-content{transform:translateY(0)}}.tech-marquee-section{margin-bottom:40px;margin-top:60px;width:100%}.spotlight-section{margin-top:60px;max-width:1200px;padding:0 20px;width:100%}.section-title{color:var(--color-text-primary);font-size:2.5rem;font-weight:600;margin-bottom:40px;text-align:center}.spotlight-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));margin-bottom:40px}.spotlight-grid h3{color:var(--color-text-primary);font-size:1.5rem;margin-bottom:12px}.spotlight-grid p{color:var(--color-text-secondary);line-height:1.6}@media (max-width:768px){.tech-marquee-section{margin-bottom:30px;margin-top:40px}.spotlight-section{margin-top:40px;padding:0 16px}.section-title{font-size:2rem;margin-bottom:30px}.spotlight-grid{gap:16px;grid-template-columns:1fr}}.resume-section{background:linear-gradient(180deg,var(--color-bg-primary) 0,var(--color-bg-secondary) 100%);color:var(--color-text-primary);min-height:100vh;overflow:hidden;padding:0;position:relative}.resume-hero{background:radial-gradient(circle at 50% 30%,#0071e314,#0000 50%);padding:120px var(--spacing-md) var(--spacing-xl);position:relative;text-align:center}.resume-hero h1{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,var(--color-text-primary),var(--color-accent-blue));-webkit-background-clip:text;background-clip:text;font-size:clamp(40px,6vw,64px);font-weight:700;letter-spacing:-.02em;margin-bottom:var(--spacing-sm)}.resume-subtitle{color:var(--color-text-secondary);font-size:var(--font-size-h3);font-weight:400;margin-bottom:var(--spacing-xl)}.resume-stats{display:flex;flex-wrap:wrap;gap:var(--spacing-xl);justify-content:center;margin-top:var(--spacing-xl)}.stat-item{text-align:center}.stat-item .animated-counter{color:var(--color-accent-blue);display:block;font-size:48px;font-weight:700;margin-bottom:var(--spacing-xs)}.stat-item p{color:var(--color-text-secondary);font-size:var(--font-size-body);font-weight:500;letter-spacing:.05em;text-transform:uppercase}.resume-content{margin:0 auto;max-width:980px;padding:0 var(--spacing-md) var(--spacing-xl)}.resume-content h2{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,var(--color-accent-blue),#0077ed);-webkit-background-clip:text;background-clip:text;font-size:var(--font-size-h2);font-weight:600;letter-spacing:-.015em;margin-bottom:var(--spacing-lg);margin-top:var(--spacing-xl);padding-bottom:var(--spacing-sm);position:relative;text-align:center}.resume-content h2:after{background:linear-gradient(90deg,#0000,var(--color-accent-blue),#0000);border-radius:2px;bottom:0;content:"";height:4px;left:50%;position:absolute;transform:translateX(-50%);width:80px}.resume-content h3{color:var(--color-text-primary);font-size:var(--font-size-h3);font-weight:600;letter-spacing:-.015em;line-height:1.35;margin-bottom:var(--spacing-sm);overflow-wrap:break-word;padding-left:var(--spacing-sm);position:relative}.resume-content h3:before{background:linear-gradient(180deg,var(--color-accent-blue),var(--color-accent-purple));border-radius:2px;content:"";height:1.1em;left:0;position:absolute;top:.35em;transform:none;width:4px}.resume-content p{color:var(--color-text-secondary);font-size:var(--font-size-body);letter-spacing:-.022em;line-height:1.6;margin-bottom:var(--spacing-sm)}.resume-content ul{list-style-type:none;margin-bottom:var(--spacing-md);margin-left:0;padding-left:var(--spacing-md)}.resume-content ul li{color:var(--color-text-secondary);font-size:var(--font-size-body);letter-spacing:-.022em;line-height:1.6;margin-bottom:var(--spacing-sm);padding-left:var(--spacing-md);position:relative}.resume-content ul li:before{color:var(--color-accent-blue);content:"→";font-weight:700;left:0;position:absolute}.resume-content a{color:var(--color-accent-blue);font-weight:500;text-decoration:none;transition:color var(--transition-fast)}.resume-content a:hover{color:var(--color-accent-blue-hover)}.certification-box,.contact-info-box,.education-box,.experience-box,.project-box,.skills-box{margin-bottom:var(--spacing-lg)}.contact-info-box p{margin-bottom:var(--spacing-sm)}.contact-info-box p:last-child{margin-bottom:0}.contact-info-box strong{color:var(--color-text-primary);font-weight:600}.skills-category{margin-bottom:var(--spacing-lg)}.skills-category:last-child{margin-bottom:0}.skills-category h3{color:var(--color-accent-blue);font-size:19px;margin-bottom:var(--spacing-md);padding-left:0}.skills-category h3:before{display:none}.skills-container{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.skill-tag{backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:#ffffff0d;border:1px solid #ffffff1a;color:var(--color-text-primary)!important;font-size:var(--font-size-small);font-weight:400;opacity:1;transition:all var(--transition-medium)}.skill-tag:hover{background:linear-gradient(135deg,var(--color-accent-blue),#0077ed);box-shadow:0 8px 24px #0071e380,inset 0 0 0 1px #ffffff1a;color:#fff;transform:translateY(-3px) scale(1.05) translateZ(0)}.education-date,.experience-date,.project-tech{background:#0071e326;border:1px solid #0071e34d;border-radius:var(--radius-full);color:var(--color-accent-blue);display:inline-block}.education-date,.experience-date,.project-award,.project-tech{font-size:14px;font-weight:500;margin-bottom:var(--spacing-sm);padding:6px 14px}.project-award{align-items:center;background:#30d15826;border:1px solid #30d1584d;border-radius:var(--radius-full);color:var(--color-accent-green);display:inline-flex;gap:6px}.project-award:before{content:"🏆";font-size:16px}@media (max-width:768px){.resume-hero{padding:100px var(--spacing-md) var(--spacing-lg)}.resume-hero h1{font-size:clamp(32px,8vw,48px)}.resume-subtitle{font-size:var(--font-size-body)}.resume-stats{gap:var(--spacing-lg)}.stat-item .animated-counter{font-size:36px}.resume-content{padding:0 var(--spacing-sm) var(--spacing-lg)}.resume-content h2{font-size:28px;margin-top:var(--spacing-lg)}.resume-content h3{font-size:20px}.skills-container{gap:6px}.skill-tag{font-size:13px;padding:6px 12px}}@media (prefers-reduced-motion:reduce){.skill-tag:hover{transform:none}}.project-link-inline{margin-bottom:var(--spacing-sm)}.project-link-inline a{align-items:center;background:#0071e326;border:1px solid #0071e34d;border-radius:var(--radius-full);color:var(--color-accent-blue);display:inline-flex;font-size:14px;font-weight:500;gap:6px;padding:6px 14px;text-decoration:none;transition:all var(--transition-medium)}.project-link-inline a:hover{background:#0071e340;border-color:#0071e380;transform:translateX(4px)}.experience-box .project-tech{margin-left:var(--spacing-xs)}.scroll-reveal{opacity:0;transition:opacity .8s cubic-bezier(.25,.46,.45,.94),transform .8s cubic-bezier(.25,.46,.45,.94)}.scroll-reveal-fade-up{transform:translateY(40px)}.scroll-reveal-fade-down{transform:translateY(-40px)}.scroll-reveal-fade-left{transform:translateX(40px)}.scroll-reveal-fade-right{transform:translateX(-40px)}.scroll-reveal-scale{transform:scale(.9)}.scroll-reveal-rotate{transform:rotate(-5deg) scale(.9)}.scroll-reveal.visible{opacity:1;transform:translateY(0) translateX(0) scale(1) rotate(0)}@media (prefers-reduced-motion:reduce){.scroll-reveal{opacity:1;transform:none!important;transition:none}}.text-scramble{cursor:pointer;display:inline-block;font-family:Courier New,monospace;transition:color .3s ease}.text-scramble:hover{color:#0071e3;color:var(--primary-color,#0071e3)}.glass-card{backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:var(--radius-lg);max-width:100%;min-width:0;overflow:hidden;padding:var(--spacing-lg);position:relative;transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s ease;will-change:transform}.glass-card.hoverable:hover{box-shadow:0 20px 60px #0071e333,inset 0 0 0 1px #ffffff26}.glass-card-glow{bottom:0;left:0;opacity:0;pointer-events:none;position:absolute;right:0;top:0;transition:opacity .3s ease}.glass-card.hoverable:hover .glass-card-glow{opacity:1}.glass-card-content{position:relative;z-index:1}@media (prefers-reduced-motion:reduce){.glass-card{transform:none!important;transition:none}}@media (max-width:768px){.glass-card{padding:var(--spacing-md)}}.animated-counter{font-feature-settings:"tnum","tnum";display:inline-block;font-variant-numeric:tabular-nums}.projects-section{background:linear-gradient(180deg,var(--color-bg-primary) 0,var(--color-bg-secondary) 100%);color:var(--color-text-primary);min-height:100vh;overflow:hidden;padding:0;position:relative}.projects-hero{background:radial-gradient(circle at 50% 30%,#0071e314,#0000 50%);padding:120px var(--spacing-md) var(--spacing-xl);position:relative;text-align:center}.projects-hero h2{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,var(--color-text-primary),var(--color-accent-blue));-webkit-background-clip:text;background-clip:text;font-size:clamp(40px,6vw,64px);font-weight:700;letter-spacing:-.02em;margin-bottom:var(--spacing-sm)}.projects-subtitle{color:var(--color-text-secondary);font-size:var(--font-size-h3);font-weight:400;margin-bottom:0}.projects-content{margin:0 auto;max-width:1100px;padding:0 var(--spacing-md) var(--spacing-xl)}.project-grid{grid-gap:var(--spacing-md);display:grid;gap:var(--spacing-md);grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))}.project-card{backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);background:#2c2c2ecc;border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:0 8px 32px #0006;cursor:pointer;overflow:hidden;padding:0;position:relative;transform-style:preserve-3d;transition:transform var(--transition-medium),box-shadow var(--transition-medium),border-color var(--transition-medium);will-change:transform,box-shadow}.project-badge{background:#0071e326;border:1px solid #0071e34d;border-radius:var(--radius-full);color:var(--color-accent-blue);display:inline-block;font-size:13px;font-weight:500;letter-spacing:-.01em;margin-bottom:var(--spacing-sm);padding:6px 14px}.project-card[data-gradient=blue]:before{background:linear-gradient(135deg,#0071e31a,#0077ed0d)}.project-card[data-gradient=purple]:before{background:linear-gradient(135deg,#bf5af21a,#bf5af20d)}.project-card[data-gradient=purple] .project-badge{background:#bf5af226;border-color:#bf5af24d;color:var(--color-accent-purple)}.project-card-content{padding:var(--spacing-lg);position:relative;z-index:1}.tilt-card{--glare-x:50%;--glare-y:50%;--glare-opacity:0}.tilt-card:after{background:radial-gradient(circle at var(--glare-x) var(--glare-y),rgba(255,255,255,var(--glare-opacity)),#0000 50%);left:0;pointer-events:none;transition:opacity .3s ease}.project-card:before,.tilt-card:after{content:"";height:100%;position:absolute;top:0;width:100%}.project-card:before{background:linear-gradient(90deg,#0000,#0071e314,#0000);left:-100%;transition:left var(--transition-slow)}.project-card:hover{border-color:#0071e380;box-shadow:0 24px 60px #0071e34d,inset 0 0 0 1px #0071e333;transform:translateY(-12px) translateZ(0)}.project-card[data-gradient=purple]:hover{border-color:#bf5af280;box-shadow:0 24px 60px #bf5af24d,inset 0 0 0 1px #bf5af233}.project-card:hover:before{left:100%}.project-card h3{color:var(--color-text-primary);font-size:var(--font-size-h3);font-weight:600;letter-spacing:-.015em;margin-bottom:var(--spacing-sm)}.project-card .project-subtitle{color:var(--color-accent-blue);font-size:var(--font-size-small);font-weight:500;margin-bottom:var(--spacing-sm)}.project-card p{color:var(--color-text-secondary);font-size:var(--font-size-body);letter-spacing:-.022em;line-height:1.47059;margin-bottom:var(--spacing-md)}.project-card ul{list-style-type:disc;margin-bottom:var(--spacing-md);padding-left:var(--spacing-md)}.project-card ul li{color:var(--color-text-secondary);font-size:15px;line-height:1.47059;margin-bottom:var(--spacing-xs)}.project-link{color:var(--color-accent-blue);display:inline-block;font-size:var(--font-size-body);font-weight:500;text-decoration:none;transition:color var(--transition-fast)}.project-link:hover{color:var(--color-accent-blue-hover)}@media (max-width:768px){.projects-section{padding:80px var(--spacing-md) var(--spacing-lg)}.projects-content h2{font-size:28px}.project-grid{grid-template-columns:1fr}.project-card{padding:var(--spacing-md)}.project-card h3{font-size:21px}.project-card p{font-size:15px}.projects-hero{padding:100px var(--spacing-md) var(--spacing-lg)}.projects-hero h2{font-size:clamp(32px,8vw,48px)}.projects-subtitle{font-size:var(--font-size-body)}.projects-content{padding:0 var(--spacing-sm) var(--spacing-lg)}.project-grid{grid-template-columns:1fr}.project-card h3{font-size:21px}.project-card p{font-size:15px}}@media (prefers-reduced-motion:reduce){.project-card:before{display:none}.project-card:hover{transform:translateY(-4px) translateZ(0)}}.project-card[data-gradient=green]:before{background:linear-gradient(135deg,#30d1581a,#30d1580d)}.project-card[data-gradient=green] .project-badge{background:#30d15826;border-color:#30d1584d;color:var(--color-accent-green)}.project-card[data-gradient=green]:hover{border-color:#30d15880;box-shadow:0 24px 60px #30d1584d,inset 0 0 0 1px #30d15833}.typewriter-cursor{animation:blink .53s steps(1) infinite;display:inline-block;margin-left:2px}.skill-tags-container{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:var(--spacing-md) 0}.skill-tag{animation:skillTagFadeIn .5s ease-out backwards;background:linear-gradient(135deg,#0071e31a,#00d4ff1a);border:1px solid #0071e34d;border-radius:var(--radius-full);color:var(--color-text-primary);cursor:default;display:inline-block;font-size:14px;font-weight:500;overflow:hidden;padding:8px 16px;position:relative;transition:all var(--transition-fast)}.skill-tag:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.skill-tag:hover{background:linear-gradient(135deg,#0071e333,#00d4ff33);border-color:var(--color-accent-blue);box-shadow:0 4px 12px #0071e34d;transform:translateY(-3px) scale(1.05)}.skill-tag:hover:before{left:100%}@keyframes skillTagFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.skill-tag{animation:none}.skill-tag:hover{transform:none}}@media (max-width:768px){.skill-tag{font-size:12px;padding:6px 12px}}.floating-shapes-container{height:100%;left:0;overflow:hidden;pointer-events:none;position:fixed;top:0;width:100%;z-index:0}.floating-shape{animation:float 20s ease-in-out infinite;opacity:.1;position:absolute;will-change:transform}.floating-shape-circle{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%}.floating-shape-square{background:linear-gradient(135deg,#f093fb,#f5576c);border-radius:8px;transform:rotate(45deg)}.floating-shape-triangle{border-bottom:52px solid #667eea4d;border-left:30px solid #0000;border-right:30px solid #0000;height:0!important;width:0!important}@media (prefers-reduced-motion:reduce){.floating-shape{animation:none}}.about{background-color:var(--color-bg-primary);color:var(--color-text-primary);min-height:100vh;padding:100px var(--spacing-md) var(--spacing-xl)}.about-container{margin:0 auto;max-width:1100px}.about-header{margin-bottom:var(--spacing-xl);text-align:center}.about-header h2{color:var(--color-text-primary);font-size:var(--font-size-h1);font-weight:600;letter-spacing:-.015em;line-height:1.07143;margin-bottom:var(--spacing-sm)}.about-tagline{color:var(--color-accent-blue);font-size:var(--font-size-h3);font-weight:500;letter-spacing:-.015em}.about-content{grid-gap:var(--spacing-xl);align-items:start;display:grid;gap:var(--spacing-xl);grid-template-columns:1fr 2fr}.about-image-wrapper{align-items:center;display:flex;justify-content:center;position:relative}.about-image{position:relative;z-index:2}.profile-pic{aspect-ratio:1;border:.5px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:0 8px 24px var(--color-shadow);height:auto;object-fit:cover;transition:transform var(--transition-medium),box-shadow var(--transition-medium);width:min(280px,72vw);will-change:transform,box-shadow}.profile-pic:hover{box-shadow:0 16px 40px #0071e34d;transform:translateY(-8px) translateZ(0)}.image-decoration{border:2px solid var(--color-accent-blue);border-radius:var(--radius-lg);height:min(280px,72vw);left:20px;opacity:.3;position:absolute;top:20px;transition:all var(--transition-medium);width:min(280px,72vw);z-index:1}.about-image-wrapper:hover .image-decoration{left:30px;opacity:.5;top:30px}.about-text{display:flex;flex-direction:column;gap:var(--spacing-lg)}.about-intro{background-color:var(--color-bg-tertiary);border:.5px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:0 4px 12px var(--color-shadow);padding:var(--spacing-lg)}.intro-highlight{color:var(--color-text-primary);font-size:21px;font-weight:500;letter-spacing:-.022em;line-height:1.47059;margin:0}.about-details-grid{grid-gap:var(--spacing-md);display:grid;gap:var(--spacing-md);grid-template-columns:1fr}.detail-card{background-color:var(--color-bg-tertiary);border:.5px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:0 4px 12px var(--color-shadow);overflow:hidden;padding:var(--spacing-lg);position:relative;transition:all var(--transition-medium)}.detail-card:before{background:linear-gradient(90deg,#0000,#0071e314,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left var(--transition-slow);width:100%}.detail-card:hover{border-color:var(--color-accent-blue);box-shadow:0 12px 32px #0071e333;transform:translateY(-4px) translateZ(0)}.detail-card:hover:before{left:100%}.detail-icon{align-items:center;background:#0071e31a;border-radius:var(--radius-md);color:var(--color-accent-blue);display:flex;height:48px;justify-content:center;margin-bottom:var(--spacing-md);transition:all var(--transition-medium);width:48px}.detail-card:hover .detail-icon{background:#0071e333;transform:scale(1.1)}.detail-card h3{color:var(--color-text-primary);font-size:var(--font-size-h3);font-weight:600;letter-spacing:-.015em;margin-bottom:var(--spacing-sm)}.detail-card p{color:var(--color-text-secondary);font-size:var(--font-size-body);letter-spacing:-.022em;line-height:1.47059;margin:0}@media (max-width:968px){.about-content{gap:var(--spacing-lg);grid-template-columns:1fr}.about-image-wrapper{justify-content:center}.image-decoration,.profile-pic{width:min(240px,70vw)}.image-decoration{height:min(240px,70vw)}}@media (max-width:768px){.about{padding:80px var(--spacing-md) var(--spacing-lg)}.about-header h2{font-size:var(--font-size-h2)}.about-tagline{font-size:var(--font-size-body)}.image-decoration,.profile-pic{width:min(200px,64vw)}.image-decoration{height:min(200px,64vw);left:12px;top:12px}.about-image-wrapper:hover .image-decoration{left:20px;top:20px}.about-intro{padding:var(--spacing-md)}.intro-highlight{font-size:var(--font-size-body)}.detail-card{padding:var(--spacing-md)}.detail-card h3{font-size:21px}.detail-card p{font-size:15px}.detail-icon{height:40px;width:40px}.detail-icon svg{height:20px;width:20px}}.skills-section{border-top:1px solid var(--color-border);margin-top:var(--spacing-lg);padding-top:var(--spacing-lg)}.skills-section h3{color:var(--color-text-primary);font-size:var(--font-size-h3);margin-bottom:var(--spacing-md);text-align:center}.work-experience-section{background:linear-gradient(180deg,var(--color-bg-primary) 0,var(--color-bg-secondary) 100%);color:var(--color-text-primary);min-height:100vh;overflow:hidden;padding:0;position:relative}.work-experience-hero{background:radial-gradient(circle at 50% 30%,#0071e314,#0000 50%);padding:120px var(--spacing-md) var(--spacing-xl);position:relative;text-align:center}.work-experience-hero h2{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,var(--color-text-primary),var(--color-accent-blue));-webkit-background-clip:text;background-clip:text;font-size:clamp(40px,6vw,64px);font-weight:700;letter-spacing:-.02em;margin-bottom:var(--spacing-sm)}.work-experience-subtitle{color:var(--color-text-secondary);font-size:var(--font-size-h3);font-weight:400;margin-bottom:0}.work-experience-content{margin:0 auto;max-width:980px;min-width:0;padding:0 var(--spacing-md) var(--spacing-xl);width:100%}.experience-box{margin-bottom:var(--spacing-xl)}.experience,.experience h3{position:relative}.experience h3{color:var(--color-text-primary);font-size:var(--font-size-h3);font-weight:600;letter-spacing:-.015em;margin-bottom:var(--spacing-sm);padding-left:var(--spacing-sm)}.experience h3:before{background:linear-gradient(180deg,var(--color-accent-blue),var(--color-accent-purple));border-radius:2px;content:"";height:70%;left:0;position:absolute;top:50%;transform:translateY(-50%);width:4px}.experience p{background:#0071e326;border:1px solid #0071e34d;border-radius:var(--radius-full);color:var(--color-accent-blue);display:inline-block;font-size:14px;font-weight:500;margin-bottom:var(--spacing-md);padding:6px 14px}.experience ul{list-style-type:none;margin-bottom:0;padding-left:var(--spacing-md)}.experience ul li{color:var(--color-text-secondary);font-size:var(--font-size-body);letter-spacing:-.022em;line-height:1.6;margin-bottom:var(--spacing-sm);padding-left:var(--spacing-md);position:relative}.experience ul li:before{color:var(--color-accent-blue);content:"→";font-weight:700;left:0;position:absolute}@media (max-width:768px){.work-experience-hero{padding:100px var(--spacing-md) var(--spacing-lg)}.work-experience-hero h2{font-size:clamp(32px,8vw,48px)}.work-experience-subtitle{font-size:var(--font-size-body)}.work-experience-content{padding:0 var(--spacing-sm) var(--spacing-lg)}.experience h3{font-size:20px}.experience ul li{font-size:15px}}@media (prefers-reduced-motion:reduce){.experience-box{animation:none}}.experience-tech{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);margin-bottom:var(--spacing-md)}.tech-badge{background:#0071e326;border:1px solid #0071e34d;border-radius:var(--radius-full);color:var(--color-accent-blue);font-size:13px;font-weight:500;padding:4px 12px}.experience-link{margin-bottom:var(--spacing-md);padding-left:0!important}.experience-link a{align-items:center;background:#0071e326;border:1px solid #0071e34d;border-radius:var(--radius-full);color:var(--color-accent-blue);display:inline-flex;font-size:14px;font-weight:500;gap:6px;padding:6px 14px;text-decoration:none;transition:all var(--transition-medium)}.experience-link a:hover{background:#0071e340;border-color:#0071e380;transform:translateX(4px)}.interactive-timeline{margin:0 auto;max-width:1000px;overflow:hidden;padding:40px 12px;position:relative;width:100%}.timeline-line{background:linear-gradient(180deg,#0000,#0071e3 10%,#0071e3 90%,#0000);background:linear-gradient(to bottom,#0000,var(--color-accent-blue,#0071e3) 10%,var(--color-accent-blue,#0071e3) 90%,#0000);bottom:0;left:50%;position:absolute;top:0;transform:translateX(-50%);width:2px}.timeline-item{display:flex;gap:40px;margin-bottom:60px;opacity:0;position:relative;transform:translateY(30px);transition:all .6s cubic-bezier(.16,1,.3,1)}.timeline-item.visible{opacity:1;transform:translateY(0)}.timeline-item:nth-child(2n){flex-direction:row-reverse}.timeline-item:nth-child(2n) .timeline-content{text-align:right}.timeline-item:nth-child(2n) .timeline-tags,.timeline-marker{justify-content:flex-end}.timeline-marker{align-items:center;display:flex;flex-shrink:0;position:relative;width:50%}.timeline-item:nth-child(2n) .timeline-marker{justify-content:flex-start}.timeline-dot{background:#0071e3;background:var(--color-accent-blue,#0071e3);border:4px solid #000;border:4px solid var(--color-bg-primary,#000);border-radius:50%;box-shadow:0 0 0 0 #0071e366;height:20px;position:relative;transition:all .3s ease;width:20px;z-index:2}.timeline-item.active .timeline-dot,.timeline-item:hover .timeline-dot{box-shadow:0 0 0 10px #0071e333;transform:scale(1.3)}.timeline-icon{background:#1a1a1a;background:var(--color-bg-secondary,#1a1a1a);border:1px solid #ffffff1a;border:1px solid var(--color-glass-border,#ffffff1a);border-radius:8px;font-size:24px;padding:8px;position:absolute;right:-50px}.timeline-item:nth-child(2n) .timeline-icon{left:-50px;right:auto}.timeline-content{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0d;background:var(--color-glass-bg,#ffffff0d);border:1px solid #ffffff1a;border:1px solid var(--color-glass-border,#ffffff1a);border-radius:12px;cursor:pointer;flex:1 1;min-width:0;padding:24px;text-align:left;transition:all .3s ease}.timeline-content:hover{border-color:#0071e3;border-color:var(--color-accent-blue,#0071e3);box-shadow:0 10px 30px #0071e333;transform:translateY(-4px)}.timeline-date{color:#0071e3;color:var(--color-accent-blue,#0071e3);font-size:14px;font-weight:600;letter-spacing:1px;margin-bottom:8px;text-transform:uppercase}.timeline-title{color:#fff;color:var(--color-text-primary,#fff);font-size:clamp(18px,2.4vw,24px);font-weight:700;line-height:1.3;margin-bottom:8px}.timeline-company{font-size:16px;font-weight:500;margin-bottom:12px}.timeline-company,.timeline-description{color:#ffffffb3;color:var(--color-text-secondary,#ffffffb3)}.timeline-description{line-height:1.6;margin-bottom:16px}.timeline-achievements{list-style:none;margin:16px 0;padding:0}.timeline-achievements li{color:#ffffffb3;color:var(--color-text-secondary,#ffffffb3);line-height:1.5;margin-bottom:8px;padding-left:24px;position:relative}.timeline-achievements li:before{color:#30d158;color:var(--color-accent-green,#30d158);content:"✓";font-weight:700;left:0;position:absolute}.timeline-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.timeline-tag{background:#ffffff1a;background:var(--color-glass-bg,#ffffff1a);border:1px solid #ffffff1a;border:1px solid var(--color-glass-border,#ffffff1a);border-radius:16px;color:#fff;color:var(--color-text-primary,#fff);font-size:12px;font-weight:500;padding:4px 12px}@media (max-width:1024px){.timeline-line{left:16px}.timeline-item,.timeline-item:nth-child(2n){flex-direction:row;gap:16px;margin-bottom:32px;padding-left:48px}.timeline-marker{left:0;position:absolute;width:auto}.timeline-item:nth-child(2n) .timeline-marker{justify-content:flex-end}.timeline-content,.timeline-item:nth-child(2n) .timeline-content{padding:16px;text-align:left}.timeline-item:nth-child(2n) .timeline-tags,.timeline-tags{justify-content:flex-start}.timeline-icon{display:none}.timeline-title{font-size:18px}.timeline-achievements li{font-size:14px}}@media (max-width:480px){.interactive-timeline{padding:24px 0}.timeline-item,.timeline-item:nth-child(2n){margin-bottom:24px;padding-left:40px}.timeline-line{left:12px}.timeline-content,.timeline-item:nth-child(2n) .timeline-content{padding:14px}}@media (prefers-reduced-motion:reduce){.timeline-item{opacity:1;transform:none}.timeline-dot{transition:none}}.contact{align-items:center;background-color:var(--color-bg-primary);color:var(--color-text-primary);display:flex;flex-direction:column;justify-content:flex-start;min-height:100vh;padding:100px var(--spacing-md) var(--spacing-xl)}.contact-container{margin:0 auto;max-width:980px;width:100%}.contact-header{margin-bottom:var(--spacing-xl);text-align:center}.contact-header h2{color:var(--color-text-primary);font-size:var(--font-size-h1);font-weight:600;letter-spacing:-.015em;line-height:1.07143;margin-bottom:var(--spacing-md)}.contact-subtitle{color:var(--color-text-secondary);font-size:var(--font-size-h3);font-weight:400;letter-spacing:-.022em;line-height:1.47059;margin:0 auto;max-width:692px}.contact-grid{grid-gap:var(--spacing-md);display:grid;gap:var(--spacing-md);grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));margin-top:var(--spacing-lg)}.contact-card{align-items:center;background-color:var(--color-bg-tertiary);border:.5px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:0 4px 12px var(--color-shadow);color:var(--color-text-primary);cursor:pointer;display:flex;flex-direction:column;overflow:hidden;padding:var(--spacing-lg);position:relative;text-align:center;text-decoration:none;transition:all var(--transition-medium);will-change:transform,box-shadow}.contact-card:before{background:linear-gradient(90deg,#0000,#0071e314,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left var(--transition-slow);width:100%}.contact-card:hover{border-color:var(--color-accent-blue);box-shadow:0 16px 40px #0071e359;transform:translateY(-8px) scale(1.02) translateZ(0)}.contact-card:active{transform:translateY(-4px) scale(.98) translateZ(0)}.contact-card:hover:before{left:100%}.contact-icon{align-items:center;background:#0071e31a;border-radius:50%;color:var(--color-accent-blue);display:flex;height:64px;justify-content:center;margin-bottom:var(--spacing-md);transition:all var(--transition-medium);width:64px}.contact-card:hover .contact-icon{background:#0071e333;transform:scale(1.1)}.contact-info h3{color:var(--color-text-primary);font-size:var(--font-size-h3);font-weight:600;letter-spacing:-.015em;margin-bottom:var(--spacing-xs)}.contact-info p{color:var(--color-text-secondary);font-size:var(--font-size-body);letter-spacing:-.022em;line-height:1.47059;word-break:break-word}.email-card:hover .contact-icon,.github-card:hover .contact-icon,.linkedin-card:hover .contact-icon,.phone-card:hover .contact-icon{color:var(--color-accent-blue-hover)}@media (max-width:768px){.contact{padding:80px var(--spacing-md) var(--spacing-lg)}.contact-header h2{font-size:var(--font-size-h2)}.contact-subtitle{font-size:var(--font-size-body)}.contact-grid{gap:var(--spacing-sm);grid-template-columns:1fr}.contact-card{padding:var(--spacing-md)}.contact-icon{height:56px;width:56px}.contact-info h3{font-size:21px}.contact-info p{font-size:15px}}.page-transition{transition:opacity .4s cubic-bezier(.4,0,.2,1),transform .4s cubic-bezier(.4,0,.2,1);width:100%;will-change:transform,opacity}.page-transition.fade-in{animation:fadeInSlideUp .4s cubic-bezier(.4,0,.2,1) forwards;opacity:1;transform:translateY(0)}.page-transition.fade-out{opacity:0;transform:translateY(20px)}@keyframes fadeInSlideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.loading-screen{align-items:center;background:linear-gradient(135deg,#1c1c1e,#2c2c2e);display:flex;height:100%;justify-content:center;left:0;opacity:1;position:fixed;top:0;transition:opacity .5s ease-out;width:100%;z-index:9999}.loading-screen.fade-out{opacity:0;pointer-events:none}.loading-content{animation:fadeInScale .8s ease-out;text-align:center}.loading-text{-webkit-text-fill-color:#0000;animation:pulse 2s ease-in-out infinite;background:linear-gradient(135deg,#007bff,#00d4ff);-webkit-background-clip:text;background-clip:text;color:#f5f5f7;font-size:48px;font-weight:700;margin:0 0 10px}.loading-subtitle{animation:fadeIn 1s ease-out .3s both;color:#a1a1a6;font-size:18px;letter-spacing:2px;text-transform:uppercase}@media (max-width:768px){.loading-text{font-size:36px}.loading-subtitle{font-size:14px}}.fab-container{bottom:30px;opacity:0;position:fixed;right:108px;transform:translateY(100px);transition:all var(--transition-medium);z-index:998}.fab-container.visible{opacity:1;transform:translateY(0)}.fab-main{align-items:center;background:linear-gradient(135deg,var(--color-accent-blue),#00d4ff);border:none;border-radius:50%;box-shadow:0 4px 20px #0071e366;color:#fff;cursor:pointer;display:flex;font-size:24px;height:56px;justify-content:center;transition:all var(--transition-fast);width:56px}.fab-main:hover{box-shadow:0 6px 30px #0071e399;transform:scale(1.1) rotate(90deg)}.fab-menu{bottom:70px;display:flex;flex-direction:column;gap:12px;opacity:0;pointer-events:none;position:absolute;right:0;transition:all var(--transition-medium)}.fab-menu.expanded{bottom:70px;opacity:1;pointer-events:all}.fab-action{align-items:center;background:var(--color-bg-tertiary);border:1px solid var(--color-border);border-radius:50%;box-shadow:0 4px 12px var(--color-shadow);color:var(--color-text-primary);cursor:pointer;display:flex;font-size:20px;height:48px;justify-content:center;transform:scale(0);transition:all var(--transition-fast);width:48px}.fab-menu.expanded .fab-action{animation:fabActionPop .3s cubic-bezier(.68,-.55,.265,1.55);transform:scale(1)}.fab-menu.expanded .fab-action:nth-child(2){animation-delay:.05s}.fab-action:hover{background:var(--color-accent-blue);color:#fff;transform:scale(1.1)}@keyframes fabActionPop{0%{transform:scale(0)}to{transform:scale(1)}}@media (max-width:1024px){.fab-container{bottom:calc(88px + env(safe-area-inset-bottom, 0px));right:max(12px,env(safe-area-inset-right,0px))}.fab-main{font-size:20px;height:50px;width:50px}.fab-action{font-size:18px;height:44px;width:44px}}@media (max-width:480px){.fab-container{bottom:calc(72px + env(safe-area-inset-bottom, 0px));right:max(10px,env(safe-area-inset-right,0px))}.fab-main{font-size:18px;height:44px;width:44px}}@media (prefers-reduced-motion:reduce){.fab-main:hover{transform:scale(1.1)}.fab-menu.expanded .fab-action{animation:none}}.cursor-trail-container{height:100%;left:0;pointer-events:none;position:fixed;top:0;width:100%;z-index:9999}.cursor-trail-dot{background:radial-gradient(circle,var(--color-accent-blue),#0000);border-radius:50%;height:8px;pointer-events:none;position:absolute;transform-origin:center;transition:opacity .3s ease-out,transform .3s ease-out;width:8px}@media (hover:none),(max-width:1024px){.cursor-trail-container{display:none}}@media (prefers-reduced-motion:reduce){.cursor-trail-container{display:none}}.interactive-background{height:100%;left:0;opacity:.6;pointer-events:none;position:fixed;top:0;width:100%;z-index:0}@media (max-width:768px){.interactive-background{display:none}}@media (prefers-reduced-motion:reduce){.interactive-background{display:none}}.dock-container{gap:12px;pointer-events:none;position:fixed;right:max(16px,env(safe-area-inset-right,0px));top:50%;transform:translateY(-50%);z-index:1000}.dock-container,.dock-toggle{align-items:center;display:flex;flex-direction:column}.dock-toggle{-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%);background:#1d1d1fd9;border:1px solid #fff3;border-radius:50%;box-shadow:0 4px 16px #0000004d;cursor:pointer;flex-shrink:0;gap:5px;height:44px;justify-content:center;pointer-events:all;position:relative;transition:all .3s ease;width:44px;z-index:2}.dock-toggle:hover{background:#1d1d1ff2;border-color:#667eea80;box-shadow:0 4px 20px #667eea4d;transform:scale(1.05)}.dock-toggle:focus-visible{outline:2px solid var(--color-accent-blue);outline-offset:4px}.toggle-bar{background-color:var(--color-text-primary);border-radius:2px;height:2px;transition:all .3s ease;width:18px}.dock-toggle:hover .toggle-bar{background-color:#667eea;box-shadow:0 0 8px #667eea99}.dock-toggle:not(.open) .toggle-bar:first-child{transform:translateY(-5px)}.dock-toggle:not(.open) .toggle-bar:nth-child(2){transform:translateY(0)}.dock-toggle:not(.open) .toggle-bar:nth-child(3){transform:translateY(5px)}.dock-toggle.open .toggle-bar{position:absolute}.dock-toggle.open .toggle-bar:first-child{transform:rotate(45deg)}.dock-toggle.open .toggle-bar:nth-child(2){transform:rotate(-45deg)}.dock-toggle.open .toggle-bar:nth-child(3){opacity:0}.dock{-webkit-backdrop-filter:blur(20px) saturate(180%);backdrop-filter:blur(20px) saturate(180%);background:#1d1d1fd9;border:1px solid #fff3;border-radius:24px;box-shadow:0 8px 32px #0000004d;display:flex;flex-direction:column;gap:8px;padding:16px 12px;pointer-events:all;transform-origin:right center;transition:transform .4s cubic-bezier(.4,0,.2,1),opacity .3s ease}.dock:not(.open){opacity:0;pointer-events:none;transform:translateX(calc(100% + 20px))}.dock-item{align-items:center;background:#ffffff0d;border:1px solid #ffffff1a;border-radius:12px;cursor:pointer;display:flex;height:52px;justify-content:center;position:relative;transform-origin:right center;transition:transform .3s cubic-bezier(.34,1.56,.64,1);width:52px}.dock-item:hover{background:#ffffff1a;border-color:#667eea66}.dock-icon{filter:drop-shadow(0 2px 4px rgba(0,0,0,.2));font-size:28px;transition:filter .3s ease}.dock-item:hover .dock-icon{filter:drop-shadow(0 4px 8px rgba(102,126,234,.4))}.dock-tooltip{background:#000000e6;border:1px solid #ffffff1a;border-radius:8px;color:#fff;font-size:13px;opacity:0;padding:8px 14px;pointer-events:none;position:absolute;right:100%;top:50%;transform:translateY(-50%) translateX(-8px);transition:opacity .3s ease,transform .3s ease;white-space:nowrap}.dock-item:hover .dock-tooltip{opacity:1;transform:translateY(-50%) translateX(-12px)}@media (max-width:1024px){.dock-container{align-items:center;bottom:max(12px,env(safe-area-inset-bottom,0px));flex-direction:row;gap:10px;left:50%;max-width:calc(100dvw - 16px);padding-left:env(safe-area-inset-left,0);padding-right:env(safe-area-inset-right,0);right:auto;top:auto;transform:translateX(-50%)}.dock-toggle{height:40px;order:-1;width:40px}.toggle-bar{width:16px}.dock{-webkit-overflow-scrolling:touch;flex-direction:row;gap:6px;max-width:calc(100dvw - 64px);overflow-x:auto;padding:10px 12px;scrollbar-width:none;transform-origin:bottom center}.dock::-webkit-scrollbar{display:none}.dock:not(.open){transform:translateY(calc(100% + 24px))}.dock-item{height:46px;min-width:46px;transform-origin:bottom center;width:46px}.dock-icon{font-size:24px}.dock-tooltip{bottom:100%;left:50%;right:auto;top:auto;transform:translateX(-50%) translateY(-8px)}.dock-item:hover .dock-tooltip{transform:translateX(-50%) translateY(-12px)}}@media (max-width:480px){.dock-container{bottom:max(8px,env(safe-area-inset-bottom,0px));gap:6px}.dock-toggle{height:36px;width:36px}.toggle-bar{width:14px}.dock{gap:4px;padding:6px 8px}.dock-item{height:38px;min-width:38px;width:38px}.dock-icon{font-size:18px}.dock-tooltip{font-size:12px;padding:6px 10px}}@media (prefers-reduced-motion:reduce){.dock-item{transition:none}.dock-tooltip{transition:opacity .2s ease}}.language-switcher{position:relative;z-index:100}.language-button{align-items:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff0d;background:var(--color-glass-bg,#ffffff0d);border:1px solid #ffffff1a;border:1px solid var(--color-glass-border,#ffffff1a);border-radius:8px;color:#fff;color:var(--color-text-primary,#fff);cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;min-height:40px;padding:8px 16px;transition:all .3s ease}.language-button:hover{background:#ffffff1a;background:var(--color-glass-bg,#ffffff1a);border-color:#0071e3;border-color:var(--color-accent-blue,#0071e3);transform:translateY(-2px)}.language-flag{font-size:20px}.language-code{font-weight:600;letter-spacing:.5px}.language-arrow{font-size:10px;transition:transform .3s ease}.language-arrow.open{transform:rotate(180deg)}.language-dropdown{animation:slideDown .3s cubic-bezier(.16,1,.3,1);background:#1a1a1a;background:var(--color-bg-secondary,#1a1a1a);border:1px solid #ffffff1a;border:1px solid var(--color-glass-border,#ffffff1a);border-radius:12px;box-shadow:0 10px 40px #0000004d;left:0;min-width:180px;overflow:hidden;padding:8px;position:absolute;right:auto;top:calc(100% + 8px);z-index:1001}.language-option{align-items:center;background:#0000;border:none;border-radius:8px;color:#fff;color:var(--color-text-primary,#fff);cursor:pointer;display:flex;font-size:14px;gap:12px;padding:12px;text-align:left;transition:all .2s ease;width:100%}.language-option:hover{background:#ffffff0d;background:var(--color-glass-bg,#ffffff0d)}.language-option.active{background:#0071e31a;background:var(--color-glass-bg,#0071e31a);color:#0071e3;color:var(--color-accent-blue,#0071e3)}.option-flag{font-size:20px}.option-name{flex:1 1;font-weight:500}.option-check{color:#0071e3;color:var(--color-accent-blue,#0071e3);font-weight:700}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.language-button{font-size:12px;gap:4px;padding:6px 10px}.language-flag{font-size:16px}.language-dropdown{min-width:160px}}@media (prefers-reduced-motion:reduce){.language-dropdown{animation:none}.language-arrow{transition:none}}html{-webkit-text-size-adjust:100%;height:100%;overflow-x:hidden;scroll-behavior:smooth}#root,body,html{max-width:100%}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}body{height:100%;margin:0;min-width:0;overflow-x:hidden;padding:0}*,:after,:before{box-sizing:border-box}h1,h2,h3,h4,h5,h6{font-weight:600;letter-spacing:-.015em;margin:0}ul{list-style-type:none;padding:0}a{color:var(--color-accent-blue);transition:color var(--transition-fast)}a,a:hover{text-decoration:none}a:hover{color:var(--color-accent-blue-hover)}a:focus-visible,button:focus-visible{border-radius:4px;outline:2px solid var(--color-accent-blue);outline-offset:2px}:focus-visible{outline:2px solid var(--color-accent-blue);outline-offset:2px}.skip-link{background:var(--color-accent-blue);border-radius:0 0 4px 0;color:#fff;font-weight:500;left:0;padding:8px 16px;position:absolute;text-decoration:none;top:-40px;z-index:10000}.skip-link:focus{outline:2px solid #fff;outline-offset:2px;top:0}.App{background-color:var(--color-bg-primary);display:flex;flex-direction:column;margin:0;max-width:100%;min-height:100vh;min-height:100dvh;overflow-x:hidden;text-align:center;width:100%}#main-content{flex:1 1;min-width:0;padding-bottom:24px;padding-right:96px;width:100%}.language-switcher-fixed{left:max(12px,env(safe-area-inset-left,0px));overflow:visible;position:fixed;top:max(12px,env(safe-area-inset-top,0px));z-index:1001}@media (max-width:1024px){#main-content{padding-bottom:calc(96px + env(safe-area-inset-bottom, 0px));padding-right:0}}@media (max-width:768px){.language-switcher-fixed{left:max(8px,env(safe-area-inset-left,0px));top:max(8px,env(safe-area-inset-top,0px))}}section{animation:fadeInSection .6s ease-out}@keyframes fadeInSection{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){section{animation:fadeInSectionReduced .1s ease-out}@keyframes fadeInSectionReduced{0%{opacity:0}to{opacity:1}}}footer{display:none}@media (max-width:768px){body{padding-top:0}}@media (max-width:480px){body{font-size:14px}}img{height:auto;max-width:100%}h1,h2,h3,h4,li,p{overflow-wrap:break-word}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-50px)}to{opacity:1;transform:translateX(0)}}@keyframes slideInRight{0%{opacity:0;transform:translateX(50px)}to{opacity:1;transform:translateX(0)}}@keyframes ripple{to{opacity:0;transform:scale(4)}}@keyframes blink{0%,49%{opacity:1}50%,to{opacity:0}}.animate-fade-up{animation:fadeInUp .6s ease-out forwards;backface-visibility:hidden;transform:translateZ(0);will-change:transform,opacity}.animate-fade-in{animation:fadeIn .6s ease-out forwards;transform:translateZ(0);will-change:opacity}.animate-slide-left{animation:slideInLeft .6s ease-out forwards}.animate-slide-left,.animate-slide-right{backface-visibility:hidden;transform:translateZ(0);will-change:transform,opacity}.animate-slide-right{animation:slideInRight .6s ease-out forwards}.animation-delay-100{animation-delay:.1s}.animation-delay-200{animation-delay:.2s}.animation-delay-300{animation-delay:.3s}.animation-delay-400{animation-delay:.4s}@media (prefers-reduced-motion:reduce){@keyframes fadeInUp{0%{opacity:0;transform:none}to{opacity:1;transform:none}}@keyframes slideInLeft{0%{opacity:0;transform:none}to{opacity:1;transform:none}}@keyframes slideInRight{0%{opacity:0;transform:none}to{opacity:1;transform:none}}.animate-fade-in,.animate-fade-up,.animate-slide-left,.animate-slide-right{animation-duration:.1s!important}.animation-delay-100,.animation-delay-200,.animation-delay-300,.animation-delay-400{animation-delay:0s!important}@keyframes ripple{to{opacity:0;transform:none}}@keyframes blink{0%,49%{opacity:1}50%,to{opacity:.7}}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes glow{0%,to{box-shadow:0 0 5px #0071e380}50%{box-shadow:0 0 20px #0071e3cc,0 0 30px #0071e399}}@keyframes rotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes shake{0%,to{transform:translateX(0)}10%,30%,50%,70%,90%{transform:translateX(-5px)}20%,40%,60%,80%{transform:translateX(5px)}}.animate-pulse{animation:pulse 2s ease-in-out infinite}.animate-glow{animation:glow 2s ease-in-out infinite}.animate-rotate{animation:rotate 2s linear infinite}.animate-gradient{animation:gradientShift 3s ease infinite;background-size:200% 200%}.hover-lift{transition:transform var(--transition-fast)}.hover-lift:hover{transform:translateY(-5px)}.hover-scale{transition:transform var(--transition-fast)}.hover-glow{transition:box-shadow var(--transition-fast)}.hover-glow:hover{box-shadow:0 0 20px #0071e399}@media (prefers-reduced-motion:reduce){.animate-float,.animate-glow,.animate-gradient,.animate-pulse,.animate-rotate{animation:none}.hover-lift:hover,.hover-scale:hover{transform:none}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes slideUpReveal{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@keyframes glowPulse{0%,to{box-shadow:0 0 20px #0071e34d}50%{box-shadow:0 0 40px #0071e399}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}@keyframes rotate3D{0%{transform:perspective(1000px) rotateY(0deg)}to{transform:perspective(1000px) rotateY(1turn)}}@keyframes gradientShift{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}@keyframes bounceIn{0%{opacity:0;transform:scale(.3)}50%{opacity:1;transform:scale(1.05)}70%{transform:scale(.9)}to{transform:scale(1)}}@keyframes blurFadeIn{0%{filter:blur(10px);opacity:0}to{filter:blur(0);opacity:1}}@keyframes elasticScale{0%{transform:scale(0)}50%{transform:scale(1.1)}75%{transform:scale(.95)}to{transform:scale(1)}}.animate-fade-in-scale{animation:fadeInScale .6s cubic-bezier(.34,1.56,.64,1)}.animate-slide-up{animation:slideUpReveal .8s cubic-bezier(.25,.46,.45,.94)}.animate-glow-pulse{animation:glowPulse 2s ease-in-out infinite}.animate-shimmer{animation:shimmer 2s infinite;background:linear-gradient(90deg,#0000,#ffffff1a 50%,#0000);background-size:1000px 100%}.animate-float{animation:float 3s ease-in-out infinite}.animate-bounce-in{animation:bounceIn .6s cubic-bezier(.68,-.55,.265,1.55)}.animate-blur-fade-in{animation:blurFadeIn .8s ease-out}.hover-lift{transition:transform var(--transition-medium),box-shadow var(--transition-medium)}.hover-lift:hover{box-shadow:0 20px 40px #0000004d;transform:translateY(-8px)}.hover-glow{transition:box-shadow var(--transition-medium)}.hover-glow:hover{box-shadow:0 0 30px #0071e380}.hover-scale{transition:transform var(--transition-medium)}.hover-scale:hover{transform:scale(1.05)}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.animate-blur-fade-in,.animate-bounce-in,.animate-fade-in-scale,.animate-float,.animate-glow-pulse,.animate-shimmer,.animate-slide-up{animation:none}.hover-lift:hover,.hover-scale:hover{transform:none}}
/*# sourceMappingURL=main.0c5d13bd.css.map*/