*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%}body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:inherit}ul,ol{list-style:none}img{display:block;max-width:100%}cite{font-style:italic}.intro p+p{margin-top:.75em}.shot{min-width:0}.shot .open{position:relative;display:block;overflow:hidden;cursor:zoom-in;font:inherit;border:0;width:100%;height:100%;padding:0}.shot img{object-fit:cover;width:100%;height:100%}.shot .desc{position:absolute;text-align:left;color:#fff;opacity:0;background:linear-gradient(#0000,#0000009e);padding:28px 14px 12px;transition:opacity .2s,transform .2s;font-size:14.5px;line-height:1.35;bottom:0;left:0;right:0;transform:translateY(6px)}.shot .open:hover .desc{opacity:1;transform:none}.shot .open:focus-visible .desc{opacity:1;transform:none}@media (hover:none){.shot .desc{opacity:1;transform:none}}.lightbox{cursor:zoom-out;background:0 0;border:0;width:100%;max-width:none;height:100%;max-height:none;margin:0;padding:0}.lightbox[open]{display:flex;justify-content:center;align-items: center}.lb-figure{display:flex;flex-direction:column;align-items: center;gap:14px}.lightbox::backdrop{background:#0a0a0adb}.lb-img{object-fit:contain;border-radius:4px;max-width:min(84vw,1400px);max-height:82vh}.lb-cap{color:#f2f2f2;font-size:16px}.lb-arrow{position:fixed;display:grid;color:#f2f2f2;cursor:pointer;background:0 0;border:0;border-radius:50%;place-items: center;width:48px;height:48px;margin-top:-24px;padding:0;transition:background-color .15s;top:50%}.lb-arrow:hover{background:#ffffff1f}.lb-arrow:focus-visible{outline:2px solid #f2f2f2;outline-offset:2px}.lb-close:focus-visible{outline:2px solid #f2f2f2;outline-offset:2px}.lb-arrow svg{width:26px;height:26px}.lb-prev{left:2vw}.lb-next{right:2vw}.lb-next svg{transform:scaleX(-1)}.lb-close{position:fixed;color:#f2f2f2;cursor:pointer;text-decoration:underline;text-underline-offset:3px;background:0 0;border:0;padding:6px 10px;font:15px/1 inherit;top:18px;right:22px}[hidden]{display:none!important}@media (prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important}}:root[data-layout=day]{--bg:#f6f6f4;--ink:#161616;--mut:#5e5e5e;--fnt:#767676;--line:#dcdcd8}:root[data-layout=day] body{background:var(--bg);color:var(--ink);overflow:hidden;font:17px/1.55 Helvetica Neue,Helvetica,Arial,sans-serif}:root[data-layout=day] a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}:root[data-layout=day] :focus-visible{outline:2px solid var(--ink);outline-offset:3px}:root[data-layout=day] .frame{height:100vh;display:grid;grid-template-columns:420px minmax(0,1fr);gap:56px;max-width:1180px;height:100dvh;margin:0 auto;padding:0 40px}:root[data-layout=day] .side{display:flex;flex-direction:column;min-height:0;padding:clamp(48px,10vh,90px) 0 clamp(32px,6vh,56px)}:root[data-layout=day] .me{display:flex;align-items: center;gap:16px}:root[data-layout=day] .photo{object-fit:cover;background:var(--line);border-radius:50%;width:64px;height:64px}:root[data-layout=day] .name{letter-spacing:-.01em;text-transform:lowercase;font-size:28px;font-weight:700;line-height:1.2}:root[data-layout=day] .where{color:var(--mut);font-size:14px}:root[data-layout=day] .intro{margin-top:24px}:root[data-layout=day] .facts{margin-top:22px}:root[data-layout=day] .facts li{position:relative;margin-top:8px;padding-left:18px;font-size:15.5px}:root[data-layout=day] .facts li:before{content:"-";position:absolute;color:var(--fnt);left:2px}:root[data-layout=day] .todo{color:var(--fnt);font-style:italic}:root[data-layout=day] .links{display:flex;gap:22px;margin-top:auto;padding-top:24px;font-size:15.5px}:root[data-layout=day] .links a:first-child{font-weight:700}:root[data-layout=day] .main{display:flex;flex-direction:column;min-height:0;padding-top:clamp(48px,10vh,90px)}:root[data-layout=day] nav ul{display:flex;border-bottom:1px solid var(--line);gap:26px}:root[data-layout=day] nav a{display:block;text-decoration:none;color:var(--fnt);border-bottom:2px solid #0000;margin-bottom:-1px;padding-bottom:10px;transition:color .15s}:root[data-layout=day] nav a:hover{color:var(--ink)}:root[data-layout=day] nav a[aria-current=page]{color:var(--ink);border-bottom-color:var(--ink)}:root[data-layout=day] .col{overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--line)transparent;flex:1;min-height:0;padding:28px 16px 56px 0}:root[data-layout=day] .entry+.entry{margin-top:38px}:root[data-layout=day] .hd{display:flex;justify-content:space-between;align-items:baseline;gap:16px}:root[data-layout=day] .t{font-size:19px;font-weight:700}:root[data-layout=day] .when{color:var(--mut);white-space:nowrap;font-size:14px}:root[data-layout=day] .sub{color:var(--mut);font-style:italic}:root[data-layout=day] .text{margin-top:10px}:root[data-layout=day] .pts{margin-top:10px}:root[data-layout=day] .pts li{position:relative;margin-top:6px;padding-left:18px;font-size:16px}:root[data-layout=day] .pts li:before{content:"–";position:absolute;color:var(--fnt);left:0}:root[data-layout=day] .group{border-left:1px solid var(--line);margin-top:16px;padding-left:16px}:root[data-layout=day] .gt{font-size:15.5px}:root[data-layout=day] .group li{color:var(--mut);margin-top:4px;font-size:15.5px}:root[data-layout=day] .stack{color:var(--fnt);margin-top:12px;font-size:14px}:root[data-layout=day] .entry .links a{margin-right:18px}@media (max-width:860px){:root[data-layout=day] body{overflow:auto}:root[data-layout=day] .frame{display:block;height:auto;padding:0 20px}:root[data-layout=day] .side{padding:48px 0 28px}:root[data-layout=day] .main{padding:0 0 60px}:root[data-layout=day] nav{position:sticky;background:var(--bg);z-index:1;padding-top:12px;top:0}:root[data-layout=day] .col{overflow:visible;padding-right:0}}:root[data-layout=day] .gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:230px;gap:14px}:root[data-layout=day] .shot.wide{grid-column:span 2}:root[data-layout=day] .shot .open{background:var(--line);border-radius:4px}@media (max-width:560px){:root[data-layout=day] .gallery{grid-template-columns:minmax(0,1fr);grid-auto-rows:240px}:root[data-layout=day] .shot.wide{grid-column:auto}}:root[data-layout=white]{--ink:#111;--mut:#555;--line:#e3e3e3;--link:#1a44c2;--visited:#5b2b9a}:root[data-layout=white] body{color:var(--ink);background:#fff;font:17px/1.6 Helvetica,Arial,sans-serif}:root[data-layout=white] a{color:var(--link);text-decoration:underline;text-underline-offset:2px}:root[data-layout=white] a:visited{color:var(--visited)}:root[data-layout=white] :focus-visible{outline:2px solid var(--link);outline-offset:2px}:root[data-layout=white] .page{max-width:700px;margin:0 auto;padding:64px 24px 96px}:root[data-layout=white] header{display:grid;grid-template-columns:1fr auto;align-items: start;gap:24px}:root[data-layout=white] .photo{border:1px solid var(--line);width:112px}:root[data-layout=white] .name{font-size:28px;line-height:1.2}:root[data-layout=white] .top{color:var(--mut);margin-top:6px;font-size:15px}:root[data-layout=white] .top a{margin-right:12px}:root[data-layout=white] .where{display:inline}:root[data-layout=white] .intro{margin-top:22px}:root[data-layout=white] h2{border-bottom:1px solid var(--line);margin-top:52px;padding-bottom:6px;font-size:19px}:root[data-layout=white] .entry{margin-top:22px}:root[data-layout=white] .hd{display:flex;justify-content:space-between;align-items:baseline;gap:16px}:root[data-layout=white] .t{font-size:17px}:root[data-layout=white] .when{color:var(--mut);white-space:nowrap;font-size:15px}:root[data-layout=white] .sub{color:var(--mut);font-style:italic}:root[data-layout=white] .text{margin-top:6px}:root[data-layout=white] .pts{list-style:disc;margin-top:6px;padding-left:20px}:root[data-layout=white] .pts li{margin-top:3px}:root[data-layout=white] .group{margin-top:12px}:root[data-layout=white] .gt{font-size:16px}:root[data-layout=white] .group ul{list-style:circle;padding-left:20px}:root[data-layout=white] .group li{color:#333}:root[data-layout=white] .stack{color:var(--mut);margin-top:8px;font-size:15px}:root[data-layout=white] .entry .links a{margin-right:14px}:root[data-layout=white] .facts{list-style:disc;margin-top:14px;padding-left:20px}:root[data-layout=white] .facts li{margin-top:4px}:root[data-layout=white] .todo{color:#999;font-style:italic}:root[data-layout=white] footer{border-top:1px solid var(--line);color:var(--mut);margin-top:60px;padding-top:14px;font-size:15px}@media (max-width:560px){:root[data-layout=white] header{grid-template-columns:1fr}:root[data-layout=white] .photo{order:-1;width:96px}}:root[data-layout=white] .gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:220px;gap:14px}:root[data-layout=white] .shot.wide{grid-column:span 2}:root[data-layout=white] .shot .open{background:var(--line);border-radius:0}@media (max-width:560px){:root[data-layout=white] .gallery{grid-template-columns:minmax(0,1fr);grid-auto-rows:240px}:root[data-layout=white] .shot.wide{grid-column:auto}}:root[data-layout=letter]{--bg:#fbfaf8;--ink:#1f1d1a;--mut:#6a655e}:root[data-layout=letter] body{background:var(--bg);color:var(--ink);font:19px/1.65 Charter,Bitstream Charter,Sitka Text,Cambria,Georgia,serif}:root[data-layout=letter] a{text-decoration:underline;text-decoration-color:#b8b2a8;text-underline-offset:3px}:root[data-layout=letter] a:hover{text-decoration-color:var(--ink)}:root[data-layout=letter] :focus-visible{outline:2px solid var(--ink);outline-offset:3px}:root[data-layout=letter] .page{max-width:620px;margin:0 auto;padding:88px 24px 120px}:root[data-layout=letter] .photo{display:block;object-fit:cover;border-radius:50%;width:72px;height:72px}:root[data-layout=letter] .hello{margin-top:28px;font-size:19px;font-weight:400}:root[data-layout=letter] .intro{margin-top:18px}:root[data-layout=letter] .where{color:var(--mut);margin-top:14px;font-size:16px}:root[data-layout=letter] h2{color:var(--mut);margin-top:64px;font-size:19px;font-style:italic;font-weight:400}:root[data-layout=letter] .entry{margin-top:24px}:root[data-layout=letter] .hd{display:flex;justify-content:space-between;align-items:baseline;gap:16px}:root[data-layout=letter] .t{font-size:19px;font-weight:700}:root[data-layout=letter] .when{color:var(--mut);white-space:nowrap;font-variant-numeric:oldstyle-nums;font-size:16px}:root[data-layout=letter] .sub{color:var(--mut);font-style:italic}:root[data-layout=letter] .text{margin-top:8px}:root[data-layout=letter] .pts{margin-top:8px}:root[data-layout=letter] .facts{margin-top:8px}:root[data-layout=letter] .pts li{position:relative;margin-top:6px;padding-left:22px}:root[data-layout=letter] .group li{position:relative;margin-top:6px;padding-left:22px}:root[data-layout=letter] .facts li{position:relative;margin-top:6px;padding-left:22px}:root[data-layout=letter] .pts li:before{content:"–";position:absolute;color:var(--mut);left:0}:root[data-layout=letter] .group li:before{content:"–";position:absolute;color:var(--mut);left:0}:root[data-layout=letter] .facts li:before{content:"–";position:absolute;color:var(--mut);left:0}:root[data-layout=letter] .group{margin-top:16px}:root[data-layout=letter] .gt{font-size:17px;font-style:italic;font-weight:400}:root[data-layout=letter] .group li{margin-top:4px;font-size:17.5px}:root[data-layout=letter] .stack{color:var(--mut);margin-top:10px;font-size:16px}:root[data-layout=letter] .entry .links a{margin-right:16px}:root[data-layout=letter] .todo{color:#a39c92;font-style:italic}:root[data-layout=letter] .sign{margin-top:64px}:root[data-layout=letter] .sign p+p{margin-top:6px}:root[data-layout=letter] .small{color:var(--mut);font-size:16px}:root[data-layout=letter] .gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:230px;gap:14px}:root[data-layout=letter] .shot.wide{grid-column:span 2}:root[data-layout=letter] .shot .open{background:#ece8e1;border-radius:3px}@media (max-width:560px){:root[data-layout=letter] .gallery{grid-template-columns:minmax(0,1fr);grid-auto-rows:240px}:root[data-layout=letter] .shot.wide{grid-column:auto}}:root[data-layout=evening]{--bg:#1a1815;--ink:#eee8df;--mut:#aba397;--fnt:#8c8478;--line:#332f29;--serif:Georgia,"Iowan Old Style",serif;--buncss-light: ;--buncss-dark:initial;color-scheme:dark}:root[data-layout=evening] body{background:var(--bg);color:var(--ink);overflow:hidden;font:16.5px/1.6 -apple-system,BlinkMacSystemFont,Segoe UI,system-ui,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif}:root[data-layout=evening] a{text-decoration:underline;text-decoration-color:#6e675c;text-underline-offset:3px}:root[data-layout=evening] a:hover{text-decoration-color:var(--ink)}:root[data-layout=evening] :focus-visible{outline:1px solid var(--ink);outline-offset:3px}:root[data-layout=evening] .frame{height:100vh;display:grid;grid-template-columns:400px minmax(0,1fr);gap:64px;max-width:1200px;height:100dvh;margin:0 auto;padding:0 44px}:root[data-layout=evening] .side{display:flex;flex-direction:column;min-height:0;padding:clamp(40px,8vh,72px) 0 clamp(32px,6vh,52px)}:root[data-layout=evening] .photo{filter:saturate(.85);border-radius:6px;width:clamp(120px,22vh,200px)}:root[data-layout=evening] .hello{font:400 30px/1.15 var(--serif);margin-top:26px}:root[data-layout=evening] .intro{font:18px/1.55 var(--serif);color:#ddd6cb;margin-top:14px}:root[data-layout=evening] .where{color:var(--fnt);margin-top:12px;font-size:14px}:root[data-layout=evening] .links{display:flex;color:var(--mut);gap:20px;margin-top:auto;padding-top:20px;font-size:15px}:root[data-layout=evening] .main{display:grid;grid-template-columns:120px minmax(0,1fr);gap:28px;min-height:0;padding-top:clamp(48px,10vh,96px)}:root[data-layout=evening] nav ul{display:flex;flex-direction:column;gap:8px}:root[data-layout=evening] nav a{text-decoration:none;color:var(--fnt);transition:color .15s}:root[data-layout=evening] nav a:hover{color:var(--ink)}:root[data-layout=evening] nav a[aria-current=page]{color:var(--ink)}:root[data-layout=evening] nav a[aria-current=page]:after{content:" ←";color:var(--mut)}:root[data-layout=evening] .col{overflow-y:auto;scrollbar-width:thin;scrollbar-color:#3d382f transparent;min-height:0;padding:0 16px 56px 0}:root[data-layout=evening] .entry+.entry{margin-top:40px}:root[data-layout=evening] .hd{display:flex;justify-content:space-between;align-items:baseline;gap:16px}:root[data-layout=evening] .t{font-size:18px;font-weight:600}:root[data-layout=evening] .when{color:var(--fnt);white-space:nowrap;font-size:14px}:root[data-layout=evening] .sub{color:var(--mut);font-family:var(--serif);font-style:italic}:root[data-layout=evening] .text{margin-top:10px}:root[data-layout=evening] .pts{margin-top:10px}:root[data-layout=evening] .pts li{position:relative;margin-top:6px;padding-left:18px}:root[data-layout=evening] .facts li{position:relative;margin-top:6px;padding-left:18px}:root[data-layout=evening] .pts li:before{content:"·";position:absolute;color:var(--fnt);left:4px}:root[data-layout=evening] .facts li:before{content:"·";position:absolute;color:var(--fnt);left:4px}:root[data-layout=evening] .group{border-left:1px solid var(--line);margin-top:16px;padding-left:16px}:root[data-layout=evening] .gt{font-size:15.5px;font-weight:600}:root[data-layout=evening] .group li{color:var(--mut);margin-top:4px;font-size:15.5px}:root[data-layout=evening] .stack{color:var(--fnt);margin-top:12px;font-size:14px}:root[data-layout=evening] .entry .links{margin-top:12px}:root[data-layout=evening] .about-me{border-top:1px solid var(--line);margin-top:48px;padding-top:28px}:root[data-layout=evening] .about-me h2{font:italic 400 17px var(--serif);color:var(--mut)}:root[data-layout=evening] .todo{color:var(--fnt);font-style:italic}@media (max-width:860px){:root[data-layout=evening] body{overflow:auto}:root[data-layout=evening] .frame{display:block;height:auto;padding:0 20px}:root[data-layout=evening] .side{padding:48px 0 28px}:root[data-layout=evening] .photo{width:140px}:root[data-layout=evening] .main{display:block;padding:0 0 60px}:root[data-layout=evening] nav ul{border-top:1px solid var(--line);flex-direction:row;gap:18px;margin-bottom:24px;padding-top:20px}:root[data-layout=evening] .col{overflow:visible;padding-right:0}}:root[data-layout=evening] .gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:230px;gap:14px}:root[data-layout=evening] .shot.wide{grid-column:span 2}:root[data-layout=evening] .shot .open{background:var(--line);border-radius:4px}@media (max-width:560px){:root[data-layout=evening] .gallery{grid-template-columns:minmax(0,1fr);grid-auto-rows:240px}:root[data-layout=evening] .shot.wide{grid-column:auto}}:root[data-layout=card]{--ink:#1d1d1d;--mut:#666;--line:#e6e6e6}:root[data-layout=card] body{color:var(--ink);background:#fff;font:18px/1.6 Charter,Bitstream Charter,Sitka Text,Cambria,Georgia,serif}:root[data-layout=card] a{text-decoration:underline;text-decoration-color:#aaa;text-underline-offset:3px}:root[data-layout=card] a:hover{text-decoration-color:var(--ink)}:root[data-layout=card] :focus-visible{outline:2px solid var(--ink);outline-offset:3px}:root[data-layout=card] .page{max-width:540px;margin:0 auto;padding:16vh 24px 120px}:root[data-layout=card] .photo{display:block;object-fit:cover;border-radius:50%;width:88px;height:88px}:root[data-layout=card] .name{text-transform:lowercase;margin-top:22px;font-size:24px}:root[data-layout=card] .intro{margin-top:12px}:root[data-layout=card] .where{color:var(--mut);margin-top:10px;font-size:15px}:root[data-layout=card] .links{display:flex;gap:18px;margin-top:18px;font-size:16px}:root[data-layout=card] .fold{margin-top:44px}:root[data-layout=card] details{border-top:1px solid var(--line)}:root[data-layout=card] details:last-of-type{border-bottom:1px solid var(--line)}:root[data-layout=card] summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;padding:14px 0;font-size:17px}:root[data-layout=card] summary::-webkit-details-marker{display:none}:root[data-layout=card] summary:after{content:"+";color:var(--mut);transition:transform .2s}:root[data-layout=card] details[open] summary:after{transform:rotate(45deg)}:root[data-layout=card] .body{padding-bottom:22px}:root[data-layout=card] .entry+.entry{margin-top:22px}:root[data-layout=card] .hd{display:flex;justify-content:space-between;align-items:baseline;gap:16px}:root[data-layout=card] .t{font-size:17px;font-weight:700}:root[data-layout=card] .when{color:var(--mut);white-space:nowrap;font-size:14.5px}:root[data-layout=card] .sub{color:var(--mut);font-size:16.5px;font-style:italic}:root[data-layout=card] .text{margin-top:6px;font-size:16.5px}:root[data-layout=card] .pts{margin-top:6px}:root[data-layout=card] .pts li{position:relative;margin-top:5px;padding-left:18px;font-size:16.5px}:root[data-layout=card] .group li{position:relative;margin-top:5px;padding-left:18px;font-size:16.5px}:root[data-layout=card] .facts li{position:relative;margin-top:5px;padding-left:18px;font-size:16.5px}:root[data-layout=card] .pts li:before{content:"–";position:absolute;color:var(--mut);left:0}:root[data-layout=card] .group li:before{content:"–";position:absolute;color:var(--mut);left:0}:root[data-layout=card] .facts li:before{content:"–";position:absolute;color:var(--mut);left:0}:root[data-layout=card] .group{margin-top:12px}:root[data-layout=card] .gt{font-size:16px;font-style:italic;font-weight:400}:root[data-layout=card] .group li{color:#444}:root[data-layout=card] .stack{color:var(--mut);margin-top:10px;font-size:14.5px}:root[data-layout=card] .entry .links{margin-top:10px}:root[data-layout=card] .todo{color:#a3a3a3;font-style:italic}:root[data-layout=card] .gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:190px;gap:14px}:root[data-layout=card] .shot.wide{grid-column:span 2}:root[data-layout=card] .shot .open{background:var(--line);border-radius:4px}@media (max-width:560px){:root[data-layout=card] .gallery{grid-template-columns:minmax(0,1fr);grid-auto-rows:240px}:root[data-layout=card] .shot.wide{grid-column:auto}}
