html.has-shared-theme[data-theme] {
  --paper: var(--cr-page-bg);
  --panel: var(--cr-card-bg);
  --surface: var(--cr-card-bg);
  --surface-soft: var(--cr-panel-bg);
  --ink: var(--global-text-color);
  --muted: var(--cr-ink-soft);
  --line: var(--cr-border);
  --accent: var(--cr-accent);
  --accent-deep: var(--cr-accent-strong);
  font-family: var(--cr-font-sans);
}
html.has-shared-theme body { background: var(--cr-page-bg); color: var(--global-text-color); }
html.has-shared-theme .site-header,
html.has-shared-theme .folio-bar { background: var(--cr-page-bg); border-bottom: 1px solid var(--cr-border); }
html.has-shared-theme .module-nav a,
html.has-shared-theme .module-nav .theme-toggle { min-height: auto; padding: 7px 9px; border: 0; border-radius: 4px; background: transparent; color: var(--cr-ink-soft); font: 500 13px/1.4 var(--cr-font-sans); }
html.has-shared-theme .module-nav a:hover,
html.has-shared-theme .module-nav .theme-toggle:hover { background: var(--cr-accent-soft); color: var(--cr-accent-strong); }
html.has-shared-theme .site-header .brand { color: var(--global-text-color); font: 600 20px/1.1 var(--cr-font-serif); letter-spacing: -.035em; }
html.has-shared-theme .hero-copy .eyebrow { color: var(--cr-accent-strong); font: 600 11px/1.45 var(--cr-font-mono); letter-spacing: .09em; }
html.has-shared-theme .publication-header h1,
html.has-shared-theme .hero-copy h1 { margin-top: 0; color: var(--global-text-color); font-family: var(--cr-font-serif); font-weight: 500; line-height: 1.13; letter-spacing: -.03em; }
html.has-shared-theme .hero-copy h1 { margin-bottom: 14px; font-size: clamp(1.875rem, 1.25rem + 1.5vw, 2.5rem); }
html.has-shared-theme .folio-project-detail main h2 { color: var(--global-text-color); font: 600 clamp(26px,3vw,38px)/1.3 var(--cr-font-serif); letter-spacing: -.025em; }
html.has-shared-theme .folio-standalone { box-sizing: border-box; margin: 0; padding: 0 0 0 var(--folio-rail-width); font-family: var(--cr-font-sans); }
.folio-project-detail > main { min-width: 0; }
html.has-shared-theme .folio-project-detail main > .site-header { padding: 12px clamp(18px,3vw,40px); }
html.has-shared-theme .folio-project-detail .publication-header { padding: clamp(30px,5vw,75px) 20px 34px; background: var(--cr-page-bg); }
html.has-shared-theme .folio-project-detail .publication-header h1 { max-width: 36ch; margin-inline: auto; font-size: clamp(32px,3.8vw,57px); }
html.has-shared-theme .folio-project-detail .publication-header .title-line { display: inline; }
html.has-shared-theme .folio-project-detail .hero { padding-block: clamp(30px,4vw,56px); }
html.has-shared-theme .folio-project-detail .project-actions a, html.has-shared-theme .folio-project-detail .publication-links a { border-radius: 4px; }
html.has-shared-theme .folio-project-detail .section-soft { background: var(--cr-panel-bg); }
html.has-shared-theme .folio-standalone .folio-nav a span, html.has-shared-theme .folio-standalone .folio-brand span { line-height: inherit; }
.folio-standalone .folio-rail, .folio-standalone .folio-bar { box-sizing: border-box; }
.folio-standalone .folio-tools button { cursor: pointer; }
@font-face { font-family: FolioSolid; src: url("/assets/webfonts/fa-solid-900.woff2") format("woff2"); font-display: swap; }
@font-face { font-family: FolioBrands; src: url("/assets/webfonts/fa-brands-400.woff2") format("woff2"); font-display: swap; }
.folio-standalone .folio-rail i, .folio-standalone .folio-bar i { font: normal 14px/1 FolioSolid; }
.folio-standalone .folio-contact .fa-github { font-family: FolioBrands; }
.folio-standalone .fa-house::before { content: "\f015"; }
.folio-standalone .fa-layer-group::before { content: "\f5fd"; }
.folio-standalone .fa-book-open::before { content: "\f518"; }
.folio-standalone .fa-compass::before { content: "\f14e"; }
.folio-standalone .fa-pen-nib::before { content: "\f5ad"; }
.folio-standalone .fa-file-lines::before { content: "\f15c"; }
.folio-standalone .fa-bars::before { content: "\f0c9"; }
.folio-standalone .fa-envelope::before { content: "\f0e0"; }
.folio-standalone .fa-circle-half-stroke::before { content: "\f042"; }
.folio-standalone .fa-location-dot::before { content: "\f3c5"; }
.folio-standalone .fa-github::before { content: "\f09b"; }
@media (max-width: 63.99rem) {
  html.has-shared-theme .folio-standalone { padding-left: 0; }
  .folio-standalone .folio-crumb { flex-wrap: wrap; gap: 5px 9px; }
}
@media (max-width: 600px) {
  .folio-standalone .folio-crumb > a:first-of-type, .folio-standalone .folio-crumb > a:first-of-type + span { display: none; }
  .folio-standalone .folio-tools > a { white-space: nowrap; }
}
@media print {
  html.has-shared-theme .folio-standalone { width: auto; padding: 0; margin: 0; }
  .folio-standalone .folio-bar, .folio-standalone .folio-rail { display: none; }
}
