/* Dropoff: source-bound archival content, preserving the incumbent dark tokens. */
.archive-hero { padding-bottom: clamp(2.5rem, 5vw, 4rem); }
.archive-hero .hero__title { max-width: 18ch; margin-inline: auto; text-wrap: balance; overflow-wrap: break-word; hyphens: auto; }
.archive-intro { max-width: 72ch; margin: 0 auto clamp(2rem, 5vw, 4rem); color: var(--dim); }
.archive-intro p + p { margin-top: 1.1rem; }
.archive-toc { padding-bottom: 1rem; }
.archive-toc a { border-radius: 0; border-width: 0 0 1px; padding: .65rem .6rem; }
.archive-street { padding-top: 1rem; }
.archive-street .street__name { margin-bottom: 2rem; }
.street--landhaus img { width: min(480px, 88vw); filter: none; }
.archive-street .street:not(.street--landhaus) img { width: min(640px, 90vw); }
.street__note {
  margin: .9rem auto 0;
  color: var(--dim);
  font: 400 .68rem/1.55 var(--f-ui);
  letter-spacing: .09em;
  text-transform: uppercase;
}
.archive-building { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); gap: var(--gap); align-items: start; }
.archive-building-text { padding-top: 1rem; max-width: 48ch; color: var(--dim); }
.archive-building-text h3, .archive-document h3 { font-size: clamp(1.7rem, 3vw, 2.35rem); font-weight: 400; color: var(--cream); line-height: 1.15; margin-bottom: 1.2rem; }
.archive-building-text p + p { margin-top: 1.25rem; }
.archive-caution { color: var(--cream); padding-top: 1rem; border-top: 1px solid var(--rule); }
.archive-figure { min-width: 0; margin: 0 0 clamp(2rem, 4vw, 3.5rem); }
.archive-image-link { display: block; background: var(--ink-2); }
.archive-figure img { display: block; width: 100%; height: auto; max-height: min(78vh, 860px); object-fit: contain; }
.archive-figure figcaption { position: static; padding: .9rem 0 0; font: 400 .85rem/1.65 var(--f-ui); color: var(--cream); letter-spacing: normal; text-transform: none; background: none; }
.archive-credit { display: block; margin-top: .25rem; font-size: .76rem; color: var(--dim); }
.archive-source { font: 400 .8rem/1.8 var(--f-ui); color: var(--dim); margin: 2rem 0; overflow-wrap: anywhere; }
.archive-source a, .archive-details a { color: var(--gold); text-decoration: underline; text-underline-offset: .2em; }
.archive-content { padding-top: 0; }
.archive-prose { margin: clamp(2.5rem, 6vw, 4rem) 0; }
.archive-prose h2 { margin-bottom: 1.5rem; }
.archive-prose p { max-width: 72ch; }
.archive-prose p + p { margin-top: 1.25rem; }
.archive-next { display: flex; flex-wrap: wrap; gap: 1.5rem 2.5rem; align-items: center; margin: 3rem 0 1rem; }
.archive-document { margin-top: 3rem; padding-top: 2.5rem; border-top: 1px solid var(--rule); }
.archive-document > p { max-width: 72ch; color: var(--dim); margin-bottom: 1.5rem; }
.archive-pair { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--gap); align-items: start; margin-top: 2rem; }
.archive-pair .archive-figure img { height: 460px; max-height: 66vh; object-fit: contain; }
.archive-details { scroll-margin-top: 7rem; border-block: 1px solid var(--rule); padding: 1.4rem 0; margin: 2rem 0; color: var(--dim); }
.archive-details summary { color: var(--cream); cursor: pointer; padding: .4rem 1rem .4rem 0; }
.archive-details[open] summary { margin-bottom: 1.5rem; }
.archive-details > p { max-width: 72ch; margin: 1rem 0 2rem; }
.archive-details .archive-figure { max-width: 720px; }
.archive-figure--cover { max-width: 260px; margin-inline: 0; }
.archive-figure--cover img { max-height: 420px; border: 1px solid var(--rule-strong); box-shadow: 0 30px 50px -30px #000; }
.archive-figure--cover figcaption { font-size: .78rem; }
/* Center constrained image blocks within their content column. */
.archive-details .archive-figure,
.archive-figure--cover,
.inventory-document { margin-inline: auto; }
.inventory-street-sign img { margin-inline: auto; }
.archive-project-index { display: flex; flex-wrap: wrap; gap: .4rem 1.7rem; border-block: 1px solid var(--rule); padding-block: 1.5rem; margin-bottom: 1.5rem; }
.archive-project-index a { color: var(--gold); padding: .4rem 0; font-size: .9rem; }
.archive-project .project__media { border: none; overflow: visible; }
.archive-project .archive-figure { margin: 0; }
.archive-project .archive-figure img { width: 100%; height: auto; max-height: 450px; object-fit: contain; transition: none; }
.archive-project:hover .archive-figure img { transform: none; }
.archive-history-row { display: grid; grid-template-columns: 150px minmax(0, 1fr); gap: 2rem; padding-block: 2.5rem; border-bottom: 1px solid var(--rule); }
.archive-year { color: var(--gold); font: 400 2rem/1.3 var(--f-serif); }
.archive-history-row h2 { font-size: clamp(1.8rem, 3vw, 2.4rem); font-weight: 400; line-height: 1.2; margin-bottom: 1rem; }
.archive-history-row p:not(.archive-year) { color: var(--dim); margin-bottom: 1rem; }
.archive-publication { display: grid; grid-template-columns: minmax(220px, 280px) minmax(0, 1fr); align-items: start; gap: clamp(1.6rem, 4vw, 3.5rem); padding: clamp(2.8rem, 6vw, 4.5rem) 0; border-top: 1px solid var(--rule); scroll-margin-top: 7rem; }
.archive-publication img { width: 100%; height: 230px; object-fit: contain; }
.archive-publication h2 { font-size: 2rem; font-weight: 400; line-height: 1.2; margin-bottom: 1rem; }
.archive-publication p { color: var(--dim); margin-bottom: 1rem; }
.home-focus .pillars { margin-top: 0; }
.home-focus__title { font-size: clamp(1.65rem, 3vw, 2.25rem); margin-bottom: clamp(1.8rem, 4vw, 2.8rem); }
.history__link--secondary { color: var(--dim); font-size: .76rem; margin-top: .25rem; }
.inventory-sequence { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(1rem, 3vw, 2rem); margin-top: clamp(2rem, 5vw, 4rem); align-items: stretch; }
.inventory-step { display: grid; grid-template-rows: auto minmax(220px, 1fr) auto; padding: 1.2rem; border: 1px solid var(--rule); background: var(--ink-2); margin: 0; }
.inventory-step picture { display: grid; place-items: center; min-width: 0; }
.inventory-step img { width: 100%; height: 100%; max-height: 420px; object-fit: contain; }
.inventory-step__year { color: var(--gold); font: 400 clamp(1.25rem, 2vw, 1.7rem)/1.2 var(--f-serif); margin-bottom: 1rem; }
.inventory-step figcaption { min-height: 4rem; }
.archive-credit--right { text-align: right; margin-top: .45rem; }
.project--announced { display: block; max-width: 720px; margin-inline: auto; padding: clamp(3rem, 6vw, 5rem) 0; border-bottom: 1px solid var(--rule); }
.publication-media { margin: 0; min-width: 0; }
.publication-media figcaption { margin-top: .7rem; font: 400 .74rem/1.55 var(--f-ui); color: var(--dim); }
.publication-kicker { color: var(--gold) !important; font: 500 .64rem/1.4 var(--f-ui); letter-spacing: .18em; text-transform: uppercase; }
.publication-short { max-width: 62ch; font-size: 1rem; line-height: 1.75; }
.publication-facts { display: inline-block; color: var(--cream) !important; border-block: 1px solid var(--rule); padding: .7rem 0; font-size: .82rem; letter-spacing: .05em; }
.publication-details { margin: 1.5rem 0; }
.publication-details summary { min-height: 44px; display: flex; align-items: center; font-family: var(--f-ui); letter-spacing: .06em; }
.publication-longtext { max-width: 68ch; }
.publication-longtext p { margin-bottom: 1.1rem; line-height: 1.8; }
.publication-gallery { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--gap); margin-top: 2rem; }
.publication-gallery .archive-figure { margin-bottom: 0; }
.publication-gallery .archive-figure img { height: 260px; max-height: none; object-fit: contain; }
.publication-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 1rem 1.7rem; }
.publication-actions .btn { min-height: 44px; }
.publication-order { scroll-margin-top: 7rem; }
.publication-order form { max-width: 760px; margin-top: 2rem; }
.publication-order fieldset { border: 0; margin: 0; padding: 0; }
.publication-order fieldset[disabled] { opacity: .55; }
.form__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.1rem; margin-bottom: 1.2rem; }
.form__full { grid-column: 1 / -1; }
.publication-order label { display: block; color: var(--gold); font: 500 .68rem/1.4 var(--f-ui); letter-spacing: .14em; text-transform: uppercase; margin-bottom: .5rem; }
.publication-order label span { color: var(--dim); font-weight: 400; letter-spacing: .03em; text-transform: none; }
.publication-order input,
.publication-order select,
.publication-order textarea { width: 100%; min-height: 48px; background: var(--ink-3); border: 1px solid var(--rule); border-radius: 4px; padding: .9rem 1rem; color: var(--cream); font: 400 .92rem/1.5 var(--f-ui); }
.publication-order textarea { min-height: 130px; resize: vertical; }
.publication-order select { color-scheme: dark; }
.publication-order input:focus-visible,
.publication-order select:focus-visible,
.publication-order textarea:focus-visible { outline: 2px solid var(--gold-hi); outline-offset: 2px; border-color: var(--gold-hi); }
.publication-order .btn { border: 0; cursor: pointer; min-height: 48px; }
.publication-order .form__note { max-width: 62ch; }
.publication-index, .publication-grid, .news-index { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(1rem, 2.5vw, 1.6rem); margin-top: 2.5rem; }
.publication-card, .news-card { display: grid; grid-template-rows: 190px 1fr; min-width: 0; border: 1px solid var(--rule); background: var(--ink-2); position: relative; }
.news-card--preview { border-color: var(--rule-strong); }
.news-card__badge {
  position: absolute; top: .8rem; left: .8rem; z-index: 1;
  background: var(--tan); color: #16120b; font: 600 .65rem/1 var(--f-ui);
  letter-spacing: .12em; text-transform: uppercase; padding: .4rem .7rem; border-radius: 999px;
}
.news-article__preview-note { margin-bottom: 1.5rem; }
.publication-card__image, .news-card__image { display: grid; place-items: center; min-width: 0; overflow: hidden; background: var(--ink); border-bottom: 1px solid var(--rule); }
.publication-card__image img, .news-card__image img { width: 100%; height: 190px; object-fit: contain; transition: transform .4s var(--ease); }
.publication-card:hover .publication-card__image img, .news-card:hover .news-card__image img { transform: scale(1.025); }
.publication-card__copy, .news-card__copy { display: flex; flex-direction: column; align-items: flex-start; padding: 1.35rem; }
.publication-card h2, .news-card h2 { font-size: clamp(1.35rem, 2vw, 1.75rem); font-weight: 400; line-height: 1.2; margin: .55rem 0 .8rem; }
.publication-card__copy > p:not(.publication-kicker):not(.publication-facts), .news-card__copy > p:not(.publication-kicker) { color: var(--dim); font-size: .9rem; line-height: 1.65; margin-bottom: 1rem; }
.publication-card .publication-facts { margin: 0 0 1rem; }
.publication-card .history__link, .news-card .history__link { margin-top: auto; }
.publication-documents { margin-top: 4rem; }
.publication-topic__head { margin-bottom: 2rem; }
.publication-topic__head h2 { font-size: clamp(1.8rem, 4vw, 2.8rem); font-weight: 400; line-height: 1.12; margin: .5rem 0 .8rem; }
.publication-topic__head h2 + h2 { margin-top: 1.2rem; }
.publication-topic__short { max-width: 68ch; color: var(--dim); line-height: 1.8; }
.publication-topic__details { margin: 2.5rem 0; }
.publication-topic__details summary { min-height: 48px; display: flex; align-items: center; color: var(--gold); font: 500 .78rem/1.4 var(--f-ui); letter-spacing: .12em; text-transform: uppercase; }
.publication-topic__details .archive-prose { margin-top: 1.5rem; }
.publication-request { scroll-margin-top: 7rem; padding: clamp(2rem, 5vw, 3.2rem); border: 1px solid var(--rule); background: var(--ink-2); }
.publication-request form { max-width: none; margin-top: 2rem; }
.request-publication { display: grid; gap: .35rem; color: var(--cream) !important; font-family: var(--f-serif); font-size: 1.35rem; }
.request-publication span { color: var(--gold); font: 500 .64rem/1.4 var(--f-ui); letter-spacing: .15em; text-transform: uppercase; }
.form__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.1rem; margin-bottom: 1.2rem; }
.form__full { grid-column: 1 / -1; }
.contact-layout { align-items: start; gap: clamp(1.5rem, 5vw, 4.5rem); }
.contact-intro { margin: 0; }
.contact-intro .section__title { color: var(--cream); font-size: var(--t-h3); }
.contact-form { max-width: none; margin: 0; padding: clamp(1.5rem, 4vw, 2.5rem); border: 1px solid var(--rule); background: var(--ink-2); }
.inventory-street-sign { margin: 2rem 0 0; padding: 1.1rem; border-block: 1px solid var(--rule); text-align: left; }
.inventory-street-sign img { width: min(100%, 660px); height: auto; margin: 0; filter: none; }
.inventory-street-sign figcaption { color: var(--dim); font: 400 .75rem/1.5 var(--f-ui); margin-top: .6rem; }
.news-card__image img { object-fit: cover; }
.news-article .archive-figure { margin-top: 0; }
.news-article .archive-prose { font-size: var(--t-body); line-height: 1.8; }
.archive-leitbild { display: grid; grid-template-columns: minmax(0,1fr) minmax(240px,.7fr); gap: var(--gap); align-items: center; }
.archive-leitbild p { color: var(--dim); margin-top: 1.5rem; }
.archive-leitbild img { width: min(100%, 313px); height: auto; max-height: 560px; object-fit: contain; margin-inline: auto; filter: drop-shadow(0 18px 34px rgba(217,188,145,.12)); }
.archive-leitbild figcaption { font-size: .75rem; color: var(--dim); margin-top: .8rem; }
.pillar__palm { display: grid; place-items: center; min-height: 230px; margin: -1.2rem 0 1.1rem; }
.pillar__palm img {
  width: min(100%, 150px);
  height: 220px;
  object-fit: contain;
  filter: drop-shadow(0 14px 28px rgba(217,188,145,.14));
}
.newsrow__media--logo { display: grid; place-items: center; min-height: 180px; background: var(--ink); }
.newsrow__media--logo img { width: 138px; height: 138px; object-fit: contain; }
.archive-satzung { max-width: 630px; margin: 3rem auto; }
.archive-satzung img { width: 100%; height: auto; }
.archive-satzung figcaption { color: var(--dim); font-size: .8rem; margin-top: 1rem; }
.charter-date { font-size: .85rem; line-height: 1.7; letter-spacing: normal; max-width: 54ch; }
.footer__inner.wrap { padding-inline: clamp(1.25rem, 4vw, 2.5rem); }
.archive-resources { display: grid; margin-bottom: 2rem; }
.archive-resources a { padding: 1.2rem 0; border-bottom: 1px solid var(--rule); color: var(--gold); }
.newsrow__media img { object-fit: contain; }
.archive-image-link:focus-visible, .archive-details summary:focus-visible { outline: 2px solid var(--gold-hi); outline-offset: 5px; }
.timeline__track:focus-visible { outline: 2px solid var(--gold-hi); outline-offset: 5px; }
@media (min-width: 701px) and (max-width: 960px) {
  .publication-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 700px) {
  .archive-building, .archive-pair, .archive-leitbild, .archive-publication, .inventory-sequence, .publication-index, .publication-grid, .news-index { grid-template-columns: minmax(0,1fr); }
  .archive-building { gap: .5rem; }
  .archive-building-text { padding-top: 0; }
  .archive-street .street__name { font-size: 2rem; margin-bottom: 1.5rem; }
  .archive-pair .archive-figure img { height: auto; max-height: 70vh; }
  .archive-history-row { grid-template-columns: minmax(0,1fr); gap: .75rem; }
  .archive-publication { gap: 1.3rem; }
  .archive-publication img { height: auto; max-height: 300px; }
  .publication-gallery, .form__grid { grid-template-columns: minmax(0,1fr); }
  .form__full { grid-column: auto; }
  .publication-card, .news-card { grid-template-rows: 210px 1fr; }
  .publication-card__image img, .news-card__image img { height: 210px; }
  .publication-request { padding: 1.4rem; }
  .archive-project-index { gap: .5rem 1.3rem; }
  .archive-credit { font-size: .75rem; }
  .archive-figure img { max-height: 70vh; }
}
@media (prefers-reduced-motion: reduce) {
  .archive-image-link, .street img { transition: none; }
  .js .timeline.timeline--motion .tl-item { opacity: 1; transform: none; transition: none; }
  .js .timeline.timeline--motion .timeline__track::after { transition: none; }
}

/* Victor's reviewed refinement, September 2026. */
.archive-credit { font-size: .72rem; text-align: right; line-height: 1.5; }
.news-band { --rule: rgba(58,44,29,.22); --gold: #493721; --gold-hi: #231b12; --gold-dim: #776047; --dim: #514535; --cream: #282219; background: #d4c2a4; color: var(--cream); }
.news-band .btn { color: #282219; border-color: #776047; background: transparent; }
.news-band .btn:hover { background: #c5ad8c; }
.news-band .newsrow__media { background: #eee8dd; }
.news-band .newsrow img { aspect-ratio: 16 / 9; height: auto; object-fit: contain; filter: none; }
.news-card__image img[src$="inventur-vergleich.svg"], .news-card__image img[src$="website-laptop.svg"] { object-fit: contain; background: #d9c9ad; }
.values-title + .history__link { margin-top: 1.4rem; }
.project-placeholder { width: 100%; min-width: 0; aspect-ratio: 16 / 10; min-height: 230px; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 1rem; border: 1px solid var(--rule-strong); background: var(--ink-2); color: var(--gold); }
.project--announced .project__grid > * { min-width: 0; }
.project-placeholder span { font: 400 1.7rem/1.2 var(--f-serif); }
.project-placeholder small { color: var(--dim); font: 400 .85rem/1.5 var(--f-ui); }
.contact-hero { padding-bottom: clamp(2rem,5vw,4rem); }
.contact-layout { grid-template-columns: minmax(0,.75fr) minmax(0,1.25fr); max-width: 1120px; margin-inline: auto; gap: clamp(2rem,6vw,5rem); }
.contact-intro { padding-top: 1rem; }
.contact-intro p { color: var(--dim); line-height: 1.8; margin-top: 1.2rem; max-width: 36ch; }
.contact-intro .history__link { font-size: .85rem; letter-spacing: .01em; text-transform: none; overflow-wrap: anywhere; }
.contact-form { border: 1px solid var(--rule); padding: clamp(1.4rem,4vw,2.5rem); }
.contact-required { color: var(--dim); font: 400 .8rem/1.6 var(--f-ui); margin-bottom: 1.5rem; }
.contact-form .form__grid { gap: 1.25rem; margin-bottom: 1.3rem; }
.contact-form .field { margin: 0; }
.contact-form .field label { font-size: .875rem; letter-spacing: .01em; text-transform: none; color: var(--cream); }
.contact-form .field input, .contact-form .field textarea { font-size: 1rem; border-radius: 2px; }
.contact-form .field textarea { min-height: 180px; }
.contact-form .field input:focus-visible, .contact-form .field textarea:focus-visible { outline: 2px solid var(--gold); outline-offset: 3px; }
.contact-form .btn[type="submit"] { min-height: 48px; padding-inline: 1.5rem; font-size: .9rem; letter-spacing: .02em; text-transform: none; }
.contact-form .form-status:empty { display: none; }
@media (max-width: 780px) {
  .contact-layout { grid-template-columns: minmax(0,1fr); gap: 2rem; }
  .contact-intro { padding-top: 0; }
  .contact-intro p { max-width: 54ch; }
}

.archive-figure .archive-image-link--metropol img { width:148.6%; max-width:none; height:auto; left:-16.2%; top:-17.5%; }

/* Homepage cards share the light news surface. */
.news-band .news-card { background: #e8dcc8; }
.news-band .news-card__image { background: #d4c2a4; }


/* Shared article presentation: open rows instead of boxed teaser cards. */
.history > div > .history__link--secondary { margin-left: 1.6rem; }
.news-index { grid-template-columns: minmax(0, 1fr); gap: 0; }
.news-card, .news-band .news-card {
  grid-template-columns: minmax(220px, .8fr) minmax(0, 1.2fr);
  grid-template-rows: auto; gap: clamp(1.5rem, 4vw, 3rem);
  padding: clamp(1.8rem, 4vw, 3rem) 0;
  border: 0; border-top: 1px solid var(--rule); background: transparent;
}
.news-card:first-child { border-top: 0; padding-top: 0; }
.news-card__image { align-self: start; aspect-ratio: 16 / 10; border: 0; }
.news-card__image img { width: 100%; height: 100%; object-fit: contain; }
.news-card__copy { padding: 0; align-self: center; }
.news-card h2 { font-size: clamp(1.8rem, 3.2vw, 2.5rem); max-width: 24ch; margin: .5rem 0 1rem; }
.news-card__copy > p:not(.publication-kicker) { max-width: 55ch; }
.news-card .history__link { margin-top: .3rem; }
.news-card__badge { position: static; grid-column: 1 / -1; justify-self: start; margin: 0; }
@media (max-width: 620px) {
  .news-card, .news-band .news-card { grid-template-columns: minmax(0, 1fr); gap: 1.25rem; }
  .news-card__image { aspect-ratio: 16 / 9; }
}

/* Explicit CMS presentation only: existing bespoke crops remain untouched. */
.cms-image-viewport { display:block; position:relative; width:100%; min-width:0; max-width:100%; aspect-ratio:3/2; overflow:hidden; }
.cms-image-viewport img[data-cms-positioned] { display:block; width:100%; height:100%; max-height:none; max-width:none; margin:0; }
.inventory-sequence .cms-image-viewport { height:clamp(220px,27vw,420px); aspect-ratio:auto; }
.inventory-step { grid-template-columns:minmax(0,1fr); }
.inventory-sequence .archive-photo-frame { width:100%; min-width:0; height:100%; }
.publication-card__image .cms-image-viewport, .news-card__image .cms-image-viewport { height:190px; aspect-ratio:auto; }
.publication-card:hover img[data-cms-positioned], .news-card:hover img[data-cms-positioned] { transition:none; }
.inventory-street-sign img { margin-inline:auto; }
@media(max-width:700px){.publication-card__image .cms-image-viewport,.news-card__image .cms-image-viewport{height:210px;}}
