.resume{width:min(48rem,100%);padding:clamp(6.5rem, 15vh, 8.5rem) var(--gutter) 0;margin-inline:auto}.resume__intro{justify-content:space-between;align-items:flex-end;gap:1.5rem 2rem;display:flex}.resume__name{font-family:var(--serif);font-variation-settings:"opsz" 144;letter-spacing:-.045em;font-size:clamp(3rem,8vw,5.4rem);font-weight:340;line-height:.88}.resume__title{font-family:var(--serif);font-variation-settings:"opsz" 48;letter-spacing:-.02em;margin-top:.85rem;font-size:clamp(1.45rem,3vw,2rem);font-style:italic;font-weight:360;line-height:1.15}.resume__deck{max-width:36ch;color:var(--ink-2);margin-top:.45rem;font-size:1.02rem;line-height:1.45}.resume__pdf{border-bottom:1px solid var(--line);color:var(--ink);flex:none;align-items:baseline;gap:.6em;margin-bottom:.2rem;padding:.9rem 0;font-size:1.05rem;transition:border-color .2s;display:inline-flex}.resume__pdf:hover{border-color:var(--accent)}.resume__arrow{fill:none;width:.85em;height:.85em;stroke:var(--accent);stroke-width:1.4px;stroke-linecap:round;stroke-linejoin:round;transition:transform .3s var(--ease-out);align-self:center}.resume__pdf:hover .resume__arrow{transform:translateY(.2em)}.resume__contacts{color:var(--ink-2);flex-wrap:wrap;gap:.4rem 0;margin-top:1.6rem;display:flex}.resume__contacts a{text-underline-offset:.2em;-webkit-text-decoration:underline #0000;text-decoration:underline #0000;transition:color .25s}.resume__contacts a:hover{color:var(--accent);-webkit-text-decoration-color:var(--accent);text-decoration-color:var(--accent)}.resume__contacts li{white-space:nowrap;display:flex}.resume__contacts li+li:before{content:"·";color:var(--ink-3);margin:0 .7rem}.resume__section{margin-top:clamp(2.4rem,6vh,3.6rem)}.resume__section>h2{color:var(--ink-3);margin-bottom:.85rem}.resume__summary{text-wrap:pretty;max-width:62ch;font-size:1.05rem;line-height:1.6}.resume__job{border-top:1px solid var(--line);padding:1.05rem 0 1.15rem}.resume__role{grid-template-columns:1fr auto;align-items:baseline;column-gap:1.5rem;display:grid}.resume__role h3{font-family:var(--serif);font-variation-settings:"opsz" 36;letter-spacing:-.02em;font-size:clamp(1.15rem,2vw,1.4rem);font-weight:500;line-height:1.2}.resume__when{color:var(--ink-3);white-space:nowrap}.resume__where{color:var(--ink-2);grid-column:1/-1;margin-top:.3rem}.resume__job ul{gap:.38rem;margin-top:.75rem;display:grid}.resume__job li{color:var(--ink-2);padding-left:.95rem;font-size:.98rem;line-height:1.45;position:relative}.resume__job li:before{content:"";background:var(--accent);width:.4rem;height:1px;position:absolute;top:.62em;left:0}.resume__skills{border-top:1px solid var(--line)}.resume__skills div{border-bottom:1px solid var(--line);grid-template-columns:9.5rem 1fr;gap:.75rem 1.25rem;padding:.75rem 0;display:grid}.resume__skills dt{font-family:var(--mono);letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);font-size:.68rem}.resume__skills dd{color:var(--ink);line-height:1.45}@media (width<=640px){.resume__intro{flex-direction:column;align-items:flex-start}.resume__pdf{margin-top:.4rem}.resume__role{grid-template-columns:1fr}.resume__when{grid-row:2;margin-top:.35rem}.resume__where{grid-row:3}.resume__skills div{grid-template-columns:1fr;gap:.3rem}}body.route-resume>main{display:none}#resume-view{isolation:isolate;position:relative}.resume-view__smoke{z-index:-1;pointer-events:none;height:100svh;position:absolute;inset:0 0 auto}.resume-view__smoke:after{content:"";background:linear-gradient(to bottom, transparent, var(--bg));height:45%;position:absolute;inset:auto 0 0}#resume-view .proj__foot{display:none}@media print{html:before,html:after,body:before,body:after,.grain,.skip,.cursor,.proj__bar,.nav,.proj__foot,.theme-toggle,.sound-toggle,.resume__pdf{display:none!important}:root{--ink:#1c1915;--ink-2:#3a342c;--ink-3:#5c564c;--line:#1c19152e}html,body{color:var(--ink);background:#fff!important}.has-js [data-reveal]{opacity:1!important;visibility:visible!important;filter:none!important;transform:none!important}.resume{width:auto;max-width:none;margin:0;padding:0}.resume__name{font-size:20pt}.resume__title{margin-top:1pt;font-size:12pt}.resume__deck{color:var(--ink-2);margin-top:1pt;font-size:10pt}.resume__contacts,.resume__when,.resume__where{text-transform:none;letter-spacing:.01em}.resume__contacts{margin-top:6pt;font-size:9pt}.resume__contacts li+li:before{margin:0 .5rem}.resume__contacts a{text-decoration:none}.resume__section{margin-top:6pt}.resume__section>h2{margin-bottom:3pt;font-size:8pt}.resume__summary{font-size:10pt;line-height:1.35}.resume__job{break-inside:avoid;padding:2.5pt 0 2pt}.resume__role h3{font-size:12pt}.resume__when,.resume__where{font-size:8pt}.resume__job ul{gap:1pt;margin-top:2.5pt}.resume__job li{color:var(--ink);font-size:10pt;line-height:1.32}.resume__job li:before{background:var(--ink)}.resume__section--skills{break-inside:avoid}.resume__skills div{padding:2pt 0}.resume__skills dt{font-size:7.5pt}.resume__skills dd{font-size:10pt;line-height:1.35}@page{size:letter;margin:.4in .62in .32in}}
