html{scroll-behavior:smooth}.hero.svelte-1uha8ag{grid-template-columns:minmax(0,1fr) minmax(320px,.9fr);align-items:center;gap:3rem;min-height:calc(100vh - 150px);padding:2rem 0 5rem;display:grid}.hero-copy.svelte-1uha8ag{gap:1.4rem;display:grid}.eyebrow.svelte-1uha8ag{color:#0f766e;letter-spacing:0;text-transform:uppercase;margin:0;font-size:.78rem;font-weight:900}:root.dark .eyebrow.svelte-1uha8ag{color:#5eead4}h1.svelte-1uha8ag,h2.svelte-1uha8ag,h3.svelte-1uha8ag,p.svelte-1uha8ag{margin:0}h1.svelte-1uha8ag{max-width:780px;font-size:clamp(2.85rem,7vw,5.7rem);line-height:.96}h2.svelte-1uha8ag{max-width:760px;font-size:clamp(2rem,4vw,3.5rem);line-height:1}h3.svelte-1uha8ag{font-size:1.2rem}img.svelte-1uha8ag{border-radius:50%}.hero-text.svelte-1uha8ag,.section.svelte-1uha8ag p:where(.svelte-1uha8ag),.about-copy.svelte-1uha8ag p:where(.svelte-1uha8ag),.contact-section.svelte-1uha8ag p:where(.svelte-1uha8ag){color:var(--text-secondary);font-size:1.03rem;line-height:1.75}.hero-text.svelte-1uha8ag{max-width:680px;font-size:1.12rem}.hero-actions.svelte-1uha8ag,.project-actions.svelte-1uha8ag{flex-wrap:wrap;gap:.8rem;display:flex}.hero-actions.svelte-1uha8ag a:where(.svelte-1uha8ag),.project-actions.svelte-1uha8ag button:where(.svelte-1uha8ag),.contact-links.svelte-1uha8ag button:where(.svelte-1uha8ag){border:0;border-radius:999px;justify-content:center;align-items:center;min-height:2.9rem;font-size:.92rem;font-weight:800;text-decoration:none;transition:transform .18s,border-color .18s,background-color .18s;display:inline-flex}.hero-actions.svelte-1uha8ag a:where(.svelte-1uha8ag):hover,.project-actions.svelte-1uha8ag button:where(.svelte-1uha8ag):hover,.contact-links.svelte-1uha8ag button:where(.svelte-1uha8ag):hover{transform:translateY(-2px)}.primary-action.svelte-1uha8ag{background:var(--text-primary);color:var(--bg-primary);padding:0 1.25rem}.secondary-action.svelte-1uha8ag,.project-actions.svelte-1uha8ag button:where(.svelte-1uha8ag),.contact-links.svelte-1uha8ag button:where(.svelte-1uha8ag){border:1px solid var(--border-color);background:var(--bg-surface);color:var(--text-primary);cursor:pointer;padding:0 1.1rem}.hero-visual.svelte-1uha8ag{border:1px solid var(--border-color);background:linear-gradient(135deg, #14b8a633, transparent 34%), linear-gradient(315deg, #84cc162e, transparent 30%), var(--bg-surface);border-radius:30px;min-height:440px;position:relative;overflow:hidden;box-shadow:0 30px 90px #00000029}.browser-shell.svelte-1uha8ag{border:1px solid color-mix(in srgb, var(--border-color) 80%, transparent);background:color-mix(in srgb, var(--bg-primary) 88%, transparent);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);border-radius:24px;position:absolute;inset:2rem 1.25rem 1.25rem 2rem}.browser-bar.svelte-1uha8ag{border-bottom:1px solid var(--border-color);gap:.45rem;padding:1rem;display:flex}.browser-bar.svelte-1uha8ag span:where(.svelte-1uha8ag){background:#14b8a6;border-radius:999px;width:.72rem;height:.72rem}.browser-bar.svelte-1uha8ag span:where(.svelte-1uha8ag):nth-child(2){background:#84cc16}.browser-bar.svelte-1uha8ag span:where(.svelte-1uha8ag):nth-child(3){background:#f97316}.interface-grid.svelte-1uha8ag{grid-template-columns:1.2fr .8fr;gap:.85rem;padding:1rem;display:grid}.metric.svelte-1uha8ag,.chart.svelte-1uha8ag,.code-card.svelte-1uha8ag{border:1px solid var(--border-color);background:var(--bg-surface);border-radius:18px}.metric.svelte-1uha8ag{gap:.5rem;padding:1rem;display:grid}.metric.wide.svelte-1uha8ag{grid-column:span 2}.metric.svelte-1uha8ag span:where(.svelte-1uha8ag),.project-topline.svelte-1uha8ag,.tag-row.svelte-1uha8ag span:where(.svelte-1uha8ag){color:var(--text-secondary);font-size:.75rem;font-weight:800}.metric.svelte-1uha8ag strong:where(.svelte-1uha8ag){font-size:1.45rem}.metric.accent.svelte-1uha8ag{color:#fff;background:#0f766e}.metric.accent.svelte-1uha8ag span:where(.svelte-1uha8ag){color:#ffffffc2}.chart.svelte-1uha8ag{align-items:end;gap:.55rem;min-height:150px;padding:1rem;display:flex}.chart.svelte-1uha8ag span:where(.svelte-1uha8ag){background:linear-gradient(#22c55e,#2563eb);border-radius:999px 999px 6px 6px;flex:1}.chart.svelte-1uha8ag span:where(.svelte-1uha8ag):first-child{height:42%}.chart.svelte-1uha8ag span:where(.svelte-1uha8ag):nth-child(2){height:68%}.chart.svelte-1uha8ag span:where(.svelte-1uha8ag):nth-child(3){height:54%}.chart.svelte-1uha8ag span:where(.svelte-1uha8ag):nth-child(4){height:84%}.chart.svelte-1uha8ag span:where(.svelte-1uha8ag):nth-child(5){height:62%}.code-card.svelte-1uha8ag{min-height:150px;color:var(--text-secondary);align-content:center;gap:.65rem;padding:1rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.86rem;display:grid}.section.svelte-1uha8ag{padding:5rem 0 0}.split-section.svelte-1uha8ag,.about-section.svelte-1uha8ag,.contact-section.svelte-1uha8ag{grid-template-columns:minmax(0,.9fr) minmax(280px,.7fr);align-items:start;gap:2.5rem;display:grid}.section-heading.svelte-1uha8ag{gap:.75rem;margin-bottom:1.5rem;display:grid}.skill-grid.svelte-1uha8ag,.project-grid.svelte-1uha8ag{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1.5rem;display:grid}.skill-group.svelte-1uha8ag,.project-card.svelte-1uha8ag,.contact-section.svelte-1uha8ag{border:1px solid var(--border-color);background:var(--bg-surface);border-radius:24px}.skill-group.svelte-1uha8ag{gap:1.2rem;padding:1.4rem;display:grid}.pill-list.svelte-1uha8ag,.tag-row.svelte-1uha8ag{flex-wrap:wrap;gap:.55rem;display:flex}.pill-list.svelte-1uha8ag span:where(.svelte-1uha8ag),.tag-row.svelte-1uha8ag span:where(.svelte-1uha8ag){border:1px solid var(--border-color);background:var(--bg-primary);border-radius:999px}.pill-list.svelte-1uha8ag span:where(.svelte-1uha8ag){padding:.7rem .9rem;font-weight:800}.project-grid.svelte-1uha8ag{grid-template-columns:repeat(3,minmax(0,1fr))}.project-card.svelte-1uha8ag{gap:1rem;padding:1.25rem;display:grid}.project-card.svelte-1uha8ag p:where(.svelte-1uha8ag){color:var(--text-secondary);line-height:1.65}.project-topline.svelte-1uha8ag{justify-content:space-between;gap:1rem;display:flex}.tag-row.svelte-1uha8ag span:where(.svelte-1uha8ag){padding:.45rem .65rem}.about-copy.svelte-1uha8ag{gap:1rem;display:grid}.contact-section.svelte-1uha8ag{align-items:center;margin:5rem 0 2rem;padding:2rem}.contact-intro.svelte-1uha8ag,.contact-card.svelte-1uha8ag,.contact-card-header.svelte-1uha8ag,.contact-list.svelte-1uha8ag{gap:.75rem;display:grid}.contact-card.svelte-1uha8ag{border:1px solid var(--border-color);background:var(--bg-primary);border-radius:22px;justify-self:end;width:min(100%,520px);padding:1.25rem}.contact-card-header.svelte-1uha8ag{grid-template-columns:auto 1fr;align-items:start;gap:1rem}.avatar-mark.svelte-1uha8ag{color:#fff;background:linear-gradient(135deg,#14b8a6,#2563eb);border-radius:18px;place-items:center;width:3.2rem;height:3.2rem;font-weight:900;display:grid}.contact-list.svelte-1uha8ag{margin-top:.4rem}.contact-item.svelte-1uha8ag{border:1px solid var(--border-color);background:var(--bg-surface);border-radius:16px;gap:.25rem;padding:.85rem;display:grid}.contact-item.svelte-1uha8ag span:where(.svelte-1uha8ag){color:var(--text-secondary);text-transform:uppercase;font-size:.75rem;font-weight:900}.contact-item.svelte-1uha8ag strong:where(.svelte-1uha8ag){overflow-wrap:anywhere;font-size:.98rem}.contact-links.svelte-1uha8ag{flex-wrap:wrap;gap:.8rem;margin-top:.35rem;display:flex}@media (width<=900px){.hero.svelte-1uha8ag,.split-section.svelte-1uha8ag,.about-section.svelte-1uha8ag,.contact-section.svelte-1uha8ag,.skill-grid.svelte-1uha8ag,.project-grid.svelte-1uha8ag{grid-template-columns:1fr}.hero.svelte-1uha8ag{min-height:auto;padding-top:1rem}.hero-visual.svelte-1uha8ag{min-height:360px}.contact-card.svelte-1uha8ag{justify-self:start}}@media (width<=560px){.hero.svelte-1uha8ag{gap:2rem;padding-bottom:3rem}h1.svelte-1uha8ag{font-size:2.7rem}.hero-actions.svelte-1uha8ag a:where(.svelte-1uha8ag),.project-actions.svelte-1uha8ag button:where(.svelte-1uha8ag),.contact-links.svelte-1uha8ag button:where(.svelte-1uha8ag){width:100%}.hero-visual.svelte-1uha8ag{border-radius:22px;min-height:320px}.browser-shell.svelte-1uha8ag{inset:1rem}.interface-grid.svelte-1uha8ag{grid-template-columns:1fr}.metric.wide.svelte-1uha8ag{grid-column:auto}.chart.svelte-1uha8ag,.code-card.svelte-1uha8ag{min-height:110px}.section.svelte-1uha8ag{padding-top:3.5rem}.contact-section.svelte-1uha8ag{margin-top:3.5rem;padding:1.25rem}}
