@font-face {
  font-family: "Cinzel";
  font-style: normal;
  font-weight: 400 900;
  font-display: swap;
  src: url("assets/fonts/cinzel/Cinzel-Variable.ttf") format("truetype-variations");
}

@font-face {
  font-family: "EB Garamond";
  font-style: normal;
  font-weight: 400 800;
  font-display: swap;
  src: url("assets/fonts/eb-garamond/EBGaramond-Variable.ttf") format("truetype-variations");
}

:root {
  --shell-cream: #fcfaf4;
  --shell-cream-deep: #f5efe0;
  --shell-paper: #fffdf8;
  --shell-ink: #2b2620;
  --shell-soft: #62594c;
  --shell-line: #d9ccb1;
  --shell-gold: #8a691c;
  --shell-gold-soft: #c9a24a;
  --shell-audhs: #7a6496;
  --shell-relations: #945c60;
  --shell-systems: #a8ac68;
  --shell-source: #d4c69e;
  --shell-content: 74rem;
  --shell-reading: 46rem;
}

.site-unified.theme-audhs { --shell-theme: var(--shell-audhs); --shell-theme-wash: rgb(122 100 150 / 0.13); }
.site-unified.theme-relations { --shell-theme: var(--shell-relations); --shell-theme-wash: rgb(148 92 96 / 0.12); }
.site-unified.theme-systems { --shell-theme: #7b803f; --shell-theme-wash: rgb(168 172 104 / 0.18); }
.site-unified.theme-source { --shell-theme: #8a763f; --shell-theme-wash: rgb(212 198 158 / 0.28); }
.site-unified.theme-spuren { --shell-theme: var(--shell-gold); --shell-theme-wash: rgb(201 162 74 / 0.10); }
.site-unified.theme-general { --shell-theme: var(--shell-gold); --shell-theme-wash: rgb(201 162 74 / 0.10); }

body.site-unified {
  min-width: 18rem;
  color: var(--shell-ink);
  background:
    linear-gradient(90deg, transparent 0 4.75rem, rgb(138 105 28 / 0.055) 4.75rem 4.8rem, transparent 4.8rem),
    radial-gradient(circle at 8% 2%, var(--shell-theme-wash, rgb(201 162 74 / 0.08)), transparent 28rem),
    var(--shell-cream);
  font-family: "EB Garamond", Georgia, serif;
  font-size: 1.15rem;
  line-height: 1.62;
}

body.site-unified::before {
  position: fixed;
  inset: 0.8rem;
  z-index: 40;
  border: 1px solid rgb(138 105 28 / 0.35);
  pointer-events: none;
  content: "";
}

.site-unified *,
.site-unified *::before,
.site-unified *::after { box-sizing: border-box; }

.site-unified > .navbar,
.site-unified .frame { display: none; }

.site-unified a { text-underline-offset: 0.22em; }

.site-unified :focus-visible {
  outline: 3px solid var(--shell-gold);
  outline-offset: 4px;
}

.site-unified .skip-link {
  position: fixed;
  top: 0.5rem;
  left: 1rem;
  z-index: 100;
  padding: 0.65rem 1rem;
  color: var(--shell-cream);
  background: var(--shell-ink);
  transform: translateY(-160%);
}

.site-unified .skip-link:focus { transform: translateY(0); }

.site-unified .site-header {
  position: sticky;
  top: 0;
  z-index: 30;
  border-bottom: 1px solid var(--shell-line);
  background: rgb(252 250 244 / 0.96);
  backdrop-filter: blur(12px);
}

.site-unified .nav-shell {
  display: flex;
  width: min(calc(100% - 3rem), var(--shell-content));
  min-height: 4.6rem;
  margin: 0 auto;
  align-items: center;
  justify-content: space-between;
  gap: 1.5rem;
}

.site-unified .brand {
  color: var(--shell-ink);
  font-family: Cinzel, Georgia, serif;
  font-size: 0.84rem;
  letter-spacing: 0.17em;
  text-decoration: none;
  text-transform: uppercase;
  white-space: nowrap;
}

.site-unified .site-nav {
  display: flex;
  align-items: center;
  gap: 0.35rem;
  font-family: Cinzel, Georgia, serif;
  font-size: 0.68rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.site-unified .site-nav > a,
.site-unified .topics-menu > summary,
.site-unified .research-menu > summary,
.site-unified .projects-menu > summary {
  display: inline-flex;
  min-height: 2.75rem;
  padding: 0.75rem 0.7rem;
  align-items: center;
  border-bottom: 2px solid transparent;
  color: var(--shell-ink);
  cursor: pointer;
  text-decoration: none;
}

.site-unified .site-nav > a:hover,
.site-unified .site-nav > a[aria-current="page"],
.site-unified .topics-menu > summary:hover,
.site-unified .topics-menu > summary[aria-current="page"],
.site-unified .research-menu > summary:hover,
.site-unified .research-menu > summary[aria-current="page"],
.site-unified .projects-menu > summary:hover,
.site-unified .projects-menu > summary[aria-current="page"] {
  border-bottom-color: var(--shell-gold);
}

.site-unified .topics-menu,
.site-unified .research-menu,
.site-unified .projects-menu { position: relative; }
.site-unified .topics-menu > summary,
.site-unified .research-menu > summary,
.site-unified .projects-menu > summary { list-style: none; }
.site-unified .topics-menu > summary::-webkit-details-marker,
.site-unified .research-menu > summary::-webkit-details-marker,
.site-unified .projects-menu > summary::-webkit-details-marker { display: none; }
.site-unified .topics-menu > summary::after,
.site-unified .research-menu > summary::after,
.site-unified .projects-menu > summary::after { margin-left: 0.45rem; content: "▾"; }
.site-unified .topics-menu[open] > summary::after,
.site-unified .research-menu[open] > summary::after,
.site-unified .projects-menu[open] > summary::after { content: "▴"; }

.site-unified .topics-popover,
.site-unified .research-popover,
.site-unified .projects-popover {
  position: absolute;
  top: calc(100% + 0.35rem);
  right: 0;
  width: min(24rem, calc(100vw - 2rem));
  padding: 0.55rem;
  border: 1px solid var(--shell-line);
  background: var(--shell-paper);
  box-shadow: 0 1.25rem 3rem rgb(43 38 32 / 0.08);
}

.site-unified .topics-popover a,
.site-unified .research-popover a,
.site-unified .projects-popover a {
  display: block;
  padding: 0.75rem 0.85rem;
  border-left: 4px solid var(--topic-color, var(--shell-gold));
  color: var(--shell-ink);
  font-family: "EB Garamond", Georgia, serif;
  font-size: 1rem;
  letter-spacing: 0;
  text-decoration: none;
  text-transform: none;
}

.site-unified .topics-popover a:hover,
.site-unified .research-popover a:hover,
.site-unified .projects-popover a:hover { background: var(--shell-cream-deep); }
.site-unified .topics-popover .audhs { --topic-color: var(--shell-audhs); }
.site-unified .topics-popover .relations { --topic-color: var(--shell-relations); }
.site-unified .topics-popover .systems { --topic-color: var(--shell-systems); }
.site-unified .topics-popover .source { --topic-color: var(--shell-source); }
.site-unified .research-popover .audhs { --topic-color: var(--shell-audhs); }
.site-unified .research-popover .relations { --topic-color: var(--shell-relations); }
.site-unified .research-popover .systems { --topic-color: var(--shell-systems); }
.site-unified .research-popover .source { --topic-color: var(--shell-source); }
.site-unified .projects-popover .innenschau { --topic-color: var(--shell-audhs); }
.site-unified .projects-popover .source { --topic-color: var(--shell-source); }
.site-unified .projects-popover .architecture { --topic-color: var(--shell-systems); }

/* Existing article bodies keep their content hierarchy, but use one common shell. */
.site-unified > .hero,
.site-unified > header.hero {
  position: relative;
  display: block;
  width: min(calc(100% - 3rem), var(--shell-reading));
  min-height: 0;
  margin: 0 auto;
  padding: clamp(4.5rem, 10vw, 7rem) 0 clamp(3rem, 7vw, 5rem);
  text-align: left;
}

.site-unified > .hero::before,
.site-unified > header.hero::before {
  position: absolute;
  top: clamp(2.25rem, 6vw, 4rem);
  left: -1.25rem;
  width: 2.75rem;
  height: 2.75rem;
  border-top: 2px solid var(--shell-theme, var(--shell-gold));
  border-left: 2px solid var(--shell-theme, var(--shell-gold));
  content: "";
}

.site-unified > .hero h1,
.site-unified > header.hero h1 {
  max-width: 19ch;
  margin: 0;
  color: var(--shell-ink);
  font-family: Cinzel, Georgia, serif;
  font-size: clamp(2.15rem, 6vw, 4.5rem);
  font-weight: 500;
  line-height: 1.12;
  text-align: left;
  text-wrap: pretty;
}

.site-unified > .hero .sub,
.site-unified > header.hero .sub {
  max-width: 42rem;
  margin: 1.5rem 0 0;
  color: var(--shell-soft);
  font-size: clamp(1.18rem, 2.2vw, 1.45rem);
  font-style: normal;
  text-align: left;
}

.site-unified .hero .mark,
.site-unified .hero .scroll-cue { display: none; }

.site-unified .hero .crumb,
.site-unified .hero .eyebrow {
  display: block;
  margin: 0 0 1rem;
  color: var(--shell-theme, var(--shell-gold));
  text-align: left;
}

.site-unified .article-intro,
.site-unified .article-section {
  padding: clamp(3.25rem, 7vw, 5.5rem) 1.5rem;
  border-top: 1px solid var(--shell-line);
}

.site-unified .article-intro {
  background: linear-gradient(135deg, var(--shell-theme-wash, transparent), transparent 58%);
}

.site-unified .article-section h2::before {
  display: block;
  width: 2.75rem;
  margin-bottom: 1rem;
  border-top: 2px solid var(--shell-theme, var(--shell-gold));
  content: "";
}

.site-unified .article-section.alt { background: var(--shell-cream-deep); }
.site-unified .article-intro .inner,
.site-unified .article-section .inner { max-width: var(--shell-reading); }

.site-unified .topic-article .inner {
  width: min(100%, var(--shell-reading));
  margin-inline: auto;
}

.site-unified .topic-article p { margin: 0 0 1.25em; }
.site-unified .topic-article ul { margin: 0 0 1.5em; padding-left: 1.35em; }
.site-unified .topic-article li + li { margin-top: 0.5em; }

.site-unified .topic-article blockquote {
  margin: 1.75rem 0;
  padding: 0.25rem 0 0.25rem 1.25rem;
  border-left: 0.2rem solid var(--shell-theme);
  color: var(--shell-soft);
  font-size: 1.1em;
}

.site-unified .topic-article blockquote p { margin: 0; }

.site-unified .topic-article .warning {
  margin: 0 0 2rem;
  padding: 1rem 1.15rem;
  border: 1px solid var(--shell-line);
  border-left: 0.3rem solid var(--shell-theme);
  background: var(--shell-theme-wash);
}

.site-unified .topic-article .article-next {
  margin-top: 2.5rem;
  padding-top: 1.25rem;
  border-top: 1px solid var(--shell-line);
  color: var(--shell-theme-ink, var(--shell-theme));
}

.site-unified .topic-article .article-next a { color: inherit; }

.site-unified .article-section h2 {
  max-width: 32ch;
  margin-right: 0;
  margin-left: 0;
  color: var(--shell-ink);
  text-align: left;
}

.site-unified .wrap {
  width: min(calc(100% - 3rem), var(--shell-reading));
  max-width: none;
}

.site-unified .entry,
.site-unified .row,
.site-unified .topic,
.site-unified .card,
.site-unified .personal,
.site-unified .callout,
.site-unified .warning,
.site-unified .crosslink,
.site-unified .crosslinks a {
  border-color: var(--shell-line);
  border-radius: 0;
  box-shadow: none;
}

.site-unified > footer:not(.site-legal-footer) {
  margin: 0;
  padding: 3.5rem max(1.5rem, calc((100% - var(--shell-reading)) / 2)) 2rem;
  color: var(--shell-cream-deep);
  background: var(--shell-ink);
  text-align: left;
}

.site-unified > footer:not(.site-legal-footer) p { color: #d7ccb9; }
.site-unified > footer:not(.site-legal-footer) .eyebrow { color: var(--shell-gold-soft); }
.site-unified .site-legal-footer { background: var(--shell-ink); }
.site-unified .site-legal-links,
.site-unified .site-legal-links a { color: #d7ccb9; }

@media (max-width: 52rem) {
  body.site-unified::before { inset: 0.35rem; }

  .site-unified .nav-shell {
    width: min(calc(100% - 2rem), var(--shell-content));
    padding: 0.75rem 0;
    align-items: flex-start;
    flex-direction: column;
  }

  .site-unified .site-nav {
    width: 100%;
    overflow-x: auto;
    padding-bottom: 0.25rem;
  }

  .site-unified .topics-popover,
  .site-unified .research-popover,
  .site-unified .projects-popover {
    position: fixed;
    top: 8.2rem;
    right: 1rem;
    left: 1rem;
    width: auto;
  }

  .site-unified > .hero,
  .site-unified > header.hero,
  .site-unified .wrap { width: min(calc(100% - 2rem), var(--shell-reading)); }
}

@media (max-width: 34rem) {
  body.site-unified {
    background: var(--shell-cream);
    font-size: 1.06rem;
  }

  .site-unified .topic-article .article-intro,
  .site-unified .topic-article .article-section {
    padding-right: 1rem;
    padding-left: 1rem;
  }

  .site-unified .site-nav {
    display: grid;
    overflow-x: visible;
    grid-template-columns: repeat(3, max-content);
    justify-content: start;
    gap: 0 0.8rem;
    font-size: 0.68rem;
    letter-spacing: 0.035em;
  }

  .site-unified .site-nav > a,
  .site-unified .topics-menu > summary,
  .site-unified .research-menu > summary,
  .site-unified .projects-menu > summary { padding-inline: 0; }
  .site-unified .topics-popover,
  .site-unified .research-popover,
  .site-unified .projects-popover { top: 13.2rem; }
  .site-unified > .hero::before,
  .site-unified > header.hero::before { left: -0.35rem; }
}

@media (prefers-reduced-motion: reduce) {
  .site-unified *,
  .site-unified *::before,
  .site-unified *::after {
    scroll-behavior: auto !important;
    transition-duration: 0.01ms !important;
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
  }
}

/* Gemeinsame Farblinie und thematische Bewegung für alle Rechercheartikel. */
.site-unified .site-header::after {
  position: absolute;
  right: 0;
  bottom: -1px;
  left: 0;
  height: 0.16rem;
  background: linear-gradient(90deg, var(--shell-audhs) 0 25%, var(--shell-relations) 25% 50%, var(--shell-systems) 50% 75%, var(--shell-source) 75% 100%);
  content: "";
  opacity: 0.72;
}

.site-unified > .hero,
.site-unified > header.hero { overflow: hidden; border-bottom: 0.3rem solid var(--shell-theme); background: linear-gradient(112deg, var(--shell-theme-wash) 0 46%, transparent 46%); }
.site-unified > .hero::after,
.site-unified > header.hero::after {
  position: absolute;
  right: clamp(0.25rem, 3vw, 2rem);
  bottom: 1rem;
  width: clamp(5rem, 11vw, 8.5rem);
  aspect-ratio: 1;
  color: var(--shell-theme);
  pointer-events: none;
  content: "";
  opacity: 0.28;
}
.site-unified.theme-audhs > .hero::after {
  background:
    radial-gradient(circle at 15% 22%, currentcolor 0 0.2rem, transparent 0.24rem),
    radial-gradient(circle at 75% 15%, currentcolor 0 0.25rem, transparent 0.29rem),
    radial-gradient(circle at 88% 72%, currentcolor 0 0.18rem, transparent 0.22rem),
    radial-gradient(circle at 28% 82%, currentcolor 0 0.28rem, transparent 0.32rem),
    linear-gradient(34deg, transparent 38%, currentcolor 39% 40%, transparent 41%),
    linear-gradient(148deg, transparent 43%, currentcolor 44% 45%, transparent 46%);
  animation: shell-network 6s ease-in-out infinite;
}
.site-unified.theme-relations > .hero::after { border: 1px solid currentcolor; background: rgb(148 92 96 / 0.18); animation: shell-morph 9s ease-in-out infinite alternate; }
.site-unified.theme-systems > .hero::after { clip-path: polygon(50% 0, 100% 100%, 0 100%); background: repeating-linear-gradient(0deg, transparent 0 22%, currentcolor 23% 25%); animation: shell-pyramid 8s ease-in-out infinite; }
.site-unified.theme-source > .hero::after { border: 1px solid currentcolor; background: repeating-conic-gradient(transparent 0 25deg, currentcolor 26deg 27deg); clip-path: polygon(50% 0, 61% 36%, 100% 50%, 61% 64%, 50% 100%, 39% 64%, 0 50%, 39% 36%); animation: shell-glyph 18s linear infinite; }

/* Modal consent must retain its own fixed positioning, scrolling and focus layer. */
body.site-unified > section:not([role="dialog"]) { position: relative; overflow: clip; border-top: 1px solid var(--shell-line); }
body.site-unified > section:not([role="dialog"])::after {
  position: absolute;
  right: -1.5rem;
  bottom: -2rem;
  width: clamp(5rem, 10vw, 8rem);
  aspect-ratio: 1;
  color: var(--shell-theme);
  pointer-events: none;
  content: "";
  opacity: 0.07;
}
.site-unified.theme-audhs > section:not([role="dialog"])::after { background: radial-gradient(circle, currentcolor 0 0.17rem, transparent 0.21rem) 0 0 / 1.8rem 1.8rem; }
.site-unified.theme-relations > section:not([role="dialog"])::after { border: 1px solid currentcolor; background: currentcolor; border-radius: 43% 57% 61% 39% / 58% 36% 64% 42%; }
.site-unified.theme-systems > section:not([role="dialog"])::after { clip-path: polygon(50% 0, 100% 100%, 0 100%); background: repeating-linear-gradient(0deg, transparent 0 22%, currentcolor 23% 25%); }
.site-unified.theme-source > section:not([role="dialog"])::after { background: repeating-conic-gradient(transparent 0 25deg, currentcolor 26deg 27deg); clip-path: polygon(50% 0, 61% 36%, 100% 50%, 61% 64%, 50% 100%, 39% 64%, 0 50%, 39% 36%); }
body.site-unified > section:not([role="dialog"]) > * { position: relative; z-index: 1; }

.site-unified h1,
.site-unified h2,
.site-unified h3 { hyphens: manual !important; word-break: normal; overflow-wrap: normal; }
.site-unified .inner { width: min(100%, var(--shell-reading)); margin-inline: auto; }
.site-unified .stack,
.site-unified .matrix,
.site-unified .sources,
.site-unified .method,
.site-unified .personal,
.site-unified .closing { background-color: transparent; }
.site-unified .row,
.site-unified .entry { padding-block: 1.25rem; }
.site-unified .row > * { min-width: 0; }
.site-unified .row h3,
.site-unified .entry h3 { color: var(--shell-ink); }
.site-unified table { background: var(--shell-paper); }
.site-unified th { color: var(--shell-theme); }

@keyframes shell-network { 50% { opacity: 0.52; transform: scale(1.06); } }
@keyframes shell-morph { 0% { border-radius: 58% 42% 63% 37% / 43% 57% 43% 57%; } 50% { border-radius: 35% 65% 38% 62% / 62% 34% 66% 38%; transform: rotate(5deg) scale(0.9); } 100% { border-radius: 67% 33% 55% 45% / 38% 68% 32% 62%; } }
@keyframes shell-pyramid { 50% { transform: translateY(-0.4rem); opacity: 0.5; } }
@keyframes shell-glyph { to { transform: rotate(360deg); } }

@media (max-width: 52rem) {
  .site-unified .topics-popover,
  .site-unified .research-popover,
  .site-unified .projects-popover { position: fixed; top: 8.2rem; right: 1rem; left: 1rem; width: auto; }
}

@media (max-width: 34rem) {
  .site-unified .site-nav { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .site-unified .site-nav > a,
  .site-unified .topics-menu > summary,
  .site-unified .research-menu > summary,
  .site-unified .projects-menu > summary { justify-content: center; text-align: center; }
  .site-unified .topics-popover,
  .site-unified .research-popover,
  .site-unified .projects-popover { top: 13.2rem; }
}

@media (prefers-reduced-motion: reduce) {
  .site-unified > .hero::after,
  .site-unified > section:not([role="dialog"])::after { animation: none !important; }
}

/* Bereichsfarben 2.0: dieselben vier Farben auch in Artikeln und Spuren. */
.site-unified.theme-audhs {
  --shell-theme-ink: #6b5488;
  --shell-theme-mid: rgb(122 100 150 / 0.24);
  --shell-theme-band: rgb(122 100 150 / 0.14);
  --shell-tone-2: #8b587f;
  --shell-tone-3: #b9a7cf;
  --shell-tone-4: #7283a8;
}
.site-unified.theme-relations {
  --shell-theme-ink: #874f54;
  --shell-theme-mid: rgb(148 92 96 / 0.23);
  --shell-theme-band: rgb(148 92 96 / 0.13);
  --shell-tone-2: #b67981;
  --shell-tone-3: #b66f58;
  --shell-tone-4: #d5a5a7;
}
.site-unified.theme-systems {
  --shell-theme-ink: #666a35;
  --shell-theme-mid: rgb(168 172 104 / 0.3);
  --shell-theme-band: rgb(168 172 104 / 0.17);
  --shell-tone-2: #75834b;
  --shell-tone-3: #a9b58a;
  --shell-tone-4: #b28a43;
}
.site-unified.theme-source {
  --shell-theme-ink: #71623d;
  --shell-theme-mid: rgb(212 198 158 / 0.42);
  --shell-theme-band: rgb(212 198 158 / 0.24);
  --shell-tone-2: #b58a32;
  --shell-tone-3: #bd7338;
  --shell-tone-4: #e8ddbd;
}
.site-unified.theme-spuren {
  --shell-theme-ink: #8a691c;
  --shell-theme-mid: rgb(201 162 74 / 0.25);
  --shell-theme-band: rgb(201 162 74 / 0.13);
  --shell-tone-2: #a56d3e;
  --shell-tone-3: #c39a54;
  --shell-tone-4: #dccda8;
}

body.site-unified:not(.theme-general) {
  background:
    radial-gradient(circle at 7% 4%, var(--shell-theme-mid), transparent 28rem),
    radial-gradient(circle at 93% 34%, color-mix(in srgb, var(--shell-tone-4) 16%, transparent), transparent 25rem),
    radial-gradient(circle at 14% 88%, color-mix(in srgb, var(--shell-tone-2) 11%, transparent), transparent 26rem),
    linear-gradient(90deg, transparent 0 4.75rem, var(--shell-theme-band) 4.75rem 4.82rem, transparent 4.82rem),
    var(--shell-cream);
}

body.site-unified.theme-general {
  background:
    radial-gradient(circle at 7% 7%, rgb(122 100 150 / 0.15), transparent 24rem),
    radial-gradient(circle at 93% 28%, rgb(148 92 96 / 0.12), transparent 25rem),
    radial-gradient(circle at 12% 82%, rgb(168 172 104 / 0.13), transparent 26rem),
    radial-gradient(circle at 88% 96%, rgb(212 198 158 / 0.24), transparent 27rem),
    var(--shell-cream);
}

.site-unified:not(.theme-general) .site-header::after {
  background: var(--shell-theme);
  opacity: 0.92;
}

.site-unified:not(.theme-general) .site-nav > a:hover,
.site-unified:not(.theme-general) .site-nav > a[aria-current="page"],
.site-unified:not(.theme-general) .topics-menu > summary:hover,
.site-unified:not(.theme-general) .topics-menu > summary[aria-current="page"],
.site-unified:not(.theme-general) .research-menu > summary:hover,
.site-unified:not(.theme-general) .research-menu > summary[aria-current="page"],
.site-unified:not(.theme-general) .projects-menu > summary:hover,
.site-unified:not(.theme-general) .projects-menu > summary[aria-current="page"] {
  border-bottom-color: var(--shell-theme-ink);
}

.site-unified > .hero,
.site-unified > header.hero {
  background:
    linear-gradient(112deg, var(--shell-theme-wash) 0 54%, transparent 54%),
    radial-gradient(circle at 88% 28%, var(--shell-theme-mid, var(--shell-theme-wash)), transparent 14rem);
}

.site-unified .article-intro {
  border-left: 0.32rem solid var(--shell-theme);
  background: linear-gradient(112deg, var(--shell-theme-wash) 0 62%, transparent 62%);
}

.site-unified .article-section:nth-of-type(even) {
  background: linear-gradient(105deg, color-mix(in srgb, var(--article-tone, var(--shell-theme)) 13%, var(--shell-cream)) 0 34%, transparent 34%);
}

.site-unified:not(.theme-general) .article-section:nth-of-type(4n + 1) { --article-tone: var(--shell-theme); }
.site-unified:not(.theme-general) .article-section:nth-of-type(4n + 2) { --article-tone: var(--shell-tone-2); }
.site-unified:not(.theme-general) .article-section:nth-of-type(4n + 3) { --article-tone: var(--shell-tone-3); }
.site-unified:not(.theme-general) .article-section:nth-of-type(4n + 4) { --article-tone: var(--shell-tone-4); }
.site-unified:not(.theme-general) .article-section {
  border-top-color: color-mix(in srgb, var(--article-tone, var(--shell-theme)) 44%, var(--shell-line));
}
.site-unified:not(.theme-general) .article-section h2,
.site-unified:not(.theme-general) .article-section h3 {
  text-decoration-color: var(--article-tone, var(--shell-theme));
}

.site-unified .article-section h2,
.site-unified .article-section h3,
.site-unified .article-section a,
.site-unified .entry a,
.site-unified .row a { text-decoration-color: var(--shell-theme); }

.site-unified .entry,
.site-unified .row,
.site-unified .topic,
.site-unified .card,
.site-unified .personal,
.site-unified .callout,
.site-unified .warning,
.site-unified .crosslink,
.site-unified .crosslinks a {
  border-left-color: var(--shell-theme);
}

.site-unified .entry:hover,
.site-unified .row:hover,
.site-unified .crosslinks a:hover { background-color: var(--shell-theme-band, var(--shell-theme-wash)); }

.site-unified > footer:not(.site-legal-footer),
.site-unified .site-legal-footer { border-top: 0.22rem solid var(--shell-theme); }

.site-unified .ssl-seal {
  display: inline-flex;
  width: 3.35rem;
  height: 3.35rem;
  margin: 1.25rem 0 0 auto;
  align-items: center;
  justify-content: center;
  opacity: 0.58;
  transition: opacity 160ms ease, transform 160ms ease;
}
.site-unified .ssl-seal:hover,
.site-unified .ssl-seal:focus-visible { opacity: 1; transform: translateY(-0.12rem); }
.site-unified .ssl-seal img { display: block; width: 100%; height: auto; }

@media (max-width: 34rem) {
  body.site-unified:not(.theme-general),
  body.site-unified.theme-general { background: var(--shell-cream); }
  .site-unified > .hero,
  .site-unified > header.hero { background: var(--shell-theme-wash); }
  .site-unified .article-section:nth-of-type(even) { background: var(--shell-theme-band, var(--shell-theme-wash)); }
  .site-unified .ssl-seal { width: 3rem; height: 3rem; margin-left: 0; }
}

/* Hauptnavigation 2026-09-01: voll sichtbar auf Desktop, Disclosure auf Tablet/Mobil. */
.site-unified .site-menu-toggle { display: none; }

.site-unified .about-menu { position: relative; }
.site-unified .about-menu > summary { list-style: none; }
.site-unified .about-menu > summary::-webkit-details-marker { display: none; }
.site-unified .about-menu > summary::after { margin-left: 0.45rem; content: "▾"; }
.site-unified .about-menu[open] > summary::after { content: "▴"; }

.site-unified .site-nav > .about-menu > summary {
  display: inline-flex;
  min-height: 2.75rem;
  padding: 0.75rem 0.7rem;
  align-items: center;
  border-bottom: 2px solid transparent;
  color: var(--shell-ink);
  cursor: pointer;
}

.site-unified .site-nav > .about-menu > summary:hover,
.site-unified .site-nav > .about-menu > summary[aria-current="page"] { border-bottom-color: var(--shell-gold); }

.site-unified .about-popover {
  position: absolute;
  top: calc(100% + 0.35rem);
  right: 0;
  width: min(20rem, calc(100vw - 2rem));
  padding: 0.55rem;
  border: 1px solid var(--shell-line);
  background: var(--shell-paper);
  box-shadow: 0 1.25rem 3rem rgb(43 38 32 / 0.08);
}

.site-unified .about-popover a {
  display: block;
  padding: 0.75rem 0.85rem;
  border-left: 4px solid var(--topic-color, var(--shell-gold));
  color: var(--shell-ink);
  font-family: "EB Garamond", Georgia, serif;
  font-size: 1rem;
  letter-spacing: 0;
  text-decoration: none;
  text-transform: none;
}

.site-unified .about-popover a:hover { background: var(--shell-cream-deep); }
.site-unified .about-popover .team { --topic-color: var(--shell-systems); }
.site-unified .about-popover .traces { --topic-color: var(--shell-relations); }

.site-unified .offers-navigation-link {
  color: var(--shell-gold) !important;
  box-shadow: inset 0 -1px 0 color-mix(in srgb, var(--shell-gold) 72%, transparent);
}

@media (max-width: 67.49rem) {
  .site-unified .nav-shell {
    position: relative;
    display: grid;
    width: min(calc(100% - 2rem), var(--shell-content));
    min-height: 4.6rem;
    padding: 0;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 1rem;
  }

  .site-unified .site-menu-toggle {
    display: inline-flex;
    min-height: 2.75rem;
    padding: 0.6rem 0.75rem;
    align-items: center;
    justify-content: center;
    gap: 0.65rem;
    border: 1px solid var(--shell-line);
    color: var(--shell-ink);
    background: transparent;
    font: 600 0.69rem/1 Cinzel, Georgia, serif;
    letter-spacing: 0.1em;
    text-transform: uppercase;
  }

  .site-unified .site-menu-toggle__icon {
    display: grid;
    width: 1rem;
    gap: 0.2rem;
  }

  .site-unified .site-menu-toggle__icon > span { border-top: 1px solid currentcolor; }

  .site-unified .site-header[data-navigation-enhanced="true"] .site-nav { display: none; }
  .site-unified .site-header[data-navigation-enhanced="true"] .site-nav.is-open { display: grid; }

  .site-unified .site-nav {
    position: absolute;
    top: calc(100% + 1px);
    right: 0;
    left: 0;
    z-index: 31;
    width: 100%;
    max-height: calc(100dvh - 5.6rem);
    padding: 0.65rem;
    overflow: auto;
    grid-column: 1 / -1;
    grid-template-columns: 1fr;
    align-items: stretch;
    gap: 0;
    border: 1px solid var(--shell-line);
    border-top: 0;
    background: var(--shell-paper);
    box-shadow: 0 1.25rem 3rem rgb(43 38 32 / 0.12);
  }

  .site-unified .site-nav > a,
  .site-unified .topics-menu > summary,
  .site-unified .research-menu > summary,
  .site-unified .projects-menu > summary,
  .site-unified .site-nav > .about-menu > summary {
    width: 100%;
    min-height: 2.9rem;
    padding: 0.72rem 0.65rem;
    justify-content: flex-start;
    text-align: left;
  }

  .site-unified .topics-popover,
  .site-unified .research-popover,
  .site-unified .projects-popover,
  .site-unified .about-popover {
    position: static;
    width: 100%;
    margin: 0 0 0.55rem;
    border: 0;
    border-left: 1px solid var(--shell-line);
    box-shadow: none;
  }
}

@media (min-width: 67.5rem) {
  .site-unified .site-nav { display: flex !important; }
}

/* shared-header-contract:start
   Identical in styles.css and public-shell.css; guarded by repository tests.
   Header tokens intentionally do not inherit article-specific theme tokens. */
.site-header.site-header.site-header {
  --ink: #2b2620; --gold: #8a691c; --line: #d9ccb1;
  --paper: #fffdf8; --cream-deep: #f5efe0;
  position: sticky; top: 0; z-index: 30; width: 100%; margin: 0; padding: 0;
  border: 0; border-bottom: 1px solid #d9ccb1;
  background: rgb(252 250 244 / .96); backdrop-filter: blur(12px);
  color: #2b2620; font: 400 1.15rem/1.62 "EB Garamond", Georgia, serif;
  text-align: left; letter-spacing: normal; text-transform: none;
}
.site-header.site-header.site-header::after {
  position: absolute; inset: auto 0 -1px; height: .16rem; content: ""; opacity: .72;
  background: linear-gradient(90deg,#7a6496 0 25%,#945c60 25% 50%,#a8ac68 50% 75%,#d4c69e 75% 100%);
}
.site-header.site-header.site-header .nav-shell {
  position: relative; display: flex; width: min(calc(100% - 3rem),74rem);
  min-height: 4.6rem; margin: 0 auto; padding: 0;
  align-items: center; justify-content: space-between; gap: 1.5rem;
}
.site-header.site-header.site-header .brand {
  flex-shrink: 0; margin: 0; padding: 0; border: 0; color: #2b2620;
  font: 400 .84rem/1.62 Cinzel, Georgia, serif; letter-spacing: .17em;
  text-transform: uppercase; text-decoration: none;
}
.site-header.site-header.site-header .site-nav {
  display: flex; align-items: center; gap: .35rem;
  font: 400 .68rem/1.62 Cinzel, Georgia, serif; letter-spacing: .08em;
  text-transform: uppercase;
}
.site-header.site-header.site-header .site-nav > a,
.site-header.site-header.site-header .site-nav > details > summary {
  display: inline-flex; min-height: 2.75rem; margin: 0; padding: .75rem .7rem;
  align-items: center; border: 0; border-bottom: 2px solid transparent;
  color: #2b2620; background: transparent; font: inherit; letter-spacing: inherit;
  text-transform: inherit; text-decoration: none; cursor: pointer;
}
.site-header.site-header.site-header .site-nav > a:hover,
.site-header.site-header.site-header .site-nav > details > summary:hover,
.site-header.site-header.site-header .site-nav [aria-current="page"] { border-bottom-color: #8a691c; }
.site-header.site-header.site-header .offers-navigation-link {
  color: #8a691c !important; box-shadow: inset 0 -1px 0 rgb(138 105 28 / .72);
}
.site-header.site-header.site-header .site-nav > details { position: relative; }
.site-header.site-header.site-header summary { list-style: none; }
.site-header.site-header.site-header summary::-webkit-details-marker { display: none; }
.site-header.site-header.site-header summary::after { margin-left: .45rem; content: "▾"; }
.site-header.site-header.site-header details[open] > summary::after { content: "▴"; }
.site-header.site-header.site-header [class$="-popover"] {
  position: absolute; top: calc(100% + .35rem); right: 0;
  width: min(24rem,calc(100vw - 2rem)); margin: 0; padding: .55rem;
  border: 1px solid #d9ccb1; background: #fffdf8;
  box-shadow: 0 1.25rem 3rem rgb(43 38 32 / .08);
}
.site-header.site-header.site-header .about-popover { width: min(20rem,calc(100vw - 2rem)); }
.site-header.site-header.site-header [class$="-popover"] a {
  display: block; min-height: 0; margin: 0; padding: .75rem .85rem;
  border: 0; border-left: 4px solid #8a691c; border-radius: .35rem;
  color: #2b2620; background: transparent;
  font: 400 1rem/1.62 "EB Garamond", Georgia, serif;
  letter-spacing: 0; text-transform: none; text-decoration: none;
}
.site-header.site-header.site-header [class$="-popover"] .audhs,
.site-header.site-header.site-header [class$="-popover"] .innenschau { border-left-color: #7a6496; }
.site-header.site-header.site-header [class$="-popover"] .relations,
.site-header.site-header.site-header [class$="-popover"] .traces { border-left-color: #945c60; }
.site-header.site-header.site-header [class$="-popover"] .systems,
.site-header.site-header.site-header [class$="-popover"] .architecture,
.site-header.site-header.site-header [class$="-popover"] .team { border-left-color: #a8ac68; }
.site-header.site-header.site-header [class$="-popover"] .source { border-left-color: #d4c69e; }
.site-header.site-header.site-header [class$="-popover"] a:first-child {
  margin-bottom: .35rem; border-left-color: #8a691c; border-bottom: 1px solid #d9ccb1;
  color: #8a691c; font: 400 .69rem/1.62 Cinzel, Georgia, serif;
  letter-spacing: .08em; text-transform: uppercase;
}
.site-header.site-header.site-header [class$="-popover"] a:hover { background: #f5efe0; }
.site-header.site-header.site-header :is(a,button,summary):focus-visible { outline: 2px solid #8a691c; outline-offset: 3px; }
.site-header.site-header.site-header .site-menu-toggle { display: none; }
@media (max-width: 67.49rem) {
  .site-header.site-header.site-header .nav-shell {
    display: grid; width: min(calc(100% - 2rem),74rem);
    grid-template-columns: minmax(0,1fr) auto; gap: 1rem;
  }
  .site-header.site-header.site-header .site-menu-toggle {
    display: inline-flex; min-height: 2.75rem; margin: 0; padding: .6rem .75rem;
    align-items: center; justify-content: center; gap: .65rem;
    border: 1px solid #d9ccb1; border-radius: 0; color: #2b2620; background: transparent;
    font: 600 .69rem/1 Cinzel, Georgia, serif; letter-spacing: .1em; text-transform: uppercase;
  }
  .site-header.site-header.site-header .site-menu-toggle__icon { display: grid; width: 1rem; gap: .2rem; }
  .site-header.site-header.site-header .site-menu-toggle__icon > span { border-top: 1px solid currentcolor; }
  .site-header.site-header.site-header .site-nav {
    position: absolute; inset: calc(100% + 1px) 0 auto; z-index: 31; width: 100%;
    max-height: calc(100dvh - 5.6rem); margin: 0; padding: .65rem; overflow: auto;
    display: grid; grid-column: 1 / -1; grid-template-columns: 1fr; align-items: stretch; gap: 0;
    border: 1px solid #d9ccb1; border-top: 0; background: #fffdf8;
    box-shadow: 0 1.25rem 3rem rgb(43 38 32 / .08); font-size: .68rem; letter-spacing: .08em;
  }
  .site-header.site-header.site-header[data-navigation-enhanced="true"] .site-nav { display: none; }
  .site-header.site-header.site-header[data-navigation-enhanced="true"] .site-nav.is-open { display: grid; }
  .site-header.site-header.site-header .site-nav > a,
  .site-header.site-header.site-header .site-nav > details > summary {
    width: 100%; min-height: 2.9rem; padding: .72rem .65rem;
    justify-content: flex-start; text-align: left;
  }
  .site-header.site-header.site-header [class$="-popover"] {
    position: static; width: 100%; margin: 0 0 .55rem; padding: .55rem;
    border: 0; border-left: 1px solid #d9ccb1; box-shadow: none;
  }
}
/* shared-header-contract:end */
