@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";
body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}
:root{--text:#f5f5f7;--muted:#b3b3c2;--line:#26262f;--accent:#7aa2ff;--accent-soft:#7aa2ff2e;--bg:#0b0b0f;--panel:#121218}*{box-sizing:border-box}body{background-color:var(--bg);color:var(--text);margin:0;padding:0}a{color:inherit;text-decoration:none}.site{scroll-behavior:smooth;min-height:100vh}.eyebrow{text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin:0 0 .75rem;font-size:.75rem}.landing{max-width:1080px;margin:0 auto;padding:2rem 1rem 3.5rem}.landing-hero{grid-template-columns:minmax(0,1.2fr) minmax(210px,280px);align-items:start;gap:1.2rem;display:grid}.landing h1{margin:.3rem 0 .75rem;font-size:clamp(1.8rem,4vw,2.7rem);line-height:1.15}.landing-subtitle{color:var(--muted);margin:0;line-height:1.6}.landing-contact-row{justify-content:space-between;align-items:flex-start;gap:1rem;max-width:760px;margin-top:.85rem;display:flex}.landing-contact-block{align-items:center;display:inline-flex}.landing-photo-wrap{justify-content:flex-end;display:flex}.landing-headshot{aspect-ratio:1;object-fit:cover;object-position:center;border:1px solid #b3b3c233;border-radius:12px;width:clamp(140px,26vw,200px)}.landing-about{border-top:1px solid #b3b3c22e;max-width:75ch;margin-top:1.2rem;padding:1.2rem 0}.landing-about h2,.landing-links h2{margin:0 0 .7rem;font-size:clamp(1.2rem,2.5vw,1.6rem)}.landing-about p{color:var(--muted);margin:0;line-height:1.65}.landing-about p+p{margin-top:.8rem}.landing-about a{color:var(--accent);text-underline-offset:2px;text-decoration:underline}.landing-links{border-top:1px solid #b3b3c22e;margin-top:0;padding:1.2rem 0}.landing-link-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.75rem 3px;max-width:100%;display:grid}.landing-link-card{height:230px;color:var(--muted);text-align:center;background:#11118100;border:1px solid #8c8c9200;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;padding:.8rem .75rem;transition:border-color .2s,color .2s,background .2s;display:flex}.landing-link-card:hover{color:var(--text);background:#9d9da10a;border-color:#bdbdbd63}.landing-link-label{letter-spacing:.01em;font-size:1rem;font-weight:600}.landing-link-icon{justify-content:center;align-items:center;width:30px;height:30px;margin-top:.62rem;display:inline-flex}.landing-link-icon svg{fill:currentColor;width:24px;height:24px}@media (max-width:900px){.landing-hero{grid-template-columns:1fr}.landing-photo-wrap{justify-content:flex-start}.landing-link-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}}@media (max-width:520px){.landing{padding:1rem 1rem 2.2rem}.landing-subtitle,.landing-about p{font-size:.95rem;line-height:1.55}.landing-contact-row{flex-direction:column;align-items:flex-start}.landing-photo-wrap{justify-content:center}.landing-headshot{width:clamp(120px,40vw,160px)}.landing-link-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.landing-link-card{min-height:170px}}
.contact{border-top:1px solid var(--line);background:var(--panel);padding:4rem 6vw 5rem}.contact-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-top:1.5rem;display:grid}.contact-item h3{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin:0 0 .5rem;font-size:1rem}.contact-item p{margin:0;font-size:1.05rem}.contact-item a{color:var(--accent)}.back-to-top{color:var(--text);margin-top:2.5rem;font-weight:600;display:inline-block}

