/* =======================================================================
   WWF Petition Split Layout
   Standalone: Hintergrund + Logo + Cards + Bild
   Eingebettet: transparent, ohne Logo/Card/Bild, zentriert
   ======================================================================= */

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) {
  position: relative;
  isolation: isolate;
  box-sizing: border-box;
  width: 100vw;
  min-height: 100vh;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  padding: 36px 32px !important;
  background: #d1d4b3 !important;
  overflow: hidden;

  --split-max-width: 1280px;
  --logo-safe-left: 140px;
  --card-radius: 6px;
  --card-shadow: 0 10px 25px rgba(0,0,0,.16);
  --wwf-black: #000;
  --wwf-white: #fff;
  --wwf-green: #007932;
  --wwf-base-35: #eae8d7;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) * {
  position: relative;
  z-index: 2;
  box-sizing: border-box;
}

@media (min-width: 981px) {
  .webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) {
    padding-left: var(--logo-safe-left) !important;
  }

  .webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker))::after {
    content: "" !important;
    position: absolute !important;
    left: 18px;
    top: 22px;
    width: 84px;
    height: 84px;
    background: url("https://www.wwf.ch/themes/custom/wwf_main_theme/images/wwf-logo-free-tab.svg") no-repeat center / contain;
    z-index: 1;
    pointer-events: none;
  }
}

/* Layout */

@media (min-width: 981px) {
  .webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) .wwf-petition-split-marker {
    width: 100% !important;
    max-width: var(--split-max-width) !important;
    margin: 0 auto !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    align-items: stretch !important;
    gap: 32px !important;
    background: transparent !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    overflow: visible !important;
  }

  .webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) .wwf-petition-split-marker > .webform-flex,
  .webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) .wwf-petition-split-marker > .webform-flex > .webform-flex--container,
  .webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) :is(.text-formular, .wwf-petition-formular) {
    width: 100% !important;
    min-width: 0 !important;
    height: 100% !important;
    min-height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    flex: 1 1 auto !important;
    align-self: stretch !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  .webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) .text-formular > .fieldset-wrapper {
    flex: 1 1 auto !important;
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    height: 100% !important;
  }

  .webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) .wwf-petition-formular > .fieldset-wrapper {
    width: 100% !important;
  }
}

/* Cards */

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) :is(.text-formular, .wwf-petition-formular) {
  background: var(--wwf-white) !important;
  color: var(--wwf-black) !important;
  border: 0 !important;
  border-radius: var(--card-radius) !important;
  box-shadow: var(--card-shadow) !important;
  margin: 0 !important;
  overflow: hidden !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) .text-formular {
  padding: 24px 24px 0 !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) .wwf-petition-formular {
  padding: 24px !important;
}

/* Bild links */

@media (min-width: 981px) {
  .webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) :is(#edit-bild-hook, .form-item-bild-hook) {
    display: block !important;
    margin-top: auto !important;
    margin-bottom: 0 !important;
    padding: 0 !important;
    width: 100% !important;
  }
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) .petition-image-hook {
  display: block !important;
  width: calc(100% + 48px) !important;
  height: 170px !important;
  min-height: 170px !important;
  margin: 22px -24px -1px !important;
  padding: 0 !important;
  border-radius: 0 0 var(--card-radius) var(--card-radius) !important;
  background: url("https://www.wwf.ch/sites/default/files/styles/default_large/public/2026-06/imago53197353.jpg.webp") center 45% / cover no-repeat !important;
}

/* Defaults */

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) fieldset {
  border: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) .fieldset-wrapper {
  margin: 0 !important;
  padding: 0 !important;
}

/* Typografie */

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) h2 {
  font-family: "WWFRegular", "Helvetica Neue", Arial, sans-serif;
  font-size: 2rem;
  line-height: 1.05;
  font-weight: 400;
  margin: 0 0 16px;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) .wwf-petition-formular h2 {
  margin-bottom: 18px !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) :is(p, .fieldset-wrapper p, .text-formular p, .wwf-petition-formular p) {
  font-family: "SourceSansPro", "Helvetica Neue", Arial, sans-serif;
  font-size: 1rem !important;
  font-weight: 400 !important;
  line-height: 1.45rem !important;
  letter-spacing: normal !important;
  font-style: normal !important;
  hyphens: none !important;
  text-align: left !important;
  font-kerning: normal !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) .wwf-petition-formular p:first-child {
  margin-top: 0 !important;
}

/* Formularfelder */

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) :is(input[type="text"], input[type="email"], select) {
  width: 100% !important;
  border: 2px solid var(--wwf-black) !important;
  border-radius: 0 !important;
  padding: 12px 14px !important;
  margin: 0 !important;
  font-size: 1rem !important;
  line-height: 1.3 !important;
  background: var(--wwf-white) !important;
  color: var(--wwf-black) !important;
  box-shadow: none !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) input::placeholder {
  color: rgba(0,0,0,.65) !important;
}

/* Einheitliche Formular-Abstände */

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) .wwf-petition-formular .fieldset-wrapper {
  display: block !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) .wwf-petition-formular :is(.form-item, .form-wrapper) {
  margin-top: 0 !important;
  margin-bottom: 12px !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) #edit-personal-data--wrapper {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) #edit-personal-data--wrapper .fieldset-wrapper {
  margin: 0 !important;
  padding: 0 !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) :is(.form-item-personal-data-firstname, .form-item-personal-data-lastname, .form-item-email) {
  margin-top: 0 !important;
  margin-bottom: 12px !important;
  padding: 0 !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) #edit-personal-data--wrapper + .form-item-email {
  margin-top: 0 !important;
}

/* Radios / Checkbox */

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) :is(input[type="radio"], input[type="checkbox"]) {
  accent-color: var(--wwf-green) !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) :is(.description, .webform-element-description) {
  font-size: .85rem !important;
  line-height: 1.15rem !important;
  color: rgba(0,0,0,.75);
}

/* Newsletter-Frage kompakt */

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) #edit-newsletter-text--wrapper {
  margin: 8px 0 10px !important;
  padding: 0 !important;
  line-height: 1.25 !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) #edit-newsletter-text--wrapper > legend {
  float: none !important;
  width: auto !important;
  margin: 0 0 8px !important;
  padding: 0 !important;
  line-height: 1.25 !important;
  white-space: normal !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) #edit-newsletter-text--wrapper .fieldset-legend {
  display: inline !important;
  margin: 0 !important;
  padding: 0 !important;
  font-size: 1rem !important;
  line-height: 1.25 !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) #edit-newsletter-text--wrapper .fieldset-wrapper {
  margin: 0 !important;
  padding: 0 !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) #edit-newsletter-text {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 10px 32px !important;
  margin: 0 !important;
  padding: 0 !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) #edit-newsletter-text .form-item {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  margin: 0 !important;
  padding: 0 !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) #edit-newsletter-text input[type="radio"] {
  margin: 0 !important;
  flex: 0 0 auto !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) #edit-newsletter-text label {
  margin: 0 !important;
  line-height: 1.25 !important;
}

/* Conditional Opt-out: nur vertikale Abstände, Drupal Hidden-State bleibt erhalten */

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) .form-item-ich-moechte-keine-nachrichten-erhalten-mit-informationen-zum-ver[style*="display: none"] {
  display: none !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) .form-item-ich-moechte-keine-nachrichten-erhalten-mit-informationen-zum-ver:not([style*="display: none"]) {
  margin-top: 8px !important;
  margin-bottom: 12px !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  line-height: 1.25 !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) .form-item-ich-moechte-keine-nachrichten-erhalten-mit-informationen-zum-ver input[type="checkbox"] {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) .form-item-ich-moechte-keine-nachrichten-erhalten-mit-informationen-zum-ver label {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  line-height: 1.25 !important;
}

/* Submit */

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) :is(.form-submit2, input.form-submit, button.form-submit) {
  display: block !important;
  width: 100% !important;
  min-width: 100% !important;
  max-width: none !important;
  height: 49.3333px !important;
  padding: 11px 25px 9px !important;
  margin: 8px 0 0 !important;
  font-family: "WWFRegular", "Helvetica Neue", Arial, sans-serif !important;
  font-size: 24px !important;
  font-weight: 400 !important;
  line-height: 24px !important;
  letter-spacing: 1.2px !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  color: var(--wwf-white) !important;
  background: var(--wwf-green) !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  cursor: pointer;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) :is(.form-submit2, input.form-submit, button.form-submit):hover {
  filter: brightness(1.04);
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) .form-actions {
  padding: 0 !important;
  margin-top: 10px !important;
  margin-bottom: 0 !important;
}

/* Progress Bar */

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) #edit-fortschritt-js {
  margin-top: 18px !important;
  margin-bottom: 0 !important;
  padding: 16px !important;
  background: var(--wwf-base-35) !important;
  border: 0 !important;
  border-radius: 4px !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) [id^="edit-fortschritt-js"] {
  border-left: 0 !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) #pdesc {
  display: block !important;
  max-width: 100% !important;
  margin: 0 0 10px !important;
  font-size: .95rem !important;
  line-height: 1.25rem !important;
  white-space: normal !important;
  overflow-wrap: break-word !important;
  word-break: normal !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) #petition-progress {
  --progress-percent: 0%;
  position: relative !important;
  display: block !important;
  width: 100% !important;
  height: 32px !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  overflow: hidden !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) #petition-progress progress {
  display: block !important;
  width: 100% !important;
  height: 32px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 2px solid var(--wwf-green) !important;
  border-radius: 0 !important;
  background: var(--wwf-white) !important;
  -webkit-appearance: none !important;
  appearance: none !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) #petition-progress progress::-webkit-progress-bar {
  background: var(--wwf-white) !important;
  border-radius: 0 !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) #petition-progress progress::-webkit-progress-value,
.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) #petition-progress progress::-moz-progress-bar {
  background: var(--wwf-green) !important;
  border-radius: 0 !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) #petition-progress #ptext,
.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) #petition-progress #ptext::before {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 32px !important;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  margin: 0 !important;
  padding: 0 !important;
  line-height: 1 !important;
  text-align: center !important;
  white-space: nowrap !important;

  font-size: .8rem !important;
  font-weight: 700 !important;
  pointer-events: none !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) #petition-progress #ptext {
  color: var(--wwf-black) !important;
  z-index: 3 !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) #petition-progress #ptext::before {
  content: attr(data-progress-text);
  color: var(--wwf-white) !important;
  clip-path: inset(0 calc(100% - var(--progress-percent, 0%)) 0 0);
}

/* Q&A */

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) .wwf-petition-qa {
  width: 100%;
  max-width: var(--split-max-width);
  margin: 28px auto 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) .wwf-petition-qa > .fieldset-wrapper {
  padding: 0 !important;
  margin: 0 !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) .wwf-qa-inner {
  background: var(--wwf-white) !important;
  color: var(--wwf-black) !important;
  border-radius: var(--card-radius) !important;
  box-shadow: 0 6px 18px rgba(0,0,0,.10) !important;
  padding: 22px 24px !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) .wwf-qa-inner h2 {
  margin: 0 0 12px !important;
  font-size: 1.65rem !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) .wwf-qa-inner details {
  border-top: 1px solid rgba(0,0,0,.18) !important;
  padding: 0 !important;
  margin: 0 !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) .wwf-qa-inner details:last-child {
  border-bottom: 1px solid rgba(0,0,0,.18) !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) .wwf-qa-inner summary {
  cursor: pointer !important;
  list-style: none !important;
  font-family: "SourceSansPro", "Helvetica Neue", Arial, sans-serif !important;
  font-size: 1rem !important;
  line-height: 1.35rem !important;
  font-weight: 700 !important;
  padding: 14px 34px 14px 0 !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) .wwf-qa-inner summary::-webkit-details-marker {
  display: none !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) .wwf-qa-inner summary::after {
  content: "+" !important;
  position: absolute !important;
  right: 2px !important;
  top: 12px !important;
  font-size: 1.35rem !important;
  line-height: 1.35rem !important;
  font-weight: 700 !important;
  color: var(--wwf-green) !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) .wwf-qa-inner details[open] summary::after {
  content: "–" !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) .wwf-qa-answer {
  padding: 0 0 16px !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) .wwf-qa-answer p {
  margin: 0 !important;
  max-width: 960px !important;
}

/* Datenschutz */

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) .wwf-petition-privacy {
  width: 100%;
  max-width: var(--split-max-width);
  margin: 22px auto 0 !important;
  padding: 0 2px !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) .wwf-petition-privacy p {
  font-size: 12px !important;
  line-height: 1.35 !important;
  color: rgba(0,0,0,.75);
  margin-top: 0;
}

/* Mobile */

@media (max-width: 980px) {
  .webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) {
    width: 100%;
    min-height: auto !important;
    margin-left: 0;
    margin-right: 0;
    padding: 18px !important;
    overflow: visible !important;
  }

  .webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker))::after {
    content: none !important;
    background: none !important;
  }

  .webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) .wwf-petition-split-marker {
    display: flex !important;
    flex-direction: column !important;
    gap: 18px !important;
    max-width: 640px !important;
    margin: 0 auto !important;
  }

  .webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) .wwf-petition-formular {
    order: 1 !important;
    padding: 18px !important;
  }

  .webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) .text-formular {
    order: 2 !important;
    padding: 18px 18px 0 !important;
  }

  .webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) .petition-image-hook {
    width: calc(100% + 36px) !important;
    height: 150px !important;
    min-height: 150px !important;
    margin: 18px -18px -1px !important;
  }

  .webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) :is(.wwf-petition-qa, .wwf-petition-privacy) {
    max-width: 640px !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) .wwf-qa-inner {
    padding: 18px !important;
  }

  .webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) h2 {
    font-size: 1.65rem;
  }
}

/* =======================================================================
   Eingebettete Variante im Paragraph
   ======================================================================= */

.field-name--field-content-plugin .renderer_webform {
  width: 100% !important;
  display: flex !important;
  justify-content: center !important;
}

.field-name--field-content-plugin .renderer_webform .webform-container,
.field-name--field-content-plugin .renderer_webform .webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)),
.field-name--field-content-plugin .renderer_webform .wwf-petition-split-marker {
  width: 100% !important;
  max-width: 1280px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.field-name--field-content-plugin .renderer_webform .webform-container,
.field-name--field-content-plugin .renderer_webform .webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) {
  min-height: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  overflow: visible !important;
}

.field-name--field-content-plugin .renderer_webform .webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker))::after {
  content: none !important;
  display: none !important;
  background: none !important;
}

.field-name--field-content-plugin .renderer_webform :is(
  .wwf-petition-split-marker,
  .text-formular,
  .wwf-petition-formular,
  .wwf-petition-qa,
  .wwf-petition-privacy,
  .wwf-qa-inner
) {
  background: transparent !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}

.field-name--field-content-plugin .renderer_webform :is(.text-formular, .wwf-petition-formular) {
  padding: 0 !important;
  overflow: visible !important;
}

.field-name--field-content-plugin .renderer_webform :is(#edit-bild-hook, .form-item-bild-hook, .petition-image-hook) {
  display: none !important;
  height: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  background: none !important;
}

.field-name--field-content-plugin .renderer_webform :is(.wwf-petition-qa, .wwf-petition-privacy) {
  width: 100% !important;
  max-width: 1280px !important;
}

.field-name--field-content-plugin .renderer_webform .wwf-qa-inner {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.field-name--field-content-plugin .renderer_webform #edit-fortschritt-js {
  box-shadow: none !important;
  border-radius: 0 !important;
}

.field-name--field-content-plugin .renderer_webform .webform-container__msg {
  margin: 0 0 18px !important;
  padding: 0 !important;
}

@media (min-width: 981px) {
  .field-name--field-content-plugin .renderer_webform .webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .field-name--field-content-plugin .renderer_webform .wwf-petition-split-marker {
    gap: 48px !important;
  }
}

@media (max-width: 980px) {
  .field-name--field-content-plugin .renderer_webform .wwf-petition-split-marker {
    max-width: none !important;
    gap: 28px !important;
  }

  .field-name--field-content-plugin .renderer_webform :is(.text-formular, .wwf-petition-formular) {
    padding: 0 !important;
  }
}
/* =======================================================================
   Newsletter / Conditional Opt-out: kompakter, ohne horizontale Verschiebung
   ======================================================================= */

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) #edit-newsletter-text--wrapper {
  margin: 8px 0 4px !important;
  padding: 0 !important;
  line-height: 1.25 !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) #edit-newsletter-text--wrapper > legend {
  float: none !important;
  width: auto !important;
  margin: 0 0 6px !important;
  padding: 0 !important;
  line-height: 1.25 !important;
  white-space: normal !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) #edit-newsletter-text--wrapper .fieldset-legend {
  display: inline !important;
  margin: 0 !important;
  padding: 0 !important;
  font-family: "SourceSansPro", "Helvetica Neue", Arial, sans-serif !important;
  font-size: 1rem !important;
  font-weight: 400 !important;
  line-height: 1.25 !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) #edit-newsletter-text--wrapper .fieldset-wrapper {
  margin: 0 !important;
  padding: 0 !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) #edit-newsletter-text {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  gap: 6px 32px !important;
  margin: 0 !important;
  padding: 0 !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) #edit-newsletter-text .form-item {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  margin: 0 !important;
  padding: 0 !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) #edit-newsletter-text input[type="radio"] {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) #edit-newsletter-text label {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  font-size: 1rem !important;
  line-height: 1.25 !important;
}

/* Conditional Checkbox: hidden state respektieren */
.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) .form-item-ich-moechte-keine-nachrichten-erhalten-mit-informationen-zum-ver[style*="display: none"] {
  display: none !important;
}

/* Nur vertikale Abstände, keine horizontale Layout-Änderung */
.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) .form-item-ich-moechte-keine-nachrichten-erhalten-mit-informationen-zum-ver:not([style*="display: none"]) {
  margin-top: 2px !important;
  margin-bottom: 10px !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  line-height: 1.25 !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) .form-item-ich-moechte-keine-nachrichten-erhalten-mit-informationen-zum-ver input[type="checkbox"] {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) .form-item-ich-moechte-keine-nachrichten-erhalten-mit-informationen-zum-ver label {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  font-size: 1rem !important;
  line-height: 1.25 !important;
}

/* Button etwas näher ans Conditional-Feld */
.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) .form-actions {
  margin-top: 8px !important;
}
/* Newsletter-Frage, Radios und Conditional-Checkbox kleiner */

.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) #edit-newsletter-text--wrapper .fieldset-legend,
.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) #edit-newsletter-text label,
.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) .form-item-ich-moechte-keine-nachrichten-erhalten-mit-informationen-zum-ver label {
  font-size: 0.9rem !important;
  line-height: 1.2 !important;
  font-weight: 400 !important;
}

/* Radios/Checkbox optisch passend kleiner */
.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) #edit-newsletter-text input[type="radio"],
.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) .form-item-ich-moechte-keine-nachrichten-erhalten-mit-informationen-zum-ver input[type="checkbox"] {
  transform: scale(0.9);
  transform-origin: left center;
}

/* Abstand zwischen Radio-Gruppe und Conditional-Checkbox reduzieren */
.webform-submission-form:is(.wwf-petition-split, :has(.wwf-petition-split-marker)) .form-item-ich-moechte-keine-nachrichten-erhalten-mit-informationen-zum-ver:not([style*="display: none"]) {
  margin-top: 2px !important;
}