:root{--font-sans:'AT Hauss', sans-serif;--size-sm:0.875rem;--size-base:1.25rem;--weight-base:500;--unit-xs:0.25rem;--unit-sm:0.5rem;--unit-md:1.25rem;--unit-lg:1.5rem;--unit-xl:2rem;--space-vert:calc(var(--unit-xl) * 2);--text-max:40rem;--wrap-max:50rem;--bg:#fdfcf8;--text:#3d3d3a;--accent:#f9423a;--accent-70:#f96d67;--op-dim:0.4;--ease-base:200ms ease}@media(max-width:42rem){:root{--space-vert:var(--unit-xl)}}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);font-weight:var(--weight-base);color:var(--text);background-color:var(--bg);font-size:var(--size-base);overscroll-behavior:none}hgroup{margin-bottom:var(--space-vert)}h1,h2,h3{font-weight:var(--weight-base);font-size:var(--size-base)}p{max-width:var(--text-max);margin-bottom:var(--unit-md)}a{color:var(--text);text-underline-offset:3px;&:hover{text-decoration:underline}}main a:hover{color:var(--accent)}.wrap{max-width:var(--wrap-max);padding:var(--unit-lg)var(--unit-md);min-height:100vh;display:flex;flex-direction:column}main{flex:1}.site-nav{display:flex;justify-content:flex-end;gap:var(--unit-md);a{text-decoration:none;&:hover{text-decoration:underline}}}header{margin-bottom:var(--space-vert)}.header-top{display:grid;grid-template-columns:1fr 1fr;column-gap:var(--unit-md);margin-bottom:var(--unit-xl);@media only screen and (min-width:42rem){grid-template-columns: 1fr 1fr 1fr; .site-nav{grid-column:3}}}.site-identity{display:flex;flex-direction:column;gap:var(--unit-xs)}.site-title{text-decoration:none;&:hover{text-decoration:underline}}.site-bio{padding-top:var(--unit-xs);a:hover{color:var(--accent)}}footer nav{display:flex;gap:var(--unit-lg);flex-wrap:wrap;a{text-decoration:none;opacity:var(--op-dim);transition:opacity var(--ease-base);&:hover{opacity:1;text-decoration:underline}}}.headshot img{max-width:300px;height:auto}.button{display:inline-block;padding:.4em .8em;border:1px solid var(--text);text-decoration:none;font-size:var(--size-sm);margin-bottom:var(--unit-xl);transition:background-color var(--ease-base),color var(--ease-base),border-color var(--ease-base);&:hover{background-color:var(--accent-70);color:var(--bg);border-color:transparent;text-decoration:none}}ol li{margin-bottom:var(--unit-sm);margin-left:var(--unit-lg)}