*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}body{color:#fff;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#0c0203;margin:0;padding:0;font-family:Plus Jakarta Sans,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;overflow-x:hidden}#root{min-height:100vh}::-webkit-scrollbar{width:9px}::-webkit-scrollbar-track{background:#0c0203}::-webkit-scrollbar-thumb{background:#b9142066;border-radius:6px}::-webkit-scrollbar-thumb:hover{background:#e11d48b3}::selection{color:#fff;background:#b91420b3}:root{--color-crimson:#b91420;--color-crimson-dark:#800b14;--color-crimson-bright:#e11d48;--color-crimson-glow:#b9142073;--bg-deep:#0a0203;--bg-main:#0e0304;--bg-surface:#140507;--bg-card:#1c080ca6;--bg-card-hover:#2a0c12d9;--border-glass:#ffffff1a;--border-glass-hover:#ffffff38;--border-crimson:#e11d4859;--text-main:#fff;--text-secondary:#ffffffc2;--text-muted:#ffffff7a;--font-sans:"Plus Jakarta Sans", "Inter", -apple-system, sans-serif;--font-script:"Dancing Script", cursive;--font-mono:"JetBrains Mono", monospace;--radius-sm:8px;--radius-md:14px;--radius-lg:22px;--radius-full:9999px;--transition-fast:.2s cubic-bezier(.16, 1, .3, 1);--transition-smooth:.35s cubic-bezier(.16, 1, .3, 1)}.portfolio-app{background-color:var(--bg-main);width:100%;min-height:100vh;color:var(--text-main);position:relative;overflow-x:hidden}.navbar-header{z-index:100;width:100%;transition:transform var(--transition-smooth), top var(--transition-smooth);justify-content:center;padding:0 16px;display:flex;position:fixed;top:24px;left:0}.navbar-pill{border-radius:var(--radius-full);-webkit-backdrop-filter:blur(24px);border:1px solid var(--border-glass);transition:all var(--transition-fast);background:#140608b8;align-items:center;gap:28px;padding:8px 14px 8px 18px;display:flex;box-shadow:0 16px 36px #00000073}.navbar-scrolled .navbar-pill{box-shadow:0 18px 40px #0009, 0 0 20px var(--color-crimson-glow);background:#0e0305e0;border-color:#ffffff29}.navbar-logo{color:#fff;align-items:center;gap:9px;text-decoration:none;display:flex}.logo-gem{background:linear-gradient(135deg, var(--color-crimson-bright), var(--color-crimson-dark));letter-spacing:.05em;color:#fff;border-radius:8px;justify-content:center;align-items:center;width:28px;height:28px;font-size:11px;font-weight:800;display:flex;box-shadow:0 2px 10px #e11d4866}.logo-text{letter-spacing:.18em;font-size:12px;font-weight:800}.desktop-nav{align-items:center;gap:20px;display:flex}.nav-item{color:var(--text-secondary);letter-spacing:.12em;border-radius:var(--radius-full);transition:all var(--transition-fast);padding:6px 10px;font-size:11px;font-weight:600;text-decoration:none}.nav-item:hover{color:#fff;background:#ffffff14}.nav-item-active{color:#fff;background:#e11d4833;border:1px solid #e11d4866}.navbar-actions{align-items:center;gap:10px;display:flex}.navbar-resume-btn{color:#0c0203;letter-spacing:.12em;border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-fast);background:#fff;border:none;align-items:center;gap:6px;padding:8px 14px;font-family:inherit;font-size:10px;font-weight:700;display:inline-flex}.navbar-resume-btn:hover{background:#f1f5f9;transform:translateY(-1px);box-shadow:0 4px 16px #ffffff40}.mobile-toggle-btn{color:#fff;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:6px;display:none}.mobile-nav-drawer{z-index:200;pointer-events:none;visibility:hidden;transition:visibility .3s;position:fixed;inset:0}.mobile-nav-drawer.drawer-open{pointer-events:auto;visibility:visible}.drawer-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;background:#000000b3;transition:opacity .3s;position:absolute;inset:0}.drawer-open .drawer-overlay{opacity:1}.drawer-content{border-left:1px solid var(--border-glass);background:#140407;flex-direction:column;width:290px;max-width:85vw;height:100%;padding:28px 24px;transition:transform .35s cubic-bezier(.16,1,.3,1);display:flex;position:absolute;top:0;right:0;transform:translate(100%);box-shadow:-10px 0 40px #000000b3}.drawer-open .drawer-content{transform:translate(0)}.drawer-header{justify-content:space-between;align-items:center;margin-bottom:32px;display:flex}.drawer-brand{letter-spacing:.16em;font-size:15px;font-weight:800}.drawer-close-btn{color:#fff;cursor:pointer;background:0 0;border:none}.drawer-links{flex-direction:column;gap:14px;display:flex}.drawer-link{color:var(--text-secondary);letter-spacing:.14em;border-radius:var(--radius-sm);transition:all var(--transition-fast);padding:10px 14px;font-size:13px;font-weight:600;text-decoration:none}.drawer-link:hover,.drawer-link-active{color:#fff;background:#e11d482e}.drawer-footer{border-top:1px solid var(--border-glass);flex-direction:column;gap:12px;margin-top:auto;padding-top:24px;display:flex}.drawer-resume-btn{color:#0c0203;border-radius:var(--radius-full);letter-spacing:.12em;cursor:pointer;background:#fff;border:none;justify-content:center;align-items:center;gap:8px;padding:12px;font-size:11px;font-weight:700;display:flex}.drawer-contact-btn{color:#fff;border-radius:var(--radius-full);letter-spacing:.12em;background:#e11d4833;border:1px solid #e11d4880;justify-content:center;align-items:center;padding:11px;font-size:11px;font-weight:600;text-decoration:none;display:flex}.hero-section{background:#b91420;flex-direction:column;justify-content:flex-end;width:100%;min-height:100vh;display:flex;position:relative;overflow:hidden}.hero-canvas{z-index:1;width:100%;height:100%;display:block;position:absolute;inset:0}.hero-vignette{z-index:2;pointer-events:none;background:linear-gradient(#0c020333 0%,#0000 40%,#0c0203d9 90%,#0a0203 100%),radial-gradient(#0000 40%,#00000059 100%);position:absolute;inset:0}.hero-loading{z-index:30;background:#b91420;flex-direction:column;justify-content:center;align-items:center;gap:16px;display:flex;position:absolute;inset:0}.loading-spinner{border:3px solid #fff3;border-top-color:#fff;border-radius:50%;width:44px;height:44px;animation:.8s linear infinite spin}.loading-text{letter-spacing:.24em;color:#fff;font-size:11px;font-weight:700}.loading-bar-track{border-radius:var(--radius-full);background:#fff3;width:200px;height:4px;overflow:hidden}.loading-bar-fill{background:#fff;height:100%;transition:width .15s ease-out}.hero-content{z-index:10;max-width:600px;padding:0 7vw 6vh;position:relative}.hero-status-pill{-webkit-backdrop-filter:blur(14px);border-radius:var(--radius-full);background:#120406b3;border:1px solid #fff3;align-items:center;gap:8px;margin-bottom:18px;padding:6px 14px;display:inline-flex}.status-dot{background:#10b981;border-radius:50%;width:8px;height:8px;animation:2s infinite pulse-dot;box-shadow:0 0 10px #10b981}.status-text{letter-spacing:.08em;color:#fff;font-size:11px;font-weight:600}.hero-typography{margin-bottom:14px}.hero-intro{letter-spacing:.04em;opacity:.95;margin:0;font-size:22px;font-weight:400}.hero-name{font-family:var(--font-script);letter-spacing:-.02em;text-shadow:0 8px 30px #0006;margin:-4px 0 6px;font-size:clamp(68px,8vw,110px);font-weight:600;line-height:.95}.hero-role-badge{color:#fce7f3;letter-spacing:.08em;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:var(--radius-sm);background:#ffffff1f;border:1px solid #ffffff2e;align-items:center;gap:8px;padding:6px 12px;font-size:13px;font-weight:600;display:inline-flex}.sparkle-icon{color:#fef08a}.hero-description{letter-spacing:.02em;color:#ffffffe0;text-shadow:0 2px 10px #00000059;max-width:440px;margin:18px 0 24px;font-size:13px;line-height:1.7}.hero-actions{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:28px;display:flex}.btn-primary{border-radius:var(--radius-full);min-height:44px;color:var(--color-crimson);letter-spacing:.12em;cursor:pointer;transition:all var(--transition-fast);background:#fff;border:1px solid #fff;align-items:center;gap:8px;padding:0 22px;font-size:11px;font-weight:700;text-decoration:none;display:inline-flex;box-shadow:0 6px 20px #00000040}.btn-primary:hover{background:#f8fafc;transform:translateY(-2px);box-shadow:0 8px 24px #ffffff4d}.btn-secondary{border-radius:var(--radius-full);color:#fff;letter-spacing:.12em;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);cursor:pointer;min-height:44px;transition:all var(--transition-fast);background:#ffffff1f;border:1px solid #fff6;align-items:center;gap:8px;padding:0 20px;font-size:11px;font-weight:600;text-decoration:none;display:inline-flex}.btn-secondary:hover{background:#ffffff3d;border-color:#fff;transform:translateY(-2px)}.btn-ghost{border-radius:var(--radius-full);color:#ffffffe6;letter-spacing:.12em;cursor:pointer;min-height:44px;transition:all var(--transition-fast);background:0 0;border:1px solid #0000;align-items:center;gap:6px;padding:0 18px;font-size:11px;font-weight:600;text-decoration:none;display:inline-flex}.btn-ghost:hover{color:#fff;background:#ffffff14;border-color:#fff3}.hero-stats-banner{-webkit-backdrop-filter:blur(20px);border:1px solid var(--border-glass);border-radius:var(--radius-md);background:#0e0305a6;grid-template-columns:repeat(4,1fr);gap:16px;padding:14px 18px;display:grid;box-shadow:0 12px 30px #00000059}.hero-stat-card{flex-direction:column;display:flex}.stat-number{color:#fff;letter-spacing:-.02em;font-size:20px;font-weight:800}.stat-label{letter-spacing:.06em;color:var(--text-muted);text-transform:uppercase;margin-top:2px;font-size:9px;font-weight:500}.hero-hint{z-index:10;letter-spacing:.1em;color:#ffffffa6;text-transform:uppercase;pointer-events:none;align-items:center;gap:12px;font-size:11px;display:flex;position:absolute;bottom:5vh;right:6vw}.hint-mouse-indicator{border:2px solid #ffffff80;border-radius:10px;justify-content:center;width:18px;height:28px;padding-top:4px;display:flex;position:relative}.hint-wheel{background:#fff;border-radius:2px;width:3px;height:6px;animation:1.6s infinite mouse-scroll}.section-container{max-width:1200px;margin:0 auto;padding:120px 24px;position:relative}.section-header-tag{letter-spacing:.22em;color:var(--color-crimson-bright);border-radius:var(--radius-full);background:#e11d481a;border:1px solid #e11d484d;align-items:center;gap:8px;margin-bottom:20px;padding:6px 14px;font-size:10px;font-weight:700;display:inline-flex}.tag-dot{background:var(--color-crimson-bright);border-radius:50%;width:6px;height:6px}.section-title-wrap{margin-bottom:54px}.section-main-title{letter-spacing:-.03em;margin:0 0 16px;font-size:clamp(34px,4.5vw,54px);font-weight:800;line-height:1.15}.text-gradient{background:linear-gradient(135deg,#fff 30%,#f43f5e 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text}.section-subtitle{max-width:620px;color:var(--text-secondary);margin:0;font-size:15px;line-height:1.7}.chip{color:var(--text-secondary);border:1px solid var(--border-glass);border-radius:var(--radius-full);background:#ffffff0d;align-items:center;gap:4px;padding:5px 12px;font-size:11px;font-weight:500;display:inline-flex}.chip-accent{color:#fda4af;border-radius:var(--radius-full);background:#e11d4826;border:1px solid #e11d4859;align-items:center;padding:5px 12px;font-size:11px;font-weight:600;display:inline-flex}.tags-flex{flex-wrap:wrap;gap:8px;display:flex}.about-grid{grid-template-columns:380px 1fr;align-items:flex-start;gap:36px;display:grid}.about-identity-card{background:var(--bg-card);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--border-glass);border-radius:var(--radius-lg);padding:32px 28px;box-shadow:0 20px 40px #0006}.identity-card-header{align-items:center;gap:16px;margin-bottom:24px;display:flex}.identity-avatar-badge{background:linear-gradient(135deg, var(--color-crimson), #450a0a);border:1px solid #fff3;border-radius:16px;justify-content:center;align-items:center;width:56px;height:56px;display:flex;position:relative}.avatar-initials{color:#fff;font-size:18px;font-weight:800}.avatar-pulse{background:#10b981;border:3px solid #140407;border-radius:50%;width:14px;height:14px;position:absolute;top:-2px;right:-2px}.identity-name{margin:0 0 4px;font-size:20px;font-weight:800}.identity-title{color:var(--color-crimson-bright);margin:0;font-size:12px;font-weight:600}.identity-meta-list{flex-direction:column;gap:16px;display:flex}.meta-row{align-items:center;gap:12px;display:flex}.meta-icon{color:var(--color-crimson-bright)}.meta-details{flex-direction:column;display:flex}.meta-label{text-transform:uppercase;color:var(--text-muted);letter-spacing:.08em;font-size:10px}.meta-value{color:var(--text-main);font-size:13px;font-weight:600}.identity-divider{background:var(--border-glass);height:1px;margin:24px 0}.identity-focus-tags{flex-direction:column;gap:12px;display:flex}.focus-tag-title{text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted);font-size:11px;font-weight:700}.identity-quote-box{border-radius:var(--radius-md);background:#e11d4814;border:1px dashed #e11d4859;align-items:flex-start;gap:12px;margin-top:24px;padding:16px;display:flex}.quote-sparkle{color:#facc15;flex-shrink:0;margin-top:2px}.identity-quote-box p{color:var(--text-secondary);margin:0;font-size:12px;font-style:italic;line-height:1.6}.about-content-card{background:var(--bg-card);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--border-glass);border-radius:var(--radius-lg);padding:36px;box-shadow:0 20px 40px #0006}.about-tabs-nav{border-bottom:1px solid var(--border-glass);gap:12px;margin-bottom:28px;padding-bottom:18px;display:flex;overflow-x:auto}.about-tab-btn{color:var(--text-muted);border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;background:0 0;border:1px solid #0000;align-items:center;gap:8px;padding:10px 18px;font-size:12px;font-weight:600;display:inline-flex}.about-tab-btn:hover{color:#fff;background:#ffffff0d}.about-tab-btn.tab-active{color:#fff;background:#e11d482e;border-color:#e11d4873}.tab-body-heading{color:#fff;margin:0 0 16px;font-size:22px;font-weight:800}.tab-paragraph{color:var(--text-secondary);margin-bottom:16px;font-size:14px;line-height:1.8}.philosophy-checklist{border-top:1px solid var(--border-glass);flex-direction:column;gap:14px;margin-top:24px;padding-top:20px;display:flex}.check-item{color:var(--text-secondary);align-items:flex-start;gap:12px;font-size:13px;line-height:1.6;display:flex}.check-icon{color:#10b981;flex-shrink:0;margin-top:2px}.pillars-grid{grid-template-columns:repeat(2,1fr);gap:20px;margin-top:20px;display:grid}.pillar-item{border:1px solid var(--border-glass);border-radius:var(--radius-md);transition:border-color var(--transition-fast);background:#ffffff08;padding:22px}.pillar-item:hover{border-color:var(--border-crimson)}.pillar-num{font-family:var(--font-mono);color:var(--color-crimson-bright);margin-bottom:10px;font-size:12px;font-weight:700}.pillar-title{margin:0 0 8px;font-size:15px;font-weight:700}.pillar-desc{color:var(--text-muted);margin:0;font-size:12px;line-height:1.6}.personal-interests-grid{grid-template-columns:repeat(2,1fr);gap:16px;margin-top:20px;display:grid}.interest-card{border:1px solid var(--border-glass);border-radius:var(--radius-md);background:#ffffff08;align-items:flex-start;gap:14px;padding:18px;display:flex}.interest-icon{color:var(--color-crimson-bright);flex-shrink:0;margin-top:2px}.interest-text h6{margin:0 0 4px;font-size:14px;font-weight:700}.interest-text p{color:var(--text-muted);margin:0;font-size:12px;line-height:1.5}.skills-controls{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px;margin-bottom:36px;display:flex}.skills-filter-pills{flex-wrap:wrap;gap:10px;display:flex}.skills-pill-btn{color:var(--text-secondary);border:1px solid var(--border-glass);border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-fast);background:#ffffff0a;align-items:center;gap:7px;padding:9px 16px;font-size:11px;font-weight:600;display:inline-flex}.skills-pill-btn:hover{color:#fff;border-color:#ffffff4d}.skills-pill-btn.pill-active{background:var(--color-crimson);color:#fff;border-color:var(--color-crimson-bright);box-shadow:0 4px 16px var(--color-crimson-glow)}.skills-search-box{align-items:center;width:280px;display:flex;position:relative}.search-icon{color:var(--text-muted);pointer-events:none;position:absolute;left:14px}.skills-search-input{border:1px solid var(--border-glass);border-radius:var(--radius-full);color:#fff;width:100%;transition:border-color var(--transition-fast);background:#ffffff0d;outline:none;padding:10px 36px 10px 38px;font-family:inherit;font-size:12px}.skills-search-input:focus{border-color:var(--color-crimson-bright);background:#ffffff14}.search-clear-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;font-size:12px;position:absolute;right:12px}.skills-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:20px;display:grid}.skill-card{background:var(--bg-card);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--border-glass);border-radius:var(--radius-md);transition:all var(--transition-fast);padding:22px}.skill-card:hover{border-color:var(--border-crimson);background:var(--bg-card-hover);transform:translateY(-2px);box-shadow:0 12px 28px #00000059}.skill-card-top{justify-content:space-between;align-items:flex-start;margin-bottom:12px;display:flex}.skill-cat-badge{letter-spacing:.1em;color:var(--color-crimson-bright);align-items:center;gap:5px;margin-bottom:6px;font-size:9px;font-weight:700;display:inline-flex}.skill-name{margin:0;font-size:16px;font-weight:700}.skill-meta-badge{align-items:center;gap:8px;display:flex}.skill-years{color:var(--text-muted);border-radius:var(--radius-full);background:#ffffff0d;padding:3px 8px;font-size:10px}.skill-level-pct{font-family:var(--font-mono);color:#fff;font-size:12px;font-weight:700}.skill-meter-track{border-radius:var(--radius-full);background:#ffffff12;width:100%;height:6px;margin-bottom:12px;overflow:hidden}.skill-meter-fill{background:linear-gradient(90deg, var(--color-crimson), var(--color-crimson-bright));border-radius:var(--radius-full);height:100%;transition:width .6s cubic-bezier(.16,1,.3,1)}.skill-highlight{color:var(--text-secondary);margin:0;font-size:12px;line-height:1.5}.no-results-box{text-align:center;color:var(--text-muted);flex-direction:column;align-items:center;gap:16px;padding:60px 20px;display:flex}.architecture-banner{border:1px solid var(--border-glass);border-radius:var(--radius-lg);background:#ffffff05;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:48px;padding:32px;display:grid}.arch-card{align-items:flex-start;gap:16px;display:flex}.arch-icon-wrap{width:44px;height:44px;color:var(--color-crimson-bright);background:#e11d4826;border:1px solid #e11d484d;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.arch-card h5{margin:0 0 6px;font-size:15px;font-weight:700}.arch-card p{color:var(--text-muted);margin:0;font-size:12px;line-height:1.6}.projects-filter-bar{flex-wrap:wrap;gap:10px;margin-bottom:40px;display:flex}.filter-btn{color:var(--text-secondary);border:1px solid var(--border-glass);border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-fast);background:#ffffff0a;align-items:center;gap:8px;padding:9px 18px;font-size:12px;font-weight:600;display:inline-flex}.filter-btn:hover{color:#fff;border-color:#ffffff4d}.filter-btn.filter-active{background:var(--color-crimson);color:#fff;border-color:var(--color-crimson-bright);box-shadow:0 4px 16px var(--color-crimson-glow)}.projects-grid{grid-template-columns:repeat(auto-fill,minmax(360px,1fr));gap:32px;display:grid}.project-card{background:var(--bg-card);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--border-glass);border-radius:var(--radius-lg);transition:all var(--transition-fast);flex-direction:column;display:flex;overflow:hidden}.project-card:hover{border-color:var(--border-crimson);transform:translateY(-4px);box-shadow:0 20px 40px #00000080,0 0 24px #e11d4833}.project-thumb{flex-direction:column;justify-content:space-between;height:200px;padding:18px 20px;display:flex;position:relative;overflow:hidden}.thumb-header{z-index:2;justify-content:space-between;align-items:center;display:flex}.thumb-badge{letter-spacing:.1em;text-transform:uppercase;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:var(--radius-full);color:#fff;background:#0009;border:1px solid #fff3;padding:4px 10px;font-size:10px;font-weight:700}.thumb-casestudy-btn{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-fast);background:#ffffff26;border:1px solid #ffffff40;align-items:center;gap:6px;padding:5px 11px;font-size:10px;font-weight:600;display:inline-flex}.thumb-casestudy-btn:hover{background:#ffffff4d}.thumb-visual-content{z-index:1;justify-content:center;display:flex;position:relative}.thumb-wireframe{background:#0a0204b3;border:1px solid #ffffff24;border-radius:8px 8px 0 0;width:90%;overflow:hidden;box-shadow:0 -4px 20px #0006}.wireframe-bar{background:#00000080;border-bottom:1px solid #ffffff14;align-items:center;gap:6px;padding:6px 10px;display:flex}.wireframe-bar .dot{border-radius:50%;width:6px;height:6px}.dot.red{background:#ef4444}.dot.yellow{background:#f59e0b}.dot.green{background:#10b981}.wireframe-title{font-family:var(--font-mono);color:var(--text-muted);margin-left:6px;font-size:9px}.wireframe-body{flex-direction:column;gap:6px;padding:10px;display:flex}.wireframe-line{background:#ffffff26;border-radius:3px;height:5px}.wireframe-line.primary{width:70%}.wireframe-line.secondary{width:45%}.wireframe-grid{grid-template-columns:repeat(3,1fr);gap:6px;margin-top:4px;display:grid}.grid-cell{background:#ffffff0f;border-radius:4px;height:24px}.grid-cell.active{background:#e11d4859;border:1px solid #e11d4880}.project-body{flex-direction:column;flex:1;padding:26px;display:flex}.project-title{margin:0 0 6px;font-size:20px;font-weight:800}.project-tagline{color:var(--color-crimson-bright);margin:0 0 14px;font-size:12px;font-weight:600}.project-summary{color:var(--text-secondary);flex:1;margin:0 0 16px;font-size:13px;line-height:1.6}.project-impact-box{border-radius:var(--radius-sm);color:#fef3c7;background:#f59e0b1a;border:1px solid #f59e0b40;align-items:center;gap:8px;margin-bottom:18px;padding:8px 12px;font-size:11px;font-weight:600;display:flex}.sparkle-gold{color:#f59e0b;flex-shrink:0}.project-actions{border-top:1px solid var(--border-glass);justify-content:space-between;align-items:center;margin-top:22px;padding-top:18px;display:flex}.btn-link-action{color:#fff;cursor:pointer;transition:color var(--transition-fast);background:0 0;border:none;align-items:center;gap:6px;padding:0;font-family:inherit;font-size:12px;font-weight:700;display:inline-flex}.btn-link-action:hover{color:var(--color-crimson-bright)}.project-icon-links{align-items:center;gap:8px;display:flex}.icon-circle-link{border:1px solid var(--border-glass);color:#fff;width:34px;height:34px;transition:all var(--transition-fast);background:#ffffff0f;border-radius:50%;justify-content:center;align-items:center;text-decoration:none;display:flex}.icon-circle-link:hover{background:var(--color-crimson);border-color:var(--color-crimson-bright);transform:translateY(-2px)}.experience-layout{grid-template-columns:1.15fr .85fr;gap:48px;display:grid}.timeline-column-header{align-items:center;gap:10px;margin-bottom:28px;display:flex}.col-header-icon{color:var(--color-crimson-bright)}.col-header-title{margin:0;font-size:20px;font-weight:800}.timeline-track{border-left:2px solid #e11d4840;flex-direction:column;gap:32px;padding-left:28px;display:flex;position:relative}.timeline-item{position:relative}.timeline-node{background:var(--bg-main);border:2px solid var(--color-crimson-bright);border-radius:50%;justify-content:center;align-items:center;width:16px;height:16px;display:flex;position:absolute;top:6px;left:-37px}.node-inner{background:#fff;border-radius:50%;width:6px;height:6px}.timeline-card{background:var(--bg-card);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--border-glass);border-radius:var(--radius-md);transition:all var(--transition-fast);padding:24px}.timeline-card:hover{border-color:var(--border-crimson);transform:translate(4px)}.timeline-meta-bar{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.timeline-period{font-family:var(--font-mono);color:var(--color-crimson-bright);font-size:11px;font-weight:700}.timeline-company{color:#fff;font-size:13px;font-weight:700}.timeline-role{margin:0 0 6px;font-size:18px;font-weight:800}.timeline-location{color:var(--text-muted);align-items:center;gap:6px;margin-bottom:12px;font-size:11px;display:flex}.timeline-description{color:var(--text-secondary);margin-bottom:14px;font-size:13px;line-height:1.6}.timeline-achievements{flex-direction:column;gap:8px;margin-bottom:16px;display:flex}.achievement-row{color:var(--text-secondary);align-items:flex-start;gap:10px;font-size:12px;line-height:1.5;display:flex}.achievement-check{color:var(--color-crimson-bright);flex-shrink:0;margin-top:2px}.credentials-column{flex-direction:column;gap:36px;display:flex}.credentials-block{background:var(--bg-card);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--border-glass);border-radius:var(--radius-lg);padding:28px}.edu-card{flex-direction:column;display:flex}.edu-top{justify-content:space-between;align-items:center;margin-bottom:6px;display:flex}.edu-period{font-family:var(--font-mono);color:var(--color-crimson-bright);font-size:11px;font-weight:700}.edu-grade{color:#fef08a;border-radius:var(--radius-full);background:#fef08a1f;padding:3px 8px;font-size:11px;font-weight:600}.edu-degree{margin:0 0 4px;font-size:16px;font-weight:800}.edu-institution{color:var(--text-secondary);margin:0 0 16px;font-size:13px}.edu-highlights{flex-direction:column;gap:8px;display:flex}.edu-highlight-item{color:var(--text-muted);align-items:flex-start;gap:8px;font-size:12px;line-height:1.5;display:flex}.certs-list{flex-direction:column;gap:14px;display:flex}.cert-card{border:1px solid var(--border-glass);border-radius:var(--radius-md);transition:border-color var(--transition-fast);background:#ffffff08;align-items:flex-start;gap:14px;padding:16px;display:flex}.cert-card:hover{border-color:var(--border-crimson)}.cert-icon-box{width:36px;height:36px;color:var(--color-crimson-bright);background:#e11d4826;border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.cert-title{margin:0 0 4px;font-size:13px;font-weight:700}.cert-issuer{color:var(--text-secondary);margin:0 0 4px;font-size:11px}.cert-id{font-family:var(--font-mono);color:var(--text-muted);font-size:10px}.testimonials-grid{grid-template-columns:repeat(3,1fr);gap:28px;display:grid}.testimonial-card{background:var(--bg-card);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--border-glass);border-radius:var(--radius-lg);transition:all var(--transition-fast);flex-direction:column;justify-content:space-between;padding:32px 28px;display:flex}.testimonial-card:hover{border-color:var(--border-crimson);transform:translateY(-4px);box-shadow:0 16px 36px #0006}.testimonial-top{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.star-rating{gap:4px;display:flex}.star-filled{color:#f59e0b}.testimonial-quote-icon{color:#e11d4866}.testimonial-quote{color:var(--text-secondary);margin:0 0 24px;font-size:14px;font-style:italic;line-height:1.7}.testimonial-author{align-items:center;gap:14px;display:flex}.author-avatar{background:linear-gradient(135deg, var(--color-crimson), #3b070c);color:#fff;border:1px solid #fff3;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;font-size:14px;font-weight:800;display:flex}.author-name-row{align-items:center;gap:6px;display:flex}.author-name{margin:0;font-size:15px;font-weight:700}.verified-badge{color:#10b981}.author-role{color:var(--text-muted);margin:2px 0 0;font-size:12px}.author-company{color:var(--text-secondary);font-weight:600}.contact-grid{grid-template-columns:420px 1fr;gap:44px;display:grid}.contact-info-panel{flex-direction:column;gap:20px;display:flex}.contact-status-card{background:var(--bg-card);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--border-glass);border-radius:var(--radius-md);padding:22px}.status-indicator-row{align-items:center;gap:10px;margin-bottom:8px;display:flex}.live-ping{background:#10b981;border-radius:50%;width:10px;height:10px;animation:2s infinite pulse-dot;box-shadow:0 0 10px #10b981}.status-label-bold{letter-spacing:.12em;color:#fff;font-size:11px;font-weight:800}.contact-status-desc{color:var(--text-secondary);margin:0;font-size:13px;line-height:1.6}.email-copy-box{background:var(--bg-card);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--border-glass);border-radius:var(--radius-md);align-items:center;gap:14px;padding:18px 20px;display:flex}.email-icon-wrap{width:40px;height:40px;color:var(--color-crimson-bright);background:#e11d4826;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.email-text-group{flex-direction:column;flex:1;display:flex;overflow:hidden}.email-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-size:10px}.email-address{font-family:var(--font-mono);color:#fff;white-space:nowrap;text-overflow:ellipsis;font-size:12px;font-weight:600;overflow:hidden}.copy-btn{border:1px solid var(--border-glass);color:#fff;border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-fast);background:#ffffff14;align-items:center;gap:6px;padding:7px 12px;font-size:11px;font-weight:600;display:inline-flex}.copy-btn:hover{background:#ffffff29}.text-green{color:#10b981}.location-clock-card{background:var(--bg-card);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--border-glass);border-radius:var(--radius-md);flex-direction:column;gap:16px;padding:22px;display:flex}.loc-clock-item{align-items:flex-start;gap:14px;display:flex}.loc-icon{color:var(--color-crimson-bright);flex-shrink:0;margin-top:3px}.loc-title{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-size:10px;display:block}.loc-val{color:#fff;margin:2px 0;font-size:14px;font-weight:700;display:block}.clock-digits{font-family:var(--font-mono);color:#fca5a5}.loc-sub{color:var(--text-muted);font-size:11px;display:block}.contact-socials-box{background:var(--bg-card);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border:1px solid var(--border-glass);border-radius:var(--radius-md);padding:20px 22px}.socials-title{letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);margin-bottom:14px;font-size:11px;font-weight:700;display:block}.socials-row{gap:12px;display:flex}.social-btn{border:1px solid var(--border-glass);color:#fff;border-radius:var(--radius-full);transition:all var(--transition-fast);background:#ffffff0d;align-items:center;gap:8px;padding:8px 14px;font-size:12px;font-weight:600;text-decoration:none;display:inline-flex}.social-btn:hover{background:var(--color-crimson);border-color:var(--color-crimson-bright);transform:translateY(-2px)}.contact-form-panel{background:var(--bg-card);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--border-glass);border-radius:var(--radius-lg);padding:36px;box-shadow:0 20px 40px #0006}.contact-form{flex-direction:column;gap:20px;display:flex}.form-row{grid-template-columns:1fr 1fr;gap:20px;display:grid}.form-field{flex-direction:column;gap:8px;display:flex}.form-field label{letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary);font-size:11px;font-weight:700}.form-field input,.form-field select,.form-field textarea{border:1px solid var(--border-glass);border-radius:var(--radius-md);color:#fff;transition:all var(--transition-fast);background:#ffffff0d;outline:none;padding:13px 16px;font-family:inherit;font-size:13px}.form-field select{cursor:pointer}.form-field select option{color:#fff;background:#140407}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:var(--color-crimson-bright);box-shadow:0 0 16px var(--color-crimson-glow);background:#ffffff14}.btn-submit-contact{background:linear-gradient(135deg, var(--color-crimson-bright), var(--color-crimson));color:#fff;border-radius:var(--radius-full);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:all var(--transition-fast);box-shadow:0 8px 24px var(--color-crimson-glow);border:1px solid #fff3;justify-content:center;align-items:center;gap:10px;margin-top:8px;padding:14px 28px;font-family:inherit;font-size:13px;font-weight:700;display:inline-flex}.btn-submit-contact:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 12px 30px #e11d4899}.btn-submit-contact:disabled{opacity:.7;cursor:not-allowed}.spinner-small{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:16px;height:16px;animation:.8s linear infinite spin}.form-success-box{text-align:center;flex-direction:column;align-items:center;gap:16px;padding:48px 24px;display:flex}.success-icon{color:#10b981}.success-title{margin:0;font-size:22px;font-weight:800}.success-desc{color:var(--text-secondary);max-width:420px;margin:0 0 12px;font-size:14px;line-height:1.7}.footer-container{border-top:1px solid var(--border-glass);background:#080102;padding:80px 24px 40px}.footer-content{max-width:1200px;margin:0 auto}.footer-top{grid-template-columns:1.8fr 1fr 1fr 1fr;gap:40px;margin-bottom:60px;display:grid}.footer-logo{align-items:center;gap:9px;margin-bottom:16px;display:flex}.footer-bio{max-width:320px;color:var(--text-muted);margin:0;font-size:13px;line-height:1.7}.footer-col-title{letter-spacing:.14em;text-transform:uppercase;color:#fff;margin-bottom:18px;font-size:11px;font-weight:700;display:block}.footer-links-list{flex-direction:column;gap:12px;display:flex}.footer-links-list a,.footer-btn-link{color:var(--text-muted);cursor:pointer;text-align:left;transition:color var(--transition-fast);background:0 0;border:none;padding:0;font-family:inherit;font-size:13px;text-decoration:none}.footer-links-list a:hover,.footer-btn-link:hover{color:var(--color-crimson-bright)}.footer-social-icons{gap:10px;display:flex}.footer-social-circle{border:1px solid var(--border-glass);color:#fff;width:38px;height:38px;transition:all var(--transition-fast);background:#ffffff0d;border-radius:50%;justify-content:center;align-items:center;text-decoration:none;display:flex}.footer-social-circle:hover{background:var(--color-crimson);border-color:var(--color-crimson-bright);transform:translateY(-2px)}.footer-divider{background:var(--border-glass);height:1px;margin-bottom:30px}.footer-bottom{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.footer-copy{color:var(--text-muted);margin:0;font-size:12px}.footer-back-to-top{border:1px solid var(--border-glass);color:#fff;border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-fast);background:#ffffff0d;align-items:center;gap:6px;padding:8px 14px;font-size:11px;font-weight:600;display:inline-flex}.footer-back-to-top:hover{background:#ffffff1f;transform:translateY(-2px)}.modal-backdrop{z-index:300;-webkit-backdrop-filter:blur(14px);background:#000000d9;justify-content:center;align-items:center;padding:24px;animation:.25s ease-out fadeIn;display:flex;position:fixed;inset:0}.modal-container{border:1px solid var(--border-glass);border-radius:var(--radius-lg);background:#140407;flex-direction:column;max-height:90vh;animation:.3s cubic-bezier(.16,1,.3,1) scaleUp;display:flex;overflow:hidden;box-shadow:0 24px 60px #000c,0 0 30px #e11d4840}.project-modal-box{width:760px;max-width:95vw}.modal-header-banner{padding:36px 32px;position:relative}.modal-close-btn{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;cursor:pointer;width:36px;height:36px;transition:all var(--transition-fast);background:#00000080;border:1px solid #fff3;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:18px;right:18px}.modal-close-btn:hover{background:#e11d48cc}.modal-badge{letter-spacing:.1em;text-transform:uppercase;border-radius:var(--radius-full);color:#fff;background:#0009;border:1px solid #fff3;margin-bottom:12px;padding:4px 10px;font-size:10px;font-weight:700;display:inline-block}.modal-project-title{margin:0 0 8px;font-size:28px;font-weight:800}.modal-tagline{color:#ffffffd9;margin:0;font-size:14px}.modal-body-scroll{flex-direction:column;gap:24px;padding:32px;display:flex;overflow-y:auto}.modal-section-title{letter-spacing:.12em;text-transform:uppercase;color:var(--color-crimson-bright);margin:0 0 10px;font-size:12px;font-weight:700}.modal-impact-card{border-radius:var(--radius-md);background:#f59e0b1f;border:1px solid #f59e0b59;align-items:center;gap:14px;padding:16px 20px;display:flex}.impact-sparkle{color:#f59e0b;flex-shrink:0}.impact-label{text-transform:uppercase;color:#fde68a;font-size:10px;font-weight:700;display:block}.impact-text{color:#fff;margin:2px 0 0;font-size:14px;font-weight:700}.modal-text{color:var(--text-secondary);margin:0;font-size:14px;line-height:1.7}.arch-steps-list{flex-direction:column;gap:12px;display:flex}.arch-step-item{border:1px solid var(--border-glass);border-radius:var(--radius-sm);background:#ffffff08;align-items:flex-start;gap:14px;padding:14px 16px;display:flex}.arch-step-num{font-family:var(--font-mono);color:var(--color-crimson-bright);border-radius:var(--radius-sm);background:#e11d481f;flex-shrink:0;padding:3px 8px;font-size:10px;font-weight:700}.arch-step-text{color:var(--text-secondary);margin:0;font-size:13px;line-height:1.6}.challenge-box,.result-box{border:1px solid var(--border-glass);border-radius:var(--radius-sm);background:#ffffff08;align-items:flex-start;gap:12px;padding:16px;display:flex}.challenge-icon{color:#f59e0b;flex-shrink:0;margin-top:2px}.result-icon{color:#10b981;flex-shrink:0;margin-top:2px}.modal-footer-actions{border-top:1px solid var(--border-glass);background:#0a020499;justify-content:flex-end;align-items:center;gap:12px;padding:20px 32px;display:flex}.resume-modal-container{width:860px;max-width:95vw}.resume-control-bar{border-bottom:1px solid var(--border-glass);background:#0a0204cc;justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.resume-control-title{letter-spacing:.08em;align-items:center;gap:8px;font-size:13px;font-weight:700;display:flex}.resume-control-actions{align-items:center;gap:12px;display:flex}.btn-print-resume{background:var(--color-crimson);border:1px solid var(--color-crimson-bright);color:#fff;border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-fast);align-items:center;gap:8px;padding:7px 16px;font-family:inherit;font-size:11px;font-weight:700;display:inline-flex}.btn-print-resume:hover{background:var(--color-crimson-bright)}.modal-close-icon{color:#fff;cursor:pointer;background:0 0;border:none;padding:4px}.printable-resume-paper{color:#1e293b;background:#fff;padding:36px 40px;font-family:Inter,-apple-system,sans-serif;overflow-y:auto}.resume-header{justify-content:space-between;gap:20px;display:flex}.resume-name{color:#0f172a;margin:0 0 4px;font-size:30px;font-weight:800}.resume-role{color:#b91420;margin:0 0 6px;font-size:14px;font-weight:700}.resume-tagline{color:#64748b;max-width:440px;margin:0;font-size:11px;line-height:1.5}.resume-header-right{flex-direction:column;gap:4px;display:flex}.resume-contact-item{color:#475569;align-items:center;gap:6px;font-size:11px;display:flex}.resume-rule{background:#b91420;height:2px;margin:20px 0}.resume-section{margin-bottom:22px}.resume-sec-title{letter-spacing:.12em;color:#0f172a;border-bottom:1px solid #e2e8f0;margin:0 0 10px;padding-bottom:4px;font-size:12px;font-weight:800}.resume-text{color:#334155;margin:0;font-size:12px;line-height:1.6}.resume-exp-entry{margin-bottom:16px}.resume-exp-head{justify-content:space-between;align-items:baseline;margin-bottom:4px;display:flex}.resume-job-title{color:#0f172a;margin:0;font-size:13px;font-weight:700;display:inline}.resume-company{color:#475569;margin-left:8px;font-size:12px}.resume-period{color:#b91420;font-size:11px;font-weight:600}.resume-bullet-list{color:#334155;margin:6px 0;padding-left:18px;font-size:11px;line-height:1.6}.resume-tech-row{color:#64748b;margin-top:4px;font-size:11px}.resume-skills-block{color:#334155;flex-direction:column;gap:6px;font-size:11px;display:flex}.resume-skill-row{gap:8px;display:flex}.skill-cat-label{color:#0f172a;flex-shrink:0;width:140px;font-weight:700}.resume-edu-grade{color:#15803d;margin:2px 0 4px;font-size:11px;font-weight:600}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse-dot{0%{transform:scale(.95);box-shadow:0 0 #10b981b3}70%{transform:scale(1);box-shadow:0 0 0 8px #10b98100}to{transform:scale(.95);box-shadow:0 0 #10b98100}}@keyframes mouse-scroll{0%{opacity:1;transform:translateY(0)}50%{opacity:.3;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleUp{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.fade-in{animation:.3s ease-out fadeIn}@media print{body{color:#000!important;background:#fff!important}.portfolio-app>header,.portfolio-app>main,.portfolio-app>footer,.no-print{display:none!important}.modal-backdrop:not(:has(.printable-resume-paper)){display:none!important}.modal-backdrop{-webkit-backdrop-filter:none!important;backdrop-filter:none!important;background:0 0!important;padding:0!important;position:static!important}.modal-container{box-shadow:none!important;border:none!important;max-height:none!important}.printable-resume-paper{color:#000!important;padding:0!important}}@media (width<=1024px){.about-grid,.experience-layout,.testimonials-grid,.contact-grid{grid-template-columns:1fr}.footer-top{grid-template-columns:1fr 1fr}.architecture-banner{grid-template-columns:1fr}}@media (width<=768px){.desktop-nav{display:none}.mobile-toggle-btn{display:flex}.navbar-pill{gap:16px;padding:8px 12px 8px 16px}.hero-content{padding:0 20px 5vh}.hero-hint{display:none}.hero-stats-banner{grid-template-columns:repeat(2,1fr)}.section-container{padding:80px 18px}.pillars-grid,.personal-interests-grid,.projects-grid,.form-row,.footer-top{grid-template-columns:1fr}.printable-resume-paper{padding:24px}.resume-header,.resume-skill-row{flex-direction:column}.skill-cat-label{width:auto}}.custom-cursor-container{pointer-events:none;z-index:99999;transition:opacity .25s;position:fixed;inset:0}.cursor-hidden{opacity:0}.cursor-visible{opacity:1}.cursor-dot{pointer-events:none;will-change:transform;background:#fff;border-radius:50%;width:7px;height:7px;margin-top:-3.5px;margin-left:-3.5px;transition:width .2s,height .2s,background .2s,margin .2s;position:fixed;top:0;left:0;box-shadow:0 0 10px #ffffffe6,0 0 20px #e11d48}.cursor-dot.dot-hover{background:#f43f5e;width:9px;height:9px;margin-top:-4.5px;margin-left:-4.5px}.cursor-ring{pointer-events:none;will-change:transform;background:#e11d480d;border:1.5px solid #e11d488c;border-radius:50%;width:38px;height:38px;margin-top:-19px;margin-left:-19px;transition:width .28s cubic-bezier(.16,1,.3,1),height .28s cubic-bezier(.16,1,.3,1),border-color .2s,background .2s,margin .28s cubic-bezier(.16,1,.3,1),box-shadow .28s;position:fixed;top:0;left:0;box-shadow:0 0 16px #e11d4833}.cursor-ring.ring-hover{background:#e11d4829;border-color:#ffffffd9;width:58px;height:58px;margin-top:-29px;margin-left:-29px;box-shadow:0 0 24px #e11d4873}.cursor-ring.ring-click{transform:scale(.85)}@media (pointer:coarse),(hover:none){.custom-cursor-container{display:none!important}}
