.spotlight{position:fixed;inset:0;pointer-events:none;z-index:0}.spotlight:before{content:"";position:absolute;inset:0;background:radial-gradient(600px circle at var(--spotlight-x, 50%) var(--spotlight-y, 50%),rgba(59,130,246,.12),transparent 60%);transition:opacity .15s ease;opacity:var(--spotlight-opacity, 1)}.container{position:relative;min-height:100vh}.container .children{position:relative;zIndex:1}#about{color:var(--text-muted);display:flex;flex-direction:column;justify-content:space-between}@media(min-width:1024px){#about{padding:0 0 0 2rem}}#about span{padding:4px}.navigation-links{display:flex;flex-direction:column}.navigation-links a{text-decoration:none;color:var(--text);padding:2rem 0}.navLink{display:inline-flex;align-items:center;gap:12px;font-size:.875rem;font-weight:500;letter-spacing:.04em;color:var(--text-muted);text-decoration:none;transition:color .2s ease}.navIndicator{display:block;height:2px;width:32px;background:#475569;transition:width .2s ease,background-color .2s ease}.navLink:hover{color:#e2e8f0}.navLink:hover .navIndicator{width:48px;background:#94a3b8}.navLink.isActive,.navLink[aria-current=true]{color:#f1f5f9}.navLink.isActive .navIndicator,.navLink[aria-current=true] .navIndicator{width:48px;background:#e2e8f0}.navLink:focus-visible{outline:2px solid rgba(59,130,246,.6);outline-offset:4px;border-radius:6px}@media(prefers-reduced-motion:reduce){.navLink,.navIndicator{transition:none}}#experience .work-history-item{display:flex;flex-direction:column;padding:2rem;border-radius:5%}@media(min-width:1024px){#experience .work-history-item{flex-direction:row}#experience .work-history-item .time{width:30%;margin-top:.25rem}#experience .work-history-item .info{width:70%}}#experience .work-history-item .description{color:var(--text-muted)}#experience .work-history-item .skills{margin:.25rem 0}#experience .work-history-item .skills .skill{background-color:transparent;border:1px solid #1E293B;color:var(--text-muted);display:inline-flex;align-items:center;padding:.25rem .65rem;border-radius:9999px;font-size:.75rem;font-weight:500;line-height:1;white-space:nowrap;margin:2px}#experience :hover{background-color:#0a1020}#experience :hover .info .title,#experience :hover .time{color:#3b82f6}#experience :hover .skills .skill{background-color:#3b82f614;border-color:#3b82f6;color:#e5e7eb}#experience .work-history-item{--spin: 0turn}#experience .work-history-item .skills .skill{position:relative;isolation:isolate;background-color:transparent;border:1px solid #475569;color:var(--text-muted);display:inline-flex;align-items:center;padding:.25rem .65rem;border-radius:9999px;font-size:.75rem;font-weight:500;line-height:1;white-space:nowrap;margin:2px}#experience .work-history-item .skills .skill:before{content:"";position:absolute;inset:-1px;padding:1px;border-radius:inherit;background:conic-gradient(from var(--spin),var(--accent),#a78bfa,#34d399,var(--accent),#f59e0b,var(--accent));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;pointer-events:none;z-index:-1}#experience .work-history-item:hover{background-color:#0a1020;animation:spinColors 4s linear infinite}#experience .work-history-item:hover .info .title,#experience .work-history-item:hover .time{color:#3b82f6}#experience .work-history-item:hover .skills .skill{background-color:#3b82f614;border-color:transparent;color:#e5e7eb}#experience .work-history-item:hover .skills .skill:before{opacity:1}@media(prefers-reduced-motion:reduce){#experience .work-history-item:hover{animation:none}}#projects .project-list-item{display:flex;flex-direction:column;padding:2rem;border-radius:5%}#projects .project-list-item .description{color:var(--text-muted)}#projects .project-list-item .title{color:var(--text);text-decoration:none}#projects .project-list-item .skills{margin:1rem 0 2rem}#projects .project-list-item .skills .skill{background-color:transparent;border:1px solid #1E293B;color:var(--text-muted);display:inline-flex;align-items:center;padding:.25rem .65rem;border-radius:9999px;font-size:.75rem;font-weight:500;line-height:1;white-space:nowrap;margin:2px}#projects :hover{background-color:#0a1020}#projects :hover .title{color:#3b82f6}#projects :hover .skills .skill{background-color:#3b82f614;border-color:#3b82f6;color:#e5e7eb}@property --spin{syntax: "<angle>"; inherits: true; initial-value: 0turn;}#projects .project-list-item{--spin: 0turn}#projects .project-list-item .skills .skill{position:relative;isolation:isolate;background-color:transparent;border:1px solid #475569;color:var(--text-muted);display:inline-flex;align-items:center;padding:.25rem .65rem;border-radius:9999px;font-size:.75rem;font-weight:500;line-height:1;white-space:nowrap;margin:2px}#projects .project-list-item .skills .skill:before{content:"";position:absolute;inset:-1px;padding:1px;border-radius:inherit;background:conic-gradient(from var(--spin),var(--accent),#a78bfa,#34d399,var(--accent),#f59e0b,var(--accent));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;pointer-events:none;z-index:-1}#projects .project-list-item:hover{background-color:#0a1020;animation:spinColors 4s linear infinite}#projects .project-list-item:hover .title{color:#3b82f6}#projects .project-list-item:hover .skills .skill{background-color:#3b82f614;border-color:transparent;color:#e5e7eb}#projects .project-list-item:hover .skills .skill:before{opacity:1}@keyframes spinColors{to{--spin: 1turn}}@media(prefers-reduced-motion:reduce){#projects .project-list-item:hover{animation:none}}.social-links{display:flex;gap:4px;justify-content:space-between}.social-links .icon{height:30px;width:30px;color:#e5e7eb}.social-links .icon :hover{color:#2563eb}.contact{width:100%}.contactCard{background:#020617b8;border:1px solid rgba(30,41,59,.85);border-radius:18px;padding:1.5rem;display:grid;gap:1.25rem;box-shadow:0 1px #ffffff08 inset,0 12px 36px #00000040;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.contactLeft{display:flex;align-items:center;gap:1.25rem}.contactBlurb{min-width:0}.contactTitle{margin:0;font-size:1.05rem;color:var(--text);letter-spacing:.02em}.contactText{margin:.35rem 0 0;color:var(--text-muted);font-size:.95rem}.contactRight{display:flex;flex-direction:column;gap:.75rem}.contactRow{display:flex;align-items:center;gap:.85rem;padding:.9rem 1rem;border-radius:14px;text-decoration:none;background:#0f172a8c;border:1px solid rgba(30,41,59,.7);transition:transform .16s ease,border-color .16s ease,background-color .16s ease}.contactRow:hover{transform:translateY(-1px);border-color:#3b82f68c;background:#0f172abf}.contactRow:focus-visible{outline:2px solid rgba(59,130,246,.6);outline-offset:3px}.contactIcon{width:38px;height:38px;border-radius:999px;display:grid;place-items:center;background:#3b82f61f;border:1px solid rgba(59,130,246,.25);color:var(--text)}.contactMeta{display:flex;flex-direction:column;gap:.1rem;min-width:0}.contactLabel{font-size:.75rem;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.contactValue{color:var(--text);font-weight:600;font-size:.95rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contactSocial{padding-top:.35rem}.pfp{--ring: conic-gradient( from 0deg, var(--accent), #a78bfa, #34d399, var(--accent), #f59e0b, var(--accent) );margin:0;width:200px;aspect-ratio:1 / 1;padding:4px;box-sizing:border-box;border-radius:999px;position:relative;display:grid;place-items:center;overflow:visible;box-shadow:0 0 0 1px #ffffff0f inset}.pfp:before{content:"";position:absolute;inset:-14px;border-radius:inherit;background:var(--ring);filter:blur(18px);opacity:.5;z-index:-1;pointer-events:none}.pfp{background:none}.pfp:after{content:"";position:absolute;inset:0;border-radius:inherit;background:var(--ring);animation:ringSpin 4s linear infinite;z-index:0}.pfp>img,.image{width:100%;height:100%;border-radius:inherit;object-fit:cover;display:block;padding:0;margin:0;background:var(--surface);aspect-ratio:1 / 1;position:relative;z-index:1}@keyframes ringSpin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.pfp:after{animation:none}}@media(min-width:1024px){.contactCard{grid-template-columns:1fr 1fr;align-items:center;padding:1.75rem}.contactRight{justify-self:end;width:min(420px,100%)}}:root{--bg: #0F172A;--surface: #020617;--text: #E5E7EB;--text-muted: #94A3B8;--accent: #3B82F6;--accent-hover: #2563EB;--divider: #1E293B}html,body{height:100%}body{margin:0;background-color:var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;line-height:1.6;overflow-x:hidden;overflow-y:auto}body h1{font-size:4rem;margin:0}body h2{color:var(--text)}#root{padding:.5rem;min-height:100vh;margin:.5rem}@media(min-width:1024px){#root{padding:2rem;min-height:100vh}}.page{display:grid;grid-template-columns:1fr;gap:2.5rem;padding-bottom:2rem}.sidebar{display:flex;flex-direction:column;gap:2rem;justify-content:flex-start}.sidebarTop{display:flex;flex-direction:column}.subtitleBlock{margin-top:1.5rem}.title{margin-top:.25rem}.tagline{margin-top:.25rem;color:var(--text-muted)}.sidebarBottom{margin-top:0}.content{display:flex;flex-direction:column;gap:4rem;overflow:visible;height:auto;min-width:0}.contactRow,.contactMeta,.contactRight{min-width:0}.contactValue{overflow-wrap:anywhere;word-break:break-word}@media(min-width:768px){.page{gap:3rem}}@media(min-width:1024px){.page{display:block;position:relative}.sidebar{position:fixed;left:4rem;width:320px;height:100vh;display:flex;flex-direction:column;justify-content:flex-start;gap:1rem;overflow:hidden}.content{margin-left:calc(320px + 4rem);min-width:0}}
