@import"https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&family=Inter:wght@400;500;600&family=JetBrains+Mono:wght@400;500&display=swap";.navbar{position:fixed;top:0;left:0;right:0;height:var(--navbar-height);z-index:1300;padding:10px 0 0;background:transparent;border-bottom:0;transition:padding var(--transition-base),filter var(--transition-base)}.navbar:before{content:"";position:absolute;left:50%;top:0;width:min(92vw,var(--max-width));height:2px;border-radius:999px;transform:translate(-50%);background:linear-gradient(90deg,#10b98100,#10b981d9,#06b6d4d9,#06b6d400);animation:navbar-top-scan var(--anim-loop-slow) linear infinite;opacity:.7;pointer-events:none}.navbar.scrolled{padding-top:6px}.navbar-inner{display:flex;align-items:center;justify-content:space-between;position:relative;height:calc(var(--navbar-height) - 16px);max-width:calc(var(--max-width) + 20px);margin:0 auto;padding:0 14px;border-radius:999px;border:1px solid rgba(148,163,184,.34);background:#f8fafbbd;background:color-mix(in srgb,var(--color-bg-overlay) 84%,transparent);box-shadow:0 12px 30px #0206171f,inset 0 1px #ffffff94;backdrop-filter:blur(16px) saturate(145%);-webkit-backdrop-filter:blur(16px) saturate(145%)}:root[data-theme=light] .navbar-inner{border-color:#94a3b857;background:#f8fafbd1;box-shadow:0 12px 30px #0206171f,inset 0 1px #ffffff9e}:root[data-theme=dark] .navbar-inner{border-color:#475569a8;background:#0b1120bd;background:color-mix(in srgb,var(--color-bg-overlay) 88%,transparent);box-shadow:0 14px 34px #02061780,inset 0 1px #ffffff0f}.navbar-logo{font-family:var(--font-heading);font-size:1.16rem;font-weight:700;color:#0f172a;display:flex;align-items:center;gap:7px;letter-spacing:.01em;padding:8px 10px;border-radius:var(--radius-full);border:1px solid rgba(148,163,184,.2);background:linear-gradient(135deg,#ffffff9e,#f1f5f980);box-shadow:0 8px 18px #0f172a14,inset 0 1px #fff9;transition:color var(--transition-fast),transform var(--transition-fast),background var(--transition-fast),box-shadow var(--transition-fast),border-color var(--transition-fast)}.navbar-logo:hover{transform:translateY(-1px) scale(1.01);border-color:#06b6d45c;background:linear-gradient(135deg,#ffffffb8,#e2e8f094);box-shadow:0 12px 22px #06b6d424,inset 0 1px #ffffffad}.navbar-logo>span:first-child,.navbar-logo>span:last-child{color:#0f766e;text-shadow:0 0 10px rgba(16,185,129,.2)}.navbar-logo .logo-accent{display:inline-block;padding:2px 8px;border-radius:var(--radius-full);background:linear-gradient(90deg,#22c55e,#14b8a6,#06b6d4);background-size:220% 100%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:0 0 18px rgba(16,185,129,.44),0 0 30px rgba(6,182,212,.24);animation:navbar-logo-shimmer 4.8s linear infinite,navbar-logo-glow 2.6s ease-in-out infinite}:root[data-theme=dark] .navbar-logo{color:#e2e8f0;border-color:#4755698a;background:linear-gradient(135deg,#0f172ac7,#131c31b8);box-shadow:0 10px 22px #02061773,inset 0 1px #ffffff14}:root[data-theme=dark] .navbar-logo>span:first-child,:root[data-theme=dark] .navbar-logo>span:last-child{color:#99f6e4;text-shadow:0 0 14px rgba(45,212,191,.35)}.navbar-menu{display:flex;align-items:center}.navbar-links{display:flex;align-items:center;gap:6px;padding:4px;border-radius:999px;border:1px solid rgba(148,163,184,.3);background:#ffffff73}:root[data-theme=dark] .navbar-links{border-color:#47556994;background:#0f172a8f}.navbar-links>a{font-size:.86rem;font-weight:600;color:var(--color-text-secondary);position:relative;padding:8px 13px;border-radius:var(--radius-full);transition:color var(--transition-fast),background var(--transition-fast),transform var(--transition-fast)}.navbar-links>a:after{content:"";position:absolute;left:50%;bottom:4px;width:0;height:2px;border-radius:999px;transform:translate(-50%);background:linear-gradient(90deg,#10b981,#06b6d4);transition:width var(--transition-base)}.navbar-links>a:hover{color:var(--color-text);transform:translateY(-1px);background:#94a3b826}.navbar-links>a:hover:after{width:72%}.navbar-links>a.active{color:#fff;background:linear-gradient(135deg,#0d9668,#06b6d4);box-shadow:0 8px 18px #0d96684d}.navbar-links>a.active:after{width:76%;background:#ffffffe0}.navbar-cta{margin-left:6px}.navbar-hire-btn{position:relative;isolation:isolate;padding:10px 18px;border-radius:var(--radius-full);border:1px solid rgba(251,146,60,.5);background:linear-gradient(135deg,#f59e0b,#fb7185);color:#fff;font-size:.82rem;font-weight:700;letter-spacing:.02em;box-shadow:0 10px 22px #f9731647;overflow:hidden}.navbar-hire-btn:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:linear-gradient(120deg,transparent 15%,rgba(255,255,255,.35) 46%,transparent 78%);transform:translate(-130%);animation:navbar-cta-sheen var(--anim-loop) ease-in-out infinite}.navbar-hire-btn:hover{color:#fff;transform:translateY(-2px);box-shadow:0 14px 28px #f9731657}.navbar-hire-btn:focus-visible{outline:3px solid rgba(251,146,60,.35);outline-offset:2px}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;margin-left:8px;border:1px solid rgba(148,163,184,.35);border-radius:999px;background:linear-gradient(135deg,#ffffff8f,#e2e8f085);color:var(--color-text);cursor:pointer;transition:transform var(--transition-base),border-color var(--transition-base),box-shadow var(--transition-base),color var(--transition-base)}:root[data-theme=dark] .theme-toggle{border-color:#475569a3;background:linear-gradient(135deg,#0f172abd,#1e293bb8)}.theme-toggle:hover{border-color:#06b6d499;color:#06b6d4;transform:translateY(-1px);box-shadow:0 8px 18px #06b6d433}.theme-toggle svg{width:18px;height:18px}.hamburger{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:6px;z-index:1001}.hamburger span{display:block;width:22px;height:2px;background:var(--color-text);border-radius:2px;transition:all var(--transition-base)}.hamburger.open span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}.hamburger.open span:nth-child(2){opacity:0}.hamburger.open span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}@media (max-width: 920px){.hamburger{display:flex}.navbar-inner{height:calc(var(--navbar-height) - 14px);padding:0 10px}.theme-toggle{margin-left:auto;margin-right:8px}.navbar-menu{position:fixed;top:12px;right:-100%;width:min(320px,calc(100% - 22px));height:calc(100vh - 24px);border-radius:18px;border:1px solid rgba(148,163,184,.35);background:#fffffff5;box-shadow:0 24px 40px #02061733;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);padding:calc(var(--navbar-height) + var(--space-lg)) var(--space-lg) var(--space-lg);transition:right var(--transition-spring);z-index:1402;pointer-events:none}:root[data-theme=dark] .navbar-menu{border-color:#47556994;background:#0b1120f0;box-shadow:0 24px 40px #0206178c}.navbar-menu.open{right:10px;pointer-events:auto}.navbar-menu.open,.navbar-menu.open *{pointer-events:auto}.navbar-links{flex-direction:column;align-items:stretch;gap:8px;padding:0;border:0;background:transparent}.navbar-links>a{font-size:1.02rem;text-align:left;padding:11px 12px;background:#94a3b81f;border:1px solid rgba(148,163,184,.28);color:var(--color-text);touch-action:manipulation}:root[data-theme=dark] .navbar-links>a{background:#1e293b6b;border-color:#47556973;color:var(--color-text-on-dark)}.navbar-links>a:after{bottom:7px}.navbar-cta{margin-left:0;margin-top:8px;width:100%}.navbar-hire-btn{width:100%;justify-content:center;padding:12px 16px}.mobile-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0206175c;z-index:1401;opacity:0;visibility:hidden;pointer-events:none!important;transition:all var(--transition-base)}.mobile-overlay.visible{opacity:1;visibility:visible;pointer-events:none!important}}@keyframes navbar-top-scan{to{filter:hue-rotate(360deg)}}@keyframes navbar-cta-sheen{0%,20%{transform:translate(-130%)}45%,to{transform:translate(130%)}}@keyframes navbar-logo-shimmer{to{background-position:-220% 0}}@keyframes navbar-logo-glow{0%,to{filter:saturate(1) brightness(1)}50%{filter:saturate(1.2) brightness(1.08)}}@media (prefers-reduced-motion: reduce){.navbar:before,.navbar-hire-btn:before,.navbar-logo .logo-accent{animation:none}}.footer{position:relative;overflow:hidden;color:#e6edf9;padding:calc(var(--space-4xl) + 8px) 0 var(--space-xl);background:radial-gradient(1100px 520px at 8% -10%,rgba(20,184,166,.28),transparent 62%),radial-gradient(920px 460px at 92% -5%,rgba(59,130,246,.24),transparent 60%),linear-gradient(165deg,#030814,#071022 42%,#0b1834)}.footer:before,.footer:after{content:"";position:absolute;pointer-events:none;z-index:0}.footer:before{top:0;left:50%;width:min(94vw,var(--max-width));height:1px;transform:translate(-50%);background:linear-gradient(90deg,#2dd4bf00,#2dd4bfe6,#38bdf8d9,#38bdf800);opacity:.9}.footer:after{inset:auto -20% -32% -20%;height:340px;background:radial-gradient(circle,#0ea5e933,#0ea5e900 72%);filter:blur(12px)}.footer .container{position:relative;z-index:1}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:clamp(1.2rem,2.8vw,2.2rem);margin-bottom:var(--space-2xl);padding:clamp(1rem,2.6vw,1.7rem);border-radius:24px;border:1px solid rgba(148,163,184,.26);background:linear-gradient(145deg,#ffffff14,#ffffff05),linear-gradient(145deg,#060b16d1,#0a1428b8);box-shadow:0 26px 56px #02061775,inset 0 1px #ffffff1f;backdrop-filter:blur(12px) saturate(130%);-webkit-backdrop-filter:blur(12px) saturate(130%);position:relative;overflow:hidden}.footer-grid:before{content:"";position:absolute;left:-18%;top:-120%;width:56%;height:320%;background:linear-gradient(115deg,#fff0,#ffffff1f,#fff0);transform:rotate(18deg);animation:footer-panel-sheen calc(var(--anim-loop-slow) * 2.2) linear infinite;pointer-events:none}.footer-brand{max-width:390px}.footer-logo{color:#f8fafc;font-size:1.34rem;letter-spacing:.01em;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.footer-logo-accent{color:#67e8f9;text-shadow:0 0 20px rgba(103,232,249,.52)}.footer-logo:hover{transform:none;border:0;background:transparent;box-shadow:none}.footer-brand p{margin-top:var(--space-md);max-width:360px;font-size:.93rem;line-height:1.78;color:#e2e8f0d1}.footer-badge{margin-top:14px;display:inline-flex;align-items:center;gap:8px;padding:7px 12px;border-radius:var(--radius-full);border:1px solid rgba(45,212,191,.4);background:linear-gradient(135deg,#14b8a633,#38bdf824);color:#ccfbf1;font-family:var(--font-mono);font-size:.72rem;letter-spacing:.06em;text-transform:uppercase}.footer-meta{margin-top:12px;display:flex;flex-wrap:wrap;gap:8px}.footer-meta span{display:inline-flex;align-items:center;padding:4px 10px;border-radius:var(--radius-full);border:1px solid rgba(103,232,249,.26);background:linear-gradient(135deg,#0f172a85,#1e293b57);color:#e2e8f0e6;font-size:.73rem;letter-spacing:.03em}.footer-badge:before{content:"";width:8px;height:8px;border-radius:50%;background:#34d399;box-shadow:0 0 14px #34d399e6;animation:footer-live-dot 1.8s ease-in-out infinite}.footer-heading{margin-bottom:var(--space-lg);font-family:var(--font-heading);font-size:.8rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#94a3b8f2;position:relative;padding-bottom:7px}.footer-heading:after{content:"";position:absolute;left:0;bottom:0;width:36px;height:2px;border-radius:var(--radius-full);background:linear-gradient(90deg,#2dd4bff2,#38bdf866)}.footer-links{display:flex;flex-direction:column;gap:9px}.footer-links a,.footer-location{font-size:.9rem;color:#e2e8f0d6;transition:transform var(--transition-fast),color var(--transition-fast),opacity var(--transition-fast)}.footer-links a:hover{color:#67e8f9;transform:translate(4px)}.footer-links a{position:relative;width:fit-content}.footer-links a:after{content:"";position:absolute;left:0;bottom:-1px;width:100%;height:1px;transform-origin:left;transform:scaleX(0);background:linear-gradient(90deg,#67e8f9e6,#67e8f900);transition:transform var(--transition-base)}.footer-links a:hover:after{transform:scaleX(1)}.footer-location{opacity:.8}.footer-social{display:flex;gap:10px;margin-top:18px}.footer-social a{position:relative;isolation:isolate;display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:var(--radius-full);border:1px solid rgba(103,232,249,.35);color:#f1f5f9;background:linear-gradient(145deg,#0f172af0,#1e293bdb);box-shadow:0 12px 24px #02061773;font-size:1.15rem;overflow:hidden;transition:transform var(--transition-base),box-shadow var(--transition-base),border-color var(--transition-base),color var(--transition-base)}.footer-social a:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:linear-gradient(115deg,transparent 14%,rgba(255,255,255,.32) 46%,transparent 82%);transform:translate(-135%);animation:footer-social-sheen var(--anim-loop-slow) ease-in-out infinite}.footer-social a:hover{color:#fff;border-color:#2dd4bfcc;transform:translateY(-4px);box-shadow:0 18px 30px #02061780,0 0 0 1px #2dd4bf47}.footer-social a:focus-visible{outline:3px solid rgba(103,232,249,.38);outline-offset:3px}.footer-bottom{position:relative;z-index:2;margin-top:var(--space-sm);padding:12px 14px;border-radius:14px;background:linear-gradient(145deg,#02061799,#0f172a70);padding-top:var(--space-lg);border-top:1px solid rgba(71,85,105,.45);display:flex;align-items:center;justify-content:space-between;font-size:.88rem;color:#e2e8f0f2;box-shadow:inset 0 1px #ffffff14}.footer-bottom p{margin:0;color:#e2e8f0f2!important}.footer-copyright{color:#f8fafc!important;font-weight:600}:root[data-theme=dark] .footer-bottom{background:linear-gradient(145deg,#020617c7,#0f172a94);border-top-color:#475569a6;opacity:1!important;visibility:visible!important}:root[data-theme=dark] .footer-bottom p{color:#e2e8f0f7!important}:root[data-theme=dark] .footer-copyright{color:#fff!important}:root[data-theme=dark] .footer-tech-note{color:#cbd5e1!important}.footer-tech-note{display:inline-flex;align-items:center;gap:8px}.footer-tech-note:before{content:"";width:8px;height:8px;border-radius:50%;background:#22c55e;box-shadow:0 0 12px #22c55ec7}@keyframes footer-live-dot{0%,to{transform:scale(.9);opacity:.8}50%{transform:scale(1.16);opacity:1}}@keyframes footer-social-sheen{0%,18%{transform:translate(-135%)}45%,to{transform:translate(135%)}}@keyframes footer-panel-sheen{0%{transform:translate(-26%) rotate(18deg)}to{transform:translate(220%) rotate(18deg)}}@media (max-width: 1024px){.footer-grid{grid-template-columns:1.6fr 1fr 1fr}.footer-grid>:last-child{grid-column:1 / -1}}@media (max-width: 768px){.footer{padding-top:var(--space-4xl)}.footer-grid{grid-template-columns:1fr;border-radius:20px}.footer-brand{max-width:100%}.footer-bottom{flex-direction:column;gap:var(--space-sm);text-align:center}}@media (prefers-reduced-motion: reduce){.footer-grid:before,.footer-badge:before,.footer-social a:before{animation:none}}.projects-page{padding-top:calc(var(--navbar-height) + var(--space-3xl));position:relative;overflow:hidden;background:radial-gradient(circle at 10% 14%,rgba(16,185,129,.08),transparent 34%),radial-gradient(circle at 88% 84%,rgba(14,165,233,.1),transparent 36%),var(--color-bg)}.projects-header{margin-bottom:var(--space-2xl)}.projects-kicker{display:inline-flex;align-items:center;padding:6px 12px;border-radius:var(--radius-full);border:1px solid rgba(16,185,129,.3);background:linear-gradient(135deg,#10b98124,#22d3ee24);color:#0f766e;font-family:var(--font-mono);font-size:.74rem;letter-spacing:.08em;text-transform:uppercase;margin-bottom:var(--space-md)}.project-filters-wrap{margin-bottom:var(--space-2xl)}.project-filters{display:flex;justify-content:center;gap:10px;margin-bottom:var(--space-md);flex-wrap:wrap;padding:12px;border-radius:16px;border:1px solid rgba(148,163,184,.24);background:linear-gradient(145deg,#ffffffd6,#f1f5f9b8);box-shadow:0 14px 30px #0f172a14}.filter-btn{position:relative;isolation:isolate;padding:9px 18px;font-size:.8rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;font-family:var(--font-mono);background:#ffffffb8;color:#334155;border:1px solid rgba(148,163,184,.4);border-radius:var(--radius-full);cursor:pointer;transition:transform var(--transition-base),box-shadow var(--transition-base),border-color var(--transition-base),color var(--transition-base),background var(--transition-base)}.filter-btn:hover{transform:translateY(-2px);border-color:#06b6d48c;color:#0b8f63;box-shadow:0 10px 20px #06b6d429}.filter-btn.active{border-color:#10b981a6;color:#fff;background:linear-gradient(135deg,#0d9668,#06b6d4);box-shadow:0 12px 22px #0d966842}.projects-filter-meta{text-align:center;font-size:.88rem;color:var(--color-text-secondary)}.projects-filter-meta strong{color:var(--color-text)}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--space-xl)}.projects-grid-animate .project-card{opacity:0;transform:translateY(26px) scale(.97);animation:project-card-enter .65s var(--ease-emphasized) forwards}.projects-grid-animate .project-card:nth-child(2){animation-delay:.06s}.projects-grid-animate .project-card:nth-child(3){animation-delay:.12s}.projects-grid-animate .project-card:nth-child(4){animation-delay:.18s}.projects-grid-animate .project-card:nth-child(5){animation-delay:.24s}.projects-grid-animate .project-card:nth-child(6){animation-delay:.3s}.projects-empty{text-align:center;color:var(--color-text-muted);padding:var(--space-3xl) 0}.project-card{background:var(--color-surface);border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--color-border-light);transition:transform var(--transition-spring),box-shadow var(--transition-spring),border-color var(--transition-spring);cursor:pointer}.project-card-image{width:100%;height:220px;overflow:hidden;position:relative}.project-card-image img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-slow)}.project-card-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#0206170d,#0206178c);opacity:0;transition:opacity var(--transition-base)}.project-card-body{padding:var(--space-lg)}.project-card-category{font-family:var(--font-mono);font-size:.74rem;color:var(--color-primary);text-transform:uppercase;letter-spacing:.07em;margin-bottom:var(--space-sm)}.project-card-title{font-size:1.15rem;margin-bottom:var(--space-sm)}.project-card-description{font-size:.9rem;color:var(--color-text-secondary);margin-bottom:var(--space-md);display:-webkit-box;line-clamp:2;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.project-card-tags{display:flex;flex-wrap:wrap;gap:var(--space-xs)}.project-card-links{display:flex;gap:var(--space-sm);padding:0 var(--space-lg) var(--space-lg);flex-wrap:wrap}.project-card-link{position:relative;isolation:isolate;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:34px;padding:8px 12px;border-radius:var(--radius-full);border:1px solid transparent;background:linear-gradient(var(--color-surface),var(--color-surface)) padding-box,linear-gradient(135deg,#10b981d9,#06b6d4d9) border-box;font-size:.8rem;font-weight:700;color:#0f766e;letter-spacing:.01em;box-shadow:0 8px 16px #0f172a14;transition:transform var(--transition-base),box-shadow var(--transition-base),color var(--transition-base),filter var(--transition-base);pointer-events:auto;cursor:pointer}.project-card-link:hover{transform:translateY(-2px);color:#0b8f63;filter:saturate(1.08);box-shadow:0 12px 22px #0d96682e,0 8px 20px #06b6d429}.project-card-link:active{transform:translateY(0) scale(.98)}.project-card-link:focus-visible{outline:3px solid rgba(6,182,212,.35);outline-offset:2px}.projects-page .project-card{border-radius:18px;border:1px solid rgba(148,163,184,.26);background:radial-gradient(circle at 86% 12%,rgba(16,185,129,.08),transparent 32%),radial-gradient(circle at 14% 88%,rgba(56,189,248,.08),transparent 32%),linear-gradient(145deg,#ffffffe6,#f1f5f9cc);box-shadow:0 14px 28px #0f172a14}.projects-page .project-card:hover{transform:translateY(-8px);border-color:#06b6d461;box-shadow:0 24px 36px #06b6d429,0 16px 30px #0206171f}.projects-page .project-card:hover .project-card-image img{transform:scale(1.06)}.projects-page .project-card:hover .project-card-overlay{opacity:1}.projects-page .project-card-title{font-size:1.2rem}.projects-page .project-card-description{color:#475569}:root[data-theme=dark] .projects-page{background:radial-gradient(circle at 10% 14%,rgba(16,185,129,.14),transparent 36%),radial-gradient(circle at 88% 84%,rgba(14,165,233,.16),transparent 38%),var(--color-bg)}:root[data-theme=dark] .project-filters{border-color:#4755699e;background:linear-gradient(145deg,#0f172adb,#131c31c2);box-shadow:0 16px 34px #0206176b}:root[data-theme=dark] .filter-btn{color:#dbeafe;background:#0f172abf;border-color:#475569b3}:root[data-theme=dark] .filter-btn:hover{border-color:#38bdf899;color:#a5f3fc}:root[data-theme=dark] .filter-btn.active{color:#ecfeff;background:linear-gradient(135deg,#0d9488,#0284c7);border-color:#2dd4bfbf}:root[data-theme=dark] .projects-filter-meta{color:#cbd5e1}:root[data-theme=dark] .projects-filter-meta strong{color:#f8fafc}:root[data-theme=dark] .projects-page .project-card{border-color:#47556994;background:radial-gradient(circle at 86% 12%,rgba(16,185,129,.1),transparent 32%),radial-gradient(circle at 14% 88%,rgba(56,189,248,.12),transparent 32%),linear-gradient(145deg,#0f172ae6,#131c31d1);box-shadow:0 16px 30px #02061780}:root[data-theme=dark] .projects-page .project-card-title{color:#f8fafc}:root[data-theme=dark] .projects-page .project-card-description{color:#dbeafe}:root[data-theme=dark] .project-card-link{color:#67e8f9;background:linear-gradient(#0f172ae0,#0f172ae0) padding-box,linear-gradient(135deg,#2dd4bfeb,#38bdf8eb) border-box;box-shadow:0 10px 18px #0206175c}:root[data-theme=dark] .project-card-link:hover{color:#ccfbf1;box-shadow:0 14px 24px #06b6d438,0 10px 20px #02061770}@keyframes project-card-enter{to{opacity:1;transform:translateY(0) scale(1)}}@media (max-width: 768px){.projects-grid{grid-template-columns:1fr}.project-filters{padding:10px;gap:8px}}@media (prefers-reduced-motion: reduce){.projects-grid-animate .project-card{animation:none;opacity:1;transform:none}.projects-page .project-card:hover,.filter-btn:hover,.project-card-link:hover{transform:none}}.hero{min-height:100vh;display:flex;align-items:center;padding-top:var(--navbar-height);position:relative;overflow:hidden}.hero:before{content:"";position:absolute;top:-200px;right:-200px;width:600px;height:600px;background:radial-gradient(circle,rgba(13,150,104,.08) 0%,transparent 70%);border-radius:50%;pointer-events:none}.hero:after{content:"";position:absolute;bottom:-100px;left:-100px;width:400px;height:400px;background:radial-gradient(circle,rgba(6,182,212,.06) 0%,transparent 70%);border-radius:50%;pointer-events:none}.hero-content{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4xl);align-items:center;position:relative;z-index:1}.hero-greeting{font-family:var(--font-mono);font-size:.95rem;color:#0b8f63;margin-bottom:var(--space-md);display:flex;align-items:center;gap:var(--space-sm);text-shadow:0 0 8px rgba(16,185,129,.3),0 0 18px rgba(16,185,129,.2)}.hero-greeting .typing-line{filter:saturate(1.08)}:root[data-theme=dark] .hero-greeting{color:#34d399;text-shadow:0 0 10px rgba(52,211,153,.55),0 0 24px rgba(52,211,153,.35)}.typing-line,.typing-name-line{display:inline-block;white-space:nowrap}.typing-caret{display:inline-block;width:2px;height:1em;margin-left:5px;background:var(--color-primary);opacity:0;vertical-align:-.08em}.typing-caret.is-active{opacity:1;animation:typing-caret var(--anim-caret) step-end infinite}.name-caret{height:.85em;margin-left:8px}.hero-greeting:before{content:"";display:inline-block;width:30px;height:2px;background:var(--color-primary)}.hero-name{font-size:clamp(2.5rem,6vw,4rem);font-weight:700;line-height:1.1;margin-bottom:var(--space-md)}.hero-name .highlight{background:var(--color-primary-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-title{font-size:clamp(1.2rem,2.5vw,1.6rem);color:var(--color-text-secondary);font-weight:500;margin-bottom:var(--space-md)}.hero-metrics{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:var(--space-lg)}.hero-metric-item{display:inline-flex;align-items:baseline;gap:7px;padding:7px 12px;border-radius:var(--radius-full);border:1px solid rgba(13,150,104,.25);background:linear-gradient(135deg,#0d96681f,#06b6d414)}.hero-metric-value{font-family:var(--font-heading);font-size:.95rem;font-weight:700;color:var(--color-primary-dark)}.hero-metric-label{font-size:.74rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--color-text-secondary)}:root[data-theme=dark] .hero-metric-item{border-color:#34d39966;background:linear-gradient(135deg,#0d966833,#06b6d41f)}:root[data-theme=dark] .hero-metric-value{color:#bbf7d0}:root[data-theme=dark] .hero-metric-label{color:#cbd5e1}.hero-description{font-size:1rem;max-width:100%;margin:0}.hero-intro-panel{max-width:560px;margin-top:var(--space-lg);padding:18px 18px 16px;border-radius:18px;background:linear-gradient(145deg,#ffffffb8,#f1f5f98c);box-shadow:0 16px 30px #0f172a14;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}:root[data-theme=dark] .hero-intro-panel{background:linear-gradient(145deg,#0f172abd,#131c31a3);box-shadow:0 14px 30px #02061759}.hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:var(--space-lg)}.hero-btn-primary,.hero-btn-secondary{position:relative;isolation:isolate;overflow:hidden;border-radius:var(--radius-full);padding:11px 20px;font-size:.88rem;letter-spacing:.02em}.hero-btn-primary{border:1px solid rgba(52,211,153,.5);background:linear-gradient(135deg,#0d9668,#06b6d4);color:#fff;box-shadow:0 10px 20px #0d96683d;animation:hero-btn-breathe 3.4s ease-in-out infinite}.hero-btn-primary:hover{background:linear-gradient(135deg,#10b981,#0891b2);color:#fff;transform:translateY(-2px)}.hero-btn-secondary{border:1px solid rgba(148,163,184,.4);background:#ffffff94;color:var(--color-text);box-shadow:0 8px 16px #0f172a14;animation:hero-btn-breathe 3.8s ease-in-out infinite .2s}.hero-btn-secondary:hover{border-color:#0d966899;background:#0d96681a;color:var(--color-primary);transform:translateY(-2px)}:root[data-theme=dark] .hero-btn-secondary{background:#0f172a9e;border-color:#4755699e;color:var(--color-text-on-dark)}.hero-btn-primary:before,.hero-btn-secondary:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:linear-gradient(120deg,transparent 10%,rgba(255,255,255,.35) 46%,transparent 78%);transform:translate(-130%);animation:hero-btn-sheen var(--anim-loop) ease-in-out infinite;pointer-events:none}.hero-btn-label{position:relative;z-index:1;display:inline-block;background-size:220% 100%;animation:hero-btn-text-shimmer var(--anim-loop) linear infinite}.hero-btn-primary .hero-btn-label{background-image:linear-gradient(90deg,#fff,#e7fff4,#fff);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-btn-secondary .hero-btn-label{background-image:linear-gradient(90deg,var(--color-text),var(--color-primary),var(--color-text));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}:root[data-theme=dark] .hero-btn-secondary .hero-btn-label{background-image:linear-gradient(90deg,#e2e8f0,#67e8f9,#e2e8f0)}@keyframes hero-btn-sheen{0%,20%{transform:translate(-130%)}45%,to{transform:translate(130%)}}@keyframes hero-btn-text-shimmer{to{background-position:-220% 0}}@keyframes hero-btn-breathe{0%,to{box-shadow:0 8px 16px #0d96682e}50%{box-shadow:0 12px 24px #0d966847}}.hero-visual{display:flex;justify-content:center;align-items:center;position:relative}.hero-tech-showcase{width:min(560px,96vw);border-radius:0;border:none;background:transparent;box-shadow:none;overflow:hidden;position:relative;padding:0}.hero-tech-glow{position:absolute;left:50%;top:-80px;transform:translate(-50%);width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,#10b98147,#10b98100);pointer-events:none}.hero-tech-trio{position:relative;z-index:1;display:flex;justify-content:center;align-items:center;gap:26px;min-height:220px}.hero-tech-badge{display:flex;flex-direction:column;align-items:center;gap:8px;width:auto;height:auto;justify-content:center;padding:0;border:none;background:transparent;box-shadow:none;animation:hero-tech-float 3.6s ease-in-out infinite}.hero-tech-badge:nth-child(2){animation-delay:.15s}.hero-tech-badge:nth-child(3){animation-delay:.3s}.hero-tech-badge svg{font-size:7rem;filter:drop-shadow(0 8px 18px rgba(15,23,42,.18))}.hero-tech-badge span{font-size:.75rem;font-weight:700;letter-spacing:.03em;color:#334155}.badge-react svg{color:#61dafb}.badge-express svg{color:#334155}.badge-node svg{color:#68a063}.hero-tech-caption{position:relative;z-index:1;margin:14px 2px 2px;text-align:center;font-family:var(--font-mono);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:#0f766e}:root[data-theme=dark] .hero-tech-showcase{background:transparent;box-shadow:none}:root[data-theme=dark] .hero-tech-badge span{color:#e2e8f0}:root[data-theme=dark] .badge-express svg{color:#e2e8f0}:root[data-theme=dark] .hero-tech-caption{color:#99f6e4}@keyframes hero-tech-float{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}@keyframes typing-caret{0%,49%{opacity:1}50%,to{opacity:0}}.tech-stack{background:var(--color-surface);border-top:1px solid var(--color-border-light);border-bottom:1px solid var(--color-border-light)}.tech-stack-header h2:after{content:none}.tech-stack-title{position:relative;display:inline-block;margin-bottom:14px;z-index:2}.title-typing{display:inline-block;white-space:nowrap;overflow:hidden;width:0;border-right:2px solid var(--color-primary);filter:drop-shadow(0 0 8px rgba(13,150,104,.25));animation:tech-title-typing var(--anim-loop) steps(10,end) infinite,tech-title-caret var(--anim-caret) step-end infinite}.tech-stack-title:after{content:"";position:absolute;left:0;bottom:-8px;height:3px;width:0;border-radius:var(--radius-full);background:linear-gradient(90deg,#34d399,#06b6d4);box-shadow:0 0 16px #06b6d466;animation:tech-underline-typing var(--anim-loop) ease-in-out infinite}.tech-stack-subtitle{position:relative;z-index:2;margin-top:12px;opacity:.88;transform:translateY(6px);color:var(--color-text-secondary);background:linear-gradient(90deg,var(--color-text-secondary),#14b8a6,var(--color-text-secondary));background-size:200% 100%;animation:tech-subtitle-reveal var(--anim-loop) ease-in-out infinite,tech-subtitle-shimmer 3s linear infinite,tech-subtitle-color-cycle var(--anim-loop-slow) ease-in-out infinite}:root[data-theme=dark] .tech-stack-subtitle{color:#cbd5e1;background:none;-webkit-text-fill-color:#cbd5e1;text-shadow:0 0 12px rgba(103,232,249,.18);animation:tech-subtitle-reveal var(--anim-loop) ease-in-out infinite,tech-subtitle-dark-glow 3s ease-in-out infinite,tech-subtitle-color-cycle-dark var(--anim-loop-slow) ease-in-out infinite}@supports ((-webkit-background-clip: text) or (background-clip: text)){:root:not([data-theme=dark]) .tech-stack-subtitle{-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}}.tech-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(112px,1fr));gap:var(--space-md);max-width:860px;margin:0 auto}.tech-item{position:relative;isolation:isolate;display:flex;flex-direction:column;align-items:center;gap:10px;padding:12px 10px;border-radius:14px;border:1px solid var(--color-border-light);background:linear-gradient(165deg,#ffffffd6,#f1f5f9b3);box-shadow:0 10px 24px #0f172a0f;transition:all var(--transition-base);cursor:default;overflow:hidden;animation:tech-bounce var(--anim-bounce) cubic-bezier(.34,1.56,.64,1) infinite}.tech-item:nth-child(2){animation-delay:.15s}.tech-item:nth-child(3){animation-delay:.3s}.tech-item:nth-child(4){animation-delay:.45s}.tech-item:nth-child(5){animation-delay:.6s}.tech-item:nth-child(6){animation-delay:.75s}.tech-item:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(120deg,transparent 18%,rgba(255,255,255,.55) 42%,transparent 66%);transform:translate(-130%);transition:transform .8s ease;pointer-events:none}.tech-item:hover{transform:translateY(-6px) scale(1.03);border-color:#06b6d466;box-shadow:0 16px 30px #06b6d424,0 8px 20px #0d966829}.tech-item:hover:before{transform:translate(130%)}.tech-icon{width:46px;height:46px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;font-size:2.15rem;background:#ffffffa6;border:1px solid rgba(148,163,184,.25);box-shadow:0 10px 20px #0f172a14;transition:all var(--transition-base)}.tech-icon svg{width:1em;height:1em}.tech-item:hover .tech-icon{transform:translateY(-3px) rotate(-6deg);box-shadow:0 14px 26px #0d966833}.tech-item .tech-icon{animation:tech-icon-pop var(--anim-bounce) ease-in-out infinite}.tech-item:nth-child(2) .tech-icon{animation-delay:.15s}.tech-item:nth-child(3) .tech-icon{animation-delay:.3s}.tech-item:nth-child(4) .tech-icon{animation-delay:.45s}.tech-item:nth-child(5) .tech-icon{animation-delay:.6s}.tech-item:nth-child(6) .tech-icon{animation-delay:.75s}.tech-label{font-size:.8rem;font-weight:600;letter-spacing:.02em;color:var(--color-text-secondary)}@media (min-width: 992px){.tech-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}.tech-react .tech-icon{color:#61dafb}.tech-javascript .tech-icon{color:#f7df1e}.tech-node .tech-icon{color:#68a063}.tech-css .tech-icon{color:#1572b6}.tech-git .tech-icon{color:#f05032}.tech-mysql .tech-icon{color:#00758f}:root[data-theme=dark] .tech-item{background:linear-gradient(165deg,#0f172adb,#131c31c7);border-color:#334155bf;box-shadow:0 12px 26px #00000057}:root[data-theme=dark] .tech-icon{background:#0b1120bf;border-color:#47556994}@keyframes tech-bounce{0%,to{transform:translateY(0) scale(1)}35%{transform:translateY(-12px) scale(1.03)}55%{transform:translateY(0) scale(.985)}72%{transform:translateY(-5px) scale(1.01)}}@keyframes tech-icon-pop{0%,to{transform:scale(1);filter:brightness(1)}35%{transform:scale(1.16) rotate(-4deg);filter:brightness(1.18)}55%{transform:scale(.96);filter:brightness(.96)}}@keyframes tech-title-typing{0%,10%{width:0}35%,55%{width:10ch}85%,to{width:0}}@keyframes tech-title-caret{0%,49%{border-right-color:var(--color-primary)}50%,to{border-right-color:transparent}}@keyframes tech-underline-typing{0%,10%{width:0;opacity:.55}35%,55%{width:100%;opacity:1}85%,to{width:0;opacity:.55}}@keyframes tech-subtitle-reveal{0%,18%{opacity:0;transform:translateY(8px)}30%,70%{opacity:1;transform:translateY(0)}90%,to{opacity:0;transform:translateY(8px)}}@keyframes tech-subtitle-shimmer{to{background-position:-200% 0}}@keyframes tech-subtitle-dark-glow{0%,to{opacity:.84;text-shadow:0 0 8px rgba(103,232,249,.12)}50%{opacity:1;text-shadow:0 0 16px rgba(103,232,249,.3)}}@keyframes tech-subtitle-color-cycle{0%,to{color:#475569}33%{color:#0d9668}66%{color:#0ea5a6}}@keyframes tech-subtitle-color-cycle-dark{0%,to{color:#cbd5e1;-webkit-text-fill-color:#cbd5e1}33%{color:#bbf7d0;-webkit-text-fill-color:#bbf7d0}66%{color:#a5f3fc;-webkit-text-fill-color:#a5f3fc}}@keyframes about-copy-fade{0%,to{opacity:.88}50%{opacity:1}}@keyframes about-btn-sheen{0%,20%{transform:translate(-130%)}45%,to{transform:translate(130%)}}.about-preview{background:var(--color-surface)}.about-preview-content{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4xl);align-items:center}.about-modern-title{position:relative;z-index:3;margin-bottom:var(--space-lg)}.about-modern-title span{display:inline-block;color:var(--color-text);background:linear-gradient(135deg,#0f172a 10%,#0d9668 45%,#06b6d4 70%,#0f172a);background-size:220% 100%;text-shadow:0 0 0 rgba(13,150,104,0);animation:about-title-shimmer 5.5s linear infinite,about-title-glow 3.2s ease-in-out infinite}:root[data-theme=dark] .about-modern-title span{color:#f8fafc;background:none;-webkit-text-fill-color:#f8fafc;text-shadow:0 0 16px rgba(103,232,249,.24);animation:about-title-dark-glow 2.8s ease-in-out infinite}:root[data-theme=dark] .about-modern-title{position:relative;display:inline-block}:root[data-theme=dark] .about-modern-title:after{content:"";position:absolute;left:0;bottom:-8px;width:100%;height:3px;border-radius:var(--radius-full);background:linear-gradient(90deg,#67e8f926,#67e8f9f2,#67e8f926);transform-origin:left center;animation:about-title-dark-underline 3s ease-in-out infinite}.about-preview-text{position:relative;z-index:2}.about-code-card{position:relative;z-index:1}@supports ((-webkit-background-clip: text) or (background-clip: text)){.about-modern-title span{-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}}@keyframes about-title-shimmer{to{background-position:-220% 0}}@keyframes about-title-glow{0%,to{transform:translateY(0);text-shadow:0 0 0 rgba(13,150,104,0)}50%{transform:translateY(-1px);text-shadow:0 0 18px rgba(13,150,104,.24)}}@keyframes about-title-dark-glow{0%,to{text-shadow:0 0 10px rgba(103,232,249,.16)}50%{text-shadow:0 0 20px rgba(103,232,249,.34)}}@keyframes about-title-dark-underline{0%,to{transform:scaleX(.72);opacity:.65}50%{transform:scaleX(1);opacity:1}}.about-modern-copy{margin-bottom:var(--space-lg);position:relative;color:var(--color-text-secondary);opacity:.95;animation:about-copy-fade 6s ease-in-out infinite}.about-modern-copy:before{content:"";position:absolute;left:-10px;top:6px;width:3px;height:calc(100% - 12px);border-radius:var(--radius-full);background:linear-gradient(180deg,#0d966800,#0d966873,#0d966800);opacity:.55}.about-modern-copy-delay{animation-delay:.25s}.about-modern-btn{position:relative;isolation:isolate;margin-top:8px;padding:12px 24px;border-radius:var(--radius-full);border:none;background:linear-gradient(135deg,#14b8a6,#06b6d4 52%,#0ea5e9);color:#fff;box-shadow:0 14px 30px #06b6d447,0 8px 18px #0f172a24;letter-spacing:.02em;font-weight:700;overflow:hidden;transition:transform var(--transition-base),box-shadow var(--transition-base),filter var(--transition-base)}.about-modern-btn:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:inherit;background:linear-gradient(120deg,transparent 12%,rgba(255,255,255,.38) 48%,transparent 82%);transform:translate(-130%);animation:about-btn-sheen var(--anim-loop) ease-in-out infinite;pointer-events:none}.about-modern-btn:after{content:"";position:absolute;top:1px;right:1px;bottom:1px;left:1px;border-radius:inherit;background:linear-gradient(135deg,#ffffff29,#fff0);mix-blend-mode:screen;pointer-events:none}.about-modern-btn:hover{color:#fff;transform:translateY(-2px);filter:saturate(1.08);box-shadow:0 18px 34px #06b6d452,0 10px 24px #02061738}:root[data-theme=dark] .about-modern-btn{background:linear-gradient(135deg,#0d9488,#0891b2 56%,#0284c7);color:#f8fafc;box-shadow:0 16px 32px #06b6d43d,0 10px 22px #02061759}.about-code-card{border-radius:var(--radius-lg);border:1px solid rgba(13,150,104,.22);background:linear-gradient(150deg,#0d96681f,#06b6d40f);box-shadow:0 24px 40px #0206172e;overflow:hidden;min-height:360px}.about-code-header{display:flex;align-items:center;gap:8px;padding:12px 16px;border-bottom:1px solid rgba(148,163,184,.16);background:linear-gradient(135deg,#0f172abf,#1e293bbf)}.code-dot{width:10px;height:10px;border-radius:50%}.code-dot-red{background:#ff6b6b}.code-dot-yellow{background:#ffd166}.code-dot-green{background:#34d399}.code-file{margin-left:8px;font-family:var(--font-mono);font-size:.78rem;letter-spacing:.04em;color:#e2e8f0d9}.about-code-body{margin:0;padding:var(--space-xl);min-height:304px;font-family:var(--font-mono);font-size:.85rem;color:var(--color-text-secondary);line-height:1.85;white-space:pre-wrap;word-break:break-word}.code-caret{margin-left:2px;height:.95em}.featured-section{padding:calc(var(--space-3xl) - 18px) 0}.featured-section .section-header{margin-bottom:var(--space-xl)}.featured-section .featured-header,.featured-section .featured-projects-carousel,.featured-section .view-all-projects-wrap{opacity:0;transform:translateY(34px)}.featured-section .featured-projects-carousel{transform:translateY(38px) rotateX(10deg) scale(.97);transform-origin:center top;perspective:1200px}.featured-section.is-visible .featured-header{animation:featured-scroll-in var(--anim-enter) var(--ease-emphasized) forwards}.featured-section.is-visible .featured-projects-carousel{animation:featured-carousel-in var(--anim-enter) var(--ease-emphasized) .15s forwards,featured-carousel-float var(--anim-float) ease-in-out 1.2s infinite}.featured-section.is-visible .view-all-projects-wrap{animation:featured-scroll-in var(--anim-enter) var(--ease-emphasized) .35s forwards}.featured-header{position:relative}.featured-header h2:after{content:none}.featured-title{display:inline-block;margin-bottom:var(--space-sm);background:linear-gradient(135deg,#0f172a 15%,#0d9668,#06b6d4 75%,#0f172a);background-size:220% 100%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:none}.featured-subtitle{color:var(--color-text-secondary);font-size:1rem;max-width:500px;margin:var(--space-sm) auto 0}:root[data-theme=dark] .featured-subtitle{color:#cbd5e1}.featured-title:after{content:"";display:block;height:4px;width:clamp(140px,22vw,220px);margin:12px auto 0;border-radius:var(--radius-full);background:linear-gradient(90deg,#10b98140,#06b6d4,#10b98140);box-shadow:0 0 20px #06b6d447;opacity:0;animation:none}.featured-section.is-visible .featured-title{animation:featured-title-shimmer var(--anim-loop-slow) linear infinite}.featured-section.is-visible .featured-title:after{opacity:1;animation:featured-underline-breathe 2.8s ease-in-out infinite}.featured-projects-carousel{position:relative;overflow:visible;padding:4px 0 8px}.featured-projects-carousel:before,.featured-projects-carousel:after{content:"";position:absolute;top:0;bottom:0;width:80px;pointer-events:none;z-index:2}.featured-projects-carousel:before{left:0;background:linear-gradient(to right,var(--color-bg),transparent)}.featured-projects-carousel:after{right:0;background:linear-gradient(to left,var(--color-bg),transparent)}.featured-carousel-shell{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px}.featured-nav-btn{width:40px;height:40px;border-radius:50%;border:1px solid rgba(148,163,184,.4);background:linear-gradient(145deg,#ffffffe0,#f1f5f9bd);color:var(--color-text);font-size:1.05rem;font-weight:700;cursor:pointer;transition:transform var(--transition-base),box-shadow var(--transition-base),border-color var(--transition-base),color var(--transition-base)}.featured-nav-btn:hover{transform:translateY(-2px);border-color:#06b6d48c;color:#0b8f63;box-shadow:0 10px 20px #06b6d429}.featured-nav-btn:focus-visible{outline:3px solid rgba(6,182,212,.32);outline-offset:3px}.featured-projects-viewport{overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-ms-overflow-style:none;cursor:ew-resize;perspective:1200px;perspective-origin:center center;padding:8px 6px 18px}.featured-projects-viewport::-webkit-scrollbar{display:none}.featured-projects-track{display:flex;gap:var(--space-lg);width:max-content;transform-style:preserve-3d}.featured-projects-slide{--focus: 0;--focus-abs: 1;flex:0 0 clamp(205px,21vw,265px);opacity:calc(1 - (var(--focus-abs) * .45));transform:translateY(calc(var(--focus-abs) * 18px)) scale(calc(1 - (var(--focus-abs) * .16))) rotateY(calc(var(--focus) * -16deg));filter:saturate(calc(1 - (var(--focus-abs) * .22)));transition:transform .35s ease,opacity .35s ease,filter .35s ease}.featured-projects-slide.is-featured-active{opacity:1;filter:saturate(1.08)}.featured-projects-slide .project-card{height:100%;transform-origin:center center;border-radius:16px;overflow:hidden}.featured-projects-slide.is-featured-active .project-card{box-shadow:0 22px 34px #0206173d,0 0 0 1px #2dd4bf40}.featured-projects-slide .project-card-image{height:148px}.featured-projects-slide .project-card-body{padding:12px}.featured-projects-slide .project-card-title{font-size:1rem}.featured-projects-slide .project-card-description{font-size:.84rem;margin-bottom:8px;line-clamp:1;-webkit-line-clamp:1}.featured-projects-slide .project-card-tags{gap:4px}.featured-projects-slide .project-card-links{padding:0 12px 12px}:root[data-theme=dark] .featured-projects-slide .project-card{border-color:#22d3ee57;background:linear-gradient(150deg,#0b1120f5,#131c31e6);box-shadow:0 14px 30px #02061780}:root[data-theme=dark] .featured-projects-slide.is-featured-active .project-card{box-shadow:0 24px 36px #02061799,0 0 0 1px #2dd4bf5c}:root[data-theme=dark] .featured-projects-slide .project-card-category{color:#5eead4;text-shadow:0 0 10px rgba(45,212,191,.35)}:root[data-theme=dark] .featured-projects-slide .project-card-title{color:#f8fafc;text-shadow:0 0 14px rgba(103,232,249,.2)}:root[data-theme=dark] .featured-projects-slide .project-card-description{color:#dbe7ff}:root[data-theme=dark] .featured-projects-slide .project-card-tags .tag{color:#ecfeff;background:linear-gradient(135deg,#14b8a657,#06b6d442);border:1px solid rgba(45,212,191,.42);box-shadow:0 0 12px #2dd4bf33}:root[data-theme=dark] .featured-projects-slide .project-card-link{color:#67e8f9;text-shadow:0 0 10px rgba(34,211,238,.28)}:root[data-theme=dark] .featured-projects-slide .project-card-link:hover{color:#ccfbf1}.featured-section.is-visible .featured-projects-slide .project-card{animation:featured-card-sway 6s ease-in-out infinite}.featured-section.is-visible .featured-projects-slide:nth-child(odd) .project-card{animation-delay:.55s}.featured-section.is-visible .featured-projects-slide:nth-child(3n) .project-card{animation-delay:1.1s}.view-all-projects-wrap{text-align:center;margin-top:var(--space-xl)}.view-all-glow-btn{position:relative;isolation:isolate;border:none;border-radius:var(--radius-full);padding:13px 30px;color:var(--color-text-on-primary);background:transparent;overflow:hidden}.view-all-glow-btn:before{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border-radius:inherit;background:conic-gradient(from 0deg,#38bdf8,#60a5fa,#818cf8,#22d3ee,#38bdf8);animation:view-all-ring-spin 3s linear infinite;z-index:-2}.view-all-glow-btn:after{content:"";position:absolute;top:2px;right:2px;bottom:2px;left:2px;border-radius:inherit;background:linear-gradient(135deg,#1e293bf0,#2563ebeb);box-shadow:inset 0 0 0 1px #ffffff24;z-index:-1}.view-all-glow-btn:hover{transform:translateY(-2px);box-shadow:0 12px 30px #38bdf847,0 8px 22px #6366f13d}.view-all-glow-btn:focus-visible{outline:3px solid rgba(34,211,238,.35);outline-offset:3px}@keyframes view-all-ring-spin{to{transform:rotate(360deg)}}@keyframes featured-title-shimmer{to{background-position:-220% 0}}@keyframes featured-underline-breathe{0%,to{transform:scaleX(.92);opacity:.75}50%{transform:scaleX(1.06);opacity:1}}@keyframes featured-scroll-in{to{opacity:1;transform:translateY(0)}}@keyframes featured-carousel-in{to{opacity:1;transform:translateY(0) rotateX(0) scale(1)}}@keyframes featured-carousel-float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes featured-card-sway{0%,to{transform:rotateY(0) rotate(0) translateY(0)}50%{transform:rotateY(2.1deg) rotate(-.8deg) translateY(-4px)}}@media (prefers-reduced-motion: reduce){.featured-section .featured-header,.featured-section .featured-projects-carousel,.featured-section .view-all-projects-wrap{opacity:1;transform:none;animation:none}.featured-projects-track{animation:none}.featured-projects-slide{opacity:1;transform:none;filter:none;transition:none}.featured-section.is-visible .featured-projects-slide .project-card{animation:none}.view-all-glow-btn:before{animation:none}.hero-btn-primary,.hero-btn-secondary,.hero-btn-label,.hero-btn-primary:before,.hero-btn-secondary:before{animation:none}.about-modern-title span,.about-modern-copy,.about-modern-btn:before{animation:none}.cta-section:before,.cta-section:after,.cta-title,.cta-title-typing{animation:none}.cta-title,.cta-copy,.cta-button{opacity:1;transform:none}}.cta-section{position:relative;overflow:hidden;background:radial-gradient(circle at 15% 20%,rgba(16,185,129,.16),transparent 42%),radial-gradient(circle at 85% 78%,rgba(6,182,212,.2),transparent 40%),linear-gradient(160deg,#090f1b,#0b1120 55%,#0e1b32);text-align:center}.cta-section:before,.cta-section:after{content:"";position:absolute;border-radius:50%;pointer-events:none}.cta-section:before{width:360px;height:360px;left:-120px;top:-140px;background:radial-gradient(circle,#34d39942,#34d39900 72%);animation:cta-blob-float 9s ease-in-out infinite}.cta-section:after{width:320px;height:320px;right:-100px;bottom:-130px;background:radial-gradient(circle,#22d3ee47,#22d3ee00 72%);animation:cta-blob-float 9s ease-in-out 1.4s infinite reverse}.cta-section .container{position:relative;z-index:1;max-width:860px}.cta-title,.cta-copy,.cta-button{opacity:0;transform:translateY(32px)}.cta-section.is-visible .cta-title{animation:cta-rise-in var(--anim-enter) var(--ease-emphasized) forwards}.cta-section.is-visible .cta-copy{animation:cta-rise-in var(--anim-enter) var(--ease-emphasized) .18s forwards}.cta-section.is-visible .cta-button{animation:cta-rise-in var(--anim-enter) var(--ease-emphasized) .34s forwards}.cta-title{margin-bottom:var(--space-md);line-height:1.12}.cta-title-typing{display:inline-block;max-width:100%;white-space:nowrap;overflow:hidden;width:0;border-right:2px solid rgba(103,232,249,.9);color:#e2e8f0;background:linear-gradient(135deg,#e2e8f0 5%,#86efac 45%,#67e8f9 75%,#e2e8f0 95%);background-size:220% 100%;animation:cta-title-typing 6.4s steps(28,end) infinite,cta-title-caret var(--anim-caret) step-end infinite,cta-title-shimmer 6.4s linear infinite}@supports ((-webkit-background-clip: text) or (background-clip: text)){.cta-title-typing{-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}}.cta-copy{color:var(--color-text-muted);max-width:500px;margin:0 auto var(--space-2xl);font-size:1.02rem}:root[data-theme=dark] .cta-copy{color:#cbd5e1}.cta-copy-animated{display:inline;background:linear-gradient(100deg,var(--color-text-muted),#c8d7eb,var(--color-text-muted));background-size:220% 100%;-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:cta-copy-shimmer var(--anim-loop) linear infinite}.cta-button{position:relative;isolation:isolate;padding:12px 26px;border-radius:var(--radius-full);border:none;background:transparent;color:#f8fafc;box-shadow:0 10px 20px #02061757;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);overflow:hidden;transition:transform var(--transition-base),box-shadow var(--transition-base),border-color var(--transition-base),color var(--transition-base)}.cta-button:before{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border-radius:inherit;background:conic-gradient(from 0deg,#f59e0b,#fb7185,#f97316,#fbbf24,#f59e0b);animation:cta-button-ring-spin var(--anim-loop) linear infinite;z-index:-2}.cta-button:after{content:"";position:absolute;top:2px;right:2px;bottom:2px;left:2px;border-radius:inherit;background:linear-gradient(135deg,#1e293bf2,#7e22cee0);box-shadow:inset 0 0 0 1px #ffffff1f;z-index:-1;pointer-events:none}.cta-button:hover{color:#fff;transform:translateY(-2px);box-shadow:0 14px 28px #0206176b,0 0 0 1px #fb923c3d}.cta-button:hover:after{background:linear-gradient(135deg,#334155f5,#8b5cf6e6)}.cta-button:focus-visible{outline:3px solid rgba(251,146,60,.35);outline-offset:3px}@keyframes cta-rise-in{to{opacity:1;transform:translateY(0)}}@keyframes cta-title-shimmer{to{background-position:-220% 0}}@keyframes cta-title-typing{0%,10%{width:0}35%,60%{width:28ch}90%,to{width:0}}@keyframes cta-title-caret{0%,49%{border-right-color:#67e8f9e6}50%,to{border-right-color:transparent}}@keyframes cta-copy-shimmer{to{background-position:-220% 0}}@keyframes cta-button-ring-spin{to{transform:rotate(360deg)}}@keyframes cta-blob-float{0%,to{transform:translateZ(0) scale(1)}50%{transform:translate3d(0,-18px,0) scale(1.08)}}@media (max-width: 768px){.cta-title-typing{white-space:normal;width:auto;border-right:0;animation:none}.hero-content{grid-template-columns:1fr;text-align:center;gap:var(--space-2xl)}.hero-greeting,.hero-actions{justify-content:center}.hero-visual{order:-1}.hero-tech-showcase{display:none}.hero-tech-trio{gap:16px}.hero-tech-badge{width:auto;height:auto}.hero-tech-badge svg{font-size:4.8rem}.about-preview-content{grid-template-columns:1fr}.featured-projects-carousel:before,.featured-projects-carousel:after{width:42px}.featured-carousel-shell{grid-template-columns:1fr;gap:8px}.featured-nav-btn{display:none}.featured-projects-slide{flex-basis:min(64vw,240px)}}.project-detail{padding-top:calc(var(--navbar-height) + var(--space-3xl));position:relative;overflow:hidden;background:radial-gradient(circle at 8% 14%,rgba(16,185,129,.08),transparent 35%),radial-gradient(circle at 90% 82%,rgba(6,182,212,.1),transparent 36%),var(--color-bg)}.project-detail-hero,.project-detail-image,.detail-section,.project-detail-sidebar{opacity:0;transform:translateY(24px)}.project-detail.is-ready .project-detail-hero{animation:detail-rise .65s var(--ease-emphasized) forwards}.project-detail.is-ready .project-detail-image{animation:detail-rise .65s var(--ease-emphasized) .12s forwards}.project-detail.is-ready .detail-section{animation:detail-rise .6s var(--ease-emphasized) .2s forwards}.project-detail.is-ready .project-detail-sidebar{animation:detail-rise .6s var(--ease-emphasized) .28s forwards}.project-detail-hero{margin-bottom:var(--space-2xl)}.project-detail-back{display:inline-flex;align-items:center;gap:var(--space-sm);font-size:.86rem;font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:#0f766e;margin-bottom:var(--space-lg);transition:color var(--transition-fast),transform var(--transition-fast)}.project-detail-back:hover{color:#0891b2;transform:translate(-2px)}.project-detail-hero-shell{display:grid;grid-template-columns:1.2fr .8fr;gap:var(--space-xl);border-radius:22px;border:1px solid rgba(148,163,184,.28);background:radial-gradient(circle at 86% 8%,rgba(16,185,129,.1),transparent 34%),linear-gradient(145deg,#ffffffe6,#f1f5f9c7);box-shadow:0 20px 40px #0f172a1a;padding:clamp(1rem,2.4vw,1.6rem)}.project-detail-category{font-family:var(--font-mono);font-size:.75rem;color:#0f766e;text-transform:uppercase;letter-spacing:.09em;margin-bottom:var(--space-sm)}.project-detail-title{font-size:clamp(2rem,4vw,3rem);margin-bottom:var(--space-md)}.project-detail-summary{font-size:1.02rem;max-width:700px;margin-bottom:var(--space-xl);color:var(--color-text-secondary)}.project-detail-meta{display:flex;gap:10px;flex-wrap:wrap}.project-detail-quickstats{display:grid;gap:10px}.quickstat-item{border-radius:14px;border:1px solid rgba(148,163,184,.3);background:linear-gradient(145deg,#ffffffe0,#f1f5f9bf);padding:12px}.quickstat-item .label{display:block;font-family:var(--font-mono);font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-muted);margin-bottom:4px}.quickstat-item strong{font-size:1.4rem;color:#0b8f63}.project-detail-image{width:100%;border-radius:18px;overflow:hidden;border:1px solid rgba(148,163,184,.24);box-shadow:0 18px 34px #0f172a1f;margin-bottom:var(--space-3xl)}.project-detail-image img{width:100%;height:auto;max-height:500px;object-fit:cover;transition:transform var(--transition-slow)}.project-detail-image:hover img{transform:scale(1.03)}.project-detail-grid{display:grid;grid-template-columns:2fr 1fr;gap:var(--space-2xl)}.detail-section{margin-bottom:var(--space-2xl)}.detail-section h3{margin-bottom:var(--space-lg);display:inline-flex;align-items:center;gap:10px;font-size:1.2rem}.detail-section h3:before{content:"";width:7px;height:24px;border-radius:999px;background:linear-gradient(180deg,#10b981,#06b6d4)}.features-list{display:flex;flex-direction:column;gap:10px}.feature-item{display:flex;align-items:flex-start;gap:var(--space-md);padding:12px;border-radius:14px;border:1px solid rgba(148,163,184,.24);background:linear-gradient(145deg,#ffffffe0,#f1f5f9bd);opacity:0;transform:translate(-10px);animation:detail-float-in .55s ease forwards}.feature-icon{flex-shrink:0;width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;background:linear-gradient(135deg,#10b98138,#06b6d433);color:#0f766e;font-size:1rem;font-weight:700}.feature-item p{font-size:.92rem;color:var(--color-text-secondary)}.challenge-card{padding:14px;border-radius:14px;border:1px solid rgba(148,163,184,.24);background:radial-gradient(circle at 95% 5%,rgba(56,189,248,.09),transparent 38%),linear-gradient(145deg,#ffffffe0,#f1f5f9bd);margin-bottom:var(--space-md);opacity:0;transform:translateY(10px);animation:detail-float-in .55s ease forwards}.challenge-card h4{font-size:.95rem;margin-bottom:var(--space-sm);color:#0f766e}.challenge-card p{font-size:.88rem;color:var(--color-text-secondary)}.project-detail-sidebar{position:sticky;top:calc(var(--navbar-height) + var(--space-xl))}.sidebar-card{border:1px solid rgba(148,163,184,.24);border-radius:16px;padding:var(--space-xl);margin-bottom:var(--space-lg);background:linear-gradient(145deg,#ffffffe6,#f1f5f9cc);box-shadow:0 12px 24px #0f172a14}.sidebar-card h4{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-muted);margin-bottom:var(--space-lg)}.sidebar-tech-list{display:flex;flex-wrap:wrap;gap:8px}.sidebar-links{display:flex;flex-direction:column;gap:var(--space-sm)}.sidebar-links .btn{width:100%;justify-content:center}@keyframes detail-rise{to{opacity:1;transform:translateY(0)}}@keyframes detail-float-in{to{opacity:1;transform:translate(0)}}:root[data-theme=dark] .project-detail{background:radial-gradient(circle at 8% 14%,rgba(16,185,129,.14),transparent 36%),radial-gradient(circle at 90% 82%,rgba(6,182,212,.16),transparent 38%),var(--color-bg)}:root[data-theme=dark] .project-detail-back{color:#99f6e4}:root[data-theme=dark] .project-detail-hero-shell,:root[data-theme=dark] .quickstat-item,:root[data-theme=dark] .feature-item,:root[data-theme=dark] .challenge-card,:root[data-theme=dark] .sidebar-card,:root[data-theme=dark] .project-detail-image{border-color:#47556999;background:radial-gradient(circle at 86% 8%,rgba(16,185,129,.12),transparent 34%),linear-gradient(145deg,#0f172ae6,#131c31d1);box-shadow:0 18px 34px #02061773}:root[data-theme=dark] .project-detail-title,:root[data-theme=dark] .feature-item p,:root[data-theme=dark] .challenge-card p{color:#e2e8f0}:root[data-theme=dark] .project-detail-summary,:root[data-theme=dark] .sidebar-card h4,:root[data-theme=dark] .quickstat-item .label{color:#cbd5e1}:root[data-theme=dark] .quickstat-item strong,:root[data-theme=dark] .challenge-card h4,:root[data-theme=dark] .project-detail-category{color:#67e8f9}@media (max-width: 900px){.project-detail-hero-shell,.project-detail-grid{grid-template-columns:1fr}.project-detail-sidebar{position:static}}@media (prefers-reduced-motion: reduce){.project-detail-hero,.project-detail-image,.detail-section,.project-detail-sidebar,.feature-item,.challenge-card{opacity:1!important;transform:none!important;animation:none!important}}.about-page{padding-top:calc(var(--navbar-height) + var(--space-xl));position:relative;overflow:hidden}.about-page:before,.about-page:after{content:"";position:absolute;border-radius:50%;pointer-events:none}.about-page:before{width:500px;height:500px;top:-240px;left:-180px;background:radial-gradient(circle,#10b98129,#10b98100 72%)}.about-page:after{width:520px;height:520px;right:-220px;top:260px;background:radial-gradient(circle,#06b6d424,#06b6d400 72%)}.about-reveal{opacity:0;transform:translateY(34px)}.about-reveal.is-visible{animation:about-reveal-in var(--anim-enter) var(--ease-emphasized) forwards}.about-section-header h2{display:inline-block;padding:4px 14px 8px;border-radius:14px;color:#0b1324;letter-spacing:.01em;text-shadow:0 1px 0 rgba(255,255,255,.7),0 0 14px rgba(6,182,212,.15);background:linear-gradient(135deg,#ffffffb8,#f1f5f96b);box-shadow:0 10px 22px #0f172a14}.about-section-header p{display:block;max-width:760px;margin:14px auto 0;padding:0;border:0;background:none;box-shadow:none;color:#334155;line-height:1.75;letter-spacing:.012em;text-align:center;text-shadow:0 0 8px rgba(6,182,212,.12);animation:about-subtitle-breathe 3.8s ease-in-out infinite,about-subtitle-color 5.8s ease-in-out infinite}.about-section-header h2:after{width:86px;background:linear-gradient(90deg,#10b98133,#06b6d4,#10b98133);box-shadow:0 0 18px #06b6d442}.about-hero-shell{position:relative;padding:clamp(1.2rem,3vw,2.2rem);max-width:900px;margin:0 auto;border-radius:24px;border:1px solid rgba(148,163,184,.28);background:radial-gradient(circle at 50% 0%,rgba(16,185,129,.14),transparent 40%),radial-gradient(circle at 100% 100%,rgba(6,182,212,.14),transparent 42%),linear-gradient(145deg,#ffffffe6,#f1f5f9c7);box-shadow:0 22px 46px #0f172a1a;overflow:hidden}.about-hero-shell:before{content:"";position:absolute;top:-90px;left:50%;transform:translate(-50%);width:240px;height:240px;border-radius:50%;background:radial-gradient(circle,#10b98138,#10b98100);pointer-events:none;filter:blur(1px)}.about-info{display:flex;flex-direction:column;align-items:center;text-align:center;gap:2px}.about-kicker{display:inline-flex;align-items:center;justify-content:center;width:fit-content;padding:6px 12px;border-radius:var(--radius-full);border:1px solid rgba(16,185,129,.28);background:linear-gradient(135deg,#10b98124,#22d3ee26);color:#0f766e;font-family:var(--font-mono);font-size:.75rem;letter-spacing:.08em;text-transform:uppercase}.about-info h1{margin-top:var(--space-md);margin-bottom:var(--space-sm);line-height:1.12;font-size:clamp(1.8rem,4vw,2.7rem);max-width:18ch}.about-role{margin-bottom:var(--space-lg);color:var(--color-primary);font-size:1.04rem;font-weight:600}.about-bio p{margin-bottom:.8rem;font-size:.96rem;max-width:66ch;margin-left:auto;margin-right:auto}.about-highlights{margin-top:.85rem;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:100%;max-width:620px}.about-highlight{display:flex;flex-direction:column;gap:2px;padding:8px 10px;border-radius:14px;border:1px solid rgba(16,185,129,.22);background:linear-gradient(135deg,#10b98124,#06b6d41a)}.about-highlight .value{font-family:var(--font-heading);font-size:1.1rem;font-weight:700;color:#065f46}.about-highlight .label{font-size:.74rem;letter-spacing:.05em;text-transform:uppercase;color:var(--color-text-secondary)}.about-download{margin-top:var(--space-md);display:flex;justify-content:center}.about-cv-btn{border-radius:var(--radius-full);padding:11px 22px;color:#fff;background:linear-gradient(120deg,#0d9668,#14b8a6 45%,#06b6d4);background-size:220% 100%;box-shadow:0 12px 24px #0d96683d;font-weight:700;animation:about-btn-gradient var(--anim-loop) linear infinite}.about-cv-btn:hover{color:#fff;transform:translateY(-2px)}.skills-section{position:relative}.skills-section .about-section-header h2{animation:about-skills-title-color 4.6s ease-in-out infinite}.skills-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--space-lg)}.skill-category{position:relative;padding:1rem;border-radius:18px;border:1px solid rgba(148,163,184,.24);background:linear-gradient(145deg,#ffffffe6,#f1f5f9c2);box-shadow:0 14px 30px #0f172a14;overflow:hidden;isolation:isolate;transition:transform var(--transition-spring),box-shadow var(--transition-spring),border-color var(--transition-spring)}.skill-category:before{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border-radius:inherit;background:conic-gradient(from 0deg,#14b8a6d1,#06b6d4d6,#3b82f6cc,#14b8a6d1);opacity:0;transition:opacity var(--transition-base);animation:about-skill-ring 5.4s linear infinite;z-index:-2}.skill-category:after{content:"";position:absolute;top:1px;right:1px;bottom:1px;left:1px;border-radius:inherit;background:linear-gradient(145deg,#fffffff2,#f1f5f9d6);z-index:-1}.skill-category:hover{transform:translateY(-6px);border-color:#06b6d457;box-shadow:0 20px 36px #06b6d41f,0 12px 26px #0206171a}.skill-category:hover:before{opacity:1}.skill-category-icon{width:46px;height:46px;margin-bottom:12px;display:inline-flex;align-items:center;justify-content:center;border-radius:12px;color:#fff;font-size:1.15rem;background:linear-gradient(135deg,#0d9668,#06b6d4);box-shadow:0 8px 16px #06b6d433}.skill-category h3{margin-bottom:10px;font-size:1.02rem}.skill-list{display:flex;flex-wrap:wrap;gap:8px}.skill-tag{padding:6px 11px;border-radius:var(--radius-full);border:1px solid rgba(148,163,184,.35);background:#f8fafbe0;color:var(--color-text-secondary);font-size:.78rem;font-weight:600}.timeline{position:relative;max-width:860px;margin:0 auto}.timeline:before{content:"";position:absolute;left:11px;top:0;bottom:0;width:2px;background:linear-gradient(180deg,#10b98126,#06b6d4bf,#10b98126)}.timeline-item{position:relative;display:grid;grid-template-columns:140px 1fr;gap:var(--space-lg);padding-left:38px;padding-bottom:var(--space-xl)}.timeline-item:last-child{padding-bottom:0}.timeline-dot{position:absolute;top:4px;left:4px;width:16px;height:16px;border-radius:50%;background:#14b8a6;border:3px solid rgba(248,250,251,.9);box-shadow:0 0 0 4px #14b8a633}.timeline-date{padding-top:1px;font-family:var(--font-mono);font-size:.8rem;color:#0d9668}.timeline-content{padding:12px;border-radius:14px;border:1px solid rgba(148,163,184,.24);background:linear-gradient(145deg,#ffffffe0,#f1f5f9b8);box-shadow:0 10px 22px #0f172a14}.timeline-content h3{margin-bottom:4px;font-size:1.02rem}.timeline-content .company{margin-bottom:var(--space-sm);color:#0f766e;font-size:.9rem;font-weight:600}.timeline-content p{font-size:.9rem}.about-education{position:relative}.education-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-lg)}.education-card{padding:1rem;border-radius:16px;border:1px solid rgba(148,163,184,.24);background:linear-gradient(145deg,#ffffffe6,#f1f5f9bf);box-shadow:0 14px 26px #0f172a14;transition:transform var(--transition-spring),box-shadow var(--transition-spring),border-color var(--transition-spring)}.education-card:hover{transform:translateY(-5px);border-color:#06b6d457;box-shadow:0 20px 34px #06b6d41c,0 10px 22px #0206171a}.education-card h3{margin-bottom:4px;font-size:1rem}.education-card .institution{margin-bottom:8px;color:#0f766e;font-weight:600}.education-card .year{font-family:var(--font-mono);font-size:.8rem;color:var(--color-text-muted)}.about-cta{text-align:center}.about-cta-panel{max-width:760px;margin:0 auto;padding:clamp(1.2rem,2.8vw,2rem);border-radius:20px;border:1px solid rgba(148,163,184,.24);background:linear-gradient(145deg,#0f172af0,#131c31db);box-shadow:0 20px 42px #02061759}.about-cta-panel h2{color:#f8fafc;margin-bottom:var(--space-sm)}.about-cta-panel p{color:#cbd5e1;max-width:520px;margin:0 auto var(--space-xl)}.about-cta-btn{border-radius:var(--radius-full);color:#fff;background:linear-gradient(120deg,#14b8a6,#06b6d4 45%,#3b82f6);background-size:220% 100%;box-shadow:0 14px 30px #06b6d442;animation:about-btn-gradient var(--anim-loop) linear infinite}.about-cta-btn:hover{color:#fff;transform:translateY(-2px)}:root[data-theme=dark] .about-section-header h2{color:#f8fafc;background:linear-gradient(145deg,#0f172ac2,#131c31a8);box-shadow:0 12px 24px #02061757;text-shadow:0 0 14px rgba(103,232,249,.24)}:root[data-theme=dark] .about-section-header p{color:#dbeafe;text-shadow:0 0 12px rgba(103,232,249,.2);animation:about-subtitle-breathe 3.8s ease-in-out infinite,about-subtitle-color-dark 5.8s ease-in-out infinite}:root[data-theme=dark] .about-hero-shell,:root[data-theme=dark] .skill-category,:root[data-theme=dark] .timeline-content,:root[data-theme=dark] .education-card{border-color:#4755698f;background:linear-gradient(145deg,#0f172ae0,#131c31c7);box-shadow:0 18px 34px #0206176b}:root[data-theme=dark] .about-hero-shell{background:radial-gradient(circle at 50% 0%,rgba(16,185,129,.18),transparent 42%),radial-gradient(circle at 100% 100%,rgba(6,182,212,.16),transparent 42%),linear-gradient(145deg,#0f172ae6,#131c31cc)}:root[data-theme=dark] .skill-category{border-color:#22d3ee47;box-shadow:0 18px 34px #02061775,0 0 0 1px #22d3ee14}:root[data-theme=dark] .skill-category:before{opacity:.72}:root[data-theme=dark] .skill-category:after{background:linear-gradient(145deg,#0f172af0,#131c31d6)}:root[data-theme=dark] .skill-category:hover{border-color:#2dd4bf6b;box-shadow:0 22px 40px #02061785,0 0 22px #22d3ee29}:root[data-theme=dark] .about-kicker{color:#99f6e4;border-color:#2dd4bf57;background:linear-gradient(135deg,#10b9813d,#22d3ee33)}:root[data-theme=dark] .about-role,:root[data-theme=dark] .timeline-date,:root[data-theme=dark] .timeline-content .company,:root[data-theme=dark] .education-card .institution{color:#67e8f9}:root[data-theme=dark] .about-highlight{border-color:#2dd4bf59;background:linear-gradient(135deg,#10b98138,#06b6d429)}:root[data-theme=dark] .about-highlight .value{color:#ccfbf1}:root[data-theme=dark] .about-highlight .label,:root[data-theme=dark] .skill-tag,:root[data-theme=dark] .education-card .year{color:#cbd5e1}:root[data-theme=dark] .skill-tag{border-color:#47556994;background:#0b1120b8}:root[data-theme=dark] .timeline-dot{border-color:#0f172ae6}@keyframes about-reveal-in{to{opacity:1;transform:translateY(0)}}@keyframes about-subtitle-breathe{0%,to{opacity:.92}50%{opacity:1}}@keyframes about-subtitle-color{0%,to{color:#334155}33%{color:#0f766e}66%{color:#0369a1}}@keyframes about-subtitle-color-dark{0%,to{color:#dbeafe}33%{color:#99f6e4}66%{color:#7dd3fc}}@keyframes about-btn-gradient{to{background-position:-220% 0}}@keyframes about-skills-title-color{0%,to{color:#0b1324;text-shadow:0 0 10px rgba(6,182,212,.12)}33%{color:#0f766e;text-shadow:0 0 14px rgba(16,185,129,.2)}66%{color:#0369a1;text-shadow:0 0 16px rgba(6,182,212,.24)}}:root[data-theme=dark] .skills-section .about-section-header h2{animation:about-skills-title-color-dark 4.6s ease-in-out infinite}@keyframes about-skills-title-color-dark{0%,to{color:#f8fafc;text-shadow:0 0 14px rgba(103,232,249,.24)}33%{color:#99f6e4;text-shadow:0 0 16px rgba(45,212,191,.28)}66%{color:#7dd3fc;text-shadow:0 0 18px rgba(56,189,248,.3)}}@keyframes about-skill-ring{to{transform:rotate(360deg)}}@media (max-width: 1024px){.about-hero-shell{padding:clamp(1rem,3vw,1.4rem)}}@media (max-width: 768px){.timeline-item{grid-template-columns:1fr;gap:10px}.timeline-date{order:-1}.about-highlights{grid-template-columns:1fr}}@media (prefers-reduced-motion: reduce){.about-reveal{opacity:1;transform:none;animation:none}.about-section-header h2,.about-section-header p,.skills-section .about-section-header h2,.skill-category:before,.about-cv-btn,.about-cta-btn{animation:none}}.contact-page{padding-top:calc(var(--navbar-height) + var(--space-3xl));position:relative;overflow:hidden;background:radial-gradient(circle at 8% 10%,rgba(16,185,129,.08),transparent 34%),radial-gradient(circle at 90% 88%,rgba(6,182,212,.09),transparent 36%),var(--color-bg)}.contact-hero{position:relative;overflow:visible;padding:var(--space-3xl) 0 var(--space-xl)}.contact-hero:before,.contact-hero:after{content:"";position:absolute;border-radius:50%;pointer-events:none}.contact-hero:before{width:340px;height:340px;top:-140px;left:-120px;background:radial-gradient(circle,#10b98133,#10b98100 72%)}.contact-hero:after{width:320px;height:320px;right:-120px;bottom:-120px;background:radial-gradient(circle,#06b6d42e,#06b6d400 72%)}.contact-header{position:relative;z-index:1;padding-top:10px;margin-bottom:var(--space-xl)}.contact-header h1{display:inline-block;position:relative;margin-bottom:var(--space-md);line-height:1.15;padding-top:.08em;color:#0f172a;text-shadow:0 1px 0 rgba(255,255,255,.65),0 0 14px rgba(6,182,212,.18);animation:contact-title-float 3.2s ease-in-out infinite;transform-origin:center;z-index:2}.contact-header h1:after{content:"";position:absolute;left:50%;transform:translate(-50%);bottom:-10px;width:clamp(140px,24vw,220px);height:4px;border-radius:var(--radius-full);background:linear-gradient(90deg,#10b98126,#06b6d4f2,#10b98126);box-shadow:0 0 20px #06b6d44d;animation:contact-title-underline 3s ease-in-out infinite}.contact-header p{animation:contact-subtitle-shimmer 5.6s linear infinite}.contact-kicker{display:inline-flex;align-items:center;padding:6px 12px;margin-bottom:var(--space-md);border-radius:var(--radius-full);border:1px solid rgba(16,185,129,.28);font-family:var(--font-mono);font-size:.74rem;letter-spacing:.08em;text-transform:uppercase;color:#0f766e;background:linear-gradient(135deg,#10b98124,#22d3ee26);box-shadow:0 8px 18px #10b9811f;animation:contact-kicker-pulse 2.8s ease-in-out infinite}.contact-main.section{padding-top:var(--space-lg);padding-bottom:calc(var(--space-4xl) + var(--space-lg))}.contact-main{position:relative}.contact-main .container{position:relative;z-index:1}.contact-main:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:120px;pointer-events:none;z-index:0;background:linear-gradient(to bottom,#f8fafb00,#f8fafbd1 55%,#f8fafb)}.contact-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:var(--space-2xl);align-items:start}.contact-info-card,.contact-form-wrapper{border:1px solid rgba(148,163,184,.24);border-radius:20px;background:linear-gradient(145deg,#ffffffdb,#f1f5f9b8);box-shadow:0 18px 38px #0f172a1a;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.contact-info-card{padding:clamp(1.15rem,2.8vw,1.8rem);position:relative;overflow:hidden;isolation:isolate;transition:transform var(--transition-spring),box-shadow var(--transition-spring),border-color var(--transition-spring)}.contact-info-card:before{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border-radius:inherit;background:conic-gradient(from 0deg,#14b8a6e6,#06b6d4e0,#3b82f6d9,#14b8a6e6);animation:contact-info-ring 7.5s linear infinite;z-index:-2}.contact-info-card:after{content:"";position:absolute;top:1px;right:1px;bottom:1px;left:1px;border-radius:inherit;background:radial-gradient(circle at 18% 16%,rgba(20,184,166,.18),transparent 38%),radial-gradient(circle at 82% 84%,rgba(6,182,212,.16),transparent 42%),linear-gradient(145deg,#fffffff5,#f1f5f9db);z-index:-1}.contact-info-card:hover{transform:translateY(-6px);border-color:#06b6d473;box-shadow:0 24px 44px #06b6d429,0 16px 32px #02061729}.contact-info-card h2{margin-bottom:var(--space-md)}.contact-info-card>p{margin-bottom:var(--space-xl)}.contact-details{display:flex;flex-direction:column;gap:12px;margin-bottom:var(--space-xl)}.contact-detail-item{display:flex;align-items:center;gap:12px;padding:10px;border-radius:14px;background:#ffffff80;border:1px solid rgba(148,163,184,.22);transition:transform var(--transition-base),box-shadow var(--transition-base),border-color var(--transition-base),background var(--transition-base)}.contact-detail-item:hover{transform:translate(4px);border-color:#06b6d45c;background:#ffffffc7;box-shadow:0 12px 22px #06b6d41a}.contact-detail-icon{width:44px;height:44px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;border-radius:12px;font-size:1.1rem;color:#fff;background:linear-gradient(135deg,#0d9668,#06b6d4);box-shadow:0 8px 16px #06b6d43d}.contact-detail-text h3{font-size:.92rem;font-weight:700;margin-bottom:2px}.contact-detail-text p{font-size:.9rem;color:var(--color-text-secondary)}.contact-social-title{font-size:.9rem;margin-bottom:10px}.contact-social{display:flex;gap:10px}.contact-social a{position:relative;isolation:isolate;display:inline-flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:var(--radius-full);border:1px solid rgba(6,182,212,.4);background:linear-gradient(135deg,#0f172aeb,#1e293bdb);color:#e2e8f0;font-size:1.2rem;overflow:hidden;box-shadow:0 10px 20px #02061747;transition:transform var(--transition-base),box-shadow var(--transition-base),color var(--transition-base),border-color var(--transition-base),background var(--transition-base);animation:contact-social-float 2.8s ease-in-out infinite,contact-social-pulse 3.6s ease-in-out infinite}.contact-social a:nth-child(2){animation-delay:.18s}.contact-social a:nth-child(3){animation-delay:.36s}.contact-social a:before{content:"";position:absolute;top:-2px;right:-2px;bottom:-2px;left:-2px;border-radius:inherit;background:conic-gradient(from 0deg,#2dd4bff2,#22d3eee6,#3b82f6db,#2dd4bff2);animation:contact-social-ring 4.5s linear infinite;z-index:-2}.contact-social a:after{content:"";position:absolute;top:2px;right:2px;bottom:2px;left:2px;border-radius:inherit;background:linear-gradient(135deg,#0f172af2,#1e293beb);box-shadow:inset 0 0 0 1px #ffffff1f;z-index:-1}.contact-social a:hover{transform:translateY(-4px) scale(1.06);color:#fff;border-color:#34d399bf;box-shadow:0 16px 28px #02061761,0 0 0 1px #34d39957}.contact-social a:active{transform:translateY(-1px) scale(.98)}.contact-form-wrapper{padding:clamp(1.2rem,2.8vw,1.9rem);position:relative;overflow:hidden;isolation:isolate}.contact-form-wrapper:before{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border-radius:inherit;background:conic-gradient(from 0deg,#14b8a6e6,#06b6d4e6,#0ea5e9e6,#14b8a6e6);animation:contact-shell-spin 8.5s linear infinite;z-index:-2}.contact-form-wrapper:after{content:"";position:absolute;top:1px;right:1px;bottom:1px;left:1px;border-radius:inherit;background:radial-gradient(circle at 20% 12%,rgba(20,184,166,.16),transparent 42%),radial-gradient(circle at 82% 84%,rgba(6,182,212,.16),transparent 44%),linear-gradient(145deg,#fffffff0,#f1f5f9e0);z-index:-1}.success-message{padding:12px;margin-bottom:var(--space-lg);border-radius:12px;border:1px solid rgba(16,185,129,.4);color:#065f46;background:linear-gradient(135deg,#10b98129,#22d3ee1f);font-size:.9rem;font-weight:600}.contact-form{display:flex;flex-direction:column;gap:var(--space-md)}.contact-form>*{opacity:1;transform:none;animation:none}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-md)}.form-group{display:flex;flex-direction:column;gap:7px}.form-group label{font-size:.83rem;letter-spacing:.01em;font-weight:700;color:#0f172a;transition:color var(--transition-fast),transform var(--transition-fast)}.form-group input,.form-group textarea{width:100%;padding:12px 14px;border-radius:12px;border:1px solid transparent;background:linear-gradient(#f8fafbf2,#f8fafbf2) padding-box,linear-gradient(135deg,#94a3b88c,#94a3b838) border-box;color:var(--color-text);font-family:var(--font-body);font-size:.94rem;outline:none;box-shadow:0 6px 14px #0f172a0f;transition:transform var(--transition-fast),box-shadow var(--transition-fast),background var(--transition-fast)}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--color-text-muted)}.form-group input:focus,.form-group textarea:focus{transform:translateY(-1px);background:linear-gradient(#fff,#fff) padding-box,linear-gradient(135deg,#14b8a6f2,#06b6d4f2,#3b82f6e6) border-box;box-shadow:0 0 0 3px #06b6d429,0 12px 24px #06b6d429}.form-group textarea{resize:vertical;min-height:150px}.form-group .error-text{font-size:.78rem;color:#ef4444}.form-group input.error,.form-group textarea.error{border-color:#ef4444}.contact-submit-btn{display:inline-flex!important;visibility:visible!important;opacity:1!important;width:100%;min-height:48px;justify-content:center;margin-top:6px;border:none;border-radius:var(--radius-full);color:#fff;background:linear-gradient(120deg,#0d9668,#14b8a6 45%,#06b6d4);background-size:220% 100%;box-shadow:0 14px 28px #0d966842,0 8px 20px #06b6d433;font-weight:700;letter-spacing:.03em;position:relative;z-index:2;text-transform:uppercase;text-shadow:0 1px 0 rgba(0,0,0,.16);animation:contact-btn-breathe 3.2s ease-in-out infinite,contact-btn-gradient 4.2s linear infinite}.contact-submit-btn:hover{color:#fff;background-position:-120% 0;transform:translateY(-3px) scale(1.01);box-shadow:0 18px 36px #0d966857,0 12px 28px #06b6d442}.contact-submit-btn:before{content:none}.contact-submit-btn:after{content:none}:root[data-theme=dark] .contact-kicker{color:#99f6e4;border-color:#2dd4bf52;background:linear-gradient(135deg,#10b98133,#22d3ee2e)}:root[data-theme=dark] .contact-page{background:radial-gradient(circle at 8% 10%,rgba(16,185,129,.12),transparent 36%),radial-gradient(circle at 90% 88%,rgba(6,182,212,.14),transparent 38%),var(--color-bg)}:root[data-theme=dark] .contact-header h1{color:#f8fafc;text-shadow:0 0 16px rgba(103,232,249,.32)}:root[data-theme=dark] .contact-info-card,:root[data-theme=dark] .contact-form-wrapper{border-color:#4755699e;background:linear-gradient(145deg,#0f172ad1,#131c31b8);box-shadow:0 18px 36px #02061773}:root[data-theme=dark] .contact-info-card:after{background:radial-gradient(circle at 18% 16%,rgba(20,184,166,.16),transparent 38%),radial-gradient(circle at 82% 84%,rgba(6,182,212,.15),transparent 42%),linear-gradient(145deg,#0f172aeb,#131c31db)}:root[data-theme=dark] .contact-main:after{background:linear-gradient(to bottom,#060b1600,#060b16b8 55%,#060b16)}:root[data-theme=dark] .contact-detail-item{background:#0f172a8f;border-color:#4755697a}:root[data-theme=dark] .contact-detail-item:hover{border-color:#22d3ee73;background:#0f172acc;box-shadow:0 12px 24px #06b6d429}:root[data-theme=dark] .contact-detail-text p{color:#cbd5e1}:root[data-theme=dark] .success-message{color:#bbf7d0;border-color:#34d39966;background:linear-gradient(135deg,#10b98133,#06b6d424)}:root[data-theme=dark] .form-group input,:root[data-theme=dark] .form-group textarea{background:linear-gradient(#0b1120e0,#0b1120e0) padding-box,linear-gradient(135deg,#475569d1,#33415585) border-box;color:#e2e8f0}:root[data-theme=dark] .form-group label{color:#e2e8f0;text-shadow:0 0 10px rgba(148,163,184,.2)}:root[data-theme=dark] .form-group input::placeholder,:root[data-theme=dark] .form-group textarea::placeholder{color:#94a3b8}:root[data-theme=dark] .form-group input:focus,:root[data-theme=dark] .form-group textarea:focus{background:linear-gradient(#0f172aeb,#0f172aeb) padding-box,linear-gradient(135deg,#2dd4bff2,#22d3eeeb,#3b82f6d9) border-box;box-shadow:0 0 0 3px #22d3ee33,0 12px 24px #06b6d42e}:root[data-theme=dark] .contact-form-wrapper:after{background:radial-gradient(circle at 20% 12%,rgba(20,184,166,.16),transparent 42%),radial-gradient(circle at 82% 84%,rgba(6,182,212,.16),transparent 44%),linear-gradient(145deg,#0f172ae6,#131c31d6)}@keyframes contact-shell-spin{to{transform:rotate(360deg)}}@keyframes contact-info-ring{to{transform:rotate(360deg)}}@keyframes contact-field-in{to{opacity:1;transform:translateY(0)}}@keyframes contact-btn-sheen{0%,20%{transform:translate(-130%)}45%,to{transform:translate(130%)}}@keyframes contact-btn-ring{to{transform:rotate(360deg)}}@keyframes contact-btn-breathe{0%,to{box-shadow:0 14px 28px #0d96683d,0 8px 20px #06b6d42e}50%{box-shadow:0 18px 34px #0d96685c,0 12px 26px #06b6d447}}@keyframes contact-btn-gradient{to{background-position:-220% 0}}@keyframes contact-social-ring{to{transform:rotate(360deg)}}@keyframes contact-social-float{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}@keyframes contact-social-pulse{0%,to{box-shadow:0 10px 20px #02061747,0 0 #06b6d429}50%{box-shadow:0 14px 26px #02061757,0 0 0 5px #06b6d41f}}@keyframes contact-title-shimmer{to{background-position:-220% 0}}@keyframes contact-title-float{0%,to{transform:none}50%{transform:none}}@keyframes contact-title-underline{0%,to{transform:translate(-50%) scaleX(.85);opacity:.75}50%{transform:translate(-50%) scaleX(1.05);opacity:1}}@keyframes contact-subtitle-shimmer{0%,to{opacity:.9;filter:saturate(1)}50%{opacity:1;filter:saturate(1.08)}}@keyframes contact-kicker-pulse{0%,to{transform:translateY(0);box-shadow:0 8px 18px #10b9811f}50%{transform:translateY(-1px);box-shadow:0 12px 22px #10b9812e}}@media (max-width: 960px){.contact-grid{grid-template-columns:1fr}}@media (max-width: 640px){.contact-hero{padding-top:var(--space-2xl)}.form-row{grid-template-columns:1fr}}@media (prefers-reduced-motion: reduce){.contact-info-card:before,.contact-form-wrapper:before,.contact-submit-btn,.contact-social a,.contact-social a:before{animation:none}.contact-info-card:hover,.contact-detail-item:hover{transform:none}.contact-kicker,.contact-header h1,.contact-header h1:after,.contact-header p{animation:none}}:root{--color-primary: #0d9668;--color-primary-dark: #087a54;--color-primary-light: #10b981;--color-primary-glow: rgba(13, 150, 104, .15);--color-primary-gradient: linear-gradient(135deg, #0d9668, #06b6d4);--color-dark: #0b1120;--color-dark-soft: #131c31;--color-dark-muted: #1e293b;--color-bg: #f8fafb;--color-bg-overlay: rgba(248, 250, 251, .85);--color-surface: #ffffff;--color-surface-hover: #f1f5f9;--color-border: #e2e8f0;--color-border-light: #f1f5f9;--color-text: #0f172a;--color-text-secondary: #475569;--color-text-muted: #94a3b8;--color-text-on-dark: #e2e8f0;--color-text-on-primary: #ffffff;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .06);--shadow-md: 0 4px 16px rgba(0, 0, 0, .08);--shadow-lg: 0 12px 40px rgba(0, 0, 0, .1);--shadow-xl: 0 20px 60px rgba(0, 0, 0, .12);--shadow-primary: 0 8px 30px rgba(13, 150, 104, .2);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 9999px;--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--space-3xl: 4rem;--space-4xl: 6rem;--font-heading: "Space Grotesk", sans-serif;--font-body: "Inter", sans-serif;--font-mono: "JetBrains Mono", monospace;--transition-fast: .15s ease;--transition-base: .25s ease;--transition-slow: .4s ease;--transition-spring: .5s cubic-bezier(.22, 1, .36, 1);--ease-emphasized: cubic-bezier(.22, 1, .36, 1);--anim-caret: .75s;--anim-enter: .9s;--anim-bounce: 2.4s;--anim-float: 5.6s;--anim-loop: 4.8s;--anim-loop-slow: 6s;--max-width: 1200px;--navbar-height: 72px}:root[data-theme=dark]{--color-bg: #060b16;--color-bg-overlay: rgba(6, 11, 22, .85);--color-surface: #0f172a;--color-surface-hover: #162037;--color-border: #28344d;--color-border-light: #1d2940;--color-text: #e2e8f0;--color-text-secondary: #cbd5e1;--color-text-muted: #94a3b8;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .35);--shadow-md: 0 4px 16px rgba(0, 0, 0, .4);--shadow-lg: 0 12px 40px rgba(0, 0, 0, .45);--shadow-xl: 0 20px 60px rgba(0, 0, 0, .55);--shadow-primary: 0 8px 30px rgba(16, 185, 129, .28)}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-body);color:var(--color-text);background-color:var(--color-bg);line-height:1.6;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:700;line-height:1.2;color:var(--color-text)}h1{font-size:clamp(2.2rem,5vw,3.5rem)}h2{font-size:clamp(1.6rem,3.5vw,2.4rem)}h3{font-size:clamp(1.2rem,2.5vw,1.5rem)}p{color:var(--color-text-secondary);line-height:1.7}a{text-decoration:none;color:inherit;transition:color var(--transition-fast)}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,[role=button]:focus-visible{outline:3px solid rgba(6,182,212,.45);outline-offset:3px;border-radius:8px}img{max-width:100%;display:block}ul{list-style:none}code{font-family:var(--font-mono)}.container{width:100%;max-width:var(--max-width);margin:0 auto;padding:0 var(--space-xl)}@media (max-width: 768px){.container{padding:0 var(--space-md)}}.section{padding:var(--space-4xl) 0}.section-header{text-align:center;margin-bottom:var(--space-3xl)}.section-header h2{margin-bottom:var(--space-md);position:relative;display:inline-block}.section-header h2:after{content:"";position:absolute;bottom:-8px;left:50%;transform:translate(-50%);width:60px;height:3px;background:var(--color-primary-gradient);border-radius:var(--radius-full)}.section-header p{max-width:600px;margin:var(--space-lg) auto 0}.btn{display:inline-flex;align-items:center;gap:var(--space-sm);padding:12px 28px;font-family:var(--font-body);font-size:.95rem;font-weight:600;border:none;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-base);text-decoration:none;line-height:1}.btn-primary{background:var(--color-primary);color:var(--color-text-on-primary);box-shadow:var(--shadow-primary)}.btn-primary:hover{background:var(--color-primary-dark);transform:translateY(-2px);box-shadow:0 12px 35px #0d96684d}.btn-outline{background:transparent;color:var(--color-text);border:2px solid var(--color-border)}.btn-outline:hover{border-color:var(--color-primary);color:var(--color-primary);transform:translateY(-2px)}.btn-ghost{background:transparent;color:var(--color-primary);padding:8px 16px}.btn-ghost:hover{background:var(--color-primary-glow)}.tag{display:inline-flex;align-items:center;padding:4px 12px;font-size:.78rem;font-weight:500;font-family:var(--font-mono);background:var(--color-primary-glow);color:var(--color-primary-dark);border-radius:var(--radius-full)}@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:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes pulse-glow{0%,to{box-shadow:0 0 20px #0d966833}50%{box-shadow:0 0 40px #0d966866}}.animate-fade-up{animation:fadeInUp .6s ease forwards}.animate-fade-up-delay-1{animation:fadeInUp .6s ease .1s forwards;opacity:0}.animate-fade-up-delay-2{animation:fadeInUp .6s ease .2s forwards;opacity:0}.animate-fade-up-delay-3{animation:fadeInUp .6s ease .3s forwards;opacity:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
