@media (prefers-reduced-motion: reduce){.card,main>section{transition:none;opacity:1;transform:none}.project-arrow{transition:none}.project-card:hover .project-arrow,.project-card:focus-within .project-arrow{transform:none}.project-card:is(:hover,:focus-within){transform:none}}:root{--bg:#0b0f14;--surface:#131923;--surface-2:#0f141d;--text:#e9eef5;--muted:#a6b0c2;--border:#1e2633;--accent:#22c55e;--accent-2:#16a34a;--accent-soft:#102217;--accent-gradient: linear-gradient( 45deg, var(--accent), #7dd3fc 35%, #ffffff 70% )}html{font-family:system-ui,sans-serif;background:var(--bg);background-size:224px}body{color:var(--text);margin:0}.text-gradient{background-image:var(--accent-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-size:400%;background-position:0%}.link-card{list-style:none;display:flex;background-color:var(--surface);background-image:none;background-size:400%;border-radius:12px;background-position:100%;transition:transform .2s cubic-bezier(.22,1,.36,1),background .2s,border-color .2s;box-shadow:inset 0 0 0 1px #ffffff1a,0 8px 24px #00000059;border:1px solid var(--border)}.link-card>a{display:flex;flex-direction:column;gap:.5rem;width:100%;text-decoration:none;line-height:1.45;padding:1.5rem;border-radius:12px;color:var(--text);background-color:var(--surface);opacity:.9}.link-card h2,.link-card p{margin:0}.link-card:is(:hover,:focus-within){transform:translateY(-2px);background-position:0;background-color:var(--surface-2);box-shadow:0 8px 24px #00000073}.link-card:is(:hover,:focus-within) h2{color:var(--text)}header#main{margin:12vh auto 4rem;text-align:center;width:800px;max-width:calc(100% - 2rem)}header#main h1{margin-top:.67em}main{margin:auto;padding:1rem;width:800px;max-width:calc(100% - 2rem);color:var(--text);font-size:18px;font-weight:300;line-height:1.6;display:flex;flex-direction:column;gap:4rem}.tagline{margin-top:.5rem;text-align:center;font-size:1rem;line-height:1.6;color:var(--muted)}main>section{padding:1rem;border-radius:12px;opacity:0;transform:translateY(8px);transition:opacity .3s ease-out,transform .3s ease-out}#contact{text-align:center}.profile_pic{height:150px;width:150px;border-radius:50%;text-align:center;margin:auto;display:block}@media (max-width:1024px){header#main h1{margin-top:1.2rem}}@media (max-width:640px){header#main h1{margin-top:.75rem}}.cta-buttons{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap;margin-top:1.5rem}.btn{display:inline-block;padding:.75rem 1.5rem;border-radius:8px;text-decoration:none;font-weight:600;background:var(--accent);color:var(--bg);transition:background .2s}.btn:hover,.btn:focus{background:var(--accent-2)}.btn.secondary{background:transparent;color:var(--accent);border:2px solid var(--accent)}.btn.secondary:hover,.btn.secondary:focus{background:var(--accent);color:var(--bg)}.projects-grid{display:grid;gap:2rem}.card{background-color:var(--surface);border:1px solid var(--border);border-radius:12px;padding:1.5rem;opacity:0;transform:translateY(8px);transition:opacity .3s ease-out,transform .3s ease-out}.card.visible,main>section.visible{opacity:1;transform:none}.project-card h3,.skill-card h3{margin-top:0}.project-header{display:flex;align-items:center;gap:.5rem}.project-title{flex:0 1 auto;min-width:0;margin:0}.project-title,.project-title a{color:var(--accent);background-image:linear-gradient(to bottom,color-mix(in srgb,var(--accent) 85%,white),color-mix(in srgb,var(--accent) 85%,black));background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.project-title a{text-decoration:none}.project-title a:hover,.project-title a:focus{text-decoration:underline}.project-title a:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.project-stack{color:var(--muted);font-size:.9rem;margin-top:.25rem}.project-arrow{margin-left:auto;flex:0 0 auto;display:flex;align-items:center;height:1em;color:var(--accent);transition:transform .2s ease}.project-card:hover .project-arrow,.project-card:focus-within .project-arrow{transform:translate(4px)}.project-card:is(:hover,:focus-within){transform:translateY(-2px)}.project-desc{margin-top:.75rem}.project-highlights{margin-top:.5rem;padding-left:1.25rem}.skills-list{color:var(--muted);font-size:.9rem;margin-top:.25rem}.skill-desc{margin-top:.5rem}.skills-grid{display:grid;gap:2rem;grid-template-columns:repeat(auto-fit,minmax(235px,1fr))}footer{font-size:14px;margin-bottom:4rem;text-align:center;color:color-mix(in srgb,var(--text) 70%,transparent)}footer a{color:var(--accent);text-decoration:none}footer a:hover{color:var(--accent-2)}
