:root{--bg: #050408;--glass: rgba(255, 255, 255, .07);--glass-sm: rgba(255, 255, 255, .05);--border: rgba(255, 255, 255, .11);--border-bright: rgba(255, 255, 255, .2);--text: #f0eeff;--muted: rgba(240, 235, 255, .5);--accent: #a78bfa;--radius-xl: 20px;--radius-lg: 14px;--radius-md: 10px}*,*:before,*:after{box-sizing:border-box}html,body,#root{margin:0;height:100%}body{font-family:Inter,system-ui,-apple-system,sans-serif;font-size:16px;line-height:1.6;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;overflow-y:auto}.page{min-height:100%;position:relative}.orb{position:fixed;border-radius:50%;pointer-events:none;z-index:0;filter:blur(110px);opacity:.5}.orb-1{top:-20%;left:-10%;width:54vw;height:54vw;background:radial-gradient(circle,#7c3aed 0%,transparent 62%);animation:orbDrift1 14s ease-in-out infinite}.orb-2{top:-10%;right:-14%;width:44vw;height:44vw;background:radial-gradient(circle,#2563eb 0%,transparent 62%);animation:orbDrift2 16s ease-in-out infinite}.orb-3{bottom:-20%;left:-8%;width:50vw;height:50vw;background:radial-gradient(circle,#be185d 0%,transparent 62%);animation:orbDrift1 12s ease-in-out infinite reverse}.orb-4{bottom:-14%;right:-10%;width:42vw;height:42vw;background:radial-gradient(circle,#0e7490 0%,transparent 62%);animation:orbDrift2 15s ease-in-out infinite reverse}.orb-5{top:40%;left:35%;width:26vw;height:26vw;background:radial-gradient(circle,#6d28d9 0%,transparent 62%);animation:orbDrift3 18s ease-in-out infinite}.site-head{position:fixed;inset:1.1rem 1.4rem auto;z-index:20;display:flex;align-items:center;gap:.875rem;padding:.6rem 1.1rem;background:#ffffff0f;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border-bright);border-radius:999px;max-width:calc(100vw - 2.8rem);width:fit-content;box-shadow:0 4px 20px #0000004d,inset 0 1px #ffffff1f}.monogram{text-decoration:none;color:var(--text);font-size:.9rem;font-weight:700;letter-spacing:-.02em;background:linear-gradient(135deg,#a78bfa,#60a5fa);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.site-tagline{font-size:.78rem;font-weight:500;color:var(--muted);letter-spacing:.01em}.bento-grid{position:relative;z-index:10;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:auto;gap:.875rem;padding:5.5rem 1.1rem 1.5rem;max-width:1400px;margin:0 auto;min-height:100svh}.bento-card{border:1px solid var(--border-bright);border-radius:var(--radius-xl);padding:1.5rem;background:#ffffff0f;backdrop-filter:blur(28px);-webkit-backdrop-filter:blur(28px);box-shadow:0 8px 40px #00000059,inset 0 1px #ffffff21,inset 0 -1px #ffffff0a;opacity:0;animation:bentoEnter .6s cubic-bezier(.21,1,.22,1) forwards}.bento-card:nth-child(1){animation-delay:60ms}.bento-card:nth-child(2){animation-delay:.13s}.bento-card:nth-child(3){animation-delay:.2s}.bento-card:nth-child(4){animation-delay:.27s}.bento-card:nth-child(5){animation-delay:.34s}.bento-card:nth-child(6){animation-delay:.41s}.card-hero{grid-column:1 / 3}.card-meta{grid-column:3 / 4}.card-exp{grid-column:1 / 3}.card-projects{grid-column:3 / 4}.card-skills{grid-column:1 / 2}.card-contact{grid-column:2 / 4}.card-label{margin:0 0 1rem;font-size:.68rem;font-weight:700;color:var(--accent);letter-spacing:.1em;text-transform:uppercase}.card-kicker{margin:0 0 1.1rem;font-size:.68rem;font-weight:700;color:var(--accent);letter-spacing:.1em;text-transform:uppercase}.hero-heading{margin:0;display:grid;gap:.3rem;line-height:1.05}.hero-heading span{font-size:clamp(2.6rem,5vw,4.8rem);font-weight:800;color:var(--text);letter-spacing:-.05em;line-height:1}.hero-heading strong{font-size:clamp(1.1rem,2.2vw,1.9rem);font-weight:400;color:var(--muted);letter-spacing:-.02em}.card-intro{margin:1.1rem 0 0;color:var(--muted);font-size:clamp(.9rem,1.4vw,1rem);max-width:58ch;line-height:1.75}.hero-actions{margin-top:1.5rem;display:flex;flex-wrap:wrap;gap:.65rem}.hero-actions a{text-decoration:none;border-radius:var(--radius-md);padding:.6rem 1.3rem;font-size:.875rem;font-weight:600;transition:all .18s ease}.hero-actions a:first-child{background:linear-gradient(135deg,#7c3aed,#2563eb);color:#fff;box-shadow:0 4px 18px #7c3aed73}.hero-actions a:first-child:hover{transform:translateY(-2px);box-shadow:0 8px 28px #7c3aed99}.hero-actions a:last-child{border:1px solid var(--border-bright);color:var(--text);background:var(--glass)}.hero-actions a:last-child:hover{background:#ffffff1c;border-color:#ffffff4d;transform:translateY(-2px)}.meta-list{margin:0;padding:0;list-style:none;display:grid;gap:.75rem}.meta-list li{border-top:1px solid var(--border);padding-top:.75rem}.meta-list li:first-child{border-top:none;padding-top:0}.meta-list span{display:block;font-size:.65rem;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.meta-list strong{display:block;margin-top:.2rem;font-size:.9rem;font-weight:500;color:var(--text);line-height:1.35}.timeline{display:grid;gap:0}.timeline-entry{border-top:1px solid var(--border);padding:.875rem 0 .875rem .75rem}.timeline-entry:first-child{border-top:none;padding-top:0}.timeline-row{display:flex;justify-content:space-between;gap:.75rem;flex-wrap:wrap;align-items:flex-start}.timeline-row h3{margin:0;font-size:.88rem;font-weight:600;color:var(--text);letter-spacing:-.01em}.timeline-row span{font-size:.72rem;font-weight:500;color:var(--muted);white-space:nowrap}.timeline-company{margin:.18rem 0 0;font-size:.78rem;font-weight:500;color:var(--accent)}.timeline-entry ul{margin:.5rem 0 0;padding-left:1rem;color:var(--muted);display:grid;gap:.25rem;font-size:.82rem;line-height:1.6}.project-list{display:grid;gap:0}.project-row{text-decoration:none;color:var(--text);border-top:1px solid var(--border);padding:.75rem 0;display:grid;grid-template-columns:84px 1fr;gap:.875rem;align-items:center;transition:opacity .18s ease}.project-row:first-child{border-top:none;padding-top:0}.project-row:hover{opacity:.75}.project-thumb{width:84px;height:56px;border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden;position:relative;background:var(--glass-sm);display:grid;place-items:center}.project-thumb img{width:100%;height:100%;object-fit:cover;display:block;position:relative;z-index:2}.project-thumb span{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:var(--muted);font-size:.9rem;font-weight:700;z-index:1}.project-row h3{margin:0;font-size:.88rem;font-weight:600;color:var(--text)}.project-row p{margin:.2rem 0 0;font-size:.78rem;color:var(--muted)}.skills-grid{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(2,1fr);gap:.4rem}.skill-pill{display:flex;align-items:center;gap:.45rem;padding:.42rem .65rem;background:var(--glass-sm);border:1px solid var(--border);border-radius:var(--radius-md);font-size:.8rem;font-weight:500;color:var(--text);transition:background .15s ease,border-color .15s ease}.skill-pill:hover{background:#ffffff17;border-color:#fff3}.skill-icon{width:20px;height:20px;flex-shrink:0;border-radius:6px;background:#ffffff14;display:grid;place-items:center;position:relative;overflow:hidden}.skill-icon img{width:72%;height:72%;object-fit:contain;position:relative;z-index:1}.skill-icon span{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-size:.38rem;font-weight:700;color:var(--muted)}.contact-form{display:grid;gap:.75rem}.contact-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem}.contact-form label{display:grid;gap:.32rem}.contact-form label span{font-size:.72rem;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.contact-form input,.contact-form textarea{width:100%;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--glass-sm);color:var(--text);padding:.6rem .85rem;font:inherit;font-size:.9rem;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}.contact-form input::placeholder,.contact-form textarea::placeholder{color:var(--muted);opacity:.5}.contact-form textarea{resize:vertical;min-height:100px}.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:var(--accent);background:#a78bfa12;box-shadow:0 0 0 3px #8b5cf621}.contact-form button{justify-self:start;cursor:pointer;border:none;border-radius:var(--radius-md);background:linear-gradient(135deg,#7c3aed,#2563eb);color:#fff;font:inherit;font-size:.875rem;font-weight:600;padding:.6rem 1.4rem;box-shadow:0 4px 18px #7c3aed66;transition:transform .15s ease,box-shadow .15s ease}.contact-form button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 26px #7c3aed94}.contact-form button:disabled{opacity:.5;cursor:not-allowed}.contact-form-status{margin:.65rem 0 0;font-size:.82rem;font-weight:500}.contact-form-status.success{color:#34d399}.contact-form-status.error{color:#f87171}@keyframes bentoEnter{0%{opacity:0;transform:translateY(16px) scale(.99)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes orbDrift1{0%,to{transform:translate(0) scale(1)}33%{transform:translate(3%,4%) scale(1.05)}66%{transform:translate(-2%,2%) scale(.97)}}@keyframes orbDrift2{0%,to{transform:translate(0) scale(1)}33%{transform:translate(-4%,-3%) scale(1.04)}66%{transform:translate(3%,-2%) scale(.98)}}@keyframes orbDrift3{0%,to{transform:translate(0) scale(1)}50%{transform:translate(-5%,5%) scale(1.08)}}@media (prefers-reduced-motion: reduce){.bento-card{animation:none!important;opacity:1!important}.orb{animation:none!important}}@media (max-width: 1100px){.bento-grid{grid-template-columns:repeat(2,1fr);padding-top:5rem}.card-hero{grid-column:1 / 3}.card-meta{grid-column:1 / 2}.card-exp{grid-column:2 / 3;grid-row:2}.card-projects{grid-column:1 / 2;grid-row:3}.card-skills{grid-column:2 / 3;grid-row:3}.card-contact{grid-column:1 / 3}}@media (max-width: 700px){.bento-grid{grid-template-columns:1fr;padding:4.5rem .75rem 1.25rem;gap:.65rem}.card-hero,.card-meta,.card-exp,.card-projects,.card-skills,.card-contact{grid-column:1 / -1;grid-row:auto}.hero-heading span{font-size:2.4rem}.contact-grid{grid-template-columns:1fr}.site-tagline{display:none}}@media (max-width: 420px){.bento-card{padding:1.1rem;border-radius:var(--radius-lg)}.skills-grid{grid-template-columns:repeat(2,1fr)}.project-row{grid-template-columns:70px 1fr}.project-thumb{width:70px;height:46px}}
