/* One shared canvas and navigation for text, photography, and the chooser. */
:root{--bg:#fff;--paper:#fff;--ink:#0d0d0d;--dim:#707070;--muted:#707070;--line:#e6e6e6;--wine:var(--ink);--mb:90px;--reading-mast:160px;color-scheme:light}
@media(prefers-color-scheme:dark){:root:not([data-theme="light"]){--bg:#0e0e0e;--paper:#0e0e0e;--ink:#ededec;--dim:#999999;--muted:#999999;--line:#262626;color-scheme:dark}}
:root[data-theme="dark"]{--bg:#0e0e0e;--paper:#0e0e0e;--ink:#ededec;--dim:#999999;--muted:#999999;--line:#262626;color-scheme:dark}
body{background:var(--bg);color:var(--ink)}
.site-header{position:fixed;inset:0 5% auto;z-index:20;max-width:none;height:var(--mb);margin:0;background:var(--bg);border-bottom:1px solid var(--line);font-family:Inter,Arial,sans-serif}
.brand{display:inline-flex;align-items:center;flex:none;font-family:Inter,Arial,sans-serif;font-size:26px;letter-spacing:-1.5px;font-weight:600}
.brand .wordmark{font:inherit;letter-spacing:inherit}.brand .wordmark>span{font-family:Georgia,'Times New Roman',serif;font-style:italic;font-weight:400}
.site-header nav{gap:28px;font-size:13px}.site-header nav a{color:var(--muted);padding:8px 0;border-bottom:1px solid transparent}.site-header nav a:hover,.site-header nav a[aria-current]{color:var(--ink);border-color:var(--ink)}
.site-footer{font-family:Inter,Arial,sans-serif;background:var(--bg);font-size:.875rem;line-height:1.6}
.texts-page .site-footer,.gallery-canvas~.site-footer{position:static;scroll-snap-align:end;z-index:10;max-width:none;margin:0 5%;padding:18px 0;border-top:none}
.texts-masthead{top:var(--mb);padding-top:24px;background:linear-gradient(var(--bg) 70%,transparent)}
.texts-progress{top:var(--mb)}.texts-topics{font-size:14px;gap:3px 18px}.texts-topics a{white-space:normal}
.reading-screen h1,.gallery-canvas h1{font-family:'Inter Tight',Inter,Arial,sans-serif;font-size:clamp(2rem,5vw,2.441rem);font-weight:400;line-height:1.15;letter-spacing:-.01em;margin:0;color:var(--ink)}
.gallery-canvas .reading-screen{padding-top:var(--reading-mast)}.gallery-status{font:13px/1.6 Inter,Arial,sans-serif!important;color:var(--muted);margin-top:18px!important}
.landing{padding-top:calc(var(--mb) + 65px)}.intro h1 em{color:var(--ink)}.text-choice{background:color-mix(in srgb,var(--ink) 6%,var(--bg));color:var(--ink)}.photo-choice{background:var(--ink);color:var(--bg)}.archive,.gallery,.legal{padding-top:calc(var(--mb) + 55px)}
::selection{background:var(--ink);color:var(--bg)}
@media(max-width:700px){:root{--mb:80px;--reading-mast:160px}.site-header{inset:0 6% auto;height:var(--mb);margin:0}.brand{font-size:23px}.site-header nav{gap:20px;font-size:12px}.texts-masthead{padding:18px 24px 14px}.texts-page .site-footer,.gallery-canvas~.site-footer{margin-inline:6%;font-size:.875rem;padding:15px 0;gap:12px}.site-footer nav{gap:18px}.texts-topics{font-size:13px}.landing{padding-top:calc(var(--mb) + 42px)}}
@media(prefers-reduced-motion:reduce){.reading-reveal{opacity:1;transform:none}}

/* Archive and reader share the same header geometry at every viewport. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
:root{--header-gutter:64px;--header-padding:28px;--brand-size:21.44px;--header-height:100px}
.archive-page{--mb:0px;padding-top:var(--header-height)}
.texts-page{--mb:0px;--reading-mast:calc(var(--header-height) + 24px)}
.archive-page .site-header,.texts-page .texts-masthead{
  inset:0 0 auto;box-sizing:border-box;width:100%;max-width:none;
  min-height:var(--header-height);height:auto;margin:0;
  padding:var(--header-padding) var(--header-gutter);
  display:flex;align-items:center;justify-content:space-between;gap:16px;
  border:0;font-family:Inter,Arial,sans-serif;
}
.archive-page .site-header,.texts-page .texts-masthead{position:fixed;z-index:20;flex-wrap:nowrap;background:var(--bg)}
/* Fade the reader controls without moving the logo toward the viewport edge. */
.texts-page .texts-masthead.is-tucked:not(:focus-within){transform:none}
.archive-page .brand,.texts-page .texts-masthead .brand{
  min-height:44px;font-size:var(--brand-size);line-height:1.25;letter-spacing:-1px;
}
.texts-page .texts-topics{margin:0;max-width:none;flex:none;font-size:.875rem}
.texts-page .texts-topics a{display:inline-flex;align-items:center;min-height:44px}
.archive-page .timeline-layout{padding-top:28px}
.archive-page .work-detail{padding-top:28px}
.brand{gap:6.7px}
.brand-mark{width:auto;height:.8em;flex:none;fill:currentColor}
@media(min-width:701px) and (max-width:1099px){
  :root{--header-gutter:36px;--header-padding:24px;--brand-size:20.1px;--header-height:92px}
}
@media(max-width:700px){
  :root{--header-gutter:20px;--header-padding:18px;--brand-size:17.42px;--header-height:80px}
  .archive-page .timeline-layout,.archive-page .work-detail{padding-top:20px}
}
/* Keep supporting information readable and keyboard targets easy to locate. */
.site-footer a,.texts-topics a{display:inline-block;padding-block:6px}
a:focus-visible,button:focus-visible{outline:2px solid var(--ink);outline-offset:4px}
.skip{z-index:100;color:var(--bg)}
.legal p,.legal li,.legal dd,.legal dt{font-size:1rem}

.site-footer{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:8px 24px}
.site-footer,.texts-page .site-footer{padding-block:16px}
.site-footer>span{grid-column:1;grid-row:1}
.site-footer nav{grid-column:3;grid-row:1;justify-content:flex-end}
.footer-statement{grid-column:2;grid-row:1;margin:0;text-align:center;font:italic .875rem/1.6 Literata,Georgia,serif;color:var(--muted)}
@media(max-width:700px){
  .site-footer,.texts-page .site-footer{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:6px;padding-block:12px;font-size:clamp(.625rem,2.7vw,.875rem);text-align:left}
  .site-footer>span{grid-column:1;grid-row:1;align-self:center}
  .footer-statement{grid-column:2;grid-row:1;align-self:center;text-align:center;white-space:nowrap;font-size:inherit}
  .site-footer nav{grid-column:3;grid-row:1;flex-direction:column;gap:0;align-items:flex-end;font-size:inherit}
}
