.hamburger.svelte-3i3c54{display:none;position:fixed;top:1rem;right:1rem;z-index:9999;padding:.5rem;border-radius:50%;background:transparent;border:none;cursor:pointer;line-height:0;color:var(--text-primary)}.hamburger.home.svelte-3i3c54:not(.scrolled){color:var(--text-light)}.hamburger.scrolled.svelte-3i3c54{background-color:var(--bg-surface);box-shadow:var(--shadow)}aside.svelte-3i3c54{display:none;position:fixed;z-index:9999;inset:0 0 0 auto;background-color:var(--bg-surface);border-radius:1rem 0 0 1rem;border-top:var(--border) 3px solid;max-width:70%;min-width:250px;min-height:100svh}aside.sidebarTouched.svelte-3i3c54{animation:.5s ease-out forwards closeSidebar}aside.sidebarOpen.svelte-3i3c54{animation:.5s ease-out forwards openSidebar}.sidebarHeader.svelte-3i3c54{display:flex;justify-content:space-between;align-items:center;padding:1.25rem 1.25rem 1rem;border-bottom:1px solid var(--accent)}.sidebarFooter.svelte-3i3c54{display:flex;justify-content:space-between;padding:.75rem 1.25rem;gap:1rem;border-top:1px solid var(--accent)}nav.svelte-3i3c54{display:flex;flex-direction:column;gap:.5rem}nav.svelte-3i3c54 ul:where(.svelte-3i3c54){list-style:none;padding:0;margin:0}nav.svelte-3i3c54 a:where(.svelte-3i3c54){display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem}aside.svelte-3i3c54 nav:where(.svelte-3i3c54){margin:1rem .75rem auto}aside.svelte-3i3c54 nav:where(.svelte-3i3c54) a:where(.svelte-3i3c54){display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;text-decoration:none;color:var(--text);border-radius:12px;margin-bottom:.75rem}aside.svelte-3i3c54 nav:where(.svelte-3i3c54) a.active:where(.svelte-3i3c54){background-color:var(--border)}header.svelte-3i3c54{display:none;position:sticky;top:0;right:0;bottom:0;left:0;z-index:9999;height:5rem;width:100vw;padding:.75rem 1.25rem .75rem 1rem;border-radius:0 0 12px 12px;background-color:transparent;align-items:center}header.home.svelte-3i3c54:not(.scrolled){color:var(--text-light)}header.scrolled.svelte-3i3c54{background-color:var(--bg-surface);box-shadow:var(--shadow);color:var(--text-primary)}.linkList.svelte-3i3c54{display:flex;height:100%;gap:.75rem}.linkList.svelte-3i3c54 a:where(.svelte-3i3c54){display:flex;align-items:center;justify-content:center;min-width:6rem;height:100%;font-weight:600;font-size:.75rem;letter-spacing:1px;text-decoration:none;color:var(--text)}.linkList.svelte-3i3c54 a:where(.svelte-3i3c54):hover,.linkList.svelte-3i3c54 a.active:where(.svelte-3i3c54){text-decoration:underline;font-weight:700}.navbarControls.svelte-3i3c54{display:flex;align-items:center;height:100%;margin-left:auto}@media(max-width:767px){aside.svelte-3i3c54{display:flex;flex-direction:column;transform:translate(100%);transition:transform .5s ease-out,background-color .3s ease-in-out,color .3s ease-in-out,border-color .3s ease-in-out}aside.sidebarOpen.svelte-3i3c54{transform:translate(0)}.hamburger.svelte-3i3c54{display:block}}@media(min-width:768px){header.svelte-3i3c54{display:flex;justify-content:space-between}}footer.svelte-10tqldg{position:relative;width:100%;height:fit-content;min-height:8rem;display:flex;align-items:center;justify-content:space-between}footer.svelte-10tqldg .copyright:where(.svelte-10tqldg){display:flex;flex-direction:column;width:40%}@media screen and (max-width:576px){footer.svelte-10tqldg .contactSection:where(.svelte-10tqldg){width:100%;max-width:10rem}footer.svelte-10tqldg .contactSection:where(.svelte-10tqldg) :where(.svelte-10tqldg){flex-direction:row}}footer.svelte-10tqldg .contactSection:where(.svelte-10tqldg) a:where(.svelte-10tqldg){height:100%;display:flex;align-items:center;vertical-align:center;color:var(--text-muted);text-decoration:none;transition:color .1s}footer.svelte-10tqldg .contactSection:where(.svelte-10tqldg) a:where(.svelte-10tqldg):hover{color:var(--text-primary)}button.svelte-1wk8p8z{display:flex;align-items:center;background:transparent;border:2px solid var(--accent-mid);border-radius:.75rem;cursor:pointer;padding:.5rem .75rem;color:inherit}button.svelte-1y6i3g2{display:flex;gap:.75rem;align-items:center;background:transparent;border:2px solid var(--accent-mid);border-radius:.75rem;cursor:pointer;padding:.5rem .75rem;color:inherit}.btn.svelte-18sv61c{display:flex;align-items:center;gap:.25rem;padding:.75rem 1.5rem;border-radius:var(--radius);transition:background-color 50ms;border:transparent 2px solid}.btn.svelte-18sv61c.btnPrimary{background-color:var(--accent)!important;color:var(--accent-dark)!important;box-shadow:var(--shadow)}.btn.svelte-18sv61c.btnPrimary.outline{border-color:var(--accent);background-color:transparent}.btn.svelte-18sv61c.btnPrimary.outline:hover{background-color:var(--accent)}.btn.svelte-18sv61c.btnPrimary:hover{background-color:var(--accent-mid)}.btn.svelte-18sv61c.btnSecondary.outline{border-color:var(--accent)}.btn.svelte-18sv61c.btnSecondary:hover{background-color:var(--accent)}.techStackIcon.svelte-xdnq1h{width:fit-content;max-width:120px;min-width:fit-content;display:flex;flex-direction:column;align-items:center}.techStackIcon.svelte-xdnq1h img:where(.svelte-xdnq1h){height:5rem}.techStackIcon.svelte-xdnq1h p:where(.svelte-xdnq1h){margin:.5rem 0 0}.card.svelte-oviq8z{background:var(--bg-surface);border-radius:8px;padding:28px;border-top:3px solid var(--accent);display:flex;flex-direction:column;gap:16px;transition:border-top-color .2s,box-shadow .2s;min-height:20rem}.card.svelte-oviq8z:hover{border-top-color:var(--accent-dark);box-shadow:0 4px 20px #37466d14}.cardTags.svelte-oviq8z{display:flex;flex-wrap:wrap;gap:6px}.tag.svelte-oviq8z{font-size:.7rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-light);background:var(--accent-dark);padding:3px 8px;border-radius:4px}.cardTitle.svelte-oviq8z{font-size:1.15rem;font-weight:700;color:var(--card-title);line-height:1.3}.cardDesc.svelte-oviq8z{font-size:.875rem;color:var(--text-primary);line-height:1.65;flex:1}.cardLink.svelte-oviq8z{display:inline-flex;align-items:center;gap:6px;font-size:.8rem;font-weight:600;color:#37466d;text-decoration:none;padding:7px 14px;border-radius:6px;align-self:flex-start;transition:background .2s,border-color .2s}
