.elementor-17 .elementor-element.elementor-element-dd428b5{--display:flex;}@media(min-width:768px){.elementor-17 .elementor-element.elementor-element-dd428b5{--content-width:100%;}}/* Start custom CSS for container, class: .elementor-element-dd428b5 *//* =========================================================
   KAVENTIX | Vertrag online widerrufen – CLEAN BUILD
   CSS Rev. 1.5.2 | Stand: 2026-09-01

   Basis:
   - Germanized Widerrufsseite Rev. 1.4.0 | 2026-07-09

   Elementor-Struktur:
   Flexbox
   └── Container  [CSS-Klasse: kvt-gzd-page]
       ├── WooCommerce Breadcrumb
       ├── HTML
       │   └── .kvt-gzd-shell
       └── Shortcode
           [CSS-Klasse: kvt-gzd-form-slot]
           [CSS-ID: widerrufsformular]
           [eu_owb_order_withdrawal_request_form]

   CLEAN-BUILD-KONSOLIDIERUNG:
   - 1340-px-Raster passend zu aktuellem Header/Footer
   - Breadcrumb als Kaventix-Light-Kachel
   - reduzierter Abstand unter dem Header
   - kein künstlicher Abstand vor dem Footer
   - Germanized-/WooCommerce-Funktion unangetastet
   - keine zusätzlichen Hotfix-Blöcke
   - keine automatische Silbentrennung
   - alle funktionalen Schutzregeln der Referenz Rev. 1.4.0 wieder vollständig enthalten
========================================================= */


/* =========================================================
   1. Grundrahmen
========================================================= */

.elementor-17 .elementor-element.elementor-element-dd428b5 {
  --kvt-font:
    "Open Sans",
    system-ui,
    -apple-system,
    "Segoe UI",
    Roboto,
    Arial,
    sans-serif;

  --kvt-surface: #ffffff;
  --kvt-surface2: #fbfbfc;
  --kvt-bg: #f6f8fb;

  --kvt-text: #111827;
  --kvt-dark: #333333;
  --kvt-muted: #4B5563;
  --kvt-muted2: #6B7280;

  --kvt-blue: #0A84FF;
  --kvt-blue-dark: #0B57D0;
  --kvt-yellow: #FFC400;
  --kvt-red: #CB061A;
  --kvt-green: #2E7D32;

  --kvt-line: rgba(17, 24, 39, 0.10);
  --kvt-line-strong: rgba(17, 24, 39, 0.16);

  --kvt-shadow:
    0 10px 26px rgba(17, 24, 39, 0.08);

  --kvt-shadow-lg:
    0 18px 50px rgba(17, 24, 39, 0.10);

  --kvt-radius: 18px;
  --kvt-radius-lg: 22px;

  --kvt-max: 1340px;
  --kvt-gap: 18px;
  --kvt-inner-gap: 18px;
  --kvt-card-pad:
    clamp(24px, 2.6vw, 32px);

  width: 100%;
  max-width: 100%;

  margin: 0;
  padding: 18px 20px 0;

  color: var(--kvt-text);
  font-family: var(--kvt-font);

  background:
    radial-gradient(
      900px 280px at 8% 0%,
      rgba(10, 132, 255, 0.08),
      transparent 60%
    ),
    radial-gradient(
      900px 280px at 96% 0%,
      rgba(255, 196, 0, 0.14),
      transparent 58%
    ),
    linear-gradient(
      180deg,
      #ffffff,
      var(--kvt-bg)
    );

  box-sizing: border-box;

  overflow: visible !important;
}

.elementor-17 .elementor-element.elementor-element-dd428b5 *,
.elementor-17 .elementor-element.elementor-element-dd428b5 *::before,
.elementor-17 .elementor-element.elementor-element-dd428b5 *::after {
  box-sizing: border-box;
}

.elementor-17 .elementor-element.elementor-element-dd428b5 a {
  color: var(--kvt-blue-dark);
  font-weight: 800;
  text-decoration: none;
}

.elementor-17 .elementor-element.elementor-element-dd428b5 a:hover,
.elementor-17 .elementor-element.elementor-element-dd428b5 a:focus {
  color: var(--kvt-text);
  text-decoration: underline;
  text-underline-offset: 3px;
}


/* =========================================================
   2. Textstabilität
========================================================= */

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-shell h1,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-shell h2,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-shell h3,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-shell p,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-shell span,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-shell a,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot p,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot label,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot a {
  overflow-wrap: normal;
  word-wrap: normal;
  word-break: normal;

  -webkit-hyphens: none;
  hyphens: none;
}


/* =========================================================
   3. Elementor-Stabilisierung
========================================================= */

.elementor-17 .elementor-element.elementor-element-dd428b5,
.elementor-17 .elementor-element.elementor-element-dd428b5 .e-con,
.elementor-17 .elementor-element.elementor-element-dd428b5 .e-con-inner,
.elementor-17 .elementor-element.elementor-element-dd428b5 .elementor-element,
.elementor-17 .elementor-element.elementor-element-dd428b5 .elementor-widget,
.elementor-17 .elementor-element.elementor-element-dd428b5 .elementor-widget-container,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-shell,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot {
  overflow: visible !important;
  transform: none !important;
  contain: none !important;
}

.elementor-17 .elementor-element.elementor-element-dd428b5 .elementor-widget-html,
.elementor-17 .elementor-element.elementor-element-dd428b5 .elementor-widget-html > .elementor-widget-container,
.elementor-17 .elementor-element.elementor-element-dd428b5 .elementor-widget-shortcode,
.elementor-17 .elementor-element.elementor-element-dd428b5 .elementor-widget-shortcode > .elementor-widget-container {
  width: 100% !important;
  max-width: 100% !important;

  margin: 0 !important;
  padding: 0 !important;

  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}


/* =========================================================
   4. Gemeinsames Seitenraster
========================================================= */

.elementor-17 .elementor-element.elementor-element-dd428b5 .woocommerce-breadcrumb,
.elementor-17 .elementor-element.elementor-element-dd428b5 nav.woocommerce-breadcrumb,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-shell,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot {
  width: 100% !important;
  max-width: var(--kvt-max) !important;

  margin-left: auto !important;
  margin-right: auto !important;
}


/* =========================================================
   5. Breadcrumb – Kaventix-Light-Kachel
========================================================= */

.elementor-17 .elementor-element.elementor-element-dd428b5 .woocommerce-breadcrumb,
.elementor-17 .elementor-element.elementor-element-dd428b5 nav.woocommerce-breadcrumb {
  margin-top: 0 !important;
  margin-bottom: var(--kvt-gap) !important;

  padding: 12px 16px !important;

  color: var(--kvt-muted) !important;

  font-family: var(--kvt-font) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  line-height: 1.4 !important;

  border: 1px solid var(--kvt-line) !important;
  border-radius: 14px !important;

  background:
    linear-gradient(
      180deg,
      #ffffff,
      #fbfbfc
    ) !important;

  box-shadow:
    0 8px 20px rgba(17, 24, 39, 0.05) !important;
}

.elementor-17 .elementor-element.elementor-element-dd428b5 .woocommerce-breadcrumb a,
.elementor-17 .elementor-element.elementor-element-dd428b5 nav.woocommerce-breadcrumb a {
  color: var(--kvt-blue-dark) !important;
  font-weight: 900 !important;
  text-decoration: none !important;
}

.elementor-17 .elementor-element.elementor-element-dd428b5 .woocommerce-breadcrumb a:hover,
.elementor-17 .elementor-element.elementor-element-dd428b5 nav.woocommerce-breadcrumb a:hover {
  color: var(--kvt-text) !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
}


/* =========================================================
   6. HTML-Inhaltsrahmen
========================================================= */

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-shell {
  display: grid;
  gap: var(--kvt-gap);

  padding: 0 0 var(--kvt-gap);
}

.elementor-17 .elementor-element.elementor-element-dd428b5 #widerrufsformular,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot {
  scroll-margin-top: 130px;
}


/* =========================================================
   7. Hero
========================================================= */

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-hero {
  position: relative;

  width: 100%;

  margin: 0;
  padding: var(--kvt-card-pad);

  border: 1px solid var(--kvt-line);
  border-radius: var(--kvt-radius-lg);

  background:
    radial-gradient(
      900px 260px at 15% 10%,
      rgba(11, 87, 208, 0.10),
      transparent 60%
    ),
    radial-gradient(
      900px 280px at 95% 8%,
      rgba(255, 196, 0, 0.16),
      transparent 58%
    ),
    linear-gradient(
      180deg,
      var(--kvt-surface),
      var(--kvt-surface2)
    );

  box-shadow: var(--kvt-shadow-lg);

  overflow: hidden !important;
}

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-hero::before {
  content: "";

  position: absolute;

  left: 0;
  top: 22px;
  bottom: 22px;

  width: 4px;

  border-radius: 999px;
  background: var(--kvt-blue);
}

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-hero > * {
  position: relative;
  z-index: 1;
}

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-hero__content {
  max-width: 980px;
  margin: 0;
}

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-pill {
  display: inline-flex !important;

  align-items: center !important;
  justify-content: center !important;

  width: fit-content;
  max-width: 100%;

  margin: 0 0 14px !important;
  padding: 7px 12px !important;

  color: var(--kvt-blue-dark) !important;

  font-size: 13px !important;
  font-weight: 900 !important;
  line-height: 1.2 !important;
  letter-spacing: 0.02em !important;

  border:
    1px solid rgba(10, 132, 255, 0.22) !important;

  border-radius: 999px !important;

  background:
    rgba(255, 255, 255, 0.86) !important;
}

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-h1 {
  max-width: 980px;

  margin: 0 0 14px !important;

  color: var(--kvt-text) !important;

  font-size:
    clamp(32px, 4vw, 52px) !important;

  font-weight: 950 !important;
  line-height: 1.08 !important;
  letter-spacing: -0.02em !important;
}

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-lead {
  max-width: 920px;

  margin: 0 0 12px !important;

  color: var(--kvt-text) !important;

  font-size:
    clamp(15px, 1.4vw, 17px) !important;

  line-height: 1.65 !important;
  font-weight: 650 !important;
}

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-text {
  max-width: 900px;

  margin: 0 !important;

  color: var(--kvt-muted) !important;

  font-size: 15px !important;
  line-height: 1.65 !important;
  font-weight: 500 !important;
}


/* =========================================================
   8. Hero-Buttons
========================================================= */

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-actions {
  display: flex;
  flex-wrap: wrap;

  gap: 12px;

  margin-top: 22px;
}

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-btn,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-btn:visited {
  display: inline-flex;

  align-items: center;
  justify-content: center;

  min-height: 46px;

  padding: 12px 18px;

  color: #ffffff !important;

  font-size: 14px;
  font-weight: 950;
  line-height: 1.2;

  text-align: center;
  text-decoration: none !important;

  border:
    1px solid rgba(10, 132, 255, 0.45);

  border-radius: 14px;

  background: var(--kvt-blue);

  box-shadow: var(--kvt-shadow);

  cursor: pointer;

  transition:
    transform 180ms ease,
    background-color 180ms ease,
    border-color 180ms ease,
    color 180ms ease,
    box-shadow 180ms ease;
}

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-btn--dark,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-btn--dark:visited {
  color: #ffffff !important;

  background: var(--kvt-dark);

  border-color:
    rgba(17, 24, 39, 0.35);
}

@media (hover: hover) {

  .elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-btn:hover,
  .elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-btn:focus,
  .elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-btn--dark:hover,
  .elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-btn--dark:focus {
    color: var(--kvt-text) !important;

    background: var(--kvt-yellow);

    border-color:
      rgba(255, 196, 0, 0.85);

    transform: translateY(-1px);

    box-shadow: var(--kvt-shadow-lg);

    text-decoration: none !important;
  }
}


/* =========================================================
   9. Ablaufkarten
========================================================= */

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-steps {
  display: grid;

  grid-template-columns:
    repeat(3, minmax(0, 1fr));

  gap: var(--kvt-gap);

  margin: 0;
}

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-step {
  display: grid;
  gap: 12px;

  width: 100%;
  min-width: 0;

  margin: 0;
  padding: 22px 18px;

  border: 1px solid var(--kvt-line);
  border-left: 4px solid var(--kvt-blue);

  border-radius: var(--kvt-radius-lg);

  background:
    radial-gradient(
      520px 140px at 8% 0%,
      rgba(255, 196, 0, 0.10),
      transparent 60%
    ),
    radial-gradient(
      520px 140px at 96% 0%,
      rgba(10, 132, 255, 0.07),
      transparent 60%
    ),
    linear-gradient(
      180deg,
      #ffffff,
      #fbfbfc
    );

  box-shadow: var(--kvt-shadow);
}

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-step__icon {
  display: grid;
  place-items: center;

  width: 42px;
  height: 42px;

  margin: 0 0 2px;

  color: var(--kvt-text);

  font-size: 16px;
  font-weight: 950;
  line-height: 1;

  border:
    1px solid rgba(255, 196, 0, 0.72);

  border-radius: 14px;

  background: var(--kvt-yellow);

  box-shadow:
    0 6px 16px rgba(255, 196, 0, 0.22);
}

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-step h2 {
  margin: 0 0 8px;

  color: var(--kvt-text);

  font-size: 16px;
  line-height: 1.25;
  font-weight: 950;
}

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-step p {
  margin: 0;

  color: var(--kvt-muted);

  font-size: 14px;
  line-height: 1.55;
  font-weight: 500;
}


/* =========================================================
   10. Hinweisbox
========================================================= */

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-notice {
  display: grid;

  grid-template-columns:
    auto minmax(0, 1fr);

  gap: 14px;

  align-items: center;

  margin: 0;
  padding: 18px;

  border:
    1px solid rgba(255, 196, 0, 0.62);

  border-radius: var(--kvt-radius-lg);

  background:
    radial-gradient(
      700px 180px at 8% 0%,
      rgba(255, 196, 0, 0.24),
      transparent 60%
    ),
    radial-gradient(
      700px 180px at 95% 0%,
      rgba(10, 132, 255, 0.10),
      transparent 58%
    ),
    linear-gradient(
      180deg,
      #fffdf4,
      #fffaf0
    );

  box-shadow: var(--kvt-shadow);
}

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-notice__icon {
  display: grid;
  place-items: center;

  width: 46px;
  height: 46px;

  color: var(--kvt-text);

  font-size: 18px;
  font-weight: 950;

  border-radius: 16px;

  background: var(--kvt-yellow);

  box-shadow:
    0 8px 18px rgba(255, 196, 0, 0.22);
}

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-notice__text strong {
  display: block;

  margin: 0 0 5px;

  color: var(--kvt-text);

  font-size: 15px;
  font-weight: 950;
  line-height: 1.35;
}

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-notice__text span {
  display: block;

  color: var(--kvt-muted);

  font-size: 14px;
  line-height: 1.55;
  font-weight: 500;
}


/* =========================================================
   11. Formular-Hinweis
========================================================= */

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-formIntro {
  position: relative;

  width: 100%;

  margin: 0;
  padding: var(--kvt-card-pad);

  border: 1px solid var(--kvt-line);
  border-left: 4px solid var(--kvt-yellow);

  border-radius: var(--kvt-radius-lg);

  background:
    radial-gradient(
      520px 170px at 12% 0%,
      rgba(255, 196, 0, 0.13),
      transparent 68%
    ),
    linear-gradient(
      180deg,
      #ffffff,
      #fbfbfc
    );

  box-shadow: var(--kvt-shadow);

  overflow: hidden;
}

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-formIntro h2 {
  margin: 0 0 12px;

  color: var(--kvt-text);

  font-size:
    clamp(24px, 2.4vw, 34px);

  font-weight: 950;
  line-height: 1.16;
  letter-spacing: -0.015em;
}

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-formIntro p:not(.kvt-gzd-pill) {
  max-width: 920px;

  margin: 0;

  color: var(--kvt-muted);

  font-size: 14px;
  line-height: 1.65;
  font-weight: 500;
}


/* =========================================================
   12. Germanized-Formular-Kachel
========================================================= */

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot {
  padding: var(--kvt-card-pad) !important;

  border: 1px solid var(--kvt-line) !important;
  border-left:
    4px solid var(--kvt-blue) !important;

  border-radius:
    var(--kvt-radius-lg) !important;

  background:
    radial-gradient(
      900px 260px at 15% 0%,
      rgba(255, 196, 0, 0.13),
      transparent 62%
    ),
    radial-gradient(
      900px 260px at 96% 0%,
      rgba(10, 132, 255, 0.07),
      transparent 62%
    ),
    linear-gradient(
      180deg,
      #ffffff,
      #fbfbfc
    ) !important;

  box-shadow:
    var(--kvt-shadow-lg) !important;

  overflow: visible !important;
}

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot > .elementor-widget-container,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot form,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .woocommerce,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .woocommerce-form,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .eu-owb-order-withdrawal-request-form {
  width: 100% !important;
  max-width: 100% !important;

  margin: 0 !important;
  padding: 0 !important;

  border: 0 !important;

  background: transparent !important;

  box-shadow: none !important;
}


/* =========================================================
   13. Formulartexte und Eingabefelder
========================================================= */

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot p {
  color: var(--kvt-muted) !important;

  font-size: 15px !important;
  line-height: 1.65 !important;
  font-weight: 500 !important;
}

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot label {
  display: block;

  margin: 14px 0 7px;

  color: var(--kvt-text) !important;

  font-size: 14px !important;
  line-height: 1.35 !important;
  font-weight: 950 !important;
}

.elementor-17 .elementor-element.elementor-element-dd428b5
.kvt-gzd-form-slot
input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]),
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot select,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot textarea {
  width: 100% !important;

  min-height: 48px;

  padding: 12px 14px !important;

  color: var(--kvt-text) !important;

  font-size: 16px !important;
  line-height: 1.3 !important;

  border:
    1px solid rgba(17, 24, 39, 0.18) !important;

  border-radius: 14px !important;

  background: #ffffff !important;

  box-shadow: none !important;

  transition:
    border-color 180ms ease,
    box-shadow 180ms ease,
    background-color 180ms ease;
}

.elementor-17 .elementor-element.elementor-element-dd428b5
.kvt-gzd-form-slot
input:not([type="checkbox"]):not([type="radio"]):not([type="submit"]):focus,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot select:focus,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot textarea:focus {
  outline: none !important;

  border-color:
    rgba(10, 132, 255, 0.75) !important;

  box-shadow:
    0 0 0 4px rgba(10, 132, 255, 0.12) !important;
}

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot textarea {
  min-height: 140px;
  resize: vertical;
}

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .form-row,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot p.form-row {
  margin-bottom: 18px !important;
}


/* =========================================================
   14. Checkboxen / Radio
========================================================= */

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot input[type="checkbox"],
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot input[type="radio"] {
  display: inline-block !important;

  vertical-align: middle !important;

  width: 18px !important;
  height: 18px !important;
  min-width: 18px !important;
  min-height: 18px !important;
  max-width: 18px !important;
  max-height: 18px !important;

  margin: 0 10px 0 0 !important;
  padding: 0 !important;

  border:
    1px solid rgba(17, 24, 39, 0.35) !important;

  border-radius: 4px !important;

  background: #ffffff !important;

  box-shadow: none !important;

  cursor: pointer;
}

.elementor-17 .elementor-element.elementor-element-dd428b5
.kvt-gzd-form-slot
input[type="checkbox"] + label,
.elementor-17 .elementor-element.elementor-element-dd428b5
.kvt-gzd-form-slot
input[type="radio"] + label {
  display: inline-flex !important;

  align-items: center !important;

  width: auto !important;

  margin: 0 !important;

  font-size: 15px !important;
  font-weight: 800 !important;
  line-height: 1.35 !important;

  cursor: pointer;
}


/* =========================================================
   15. Teilwiderruf-Tabelle
========================================================= */

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot table,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .shop_table {
  width: 100% !important;
  max-width: 100% !important;

  margin: 18px 0 28px !important;

  border-collapse: separate !important;
  border-spacing: 0 !important;

  border:
    1px solid var(--kvt-line) !important;

  border-radius:
    var(--kvt-radius-lg) !important;

  overflow: hidden !important;

  background:
    radial-gradient(
      900px 260px at 15% 0%,
      rgba(255, 196, 0, 0.08),
      transparent 62%
    ),
    linear-gradient(
      180deg,
      #ffffff,
      #fbfbfc
    ) !important;

  box-shadow: var(--kvt-shadow) !important;
}

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot table thead th,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .shop_table thead th {
  padding: 16px 14px !important;

  color: var(--kvt-text) !important;

  font-size: 14px !important;
  font-weight: 950 !important;
  line-height: 1.35 !important;

  text-align: left !important;

  border: 0 !important;
  border-bottom:
    1px solid var(--kvt-line) !important;

  background:
    radial-gradient(
      220px 90px at 20% 0%,
      rgba(255, 196, 0, 0.20),
      transparent 65%
    ),
    rgba(10, 132, 255, 0.06) !important;
}

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot table tbody td,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .shop_table tbody td {
  padding: 16px 14px !important;

  color: var(--kvt-text) !important;

  font-size: 14px !important;
  line-height: 1.45 !important;

  vertical-align: middle !important;

  border: 0 !important;
  border-bottom:
    1px solid rgba(17, 24, 39, 0.08) !important;
}

.elementor-17 .elementor-element.elementor-element-dd428b5
.kvt-gzd-form-slot
table
tbody
tr:last-child
td,
.elementor-17 .elementor-element.elementor-element-dd428b5
.kvt-gzd-form-slot
.shop_table
tbody
tr:last-child
td {
  border-bottom: 0 !important;
}

.elementor-17 .elementor-element.elementor-element-dd428b5
.kvt-gzd-form-slot
table
tbody
tr:nth-child(even),
.elementor-17 .elementor-element.elementor-element-dd428b5
.kvt-gzd-form-slot
.shop_table
tbody
tr:nth-child(even) {
  background:
    rgba(17, 24, 39, 0.018) !important;
}

.elementor-17 .elementor-element.elementor-element-dd428b5
.kvt-gzd-form-slot
table
tbody
tr:hover,
.elementor-17 .elementor-element.elementor-element-dd428b5
.kvt-gzd-form-slot
.shop_table
tbody
tr:hover {
  background:
    rgba(10, 132, 255, 0.045) !important;
}

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot table th:first-child,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot table td:first-child,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .shop_table th:first-child,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .shop_table td:first-child {
  width: 52px !important;
  min-width: 52px !important;
  max-width: 52px !important;
  padding-left: 12px !important;
  padding-right: 12px !important;
  text-align: center !important;
}

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot table th:last-child,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot table td:last-child,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .shop_table th:last-child,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .shop_table td:last-child {
  width: 180px !important;
  min-width: 150px !important;
  text-align: left !important;
}

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot table input[type="checkbox"],
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .shop_table input[type="checkbox"] {
  width: 18px !important;
  height: 18px !important;
  min-width: 18px !important;
  min-height: 18px !important;
  max-width: 18px !important;
  max-height: 18px !important;
  margin: 0 !important;
  padding: 0 !important;
  display: inline-block !important;
  vertical-align: middle !important;
  border-radius: 4px !important;
  cursor: pointer !important;
}

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot table input[type="number"],
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .shop_table input[type="number"],
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot table .qty,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .shop_table .qty {
  width: 130px !important;
  max-width: 130px !important;

  min-height: 46px !important;

  padding: 10px 12px !important;

  color: var(--kvt-text) !important;

  font-size: 15px !important;
  font-weight: 700 !important;

  text-align: center !important;

  border:
    1px solid rgba(17, 24, 39, 0.14) !important;

  border-radius: 14px !important;

  background: #ffffff !important;
  box-shadow: inset 0 1px 2px rgba(17, 24, 39, 0.04) !important;
}


/* =========================================================
   16. Absende-Button
========================================================= */

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot button,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .button,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot input[type="submit"] {
  display: inline-flex !important;

  align-items: center !important;
  justify-content: center !important;

  width: auto !important;

  min-height: 50px !important;

  margin-top: 18px !important;
  padding: 13px 22px !important;

  color: #ffffff !important;

  font-size: 15px !important;
  font-weight: 950 !important;
  line-height: 1.2 !important;

  text-decoration: none !important;

  border:
    1px solid rgba(10, 132, 255, 0.45) !important;

  border-radius: 14px !important;

  background: var(--kvt-blue) !important;

  box-shadow: var(--kvt-shadow) !important;

  cursor: pointer !important;
}

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot button:hover,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .button:hover,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot input[type="submit"]:hover {
  color: var(--kvt-text) !important;

  background: var(--kvt-yellow) !important;

  border-color:
    rgba(255, 196, 0, 0.85) !important;

  box-shadow:
    var(--kvt-shadow-lg) !important;
}


/* =========================================================
   17. WooCommerce-/Germanized-Meldungen
========================================================= */

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .woocommerce-message,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .woocommerce-info,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .woocommerce-error {
  position: relative !important;

  width: 100%;
  max-width: 100%;

  margin: 0 0 18px !important;
  padding: 18px 20px !important;

  color: var(--kvt-muted) !important;

  font-size: 14px !important;
  line-height: 1.6 !important;
  font-weight: 600 !important;

  border:
    1px solid var(--kvt-line) !important;

  border-radius:
    var(--kvt-radius-lg) !important;

  background: #ffffff !important;

  box-shadow:
    var(--kvt-shadow) !important;

  list-style: none !important;
}

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .woocommerce-message {
  display: flex !important;
  align-items: flex-start !important;
  gap: 12px !important;
  color: var(--kvt-text) !important;
  border: 1px solid rgba(46, 125, 50, 0.24) !important;
  border-left: 5px solid var(--kvt-green) !important;
  background:
    radial-gradient(700px 180px at 8% 0%, rgba(46, 125, 50, 0.10), transparent 60%),
    linear-gradient(180deg, #ffffff, #f7fff7) !important;
}

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .woocommerce-message::before {
  content: "✓" !important;
  position: static !important;
  inset: auto !important;
  display: grid !important;
  place-items: center !important;
  width: 28px !important;
  height: 28px !important;
  min-width: 28px !important;
  min-height: 28px !important;
  margin: 0 !important;
  padding: 0 !important;
  color: #ffffff !important;
  font-family: var(--kvt-font) !important;
  font-size: 16px !important;
  font-weight: 950 !important;
  line-height: 1 !important;
  border-radius: 999px !important;
  background: var(--kvt-green) !important;
  box-shadow: 0 8px 18px rgba(46, 125, 50, 0.18) !important;
}

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .woocommerce-message::after {
  display: none !important;
}

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .woocommerce-info {
  display: flex !important;
  align-items: flex-start !important;
  gap: 12px !important;

  color: var(--kvt-text) !important;

  border-left:
    5px solid var(--kvt-blue) !important;

  background:
    radial-gradient(
      700px 180px at 8% 0%,
      rgba(10, 132, 255, 0.08),
      transparent 60%
    ),
    linear-gradient(
      180deg,
      #ffffff,
      #f8fbff
    ) !important;
}

/* WooCommerce-Iconfont bewusst ersetzen:
   verhindert das kleine Quadrat/Fehlglyph links in der Info-Meldung. */
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .woocommerce-info::before {
  content: "i" !important;

  position: static !important;
  inset: auto !important;

  display: grid !important;
  place-items: center !important;

  flex: 0 0 28px !important;

  width: 28px !important;
  height: 28px !important;
  min-width: 28px !important;
  min-height: 28px !important;

  margin: 0 !important;
  padding: 0 !important;

  color: #ffffff !important;

  font-family: var(--kvt-font) !important;
  font-size: 15px !important;
  font-style: normal !important;
  font-weight: 950 !important;
  line-height: 1 !important;

  border: 0 !important;
  border-radius: 999px !important;

  background: var(--kvt-blue) !important;

  box-shadow:
    0 8px 18px rgba(10, 132, 255, 0.18) !important;
}

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .woocommerce-info::after {
  content: none !important;
  display: none !important;
}

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .woocommerce-error {
  border-left:
    5px solid var(--kvt-red) !important;
}

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .woocommerce-message a,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .woocommerce-info a,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .woocommerce-error a {
  color: var(--kvt-blue-dark) !important;

  font-weight: 900 !important;

  text-decoration: underline !important;
  text-underline-offset: 3px !important;
}


/* =========================================================
   18. Loading-Fix aus Referenz Rev. 1.4.0
========================================================= */

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot button.loading::after,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .button.loading::after,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot input[type="submit"].loading::after,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot button.processing::after,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .button.processing::after,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot input[type="submit"].processing::after,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot button.disabled::after,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .button.disabled::after,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot input[type="submit"].disabled::after,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .is-loading::after,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .loading::after,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .processing::after {
  content: none !important;
  display: none !important;
  animation: none !important;
}

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .blockUI,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .blockOverlay,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .processing,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .loading {
  animation: none !important;
}

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot button.loading,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .button.loading,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot input[type="submit"].loading,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot button.processing,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .button.processing,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot input[type="submit"].processing,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot button.disabled,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .button.disabled,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot input[type="submit"].disabled,
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot button[disabled],
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot input[type="submit"][disabled] {
  pointer-events: none !important;
  cursor: default !important;
  opacity: 0.72 !important;
  color: #ffffff !important;
  background: #e8f2ff !important;
  border-color: rgba(10, 132, 255, 0.18) !important;
  transform: none !important;
  box-shadow: none !important;
}

.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .woocommerce-message ~ form button[type="submit"],
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .woocommerce-message ~ form input[type="submit"],
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .woocommerce-message ~ .eu-owb-order-withdrawal-request-form button[type="submit"],
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .woocommerce-message ~ .eu-owb-order-withdrawal-request-form input[type="submit"],
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .woocommerce-message ~ .woocommerce-form button[type="submit"],
.elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .woocommerce-message ~ .woocommerce-form input[type="submit"] {
  display: none !important;
}


/* =========================================================
   19. Fokus
========================================================= */

.elementor-17 .elementor-element.elementor-element-dd428b5 a:focus-visible,
.elementor-17 .elementor-element.elementor-element-dd428b5 button:focus-visible,
.elementor-17 .elementor-element.elementor-element-dd428b5 input:focus-visible,
.elementor-17 .elementor-element.elementor-element-dd428b5 select:focus-visible,
.elementor-17 .elementor-element.elementor-element-dd428b5 textarea:focus-visible {
  outline:
    3px solid rgba(255, 196, 0, 0.65);

  outline-offset: 3px;

  border-radius: 14px;
}


/* =========================================================
   20. Tablet
========================================================= */

@media (max-width: 1024px) {

  .elementor-17 .elementor-element.elementor-element-dd428b5 {
    padding: 16px 14px 0;
  }

  .elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-steps {
    grid-template-columns: 1fr;
  }

  .elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-step {
    grid-template-columns:
      auto minmax(0, 1fr);

    column-gap: 14px;

    align-items: start;
  }

  .elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-step__icon {
    margin: 0;
  }
}


/* =========================================================
   21. Mobile
========================================================= */

@media (max-width: 720px) {

  .elementor-17 .elementor-element.elementor-element-dd428b5 {
    padding:
      14px
      max(10px, env(safe-area-inset-right))
      0
      max(10px, env(safe-area-inset-left));

    overflow-x: clip !important;
  }

  .elementor-17 .elementor-element.elementor-element-dd428b5 .woocommerce-breadcrumb,
  .elementor-17 .elementor-element.elementor-element-dd428b5 nav.woocommerce-breadcrumb {
    padding: 10px 12px !important;

    font-size: 12.5px !important;
  }

  .elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-hero,
  .elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-formIntro,
  .elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot {
    border-radius: 18px !important;
  }

  .elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-h1 {
    font-size:
      clamp(25px, 8vw, 33px) !important;

    line-height: 1.12 !important;
  }

  .elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-actions {
    display: grid;

    grid-template-columns: 1fr;
  }

  .elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-btn,
  .elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot button,
  .elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .button,
  .elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot input[type="submit"] {
    width: 100% !important;
  }

  .elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-notice {
    grid-template-columns: 1fr;
  }

  .elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-notice__icon {
    width: fit-content;
  }

  .elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot table,
  .elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .shop_table {
    display: block !important;

    overflow-x: auto !important;

    -webkit-overflow-scrolling:
      touch !important;
  }

  .elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot table thead,
  .elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot table tbody,
  .elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot table tr,
  .elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .shop_table thead,
  .elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .shop_table tbody,
  .elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .shop_table tr {
    width: 100% !important;
  }

  .elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot table th,
  .elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot table td,
  .elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .shop_table th,
  .elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .shop_table td {
    white-space: nowrap !important;
  }

  .elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot table input[type="number"],
  .elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .shop_table input[type="number"],
  .elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot table .qty,
  .elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot .shop_table .qty {
    width: 110px !important;
    max-width: 110px !important;
  }
}


/* =========================================================
   22. Kleine Mobilgeräte
========================================================= */

@media (max-width: 420px) {

  .elementor-17 .elementor-element.elementor-element-dd428b5 {
    padding:
      12px
      max(7px, env(safe-area-inset-right))
      0
      max(7px, env(safe-area-inset-left));
  }

  .elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-hero,
  .elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-step,
  .elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-notice,
  .elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-formIntro,
  .elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-form-slot {
    padding-left: 14px !important;
    padding-right: 14px !important;
  }

  .elementor-17 .elementor-element.elementor-element-dd428b5 .kvt-gzd-h1 {
    font-size:
      clamp(24px, 8.3vw, 29px) !important;
  }
}


/* =========================================================
   23. Bewegung reduzieren
========================================================= */

@media (prefers-reduced-motion: reduce) {

  .elementor-17 .elementor-element.elementor-element-dd428b5 *,
  .elementor-17 .elementor-element.elementor-element-dd428b5 *::before,
  .elementor-17 .elementor-element.elementor-element-dd428b5 *::after {
    transition: none !important;
    animation: none !important;
    scroll-behavior: auto !important;
  }
}/* End custom CSS */