:root{color:#171411;background:#f9f9f7;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;--paper: #f9f9f7;--ink: #171411;--muted: #716b65;--line: #cfc9c2;--wood: #573622}*{box-sizing:border-box}html{min-width:320px;scroll-behavior:smooth;scroll-padding-top:2rem}body{min-width:320px;min-height:100vh;margin:0;overflow-x:hidden;background:var(--paper);color:var(--ink)}button,a{color:inherit}.hero{width:100%;background:var(--paper)}.hero-artwork{position:relative;width:min(100%,92dvh);margin-inline:auto;aspect-ratio:1668 / 943}.hero-artwork img{display:block;width:100%;height:100%;object-fit:contain}.see-more{position:absolute;top:53%;left:54.5%;width:30%;height:15%;border-radius:.4rem;text-decoration:none;-webkit-tap-highlight-color:transparent}.see-more span{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.see-more:hover{background:#5736220a}.see-more:focus-visible{outline:3px solid var(--wood);outline-offset:.25rem}.projects{--date-column: clamp(8rem, 19vw, 13rem);width:min(100% - 3rem,70rem);margin:0 auto;padding:clamp(3.5rem,6vw,5rem) 0 clamp(7rem,14vw,12rem)}.projects-heading{display:grid;grid-template-columns:var(--date-column) 1fr;align-items:end;padding-bottom:clamp(2.25rem,4vw,3.5rem);border-bottom:1px solid var(--line)}.projects-heading p{margin:0 0 .55rem;color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.72rem;letter-spacing:.12em;text-transform:uppercase}.projects-heading h1{margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(3.4rem,9vw,7.5rem);font-weight:400;line-height:.82;letter-spacing:-.065em}.timeline{position:relative;margin:0;padding:0;list-style:none}.timeline:before{position:absolute;top:2.35rem;bottom:2.35rem;left:var(--date-column);width:1px;background:var(--line);content:""}.timeline-item{position:relative;display:grid;grid-template-columns:var(--date-column) 1fr;padding:clamp(1.9rem,2.8vw,2.6rem) 0;border-bottom:1px solid var(--line)}.timeline-item:before{position:absolute;z-index:1;top:clamp(2.3rem,calc(2.8vw + .4rem),3rem);left:calc(var(--date-column) - .28rem);width:.55rem;height:.55rem;border:1px solid var(--wood);border-radius:50%;background:var(--paper);content:""}.timeline-item time{padding:.35rem 1.5rem 0 0;color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78rem;font-variant-numeric:tabular-nums;letter-spacing:.08em}.timeline-item article{max-width:42rem;padding-left:clamp(2rem,4vw,3.5rem)}.timeline-item h2{margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.75rem,2.6vw,2.35rem);font-weight:400;line-height:1.08;letter-spacing:-.035em;text-wrap:balance}.timeline-item p{max-width:62ch;margin:.75rem 0 0;color:#514b45;font-size:clamp(1rem,1.35vw,1.12rem);line-height:1.55;text-wrap:pretty}.project-links{display:flex;flex-wrap:wrap;gap:.7rem 1.25rem;margin-top:1rem}.project-links a{display:inline-block;padding-bottom:.2rem;border-bottom:1px solid currentColor;font-size:.88rem;font-weight:600;letter-spacing:-.01em;overflow-wrap:anywhere;text-decoration:none;transition:color .18s ease,transform .18s ease}.project-links a:hover{color:var(--wood);transform:translateY(-1px)}.project-links a:focus-visible{outline:2px solid var(--wood);outline-offset:.35rem}@media(max-width:640px){.projects{width:min(100% - 2rem,70rem);padding-top:4.5rem}.projects-heading{display:block;padding-bottom:2.25rem}.projects-heading p{margin-bottom:1.25rem}.projects-heading h1{font-size:clamp(3.5rem,20vw,5.4rem)}.timeline-item{display:block;padding:2rem 0 2.25rem 1.35rem}.timeline-item:before{top:2.45rem;left:0}.timeline:before{top:2.45rem;bottom:2.45rem;left:.28rem}.timeline-item time{display:block;margin-bottom:.85rem;padding-top:0}.timeline-item article{padding-left:0}}@media(min-width:900px)and (min-aspect-ratio:3 / 2){.projects{width:calc(92dvh + var(--date-column));margin-right:0;margin-left:calc(50% - 46dvh - var(--date-column))}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.project-links a{transition:none}}
