:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#160f0b;--bg-2:#1f1611;--fg:#efe6d8;--muted:#a89a88;--line:#3a2b22;--moss:#9fbd85;--rust:#c9754a;--serif:"Fraunces", Georgia, "Times New Roman", serif;--sans:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--fg);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;line-height:1.6}a{color:inherit}::selection{background:var(--rust);color:var(--bg)}.hero{height:min(92vh,900px);min-height:520px;position:relative;overflow:hidden}.hero img{object-fit:cover;object-position:50% 45%;width:100%;height:100%;position:absolute;inset:0}.hero:after{content:"";background:linear-gradient(#160f0b00 30%,#160f0b59 60%,#160f0bf2 100%),linear-gradient(#160f0b80,#0000 25%);position:absolute;inset:0}.hero-text{z-index:1;position:absolute;bottom:clamp(2rem,8vh,5rem);left:clamp(1.25rem,6vw,5rem)}.eyebrow{letter-spacing:.18em;text-transform:uppercase;color:var(--moss);margin:0 0 .5rem;font-size:.85rem}h1{font-family:var(--serif);font-variation-settings:"opsz" 144;letter-spacing:-.02em;margin:0;font-size:clamp(3rem,9vw,7.5rem);font-weight:300;line-height:.95}h1:after{content:".";color:var(--rust)}nav{z-index:1;letter-spacing:.08em;text-transform:uppercase;gap:1.5rem;font-size:.85rem;display:flex;position:absolute;top:1.5rem;right:clamp(1.25rem,6vw,5rem)}nav a{opacity:.85;border-bottom:1px solid #0000;text-decoration:none}nav a:hover{opacity:1;border-color:var(--moss)}main{max-width:1100px;margin:0 auto;padding:0 clamp(1.25rem,6vw,5rem)}.about{border-bottom:1px solid var(--line);padding:clamp(4rem,10vh,7rem) 0}.lede{font-family:var(--serif);max-width:20ch;margin:0 0 2.5rem;font-size:clamp(1.8rem,4vw,3rem);font-style:italic;font-weight:300;line-height:1.2}.about-body{columns:2;color:var(--muted);column-gap:3rem;font-size:1.05rem}.about-body p{break-inside:avoid;margin:0 0 1rem}#projects{padding:clamp(3rem,8vh,6rem) 0 4rem}h2{font-family:var(--serif);letter-spacing:-.01em;justify-content:space-between;align-items:baseline;margin:0 0 2rem;font-size:2rem;font-weight:400;display:flex}h2 .count{font-family:var(--sans);color:var(--muted);letter-spacing:.15em;font-size:.85rem}.cards{background:var(--line);border:1px solid var(--line);grid-template-columns:repeat(3,1fr);gap:1px;margin:0;padding:0;list-style:none;display:grid}.cards li.big{grid-column:span 2}.cards a{background:var(--bg);flex-direction:column;height:100%;padding:1.75rem;text-decoration:none;transition:background .2s;display:flex}.cards a:hover{background:var(--bg-2)}.cards a:hover h3{color:var(--moss)}.num{color:var(--muted);letter-spacing:.15em;font-size:.75rem}.cards h3{font-family:var(--serif);margin:1.5rem 0 .5rem;font-size:1.6rem;font-weight:400;line-height:1.1;transition:color .2s}.big h3{font-size:2.2rem}.cards p{color:var(--muted);flex:1;margin:0 0 1.25rem;font-size:.95rem}.tags{flex-wrap:wrap;gap:.35rem;display:flex}.tags span{letter-spacing:.08em;text-transform:uppercase;color:var(--rust);font-size:.7rem}.tags span+span:before{content:"· ";color:var(--muted)}footer{max-width:1100px;color:var(--muted);letter-spacing:.05em;flex-wrap:wrap;justify-content:space-between;gap:1rem;margin:0 auto;padding:2rem clamp(1.25rem,6vw,5rem) 3rem;font-size:.8rem;display:flex}@media (width<=800px){.cards{grid-template-columns:1fr 1fr}.cards li.big{grid-column:span 2}.about-body{columns:1}}@media (width<=520px){.cards,.cards li.big{grid-column:auto;grid-template-columns:1fr}nav{gap:1rem}}
