:root{--color-bg:white
  --color-base: #252422;--color-muted:#9fa0a0;--color-accent:#FFA9E7;--color-link:blue;--color-divider:#dcd1bc;--dot-color:rgba(37, 36, 34, 0.1);--font-mono:'AT Hauss Mono', monospace;--font-sans:'AT Geodesic', sans-serif;--font-size:18px;--font-size-sm:0.875rem;--spacing:1.5rem;--spacing-xl:3rem;--max-width:70ch}*{margin:0;padding:0;box-sizing:border-box;-webkit-font-smoothing:antialiased;font-feature-settings:'kern' 1,'liga' 1}html{font-size:var(--font-size);background-color:var(--color-bg);background-image:radial-gradient(circle,var(--dot-color) 1px,transparent 1px);background-size:20px 20px;color:var(--color-base);font-family:var(--font-mono);font-weight:400;line-height:1.6;padding:var(--spacing)}body{max-width:var(--max-width);margin:2vw auto}h1,h2,h3,.main-nav{font-family:var(--font-mono);font-weight:500;text-transform:uppercase;letter-spacing:.04em;font-size:1.125rem;margin:var(--spacing)0 calc(var(--spacing)/2)}h2{color:var(--color-accent);font-weight:700;font-size:1rem}p{margin-bottom:var(--spacing)}em{font-style:italic}img{width:100%;display:block;margin-bottom:var(--spacing)}.headshot-img{max-width:250px;margin-bottom:var(--spacing);display:block}a{color:var(--color-link);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px;transition:color .2s ease}a:hover{background-color:var(--color-accent);color:#fff;text-decoration-thickness:0}.main-nav{margin-top:var(--spacing);display:flex;flex-wrap:wrap;gap:1rem;font-weight:400}.main-nav a{color:var(--color-base);text-decoration:none;transition:color .2s ease,border-color .2s ease;padding:0 2px}.main-nav a:hover{color:#fff}header,main,footer{margin-bottom:var(--spacing-xl)}header.site-header{display:flex;flex-direction:column;align-items:flex-start}.site-title{font-family:var(--font-mono);font-size:1rem}.site-title h1{margin:0;font-weight:350;text-transform:none;font-size:1rem}.site-title__tag{display:block;font-style:italic}.divider{margin:var(--spacing)0;color:var(--color-divider)}table.classes-taught{border-collapse:collapse;width:100%;margin-top:var(--spacing)}table.classes-taught td{vertical-align:top;padding-bottom:var(--spacing)}table.classes-taught td:first-child{font-family:var(--font-mono);font-size:var(--font-size-sm);text-transform:uppercase;white-space:nowrap}table.classes-taught tbody tr{border-top:1px solid var(--color-divider)}