@font-face{font-family:Folio Sans;src:url(/fonts/folio-sans-upright.woff2)format("woff2");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Folio Sans;src:url(/fonts/folio-sans-italic.woff2)format("woff2");font-weight:100 900;font-style:italic;font-display:swap}:root{--pt:1.7px;--font:"Folio Sans", system-ui, sans-serif;--text:#000;--secondary:#6b6b6b;--accent:#0f4c81;--crimson:#912c3b;--award:var(--crimson);--mark:var(--crimson);--family:var(--accent);--icon:#7089a4;--entry-hover:#e6eef8;--frame:#fff;--frame-edge:#d9e1e9;--frame-shadow:#0f325a24;--viewer-dim:#081220c7;--rule:#000;--background:#f2f7fd;--w-name:300;--w-family-name:600;--w-mark:600;--w-heading:700;--w-subheading:600;--w-title:600;--w-text:400;--w-tag:600;--fs-name:calc(25.106 * var(--pt));--fs-heading:calc(9.863 * var(--pt));--fs-text:calc(8.966 * var(--pt));--fs-secondary:calc(8.518 * var(--pt));--fs-tag:calc(8.07 * var(--pt));--fs-small:calc(7.173 * var(--pt));--lh-name:calc(33.873 * var(--pt));--lh-heading:calc(13.948 * var(--pt));--lh-text:calc(10.959 * var(--pt));--lh-prose:calc(11.955 * var(--pt));--measure:calc(487.28 * var(--pt));--hint:calc(71.731 * var(--pt));--gutter:calc(9.963 * var(--pt));--photo:calc(62 * var(--pt));--rule-width:calc(.399 * var(--pt));--underline:calc(.299 * var(--pt));--gap-entry:calc(4.49 * var(--pt));--gap-row:calc(2.49 * var(--pt));--gap-section:calc(14.97 * var(--pt));--gap-after-title:calc(5.3 * var(--pt));--gap-note:calc(.31 * var(--pt));--gap-after-note:calc(8.97 * var(--pt));--gap-group-after-note:calc(10.15 * var(--pt));--gap-group-after-title:calc(7.97 * var(--pt));--gap-before-group:calc(8.99 * var(--pt));--gap-after-group:calc(6.79 * var(--pt))}*,:before,:after{box-sizing:border-box}html{font-family:var(--font);-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth}body{background:var(--background);color:var(--text);font-size:var(--fs-text);font-weight:var(--w-text);line-height:var(--lh-text);font-kerning:normal;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0}.page{max-width:calc(var(--measure) + 2.5rem);padding:0 1.25rem calc(36 * var(--pt));margin:0 auto}a{color:inherit;text-decoration:none}a:hover{color:var(--accent);text-decoration:underline;text-decoration-thickness:var(--underline);text-underline-offset:calc(2.2 * var(--pt))}a:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px}p{margin:0}strong,b{font-weight:var(--w-title)}img{max-width:100%}.sc{font-variant-caps:small-caps}.nw{white-space:nowrap}.ul{text-decoration:underline;text-decoration-thickness:var(--underline);text-underline-offset:calc(2.2 * var(--pt));text-decoration-skip-ink:none}.icon{fill:currentColor;flex:none;width:1em;height:1em}.sep{color:var(--secondary);padding:0 .5em}.xs{word-spacing:.042em}.ln{white-space:nowrap;display:block}.ln[style]{transform:scaleX(var(--squeeze));transform-origin:0}.masthead{padding-top:calc(46.44 * var(--pt));text-align:center}.name{font-size:var(--fs-name);font-weight:var(--w-name);line-height:var(--lh-name);margin:0}.name .family{color:var(--family);font-weight:var(--w-family-name)}.name .mark{color:var(--mark);font-weight:var(--w-mark)}.contact,.menu{color:var(--secondary);font-size:var(--fs-tag);line-height:var(--lh-text);flex-wrap:wrap;justify-content:center;display:flex}.contact{margin-top:calc(1.53 * var(--pt))}.contact a{align-items:center;gap:.3em;display:inline-flex}.contact .icon{width:1.1em;height:1.1em}.contact .copied{color:var(--accent)}.menu{margin-top:calc(2.49 * var(--pt))}.intro{column-gap:calc(18 * var(--pt));margin-top:calc(13.14 * var(--pt));grid-template-columns:minmax(0,1fr);align-items:start;display:grid}.intro.with-photo{grid-template-columns:minmax(0, 1fr) var(--photo)}.intro .prose{line-height:var(--lh-prose);text-align:justify;hyphens:auto}.intro p+p{margin-top:var(--lh-prose)}.photo{margin:0}.photo img{border-radius:calc(1.5 * var(--pt));width:100%;height:auto;display:block}.section{margin-top:var(--gap-section)}.section>h2{font-size:var(--fs-heading);font-weight:var(--w-heading);line-height:var(--lh-heading);text-transform:uppercase;align-items:center;gap:.8em;margin:0;display:flex}.section>h2 .rule{border-top:var(--rule-width) solid var(--rule);flex:1}.section>h2 .top{color:var(--secondary);opacity:.5;margin-left:-.3em;font-size:.9em;display:inline-flex}.section>h2 .top:hover{color:var(--accent);opacity:1}.note{margin-top:var(--gap-note);color:var(--secondary)}.note strong{color:var(--text)}.section>h2+.entries{margin-top:var(--gap-after-title)}.section>.note+.entries{margin-top:var(--gap-after-note)}.section h3{margin:var(--gap-before-group) 0 var(--gap-after-group);font-size:var(--fs-heading);font-weight:var(--w-subheading);line-height:var(--lh-heading)}.section>h2+h3{margin-top:var(--gap-group-after-title)}.section>.note+h3{margin-top:var(--gap-group-after-note)}.entries{margin:0;padding:0;list-style:none}.entry{grid-template-columns:var(--hint) minmax(0, 1fr);column-gap:var(--gutter);margin-bottom:var(--gap-entry);align-items:baseline;display:grid}.entry.row{margin-bottom:var(--gap-row)}.entry.row>.body+.body{margin-top:var(--gap-row)}.hint{color:var(--secondary);text-align:right;white-space:nowrap;grid-column:1;justify-self:end}.body{grid-column:2;min-width:0}.tag{color:var(--accent);font-size:var(--fs-tag);font-weight:var(--w-tag)}.files{height:var(--lh-text);margin-bottom:calc(-1 * var(--lh-text));font-size:var(--fs-tag);justify-content:flex-end;align-items:center;gap:.55em;display:flex}.files a{color:var(--icon);display:inline-flex}.files .icon{width:.9em;height:.9em}.files a:hover{color:var(--accent)}.entry{--reach-y:calc(4 * var(--pt));isolation:isolate;position:relative}.entry.row{--reach-y:calc(var(--gap-row) / 2)}.entry:before{content:"";inset:calc(-1 * var(--reach-y)) calc(-4 * var(--pt));z-index:-1;border-radius:calc(3 * var(--pt) + var(--reach-y));background:var(--entry-hover);opacity:0;pointer-events:none;transition:opacity .15s;position:absolute}.entry .files{opacity:0;pointer-events:none;transition:opacity .15s}.entry.open:before,.entry:has(a:focus-visible):before{opacity:1}.entry.open .files,.entry:has(a:focus-visible) .files{opacity:1;pointer-events:auto}@media (hover:hover){.entry:hover:before{opacity:1}.entry:hover .files{opacity:1;pointer-events:auto}}@media (hover:none){.entry{cursor:pointer;-webkit-tap-highlight-color:transparent}}@media (prefers-reduced-motion:reduce){.entry:before,.entry .files{transition:none}}.title{font-weight:var(--w-title)}.detail{color:var(--secondary);font-size:var(--fs-secondary)}.award{color:var(--award);font-size:var(--fs-secondary);font-weight:var(--w-title)}.rest{color:var(--secondary)}.place .ln{display:flow-root}.place .where{float:right;padding-left:1em;font-style:italic}blockquote.quote{margin:0}.quote footer{margin-top:calc(1 * var(--pt));color:var(--secondary);font-size:var(--fs-secondary)}.site-footer{margin-top:var(--gap-section);text-align:center}.site-footer .puzzle{width:min(100%, calc(232.23 * var(--pt)));margin:0 auto calc(20.43 * var(--pt));display:block}.site-footer .puzzle img{width:100%;height:auto;display:block}.site-footer .copyright{margin-top:calc(8 * var(--pt));color:var(--secondary);font-size:var(--fs-small)}.epigraph{margin-top:calc(1 * var(--pt));font-style:italic}.epigraph .quote footer em{font-style:normal}.epigraph .quote p{color:var(--secondary);text-wrap:balance}.drawings{grid-template-columns:repeat(auto-fill, minmax(min(100%, calc(95 * var(--pt))), 1fr));gap:calc(10 * var(--pt));margin:calc(30 * var(--pt)) 0 0;text-align:center;align-items:start;padding:0;list-style:none;display:grid}.drawings.masonry{grid-auto-rows:2px;row-gap:0}.drawing{padding:calc(5 * var(--pt)) calc(5 * var(--pt)) calc(6 * var(--pt));background:var(--frame);border:1px solid var(--frame-edge);border-radius:calc(2 * var(--pt));transition:transform .2s,box-shadow .2s}@media (hover:hover){.drawing:hover{transform:translateY(calc(-2.5 * var(--pt)));box-shadow:0 calc(5 * var(--pt)) calc(12 * var(--pt)) var(--frame-shadow)}}@media (prefers-reduced-motion:reduce){.drawing{transition:none}.drawing:hover{transform:none}}.drawing a{display:block}.drawing img{width:100%;height:auto;display:block}.drawing a+a{margin-top:calc(4 * var(--pt))}.drawing .series{margin-top:calc(5 * var(--pt));color:var(--secondary);font-size:var(--fs-secondary)}.drawing .series+.title{margin-top:0}.drawing .title{margin-top:calc(5 * var(--pt))}.drawing .detail{font-style:italic}.drawing .detail.stacked span{display:block}.drawing .detail.stacked .dot{display:none}html:has(dialog.viewer[open]){scrollbar-gutter:stable;overflow:hidden}dialog.viewer{max-width:none;max-height:none;padding:calc(14 * var(--pt));background:0 0;border:0;margin:auto;overflow:visible}dialog.viewer::backdrop{background:var(--viewer-dim)}dialog.viewer[open],dialog.viewer[open]::backdrop{animation:.18s ease-out viewer-in}@keyframes viewer-in{0%{opacity:0}}.viewer-frame{padding:calc(6 * var(--pt));background:var(--frame);border-radius:calc(2.5 * var(--pt));box-shadow:0 calc(8 * var(--pt)) calc(30 * var(--pt)) #00000059;text-align:center;margin:0}.viewer-image{background:var(--frame-edge);display:block}.viewer-caption{padding-top:calc(5 * var(--pt))}.viewer-caption .series{color:var(--secondary);font-size:var(--fs-secondary)}.viewer-caption .detail{font-style:italic}.viewer-close{top:calc(4 * var(--pt));right:calc(4 * var(--pt));padding:calc(4 * var(--pt));color:var(--frame);font-size:var(--fs-heading);cursor:pointer;opacity:.8;background:0 0;border:0;display:inline-flex;position:fixed}.viewer-close:hover,.viewer-close:focus-visible{opacity:1}@media (prefers-reduced-motion:reduce){dialog.viewer[open],dialog.viewer[open]::backdrop{animation:none}}@media (width<=899px){.ln{white-space:normal;display:inline}.ln[style]{transform:none}.place .ln{display:inline}.place .where{float:none;text-align:right;padding-left:0;display:block}}@media (width<=40rem){.masthead{padding-top:calc(28 * var(--pt))}.contact{column-gap:1.1rem}.menu{column-gap:1.6em}.contact .sep,.menu .sep{display:none}.intro,.intro.with-photo{row-gap:calc(12 * var(--pt));grid-template-columns:1fr}.intro .prose{text-align:left}.photo{width:calc(55 * var(--pt));order:-1;margin:0 auto}.entry{grid-template-columns:1fr}.hint,.body{grid-column:1}.hint{text-align:left;white-space:normal;justify-self:start}.hint:empty{display:none}.files{vertical-align:-.1em;height:auto;margin:0 0 0 .6em;display:inline-flex}.place .where{text-align:left}}
