/* Unterseiten-Adapter. Die fertiggestellte Startseite bleibt unverändert. */
body.skb-content-page {
  --home-ink: #071f26;
  --home-dark: #103f49;
  --home-blue: var(--friendly-blue, #2f4356);
  --home-blue-strong: #057b99;
  --home-footer-blue: var(--friendly-blue, #2f4356);
  --home-star-orange: var(--rating-orange, #F07E27);
  --home-tint: #edf5f5;
  --home-section-soft: #f7f8f8;
  --home-line: #c6dadd;
  --home-red: var(--logo-red, #8f2437);
  --content-cream: #f6f3ea;
  --content-h1: clamp(2.45rem, 3.35vw, 3.65rem);
  --content-h2: clamp(1.95rem, 2.65vw, 3rem);
  --content-h3: clamp(1.08rem, 1.35vw, 1.35rem);
  --sans: "Noto Sans SKB", "Noto Sans", sans-serif;
  --ink: var(--home-ink);
  --ink-soft: #36585f;
  --muted: #36585f;
  --canvas: var(--content-cream);
  --sand: var(--content-cream);
  --sage: var(--home-tint);
  --line: var(--home-line);
  --wine: var(--home-red);
  --seal-blue: var(--home-blue);
  --seal-blue-deep: var(--home-blue);
  --seal-navy: var(--home-dark);
  --seal-red: var(--home-red);
  --seal-mist: var(--home-tint);
  --seal-line: var(--home-line);
  min-width: 320px;
  color: var(--home-ink);
  background: #fff;
  font-family: var(--sans);
  font-size: 16px;
  line-height: 1.58;
}
.skb-content-page * { box-sizing: border-box; }
.skb-content-page main { color: var(--home-ink); }
.skb-content-page a { text-underline-offset: 4px; }
.skb-content-page main :is(h1, h2, h3, h4, p, li, a, blockquote, figcaption, summary, span, strong, small, label, input, button, th, td) { font-family: var(--sans); }
.skb-content-page main :is(h1, h2, h3, h4, strong, b) { font-weight: 700; }
.skb-content-page main :is(h1, h2, h3, h4) { color: inherit; text-wrap: balance; }
.skb-content-page main :is(h1, .page-hero-title) {
  max-width: 17ch;
  margin: 0 0 26px;
  color: var(--home-ink);
  font-size: var(--content-h1);
  font-weight: 700;
  letter-spacing: -.067em;
  line-height: 1.07;
  overflow-wrap: break-word;
}
.skb-content-page main h2 { font-size: var(--content-h2); letter-spacing: -.055em; line-height: 1.04; }
.skb-content-page main h3 { font-size: var(--content-h3); letter-spacing: -.045em; line-height: 1.12; }
/* Gezielte Typografienormalisierung gegen die alten Familien-Sondergrössen. */
.skb-content-page main p { color: inherit !important; font-size: 16px !important; line-height: 1.58 !important; }
.skb-content-page main :is(.page-module, .page-plan, .about-principle-grid, .about-work-list, .about-organisation-grid, .about-document-grid, .about-cta-grid, .seal-journey-step, .seal-consumer-card, .seal-benefits, .seal-rating-note) p { font-size: 14px !important; line-height: 1.52 !important; }
.skb-content-page main :is(.page-module, .page-plan) h2 { font-size: var(--content-h3); letter-spacing: -.045em; line-height: 1.12; }
.skb-content-page main :is(.page-module, .about-principle-grid, .about-work-list, .about-trust-list, .about-organisation-grid, .about-document-grid, .about-cta-grid, .seal-journey-step, .seal-consumer-card) h3 { font-size: var(--content-h3); }
.skb-content-page main :is(.overline, .seal-overline, .seal-card-kicker, .page-module-number) {
  color: var(--home-red) !important;
  font-size: 11px !important;
  font-weight: 700;
  letter-spacing: .11em;
  line-height: 1.2 !important;
}
.skb-content-page main .page-plan-price { color: var(--home-red) !important; font-size: 15px !important; font-weight: 700; }
.skb-content-page main :is(.page-hero-copy, .about-hero-copy) > p:not(.overline),
.skb-content-page main .seal-hero-lead,
.skb-content-page main .directory-home-hero .home-hero-copy > p:not(.overline) {
  max-width: 54ch;
  font-size: clamp(1rem, 1.2vw, 1.1rem) !important;
  line-height: 1.55 !important;
}
.skb-content-page main :is(.about-statement, .about-intelligence-quote, .seal-trust-quote),
.skb-content-page main .seal-principle p { font-size: clamp(1.15rem, 1.85vw, 1.65rem) !important; line-height: 1.3 !important; }
.skb-content-page main :is(.page-shell, .container, .home-shell) { width: min(calc(100vw - 112px), 1190px); margin-right: auto; margin-left: auto; }
.skb-content-page main :is(.page-content, .about-section, .seal-section, .seal-closing) { padding: clamp(64px, 7.5vw, 112px) 0; }
.skb-content-page main :is(.page-hero, .about-hero, .seal-hero, .directory-home-hero) {
  min-height: clamp(475px, 42vw, 630px);
  padding: clamp(48px, 5.2vw, 76px) 0 clamp(44px, 4.8vw, 68px);
  background: #fff;
}
.skb-content-page main :is(.page-hero, .about-hero, .seal-hero)::before,
.skb-content-page main .about-hero::after { content: none; }
.skb-content-page main :is(.page-hero-grid, .about-hero-inner, .seal-hero-layout) { gap: clamp(36px, 4vw, 76px); align-items: center; }
.skb-content-page main .page-hero-grid { grid-template-columns: minmax(0, 1.18fr) minmax(280px, .82fr); }
.skb-content-page main .about-hero-inner { min-height: 0; }
.skb-content-page main :is(.about-hero-copy, .seal-hero-copy) { padding: 10px 0; }
.skb-content-page main .page-hero-mark {
  min-height: 220px;
  padding: 30px;
  border: 1px solid var(--home-line);
  border-radius: 12px;
  color: var(--home-ink);
  background: var(--home-tint);
  box-shadow: none;
}
.skb-content-page main .page-hero-mark::before,
.skb-content-page main .page-hero-mark::after { content: none; }
.skb-content-page main .page-hero-mark span { color: var(--home-blue); font-size: 11px; }
.skb-content-page main .page-hero-mark strong { font-size: var(--content-h3); line-height: 1.2; }
.skb-content-page main :is(.about-hero-visual, .seal-hero-art) { width: min(100%, 560px); justify-self: end; align-self: center; transform: none; }
.skb-content-page main :is(.about-hero-visual, .seal-hero-art) img { width: 100%; height: auto; max-height: 440px; aspect-ratio: auto; object-fit: contain; }
.skb-content-page main .seal-hero-art img { border-radius: 12px; box-shadow: 0 8px 24px rgba(7, 31, 38, .08); }
.skb-content-page main :is(.page-hero-copy, .about-hero-copy, .seal-hero-copy, .page-module, .page-plan) { min-width: 0; }
/* Dieselben 46-Pixel-CTAs und zwei Farbvarianten wie auf der Startseite. */
.skb-content-page main :is(.page-button, .about-button, .seal-button, .button) {
  display: inline-flex;
  min-height: 46px;
  gap: 11px;
  align-items: center;
  justify-content: center;
  padding: 11px 16px;
  border: 1.5px solid var(--home-blue);
  border-radius: 0;
  color: var(--home-blue);
  background: #fff;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.4;
  text-decoration: none;
  transition: background-color .2s ease, color .2s ease, transform .2s ease;
}
.skb-content-page main :is(.page-button, .about-button, .seal-button, .button):is(:hover, :focus-visible) { color: var(--home-blue); background: #e5f1f2; transform: translateY(-2px); }
.skb-content-page main :is(.page-hero-copy > .page-button, .about-button-solid, .seal-button-primary, .button-primary) { color: #fff; background: var(--home-blue); }
.skb-content-page main :is(.page-hero-copy > .page-button, .about-button-solid, .seal-button-primary, .button-primary):is(:hover, :focus-visible) { color: #fff; background: var(--home-dark); }
.skb-content-page main :is(.about-button-light, .seal-button-light) { color: var(--home-blue); border-color: #fff; background: #fff; }
.skb-content-page main a:focus-visible { outline: 2px solid var(--home-blue); outline-offset: 4px; }
/* Bestehende Inhaltsraster erhalten; Flächen und Konturen angleichen. */
.skb-content-page main .page-content { background: var(--content-cream); }
.skb-content-page main :is(.page-modules, .page-plans, .page-module, .page-plan, .page-related) { border-color: var(--home-line); }
.skb-content-page main .page-module { min-height: 190px; padding-top: 28px; padding-bottom: 28px; }
.skb-content-page main .page-module-number { margin-bottom: 20px; }
.skb-content-page main .page-related a { color: var(--home-blue); font-size: 14px; }
.skb-content-page main .page-notice { color: var(--home-ink); border-color: var(--home-blue); background: var(--home-tint); }
.skb-content-page main .page-login { background: var(--home-dark); }
.skb-content-page main .page-login :is(h2, p, .overline) { color: #fff !important; }
.skb-content-page main .page-login input { font-size: 14px; }
.skb-content-page main .page-login button { min-height: 46px; color: var(--home-blue); font-size: 14px; }
.skb-content-page main :is(.about-principles, .about-method, .about-method-accordion, .seal-journey-section, .seal-intelligence-section) { background: var(--home-tint); }
.skb-content-page main :is(.about-market, .about-history, .about-documents, .seal-protection-card) { background: var(--content-cream); }
.skb-content-page main .about-history-track time,
.skb-content-page main .about-history-track li::before { background: var(--content-cream); }
.skb-content-page main :is(.about-principle-grid article, .about-document-grid article, .seal-consumer-overview, .seal-journey-step, .seal-protection-card) {
  border: 1px solid var(--home-line);
  border-radius: 12px;
  box-shadow: 0 3px 10px rgba(7, 31, 38, .04);
}
.skb-content-page main :is(.about-principle-grid article, .seal-consumer-overview, .seal-journey-step) { background: #fff; }
.skb-content-page main :is(.about-work-list, .about-trust-list, .about-organisation-grid, .about-process, .about-market-panels, .seal-protection-levels > div) { border-color: var(--home-line); }
.skb-content-page main :is(.about-intelligence, .about-question-board, .about-market-consumers, .seal-trust-section, .seal-mediation-card) { color: #fff; background: var(--home-dark); }
.skb-content-page main :is(.about-cta, .seal-closing) { color: #fff; background: var(--home-blue); }
.skb-content-page main :is(.about-intelligence, .about-question-board, .about-market-consumers, .about-cta, .seal-trust-section, .seal-mediation-card, .seal-closing) :is(h2, h3, .overline, .seal-overline, .seal-card-kicker) { color: #fff !important; }
.skb-content-page main :is(.about-intelligence, .about-question-board, .about-market-consumers, .about-cta, .seal-trust-section, .seal-mediation-card, .seal-closing) a:focus-visible { outline-color: #fff; }
.skb-content-page main .about-system-map :is(span, strong) { background: var(--home-dark); }
.skb-content-page main .about-system-map strong { color: var(--home-ink); background: var(--home-tint); border-color: var(--home-line); }
.skb-content-page main .about-method-signal-art::before { background: var(--home-tint); }
.skb-content-page main .seal-intelligence-flow { border-color: var(--home-line); background: #fff; }
.skb-content-page main .seal-table-scroll table { color: var(--home-ink); }
.skb-content-page main .seal-table-scroll td { font-size: 14px; line-height: 1.52; }
.skb-content-page main .seal-table-scroll th { color: var(--home-blue); }
.skb-content-page main .seal-protection-notice { color: var(--home-ink); background: var(--home-tint); }
.skb-content-page main .seal-text-link { color: var(--home-blue); font-size: 14px; }
.skb-content-page main .city-guides-resilience { --home-blue: var(--friendly-blue, #2f4356); --home-red: var(--logo-red, #8f2437); }
.skb-content-page main .city-guides-resilience .home-resilience-intro h2 { font-size: var(--content-h2); }
.skb-content-page main .directory-home-hero .home-hero-image img { max-height: 440px; object-fit: contain; }
@media (max-width: 860px) {
  .skb-content-page main :is(.page-shell, .container, .home-shell) { width: min(calc(100vw - 56px), 760px); }
  .skb-content-page main :is(.page-hero-grid, .about-hero-inner, .seal-hero-layout) { grid-template-columns: 1fr; gap: 32px; }
  .skb-content-page main .page-hero-mark { width: min(100%, 560px); min-height: 165px; }
  .skb-content-page main :is(.about-hero-visual, .seal-hero-art) { justify-self: center; }
}
@media (max-width: 600px) {
  body.skb-content-page { --content-h1: clamp(2.2rem, 10.5vw, 3.25rem); }
  .skb-content-page main :is(.page-shell, .container, .home-shell) { width: min(calc(100vw - 40px), 520px); }
  .skb-content-page main :is(.page-hero, .about-hero, .seal-hero, .directory-home-hero) { min-height: 0; padding: 57px 0 48px; }
  .skb-content-page main :is(.page-content, .about-section, .seal-section, .seal-closing) { padding: 65px 0; }
  .skb-content-page main :is(.page-hero-grid, .about-hero-inner, .seal-hero-layout) { gap: 26px; }
  .skb-content-page main :is(.page-module, .page-module:nth-child(even)) { min-height: 0; padding: 25px 0; }
  .skb-content-page main :is(.page-hero-copy, .about-hero-copy, .seal-hero-copy) :is(h1, .page-hero-title) { max-width: 100%; }
  .skb-content-page main :is(.about-hero-actions, .seal-hero-actions, .about-organisation-actions) { align-items: stretch; flex-direction: column; gap: 12px; }
  .skb-content-page main :is(.about-hero-visual, .seal-hero-art) img { max-height: 360px; }
}
@media (prefers-reduced-motion: reduce) {
  .skb-content-page *, .skb-content-page *::before, .skb-content-page *::after { transition-duration: .01ms !important; animation-duration: .01ms !important; }
}
