@import url("https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap");:root{--color-bg-primary:#0a0a0b;--color-bg-secondary:#111113;--color-bg-tertiary:#18181b;--color-bg-elevated:#1f1f23;--color-bg-hover:#27272a;--color-text-primary:#fafafa;--color-text-secondary:#a1a1aa;--color-text-muted:#71717a;--color-text-link:#a78bfa;--color-border:#27272a;--color-border-hover:#3f3f46;--color-accent-primary:#a78bfa;--color-accent-secondary:#c4b5fd;--color-accent-glow:rgba(167,139,250,0.15);--gradient-accent:linear-gradient(135deg,#a78bfa,#818cf8 50%,#6366f1);--gradient-subtle:linear-gradient(180deg,var(--color-bg-secondary) 0%,var(--color-bg-primary) 100%);--font-sans:"Space Grotesk",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-mono:"JetBrains Mono","SF Mono","Fira Code",monospace;--font-size-xs:0.75rem;--font-size-sm:0.875rem;--font-size-base:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:1.875rem;--font-size-4xl:2.25rem;--font-size-5xl:3rem;--font-size-6xl:3.75rem;--line-height-tight:1.1;--line-height-snug:1.25;--line-height-normal:1.5;--line-height-relaxed:1.625;--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--space-1:0.25rem;--space-2:0.5rem;--space-3:0.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--max-width:720px;--header-height:64px;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:24px;--radius-full:9999px;--shadow-sm:0 1px 2px rgba(0,0,0,0.3);--shadow-md:0 4px 12px rgba(0,0,0,0.4);--shadow-lg:0 8px 24px rgba(0,0,0,0.5);--shadow-glow:0 0 40px var(--color-accent-glow);--transition-fast:150ms cubic-bezier(0.4,0,0.2,1);--transition-base:250ms cubic-bezier(0.4,0,0.2,1);--transition-slow:400ms cubic-bezier(0.4,0,0.2,1);--transition-spring:500ms cubic-bezier(0.34,1.56,0.64,1)}[data-theme=light]{--color-bg-primary:#fafaf9;--color-bg-secondary:#f5f5f4;--color-bg-tertiary:#e7e5e4;--color-bg-elevated:#ffffff;--color-bg-hover:#e7e5e4;--color-text-primary:#1c1917;--color-text-secondary:#57534e;--color-text-muted:#78716c;--color-text-link:#7c3aed;--color-border:#d6d3d1;--color-border-hover:#a8a29e;--color-accent-primary:#7c3aed;--color-accent-secondary:#8b5cf6;--color-accent-glow:rgba(124,58,237,0.12);--gradient-accent:linear-gradient(135deg,#7c3aed,#8b5cf6 50%,#a78bfa);--gradient-subtle:linear-gradient(180deg,var(--color-bg-secondary) 0%,var(--color-bg-primary) 100%);--shadow-sm:0 1px 3px rgba(0,0,0,0.08);--shadow-md:0 4px 12px rgba(0,0,0,0.1);--shadow-lg:0 8px 24px rgba(0,0,0,0.12);--shadow-glow:0 0 40px var(--color-accent-glow)}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}@supports not (scroll-behavior:smooth){html{scroll-behavior:auto}}body{font-family:var(--font-sans);font-size:var(--font-size-base);line-height:var(--line-height-relaxed);color:var(--color-text-primary);background-color:var(--color-bg-primary);min-height:100vh}body:before{content:"";position:fixed;inset:0;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");opacity:.015;pointer-events:none;z-index:1000}::selection{background-color:var(--color-accent-primary);color:var(--color-bg-primary)}h1,h2,h3,h4,h5,h6{font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);letter-spacing:-.02em}h1{font-size:var(--font-size-5xl)}h2{font-size:var(--font-size-3xl)}h3{font-size:var(--font-size-2xl)}h4{font-size:var(--font-size-xl)}p{color:var(--color-text-secondary);max-width:60ch}a{color:inherit;text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-accent-primary)}code{font-family:var(--font-mono);font-size:.9em;padding:var(--space-1) var(--space-2);background:var(--color-bg-elevated);border-radius:var(--radius-sm)}.container{width:100%;max-width:var(--max-width);margin:0 auto;padding:0 var(--space-6)}.main{padding-top:var(--header-height);padding-bottom:var(--space-24);min-height:100vh}.section{margin-bottom:var(--space-20)}.section-header{margin-bottom:var(--space-8)}.section-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-medium);color:var(--color-text-primary);margin-bottom:var(--space-2)}.section-subtitle{font-size:var(--font-size-sm);color:var(--color-text-muted)}.card{display:block;background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);transition:transform var(--transition-spring),border-color var(--transition-base),box-shadow var(--transition-base);cursor:pointer}.card:hover{transform:translateY(-2px);border-color:var(--color-border-hover);box-shadow:var(--shadow-glow)}.card-title{font-size:var(--font-size-base);font-weight:var(--font-weight-medium);margin-bottom:var(--space-1)}.card-description{color:var(--color-text-muted);line-height:var(--line-height-normal)}.card-description,.card-link{font-size:var(--font-size-sm)}.card-link{display:inline-flex;align-items:center;gap:var(--space-1);color:var(--color-accent-primary);margin-top:var(--space-3);font-weight:var(--font-weight-medium)}.card-link svg{width:14px;height:14px;transition:transform var(--transition-fast)}.card:hover .card-link svg{transform:translateX(3px)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-3) var(--space-5);font-family:inherit;font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);border-radius:var(--radius-md);border:none;cursor:pointer;transition:all var(--transition-base)}.btn-primary{background:var(--gradient-accent);color:white}.btn-primary:hover{transform:translateY(-1px);box-shadow:var(--shadow-glow)}.btn-ghost{background:transparent;color:var(--color-text-secondary);border:1px solid var(--color-border)}.btn-ghost:hover{background:var(--color-bg-hover);color:var(--color-text-primary);border-color:var(--color-border-hover)}.tag{display:inline-flex;align-items:center;padding:var(--space-1) var(--space-3);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);background:var(--color-bg-elevated);color:var(--color-text-muted);border-radius:var(--radius-full);border:1px solid var(--color-border)}.tags{display:flex;flex-wrap:wrap;gap:var(--space-2)}.social-links{display:flex;gap:var(--space-3)}.social-link{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:var(--radius-md);background:var(--color-bg-secondary);border:1px solid var(--color-border);color:var(--color-text-muted);transition:all var(--transition-base)}.social-link:hover{background:var(--color-bg-hover);border-color:var(--color-accent-primary);color:var(--color-accent-primary);transform:translateY(-2px)}.social-link svg{width:18px;height:18px}.grid-2{grid-template-columns:repeat(2,1fr);grid-gap:var(--space-4)}.grid-2,.grid-3{display:grid;gap:var(--space-4)}.grid-3{grid-template-columns:repeat(3,1fr);grid-gap:var(--space-4)}@media (max-width:640px){.grid-2,.grid-3{grid-template-columns:1fr}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-fadeIn{animation:fadeIn var(--transition-slow) ease-out}.animate-slideUp{animation:slideUp var(--transition-slow) ease-out}.text-gradient{background:var(--gradient-accent);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.text-muted{color:var(--color-text-muted)}.text-secondary{color:var(--color-text-secondary)}.flex{display:flex}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-2{gap:var(--space-2)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.mt-4{margin-top:var(--space-4)}.mt-8{margin-top:var(--space-8)}.mb-4{margin-bottom:var(--space-4)}.mb-8{margin-bottom:var(--space-8)}@media (max-width:768px){:root{--font-size-5xl:2.25rem;--font-size-4xl:1.875rem;--font-size-3xl:1.5rem}.container{padding:0 var(--space-4)}}.university-logo{transition:filter .3s ease;filter:brightness(0) invert(1)}[data-theme=light] .university-logo{filter:none}