:root {
  --paper: #f7f4ee;
  --paper-rgb: 247 244 238;
  --ink: #171a20;
  --muted: #657080;
  --line: #cfd2d4;
  --soft: #ece9e2;
  --accent: #b51226;
  --max: 1500px;
  --serif: Georgia, 'Times New Roman', Times, serif;
  --sans: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;

  /* Site-specific theme expressed through The DS tokens. */
  --ds-primary: var(--accent);
  --ds-support: var(--muted);
  --ds-font-heading: var(--serif);
  --ds-font-body: var(--serif);
  --ds-font-size: 1rem;
  --ds-line-height: 1.6rem;
}

@media (prefers-color-scheme: dark) {
  :root:not([data-theme='light']) {
    --paper: #151515;
    --paper-rgb: 21 21 21;
    --ink: #f2eee7;
    --muted: #aaa9a6;
    --line: #3a3a38;
    --soft: #222220;
    --accent: #ff4252;
  }
}

:root[data-theme='dark'] {
  --paper: #151515;
  --paper-rgb: 21 21 21;
  --ink: #f2eee7;
  --muted: #aaa9a6;
  --line: #3a3a38;
  --soft: #222220;
  --accent: #ff4252;
}

:root[data-theme='light'] {
  --paper: #f7f4ee;
  --paper-rgb: 247 244 238;
  --ink: #171a20;
  --muted: #657080;
  --line: #cfd2d4;
  --soft: #ece9e2;
  --accent: #b51226;
}

* { box-sizing: border-box; }
html {
  min-block-size: 100%;
  scroll-behavior: smooth;
  scroll-padding-top: var(--ds-space-x3);
  background: var(--paper);
}
body {
  min-block-size: 100vh;
  min-block-size: 100dvh;
  margin: 0;
  background: var(--paper);
  color: var(--ink);
  font-family: var(--serif);
  font-size: 1rem;
  line-height: var(--ds-line-height);
}
img { display: block; max-width: 100%; width: 100%; object-fit: cover; }
a { color: inherit; text-decoration-thickness: .06em; text-underline-offset: .15em; }
a:hover, a:focus-visible { color: var(--accent); }
button, input { font: inherit; }
button { color: inherit; }
.muze-shell { width: min(calc(100% - var(--ds-space-x2)), var(--max)); margin-inline: auto; }
.muze-visually-hidden { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }

.muze-site-header {
  z-index: 100;
  background: rgb(var(--paper-rgb) / .96);
  border-bottom: 1px solid var(--line);
}
.muze-header-inner {
  min-height: calc(3 * var(--ds-line-height));
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  padding-block: var(--ds-space-d2);
  transition: min-height .18s ease, padding .18s ease;
}
.muze-site-header.muze-is-compact .muze-header-inner { min-height: calc(2 * var(--ds-line-height)); padding-block: 0; }
.muze-brand { text-decoration: none; line-height: var(--ds-line-height); width: max-content; }
.muze-brand-name {
  display:block;
  font-family: var(--serif);
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: -.05em;
  transition: font-size .18s ease;
}
.muze-site-header.muze-is-compact .muze-brand-name { font-size: 1.4rem; }
.muze-brand-line {
  display:block;
  color: var(--muted);
  font-size: .76rem;
  margin-top: var(--ds-space-d4);
  max-height: var(--ds-line-height);
  opacity: 1;
  overflow: hidden;
  transition: opacity .18s ease, max-height .18s ease, margin .18s ease;
}
.muze-site-header.muze-is-compact .muze-brand-line { opacity: 0; max-height: 0; margin-top: 0; }
.muze-brand-dot { color: var(--accent); }
.muze-primary-nav { justify-self: end; display: flex; align-items: center; gap: var(--ds-space); font-size: .9rem; }
.muze-primary-nav > a { text-decoration: none; }

.muze-search-control { display:flex; align-items:center; gap:var(--ds-space-d4); }
.muze-search-toggle, .muze-search-form button { border:0; background:transparent; padding:var(--ds-space-d4); cursor:pointer; color:var(--ink); font:inherit; }
.muze-search-toggle { font-size:.9rem; }
.muze-search-form { display:flex; align-items:center; gap:var(--ds-space-d4); }
.muze-search-form[hidden] { display:none; }
.muze-search-form input { inline-size:12rem; min-block-size:var(--ds-line-height); border:0; border-bottom:1px solid var(--line); background:transparent; color:var(--ink); font:inherit; padding:0 var(--ds-space-d4); }
.muze-search-form input:focus { outline:2px solid var(--accent); outline-offset:2px; }
.muze-search-form button { color:var(--accent); }

.muze-theme-toggle, .muze-menu-toggle { border:0; background:transparent; padding:var(--ds-space-d4); cursor:pointer; }
.muze-theme-toggle { font-size:.82rem; color:var(--muted); }
.muze-menu-toggle { display:none; justify-self:end; font-family:var(--sans); font-size:.82rem; }

.muze-hero {
  display:grid;
  grid-template-columns: minmax(18rem, .9fr) minmax(28rem, 1.45fr) minmax(12rem, .55fr);
  gap: var(--ds-space-x2);
  padding-block: var(--ds-space-x2);
  align-items:start;
  border-bottom:1px solid var(--line);
}
.muze-hero h1 { margin:0 0 var(--ds-space); font-size:clamp(3.7rem, 5.8vw, 7.2rem); line-height:calc(4 * var(--ds-line-height)); letter-spacing:-.055em; font-weight:700; }
.muze-hero p { max-width:39ch; margin:0; }
.muze-hero p + p { margin-block-start:var(--ds-space-d2); }
.muze-hero-image { margin:0; }
.muze-hero-image img { block-size: calc(15 * var(--ds-line-height)); }
.muze-hero-image figcaption { color:var(--muted); font-family:var(--sans); font-size:.72rem; line-height:var(--ds-line-height); margin:0; }
.muze-hero-note { padding-top:var(--ds-space); }
.muze-hero-note-title { font-size:1.45rem; line-height:var(--ds-line-height); }
.muze-hero-note p:last-child { color:var(--muted); }
.muze-short-rule { width:var(--ds-space-x2); border-top:3px solid var(--accent); margin:var(--ds-space) 0; }
.muze-text-link { display:inline-block; margin-top:var(--ds-space); color:var(--accent); text-decoration:none; font-size:.92rem; }

.muze-section { padding-block: var(--ds-space); border-bottom:1px solid var(--line); }
.muze-section-heading {
  display:grid;
  grid-template-columns:auto minmax(var(--ds-space-x2), 1fr) auto;
  grid-template-rows:var(--ds-line-height) var(--ds-line-height);
  align-items:center;
  column-gap:var(--ds-space-d2);
  min-block-size:calc(2 * var(--ds-line-height));
  margin-bottom:var(--ds-space);
}
.muze-section-heading h2 { grid-column:1; grid-row:1; margin:0; font-size:1.7rem; line-height:var(--ds-line-height); font-weight:500; }
.muze-section-heading p { grid-column:1 / -1; grid-row:2; margin:0; color:var(--muted); font-size:.82rem; line-height:var(--ds-line-height); font-family:var(--sans); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.muze-section-heading > a { grid-column:3; grid-row:1; justify-self:end; color:var(--accent); text-decoration:none; font-size:.82rem; line-height:var(--ds-line-height); white-space:nowrap; word-break:normal; overflow-wrap:normal; }
.muze-section-rule { grid-column:2; grid-row:1; border-top:2px solid var(--accent); width:100%; }

.muze-now-grid { display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:0; }
.muze-feature-item { display:grid; grid-template-columns:minmax(8rem,.55fr) 1fr; gap:var(--ds-space); padding-right:var(--ds-space); border-right:1px solid var(--line); margin-right:var(--ds-space); min-block-size:calc(8 * var(--ds-line-height)); }
.muze-feature-item:last-child { border-right:0; margin-right:0; padding-right:0; }
.muze-feature-item.muze-text-only { grid-template-columns:1fr; }
.muze-feature-item img { block-size:calc(8 * var(--ds-line-height)); }
.muze-feature-item h3, .muze-list-item h3, .muze-writing-list h3, .muze-event-list h3, .muze-person-card h3 { margin:0 0 var(--ds-space-d4); font-size:1.25rem; line-height:var(--ds-line-height); font-weight:500; }
.muze-feature-item p, .muze-list-item p, .muze-writing-list p, .muze-event-list p, .muze-person-card p { margin:0 0 var(--ds-space-d4); color:var(--muted); }
.muze-context-links { display:flex; flex-wrap:wrap; gap:var(--ds-space-d4) var(--ds-space-d2); margin-top:var(--ds-space-d2); font-size:.78rem; font-family:var(--sans); }
.muze-context-links a { color:var(--muted); text-decoration:none; white-space:nowrap; }
.muze-context-links a span { opacity:.72; margin-right:var(--ds-space-d4); }
.muze-context-links a span::after { content:'·'; margin-left:var(--ds-space-d4); }
.muze-context-links a b { color:var(--accent); font-weight:400; margin-left:var(--ds-space-d4); }
.muze-context-links a:hover, .muze-context-links a:focus-visible { color:var(--ink); }
.muze-ai-note { margin:var(--ds-space) 0 0; color:var(--muted); font-size:.78rem; font-family:var(--sans); font-style:italic; }

.muze-lower-grid { display:grid; grid-template-columns: 1.05fr 1.05fr .9fr; gap:var(--ds-space-x2); }
.muze-compact-section { min-width:0; }
.muze-work-list, .muze-writing-list, .muze-event-list { display:grid; gap:var(--ds-space-d2); }
.muze-list-item { display:grid; grid-template-columns:calc(4 * var(--ds-line-height)) 1fr; gap:var(--ds-space-d2); align-items:start; }
.muze-list-item.muze-no-thumb { grid-template-columns:1fr; padding-left:var(--ds-space-x4); }
.muze-thumb img { block-size:calc(4 * var(--ds-line-height)); }
.muze-writing-list article { padding-bottom:var(--ds-space-d2); border-bottom:1px solid var(--line); }
.muze-writing-list article:last-child { border-bottom:0; }
.muze-byline { font-style:italic; font-size:.88rem; }
.muze-event-list article { display:grid; grid-template-columns:4rem 1fr; gap:var(--ds-space-d2); align-items:start; padding-bottom:var(--ds-space-d2); border-bottom:1px solid var(--line); }
.muze-event-list time { text-align:left; }
.muze-event-list time strong { display:block; font-size:2.1rem; line-height:var(--ds-line-height); font-weight:500; }
.muze-event-list time span { display:block; color:var(--muted); text-transform:uppercase; font-family:var(--sans); font-size:.7rem; margin-top:var(--ds-space-d4); }

.muze-people-grid { display:grid; grid-template-columns:repeat(3, minmax(0,1fr)) minmax(17rem,1.15fr); gap:var(--ds-space-x2); align-items:start; }
.muze-person-card { display:grid; grid-template-columns:calc(4 * var(--ds-line-height)) 1fr; gap:var(--ds-space-d2); align-items:center; }
.muze-person-placeholder { inline-size:calc(4 * var(--ds-line-height)); block-size:calc(3 * var(--ds-line-height)); display:grid; place-items:center; background:var(--soft); color:var(--muted); font-family:var(--sans); font-size:.82rem; }
.muze-person-card p { font-size:.82rem; font-family:var(--sans); }

.muze-person-thumb { inline-size:calc(4 * var(--ds-line-height)); block-size:calc(3 * var(--ds-line-height)); object-fit:cover; display:block; background:var(--soft); }
.muze-person-portrait { width:100%; block-size:calc(10 * var(--ds-line-height)); object-fit:cover; display:block; margin:0 0 var(--ds-space); background:var(--soft); }
.muze-person-page-card h2 { margin-top:0; }

.muze-people-copy { border-left:1px solid var(--line); padding-left:var(--ds-space-x2); }
.muze-people-copy p { margin:0 0 var(--ds-space-d2); color:var(--muted); }

.muze-about { display:grid; grid-template-columns:1fr auto; gap:var(--ds-space-x2); align-items:center; padding-block:var(--ds-space); font-size:.78rem; color:var(--muted); font-family:var(--sans); }
.muze-about p { margin:0; }
.muze-about nav { display:flex; gap:var(--ds-space); }
.muze-about a { text-decoration:none; }

/* Full-width secondary pages */
.muze-content-page { padding-block:var(--ds-space-x2); }
.muze-page-intro {
  display:grid;
  grid-template-columns:minmax(16rem,.7fr) minmax(24rem,1.3fr);
  gap:var(--ds-space-x2);
  align-items:end;
  padding-bottom:var(--ds-space-x2);
  border-bottom:1px solid var(--line);
}
.muze-page-intro h1 { margin:0; font-size:clamp(3.7rem,7vw,7rem); line-height:calc(4 * var(--ds-line-height)); letter-spacing:-.05em; }
.muze-page-intro-copy { max-width:72ch; }
.muze-page-intro-copy p { margin:var(--ds-space-d4) 0 0; font-size:clamp(1rem,1.2vw,1.18rem); }
.muze-eyebrow { margin:0 0 var(--ds-space-d2); color:var(--accent); font-family:var(--sans); font-size:.78rem; text-transform:uppercase; letter-spacing:.08em; }
.muze-page-grid { display:grid; gap:0 var(--ds-space-x2); }
.muze-page-grid.muze-three { grid-template-columns:repeat(3,minmax(0,1fr)); }
.muze-page-grid.muze-two { grid-template-columns:repeat(2,minmax(0,1fr)); }
.muze-page-card { padding:var(--ds-space) 0; border-bottom:1px solid var(--line); min-width:0; }
.muze-page-grid.muze-three > .muze-page-card:not(:nth-child(3n)) { border-right:1px solid var(--line); padding-right:var(--ds-space-x2); }
.muze-page-grid.muze-two > .muze-page-card:nth-child(odd) { border-right:1px solid var(--line); padding-right:var(--ds-space-x2); }
.muze-page-card h2 { margin:0 0 var(--ds-space-d2); font-size:clamp(1.6rem,2.4vw,2.45rem); line-height:calc(2 * var(--ds-line-height)); font-weight:500; }
.muze-page-card h3 { margin:0 0 var(--ds-space-d4); font-size:1.25rem; line-height:var(--ds-line-height); font-weight:500; }
.muze-page-card p { max-width:68ch; color:var(--muted); margin:0 0 var(--ds-space-d2); }
.muze-page-card-wide { grid-column:1 / -1; border-right:0!important; }
.muze-evidence-box { background:var(--soft); padding-inline:var(--ds-space)!important; }
.muze-evidence-box dl { display:grid; grid-template-columns:8rem minmax(0,1fr); gap:var(--ds-space-d2) var(--ds-space); max-width:70rem; }
.muze-evidence-box dt { font-family:var(--sans); font-size:.82rem; color:var(--accent); }
.muze-evidence-box dd { margin:0; color:var(--muted); }
.muze-archive-nav { display:flex; gap:var(--ds-space); align-items:baseline; padding-block:var(--ds-space); color:var(--muted); font-family:var(--sans); font-size:.82rem; }
.muze-archive-nav strong { color:var(--ink); }
.muze-profile-meta { font-family:var(--sans); font-size:.82rem; color:var(--muted); }
.muze-prototype-note { color:var(--muted); font-size:.82rem; font-family:var(--sans); font-style:italic; padding-block:var(--ds-space); }

@media (max-width: 1050px) {
  .muze-hero { grid-template-columns:1fr 1.2fr; }
  .muze-hero-note { grid-column:1 / -1; display:flex; gap:var(--ds-space-x2); align-items:center; padding-top:0; }
  .muze-hero-note .muze-short-rule { display:none; }
  .muze-now-grid { grid-template-columns:1fr 1fr; gap:var(--ds-space); }
  .muze-feature-item { margin:0; padding:0 0 var(--ds-space); border-right:0; border-bottom:1px solid var(--line); }
  .muze-feature-item:last-child { grid-column:1 / -1; }
  .muze-lower-grid { grid-template-columns:1fr 1fr; }
  .muze-events { grid-column:1 / -1; }
  .muze-people-grid { grid-template-columns:1fr 1fr; }
  .muze-people-copy { border-left:0; padding-left:0; }
  .muze-page-grid.muze-three { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .muze-page-grid.muze-three > .muze-page-card { border-right:0!important; padding-right:0; }
  .muze-page-grid.muze-three > .muze-page-card:nth-child(odd):not(.muze-page-card-wide) { border-right:1px solid var(--line)!important; padding-right:var(--ds-space-x2); }
}

@media (max-width: 760px) {
  .muze-shell { width:min(calc(100% - var(--ds-space-x2)), var(--max)); }
  .muze-header-inner { grid-template-columns:auto auto; min-height:calc(3 * var(--ds-line-height)); }
  .muze-site-header.muze-is-compact .muze-header-inner { min-height:calc(2 * var(--ds-line-height)); padding-block:0; }
  .muze-menu-toggle { display:block; }
  .muze-primary-nav { display:none; position:absolute; left:0; right:0; top:100%; z-index:10; background:var(--paper); border-bottom:1px solid var(--line); padding:var(--ds-space); flex-direction:column; align-items:flex-start; gap:var(--ds-space-d2); }
  .muze-primary-nav[data-open='true'] { display:flex; }
  .muze-search-control { width:100%; align-items:flex-start; flex-wrap:wrap; }
  .muze-search-form { width:100%; }
  .muze-search-form input { flex:1 1 auto; inline-size:auto; }

    .muze-hero { grid-template-columns:1fr; }
  .muze-hero h1 { font-size:clamp(3.2rem,16vw,5.3rem); }
  .muze-hero-image { order:2; }
  .muze-hero-note { order:3; display:block; }
  .muze-section-heading { grid-template-columns:auto minmax(var(--ds-space-x2), 1fr) auto; grid-template-rows:auto auto; min-block-size:0; }
  .muze-section-heading p { grid-column:1 / -1; grid-row:2; white-space:normal; overflow:visible; text-overflow:clip; }
  .muze-now-grid, .muze-lower-grid, .muze-people-grid { grid-template-columns:1fr; }
  .muze-feature-item, .muze-feature-item.muze-text-only { grid-template-columns:1fr; border-bottom:1px solid var(--line); }
  .muze-feature-item img { block-size:calc(10 * var(--ds-line-height)); }
  .muze-list-item, .muze-list-item.muze-no-thumb { grid-template-columns:calc(4 * var(--ds-line-height)) 1fr; padding-left:0; }
  .muze-list-item.muze-no-thumb::before { content:''; display:block; aspect-ratio:1; border:1px solid var(--line); background:linear-gradient(135deg, transparent 0 46%, var(--soft) 46% 54%, transparent 54%); }
  .muze-people-grid { gap:var(--ds-space); }
  .muze-people-copy { padding-top:var(--ds-space-d2); border-top:1px solid var(--line); }
  .muze-about { grid-template-columns:1fr; }
  .muze-about nav { flex-wrap:wrap; }
  .muze-page-intro { grid-template-columns:1fr; align-items:start; }
  .muze-page-grid.muze-three, .muze-page-grid.muze-two { grid-template-columns:1fr; }
  .muze-page-grid.muze-three > .muze-page-card, .muze-page-grid.muze-two > .muze-page-card { border-right:0!important; padding-right:0!important; }
  .muze-evidence-box dl { grid-template-columns:1fr; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior:auto!important; transition:none!important; }
}

/* Real content additions */
.muze-human-note { background:var(--soft); padding-inline:var(--ds-space)!important; }
.muze-contact-grid { --ds-grid-min-colwidth: 17rem; }
.muze-contact-grid p { color:var(--ink); }
.muze-contact-grid strong { font-weight:600; }


/* Elsewhere */
.muze-elsewhere-preview { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:var(--ds-space-x2); }
.muze-elsewhere-preview article { min-width:0; padding-right:var(--ds-space-x2); border-right:1px solid var(--line); }
.muze-elsewhere-preview article:last-child { padding-right:0; border-right:0; }
.muze-elsewhere-preview h3 { margin:0 0 var(--ds-space-d2); font-size:1.25rem; line-height:var(--ds-line-height); font-weight:500; }
.muze-elsewhere-preview h3 a { text-decoration:none; }
.muze-elsewhere-preview p { margin:0 0 var(--ds-space-d2); color:var(--muted); }
.muze-elsewhere-meta { font-family:var(--sans); font-size:.78rem; line-height:var(--ds-line-height); color:var(--muted); }
.muze-elsewhere-controls { display:grid; gap:var(--ds-space-d2); padding-block:var(--ds-space); border-bottom:1px solid var(--line); font-family:var(--sans); font-size:.82rem; }
.muze-elsewhere-controls > div { display:flex; flex-wrap:wrap; align-items:baseline; gap:var(--ds-space-d2); }
.muze-elsewhere-controls strong { min-inline-size:calc(5 * var(--ds-line-height)); font-weight:600; color:var(--ink); }
.muze-elsewhere-controls a { color:var(--muted); text-decoration:none; white-space:nowrap; }
.muze-elsewhere-controls a:hover, .muze-elsewhere-controls a:focus-visible, .muze-elsewhere-controls a[aria-current='true'] { color:var(--accent); }
.muze-elsewhere-clear { justify-self:start; border:0; background:transparent; color:var(--accent); padding:0; cursor:pointer; }
.muze-elsewhere-status { min-block-size:var(--ds-line-height); margin:var(--ds-space-d2) 0 0; color:var(--muted); font-family:var(--sans); font-size:.82rem; }
.muze-elsewhere-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:0 var(--ds-space-x2); }
.muze-elsewhere-item { min-width:0; padding:var(--ds-space) 0; border-bottom:1px solid var(--line); }
.muze-elsewhere-grid > .muze-elsewhere-item:not(:nth-child(3n)) { border-right:1px solid var(--line); padding-right:var(--ds-space-x2); }
.muze-elsewhere-item h2 { margin:0 0 var(--ds-space-d2); font-size:1.65rem; line-height:calc(2 * var(--ds-line-height)); font-weight:500; }
.muze-elsewhere-item h2 a { text-decoration:none; }
.muze-elsewhere-item > p:not(.muze-elsewhere-meta) { margin:0 0 var(--ds-space-d2); color:var(--muted); }
.muze-elsewhere-item[hidden] { display:none; }
@media (max-width:1050px) {
  .muze-elsewhere-preview, .muze-elsewhere-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .muze-elsewhere-preview article { padding-bottom:var(--ds-space); border-bottom:1px solid var(--line); }
  .muze-elsewhere-preview article:nth-child(2) { border-right:0; padding-right:0; }
  .muze-elsewhere-preview article:last-child { grid-column:1 / -1; }
  .muze-elsewhere-grid > .muze-elsewhere-item { border-right:0!important; padding-right:0!important; }
  .muze-elsewhere-grid > .muze-elsewhere-item:nth-child(odd) { border-right:1px solid var(--line)!important; padding-right:var(--ds-space-x2)!important; }
}
@media (max-width:760px) {
  .muze-elsewhere-preview, .muze-elsewhere-grid { grid-template-columns:1fr; }
  .muze-elsewhere-preview article, .muze-elsewhere-grid > .muze-elsewhere-item { grid-column:auto; border-right:0!important; padding-right:0!important; }
  .muze-elsewhere-controls > div { display:grid; grid-template-columns:1fr 1fr; }
  .muze-elsewhere-controls strong { grid-column:1 / -1; min-inline-size:0; }
}
