/* Warmes Erscheinungsbild ausschließlich für /automaten/. */
html[data-theme="automaten"] {
  --nx-bg: #100d0a;
  --nx-text: #ffffff;
  --nx-muted: #e6d8c8;
  --nx-blue: #bb712d;
  --nx-blue-2: #d79543;
  --nx-cyan: #efbc69;
  --nx-panel: rgba(30, 22, 16, .82);
  --nx-panel-solid: rgba(24, 19, 15, .94);
  --nx-header: rgba(17, 14, 11, .92);
  --nx-header-solid: #17130f;
  --nx-border: rgba(209, 156, 90, .48);
  --nx-cyan-soft: rgba(218, 157, 77, .12);
  --nx-cyan-strong: rgba(218, 157, 77, .22);
}
html[data-theme="automaten"]::before {
  background: #100d0a;
  filter: none;
}
html[data-theme="automaten"]::after { content: none; display: none; }
html[data-theme="automaten"] .nx-panel,
html[data-theme="automaten"] .nx-header,
html[data-theme="automaten"] .nx-footer {
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}
html[data-theme="automaten"] .nx-footer__copy { border-top-color: rgba(209, 156, 90, .25); }
html[data-theme="automaten"] .nx-section > h2,
html[data-theme="automaten"] .nx-section > p,
html[data-theme="automaten"] .nx-button--primary { text-shadow: 0 1px 3px rgba(16, 10, 5, .85); }
html[data-theme="automaten"] .nx-brand { color: #efbc69; }
/* Einheitlich: alle Überschriften im Goldton, Grün nur für Aktionen. */
html[data-theme="automaten"] :is(h1, h2, h3) { color: #efbc69; }

/* Ergänzungen ausschließlich für die Automaten-Landingpage. */
.nx-hero.nx-automaten-hero {
  display: grid;
  grid-template-columns: minmax(0, 36fr) minmax(0, 64fr);
  align-items: stretch !important;
  gap: 24px;
  width: 100%;
  max-width: none;
  margin: 0;
  min-height: 0;
  padding: 24px 20px 24px clamp(40px, 3.5vw, 60px) !important;
  background: transparent;
}
.nx-automaten-hero > .nx-hero__content {
  width: 100%;
  min-width: 0;
  max-width: none;
  margin: 0;
  padding: 0;
  background: none;
  border: 0;
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}
.nx-automaten-hero-image {
  display: block;
  width: 100%;
  height: auto;
  max-height: 70svh;
  object-fit: contain;
  align-self: center;
}
html[data-theme="automaten"] .nx-header {
  position: static;
  background: #100d0a;
  border: 0;
  box-shadow: none;
}
html[data-theme="automaten"] .nx-header__inner { max-width: none; }
html[data-theme="automaten"] .nx-header .nx-brand { font-size: 1rem; }
@media (max-width: 900px) {
  .nx-hero.nx-automaten-hero {
    grid-template-columns: minmax(0, 1fr);
    padding: 24px !important;
  }
}
.nx-automaten-placeholder { min-height: 230px; display: flex; flex-direction: column; justify-content: center; align-items: center; gap: 1rem; padding: 1.5rem; text-align: center; border: 1px dashed var(--nx-border); border-radius: 14px; background: var(--nx-cyan-soft); }
.nx-automaten-placeholder span { color: var(--nx-cyan); font-size: 1.2rem; font-weight: 600; }
.nx-automaten-placeholder strong { color: var(--nx-muted); font-weight: 400; }
.nx-card figcaption { margin-top: 1rem; color: var(--nx-muted); font-size: .9rem; }
figure.nx-card { margin: 0; }
.nx-automaten-form { display: grid; gap: 1rem; max-width: 720px; }
.nx-automaten-form label { display: grid; gap: .5rem; }
.nx-automaten-form input, .nx-automaten-form textarea { width: 100%; min-width: 0; padding: .85rem; border-radius: 10px; border: 1px solid var(--nx-border); background: var(--nx-panel-solid); color: var(--nx-text); font: inherit; }
.nx-automaten-form input:focus, .nx-automaten-form textarea:focus { outline: 2px solid var(--nx-cyan); outline-offset: 2px; }
.nx-automaten-form textarea { resize: vertical; }
.nx-automaten-form .nx-automaten-trap { display: none; }
.nx-automaten-form button { justify-self: start; cursor: pointer; }
.nx-automaten-form button:disabled { opacity: .6; cursor: wait; }
#automatenInquiryStatus { min-height: 1.5em; overflow-wrap: anywhere; }

/* Zwei gleichwertige Partnerbereiche direkt nach der Einführung. */
.nx-section.nx-automaten-partners { max-width: none; width: 100%; padding-left: 24px; padding-right: 24px; }
.nx-automaten-partners > p { max-width: none; }
.nx-automaten-partner-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1.5rem; }
.nx-automaten-partner-grid > .nx-card { min-height: 240px; padding: clamp(1.5rem, 3vw, 2.5rem); background: #080808; }
.nx-automaten-partner-grid h2 { margin: 0 0 1rem; color: #efbc69; font-size: clamp(28px, 3vw, 38px); line-height: 1.5; }
.nx-automaten-partner-grid p { margin: 0; color: #F1E1B5; font-size: clamp(18px, 1.8vw, 22px); line-height: 1.6; }
@media (max-width: 720px) { .nx-automaten-partner-grid { grid-template-columns: minmax(0, 1fr); } }

/* Vorheriger dunkler Farbton unterhalb des Hero-Bereichs. */
.nx-automaten-lower {
  width: 100%;
  padding: 24px 0;
  background: #100d0a;
}
.nx-partner-action { margin-top: auto; padding-top: 24px; }
.nx-partner-action .nx-partner-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 340px;
  min-height: 56px;
  padding: 14px 18px;
  font: inherit;
  font-weight: 600;
  line-height: 1.4;
  text-align: center;
  border: 1px solid #2F9B48;
  background: #2F9B48;
  color: #F1E1B5;
  box-shadow: none;
}
.nx-partner-action .nx-partner-button:hover:not(:disabled),
.nx-partner-action .nx-partner-button:focus-visible { background: #35A64E; color: #F1E1B5; }
.nx-partner-action .nx-partner-button:disabled { cursor: not-allowed; }

/* Bereinigte Dartscheibe ausschließlich unter dem linken Hero-Text. */
.nx-automaten-dartboard {
  display: block;
  width: min(100%, 300px);
  height: auto;
  margin: 24px auto 0;
  object-fit: contain;
  clip-path: circle(48.5% at 50% 50%);
}

/* Rechtliche Ansichten bleiben ausschließlich im Automaten-Bereich. */
.nx-automaten-legal > .nx-button { margin-bottom: 24px; }
#automatenLegalContent > .nx-section { padding: 0; }
#automatenLegalContent .nx-card { overflow-wrap: anywhere; }

/* Öffentliche Paket-Unterseiten: gleiche Struktur, nur vorbereitete Inhalte. */
html[data-theme="automaten"] body.nx-automaten-package-page {
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  min-height: 100dvh;
  background: #080808;
}
.nx-automaten-package-main { flex: 1; width: 100%; }
.nx-section.nx-automaten-package-section { width: 100%; max-width: 1100px; padding: clamp(24px, 4vw, 48px) 24px; }
.nx-automaten-package-panel { background: #080808; border-color: rgba(241, 225, 181, .3); min-width: 0; }
.nx-automaten-package-panel h1 { margin: 0 0 24px; color: #efbc69; font-size: clamp(28px, 4vw, 38px); line-height: 1.5; overflow-wrap: anywhere; }
.nx-automaten-package-panel p { color: #F1E1B5; font-size: clamp(18px, 2vw, 22px); line-height: 1.6; }
.nx-automaten-package-page .nx-partner-button { overflow-wrap: anywhere; }
