/* Compact chapter previews. Detailed content lives on its own pages. */
#taetigkeiten { scroll-margin-top: 8px; }
.service-panels { position: relative; overflow-anchor: none; border: 1px solid var(--line); border-top: 0; background: var(--paper); }
.service-panel { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.08fr); gap: 8%; padding: 42px 40px; scroll-margin-top: 8px; }
.service-panel:focus-visible { outline: 2px solid var(--red); outline-offset: -2px; }
.service-teaser-title .eyebrow { font-size: .7rem; margin-bottom: 17px; }
.service-teaser-title h3 { font: 2.1rem/1.22 var(--serif); letter-spacing: -.035em; max-width: 470px; }
.service-teaser-copy { align-self: center; }
.service-teaser-copy p { font-size: 1.02rem; line-height: 1.8; }
.service-teaser-copy .text-link { margin-top: 24px; font-size: .94rem; gap: 16px; line-height: 1.5; }
.service-more { margin-top: 0; }
.hero-subject { display: block; hyphens: manual; }
@media (min-width: 1200px) {
  .hero { grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); gap: 6%; }
  .hero h1 { font-size: clamp(3.2rem, 3.65vw, 4.1rem); }
  .hero-subject { white-space: nowrap; }
}
@media (max-width: 1100px) {
  .service-panel { padding: 34px 30px; gap: 6%; }
  .service-teaser-title h3 { font-size: 1.9rem; }
}
@media (max-width: 800px) {
  .service-panel { grid-template-columns: 1fr; padding: 30px 25px; gap: 23px; }
  .service-teaser-title h3 { max-width: 580px; font-size: 1.95rem; }
  .service-teaser-copy p { font-size: 1rem; }
  .service-teaser-copy .text-link { margin-top: 21px; }
}
@media (max-width: 440px) {
  .service-panel { padding: 27px 20px; }
  .service-teaser-title h3 { font-size: 1.75rem; }
  .service-teaser-copy p { font-size: .97rem; }
  .hero-subject { max-width: 100%; }
}

/* Confirmed feedback: main headline is the emphasis; S1 / T1 approved by Leo. */
@media(min-width:1200px){
  .hero{grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);gap:5%}
  .hero h1{font-size:clamp(3.45rem,4.1vw,4.6rem)}
}
@media(min-width:801px) and (max-width:1199px){
  .hero h1{font-size:clamp(3.2rem,4.7vw,3.75rem)}
}
@media(max-width:800px){
  .hero h1{font-size:clamp(2.45rem,7.4vw,4rem)}
}
@media(max-width:440px){
  .hero h1{font-size:2.4rem}
}
.article-portrait{border:1px solid var(--line);background:var(--soft)}

/* A quiet closing illustration, drawn in the site's ink and vermilion. */
.article-section:has(+ .justice-section) { border-bottom: 0; margin-bottom: 0; }
.article-section.justice-section {
  display: grid;
  grid-template-columns: 200px minmax(0, 1fr);
  gap: 34px;
  align-items: center;
  padding: 36px 0 24px;
  border-top: 1px solid var(--line);
}
.justice-art { width: 200px; color: var(--ink); }
.justice-drawing { display: block; width: 100%; height: auto; overflow: visible; }
.justice-figure, .justice-arm {
  stroke: currentColor;
  stroke-width: 1.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.justice-halo { stroke: var(--line); stroke-width: .8; }
.justice-detail { stroke-width: 1.15; }
.justice-suspension, .justice-ground { stroke-width: 1.2; }
.justice-accent { stroke: var(--red); }
.justice-figure .justice-accent { fill: var(--paper); }
.justice-pan { fill: var(--paper); }
.justice-pivot { stroke: var(--red); fill: var(--paper); }
.justice-arm { transform-box: view-box; transform-origin: 125px 110px; }
.justice-scale { transform-box: view-box; transform-origin: 227px 64px; }
.justice-balance { transform-box: view-box; transform-origin: 227px 104px; }
.justice-hanging { transform-box: view-box; }
.justice-hanging-left { transform-origin: 197px 109px; }
.justice-hanging-right { transform-origin: 257px 109px; }
.justice-copy { border-left: 1px solid var(--line); padding: 8px 0 8px 30px; }
.justice-section .justice-copy h2 {
  font: 600 .81rem/1.5 var(--sans);
  letter-spacing: .06em;
  margin: 0 0 20px;
  color: var(--muted);
}
.justice-section .justice-copy blockquote { margin: 0; padding: 0; border: 0; background: none; }
.justice-section .justice-copy blockquote p {
  font: 400 clamp(1.45rem, 2.25vw, 1.85rem)/1.45 var(--serif);
  letter-spacing: -.025em;
  text-align: start;
  hyphens: none;
}
.justice-section .justice-copy cite {
  margin-top: 23px;
  font-size: .78rem;
  color: var(--muted);
}
@media(max-width:650px) {
  .article-section.justice-section { grid-template-columns: 1fr; gap: 20px; padding-top: 24px; }
  .justice-art { width: 160px; }
  .justice-copy { padding: 0; border: 0; }
  .justice-section .justice-copy h2 { margin-bottom: 15px; }
  .justice-section .justice-copy blockquote p { font-size: 1.6rem; }
}
