/* Online-Widerruf / Vertrag widerrufen */
.gr21-widerruf-box,
.gr21-widerruf-formbox,
.gr21-widerruf-success {
  border: 2px solid #222;
  background: #f8f8f8;
  padding: 20px;
  margin: 24px 0;
  border-radius: 6px;
}

.gr21-widerruf-box h2,
.gr21-widerruf-formbox h2,
.gr21-widerruf-success h2 {
  margin-top: 0;
}

/* Die Erfolgbox dient als Abschlussbereich nach Redirect und wird nur sichtbar,
   wenn die URL auf #gr21-widerruf-erfolg zeigt. */
.gr21-widerruf-success {
  display: none;
  border-color: #2f7d32;
  background: #f1fbf2;
}

.gr21-widerruf-success:target {
  display: block;
}

.gr21-widerruf-button,
.gr21-widerruf-submit,
.gr21-widerruf-backlink {
  display: inline-block;
  padding: 14px 24px;
  background: #111;
  color: #fff !important;
  font-weight: 700;
  text-decoration: none !important;
  border: 0;
  border-radius: 4px;
  cursor: pointer;
  line-height: 1.2;
}

.gr21-widerruf-button:hover,
.gr21-widerruf-submit:hover,
.gr21-widerruf-backlink:hover {
  background: #333;
  color: #fff !important;
}

.gr21-widerruf-form label {
  display: block;
  font-weight: 700;
  margin: 14px 0 6px;
}

.gr21-widerruf-form input[type="text"],
.gr21-widerruf-form input[type="email"],
.gr21-widerruf-form textarea {
  width: 100%;
  max-width: 720px;
  padding: 10px;
  border: 1px solid #bbb;
  border-radius: 4px;
  box-sizing: border-box;
}

.gr21-widerruf-form textarea {
  min-height: 110px;
}

.gr21-widerruf-radio label {
  display: inline-block;
  font-weight: 400;
  margin-right: 18px;
}

.gr21-widerruf-required {
  color: #900;
}

.gr21-widerruf-hp {
  position: absolute;
  left: -9999px;
  height: 1px;
  width: 1px;
  overflow: hidden;
}

/* Eigene Abschlussseite nach erfolgreichem Online-Widerruf */
.gr21-widerruf-success-page {
  max-width: 760px;
  margin: 34px auto 46px;
  padding: 34px 28px;
  background: #ffffff;
  border: 2px solid #005f00;
  border-radius: 12px;
  text-align: center;
  box-shadow: 0 6px 22px rgba(0,0,0,.08);
}

.gr21-widerruf-success-icon {
  width: 58px;
  height: 58px;
  line-height: 58px;
  border-radius: 50%;
  background: #005f00;
  color: #ffffff;
  font-size: 34px;
  font-weight: bold;
  margin: 0 auto 16px;
}

.gr21-widerruf-success-page h1 {
  margin: 0 0 14px;
  color: #005f00;
}

.gr21-widerruf-success-lead {
  font-size: 18px;
  font-weight: bold;
}

.gr21-widerruf-success-actions {
  margin-top: 26px;
  display: flex;
  gap: 12px;
  justify-content: center;
  flex-wrap: wrap;
}

.gr21-widerruf-button-secondary,
.gr21-widerruf-button-light {
  display: inline-block;
  padding: 12px 20px;
  border-radius: 6px;
  font-weight: bold;
  text-decoration: none !important;
}

.gr21-widerruf-button-secondary {
  background: #005f00;
  color: #ffffff !important;
}

.gr21-widerruf-button-light {
  background: #f2f2f2;
  color: #222222 !important;
}
