/* German pages: compact first visit, readable examples and local navigation. */
.de-table-hint { font-size: .8rem; color: var(--ink-500); margin: 8px 0; }
.de-hero-actions { display: flex; gap: 12px; flex-wrap: wrap; margin: 22px 0 18px; }
.de-hero-actions .btn { min-width: 0; max-width: 100%; height: auto; min-height: 48px; white-space: normal; text-align: center; padding: 12px 20px; }
.v2 .ex-hero--image .ex-hero-copy { min-width: 0; }
.v2 .ex-hero-image { margin: 28px 0 0; border-radius: 20px; overflow: hidden; aspect-ratio: 16 / 9; background: var(--bg-2); }
.v2 .ex-hero-image img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center 35%; }
@media (min-width: 1101px) {
  .v2 .ex-hero.ex-hero--image > .wrap { max-width: 1200px; display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(0, 1fr); gap: 48px; align-items: center; }
  .v2 .ex-hero-image { margin: 0; aspect-ratio: 4 / 3; }
}
html[lang="de"] .ex .final .acts .btn { min-width: 0; max-width: 100%; height: auto; min-height: 48px; white-space: normal; text-align: center; padding: 12px 20px; }
html[lang="de"] .ex-inline-cta { min-width: 0; flex-wrap: wrap; }
html[lang="de"] .ex-inline-cta p { min-width: 0; }
html[lang="de"] .ex-inline-cta .btn { min-width: 0; max-width: 100%; height: auto; min-height: 48px; white-space: normal; text-align: center; padding: 12px 20px; }
html[lang="de"] .ex-hero .de-hero-actions + .ex-meta { margin-top: 16px; }
html[lang="de"] .ex-tablewrap:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }
html[lang="de"] .ex-iban { overflow-wrap: anywhere; font-variant-numeric: tabular-nums; }
html[lang="de"] .v2 .fgrid > * { min-width: 0; overflow-wrap: anywhere; hyphens: auto; }
/* German labels need more room than the English header at tablet widths. */
@media (max-width: 1200px) {
  html[lang="de"] .v2 .hdr nav,
  html[lang="de"] .v2 .hdr > .wrap > .btn,
  html[lang="de"] .v2 .hdr .fb-lang { display: none; }
  html[lang="de"] .v2 .hdr .wrap { gap: 16px; }
  html[lang="de"] .v2 .menu-btn { display: grid; margin-left: auto; }
  html[lang="de"] .v2 .mnav:not([hidden]) { display: grid; gap: 4px; padding: 8px 20px 20px; border-bottom: 1px solid var(--line); }
  html[lang="de"] .v2 .mnav[hidden] { display: none; }
  html[lang="de"] .v2 .mnav a { padding: 12px 4px; font-size: 17px; font-weight: 600; color: var(--ink); border-bottom: 1px solid var(--line); }
  html[lang="de"] .v2 .mnav .btn { margin-top: 12px; border: 0; color: #fff; }
}
@media (min-width: 601px) { .de-table-hint { display: none; } }
@media (max-width: 600px) {
  html[lang="de"] .ex-hero { padding-top: 24px; padding-bottom: 24px; }
  html[lang="de"] .ex-hero h1 { font-size: 32px; line-height: 1.12; hyphens: auto; overflow-wrap: anywhere; }
  html[lang="de"] .ex-hero .lead { font-size: 1rem; line-height: 1.5; }
  html[lang="de"] #cookieConsent .cookie-consent-content { padding: 12px 16px; }
  html[lang="de"] #cookieConsent .cookie-banner-wrapper { gap: 8px; align-items: stretch; }
  html[lang="de"] #cookieConsent .cookie-text h3 { font-size: 15px; line-height: 1.3; margin: 0 0 5px; }
  html[lang="de"] #cookieConsent .cookie-text p { font-size: 12px; line-height: 1.45; margin: 0; }
  html[lang="de"] #cookieConsent .cookie-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 6px; width: 100%; }
  html[lang="de"] #cookieConsent .cookie-actions .btn { min-height: 44px; width: 100%; padding: 8px; font-size: 12px; }
  html[lang="de"] #cookieConsent #cookieSettingsBtn { grid-column: 1 / -1; min-height: 32px; padding: 4px; }
}
