{"id":96,"date":"2025-12-04T10:45:32","date_gmt":"2025-12-04T10:45:32","guid":{"rendered":"https:\/\/medaillendruck.de\/?page_id=96"},"modified":"2026-07-28T10:29:58","modified_gmt":"2026-07-28T10:29:58","slug":"home","status":"publish","type":"page","link":"https:\/\/medaillendruck.de\/home\/","title":{"rendered":"Home"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"96\" class=\"elementor elementor-96\">\n\t\t\t\t<div class=\"elementor-element elementor-element-17e1ca1 e-flex e-con-boxed e-con e-parent\" data-id=\"17e1ca1\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-cab6c11 elementor-hidden-tablet elementor-hidden-mobile elementor-widget elementor-widget-html\" data-id=\"cab6c11\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<div class=\"md-fixed-header\">\n\n  <!-- Laufband -->\n  <div class=\"md-top-banner\">\n    <div class=\"md-top-banner-track\">\n      <span>WEBSEITE AKTUELL IM AUFBAU \u2022 WEITERE INFORMATIONEN ZU PRODUKTEN UND KONFIGURATIONSM\u00d6GLICHKEITEN FOLGEN IN K\u00dcRZE \u2022<\/span>\n      <span>WEBSEITE AKTUELL IM AUFBAU \u2022 WEITERE INFORMATIONEN ZU PRODUKTEN UND KONFIGURATIONSM\u00d6GLICHKEITEN FOLGEN IN K\u00dcRZE \u2022<\/span>\n      <span>WEBSEITE AKTUELL IM AUFBAU \u2022 WEITERE INFORMATIONEN ZU PRODUKTEN UND KONFIGURATIONSM\u00d6GLICHKEITEN FOLGEN IN K\u00dcRZE \u2022<\/span>\n    <\/div>\n  <\/div>\n\n  <!-- Navigation -->\n  <header class=\"md-premium-nav\">\n    <div class=\"md-nav-inner\">\n\n      <!-- Logo -->\n      <a href=\"\/\" class=\"md-nav-brand\" aria-label=\"Zur Startseite\">\n        <span class=\"md-brand-icon\">\n          <img decoding=\"async\"\n            src=\"https:\/\/medaillendruck.de\/wp-content\/uploads\/2026\/06\/Zeichenflaeche-1.png\"\n            alt=\"\"\n          >\n        <\/span>\n\n        <span class=\"md-brand-word\">\n          MEDAILLEN<span>DRUCK.DE<\/span>\n        <\/span>\n      <\/a>\n\n      <!-- Hauptnavigation -->\n      <nav class=\"md-nav-links\" aria-label=\"Hauptnavigation\">\n\n        <a\n          href=\"\/\"\n          data-md-nav-link\n          data-md-path=\"\/\"\n        >\n          Home\n        <\/a>\n\n        <a\n          href=\"\/produkte\/\"\n          data-md-nav-link\n          data-md-path=\"\/produkte\/\"\n        >\n          Produkte\n        <\/a>\n\n        <a\n          href=\"\/portfolio\/\"\n          data-md-nav-link\n          data-md-path=\"\/portfolio\/\"\n        >\n          Portfolio\n        <\/a>\n\n        <a\n          href=\"\/elementor-976\/\"\n          data-md-nav-link\n          data-md-path=\"\/elementor-976\/\"\n        >\n          \u00dcber uns\n        <\/a>\n\n        <a\n          href=\"\/kontakt\/\"\n          data-md-nav-link\n          data-md-path=\"\/kontakt\/\"\n        >\n          Kontakt\n        <\/a>\n\n      <\/nav>\n\n      <!-- CTA -->\n      <a href=\"\/kontakt\/\" class=\"md-nav-cta\">\n        Jetzt anfragen\n      <\/a>\n\n    <\/div>\n  <\/header>\n\n<\/div>\n\n<style>\n@import url('https:\/\/fonts.googleapis.com\/css2?family=Orbitron:wght@900&display=swap');\n@import url('https:\/\/fonts.googleapis.com\/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap');\n\n\/* =========================\n   SCHRIFTEN\n========================= *\/\n\nbody,\nbody *,\n.elementor,\n.elementor * {\n  font-family: \"Montserrat\", \"Open Sans\", sans-serif;\n}\n\n.md-nav-brand,\n.md-nav-brand *,\n.md-brand-word,\n.md-brand-word * {\n  font-family: \"Orbitron\", sans-serif;\n  font-weight: 900;\n  letter-spacing: .5px;\n}\n\n\/* =========================\n   FIXED HEADER WRAPPER\n========================= *\/\n\n.md-fixed-header {\n  position: fixed;\n  top: 0;\n  left: 0;\n\n  width: 100%;\n\n  z-index: 99999;\n  pointer-events: none;\n}\n\n.md-fixed-header * {\n  pointer-events: auto;\n}\n\n\/* =========================\n   TOP BANNER\n========================= *\/\n\n.md-top-banner {\n  position: relative;\n\n  width: 100%;\n  height: 38px;\n\n  overflow: hidden;\n\n  background:\n    linear-gradient(\n      180deg,\n      rgba(2, 4, 8, .96),\n      rgba(6, 8, 12, .92)\n    );\n\n  border-bottom:\n    1px solid rgba(255, 255, 255, .06);\n\n  backdrop-filter: blur(18px);\n  -webkit-backdrop-filter: blur(18px);\n}\n\n.md-top-banner::after {\n  content: \"\";\n\n  position: absolute;\n  left: 0;\n  bottom: 0;\n\n  width: 100%;\n  height: 1px;\n\n  background:\n    linear-gradient(\n      90deg,\n      transparent,\n      rgba(140, 160, 255, .28),\n      transparent\n    );\n}\n\n.md-top-banner-track {\n  display: flex;\n  align-items: center;\n\n  width: max-content;\n  height: 100%;\n\n  animation:\n    mdBannerScroll 34s linear infinite;\n}\n\n.md-top-banner-track span {\n  white-space: nowrap;\n\n  padding-right: 90px;\n\n  font-family: \"Montserrat\", sans-serif;\n  font-size: .78rem;\n  font-weight: 700;\n\n  letter-spacing: .12em;\n  text-transform: uppercase;\n\n  color:\n    rgba(255, 255, 255, .74);\n}\n\n@keyframes mdBannerScroll {\n  from {\n    transform: translateX(0);\n  }\n\n  to {\n    transform: translateX(-33.333%);\n  }\n}\n\n\/* =========================\n   NAVIGATION\n========================= *\/\n\n.md-premium-nav {\n  width: 100%;\n  max-width: 1720px;\n\n  margin: 0 auto;\n  padding: .8rem 1.2rem;\n\n  font-family: \"Montserrat\", sans-serif;\n\n  box-sizing: border-box;\n}\n\n.md-nav-inner {\n  position: relative;\n\n  width: 100%;\n  min-height: 60px;\n\n  padding: 0 1.4rem;\n\n  display: flex;\n  align-items: center;\n\n  overflow: hidden;\n\n  border-radius: 24px;\n\n  background:\n    linear-gradient(\n      135deg,\n      rgba(2, 4, 8, .52),\n      rgba(6, 8, 14, .42)\n    );\n\n  border:\n    1px solid rgba(255, 255, 255, .09);\n\n  backdrop-filter: blur(24px);\n  -webkit-backdrop-filter: blur(24px);\n\n  box-shadow:\n    0 0 0 1px rgba(255, 255, 255, .05),\n    0 0 0 2px rgba(210, 220, 255, .025),\n    0 0 24px rgba(255, 255, 255, .06),\n    0 0 45px rgba(180, 195, 255, .08),\n    0 14px 42px rgba(0, 0, 0, .45),\n    inset 0 1px 0 rgba(255, 255, 255, .14),\n    inset 0 -1px 0 rgba(255, 255, 255, .04);\n\n  box-sizing: border-box;\n}\n\n\/* Edelstahl-Rand *\/\n\n.md-nav-inner::before {\n  content: \"\";\n\n  position: absolute;\n  inset: 0;\n\n  border-radius: inherit;\n\n  padding: 1px;\n\n  background:\n    linear-gradient(\n      135deg,\n      rgba(255, 255, 255, .45),\n      rgba(255, 255, 255, .04) 18%,\n      rgba(180, 200, 255, .10) 35%,\n      rgba(255, 255, 255, .03) 52%,\n      rgba(255, 255, 255, .22) 70%,\n      rgba(255, 255, 255, .05)\n    );\n\n  -webkit-mask:\n    linear-gradient(#000 0 0) content-box,\n    linear-gradient(#000 0 0);\n\n  -webkit-mask-composite: xor;\n  mask-composite: exclude;\n\n  opacity: .7;\n\n  pointer-events: none;\n}\n\n.md-nav-inner::after {\n  content: \"\";\n\n  position: absolute;\n  inset: -120px;\n\n  background:\n    radial-gradient(\n      circle at 50% 50%,\n      rgba(110, 125, 255, .10),\n      transparent 42%\n    );\n\n  opacity: .6;\n\n  pointer-events: none;\n}\n\n\/* =========================\n   BRAND\n========================= *\/\n\n.md-nav-brand {\n  position: relative;\n  z-index: 2;\n\n  display: flex;\n  align-items: center;\n\n  gap: .8rem;\n\n  flex-shrink: 0;\n\n  color: #ffffff;\n\n  text-decoration: none;\n}\n\n.md-brand-icon {\n  width: 34px;\n  height: 34px;\n\n  display: flex;\n  align-items: center;\n  justify-content: center;\n\n  flex-shrink: 0;\n}\n\n.md-brand-icon img {\n  width: 100%;\n  height: 100%;\n\n  object-fit: contain;\n\n  filter:\n    brightness(2.35)\n    contrast(1.15)\n    grayscale(1);\n\n  opacity: .98;\n}\n\n.md-brand-word {\n  display: flex;\n  align-items: center;\n\n  white-space: nowrap;\n\n  font-family: \"Orbitron\", sans-serif;\n  font-size:\n    clamp(1.1rem, 1.45vw, 1.65rem);\n  font-weight: 900;\n\n  letter-spacing: .035em;\n  line-height: 1;\n\n  color: #f6f8ff;\n\n  text-shadow:\n    0 0 14px rgba(255, 255, 255, .08);\n}\n\n.md-brand-word span {\n  margin-left: .06em;\n\n  background:\n    linear-gradient(\n      135deg,\n      #8d92ff,\n      #90c9ff\n    );\n\n  -webkit-background-clip: text;\n  background-clip: text;\n\n  -webkit-text-fill-color: transparent;\n\n  filter:\n    drop-shadow(\n      0 0 12px rgba(120, 150, 255, .18)\n    );\n}\n\n\/* =========================\n   NAVIGATIONSLINKS\n========================= *\/\n\n.md-nav-links {\n  position: relative;\n  z-index: 2;\n\n  margin-left: auto;\n\n  display: flex;\n  align-items: center;\n\n  gap:\n    clamp(1.5rem, 2.6vw, 3rem);\n}\n\n.md-nav-links a {\n  position: relative;\n\n  color:\n    rgba(255, 255, 255, .84);\n\n  text-decoration: none;\n\n  font-size: 1rem;\n  font-weight: 500;\n\n  transition:\n    color .25s ease,\n    text-shadow .25s ease;\n}\n\n\/* Hover-\/Aktiv-Linie *\/\n\n.md-nav-links a::after {\n  content: \"\";\n\n  position: absolute;\n\n  left: 0;\n  bottom: -6px;\n\n  width: 0;\n  height: 1px;\n\n  border-radius: 999px;\n\n  background:\n    linear-gradient(\n      90deg,\n      #9092ff,\n      #87cbff\n    );\n\n  transition:\n    width .25s ease;\n}\n\n\/* Hover *\/\n\n.md-nav-links a:hover {\n  color: #ffffff;\n\n  text-shadow:\n    0 0 10px rgba(255, 255, 255, .18);\n}\n\n.md-nav-links a:hover::after {\n  width: 100%;\n}\n\n\/* Aktuelle Seite *\/\n\n.md-nav-links a[data-md-active=\"true\"] {\n  color: #ffffff;\n\n  text-shadow:\n    0 0 10px rgba(255, 255, 255, .18);\n}\n\n.md-nav-links a[data-md-active=\"true\"]::after {\n  width: 100%;\n}\n\n\/* =========================\n   CTA BUTTON\n========================= *\/\n\n.md-nav-cta {\n  position: relative;\n  z-index: 2;\n\n  margin-left:\n    clamp(1.5rem, 2.5vw, 2.6rem);\n\n  min-width: 168px;\n  height: 42px;\n\n  padding: 0 1.15rem;\n\n  border-radius: 999px;\n\n  display: inline-flex;\n  align-items: center;\n  justify-content: center;\n\n  text-decoration: none;\n\n  background:\n    linear-gradient(\n      135deg,\n      #8e80ff,\n      #95e2ff\n    );\n\n  color: #0d1020;\n\n  font-family: \"Montserrat\", sans-serif;\n  font-size: .8rem;\n  font-weight: 700;\n\n  box-shadow:\n    0 8px 24px rgba(120, 140, 255, .16),\n    inset 0 1px 0 rgba(255, 255, 255, .7);\n\n  transition:\n    transform .25s ease,\n    box-shadow .25s ease;\n}\n\n.md-nav-cta:hover {\n  transform:\n    translateY(-2px);\n\n  box-shadow:\n    0 12px 32px rgba(120, 140, 255, .24),\n    inset 0 1px 0 rgba(255, 255, 255, .82);\n}\n\n\/* =========================\n   TABLET\n========================= *\/\n\n@media (max-width: 1100px) {\n\n  .md-nav-links {\n    gap: 1.4rem;\n  }\n\n  .md-nav-cta {\n    min-width: auto;\n  }\n}\n\n\/* =========================\n   MOBILE FALLBACK\n========================= *\/\n\n@media (max-width: 900px) {\n\n  .md-fixed-header {\n    position: fixed;\n\n    width: 100%;\n\n    overflow: visible;\n  }\n\n  .md-top-banner {\n    height: 30px;\n  }\n\n  .md-top-banner-track span {\n    padding-right: 55px;\n\n    font-size: .58rem;\n  }\n\n  .md-premium-nav {\n    padding: .6rem .75rem;\n  }\n\n  .md-nav-inner {\n    min-height: auto;\n\n    padding: .85rem;\n\n    gap: .8rem;\n\n    flex-wrap: wrap;\n    justify-content: center;\n\n    overflow: visible;\n  }\n\n  .md-nav-brand {\n    width: 100%;\n\n    justify-content: center;\n  }\n\n  .md-brand-word {\n    font-size:\n      clamp(.95rem, 4vw, 1.15rem);\n  }\n\n  .md-nav-links {\n    width: 100%;\n\n    margin-left: 0;\n\n    justify-content: center;\n    flex-wrap: wrap;\n\n    gap: .75rem 1rem;\n  }\n\n  .md-nav-links a {\n    font-size: .82rem;\n    line-height: 1.2;\n  }\n\n  .md-nav-cta {\n    width: 100%;\n    height: 38px;\n\n    margin-left: 0;\n\n    font-size: .82rem;\n  }\n}\n\n@media (max-width: 600px) {\n\n  .md-premium-nav {\n    padding: .45rem .55rem;\n  }\n\n  .md-nav-inner {\n    padding: .75rem;\n\n    border-radius: 18px;\n  }\n\n  .md-brand-icon {\n    width: 28px;\n    height: 28px;\n  }\n\n  .md-brand-word {\n    font-size: .88rem;\n  }\n\n  .md-nav-links {\n    gap: .55rem .85rem;\n  }\n\n  .md-nav-links a {\n    font-size: .76rem;\n  }\n\n  .md-nav-cta {\n    height: 36px;\n\n    font-size: .78rem;\n  }\n}\n<\/style>\n\n<script>\n(function () {\n  \"use strict\";\n\n  function mdNormalizePath(path) {\n    let normalizedPath = path || \"\/\";\n\n    try {\n      normalizedPath =\n        decodeURIComponent(normalizedPath);\n    } catch (error) {\n      \/*\n       * Falls die URL nicht dekodiert werden kann,\n       * wird der urspr\u00fcngliche Pfad verwendet.\n       *\/\n    }\n\n    normalizedPath = normalizedPath\n      .split(\"?\")[0]\n      .split(\"#\")[0]\n      .replace(\/\\\/index\\.php$\/i, \"\/\")\n      .replace(\/\\\/+\/g, \"\/\")\n      .toLowerCase();\n\n    if (\n      normalizedPath !== \"\/\" &&\n      !normalizedPath.endsWith(\"\/\")\n    ) {\n      normalizedPath += \"\/\";\n    }\n\n    return normalizedPath;\n  }\n\n  function mdSetActiveDesktopNavigation() {\n    const navigation =\n      document.querySelector(\n        \".md-fixed-header .md-nav-links\"\n      );\n\n    if (!navigation) {\n      return;\n    }\n\n    const currentPath =\n      mdNormalizePath(\n        window.location.pathname\n      );\n\n    const links =\n      navigation.querySelectorAll(\n        \"a[data-md-nav-link]\"\n      );\n\n    links.forEach(function (link) {\n      const linkPath =\n        mdNormalizePath(\n          link.getAttribute(\"data-md-path\") ||\n          link.getAttribute(\"href\")\n        );\n\n      let isActive = false;\n\n      \/*\n       * Die Startseite darf ausschlie\u00dflich bei \"\/\"\n       * aktiv sein. Sonst w\u00e4re Home wegen des\n       * gemeinsamen Anfangs jeder URL immer aktiv.\n       *\/\n      if (linkPath === \"\/\") {\n        isActive =\n          currentPath === \"\/\";\n      } else {\n        isActive =\n          currentPath === linkPath ||\n          currentPath.startsWith(linkPath);\n      }\n\n      if (isActive) {\n        link.setAttribute(\n          \"data-md-active\",\n          \"true\"\n        );\n\n        link.setAttribute(\n          \"aria-current\",\n          \"page\"\n        );\n      } else {\n        link.removeAttribute(\n          \"data-md-active\"\n        );\n\n        link.removeAttribute(\n          \"aria-current\"\n        );\n      }\n    });\n  }\n\n  function mdInitializeDesktopNavigation() {\n    mdSetActiveDesktopNavigation();\n\n    \/*\n     * Zus\u00e4tzliche Pr\u00fcfung nach dem vollst\u00e4ndigen\n     * Laden, falls Elementor den Header verz\u00f6gert\n     * in die Seite einf\u00fcgt.\n     *\/\n    window.setTimeout(\n      mdSetActiveDesktopNavigation,\n      300\n    );\n  }\n\n  if (document.readyState === \"loading\") {\n    document.addEventListener(\n      \"DOMContentLoaded\",\n      mdInitializeDesktopNavigation\n    );\n  } else {\n    mdInitializeDesktopNavigation();\n  }\n\n  window.addEventListener(\n    \"load\",\n    mdSetActiveDesktopNavigation\n  );\n\n  window.addEventListener(\n    \"pageshow\",\n    mdSetActiveDesktopNavigation\n  );\n})();\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-d85544e elementor-hidden-desktop elementor-widget elementor-widget-html\" data-id=\"d85544e\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t\n<div class=\"md-mobile-header\">\n\n  <div class=\"md-mobile-top\">\n    <span>WEBSEITE AKTUELL IM AUFBAU \u2022 INFOS FOLGEN IN K\u00dcRZE<\/span>\n  <\/div>\n\n  <header class=\"md-mobile-nav\">\n    <a href=\"\/\" class=\"md-mobile-brand\">\n      <img decoding=\"async\" src=\"https:\/\/medaillendruck.de\/wp-content\/uploads\/2026\/06\/Zeichenflaeche-1.png\" alt=\"Medaillendruck.de Logo\">\n      <span>MEDAILLEN<span>DRUCK.DE<\/span><\/span>\n    <\/a>\n\n    <button class=\"md-mobile-toggle\" type=\"button\" aria-label=\"Men\u00fc \u00f6ffnen\">\n      <span><\/span>\n      <span><\/span>\n      <span><\/span>\n    <\/button>\n  <\/header>\n\n  <nav class=\"md-mobile-menu\" aria-label=\"Mobile Navigation\">\n    <a href=\"\/\">Home<\/a>\n    <a href=\"\/produkte\/\">Produkte<\/a>\n    <a href=\"\/portfolio\/\">Portfolio<\/a>\n    <a href=\"\/elementor-976\/\">\u00dcber uns<\/a>\n    <a href=\"\/kontakt\/\">Kontakt<\/a>\n    <a href=\"\/kontakt\/\" class=\"md-mobile-cta\">Jetzt anfragen<\/a>\n  <\/nav>\n\n<\/div>\n\n<style>\n@import url('https:\/\/fonts.googleapis.com\/css2?family=Orbitron:wght@900&family=Montserrat:wght@400;500;600;700;800&display=swap');\n\nhtml,\nbody{\n    margin:0;\n    overflow-x:hidden;\n}\n\n.md-mobile-header,\n.md-mobile-header *{\n    box-sizing:border-box;\n    font-family:Montserrat,sans-serif;\n}\n\n.md-mobile-header{\n    position:fixed;\n    top:0;\n    left:0;\n    width:100%;\n    z-index:99999;\n}\n\n\/* ---------------- TOP BAR ---------------- *\/\n\n.md-mobile-top{\n\n    height:28px;\n\n    display:flex;\n    align-items:center;\n\n    overflow:hidden;\n\n    background:#05070d;\n\n    border-bottom:1px solid rgba(255,255,255,.08);\n}\n\n.md-mobile-top span{\n\n    white-space:nowrap;\n\n    padding-left:100%;\n\n    font-size:.6rem;\n    font-weight:500;\n    letter-spacing:.12em;\n\n    color:rgba(255,255,255,.72);\n\n    animation:mdMobileMarquee 18s linear infinite;\n}\n\n@keyframes mdMobileMarquee{\n\n    from{\n        transform:translateX(0);\n    }\n\n    to{\n        transform:translateX(-180%);\n    }\n\n}\n\n\/* ---------------- NAV ---------------- *\/\n\n.md-mobile-nav{\n\n    width:calc(100vw - 24px);\n\n    margin:10px auto 0;\n\n    padding:0 14px;\n\n    min-height:60px;\n\n    display:flex;\n    align-items:center;\n\n    border-radius:20px;\n\n    background:\n    linear-gradient(\n        135deg,\n        rgba(2,4,8,.76),\n        rgba(8,12,24,.64)\n    );\n\n    border:1px solid rgba(255,255,255,.10);\n\n    backdrop-filter:blur(22px);\n\n    box-shadow:\n    0 12px 40px rgba(0,0,0,.42);\n\n}\n\n\/* ---------------- BRAND ---------------- *\/\n\n.md-mobile-brand{\n\n    flex:1;\n\n    min-width:0;\n\n    display:flex;\n    align-items:center;\n\n    gap:10px;\n\n    text-decoration:none;\n\n    overflow:hidden;\n}\n\n.md-mobile-brand img{\n\n    width:28px;\n    height:28px;\n\n    flex-shrink:0;\n\n    object-fit:contain;\n\n    filter:\n    brightness(2.2)\n    grayscale(1);\n}\n\n.md-mobile-brand>span{\n\n    overflow:hidden;\n\n    white-space:nowrap;\n\n    text-overflow:ellipsis;\n\n    font-family:Orbitron,sans-serif;\n\n    font-size:clamp(.72rem,3.8vw,.95rem);\n\n    font-weight:600;\n\n    color:#fff;\n}\n\n.md-mobile-brand>span span{\n\n    background:\n    linear-gradient(\n        135deg,\n        #8e80ff,\n        #95e2ff\n    );\n\n    -webkit-background-clip:text;\n    -webkit-text-fill-color:transparent;\n}\n\n\/* ---------------- MENU BUTTON ---------------- *\/\n\n.md-mobile-toggle{\n\n    flex-shrink:0;\n\n    width:40px;\n    height:40px;\n\n    margin-left:12px;\n\n    border:none;\n\n    border-radius:999px;\n\n    display:flex;\n    flex-direction:column;\n\n    justify-content:center;\n    align-items:center;\n\n    gap:5px;\n\n    cursor:pointer;\n\n    background:\n    linear-gradient(\n        135deg,\n        #8e80ff,\n        #95e2ff\n    );\n}\n\n.md-mobile-toggle span{\n\n    width:18px;\n    height:2px;\n\n    border-radius:20px;\n\n    background:#08101f;\n\n    transition:.25s;\n}\n\n.md-mobile-header.is-open .md-mobile-toggle span:nth-child(1){\n\n    transform:\n    translateY(7px)\n    rotate(45deg);\n\n}\n\n.md-mobile-header.is-open .md-mobile-toggle span:nth-child(2){\n\n    opacity:0;\n\n}\n\n.md-mobile-header.is-open .md-mobile-toggle span:nth-child(3){\n\n    transform:\n    translateY(-7px)\n    rotate(-45deg);\n\n}\n\n\/* ---------------- MENU ---------------- *\/\n\n.md-mobile-menu{\n\n    width:calc(100vw - 24px);\n\n    margin:10px auto 0;\n\n    padding:10px;\n\n    border-radius:22px;\n\n    display:grid;\n\n    gap:8px;\n\n    background:\n\n    linear-gradient(\n        135deg,\n        rgba(2,4,8,.92),\n        rgba(8,12,24,.86)\n    );\n\n    border:1px solid rgba(255,255,255,.10);\n\n    backdrop-filter:blur(24px);\n\n    opacity:0;\n    visibility:hidden;\n\n    pointer-events:none;\n\n    transform:translateY(-10px);\n\n    transition:.25s;\n}\n\n.md-mobile-header.is-open .md-mobile-menu{\n\n    opacity:1;\n    visibility:visible;\n\n    pointer-events:auto;\n\n    transform:none;\n}\n\n.md-mobile-menu a{\n\n    padding:15px;\n\n    border-radius:16px;\n\n    text-decoration:none;\n\n    color:#fff;\n\n    font-weight:600;\n\n    background:rgba(255,255,255,.03);\n}\n\n.md-mobile-menu a:hover{\n\n    background:rgba(149,226,255,.08);\n}\n\n.md-mobile-cta{\n\n    margin-top:6px;\n\n    color:#08101f!important;\n\n    text-align:center;\n\n    background:\n    linear-gradient(\n        135deg,\n        #8e80ff,\n        #95e2ff\n    )!important;\n}\n\n\/* Desktop ausblenden *\/\n\n@media(min-width:901px){\n\n.md-mobile-header{\n\ndisplay:none!important;\n\n}\n\n}\n<\/style>\n\n<script>\n(function () {\n  const header = document.querySelector(\".md-mobile-header\");\n  const toggle = document.querySelector(\".md-mobile-toggle\");\n\n  if (!header || !toggle) return;\n\n  toggle.addEventListener(\"click\", function () {\n    header.classList.toggle(\"is-open\");\n  });\n\n  header.querySelectorAll(\".md-mobile-menu a\").forEach(function (link) {\n    link.addEventListener(\"click\", function () {\n      header.classList.remove(\"is-open\");\n    });\n  });\n})();\n<\/script>\n\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-64eda5d e-con-full e-flex e-con e-parent\" data-id=\"64eda5d\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-b494e3e elementor-hidden-tablet elementor-hidden-mobile elementor-widget elementor-widget-html\" data-id=\"b494e3e\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<!-- \n   HERO SECTION\n-->\n\n<section class=\"md-hero-section\">\n\n  <!-- Hintergrundbild -->\n  <div class=\"md-hero-bg\"><\/div>\n  <div class=\"md-hero-overlay\"><\/div>\n\n  <!-- Hero Inhalt -->\n  <div class=\"md-hero-content\">\n\n   <div class=\"md-hero-badge\">\n  MEDAILLEN MIT LOGO. UV-DRUCK. INDIVIDUELL.\n<\/div>\n\n<h1 class=\"md-hero-title\">\n  Medaillen bedrucken lassen\n  <span>f\u00fcr Sportevents, Vereine und besondere Momente<\/span>\n<\/h1>\n\n<p class=\"md-hero-text\">\n  Medaillen bedrucken lassen leicht gemacht: Gestalte hochwertige Medaillen mit Logo, Motiv oder eigenem Design \u2013 ideal f\u00fcr Turniere, Laufveranstaltungen, Vereinsfeste und besondere Auszeichnungen.\n<\/p>\n\n    <div class=\"md-hero-actions\">\n\n     <a href=\"#md-mobile-configurator\" class=\"md-hero-btn primary\">\n  Medaillen jetzt konfigurieren\n<\/a>\n\n     <a href=\"\/portfolio\/\" class=\"md-hero-btn secondary\">\n        Bedruckte Medaillen ansehen\n        <span>\u25c9<\/span>\n      <\/a>\n\n    <\/div>\n\n    <!-- Feature Cards -->\n    <div class=\"md-hero-features\">\n\n      <div class=\"md-feature-card\">\n        <div class=\"md-feature-icon\">\u25c8<\/div>\n\n        <div>\n          <h3>Premium Qualit\u00e4t<\/h3>\n          <p>\n            Hochwertiger UV-Druck auf Edelstahlmedaillen.\n          <\/p>\n        <\/div>\n      <\/div>\n\n      <div class=\"md-feature-card\">\n        <div class=\"md-feature-icon\">\u2726<\/div>\n\n        <div>\n          <h3>Medaillen mit Logo<\/h3>\n          <p>\n            Dein Logo, deine Farben und dein individuelles Motiv.\n          <\/p>\n        <\/div>\n      <\/div>\n\n      <div class=\"md-feature-card\">\n        <div class=\"md-feature-icon\">\u26a1<\/div>\n\n        <div>\n          <h3>Schnelle Umsetzung<\/h3>\n          <p>\n            Produktion nach Absprache \u2013 passend zu deinem Eventtermin.\n          <\/p>\n        <\/div>\n      <\/div>\n\n      <div class=\"md-feature-card\">\n        <div class=\"md-feature-icon\">\u25c9<\/div>\n\n        <div>\n          <h3>Zuverl\u00e4ssiger Versand<\/h3>\n          <p>\n            Sicherer Versand deiner bedruckten Medaillen per Post oder Kurier.\n          <\/p>\n        <\/div>\n      <\/div>\n\n    <\/div>\n\n  <\/div>\n<\/section>\n\n<style>\n@import url('https:\/\/fonts.googleapis.com\/css2?family=Montserrat:wght@400;500;600;700;800;900&display=swap');\n\n\/* =========================\n   HERO SECTION\n========================= *\/\n\n.md-hero-section,\n.md-hero-section *,\n.md-hero-section h1,\n.md-hero-section h2,\n.md-hero-section h3,\n.md-hero-section p,\n.md-hero-section a,\n.md-hero-section span {\n  box-sizing: border-box;\n  font-family: \"Montserrat\", Arial, sans-serif !important;\n}\n\n.md-hero-section {\n  position: relative;\n\n  width: 100%;\n  min-height: 100vh;\n\n  overflow: hidden;\n\n  display: flex;\n  align-items: flex-start;\n\n  color: #ffffff;\n}\n\n\/* =========================\n   BACKGROUND IMAGE\n========================= *\/\n\n.md-hero-bg {\n  position: absolute;\n  inset: -8%;\n\n  background-image: url(\"https:\/\/medaillendruck.de\/wp-content\/uploads\/2026\/05\/IMG_6523.jpeg\");\n  background-size: cover;\n  background-position: center center;\n  background-repeat: no-repeat;\n\n  filter: brightness(.62) contrast(1.05) saturate(.96);\n\n  transform: translateY(var(--md-parallax-y, 0px)) scale(1.08);\n  will-change: transform;\n}\n\n\/* =========================\n   DARK OVERLAY\n========================= *\/\n\n.md-hero-overlay {\n  position: absolute;\n  inset: 0;\n\n  background:\n    linear-gradient(\n      90deg,\n      rgba(0,0,0,.45) 0%,\n      rgba(0,0,0,.22) 40%,\n      rgba(0,0,0,.12) 100%\n    ),\n    linear-gradient(\n      180deg,\n      rgba(0,0,0,.18) 0%,\n      rgba(0,0,0,.04) 42%,\n      rgba(0,0,0,.32) 100%\n    );\n}\n\n\/* =========================\n   CONTENT\n========================= *\/\n\n.md-hero-content {\n  position: relative;\n  z-index: 5;\n\n  width: 100%;\n  max-width: 1650px;\n\n  margin: 0 auto;\n\n  padding: 6rem clamp(1.5rem, 5vw, 4rem) 5rem;\n}\n\n\/* Weicher Dark Overlay hinter dem Text *\/\n.md-hero-content::before {\n  content: \"\";\n\n  position: absolute;\n\n  top: -8%;\n  left: -6%;\n\n  width: 78%;\n  height: 88%;\n\n  background:\n    radial-gradient(\n      ellipse at top left,\n      rgba(0,0,0,.72) 0%,\n      rgba(0,0,0,.52) 34%,\n      rgba(0,0,0,.22) 58%,\n      rgba(0,0,0,0) 100%\n    );\n\n  filter: blur(26px);\n\n  z-index: -1;\n  pointer-events: none;\n}\n\n\/* =========================\n   BADGE\n========================= *\/\n\n.md-hero-badge {\n  display: inline-flex;\n  align-items: center;\n\n  min-height: 44px;\n\n  padding: 0 1.2rem;\n\n  border-radius: 999px;\n\n  border: 1px solid rgba(140,155,255,.42);\n\n  background:\n    linear-gradient(\n      135deg,\n      rgba(8,10,16,.78),\n      rgba(18,22,30,.52)\n    );\n\n  backdrop-filter: blur(14px);\n\n  color: #ffffff;\n\n  font-size: .86rem;\n  font-weight: 500;\n  letter-spacing: .08em;\n\n  box-shadow:\n    0 0 24px rgba(120,140,255,.12),\n    inset 0 1px 0 rgba(255,255,255,.08);\n}\n\n\/* =========================\n   TITLE\n========================= *\/\n\n.md-hero-title {\n  margin: 2rem 0 1.4rem;\n\n  max-width: 1250px;\n\n  color: #ffffff;\n\n  font-size: clamp(2.5rem, 6vw, 6rem);\n  line-height: 1.08;\n\n  letter-spacing: -.05em;\n  font-weight: 500;\n\n  position: relative;\n  z-index: 2;\n\n  padding-bottom: .12em;\n\n  text-shadow:\n    0 4px 20px rgba(0,0,0,.22);\n}\n\n.md-hero-title span {\n  display: block;\n\n  margin-top: .18rem;\n  padding-bottom: .08em;\n\n  background:\n    linear-gradient(\n      135deg,\n      #8e80ff 0%,\n      #a095ff 30%,\n      #87b7ff 65%,\n      #95e2ff 100%\n    );\n\n  -webkit-background-clip: text;\n  background-clip: text;\n\n  -webkit-text-fill-color: transparent;\n  color: transparent;\n\n  filter:\n    drop-shadow(\n      0 0 28px rgba(120,140,255,.22)\n    );\n}\n\n\/* =========================\n   TEXT\n========================= *\/\n\n.md-hero-text {\n  max-width: 850px;\n\n  margin: 0;\n\n  color: rgba(255,255,255,.92);\n\n  font-size: clamp(1rem, 1.3vw, 1.28rem);\n  line-height: 1.85;\n\n  text-shadow:\n    0 2px 18px rgba(0,0,0,.45);\n}\n\n\/* =========================\n   BUTTONS\n========================= *\/\n\n.md-hero-actions {\n  display: flex;\n  flex-wrap: wrap;\n  gap: 1rem;\n\n  margin-top: 2.5rem;\n}\n\n.md-hero-btn {\n  min-height: 62px;\n\n  padding: 0 1.9rem;\n\n  border-radius: 999px;\n\n  display: inline-flex;\n  align-items: center;\n  justify-content: center;\n  gap: .8rem;\n\n  text-decoration: none;\n\n  font-size: 1.05rem;\n  font-weight: 500;\n\n  transition: .25s ease;\n}\n\n.md-hero-btn.primary {\n  background:\n    linear-gradient(\n      135deg,\n      #b8b5ff,\n      #8c84ff 45%,\n      #8dd8ff\n    );\n\n  color: #0c1020;\n\n  box-shadow:\n    0 16px 45px rgba(120,140,255,.3),\n    inset 0 1px 0 rgba(255,255,255,.72);\n}\n\n.md-hero-btn.secondary {\n  color: #ffffff;\n\n  border: 1px solid rgba(255,255,255,.16);\n\n  background:\n    linear-gradient(\n      135deg,\n      rgba(8,10,16,.72),\n      rgba(18,22,30,.48)\n    );\n\n  backdrop-filter: blur(16px);\n\n  box-shadow:\n    inset 0 1px 0 rgba(255,255,255,.06);\n}\n\n.md-hero-btn:hover {\n  transform: translateY(-3px);\n}\n\n.md-hero-btn span {\n  font-size: 1.2rem;\n}\n\n\/* =========================\n   FEATURE GRID\n========================= *\/\n\n.md-hero-features {\n  display: grid;\n  grid-template-columns: repeat(4, minmax(0,1fr));\n  gap: 1.3rem;\n\n  margin-top: 4rem;\n}\n\n.md-feature-card {\n  position: relative;\n\n  min-height: 145px;\n\n  padding: 1.35rem;\n\n  border-radius: 24px;\n\n  overflow: hidden;\n\n  background:\n    linear-gradient(\n      135deg,\n      rgba(8,10,16,.74),\n      rgba(18,22,30,.48)\n    );\n\n  border: 1px solid rgba(255,255,255,.08);\n\n  backdrop-filter: blur(16px);\n\n  box-shadow:\n    0 12px 36px rgba(0,0,0,.24),\n    inset 0 1px 0 rgba(255,255,255,.06);\n\n  transition: .25s ease;\n}\n\n.md-feature-card:hover {\n  transform: translateY(-4px);\n\n  border-color: rgba(145,165,255,.22);\n\n  box-shadow:\n    0 18px 44px rgba(0,0,0,.34),\n    0 0 30px rgba(120,140,255,.08);\n}\n\n.md-feature-icon {\n  width: 54px;\n  height: 54px;\n\n  margin-bottom: 1rem;\n\n  display: flex;\n  align-items: center;\n  justify-content: center;\n\n  border-radius: 50%;\n\n  color: #9eb4ff;\n\n  font-size: 1.3rem;\n\n  border: 1px solid rgba(145,165,255,.28);\n\n  background:\n    radial-gradient(\n      circle at top,\n      rgba(130,145,255,.18),\n      rgba(255,255,255,.02)\n    );\n\n  box-shadow:\n    0 0 24px rgba(120,140,255,.12);\n}\n\n.md-feature-card h3 {\n  margin: 0 0 .5rem;\n\n  color: #ffffff;\n\n  font-size: 1.1rem;\n  letter-spacing: 1.2px;\n  font-weight: 700;\n}\n\n.md-feature-card p {\n  margin: 0;\n\n  color: rgba(255,255,255,.72);\n\n  line-height: 1.6;\n  font-size: .95rem;\n}\n\n\/* =========================\n   RESPONSIVE\n========================= *\/\n\n@media (max-width: 1200px) {\n  .md-hero-features {\n    grid-template-columns: repeat(2, minmax(0,1fr));\n  }\n}\n\n@media (max-width: 760px) {\n  .md-hero-content {\n    padding-top: 7.5rem;\n  }\n\n  .md-hero-actions {\n    flex-direction: column;\n  }\n\n  .md-hero-btn {\n    width: 100%;\n  }\n\n  .md-hero-features {\n    grid-template-columns: 1fr;\n  }\n\n  .md-hero-title {\n    font-size: clamp(2.6rem, 12vw, 4.2rem);\n  }\n\n  .md-hero-text {\n    font-size: 1rem;\n    line-height: 1.7;\n  }\n}\n\/* =========================\n   HERO MOBILE OPTIMIERUNG\n========================= *\/\n\n@media (max-width: 760px) {\n\n  .md-hero-section {\n    min-height: auto;\n    overflow: hidden;\n    align-items: flex-start;\n  }\n\n  .md-hero-bg {\n    inset: 0;\n    background-position: center top;\n    background-size: cover;\n\n    filter: brightness(.48) contrast(1.04);\n    transform: none !important;\n    will-change: auto;\n  }\n\n  .md-hero-overlay {\n    background:\n      linear-gradient(\n        180deg,\n        rgba(0,0,0,.78) 0%,\n        rgba(0,0,0,.58) 42%,\n        rgba(0,0,0,.82) 100%\n      );\n  }\n\n  .md-hero-content {\n    padding: 9.5rem 1rem 3.5rem;\n    max-width: 100%;\n  }\n\n  .md-hero-content::before {\n    display: none;\n  }\n\n  .md-hero-badge {\n    min-height: auto;\n    padding: .65rem .9rem;\n    font-size: .68rem;\n    line-height: 1.4;\n    letter-spacing: .08em;\n    white-space: normal;\n  }\n\n  .md-hero-title {\n    margin: 1.4rem 0 1rem;\n    max-width: 100%;\n\n    font-size: clamp(2.1rem, 10vw, 3.2rem) !important;\n    line-height: 1.12;\n    letter-spacing: -.04em;\n\n    overflow-wrap: break-word;\n  }\n\n  .md-hero-title span {\n    margin-top: .35rem;\n    font-size: clamp(1.55rem, 7.5vw, 2.25rem);\n    line-height: 1.18;\n  }\n\n  .md-hero-text {\n    max-width: 100%;\n    font-size: .98rem;\n    line-height: 1.65;\n  }\n\n  .md-hero-actions {\n    margin-top: 2rem;\n    gap: .8rem;\n  }\n\n  .md-hero-btn {\n    width: 100%;\n    min-height: 54px;\n    padding: 0 1.2rem;\n\n    font-size: .95rem;\n    text-align: center;\n  }\n\n  .md-hero-features {\n    grid-template-columns: 1fr;\n    gap: .9rem;\n    margin-top: 2.5rem;\n  }\n\n  .md-feature-card {\n    min-height: auto;\n    padding: 1.1rem;\n    border-radius: 20px;\n  }\n\n  .md-feature-icon {\n    width: 44px;\n    height: 44px;\n    margin-bottom: .8rem;\n    font-size: 1.1rem;\n  }\n\n  .md-feature-card h3 {\n    font-size: 1rem;\n    letter-spacing: .6px;\n  }\n\n  .md-feature-card p {\n    font-size: .88rem;\n    line-height: 1.5;\n  }\n}\n\n\n<\/style>\n\n<script>\n(function () {\n  const hero = document.querySelector(\".md-hero-section\");\n  const bg = document.querySelector(\".md-hero-bg\");\n\n  if (!hero || !bg) return;\n\n  function updateParallax() {\n    const rect = hero.getBoundingClientRect();\n    const offset = rect.top * -0.28;\n\n    bg.style.setProperty(\"--md-parallax-y\", offset + \"px\");\n  }\n\n  window.addEventListener(\"scroll\", updateParallax, { passive: true });\n  window.addEventListener(\"resize\", updateParallax);\n\n  updateParallax();\n})();\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-feb2462 elementor-hidden-desktop elementor-widget elementor-widget-html\" data-id=\"feb2462\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<section class=\"md-mobile-hero\">\n\n  <div class=\"md-mobile-hero-bg\" aria-hidden=\"true\"><\/div>\n  <div class=\"md-mobile-hero-overlay\" aria-hidden=\"true\"><\/div>\n\n  <div class=\"md-mobile-hero-content\">\n\n<div class=\"md-mobile-hero-badge\">\n  MEDAILLEN MIT LOGO. UV-DRUCK. INDIVIDUELL.\n<\/div>\n\n<h1>\n  Medaillen bedrucken lassen\n  <span>f\u00fcr Sportevents, Vereine und besondere Momente<\/span>\n<\/h1>\n\n<p>\n  Gestalte hochwertige Medaillen mit Logo, Motiv oder eigenem Design \u2013\n  ideal f\u00fcr Turniere, Laufveranstaltungen, Vereinsfeste und besondere Auszeichnungen.\n<\/p>\n\n<div class=\"md-mobile-hero-actions\">\n<a href=\"#md-mobile-configurator\" class=\"md-mobile-hero-btn primary\">\n  Jetzt konfigurieren\n<\/a>\n\n  <a href=\"\/portfolio\/\" class=\"md-mobile-hero-btn secondary\">\n    Beispiele ansehen\n  <\/a>\n<\/div>\n\n<div class=\"md-mobile-hero-features\">\n  <div>\u25c8 Premium Qualit\u00e4t<\/div>\n  <div>\u2726 Medaillen mit Logo<\/div>\n  <div>\u26a1 Schnelle Umsetzung<\/div>\n  <div>\u25c9 Sicherer Versand<\/div>\n<\/div>\n\n  <\/div>\n\n<\/section>\n\n<style>\n@import url(\"https:\/\/fonts.googleapis.com\/css2?family=Montserrat:wght@400;500;600;700;800;900&display=swap\");\n\n.md-mobile-hero,\n.md-mobile-hero * {\n  box-sizing: border-box;\n  font-family: \"Montserrat\", sans-serif !important;\n}\n\n.md-mobile-hero {\n  position: relative;\n  width: 100%;\n  min-height: 100svh;\n  overflow: hidden;\n  color: #fff;\n  background: #070914;\n\n  \/* Wird durch JavaScript aktualisiert *\/\n  --md-parallax-y: 0px;\n}\n\n.md-mobile-hero-bg {\n  position: absolute;\n\n  \/*\n   * Das Hintergrundbild ist oben und unten gr\u00f6\u00dfer als der Hero.\n   * Dadurch entstehen beim Verschieben keine leeren R\u00e4nder.\n   *\/\n  top: -12%;\n  right: 0;\n  bottom: -12%;\n  left: 0;\n\n  background-image: url(\"https:\/\/medaillendruck.de\/wp-content\/uploads\/2026\/05\/IMG_6523.jpeg\");\n  background-size: cover;\n  background-position: center top;\n  background-repeat: no-repeat;\n\n  filter: brightness(.42) contrast(1.05);\n\n  transform:\n    translate3d(\n      0,\n      var(--md-parallax-y),\n      0\n    )\n    scale(1.06);\n\n  transform-origin: center center;\n  will-change: transform;\n  backface-visibility: hidden;\n  pointer-events: none;\n}\n\n.md-mobile-hero-overlay {\n  position: absolute;\n  inset: 0;\n  z-index: 1;\n  background:\n    linear-gradient(\n      180deg,\n      rgba(0, 0, 0, .52) 0%,\n      rgba(0, 0, 0, .32) 42%,\n      rgba(0, 0, 0, .62) 100%\n    );\n  pointer-events: none;\n}\n\n.md-mobile-hero-content {\n  position: relative;\n  z-index: 2;\n  width: 100%;\n  padding:\n    calc(8.8rem + env(safe-area-inset-top))\n    1rem\n    calc(3rem + env(safe-area-inset-bottom));\n}\n\n.md-mobile-hero-badge {\n  display: inline-flex;\n  max-width: 100%;\n  padding: .75rem 1rem;\n  border-radius: 999px;\n  border: 1px solid rgba(140, 155, 255, .42);\n  background: rgba(8, 10, 16, .68);\n  color: #fff;\n  font-size: .68rem;\n  font-weight: 600;\n  letter-spacing: .08em;\n  line-height: 1.35;\n  backdrop-filter: blur(8px);\n  -webkit-backdrop-filter: blur(8px);\n}\n\n.md-mobile-hero h1 {\n  margin: 1.5rem 0 1rem;\n  font-size: clamp(2.35rem, 11vw, 3.35rem);\n  line-height: 1.08;\n  letter-spacing: -.05em;\n  font-weight: 500;\n  color: #fff;\n}\n\n.md-mobile-hero h1 span {\n  display: block;\n  margin-top: .45rem;\n  font-size: clamp(1.55rem, 7.5vw, 2.25rem);\n  line-height: 1.16;\n  background:\n    linear-gradient(\n      135deg,\n      #8e80ff 0%,\n      #a095ff 35%,\n      #87b7ff 70%,\n      #95e2ff 100%\n    );\n  -webkit-background-clip: text;\n  background-clip: text;\n  -webkit-text-fill-color: transparent;\n  color: transparent;\n}\n\n.md-mobile-hero p {\n  margin: 0;\n  color: rgba(255, 255, 255, .88);\n  font-size: 1rem;\n  line-height: 1.7;\n}\n\n.md-mobile-hero-actions {\n  display: grid;\n  gap: .8rem;\n  margin-top: 2rem;\n}\n\n.md-mobile-hero-btn {\n  min-height: 54px;\n  border-radius: 999px;\n  display: flex;\n  align-items: center;\n  justify-content: center;\n  text-decoration: none !important;\n  font-size: .95rem;\n  font-weight: 600;\n  transition:\n    transform .2s ease,\n    box-shadow .2s ease,\n    border-color .2s ease;\n  touch-action: manipulation;\n  -webkit-tap-highlight-color: transparent;\n}\n\n.md-mobile-hero-btn:active {\n  transform: scale(.98);\n}\n\n.md-mobile-hero-btn.primary {\n  background:\n    linear-gradient(\n      135deg,\n      #8e80ff,\n      #95e2ff\n    );\n  color: #08101f;\n  box-shadow: 0 12px 30px rgba(126, 148, 255, .22);\n}\n\n.md-mobile-hero-btn.secondary {\n  color: #fff;\n  border: 1px solid rgba(255, 255, 255, .16);\n  background: rgba(8, 10, 16, .62);\n  backdrop-filter: blur(8px);\n  -webkit-backdrop-filter: blur(8px);\n}\n\n.md-mobile-hero-features {\n  display: grid;\n  grid-template-columns: 1fr 1fr;\n  gap: .7rem;\n  margin-top: 2rem;\n}\n\n.md-mobile-hero-features div {\n  min-width: 0;\n  padding: 1rem;\n  border-radius: 18px;\n  background: rgba(8, 10, 16, .58);\n  border: 1px solid rgba(255, 255, 255, .09);\n  color: rgba(255, 255, 255, .88);\n  font-size: .82rem;\n  line-height: 1.35;\n  font-weight: 700;\n  backdrop-filter: blur(7px);\n  -webkit-backdrop-filter: blur(7px);\n}\n\n\/* Sehr schmale Smartphones *\/\n@media (max-width: 380px) {\n  .md-mobile-hero-content {\n    padding-left: .8rem;\n    padding-right: .8rem;\n  }\n\n  .md-mobile-hero-features {\n    grid-template-columns: 1fr;\n  }\n}\n\n\/* Nur auf Mobilger\u00e4ten anzeigen *\/\n@media (min-width: 761px) {\n  .md-mobile-hero {\n    display: none !important;\n  }\n}\n\n\/*\n * Bei reduzierten Bewegungseinstellungen wird der Parallax-Effekt\n * automatisch deaktiviert.\n *\/\n@media (prefers-reduced-motion: reduce) {\n  .md-mobile-hero-bg {\n    transform: scale(1.06);\n    will-change: auto;\n  }\n}\n#md-mobile-configurator {\n  scroll-margin-top: 80px;\n}\n<\/style>\n\n<script>\n(function () {\n  \"use strict\";\n\n  const heroes = document.querySelectorAll(\".md-mobile-hero\");\n\n  if (!heroes.length) return;\n\n  const reduceMotion = window.matchMedia(\n    \"(prefers-reduced-motion: reduce)\"\n  );\n\n  let ticking = false;\n\n  function updateParallax() {\n    ticking = false;\n\n    if (reduceMotion.matches || window.innerWidth > 760) {\n      heroes.forEach(function (hero) {\n        hero.style.setProperty(\"--md-parallax-y\", \"0px\");\n      });\n\n      return;\n    }\n\n    const viewportHeight =\n      window.innerHeight ||\n      document.documentElement.clientHeight;\n\n    heroes.forEach(function (hero) {\n      const rect = hero.getBoundingClientRect();\n\n      if (\n        rect.bottom < -150 ||\n        rect.top > viewportHeight + 150\n      ) {\n        return;\n      }\n\n      const progress = -rect.top;\n\n      const movement = Math.max(\n        -45,\n        Math.min(85, progress * 0.28)\n      );\n\n      hero.style.setProperty(\n        \"--md-parallax-y\",\n        movement.toFixed(2) + \"px\"\n      );\n    });\n  }\n\n  function requestParallaxUpdate() {\n    if (ticking) return;\n\n    ticking = true;\n    window.requestAnimationFrame(updateParallax);\n  }\n\n  window.addEventListener(\n    \"scroll\",\n    requestParallaxUpdate,\n    { passive: true }\n  );\n\n  window.addEventListener(\n    \"resize\",\n    requestParallaxUpdate,\n    { passive: true }\n  );\n\n  window.addEventListener(\n    \"orientationchange\",\n    requestParallaxUpdate,\n    { passive: true }\n  );\n\n  if (typeof reduceMotion.addEventListener === \"function\") {\n    reduceMotion.addEventListener(\n      \"change\",\n      requestParallaxUpdate\n    );\n  }\n\n  document.addEventListener(\"click\", function (event) {\n    const button = event.target.closest(\n      'a[href=\"#md-mobile-configurator\"]'\n    );\n\n    if (!button) return;\n\n    const target = document.getElementById(\n      \"md-mobile-configurator\"\n    );\n\n    if (!target) {\n      console.warn(\n        'Element mit ID \"md-mobile-configurator\" wurde nicht gefunden.'\n      );\n      return;\n    }\n\n    event.preventDefault();\n\n    const headerOffset = 80;\n\n    const targetPosition =\n      target.getBoundingClientRect().top +\n      window.scrollY -\n      headerOffset;\n\n    window.scrollTo({\n      top: targetPosition,\n      behavior: reduceMotion.matches\n        ? \"auto\"\n        : \"smooth\"\n    });\n  });\n\n  requestParallaxUpdate();\n})();\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-10786fd e-flex e-con-boxed e-con e-parent\" data-id=\"10786fd\" data-element_type=\"container\" data-e-type=\"container\" id=\"konfigurator\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-65ca9bb e-con-full e-flex e-con e-child\" data-id=\"65ca9bb\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-f2b6a73 elementor-hidden-tablet elementor-hidden-mobile elementor-widget elementor-widget-html\" data-id=\"f2b6a73\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<div class=\"md-config-title\">\n  <h2>Medaillen-<span>Konfigurator<\/span><\/h2>\n<\/div>\n\n<div class=\"md-config-info\">\n  <h3>In wenigen Schritten zur individuellen Medaille<\/h3>\n\n  <p class=\"md-config-intro\">\n    Nutze unseren einfachen Medaillen-Konfigurator, um einen ersten Preis\u00fcberblick zu erhalten und deine Anfrage gezielt vorzubereiten.\n  <\/p>\n\n  <div class=\"md-config-steps\">\n    <div><strong>1.<\/strong> W\u00e4hle eine bestehende Medaillenform oder frage eine individuelle Form an.<\/div>\n    <div><strong>2.<\/strong> Gib St\u00fcckzahl, Band und gew\u00fcnschte Designoption an.<\/div>\n    <div><strong>3.<\/strong> Pr\u00fcfe die Zusammenfassung und sende deine Anfrage f\u00fcr bedruckte Medaillen ab.<\/div>\n  <\/div>\n\n  <p class=\"md-config-outro\">\n    Die angezeigten Preise dienen als unverbindliche Richtwerte. Nach deiner Anfrage pr\u00fcfen wir alle Angaben und erstellen ein passendes Angebot f\u00fcr dein Medaillenprojekt.\n  <\/p>\n<\/div>\n\n<style>\n.md-config-title h2 {\n  text-align: center;\n  font-family: \"Montserrat\", Arial, sans-serif;\n  font-weight: 700;\n  font-size: clamp(2rem, 4vw, 3.1rem);\n  line-height: 1.1;\n  color: #ffffff;\n  margin: 0 0 1.25rem;\n}\n\n.md-config-title span {\n  background:\n    linear-gradient(\n      135deg,\n      #8e80ff 0%,\n      #a095ff 30%,\n      #87b7ff 65%,\n      #95e2ff 100%\n    );\n\n  -webkit-background-clip: text;\n  background-clip: text;\n\n  -webkit-text-fill-color: transparent;\n  color: transparent;\n\n  filter:\n    drop-shadow(\n      0 0 28px rgba(120,140,255,.22)\n    );\n}\n\n.md-config-info {\n  max-width: 980px;\n  margin: 0 auto;\n\n  padding: clamp(1.25rem, 3vw, 1.75rem);\n  border-radius: 22px;\n\n  background:\n    linear-gradient(\n      145deg,\n      rgba(22, 20, 34, .92) 0%,\n      rgba(18, 20, 32, .96) 52%,\n      rgba(13, 15, 25, .96) 100%\n    );\n\n  border: 1px solid rgba(150, 160, 255, .22);\n\n  backdrop-filter: blur(16px);\n  -webkit-backdrop-filter: blur(16px);\n\n  box-shadow:\n    0 18px 45px rgba(0,0,0,.3),\n    inset 0 1px 0 rgba(255,255,255,.05);\n}\n\n.md-config-info h3 {\n  margin: 0 0 .85rem;\n\n  font-family: \"Montserrat\", Arial, sans-serif;\n  font-size: clamp(1.25rem, 2vw, 1.75rem);\n  font-weight: 700;\n  line-height: 1.25;\n\n  color: #f3f6fb;\n}\n\n.md-config-intro,\n.md-config-outro {\n  margin: 0;\n\n  font-family: \"Montserrat\", Arial, sans-serif;\n  font-size: 1rem;\n  line-height: 1.75;\n\n  color: rgba(255,255,255,.82);\n}\n\n.md-config-intro {\n  margin-bottom: 1.15rem;\n}\n\n.md-config-outro {\n  margin-top: 1.15rem;\n  color: rgba(255,255,255,.68);\n  font-size: .92rem;\n}\n\n.md-config-steps {\n  display: grid;\n  grid-template-columns: repeat(3, minmax(0, 1fr));\n  gap: .85rem;\n}\n\n.md-config-steps div {\n  padding: 1rem;\n\n  border-radius: 16px;\n\n  background:\n    linear-gradient(\n      145deg,\n      rgba(255,255,255,.055),\n      rgba(255,255,255,.025)\n    );\n\n  border: 1px solid rgba(150, 160, 255, .16);\n\n  font-family: \"Montserrat\", Arial, sans-serif;\n  font-size: .95rem;\n  line-height: 1.6;\n\n  color: rgba(255,255,255,.88);\n}\n\n.md-config-steps strong {\n  display: inline-flex;\n  align-items: center;\n  justify-content: center;\n\n  width: 26px;\n  height: 26px;\n\n  margin-right: .45rem;\n\n  border-radius: 50%;\n\n  background:\n    linear-gradient(\n      135deg,\n      #8e80ff,\n      #87b7ff\n    );\n\n  color: #080b16;\n\n  font-weight: 900;\n  font-size: .82rem;\n}\n\n@media (max-width: 860px) {\n  .md-config-steps {\n    grid-template-columns: 1fr;\n  }\n\n  .md-config-info {\n    padding: 1.2rem;\n  }\n}\n<\/style>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-f83626c elementor-hidden-desktop elementor-widget elementor-widget-html\" data-id=\"f83626c\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t\n<section class=\"md-config-intro-section\">\n\n  <div class=\"md-config-title\">\n    <h2>Medaillen-<span>Konfigurator<\/span><\/h2>\n  <\/div>\n\n  <div class=\"md-config-info\">\n    <h3>In wenigen Schritten zur individuellen Medaille<\/h3>\n\n    <p class=\"md-config-intro\">\n      Nutze unseren einfachen Medaillen-Konfigurator, um einen ersten Preis\u00fcberblick zu erhalten und deine Anfrage gezielt vorzubereiten.\n    <\/p>\n\n    <div class=\"md-config-steps\">\n      <div><strong>1.<\/strong> W\u00e4hle eine bestehende Medaillenform oder frage eine individuelle Form an.<\/div>\n      <div><strong>2.<\/strong> Gib St\u00fcckzahl, Band und gew\u00fcnschte Designoption an.<\/div>\n      <div><strong>3.<\/strong> Pr\u00fcfe die Zusammenfassung und sende deine Anfrage f\u00fcr bedruckte Medaillen ab.<\/div>\n    <\/div>\n\n    <p class=\"md-config-outro\">\n      Die angezeigten Preise dienen als unverbindliche Richtwerte. Nach deiner Anfrage pr\u00fcfen wir alle Angaben und erstellen ein passendes Angebot f\u00fcr dein Medaillenprojekt.\n    <\/p>\n  <\/div>\n\n<\/section>\n\n<style>\n.md-config-intro-section,\n.md-config-intro-section * {\n  box-sizing: border-box;\n}\n\n.md-config-intro-section {\n  width: 100%;\n  padding: clamp(3rem, 6vw, 5rem) 1rem 2rem;\n  overflow: hidden;\n}\n\n.md-config-title h2 {\n  text-align: center;\n  font-family: \"Montserrat\", Arial, sans-serif;\n  font-weight: 500;\n  font-size: clamp(2rem, 4vw, 3.1rem);\n  line-height: 1.1;\n  color: #ffffff;\n  margin: 0 0 1.25rem;\n}\n\n.md-config-title span {\n  background: linear-gradient(135deg, #8e80ff 0%, #a095ff 30%, #87b7ff 65%, #95e2ff 100%);\n  -webkit-background-clip: text;\n  background-clip: text;\n  -webkit-text-fill-color: transparent;\n  color: transparent;\n  filter: drop-shadow(0 0 28px rgba(120,140,255,.22));\n}\n\n.md-config-info {\n  width: min(980px, 100%);\n  margin: 0 auto;\n  padding: clamp(1.25rem, 3vw, 1.75rem);\n  border-radius: 22px;\n  background:\n    linear-gradient(145deg, rgba(22, 20, 34, .92) 0%, rgba(18, 20, 32, .96) 52%, rgba(13, 15, 25, .96) 100%);\n  border: 1px solid rgba(150, 160, 255, .22);\n  backdrop-filter: blur(16px);\n  -webkit-backdrop-filter: blur(16px);\n  box-shadow:\n    0 18px 45px rgba(0,0,0,.3),\n    inset 0 1px 0 rgba(255,255,255,.05);\n}\n\n.md-config-info h3 {\n  margin: 0 0 .85rem;\n  font-family: \"Montserrat\", Arial, sans-serif;\n  font-size: clamp(1.25rem, 2vw, 1.75rem);\n  font-weight: 500;\n  line-height: 1.25;\n  color: #f3f6fb;\n}\n\n.md-config-intro,\n.md-config-outro {\n  margin: 0;\n  font-family: \"Montserrat\", Arial, sans-serif;\n  font-size: 1rem;\n  line-height: 1.75;\n  color: rgba(255,255,255,.82);\n}\n\n.md-config-intro {\n  margin-bottom: 1.15rem;\n}\n\n.md-config-outro {\n  margin-top: 1.15rem;\n  color: rgba(255,255,255,.68);\n  font-size: .92rem;\n}\n\n.md-config-steps {\n  display: grid;\n  grid-template-columns: repeat(3, minmax(0, 1fr));\n  gap: .85rem;\n}\n\n.md-config-steps div {\n  padding: 1rem;\n  border-radius: 16px;\n  background: linear-gradient(145deg, rgba(255,255,255,.055), rgba(255,255,255,.025));\n  border: 1px solid rgba(150, 160, 255, .16);\n  font-family: \"Montserrat\", Arial, sans-serif;\n  font-size: .95rem;\n  line-height: 1.6;\n  color: rgba(255,255,255,.88);\n}\n\n.md-config-steps strong {\n  display: inline-flex;\n  align-items: center;\n  justify-content: center;\n  width: 26px;\n  height: 26px;\n  margin-right: .45rem;\n  border-radius: 50%;\n  background: linear-gradient(135deg, #8e80ff, #87b7ff);\n  color: #080b16;\n  font-weight: 900;\n  font-size: .82rem;\n}\n\n@media (max-width: 860px) {\n  .md-config-intro-section {\n    padding: 3rem 1rem 1.5rem;\n  }\n\n  .md-config-steps {\n    grid-template-columns: 1fr;\n  }\n\n  .md-config-info {\n    padding: 1.15rem;\n    border-radius: 20px;\n  }\n\n  .md-config-title h2 {\n    font-size: clamp(2rem, 9vw, 2.65rem);\n  }\n\n  .md-config-info h3 {\n    font-size: 1.25rem;\n  }\n\n  .md-config-intro,\n  .md-config-outro,\n  .md-config-steps div {\n    font-size: .92rem;\n    line-height: 1.6;\n  }\n}\n<\/style>\n```\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-ee5198a elementor-widget elementor-widget-menu-anchor\" data-id=\"ee5198a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"menu-anchor.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-menu-anchor\" id=\"medaillen-konfig\"><\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-2263bad e-flex e-con-boxed e-con e-parent\" data-id=\"2263bad\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-ecd34c3 elementor-hidden-tablet elementor-hidden-mobile elementor-widget elementor-widget-html\" data-id=\"ecd34c3\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\n<link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\n\n<div id=\"md-configurator\">\n\n  <div class=\"md-progress\">\n    <button class=\"md-progress-step active\" data-step=\"1\" type=\"button\">\n      <span>1<\/span>\n      Medaille\n    <\/button>\n\n    <button class=\"md-progress-step\" data-step=\"2\" type=\"button\">\n      <span>2<\/span>\n      Menge\n    <\/button>\n\n    <button class=\"md-progress-step\" data-step=\"3\" type=\"button\">\n      <span>3<\/span>\n      Band\n    <\/button>\n\n    <button class=\"md-progress-step\" data-step=\"4\" type=\"button\">\n      <span>4<\/span>\n      Design\n    <\/button>\n\n    <button class=\"md-progress-step\" data-step=\"5\" type=\"button\">\n      <span>5<\/span>\n      Anfrage\n    <\/button>\n  <\/div>\n\n  <div class=\"md-mini-summary\" id=\"md-mini-summary\">\n    <span id=\"md-mini-medal\">Noch keine Medaille gew\u00e4hlt<\/span>\n    <span id=\"md-mini-qty\">Menge offen<\/span>\n    <span id=\"md-mini-price\">Preis offen<\/span>\n  <\/div>\n\n  <!-- STEP 1 -->\n  <section class=\"md-panel active\" data-step=\"1\">\n    <div class=\"md-panel-head\">\n      <span class=\"md-kicker\">Schritt 1<\/span>\n      <h2>Individuelle Medaille ausw\u00e4hlen<\/h2>\n      <p>\n        W\u00e4hle eine bestehende Medaillenform oder frage eine individuelle Medaille mit eigenem Logo, Motiv oder Design an.\n      <\/p>\n    <\/div>\n\n    <div class=\"md-card-grid\">\n      <div class=\"md-card\" data-plan=\"form_fertig\">\n        <div class=\"md-card-top\">\n          <div>\n            <h3>Bestehende Medaillenform<\/h3>\n            <p>\n              Ideal f\u00fcr kurzfristige Auftr\u00e4ge \u2013 bestehende Medaillenform mit individuellem Druck.\n            <\/p>\n          <\/div>\n          <strong class=\"md-price-pill\">ab 4 \u20ac<\/strong>\n        <\/div>\n\n        <div class=\"md-variant-box\">\n          <span>Medaillenart w\u00e4hlen<\/span>\n\n          <div class=\"md-medal-select\">\n            <button type=\"button\" class=\"md-medal-select-toggle\">\n              <span class=\"md-medal-selected-img\"><\/span>\n              <span class=\"md-medal-selected-text\">Bitte Medaille ausw\u00e4hlen<\/span>\n              <span class=\"md-medal-arrow\">\u25be<\/span>\n            <\/button>\n\n            <div class=\"md-medal-dropdown\">\n              <button type=\"button\" class=\"md-medal-option\" data-variant=\"Standard-Medaille\">\n                <span class=\"md-medal-img\">\n                  <img decoding=\"async\" src=\"https:\/\/medaillendruck.de\/wp-content\/uploads\/2026\/05\/Standardmedaille-scaled.png\" alt=\"Standard-Medaille mit individuellem Druck\">\n                <\/span>\n\n                <span class=\"md-medal-info\">\n                  <strong>Standard-Medaille<\/strong>\n                  <small>Klassische Edelstahlmedaille<\/small>\n                <\/span>\n\n                <span class=\"md-medal-price\">ab 4 \u20ac<\/span>\n              <\/button>\n\n              <button type=\"button\" class=\"md-medal-option\" data-variant=\"Fu\u00dfball-Medaille\">\n                <span class=\"md-medal-img\">\n                  <img decoding=\"async\" src=\"https:\/\/medaillendruck.de\/wp-content\/uploads\/2026\/05\/Fussballmedaille-2.png\" alt=\"Fu\u00dfball-Medaille f\u00fcr Turniere und Vereine\">\n                <\/span>\n\n                <span class=\"md-medal-info\">\n                  <strong>Fu\u00dfball-Medaille<\/strong>\n                  <small>Edelstahlmedaille in Fussballform<\/small>\n                <\/span>\n\n                <span class=\"md-medal-price\">ab 4 \u20ac<\/span>\n              <\/button>\n            <\/div>\n          <\/div>\n        <\/div>\n      <\/div>\n\n      <div class=\"md-card\" data-plan=\"form_wunsch\">\n        <div class=\"md-card-top\">\n          <div>\n            <h3>Eigene Medaillenform<\/h3>\n            <p>\n              Individuelle Medaillenform mit eigenem Design f\u00fcr besondere Events, Vereine oder Turniere.\n            <\/p>\n          <\/div>\n          <strong class=\"md-price-pill\">ab 7 \u20ac<\/strong>\n        <\/div>\n      <\/div>\n    <\/div>\n\n    <p class=\"md-error\" id=\"md-error-step1\">\n      Bitte w\u00e4hle eine Medaille oder eine eigene Medaillenform aus.\n    <\/p>\n\n    <div class=\"md-nav-buttons\">\n      <button class=\"md-btn-next\" data-next=\"2\" type=\"button\">Weiter zur St\u00fcckzahl<\/button>\n    <\/div>\n  <\/section>\n\n  <!-- STEP 2 -->\n  <section class=\"md-panel\" data-step=\"2\">\n    <div class=\"md-panel-head\">\n      <span class=\"md-kicker\">Schritt 2<\/span>\n      <h2>St\u00fcckzahl f\u00fcr deine Medaillen eingeben<\/h2>\n      <p>\n        Gib einfach die gew\u00fcnschte Menge ein. Die passende Preisstaffel f\u00fcr deine bedruckten Medaillen wird automatisch erkannt.\n      <\/p>\n    <\/div>\n\n    <div class=\"md-selected-box\">\n      <span>Gew\u00e4hlte Auswahl<\/span>\n      <strong id=\"md-selected-medal-name\">\u2013<\/strong>\n      <button type=\"button\" class=\"md-change-btn\" data-go=\"1\">Auswahl \u00e4ndern<\/button>\n    <\/div>\n\n    <div class=\"md-qty-main\">\n      <label for=\"md-qty-input\">St\u00fcckzahl eingeben<\/label>\n      <input type=\"number\" id=\"md-qty-input\" min=\"1\" max=\"2000\" placeholder=\"z. B. 125\">\n      <small id=\"md-qty-hint\">Bis 2000 St\u00fcck kannst du hier direkt einen Richtpreis berechnen.<\/small>\n    <\/div>\n\n    <div class=\"md-tier-row\">\n      <button type=\"button\" class=\"md-tier-chip\" data-example=\"150\" data-max=\"150\">bis 150<\/button>\n      <button type=\"button\" class=\"md-tier-chip\" data-example=\"300\" data-max=\"300\">bis 300<\/button>\n      <button type=\"button\" class=\"md-tier-chip\" data-example=\"500\" data-max=\"500\">bis 500<\/button>\n      <button type=\"button\" class=\"md-tier-chip\" data-example=\"1000\" data-max=\"1000\">bis 1000<\/button>\n      <button type=\"button\" class=\"md-tier-chip\" data-example=\"2000\" data-max=\"2000\">bis 2000<\/button>\n    <\/div>\n\n    <p class=\"md-over-limit-note\">\n      Bei St\u00fcckzahlen \u00fcber 2000 erstellen wir gerne ein individuelles Angebot.\n    <\/p>\n\n    <div class=\"md-live-price\">\n      <p>Aktueller Richtpreis<\/p>\n      <strong id=\"md-live-total\">\u2013<\/strong>\n      <span id=\"md-live-unit\">Bitte St\u00fcckzahl eingeben<\/span>\n    <\/div>\n\n    <div class=\"md-saving-box\" id=\"md-saving-box\">\n      <span class=\"md-saving-label\">Mengenersparnis<\/span>\n      <strong id=\"md-saving-amount\">\u2013<\/strong>\n      <small>Gr\u00f6\u00dfere St\u00fcckzahlen reduzieren den Preis pro Medaille.<\/small>\n    <\/div>\n\n    <p class=\"md-error\" id=\"md-error-step2\">\n      Bitte gib eine g\u00fcltige St\u00fcckzahl zwischen 1 und 2000 ein.\n    <\/p>\n\n    <div class=\"md-nav-buttons\">\n      <button class=\"md-btn-prev\" data-prev=\"1\" type=\"button\">Zur\u00fcck<\/button>\n      <button class=\"md-btn-next\" data-next=\"3\" type=\"button\">Weiter zum Band<\/button>\n    <\/div>\n  <\/section>\n\n  <!-- STEP 3 -->\n  <section class=\"md-panel\" data-step=\"3\">\n    <div class=\"md-panel-head\">\n      <span class=\"md-kicker\">Schritt 3<\/span>\n      <h2>Band f\u00fcr deine Medaille ausw\u00e4hlen<\/h2>\n      <p>\n        W\u00e4hle ein klassisches Standardband oder ein individuell bedrucktes Band passend zu deinem Event.\n      <\/p>\n    <\/div>\n\n    <div class=\"md-card-grid\">\n      <div class=\"md-card\" data-band=\"Standardband\" data-band-price=\"0\">\n        <div class=\"md-card-top\">\n          <div>\n            <h3>Standardband<\/h3>\n            <p>Einfarbiges Band f\u00fcr klassische Medaillen und Sportveranstaltungen.<\/p>\n          <\/div>\n          <strong class=\"md-price-pill\">+ 0 \u20ac<\/strong>\n        <\/div>\n      <\/div>\n\n      <div class=\"md-card\" data-band=\"Individuelles Band mit Aufdruck\" data-band-price=\"0.3\">\n        <div class=\"md-card-top\">\n          <div>\n            <h3>Individuelles Band<\/h3>\n            <p>Band mit individuellem Aufdruck, Logo oder Text f\u00fcr ein einheitliches Eventdesign.<\/p>\n          <\/div>\n          <strong class=\"md-price-pill\">+ 0,30 \u20ac<\/strong>\n        <\/div>\n      <\/div>\n    <\/div>\n\n    <p class=\"md-error\" id=\"md-error-step3\">Bitte w\u00e4hle ein Band aus.<\/p>\n\n    <div class=\"md-nav-buttons\">\n      <button class=\"md-btn-prev\" data-prev=\"2\" type=\"button\">Zur\u00fcck<\/button>\n      <button class=\"md-btn-next\" data-next=\"4\" type=\"button\">Weiter zum Design<\/button>\n    <\/div>\n  <\/section>\n\n  <!-- STEP 4 -->\n  <section class=\"md-panel\" data-step=\"4\">\n    <div class=\"md-panel-head\">\n      <span class=\"md-kicker\">Schritt 4<\/span>\n      <h2>Design f\u00fcr bedruckte Medaillen w\u00e4hlen<\/h2>\n      <p>\n        Lade ein fertiges Design hoch oder nutze unsere Unterst\u00fctzung f\u00fcr die Gestaltung deiner individuellen Medaille.\n      <\/p>\n    <\/div>\n\n    <div class=\"md-card-grid md-design-grid\">\n      <div class=\"md-card\" data-design=\"Eigenes Design hochladen\" data-design-price=\"0\">\n        <div class=\"md-card-top\">\n          <div>\n            <h3>Eigenes Design<\/h3>\n            <p>Du lieferst eine fertige Datei, ein Logo oder eine vorhandene Gestaltungsvorlage.<\/p>\n          <\/div>\n          <strong class=\"md-price-pill\">+ 0 \u20ac<\/strong>\n        <\/div>\n      <\/div>\n\n      <div class=\"md-card\" data-design=\"Basic-Design\" data-design-price=\"0\">\n        <div class=\"md-card-top\">\n          <div>\n            <h3>Basic-Design<\/h3>\n            <p>Ein einfaches Medaillendesign nach Vorlage, Logo oder klarer Gestaltungsidee.<\/p>\n          <\/div>\n          <strong class=\"md-price-pill\">+ 0 \u20ac<\/strong>\n        <\/div>\n      <\/div>\n\n      <div class=\"md-card\" data-design=\"Premium-Design\" data-design-price=\"0.9\">\n        <div class=\"md-card-top\">\n          <div>\n            <h3>Premium-Design<\/h3>\n            <p>Individuellere Gestaltung mit st\u00e4rkerem Designaufwand f\u00fcr besondere Medaillenprojekte.<\/p>\n          <\/div>\n          <strong class=\"md-price-pill\">+ 0,90 \u20ac<\/strong>\n        <\/div>\n      <\/div>\n    <\/div>\n\n    <div class=\"md-live-price md-live-price-small\">\n      <p>Aktualisierter Richtpreis<\/p>\n      <strong id=\"md-live-total-step4\">\u2013<\/strong>\n      <span id=\"md-live-unit-step4\">Bitte Design w\u00e4hlen<\/span>\n    <\/div>\n\n    <p class=\"md-error\" id=\"md-error-step4\">Bitte w\u00e4hle eine Design-Option aus.<\/p>\n\n    <div class=\"md-nav-buttons\">\n      <button class=\"md-btn-prev\" data-prev=\"3\" type=\"button\">Zur\u00fcck<\/button>\n      <button class=\"md-btn-next\" data-next=\"5\" type=\"button\">Zur Anfrage\u00fcbersicht<\/button>\n    <\/div>\n  <\/section>\n\n  <!-- STEP 5 -->\n  <section class=\"md-panel\" data-step=\"5\">\n    <div class=\"md-panel-head\">\n      <span class=\"md-kicker\">Schritt 5<\/span>\n      <h2>Zusammenfassung deiner Medaillen-Anfrage<\/h2>\n      <p>\n        Pr\u00fcfe deine Auswahl. Der angezeigte Preis dient als unverbindlicher Richtwert zur ersten Orientierung.\n      <\/p>\n    <\/div>\n\n    <div class=\"md-summary-box\">\n      <p><strong>Druck &amp; Form:<\/strong> <span id=\"summary-plan\">\u2013<\/span><\/p>\n      <p><strong>Medaillenart:<\/strong> <span id=\"summary-variant\">\u2013<\/span><\/p>\n      <p><strong>St\u00fcckzahl:<\/strong> <span id=\"summary-qty\">\u2013<\/span><\/p>\n      <p><strong>Band:<\/strong> <span id=\"summary-band\">\u2013<\/span><\/p>\n      <p><strong>Design:<\/strong> <span id=\"summary-design\">\u2013<\/span><\/p>\n\n      <hr>\n\n      <p><strong>Preis pro St\u00fcck:<\/strong> <span id=\"summary-unit\">\u2013<\/span><\/p>\n      <p class=\"md-total-line\"><strong>Gesamtpreis:<\/strong> <span id=\"summary-total\">\u2013<\/span><\/p>\n\n      <small>\n        Alle Preise sind unverbindliche Richtwerte. Nach deiner Anfrage pr\u00fcfen wir die Angaben und erstellen ein individuelles Angebot.\n      <\/small>\n    <\/div>\n\n    <div class=\"md-nav-buttons md-summary-navigation\">\n      <button class=\"md-btn-prev\" data-prev=\"4\" type=\"button\">Konfiguration \u00e4ndern<\/button>\n    <\/div>\n\n    <div id=\"md-cf7-target\" class=\"md-request-form-container\">\n      <p class=\"md-form-loading\">Anfrageformular wird geladen \u2026<\/p>\n    <\/div>\n  <\/section>\n\n<\/div>\n\n<style>\n#md-configurator,\n#md-configurator * {\n  box-sizing: border-box;\n  font-family: \"Montserrat\", Arial, sans-serif;\n}\n\n#md-configurator {\n  --md-gradient-title:\n    linear-gradient(\n      135deg,\n      #8e80ff 0%,\n      #a095ff 30%,\n      #87b7ff 65%,\n      #95e2ff 100%\n    );\n\n  --md-bg-page: #07000f;\n\n  --md-card-bg:\n    linear-gradient(\n      145deg,\n      rgba(22, 20, 34, .96) 0%,\n      rgba(18, 20, 32, .98) 52%,\n      rgba(13, 15, 25, .98) 100%\n    );\n\n  --md-card-bg-hover:\n    linear-gradient(\n      145deg,\n      rgba(30, 27, 46, .98) 0%,\n      rgba(22, 24, 38, .98) 52%,\n      rgba(16, 18, 30, .98) 100%\n    );\n\n  --md-card-bg-active:\n    linear-gradient(\n      145deg,\n      rgba(38, 32, 60, .98) 0%,\n      rgba(24, 27, 45, .98) 55%,\n      rgba(16, 19, 32, .98) 100%\n    );\n\n  --md-field-bg:\n    linear-gradient(\n      145deg,\n      rgba(16, 18, 31, .98) 0%,\n      rgba(12, 15, 27, .98) 100%\n    );\n\n  --md-field-bg-hover:\n    linear-gradient(\n      145deg,\n      rgba(24, 22, 40, .98) 0%,\n      rgba(15, 18, 32, .98) 100%\n    );\n\n  --md-dropdown-bg:\n    linear-gradient(\n      145deg,\n      #121426 0%,\n      #0c0f1d 100%\n    );\n\n  --md-option-bg:\n    linear-gradient(\n      145deg,\n      rgba(22, 24, 39, .98),\n      rgba(14, 17, 30, .98)\n    );\n\n  --md-option-bg-hover:\n    linear-gradient(\n      145deg,\n      rgba(42, 35, 66, .98),\n      rgba(20, 26, 44, .98)\n    );\n\n  --md-border-soft: rgba(150, 160, 255, .26);\n  --md-border-hover: rgba(160, 150, 255, .45);\n  --md-border-active: rgba(150, 180, 255, .72);\n  --md-border-muted: rgba(255,255,255,.12);\n\n  --md-text-main: #ffffff;\n  --md-text-soft: rgba(232, 235, 245, .78);\n  --md-text-muted: rgba(232, 235, 245, .62);\n\n  --md-pill-bg:\n    linear-gradient(\n      135deg,\n      #f4f6fb 0%,\n      #d7dde8 55%,\n      #eef2f8 100%\n    );\n\n  --md-pill-text: #0e1020;\n\n  --md-success-bg:\n    linear-gradient(\n      145deg,\n      rgba(45, 78, 57, .84),\n      rgba(30, 54, 42, .9)\n    );\n\n  --md-success-border: rgba(170,255,200,.16);\n  --md-success-text: #d9ffe7;\n\n  width: min(100%, 1120px);\n  margin: 0 auto;\n  padding: clamp(.75rem, 2vw, 1.5rem);\n  color: var(--md-text-soft);\n  position: relative;\n  overflow: visible !important;\n}\n\n\/* Dropdown-Hintergrund abdunkeln, ohne Klicks zu blockieren *\/\n#md-configurator {\n  isolation: isolate;\n}\n\n#md-configurator.md-dropdown-active::before {\n  content: \"\";\n  position: fixed;\n  inset: 0;\n  background: rgba(5, 8, 18, .58);\n  backdrop-filter: grayscale(35%) brightness(.7) blur(1px);\n  z-index: 500;\n  pointer-events: none;\n}\n\n\/* Elementor Fix *\/\n.elementor-widget-html,\n.elementor-widget-html .elementor-widget-container,\n.elementor-section,\n.elementor-container,\n.elementor-column,\n.elementor-widget-wrap,\n#md-configurator,\n#md-configurator .md-panel,\n#md-configurator .md-card-grid,\n#md-configurator .md-card,\n#md-configurator .md-variant-box,\n#md-configurator .md-medal-select {\n  overflow: visible !important;\n}\n\n\/* Progress *\/\n#md-configurator .md-progress {\n  display: grid;\n  grid-template-columns: repeat(5, 1fr);\n  gap: .5rem;\n  margin-bottom: 1rem;\n}\n\n#md-configurator .md-progress-step {\n  position: relative;\n  min-height: 48px;\n  padding: .55rem .45rem;\n  border-radius: 999px;\n  border: 1px solid var(--md-border-soft) !important;\n  background: var(--md-field-bg) !important;\n  color: var(--md-text-muted) !important;\n  font-size: .78rem;\n  font-weight: 800;\n  cursor: pointer;\n  transition: .22s ease;\n}\n\n#md-configurator .md-progress-step span {\n  display: inline-flex;\n  width: 24px;\n  height: 24px;\n  align-items: center;\n  justify-content: center;\n  margin-right: .25rem;\n  border-radius: 50%;\n  background: rgba(255,255,255,.08);\n  color: inherit;\n  font-size: .75rem;\n}\n\n#md-configurator .md-progress-step.active {\n  background: var(--md-pill-bg) !important;\n  color: var(--md-pill-text) !important;\n  border-color: rgba(255,255,255,.78) !important;\n  box-shadow:\n    0 10px 26px rgba(0,0,0,.28),\n    0 0 22px rgba(135, 183, 255, .10);\n}\n\n#md-configurator .md-progress-step.done {\n  background:\n    linear-gradient(\n      145deg,\n      rgba(34, 30, 52, .98),\n      rgba(17, 20, 35, .98)\n    ) !important;\n  color: var(--md-text-main) !important;\n  border-color: rgba(150, 180, 255, .38) !important;\n}\n\n#md-configurator .md-progress-step.done span {\n  font-size: 0;\n}\n\n#md-configurator .md-progress-step.done span::after {\n  content: \"\u2713\";\n  font-size: .78rem;\n}\n\n\/* Mini Summary *\/\n#md-configurator .md-mini-summary {\n  display: flex;\n  justify-content: center;\n  flex-wrap: wrap;\n  gap: .5rem;\n  margin: 0 auto 1.2rem;\n}\n\n#md-configurator .md-mini-summary span {\n  padding: .38rem .65rem;\n  border-radius: 999px;\n  background: rgba(255,255,255,.055);\n  border: 1px solid var(--md-border-muted);\n  color: var(--md-text-soft);\n  font-size: .78rem;\n  font-weight: 700;\n}\n\n\/* Panels *\/\n#md-configurator .md-panel {\n  display: none;\n  animation: mdFadeUp .28s ease;\n}\n\n#md-configurator .md-panel.active {\n  display: block;\n}\n\n@keyframes mdFadeUp {\n  from {\n    opacity: 0;\n    transform: translateY(8px);\n  }\n\n  to {\n    opacity: 1;\n    transform: translateY(0);\n  }\n}\n\n#md-configurator .md-panel-head {\n  text-align: center;\n  max-width: 780px;\n  margin: 0 auto 1.25rem;\n}\n\n#md-configurator .md-kicker {\n  display: inline-block;\n  margin-bottom: .45rem;\n  color: var(--md-text-muted);\n  text-transform: uppercase;\n  letter-spacing: .14em;\n  font-size: .72rem;\n  font-weight: 800;\n}\n\n#md-configurator .md-panel-head h2 {\n  display: inline-block;\n  margin: 0;\n  font-size: clamp(1.75rem, 4vw, 2.75rem);\n  line-height: 1.08;\n  background: var(--md-gradient-title);\n  -webkit-background-clip: text;\n  background-clip: text;\n  -webkit-text-fill-color: transparent;\n  color: transparent;\n  filter: drop-shadow(0 0 28px rgba(120,140,255,.22));\n}\n\n#md-configurator .md-panel-head p {\n  max-width: 640px;\n  margin: .7rem auto 0;\n  color: var(--md-text-soft);\n  font-size: .95rem;\n  line-height: 1.5;\n}\n\n\/* Cards *\/\n#md-configurator .md-card-grid {\n  display: grid;\n  grid-template-columns: repeat(auto-fit, minmax(min(100%, 315px), 1fr));\n  gap: 1rem;\n  width: 100%;\n}\n\n#md-configurator .md-design-grid {\n  grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr));\n}\n\n#md-configurator .md-card {\n  width: 100%;\n  min-height: 185px;\n  background: var(--md-card-bg);\n  color: var(--md-text-soft);\n  border: 1px solid var(--md-border-soft);\n  border-radius: 18px;\n  padding: 1.1rem;\n  cursor: pointer;\n  transition: .25s ease;\n  position: relative;\n  box-shadow:\n    0 18px 45px rgba(0, 0, 0, .32),\n    inset 0 1px 0 rgba(255, 255, 255, .05);\n}\n\n#md-configurator .md-card:hover {\n  transform: translateY(-3px);\n  background: var(--md-card-bg-hover);\n  border-color: var(--md-border-hover);\n  box-shadow:\n    0 22px 55px rgba(0, 0, 0, .4),\n    0 0 28px rgba(130, 120, 255, .12),\n    inset 0 1px 0 rgba(255, 255, 255, .07);\n}\n\n#md-configurator .md-card.active {\n  background: var(--md-card-bg-active);\n  border-color: var(--md-border-active);\n  box-shadow:\n    0 0 0 2px rgba(140, 130, 255, .16),\n    0 22px 60px rgba(0, 0, 0, .45),\n    0 0 34px rgba(135, 183, 255, .14),\n    inset 0 1px 0 rgba(255, 255, 255, .08);\n}\n\n#md-configurator .md-card-top {\n  display: grid;\n  grid-template-columns: minmax(0, 1fr) auto;\n  gap: .85rem;\n  align-items: start;\n}\n\n#md-configurator .md-card h3 {\n  margin: 0 0 .55rem;\n  color: var(--md-text-main);\n  font-size: clamp(1.15rem, 2vw, 1.55rem);\n  line-height: 1.18;\n}\n\n#md-configurator .md-card p {\n  margin: 0;\n  color: var(--md-text-soft);\n  font-size: .92rem;\n  line-height: 1.4;\n}\n\n#md-configurator .md-price-pill,\n#md-configurator .md-medal-price {\n  display: inline-flex;\n  justify-content: center;\n  align-items: center;\n  padding: .38rem .65rem;\n  border-radius: 999px;\n  background: var(--md-pill-bg);\n  color: var(--md-pill-text) !important;\n  font-size: .78rem;\n  font-weight: 900;\n  white-space: nowrap;\n  box-shadow: 0 8px 18px rgba(0,0,0,.22);\n}\n\n\/* Variant \/ Dropdown *\/\n#md-configurator .md-variant-box {\n  margin-top: 1rem;\n  padding-top: 1rem;\n  border-top: 1px solid rgba(160, 170, 255, .16);\n}\n\n#md-configurator .md-variant-box > span {\n  display: block;\n  margin-bottom: .6rem;\n  font-weight: 800;\n  font-size: .9rem;\n  color: var(--md-text-main);\n}\n\n\/* Dropdown *\/\n#md-configurator [data-plan=\"form_fertig\"] {\n  position: relative;\n  z-index: 50;\n}\n\n#md-configurator .md-medal-select {\n  position: relative;\n  width: 100%;\n  z-index: 100;\n}\n\n#md-configurator .md-medal-select-toggle {\n  width: 100%;\n  display: flex;\n  align-items: center;\n  gap: .85rem;\n  padding: .72rem .85rem;\n  border-radius: 16px;\n  border: 1px solid rgba(155, 170, 255, .26) !important;\n  background: var(--md-field-bg) !important;\n  color: #f4f7ff !important;\n  cursor: pointer;\n  text-align: left;\n  transition: .22s ease;\n  box-shadow:\n    inset 0 1px 0 rgba(255,255,255,.05),\n    0 10px 26px rgba(0,0,0,.28);\n}\n\n#md-configurator .md-medal-select-toggle:hover,\n#md-configurator .md-medal-select.open .md-medal-select-toggle {\n  background: var(--md-field-bg-hover) !important;\n  border-color: rgba(150, 180, 255, .55) !important;\n  box-shadow:\n    0 0 0 3px rgba(135, 183, 255, .10),\n    0 14px 34px rgba(0,0,0,.36);\n}\n\n#md-configurator .md-medal-selected-img {\n  width: 58px;\n  height: 58px;\n  flex: 0 0 58px;\n  border-radius: 12px;\n  background:\n    linear-gradient(\n      145deg,\n      rgba(255,255,255,.08),\n      rgba(255,255,255,.025)\n    );\n  border: 1px solid rgba(170, 180, 255, .18);\n  overflow: hidden;\n}\n\n#md-configurator .md-medal-selected-img img,\n#md-configurator .md-medal-img img {\n  width: 100%;\n  height: 100%;\n  object-fit: cover;\n}\n\n#md-configurator .md-medal-selected-text {\n  flex: 1;\n  color: var(--md-text-main);\n  font-size: .95rem;\n  font-weight: 800;\n}\n\n#md-configurator .md-medal-arrow {\n  color: #9fb7ff;\n  font-size: 1rem;\n  opacity: 1;\n  transition: .2s ease;\n}\n\n#md-configurator .md-medal-select.open .md-medal-arrow {\n  transform: rotate(180deg);\n}\n\n#md-configurator .md-medal-dropdown {\n  display: none !important;\n  position: absolute !important;\n  left: 0;\n  right: 0;\n  top: auto !important;\n  bottom: calc(100% + .55rem) !important;\n  z-index: 9999 !important;\n  padding: .55rem;\n  border-radius: 18px;\n  background: var(--md-dropdown-bg) !important;\n  border: 1px solid rgba(150, 170, 255, .28) !important;\n  box-shadow:\n    0 22px 55px rgba(0,0,0,.65),\n    inset 0 1px 0 rgba(255,255,255,.06);\n  max-height: 430px;\n  overflow-y: auto !important;\n  overflow-x: hidden !important;\n}\n\n#md-configurator .md-medal-select.open .md-medal-dropdown {\n  display: grid !important;\n  gap: .5rem;\n}\n\n#md-configurator .md-medal-option {\n  width: 100%;\n  display: grid;\n  grid-template-columns: 74px minmax(0, 1fr) auto;\n  align-items: center;\n  gap: .85rem;\n  padding: .65rem;\n  border-radius: 14px;\n  border: 1px solid rgba(255,255,255,.08) !important;\n  background: var(--md-option-bg) !important;\n  color: var(--md-text-soft) !important;\n  cursor: pointer;\n  text-align: left;\n  transition: .22s ease;\n}\n\n#md-configurator .md-medal-option:hover,\n#md-configurator .md-medal-option.active {\n  background: var(--md-option-bg-hover) !important;\n  border-color: rgba(145, 170, 255, .5) !important;\n}\n\n#md-configurator .md-medal-img {\n  width: 74px;\n  height: 74px;\n  border-radius: 14px;\n  overflow: hidden;\n  background:\n    linear-gradient(\n      145deg,\n      rgba(255,255,255,.08),\n      rgba(255,255,255,.025)\n    );\n  border: 1px solid rgba(170, 180, 255, .18);\n}\n\n#md-configurator .md-medal-info {\n  min-width: 0;\n}\n\n#md-configurator .md-medal-info strong {\n  display: block;\n  color: var(--md-text-main);\n  font-size: .96rem;\n  font-weight: 800;\n  line-height: 1.2;\n}\n\n#md-configurator .md-medal-info small {\n  display: block;\n  margin-top: .25rem;\n  color: var(--md-text-soft);\n  font-size: .8rem;\n  line-height: 1.3;\n}\n\n\/* Selected Box *\/\n#md-configurator .md-selected-box {\n  width: min(100%, 520px);\n  margin: 0 auto 1rem;\n  padding: .9rem 1rem;\n  border-radius: 18px;\n  background: rgba(255,255,255,.055);\n  border: 1px solid var(--md-border-muted);\n  text-align: center;\n}\n\n#md-configurator .md-selected-box span {\n  display: block;\n  margin-bottom: .2rem;\n  color: var(--md-text-muted);\n  font-size: .76rem;\n  font-weight: 800;\n  text-transform: uppercase;\n  letter-spacing: .12em;\n}\n\n#md-configurator .md-selected-box strong {\n  display: block;\n  color: var(--md-text-main);\n  font-size: 1.15rem;\n  margin-bottom: .55rem;\n}\n\n#md-configurator .md-change-btn {\n  border: 1px solid rgba(255,255,255,.22) !important;\n  background: transparent !important;\n  color: var(--md-text-soft) !important;\n  border-radius: 999px;\n  padding: .42rem .75rem;\n  font-size: .8rem;\n  font-weight: 800;\n  cursor: pointer;\n}\n\n\/* Quantity *\/\n#md-configurator .md-qty-main {\n  width: min(100%, 420px);\n  margin: 0 auto;\n  text-align: center;\n}\n\n#md-configurator .md-qty-main label {\n  display: block;\n  margin-bottom: .45rem;\n  color: var(--md-text-main);\n  font-weight: 800;\n}\n\n#md-configurator #md-qty-input {\n  width: 100%;\n  padding: .9rem 1rem;\n  border-radius: 16px;\n  border: 1px solid rgba(155, 170, 255, .32);\n  background: var(--md-field-bg);\n  color: var(--md-text-main);\n  text-align: center;\n  font-size: 1.1rem;\n  font-weight: 800;\n}\n\n#md-configurator #md-qty-input:focus {\n  outline: none;\n  border-color: rgba(150, 180, 255, .64);\n  box-shadow: 0 0 0 3px rgba(135, 183, 255, .10);\n}\n\n#md-configurator #md-qty-hint {\n  display: block;\n  margin-top: .55rem;\n  font-size: .82rem;\n  color: var(--md-text-soft);\n}\n\n#md-configurator #md-qty-hint.md-qty-hint-error {\n  color: #ffb3b3;\n  font-weight: 800;\n}\n\n#md-configurator #md-qty-hint.md-qty-hint-ok {\n  color: #bfffd0;\n  font-weight: 800;\n}\n\n#md-configurator .md-tier-row {\n  display: flex;\n  justify-content: center;\n  flex-wrap: wrap;\n  gap: .5rem;\n  margin-top: 1rem;\n}\n\n#md-configurator .md-tier-chip {\n  padding: .52rem .85rem;\n  border-radius: 999px;\n  border: 1px solid rgba(155, 170, 255, .24) !important;\n  background: var(--md-field-bg) !important;\n  color: var(--md-text-soft) !important;\n  font-size: .82rem;\n  font-weight: 800;\n  cursor: pointer;\n}\n\n#md-configurator .md-tier-chip.active {\n  background: var(--md-pill-bg) !important;\n  color: var(--md-pill-text) !important;\n  border-color: rgba(255,255,255,.78) !important;\n}\n\n#md-configurator .md-over-limit-note {\n  text-align: center;\n  margin: .65rem 0 0;\n  color: var(--md-text-muted);\n  font-size: .85rem;\n}\n\n\/* Price *\/\n#md-configurator .md-live-price {\n  width: min(100%, 420px);\n  margin: 1.1rem auto 0;\n  padding: .9rem 1rem;\n  border-radius: 18px;\n  background: var(--md-card-bg);\n  border: 1px solid var(--md-border-muted);\n  text-align: center;\n  box-shadow: 0 12px 35px rgba(0,0,0,.25);\n}\n\n#md-configurator .md-live-price-small {\n  margin-top: 1rem;\n}\n\n#md-configurator .md-live-price p {\n  margin: 0 0 .2rem;\n  color: var(--md-text-muted);\n  font-size: .78rem;\n  font-weight: 700;\n}\n\n#md-configurator .md-live-price strong {\n  display: block;\n  color: var(--md-text-main);\n  font-size: clamp(1.25rem, 3vw, 1.7rem);\n  font-weight: 900;\n  margin-bottom: .15rem;\n}\n\n#md-configurator .md-live-price span {\n  color: var(--md-text-soft);\n  font-size: .82rem;\n}\n\n#md-configurator .md-saving-box {\n  display: none;\n  width: min(100%, 420px);\n  margin: .85rem auto 0;\n  padding: .75rem .9rem;\n  border-radius: 18px;\n  background: var(--md-success-bg);\n  border: 1px solid var(--md-success-border);\n  text-align: center;\n}\n\n#md-configurator .md-saving-box.show {\n  display: block;\n}\n\n#md-configurator .md-saving-label {\n  display: block;\n  color: rgba(220,255,230,.72);\n  text-transform: uppercase;\n  letter-spacing: .12em;\n  font-size: .72rem;\n  font-weight: 800;\n  margin-bottom: .3rem;\n}\n\n#md-configurator #md-saving-amount {\n  display: block;\n  color: var(--md-success-text);\n  font-size: 1.25rem;\n  font-weight: 900;\n}\n\n\/* Summary *\/\n#md-configurator .md-summary-box {\n  width: min(100%, 560px);\n  margin: 0 auto;\n  padding: 1.1rem;\n  border-radius: 20px;\n  background: var(--md-card-bg);\n  border: 1px solid var(--md-border-muted);\n}\n\n#md-configurator .md-summary-box p {\n  display: flex;\n  justify-content: space-between;\n  gap: 1rem;\n  margin: .55rem 0;\n  font-size: .95rem;\n}\n\n#md-configurator .md-summary-box strong {\n  color: var(--md-text-main);\n}\n\n#md-configurator .md-summary-box span {\n  text-align: right;\n  color: var(--md-text-soft);\n}\n\n#md-configurator .md-summary-box hr {\n  border: none;\n  border-top: 1px solid rgba(255,255,255,.16);\n  margin: .9rem 0;\n}\n\n#md-configurator .md-total-line {\n  font-size: 1.15rem !important;\n}\n\n#md-configurator .md-total-line span {\n  color: var(--md-text-main);\n  font-weight: 900;\n}\n\n#md-configurator .md-summary-box small {\n  display: block;\n  margin-top: .9rem;\n  color: var(--md-text-muted);\n  font-size: .78rem;\n  text-align: center;\n}\n\n\/* Errors *\/\n#md-configurator .md-error {\n  display: none;\n  color: #ffb3b3;\n  font-weight: 800;\n  margin: 1rem auto 0;\n  text-align: center;\n  font-size: .92rem;\n}\n\n#md-configurator .md-error.show {\n  display: block;\n}\n\n\/* Buttons *\/\n#md-configurator .md-nav-buttons {\n  display: flex;\n  justify-content: center;\n  gap: .8rem;\n  flex-wrap: wrap;\n  margin-top: 1.4rem;\n}\n\n#md-configurator .md-btn-prev,\n#md-configurator .md-btn-next,\n#md-configurator .md-request-btn {\n  display: inline-flex;\n  align-items: center;\n  justify-content: center;\n  min-height: 44px;\n  padding: .72rem 1.35rem;\n  border-radius: 999px;\n  font-weight: 900;\n  font-size: .92rem;\n  cursor: pointer;\n  text-decoration: none !important;\n  transition: .2s ease;\n}\n\n#md-configurator .md-btn-prev {\n  background: transparent !important;\n  color: var(--md-text-soft) !important;\n  border: 1px solid rgba(155, 170, 255, .32) !important;\n}\n\n#md-configurator .md-btn-next,\n#md-configurator .md-request-btn {\n  border: none !important;\n  background: var(--md-pill-bg) !important;\n  color: var(--md-pill-text) !important;\n}\n\n#md-configurator .md-btn-prev:hover,\n#md-configurator .md-btn-next:hover,\n#md-configurator .md-request-btn:hover {\n  transform: translateY(-2px);\n}\n\n\/* Mobile *\/\n@media (max-width: 720px) {\n  #md-configurator .md-progress {\n    display: flex;\n    overflow-x: auto;\n    padding-bottom: .4rem;\n    scrollbar-width: none;\n  }\n\n  #md-configurator .md-progress::-webkit-scrollbar {\n    display: none;\n  }\n\n  #md-configurator .md-progress-step {\n    flex: 0 0 auto;\n    min-width: 126px;\n  }\n\n  #md-configurator .md-card-grid,\n  #md-configurator .md-design-grid {\n    grid-template-columns: 1fr;\n  }\n\n  #md-configurator .md-medal-dropdown {\n    position: static !important;\n    top: auto !important;\n    bottom: auto !important;\n    margin-top: .55rem;\n    max-height: none;\n  }\n\n  #md-configurator.md-dropdown-active::before {\n    display: none !important;\n  }\n\n  #md-configurator .md-medal-option {\n    grid-template-columns: 62px minmax(0, 1fr);\n  }\n\n  #md-configurator .md-medal-price {\n    grid-column: 2;\n    justify-self: start;\n    margin-top: .25rem;\n  }\n\n  #md-configurator .md-medal-img,\n  #md-configurator .md-medal-selected-img {\n    width: 62px;\n    height: 62px;\n    flex-basis: 62px;\n  }\n\n  #md-configurator .md-summary-box p {\n    display: block;\n  }\n\n  #md-configurator .md-summary-box span {\n    display: block;\n    text-align: left;\n    margin-top: .2rem;\n  }\n\n  #md-configurator .md-btn-prev,\n  #md-configurator .md-btn-next,\n  #md-configurator .md-request-btn {\n    width: 100%;\n  }\n}\n\n\n\/* =========================\n   FIX: DROPDOWN \u00dcBER AUSGRAUUNG\n========================= *\/\n\n#md-configurator {\n  position: relative !important;\n  isolation: isolate;\n}\n\n#md-configurator.md-dropdown-active::before {\n  content: \"\";\n  position: fixed;\n  inset: 0;\n  background: rgba(5, 8, 18, .58);\n  backdrop-filter: grayscale(35%) brightness(.7) blur(1px);\n  z-index: 1 !important;\n  pointer-events: none !important;\n}\n\n#md-configurator > * {\n  position: relative;\n  z-index: 2;\n}\n\n#md-configurator [data-plan=\"form_fertig\"] {\n  position: relative !important;\n  z-index: 20 !important;\n}\n\n#md-configurator .md-medal-select {\n  position: relative !important;\n  z-index: 30 !important;\n}\n\n#md-configurator .md-medal-dropdown {\n  z-index: 99999 !important;\n  top: auto !important;\n  bottom: calc(100% + .55rem) !important;\n  opacity: 1 !important;\n  filter: none !important;\n  backdrop-filter: none !important;\n}\n\n#md-configurator .md-medal-select.open .md-medal-dropdown {\n  display: grid !important;\n  position: absolute !important;\n}\n\n#md-configurator .md-medal-select,\n#md-configurator .md-medal-select *,\n#md-configurator .md-medal-dropdown,\n#md-configurator .md-medal-dropdown * {\n  opacity: 1 !important;\n  filter: none !important;\n}\n\n@media (max-width: 720px) {\n  #md-configurator .md-medal-dropdown {\n    position: static !important;\n    top: auto !important;\n    bottom: auto !important;\n    margin-top: .55rem;\n  }\n\n  #md-configurator.md-dropdown-active::before {\n    display: none !important;\n  }\n}\n\n\/* Dropdown: Text nicht unter Preis laufen lassen *\/\n.md-medal-option,\n.md-config-option,\n.md-dropdown-option {\n  position: relative;\n}\n\n.md-medal-option-content,\n.md-config-option-content,\n.md-option-content {\n  padding-right: 105px !important;\n  min-width: 0;\n}\n\n.md-medal-option h3,\n.md-medal-option p,\n.md-config-option h3,\n.md-config-option p,\n.md-dropdown-option h3,\n.md-dropdown-option p {\n  max-width: calc(100% - 105px);\n  overflow: hidden;\n  text-overflow: ellipsis;\n}\n\n.md-medal-price,\n.md-option-price,\n.md-price-badge {\n  position: absolute !important;\n  right: 18px !important;\n  top: 50% !important;\n  transform: translateY(-50%) !important;\n  white-space: nowrap !important;\n  z-index: 5;\n}\n\n\n\n\/* =========================================================\n   MOBILE-OPTIMIERUNG \u2013 am Ende des <style>-Blocks belassen\n   ========================================================= *\/\n@media (max-width: 720px) {\n  #md-configurator {\n    width: 100%;\n    padding: .65rem .35rem 1.25rem;\n  }\n\n  \/* Kompakte, vollst\u00e4ndig sichtbare Fortschrittsanzeige *\/\n  #md-configurator .md-progress {\n    display: grid;\n    grid-template-columns: repeat(5, minmax(0, 1fr));\n    gap: .28rem;\n    overflow: visible;\n    margin-bottom: .75rem;\n    padding: 0;\n  }\n\n  #md-configurator .md-progress-step {\n    min-width: 0;\n    min-height: 46px;\n    padding: .38rem .15rem;\n    border-radius: 13px;\n    font-size: 0;\n    line-height: 1;\n  }\n\n  #md-configurator .md-progress-step span {\n    width: 26px;\n    height: 26px;\n    margin: 0;\n    font-size: .72rem;\n  }\n\n  \/* Zusammenfassung als platzsparende Zeile *\/\n  #md-configurator .md-mini-summary {\n    display: grid;\n    grid-template-columns: 1fr 1fr;\n    gap: .4rem;\n    margin-bottom: 1rem;\n  }\n\n  #md-configurator .md-mini-summary span {\n    min-width: 0;\n    padding: .5rem .55rem;\n    border-radius: 12px;\n    font-size: .7rem;\n    line-height: 1.25;\n    text-align: center;\n    overflow-wrap: anywhere;\n  }\n\n  #md-configurator .md-mini-summary span:first-child {\n    grid-column: 1 \/ -1;\n  }\n\n  \/* \u00dcberschriften und Einleitung *\/\n  #md-configurator .md-panel-head {\n    margin-bottom: .95rem;\n    padding: 0 .35rem;\n  }\n\n  #md-configurator .md-kicker {\n    margin-bottom: .3rem;\n    font-size: .64rem;\n  }\n\n  #md-configurator .md-panel-head h2 {\n    display: block;\n    font-size: clamp(1.55rem, 8vw, 2.05rem);\n    line-height: 1.08;\n    overflow-wrap: anywhere;\n  }\n\n  #md-configurator .md-panel-head p {\n    margin-top: .55rem;\n    font-size: .86rem;\n    line-height: 1.48;\n  }\n\n  \/* Karten *\/\n  #md-configurator .md-card-grid,\n  #md-configurator .md-design-grid {\n    grid-template-columns: minmax(0, 1fr);\n    gap: .7rem;\n  }\n\n  #md-configurator .md-card {\n    min-height: 0;\n    padding: .9rem;\n    border-radius: 15px;\n  }\n\n  #md-configurator .md-card:hover {\n    transform: none;\n  }\n\n  #md-configurator .md-card-top {\n    grid-template-columns: minmax(0, 1fr) auto;\n    gap: .55rem;\n  }\n\n  #md-configurator .md-card h3 {\n    margin-bottom: .35rem;\n    font-size: 1.08rem;\n  }\n\n  #md-configurator .md-card p {\n    font-size: .82rem;\n    line-height: 1.42;\n  }\n\n  #md-configurator .md-price-pill {\n    position: static !important;\n    transform: none !important;\n    align-self: start;\n    padding: .34rem .5rem;\n    font-size: .7rem;\n  }\n\n  \/* Medaillen-Auswahl *\/\n  #md-configurator .md-variant-box {\n    margin-top: .8rem;\n    padding-top: .8rem;\n  }\n\n  #md-configurator .md-medal-select-toggle {\n    gap: .6rem;\n    padding: .6rem;\n    border-radius: 13px;\n  }\n\n  #md-configurator .md-medal-selected-img {\n    width: 50px;\n    height: 50px;\n    flex: 0 0 50px;\n    border-radius: 10px;\n  }\n\n  #md-configurator .md-medal-selected-text {\n    min-width: 0;\n    font-size: .82rem;\n    line-height: 1.25;\n    overflow-wrap: anywhere;\n  }\n\n  \/* Dropdown auf Mobilger\u00e4ten zuverl\u00e4ssig \u00f6ffnen und schlie\u00dfen *\/\n  #md-configurator .md-medal-select {\n    position: relative !important;\n    z-index: 40 !important;\n  }\n\n  #md-configurator .md-medal-select-toggle {\n    position: relative;\n    z-index: 2;\n    pointer-events: auto !important;\n    touch-action: manipulation;\n  }\n\n  #md-configurator .md-medal-dropdown {\n    position: static !important;\n    display: none !important;\n    visibility: hidden !important;\n    opacity: 0 !important;\n    pointer-events: none !important;\n    width: 100%;\n    margin-top: .5rem;\n    padding: .4rem;\n    max-height: none;\n    border-radius: 14px;\n    transform: none !important;\n  }\n\n  #md-configurator .md-medal-select.open > .md-medal-dropdown {\n    display: grid !important;\n    visibility: visible !important;\n    opacity: 1 !important;\n    pointer-events: auto !important;\n    gap: .45rem;\n  }\n\n  #md-configurator .md-medal-option {\n    pointer-events: auto !important;\n    touch-action: manipulation;\n  }\n\n  #md-configurator .md-medal-option {\n    position: relative;\n    grid-template-columns: 54px minmax(0, 1fr);\n    gap: .6rem;\n    padding: .55rem;\n    padding-right: 4.7rem;\n    min-height: 68px;\n    border-radius: 12px;\n  }\n\n  #md-configurator .md-medal-img {\n    width: 54px;\n    height: 54px;\n    border-radius: 10px;\n  }\n\n  #md-configurator .md-medal-info strong {\n    font-size: .84rem;\n  }\n\n  #md-configurator .md-medal-info small {\n    font-size: .7rem;\n  }\n\n  #md-configurator .md-medal-price {\n    position: absolute !important;\n    right: .5rem !important;\n    top: 50% !important;\n    grid-column: auto;\n    margin: 0;\n    transform: translateY(-50%) !important;\n    padding: .3rem .45rem;\n    font-size: .67rem;\n  }\n\n  \/* \u00dcberschreibt die unskopierten Regeln am Ende des bisherigen CSS *\/\n  #md-configurator .md-medal-option h3,\n  #md-configurator .md-medal-option p {\n    max-width: none;\n  }\n\n  #md-configurator .md-medal-option-content,\n  #md-configurator .md-config-option-content,\n  #md-configurator .md-option-content {\n    padding-right: 0 !important;\n  }\n\n  \/* Mengeneingabe *\/\n  #md-configurator .md-selected-box,\n  #md-configurator .md-qty-main,\n  #md-configurator .md-live-price,\n  #md-configurator .md-saving-box,\n  #md-configurator .md-summary-box {\n    width: 100%;\n    border-radius: 15px;\n  }\n\n  #md-configurator .md-selected-box {\n    padding: .75rem;\n  }\n\n  #md-configurator #md-qty-input {\n    min-height: 50px;\n    padding: .75rem;\n    font-size: 1rem;\n  }\n\n  #md-configurator .md-tier-row {\n    display: grid;\n    grid-template-columns: repeat(3, minmax(0, 1fr));\n    gap: .4rem;\n  }\n\n  #md-configurator .md-tier-chip {\n    width: 100%;\n    padding: .55rem .25rem;\n    font-size: .72rem;\n  }\n\n  #md-configurator .md-tier-chip:nth-child(4),\n  #md-configurator .md-tier-chip:nth-child(5) {\n    grid-column: span 1;\n  }\n\n  #md-configurator .md-live-price,\n  #md-configurator .md-saving-box {\n    padding: .8rem;\n  }\n\n  \/* Zusammenfassung *\/\n  #md-configurator .md-summary-box {\n    padding: .9rem;\n  }\n\n  #md-configurator .md-summary-box p {\n    display: grid;\n    grid-template-columns: 1fr;\n    gap: .15rem;\n    margin: .7rem 0;\n    font-size: .84rem;\n  }\n\n  #md-configurator .md-summary-box span {\n    display: block;\n    margin: 0;\n    text-align: left;\n    overflow-wrap: anywhere;\n  }\n\n  \/* Navigation: Weiter zuerst, Zur\u00fcck darunter *\/\n  #md-configurator .md-nav-buttons {\n    display: flex;\n    flex-direction: column-reverse;\n    gap: .55rem;\n    margin-top: 1rem;\n  }\n\n  #md-configurator .md-btn-prev,\n  #md-configurator .md-btn-next,\n  #md-configurator .md-request-btn {\n    width: 100%;\n    min-height: 48px;\n    padding: .72rem .8rem;\n    font-size: .84rem;\n  }\n\n  #md-configurator .md-btn-prev:hover,\n  #md-configurator .md-btn-next:hover,\n  #md-configurator .md-request-btn:hover {\n    transform: none;\n  }\n}\n\n@media (max-width: 390px) {\n  #md-configurator {\n    padding-inline: .2rem;\n  }\n\n  #md-configurator .md-progress-step {\n    min-height: 42px;\n  }\n\n  #md-configurator .md-progress-step span {\n    width: 23px;\n    height: 23px;\n    font-size: .66rem;\n  }\n\n  #md-configurator .md-panel-head h2 {\n    font-size: 1.45rem;\n  }\n\n  #md-configurator .md-card-top {\n    grid-template-columns: 1fr;\n  }\n\n  #md-configurator .md-price-pill {\n    justify-self: start;\n  }\n\n  #md-configurator .md-tier-row {\n    grid-template-columns: repeat(2, minmax(0, 1fr));\n  }\n\n  #md-configurator .md-tier-chip:last-child {\n    grid-column: 1 \/ -1;\n  }\n}\n\n\n\n\/* =========================================================\n   CONTACT FORM 7 \u2013 MEDAILLEN-ANFRAGE\n   ========================================================= *\/\n#md-configurator .md-request-form-container {\n  width: min(100%, 760px);\n  margin: 1.4rem auto 0;\n}\n\n#md-configurator .md-form-loading {\n  text-align: center;\n  color: var(--md-text-muted);\n  font-size: .85rem;\n}\n\n#md-configurator .md-request-form {\n  padding: clamp(1rem, 3vw, 1.5rem);\n  border-radius: 20px;\n  background: var(--md-card-bg);\n  border: 1px solid var(--md-border-soft);\n  box-shadow: 0 18px 45px rgba(0,0,0,.32),\n              inset 0 1px 0 rgba(255,255,255,.05);\n}\n\n#md-configurator .md-request-head {\n  max-width: 620px;\n  margin: 0 auto 1.25rem;\n  text-align: center;\n}\n\n#md-configurator .md-request-head h3 {\n  margin: 0;\n  color: var(--md-text-main);\n  font-size: clamp(1.35rem, 3vw, 1.9rem);\n  line-height: 1.15;\n}\n\n#md-configurator .md-request-head p {\n  margin: .55rem 0 0;\n  color: var(--md-text-soft);\n  font-size: .9rem;\n  line-height: 1.5;\n}\n\n#md-configurator .md-form-grid {\n  display: grid;\n  grid-template-columns: repeat(2, minmax(0, 1fr));\n  gap: .85rem;\n}\n\n#md-configurator .md-form-field-full { margin-top: .85rem; }\n\n#md-configurator .md-form-field label {\n  display: block;\n  color: var(--md-text-main);\n  font-size: .82rem;\n  font-weight: 800;\n  line-height: 1.4;\n}\n\n#md-configurator .md-form-field input,\n#md-configurator .md-form-field textarea {\n  width: 100%;\n  margin-top: .4rem;\n  padding: .78rem .85rem;\n  border-radius: 14px;\n  border: 1px solid rgba(155,170,255,.3);\n  background: var(--md-field-bg);\n  color: var(--md-text-main);\n  font-family: inherit;\n  font-size: .9rem;\n}\n\n#md-configurator .md-form-field input:focus,\n#md-configurator .md-form-field textarea:focus {\n  outline: none;\n  border-color: rgba(150,180,255,.68);\n  box-shadow: 0 0 0 3px rgba(135,183,255,.1);\n}\n\n#md-configurator .md-form-field textarea {\n  min-height: 130px;\n  resize: vertical;\n}\n\n#md-configurator .md-form-field small {\n  display: block;\n  margin-top: .4rem;\n  color: var(--md-text-muted);\n  font-size: .72rem;\n  line-height: 1.4;\n}\n\n#md-configurator .md-form-privacy {\n  margin-top: 1rem;\n  padding: .8rem;\n  border-radius: 14px;\n  border: 1px solid var(--md-border-muted);\n  background: rgba(255,255,255,.035);\n  color: var(--md-text-soft);\n  font-size: .78rem;\n  line-height: 1.5;\n}\n\n#md-configurator .md-form-privacy label {\n  display: flex;\n  align-items: flex-start;\n  gap: .55rem;\n}\n\n#md-configurator .md-form-privacy input[type=\"checkbox\"] {\n  flex: 0 0 auto;\n  width: 18px;\n  height: 18px;\n  margin-top: .1rem;\n  accent-color: #9e94ff;\n}\n\n#md-configurator .md-form-privacy a {\n  color: #b9caff;\n  text-decoration: underline;\n}\n\n#md-configurator .md-form-submit {\n  margin-top: 1rem;\n  text-align: center;\n}\n\n#md-configurator .md-form-submit-button {\n  min-height: 48px;\n  padding: .75rem 1.5rem;\n  border: none !important;\n  border-radius: 999px;\n  background: var(--md-pill-bg) !important;\n  color: var(--md-pill-text) !important;\n  font-family: inherit;\n  font-size: .9rem;\n  font-weight: 900;\n  cursor: pointer;\n}\n\n#md-configurator .md-form-required {\n  margin: .65rem 0 0;\n  color: var(--md-text-muted);\n  font-size: .7rem;\n  text-align: center;\n}\n\n#md-configurator .wpcf7-not-valid-tip {\n  margin-top: .35rem;\n  color: #ffb3b3;\n  font-size: .75rem;\n  font-weight: 700;\n}\n\n#md-configurator .wpcf7-response-output {\n  margin: 1rem 0 0 !important;\n  padding: .75rem .9rem !important;\n  border-radius: 14px;\n  color: var(--md-text-main);\n  font-size: .82rem;\n}\n\n@media (max-width: 720px) {\n  #md-configurator .md-request-form { padding: .9rem; border-radius: 15px; }\n  #md-configurator .md-form-grid { grid-template-columns: 1fr; gap: .7rem; }\n  #md-configurator .md-form-field input,\n  #md-configurator .md-form-field textarea { min-height: 48px; font-size: 16px; }\n  #md-configurator .md-form-submit-button { width: 100%; }\n}\n\n<\/style>\n\n<script>\n(function () {\n  const root = document.getElementById(\"md-configurator\");\n  if (!root) return;\n\n  const state = {\n    currentStep: 1,\n    maxReachedStep: 1,\n    planKey: \"\",\n    planLabel: \"\",\n    variant: \"\",\n    band: \"\",\n    bandPrice: 0,\n    quantity: \"\",\n    quantityRange: \"\",\n    design: \"\",\n    designPrice: 0\n  };\n\n  const planPrices = {\n    form_fertig: {\n      label: \"Individueller Druck & bestehende Form\",\n      tiers: [\n        { max: 150, price: 5 },\n        { max: 300, price: 4.8 },\n        { max: 500, price: 4.5 },\n        { max: 1000, price: 4.25 },\n        { max: 2000, price: 4 }\n      ]\n    },\n    form_wunsch: {\n      label: \"Individuelle Form & individueller Druck\",\n      tiers: [\n        { max: 150, price: 11 },\n        { max: 300, price: 10 },\n        { max: 500, price: 9 },\n        { max: 1000, price: 8 },\n        { max: 2000, price: 7 }\n      ]\n    }\n  };\n\n  const ranges = [\n    { max: 150, label: \"bis 150\" },\n    { max: 300, label: \"bis 300\" },\n    { max: 500, label: \"bis 500\" },\n    { max: 1000, label: \"bis 1000\" },\n    { max: 2000, label: \"bis 2000\" }\n  ];\n\n  function formatEuro(value) {\n    return value.toLocaleString(\"de-DE\", {\n      style: \"currency\",\n      currency: \"EUR\"\n    });\n  }\n\n  function getRangeForQuantity(qty) {\n    const value = Number(qty);\n    if (!value || value < 1 || value > 2000) return null;\n    return ranges.find(r => value <= r.max) || null;\n  }\n\n  function getBasePrice() {\n    if (!state.planKey || !state.quantityRange) return 0;\n\n    const plan = planPrices[state.planKey];\n    const tier = plan.tiers.find(t => Number(state.quantityRange) <= t.max);\n\n    return tier ? tier.price : 0;\n  }\n\n  function calculatePrice() {\n    if (!state.planKey || !state.quantity) return null;\n\n    const base = getBasePrice();\n    if (!base) return null;\n\n    const unit = base + Number(state.bandPrice || 0) + Number(state.designPrice || 0);\n    const total = unit * Number(state.quantity);\n\n    return { unit, total };\n  }\n\n  function calculateSavings() {\n    if (!state.planKey || !state.quantity || !state.quantityRange) return null;\n\n    const plan = planPrices[state.planKey];\n    const firstTierPrice = plan.tiers[0].price;\n    const currentPrice = getBasePrice();\n    const savingsPerUnit = firstTierPrice - currentPrice;\n\n    if (savingsPerUnit <= 0) return null;\n\n    return {\n      total: savingsPerUnit * Number(state.quantity),\n      perUnit: savingsPerUnit\n    };\n  }\n\n  function clearErrors() {\n    root.querySelectorAll(\".md-error\").forEach(function (error) {\n      error.classList.remove(\"show\");\n    });\n  }\n\n  function showError(id) {\n    const el = root.querySelector(\"#\" + id);\n    if (el) el.classList.add(\"show\");\n  }\n\n  function setQtyHint(message, type) {\n    const hint = root.querySelector(\"#md-qty-hint\");\n    if (!hint) return;\n\n    hint.textContent = message;\n    hint.classList.remove(\"md-qty-hint-error\", \"md-qty-hint-ok\");\n\n    if (type === \"error\") hint.classList.add(\"md-qty-hint-error\");\n    if (type === \"ok\") hint.classList.add(\"md-qty-hint-ok\");\n  }\n\n  function updateQuantityFromInput(showMessage = true) {\n    const input = root.querySelector(\"#md-qty-input\");\n    if (!input) return false;\n\n    const value = parseInt(input.value, 10);\n    const range = getRangeForQuantity(value);\n\n    root.querySelectorAll(\".md-tier-chip\").forEach(function (chip) {\n      chip.classList.remove(\"active\");\n    });\n\n    if (!range) {\n      state.quantity = \"\";\n      state.quantityRange = \"\";\n\n      if (input.value !== \"\" && showMessage) {\n        setQtyHint(\"Bitte gib eine St\u00fcckzahl zwischen 1 und 2000 ein.\", \"error\");\n      }\n\n      updateLivePrice();\n      updateMiniSummary();\n      return false;\n    }\n\n    state.quantity = value;\n    state.quantityRange = range.max;\n\n    const activeChip = root.querySelector('.md-tier-chip[data-max=\"' + range.max + '\"]');\n    if (activeChip) activeChip.classList.add(\"active\");\n\n    if (showMessage) {\n      setQtyHint(\"Preisstaffel automatisch erkannt: \" + range.label + \".\", \"ok\");\n    }\n\n    updateLivePrice();\n    updateMiniSummary();\n    return true;\n  }\n\n  function updateLivePrice() {\n    const price = calculatePrice();\n\n    const liveTotal = root.querySelector(\"#md-live-total\");\n    const liveUnit = root.querySelector(\"#md-live-unit\");\n    const liveTotal4 = root.querySelector(\"#md-live-total-step4\");\n    const liveUnit4 = root.querySelector(\"#md-live-unit-step4\");\n    const savingBox = root.querySelector(\"#md-saving-box\");\n    const savingAmount = root.querySelector(\"#md-saving-amount\");\n\n    if (!price) {\n      if (liveTotal) liveTotal.textContent = \"\u2013\";\n      if (liveUnit) liveUnit.textContent = \"Bitte St\u00fcckzahl eingeben\";\n      if (liveTotal4) liveTotal4.textContent = \"\u2013\";\n      if (liveUnit4) liveUnit4.textContent = \"Bitte Design w\u00e4hlen\";\n      if (savingBox) savingBox.classList.remove(\"show\");\n      return;\n    }\n\n    if (liveTotal) liveTotal.textContent = formatEuro(price.total);\n    if (liveUnit) liveUnit.textContent = formatEuro(price.unit) + \" pro St\u00fcck\";\n\n    if (liveTotal4) liveTotal4.textContent = formatEuro(price.total);\n    if (liveUnit4) liveUnit4.textContent = formatEuro(price.unit) + \" pro St\u00fcck\";\n\n    const savings = calculateSavings();\n\n    if (savings && savingBox && savingAmount) {\n      savingBox.classList.add(\"show\");\n      savingAmount.innerHTML =\n        \"Du sparst ca. \" +\n        formatEuro(savings.total) +\n        \"<br><small style='font-size:.9rem;opacity:.82;'>(\" +\n        formatEuro(savings.perUnit) +\n        \" pro Medaille)<\/small>\";\n    } else if (savingBox) {\n      savingBox.classList.remove(\"show\");\n    }\n  }\n\n  function updateMiniSummary() {\n    const miniMedal = root.querySelector(\"#md-mini-medal\");\n    const miniQty = root.querySelector(\"#md-mini-qty\");\n    const miniPrice = root.querySelector(\"#md-mini-price\");\n    const price = calculatePrice();\n\n    if (miniMedal) {\n      miniMedal.textContent =\n        state.variant ||\n        (state.planKey === \"form_wunsch\" ? \"Eigene Form\" : \"Noch keine Medaille gew\u00e4hlt\");\n    }\n\n    if (miniQty) {\n      miniQty.textContent = state.quantity ? state.quantity + \" St\u00fcck\" : \"Menge offen\";\n    }\n\n    if (miniPrice) {\n      miniPrice.textContent = price ? formatEuro(price.total) : \"Preis offen\";\n    }\n  }\n\n  function updateSelectedMedalBox() {\n    const selected = root.querySelector(\"#md-selected-medal-name\");\n\n    if (!selected) return;\n\n    selected.textContent =\n      state.variant ||\n      (state.planKey === \"form_wunsch\" ? \"Eigene Form & individueller Druck\" : \"\u2013\");\n  }\n\n  function updateSummary() {\n    const price = calculatePrice();\n\n    root.querySelector(\"#summary-plan\").textContent = state.planLabel || \"\u2013\";\n    root.querySelector(\"#summary-variant\").textContent =\n      state.variant || (state.planKey === \"form_wunsch\" ? \"Eigene Form\" : \"\u2013\");\n    root.querySelector(\"#summary-qty\").textContent = state.quantity ? state.quantity + \" St\u00fcck\" : \"\u2013\";\n    root.querySelector(\"#summary-band\").textContent = state.band || \"\u2013\";\n    root.querySelector(\"#summary-design\").textContent = state.design || \"\u2013\";\n\n    root.querySelector(\"#summary-unit\").textContent = price ? formatEuro(price.unit) : \"\u2013\";\n    root.querySelector(\"#summary-total\").textContent = price ? formatEuro(price.total) : \"\u2013\";\n  }\n\n\n  function moveContactFormIntoConfigurator() {\n    const target = root.querySelector(\"#md-cf7-target\");\n    if (!target) return false;\n\n    \/*\n      Optional: Trage hier die Contact-Form-7-ID aus deinem Shortcode ein.\n      Beispiel: <p class=\"wpcf7-contact-form-not-found\"><strong>Fehler:<\/strong> Kontaktformular wurde nicht gefunden.<\/p>\n      Dann: const CONTACT_FORM_7_ID = \"1234\";\n\n      Bleibt der Wert leer, wird automatisch das erste Contact-Form-7-\n      Formular au\u00dferhalb des Konfigurators verwendet.\n    *\/\n    const CONTACT_FORM_7_ID = \"\";\n    let source = null;\n\n    if (CONTACT_FORM_7_ID) {\n      const idField = document.querySelector(\n        '.wpcf7 input[name=\"_wpcf7\"][value=\"' + CONTACT_FORM_7_ID + '\"]'\n      );\n\n      source = idField ? idField.closest(\".wpcf7\") : null;\n    }\n\n    if (!source) {\n      const forms = Array.from(document.querySelectorAll(\".wpcf7\"));\n\n      source = forms.find(function (form) {\n        return !root.contains(form);\n      }) || null;\n    }\n\n    if (!source) {\n      return Boolean(target.querySelector(\".wpcf7\"));\n    }\n\n    if (target.contains(source)) return true;\n\n    const sourceWidget = source.closest(\n      \".elementor-widget-shortcode, .elementor-widget-wp-widget-contact-form-7\"\n    );\n\n    target.innerHTML = \"\";\n    target.appendChild(source);\n\n    if (sourceWidget && !root.contains(sourceWidget)) {\n      sourceWidget.style.display = \"none\";\n      sourceWidget.setAttribute(\"aria-hidden\", \"true\");\n    }\n\n    return true;\n  }\n\n  function prepareContactForm(attempt) {\n    const currentAttempt = Number(attempt || 0);\n\n    if (moveContactFormIntoConfigurator()) {\n      updateRequestForm();\n      return;\n    }\n\n    if (currentAttempt < 10) {\n      window.setTimeout(function () {\n        prepareContactForm(currentAttempt + 1);\n      }, 200);\n    }\n  }\n\n  function updateRequestForm() {\n    const price = calculatePrice();\n\n    const formValues = {\n      \"#md-form-plan\": state.planLabel || \"\",\n      \"#md-form-variant\":\n        state.variant ||\n        (state.planKey === \"form_wunsch\" ? \"Eigene Form\" : \"\"),\n      \"#md-form-quantity\":\n        state.quantity ? state.quantity + \" St\u00fcck\" : \"\",\n      \"#md-form-band\": state.band || \"\",\n      \"#md-form-design\": state.design || \"\",\n      \"#md-form-unit\": price ? formatEuro(price.unit) : \"\",\n      \"#md-form-total\": price ? formatEuro(price.total) : \"\"\n    };\n\n    Object.entries(formValues).forEach(function ([selector, value]) {\n      const field = root.querySelector(selector);\n      if (!field) return;\n\n      field.value = value;\n      field.dispatchEvent(new Event(\"input\", { bubbles: true }));\n      field.dispatchEvent(new Event(\"change\", { bubbles: true }));\n    });\n  }\n\n  function canEnterStep(step) {\n    return step <= state.maxReachedStep;\n  }\n\n  function goToStep(step) {\n    step = Number(step);\n\n    if (!canEnterStep(step)) return;\n\n    state.currentStep = step;\n\n    root.querySelectorAll(\".md-panel\").forEach(function (panel) {\n      panel.classList.toggle(\"active\", Number(panel.dataset.step) === step);\n    });\n\n    root.querySelectorAll(\".md-progress-step\").forEach(function (progress) {\n      const progressStep = Number(progress.dataset.step);\n\n      progress.classList.toggle(\"active\", progressStep === step);\n      progress.classList.toggle(\"done\", progressStep < step && progressStep <= state.maxReachedStep);\n    });\n\n    const medalSelect = root.querySelector(\".md-medal-select\");\n    if (medalSelect) medalSelect.classList.remove(\"open\");\n    root.classList.remove(\"md-dropdown-active\");\n\n    updateSelectedMedalBox();\n    updateLivePrice();\n    updateMiniSummary();\n\n    if (step === 5) {\n      updateSummary();\n\n      prepareContactForm(0);\n    }\n  }\n\n  function allowNextStep(step) {\n    state.maxReachedStep = Math.max(state.maxReachedStep, Number(step));\n  }\n\n  function validateCurrentStep(targetStep) {\n    clearErrors();\n\n    if (targetStep === 2) {\n      if (!state.planKey || (state.planKey === \"form_fertig\" && !state.variant)) {\n        showError(\"md-error-step1\");\n        return false;\n      }\n    }\n\n    if (targetStep === 3) {\n      if (!updateQuantityFromInput(true)) {\n        showError(\"md-error-step2\");\n        return false;\n      }\n    }\n\n    if (targetStep === 4) {\n      if (!state.band) {\n        showError(\"md-error-step3\");\n        return false;\n      }\n    }\n\n    if (targetStep === 5) {\n      if (!state.design) {\n        showError(\"md-error-step4\");\n        return false;\n      }\n    }\n\n    return true;\n  }\n\n  function resetMedalDropdown() {\n    state.variant = \"\";\n\n    root.querySelectorAll(\".md-medal-option\").forEach(function (option) {\n      option.classList.remove(\"active\");\n    });\n\n    const selectedText = root.querySelector(\".md-medal-selected-text\");\n    const selectedImg = root.querySelector(\".md-medal-selected-img\");\n    const medalSelect = root.querySelector(\".md-medal-select\");\n\n    if (selectedText) selectedText.textContent = \"Bitte Medaille ausw\u00e4hlen\";\n    if (selectedImg) selectedImg.innerHTML = \"\";\n    if (medalSelect) medalSelect.classList.remove(\"open\");\n    root.classList.remove(\"md-dropdown-active\");\n  }\n\n  root.querySelectorAll(\"[data-plan]\").forEach(function (card) {\n    card.addEventListener(\"click\", function (e) {\n\n      if (e.target.closest(\".md-medal-select\")) {\n        return;\n      }\n\n      root.querySelectorAll(\"[data-plan]\").forEach(function (c) {\n        c.classList.remove(\"active\");\n      });\n\n      this.classList.add(\"active\");\n\n      state.planKey = this.dataset.plan;\n      state.planLabel = planPrices[state.planKey].label;\n\n      if (state.planKey === \"form_wunsch\") {\n        resetMedalDropdown();\n        clearErrors();\n      }\n\n      updateSelectedMedalBox();\n      updateMiniSummary();\n      updateLivePrice();\n    });\n  });\n\n  const medalSelect = root.querySelector(\".md-medal-select\");\n  const medalToggle = root.querySelector(\".md-medal-select-toggle\");\n  const medalSelectedText = root.querySelector(\".md-medal-selected-text\");\n  const medalSelectedImg = root.querySelector(\".md-medal-selected-img\");\n\n  if (medalToggle && medalSelect) {\n    medalToggle.addEventListener(\"click\", function (e) {\n      e.preventDefault();\n      e.stopPropagation();\n\n      const existingFormCard = root.querySelector('[data-plan=\"form_fertig\"]');\n\n      root.querySelectorAll(\"[data-plan]\").forEach(function (c) {\n        c.classList.remove(\"active\");\n      });\n\n      if (existingFormCard) {\n        existingFormCard.classList.add(\"active\");\n      }\n\n      state.planKey = \"form_fertig\";\n      state.planLabel = planPrices.form_fertig.label;\n\n      medalSelect.classList.toggle(\"open\");\n\n      if (medalSelect.classList.contains(\"open\")) {\n        root.classList.add(\"md-dropdown-active\");\n      } else {\n        root.classList.remove(\"md-dropdown-active\");\n      }\n\n      clearErrors();\n      updateMiniSummary();\n      updateLivePrice();\n    });\n  }\n\n  root.querySelectorAll(\".md-medal-option\").forEach(function (option) {\n    option.addEventListener(\"click\", function (e) {\n      e.preventDefault();\n      e.stopPropagation();\n\n      const existingFormCard = root.querySelector('[data-plan=\"form_fertig\"]');\n\n      root.querySelectorAll(\"[data-plan]\").forEach(function (c) {\n        c.classList.remove(\"active\");\n      });\n\n      if (existingFormCard) {\n        existingFormCard.classList.add(\"active\");\n      }\n\n      root.querySelectorAll(\".md-medal-option\").forEach(function (o) {\n        o.classList.remove(\"active\");\n      });\n\n      this.classList.add(\"active\");\n\n      state.planKey = \"form_fertig\";\n      state.planLabel = planPrices.form_fertig.label;\n      state.variant = this.dataset.variant;\n\n      const titleElement = this.querySelector(\"strong\");\n      const title = titleElement ? titleElement.textContent : this.dataset.variant;\n      const img = this.querySelector(\"img\");\n\n      if (medalSelectedText) {\n        medalSelectedText.textContent = title;\n      }\n\n      if (medalSelectedImg && img) {\n        medalSelectedImg.innerHTML =\n          '<img decoding=\"async\" src=\"' + img.src + '\" alt=\"' + img.alt + '\">';\n      }\n\n      medalSelect.classList.remove(\"open\");\n      root.classList.remove(\"md-dropdown-active\");\n\n      clearErrors();\n      updateSelectedMedalBox();\n      updateMiniSummary();\n      updateLivePrice();\n    });\n  });\n\n  document.addEventListener(\"click\", function (e) {\n    if (!medalSelect) return;\n\n    if (!medalSelect.contains(e.target)) {\n      medalSelect.classList.remove(\"open\");\n      root.classList.remove(\"md-dropdown-active\");\n    }\n  });\n\n  const qtyInput = root.querySelector(\"#md-qty-input\");\n\n  if (qtyInput) {\n    qtyInput.addEventListener(\"input\", function () {\n      updateQuantityFromInput(true);\n      clearErrors();\n    });\n  }\n\n  root.querySelectorAll(\".md-tier-chip\").forEach(function (chip) {\n    chip.addEventListener(\"click\", function () {\n      if (!qtyInput) return;\n\n      qtyInput.value = this.dataset.example;\n      updateQuantityFromInput(true);\n      clearErrors();\n    });\n  });\n\n  root.querySelectorAll(\"[data-band]\").forEach(function (card) {\n    card.addEventListener(\"click\", function () {\n      root.querySelectorAll(\"[data-band]\").forEach(function (c) {\n        c.classList.remove(\"active\");\n      });\n\n      this.classList.add(\"active\");\n\n      state.band = this.dataset.band;\n      state.bandPrice = parseFloat(this.dataset.bandPrice || 0);\n\n      clearErrors();\n      updateLivePrice();\n      updateMiniSummary();\n    });\n  });\n\n  root.querySelectorAll(\"[data-design]\").forEach(function (card) {\n    card.addEventListener(\"click\", function () {\n      root.querySelectorAll(\"[data-design]\").forEach(function (c) {\n        c.classList.remove(\"active\");\n      });\n\n      this.classList.add(\"active\");\n\n      state.design = this.dataset.design;\n      state.designPrice = parseFloat(this.dataset.designPrice || 0);\n\n      clearErrors();\n      updateLivePrice();\n      updateMiniSummary();\n    });\n  });\n\n  root.querySelectorAll(\"[data-next]\").forEach(function (btn) {\n    btn.addEventListener(\"click\", function () {\n      const target = Number(this.dataset.next);\n\n      if (!validateCurrentStep(target)) return;\n\n      allowNextStep(target);\n      goToStep(target);\n    });\n  });\n\n  root.querySelectorAll(\"[data-prev]\").forEach(function (btn) {\n    btn.addEventListener(\"click\", function () {\n      goToStep(this.dataset.prev);\n    });\n  });\n\n  root.querySelectorAll(\"[data-go]\").forEach(function (btn) {\n    btn.addEventListener(\"click\", function () {\n      goToStep(this.dataset.go);\n    });\n  });\n\n  root.querySelectorAll(\".md-progress-step\").forEach(function (btn) {\n    btn.addEventListener(\"click\", function () {\n      goToStep(this.dataset.step);\n    });\n  });\n\n  \/*\n    Contact Form 7 sofort beim Laden in den unsichtbaren Schritt 5\n    verschieben. Dadurch ist das Formular auf den Schritten 1 bis 4\n    nicht mehr unterhalb des Konfigurators sichtbar.\n  *\/\n  function initializeContactForm() {\n    prepareContactForm(0);\n  }\n\n  if (document.readyState === \"loading\") {\n    document.addEventListener(\"DOMContentLoaded\", function () {\n      window.setTimeout(initializeContactForm, 100);\n    });\n  } else {\n    window.setTimeout(initializeContactForm, 100);\n  }\n\n  window.addEventListener(\"load\", function () {\n    window.setTimeout(initializeContactForm, 250);\n  });\n\n  const mdFormObserver = new MutationObserver(function () {\n    if (moveContactFormIntoConfigurator()) {\n      updateRequestForm();\n      mdFormObserver.disconnect();\n    }\n  });\n\n  mdFormObserver.observe(document.body, {\n    childList: true,\n    subtree: true\n  });\n\n  window.setTimeout(function () {\n    mdFormObserver.disconnect();\n  }, 5000);\n\n  updateMiniSummary();\n})();\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c4d04d5 elementor-hidden-desktop elementor-widget elementor-widget-html\" data-id=\"c4d04d5\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\">\n<link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin>\n\n<div id=\"md-mobile-configurator\">\n\n  <div class=\"md-progress\">\n    <button class=\"md-progress-step active\" data-step=\"1\" type=\"button\">\n      <span>1<\/span>\n      Medaille\n    <\/button>\n\n    <button class=\"md-progress-step\" data-step=\"2\" type=\"button\">\n      <span>2<\/span>\n      Menge\n    <\/button>\n\n    <button class=\"md-progress-step\" data-step=\"3\" type=\"button\">\n      <span>3<\/span>\n      Band\n    <\/button>\n\n    <button class=\"md-progress-step\" data-step=\"4\" type=\"button\">\n      <span>4<\/span>\n      Design\n    <\/button>\n\n    <button class=\"md-progress-step\" data-step=\"5\" type=\"button\">\n      <span>5<\/span>\n      Anfrage\n    <\/button>\n  <\/div>\n\n  <div class=\"md-mini-summary\" id=\"mdm-mini-summary\">\n    <span id=\"mdm-mini-medal\">Noch keine Medaille gew\u00e4hlt<\/span>\n    <span id=\"mdm-mini-qty\">Menge offen<\/span>\n    <span id=\"mdm-mini-price\">Preis offen<\/span>\n  <\/div>\n\n  <!-- STEP 1 -->\n  <section class=\"md-panel active\" data-step=\"1\">\n    <div class=\"md-panel-head\">\n      <span class=\"md-kicker\">Schritt 1<\/span>\n      <h2>Individuelle Medaille ausw\u00e4hlen<\/h2>\n      <p>\n        W\u00e4hle eine bestehende Medaillenform oder frage eine individuelle Medaille mit eigenem Logo, Motiv oder Design an.\n      <\/p>\n    <\/div>\n\n    <div class=\"md-card-grid\">\n      <div class=\"md-card\" data-plan=\"form_fertig\">\n        <div class=\"md-card-top\">\n          <div>\n            <h3>Bestehende Medaillenform<\/h3>\n            <p>\n              Ideal f\u00fcr kurzfristige Auftr\u00e4ge \u2013 bestehende Medaillenform mit individuellem Druck.\n            <\/p>\n          <\/div>\n          <strong class=\"md-price-pill\">ab 4 \u20ac<\/strong>\n        <\/div>\n\n        <div class=\"md-variant-box\">\n          <span>Medaillenart w\u00e4hlen<\/span>\n\n          <div class=\"md-medal-select\">\n            <button type=\"button\" class=\"md-medal-select-toggle\">\n              <span class=\"md-medal-selected-img\"><\/span>\n              <span class=\"md-medal-selected-text\">Bitte Medaille ausw\u00e4hlen<\/span>\n              <span class=\"md-medal-arrow\">\u25be<\/span>\n            <\/button>\n\n            <div class=\"md-medal-dropdown\">\n              <button type=\"button\" class=\"md-medal-option\" data-variant=\"Standard-Medaille\">\n                <span class=\"md-medal-img\">\n                  <img decoding=\"async\" src=\"https:\/\/medaillendruck.de\/wp-content\/uploads\/2026\/05\/Standardmedaille-scaled.png\" alt=\"Standard-Medaille mit individuellem Druck\">\n                <\/span>\n\n                <span class=\"md-medal-info\">\n                  <strong>Standard-Medaille<\/strong>\n                  <small>Klassische Edelstahlmedaille<\/small>\n                <\/span>\n\n                <span class=\"md-medal-price\">ab 4 \u20ac<\/span>\n              <\/button>\n\n              <button type=\"button\" class=\"md-medal-option\" data-variant=\"Fu\u00dfball-Medaille\">\n                <span class=\"md-medal-img\">\n                  <img decoding=\"async\" src=\"https:\/\/medaillendruck.de\/wp-content\/uploads\/2026\/05\/Fussballmedaille-2.png\" alt=\"Fu\u00dfball-Medaille f\u00fcr Turniere und Vereine\">\n                <\/span>\n\n                <span class=\"md-medal-info\">\n                  <strong>Fu\u00dfball-Medaille<\/strong>\n                  <small>Edelstahlmedaille in Fussballform<\/small>\n                <\/span>\n\n                <span class=\"md-medal-price\">ab 4 \u20ac<\/span>\n              <\/button>\n            <\/div>\n          <\/div>\n        <\/div>\n      <\/div>\n\n      <div class=\"md-card\" data-plan=\"form_wunsch\">\n        <div class=\"md-card-top\">\n          <div>\n            <h3>Eigene Medaillenform<\/h3>\n            <p>\n              Individuelle Medaillenform mit eigenem Design f\u00fcr besondere Events, Vereine oder Turniere.\n            <\/p>\n          <\/div>\n          <strong class=\"md-price-pill\">ab 7 \u20ac<\/strong>\n        <\/div>\n      <\/div>\n    <\/div>\n\n    <p class=\"md-error\" id=\"mdm-error-step1\">\n      Bitte w\u00e4hle eine Medaille oder eine eigene Medaillenform aus.\n    <\/p>\n\n    <div class=\"md-nav-buttons\">\n      <button class=\"md-btn-next\" data-next=\"2\" type=\"button\">Weiter zur St\u00fcckzahl<\/button>\n    <\/div>\n  <\/section>\n\n  <!-- STEP 2 -->\n  <section class=\"md-panel\" data-step=\"2\">\n    <div class=\"md-panel-head\">\n      <span class=\"md-kicker\">Schritt 2<\/span>\n      <h2>St\u00fcckzahl f\u00fcr deine Medaillen eingeben<\/h2>\n      <p>\n        Gib einfach die gew\u00fcnschte Menge ein. Die passende Preisstaffel f\u00fcr deine bedruckten Medaillen wird automatisch erkannt.\n      <\/p>\n    <\/div>\n\n    <div class=\"md-selected-box\">\n      <span>Gew\u00e4hlte Auswahl<\/span>\n      <strong id=\"mdm-selected-medal-name\">\u2013<\/strong>\n      <button type=\"button\" class=\"md-change-btn\" data-go=\"1\">Auswahl \u00e4ndern<\/button>\n    <\/div>\n\n    <div class=\"md-qty-main\">\n      <label for=\"mdm-qty-input\">St\u00fcckzahl eingeben<\/label>\n      <input type=\"number\" id=\"mdm-qty-input\" min=\"1\" max=\"2000\" placeholder=\"z. B. 125\">\n      <small id=\"mdm-qty-hint\">Bis 2000 St\u00fcck kannst du hier direkt einen Richtpreis berechnen.<\/small>\n    <\/div>\n\n    <div class=\"md-tier-row\">\n      <button type=\"button\" class=\"md-tier-chip\" data-example=\"150\" data-max=\"150\">bis 150<\/button>\n      <button type=\"button\" class=\"md-tier-chip\" data-example=\"300\" data-max=\"300\">bis 300<\/button>\n      <button type=\"button\" class=\"md-tier-chip\" data-example=\"500\" data-max=\"500\">bis 500<\/button>\n      <button type=\"button\" class=\"md-tier-chip\" data-example=\"1000\" data-max=\"1000\">bis 1000<\/button>\n      <button type=\"button\" class=\"md-tier-chip\" data-example=\"2000\" data-max=\"2000\">bis 2000<\/button>\n    <\/div>\n\n    <p class=\"md-over-limit-note\">\n      Bei St\u00fcckzahlen \u00fcber 2000 erstellen wir gerne ein individuelles Angebot.\n    <\/p>\n\n    <div class=\"md-live-price\">\n      <p>Aktueller Richtpreis<\/p>\n      <strong id=\"mdm-live-total\">\u2013<\/strong>\n      <span id=\"mdm-live-unit\">Bitte St\u00fcckzahl eingeben<\/span>\n    <\/div>\n\n    <div class=\"md-saving-box\" id=\"mdm-saving-box\">\n      <span class=\"md-saving-label\">Mengenersparnis<\/span>\n      <strong id=\"mdm-saving-amount\">\u2013<\/strong>\n      <small>Gr\u00f6\u00dfere St\u00fcckzahlen reduzieren den Preis pro Medaille.<\/small>\n    <\/div>\n\n    <p class=\"md-error\" id=\"mdm-error-step2\">\n      Bitte gib eine g\u00fcltige St\u00fcckzahl zwischen 1 und 2000 ein.\n    <\/p>\n\n    <div class=\"md-nav-buttons\">\n      <button class=\"md-btn-prev\" data-prev=\"1\" type=\"button\">Zur\u00fcck<\/button>\n      <button class=\"md-btn-next\" data-next=\"3\" type=\"button\">Weiter zum Band<\/button>\n    <\/div>\n  <\/section>\n\n  <!-- STEP 3 -->\n  <section class=\"md-panel\" data-step=\"3\">\n    <div class=\"md-panel-head\">\n      <span class=\"md-kicker\">Schritt 3<\/span>\n      <h2>Band f\u00fcr deine Medaille ausw\u00e4hlen<\/h2>\n      <p>\n        W\u00e4hle ein klassisches Standardband oder ein individuell bedrucktes Band passend zu deinem Event.\n      <\/p>\n    <\/div>\n\n    <div class=\"md-card-grid\">\n      <div class=\"md-card\" data-band=\"Standardband\" data-band-price=\"0\">\n        <div class=\"md-card-top\">\n          <div>\n            <h3>Standardband<\/h3>\n            <p>Einfarbiges Band f\u00fcr klassische Medaillen und Sportveranstaltungen.<\/p>\n          <\/div>\n          <strong class=\"md-price-pill\">+ 0 \u20ac<\/strong>\n        <\/div>\n      <\/div>\n\n      <div class=\"md-card\" data-band=\"Individuelles Band mit Aufdruck\" data-band-price=\"0.3\">\n        <div class=\"md-card-top\">\n          <div>\n            <h3>Individuelles Band<\/h3>\n            <p>Band mit individuellem Aufdruck, Logo oder Text f\u00fcr ein einheitliches Eventdesign.<\/p>\n          <\/div>\n          <strong class=\"md-price-pill\">+ 0,30 \u20ac<\/strong>\n        <\/div>\n      <\/div>\n    <\/div>\n\n    <p class=\"md-error\" id=\"mdm-error-step3\">Bitte w\u00e4hle ein Band aus.<\/p>\n\n    <div class=\"md-nav-buttons\">\n      <button class=\"md-btn-prev\" data-prev=\"2\" type=\"button\">Zur\u00fcck<\/button>\n      <button class=\"md-btn-next\" data-next=\"4\" type=\"button\">Weiter zum Design<\/button>\n    <\/div>\n  <\/section>\n\n  <!-- STEP 4 -->\n  <section class=\"md-panel\" data-step=\"4\">\n    <div class=\"md-panel-head\">\n      <span class=\"md-kicker\">Schritt 4<\/span>\n      <h2>Design f\u00fcr bedruckte Medaillen w\u00e4hlen<\/h2>\n      <p>\n        Lade ein fertiges Design hoch oder nutze unsere Unterst\u00fctzung f\u00fcr die Gestaltung deiner individuellen Medaille.\n      <\/p>\n    <\/div>\n\n    <div class=\"md-card-grid md-design-grid\">\n      <div class=\"md-card\" data-design=\"Eigenes Design hochladen\" data-design-price=\"0\">\n        <div class=\"md-card-top\">\n          <div>\n            <h3>Eigenes Design<\/h3>\n            <p>Du lieferst eine fertige Datei, ein Logo oder eine vorhandene Gestaltungsvorlage.<\/p>\n          <\/div>\n          <strong class=\"md-price-pill\">+ 0 \u20ac<\/strong>\n        <\/div>\n      <\/div>\n\n      <div class=\"md-card\" data-design=\"Basic-Design\" data-design-price=\"0\">\n        <div class=\"md-card-top\">\n          <div>\n            <h3>Basic-Design<\/h3>\n            <p>Ein einfaches Medaillendesign nach Vorlage, Logo oder klarer Gestaltungsidee.<\/p>\n          <\/div>\n          <strong class=\"md-price-pill\">+ 0 \u20ac<\/strong>\n        <\/div>\n      <\/div>\n\n      <div class=\"md-card\" data-design=\"Premium-Design\" data-design-price=\"0.9\">\n        <div class=\"md-card-top\">\n          <div>\n            <h3>Premium-Design<\/h3>\n            <p>Individuellere Gestaltung mit st\u00e4rkerem Designaufwand f\u00fcr besondere Medaillenprojekte.<\/p>\n          <\/div>\n          <strong class=\"md-price-pill\">+ 0,90 \u20ac<\/strong>\n        <\/div>\n      <\/div>\n    <\/div>\n\n    <div class=\"md-live-price md-live-price-small\">\n      <p>Aktualisierter Richtpreis<\/p>\n      <strong id=\"mdm-live-total-step4\">\u2013<\/strong>\n      <span id=\"mdm-live-unit-step4\">Bitte Design w\u00e4hlen<\/span>\n    <\/div>\n\n    <p class=\"md-error\" id=\"mdm-error-step4\">Bitte w\u00e4hle eine Design-Option aus.<\/p>\n\n    <div class=\"md-nav-buttons\">\n      <button class=\"md-btn-prev\" data-prev=\"3\" type=\"button\">Zur\u00fcck<\/button>\n      <button class=\"md-btn-next\" data-next=\"5\" type=\"button\">Zur Anfrage\u00fcbersicht<\/button>\n    <\/div>\n  <\/section>\n\n  <!-- STEP 5 -->\n  <section class=\"md-panel\" data-step=\"5\">\n    <div class=\"md-panel-head\">\n      <span class=\"md-kicker\">Schritt 5<\/span>\n      <h2>Zusammenfassung deiner Medaillen-Anfrage<\/h2>\n      <p>\n        Pr\u00fcfe deine Auswahl. Der angezeigte Preis dient als unverbindlicher Richtwert zur ersten Orientierung.\n      <\/p>\n    <\/div>\n\n    <div class=\"md-summary-box\">\n      <p><strong>Druck &amp; Form:<\/strong> <span id=\"mdm-summary-plan\">\u2013<\/span><\/p>\n      <p><strong>Medaillenart:<\/strong> <span id=\"mdm-summary-variant\">\u2013<\/span><\/p>\n      <p><strong>St\u00fcckzahl:<\/strong> <span id=\"mdm-summary-qty\">\u2013<\/span><\/p>\n      <p><strong>Band:<\/strong> <span id=\"mdm-summary-band\">\u2013<\/span><\/p>\n      <p><strong>Design:<\/strong> <span id=\"mdm-summary-design\">\u2013<\/span><\/p>\n\n      <hr>\n\n      <p><strong>Preis pro St\u00fcck:<\/strong> <span id=\"mdm-summary-unit\">\u2013<\/span><\/p>\n      <p class=\"md-total-line\"><strong>Gesamtpreis:<\/strong> <span id=\"mdm-summary-total\">\u2013<\/span><\/p>\n\n      <small>\n        Alle Preise sind unverbindliche Richtwerte. Nach deiner Anfrage pr\u00fcfen wir die Angaben und erstellen ein individuelles Angebot.\n      <\/small>\n    <\/div>\n\n    <div class=\"md-nav-buttons md-summary-navigation\">\n      <button class=\"md-btn-prev\" data-prev=\"4\" type=\"button\">Konfiguration \u00e4ndern<\/button>\n    <\/div>\n\n    <div id=\"mdm-cf7-target\" class=\"md-request-form-container\">\n      <p class=\"md-form-loading\">Anfrageformular wird geladen \u2026<\/p>\n    <\/div>\n  <\/section>\n\n<\/div>\n\n\n<style>\n\/* Separate mobile configurator. Desktop-Version auf Mobilgeraeten vollstaendig deaktivieren. *\/\n@media (max-width: 720px) {\n  html,\n  body {\n    overflow-x: hidden;\n  }\n\n  #md-configurator {\n    display: none !important;\n    visibility: hidden !important;\n    pointer-events: none !important;\n    position: static !important;\n    z-index: -1 !important;\n    width: 0 !important;\n    height: 0 !important;\n    min-height: 0 !important;\n    margin: 0 !important;\n    padding: 0 !important;\n    overflow: hidden !important;\n    opacity: 0 !important;\n  }\n\n  #md-configurator::before,\n  #md-configurator::after,\n  #md-configurator.md-dropdown-active::before,\n  #md-configurator.md-dropdown-active::after {\n    content: none !important;\n    display: none !important;\n    visibility: hidden !important;\n    pointer-events: none !important;\n    position: static !important;\n    inset: auto !important;\n    width: 0 !important;\n    height: 0 !important;\n    background: none !important;\n    backdrop-filter: none !important;\n    -webkit-backdrop-filter: none !important;\n  }\n\n  \/* Elementor-Widget des Mobile-Konfigurators ueber benachbarte Widgets legen. *\/\n  .elementor-widget-html:has(#md-mobile-configurator),\n  .elementor-widget-container:has(> #md-mobile-configurator) {\n    position: relative !important;\n    z-index: 2147483646 !important;\n    overflow: visible !important;\n    pointer-events: auto !important;\n  }\n}\n\n#md-mobile-configurator { display: none; }\n\n@media (max-width: 720px) {\n  #md-mobile-configurator,\n  #md-mobile-configurator * {\n    box-sizing: border-box;\n    font-family: \"Montserrat\", Arial, sans-serif;\n  }\n\n  #md-mobile-configurator {\n    --md-title: linear-gradient(135deg,#8e80ff 0%,#a095ff 30%,#87b7ff 65%,#95e2ff 100%);\n    --md-card: linear-gradient(145deg,rgba(22,20,34,.98),rgba(13,15,25,.99));\n    --md-card-active: linear-gradient(145deg,rgba(38,32,60,.99),rgba(16,19,32,.99));\n    --md-field: linear-gradient(145deg,rgba(18,20,34,.99),rgba(11,14,25,.99));\n    --md-pill: linear-gradient(135deg,#f4f6fb,#d7dde8 55%,#eef2f8);\n    --md-border: rgba(150,160,255,.28);\n    --md-border-active: rgba(150,180,255,.72);\n    --md-main: #fff;\n    --md-soft: rgba(232,235,245,.8);\n    --md-muted: rgba(232,235,245,.62);\n    display: block !important;\n    width: 100%;\n    margin: 0 auto;\n    padding: 8px 4px 20px;\n    color: var(--md-soft);\n    position: relative !important;\n    z-index: 2147483646 !important;\n    isolation: auto !important;\n    overflow: visible !important;\n    pointer-events: auto !important;\n    touch-action: manipulation;\n  }\n\n  #md-mobile-configurator button,\n  #md-mobile-configurator a,\n  #md-mobile-configurator input,\n  #md-mobile-configurator .md-card {\n    pointer-events: auto !important;\n    touch-action: manipulation;\n    -webkit-tap-highlight-color: transparent;\n  }\n\n  #md-mobile-configurator::before,\n  #md-mobile-configurator::after {\n    content: none !important;\n    display: none !important;\n    pointer-events: none !important;\n  }\n\n  #md-mobile-configurator button,\n  #md-mobile-configurator a,\n  #md-mobile-configurator input {\n    position: relative;\n    z-index: 2;\n    cursor: pointer;\n  }\n\n  #md-mobile-configurator .md-progress {\n    display: grid;\n    grid-template-columns: repeat(5,minmax(0,1fr));\n    gap: 5px;\n    margin: 0 0 12px;\n  }\n\n  #md-mobile-configurator .md-progress-step {\n    min-width: 0;\n    min-height: 50px;\n    padding: 6px 2px;\n    border: 1px solid var(--md-border) !important;\n    border-radius: 13px;\n    background: var(--md-field) !important;\n    color: var(--md-muted) !important;\n    font-size: 0;\n    font-weight: 800;\n    cursor: pointer;\n  }\n\n  #md-mobile-configurator .md-progress-step span {\n    display: flex;\n    width: 27px;\n    height: 27px;\n    margin: 0 auto;\n    align-items: center;\n    justify-content: center;\n    border-radius: 50%;\n    background: rgba(255,255,255,.08);\n    font-size: 12px;\n  }\n\n  #md-mobile-configurator .md-progress-step.active {\n    background: var(--md-pill) !important;\n    color: #0e1020 !important;\n    border-color: rgba(255,255,255,.78) !important;\n  }\n\n  #md-mobile-configurator .md-progress-step.done {\n    color: #fff !important;\n    border-color: rgba(150,180,255,.45) !important;\n  }\n\n  #md-mobile-configurator .md-progress-step.done span { font-size: 0; }\n  #md-mobile-configurator .md-progress-step.done span::after { content: \"\u2713\"; font-size: 13px; }\n\n  #md-mobile-configurator .md-mini-summary {\n    display: grid;\n    grid-template-columns: 1fr 1fr;\n    gap: 6px;\n    margin: 0 0 16px;\n  }\n\n  #md-mobile-configurator .md-mini-summary span {\n    min-width: 0;\n    padding: 7px 8px;\n    border: 1px solid rgba(255,255,255,.12);\n    border-radius: 11px;\n    background: rgba(255,255,255,.055);\n    color: var(--md-soft);\n    font-size: 11px;\n    font-weight: 700;\n    text-align: center;\n    overflow-wrap: anywhere;\n  }\n\n  #md-mobile-configurator .md-mini-summary span:first-child { grid-column: 1 \/ -1; }\n\n  #md-mobile-configurator .md-panel { display: none; animation: mdmFade .22s ease; }\n  #md-mobile-configurator .md-panel.active { display: block; }\n  @keyframes mdmFade { from {opacity:0;transform:translateY(5px)} to {opacity:1;transform:none} }\n\n  #md-mobile-configurator .md-panel-head {\n    max-width: 100%;\n    margin: 0 auto 14px;\n    padding: 0 4px;\n    text-align: left;\n  }\n\n  #md-mobile-configurator .md-kicker {\n    display: block;\n    margin-bottom: 5px;\n    color: var(--md-muted);\n    font-size: 10px;\n    font-weight: 800;\n    letter-spacing: .13em;\n    text-transform: uppercase;\n  }\n\n  #md-mobile-configurator .md-panel-head h2 {\n    display: inline-block;\n    margin: 0;\n    font-size: clamp(25px,8vw,34px);\n    line-height: 1.08;\n    background: var(--md-title);\n    -webkit-background-clip: text;\n    background-clip: text;\n    -webkit-text-fill-color: transparent;\n    color: transparent;\n  }\n\n  #md-mobile-configurator .md-panel-head p {\n    margin: 8px 0 0;\n    color: var(--md-soft);\n    font-size: 14px;\n    line-height: 1.48;\n  }\n\n  #md-mobile-configurator .md-card-grid,\n  #md-mobile-configurator .md-design-grid {\n    display: grid;\n    grid-template-columns: 1fr;\n    gap: 10px;\n    width: 100%;\n  }\n\n  #md-mobile-configurator .md-card {\n    width: 100%;\n    min-height: 0;\n    padding: 15px;\n    border: 1px solid var(--md-border);\n    border-radius: 17px;\n    background: var(--md-card);\n    color: var(--md-soft);\n    cursor: pointer;\n    position: relative;\n    box-shadow: 0 12px 32px rgba(0,0,0,.3),inset 0 1px 0 rgba(255,255,255,.05);\n  }\n\n  #md-mobile-configurator .md-card.active {\n    border-color: var(--md-border-active);\n    background: var(--md-card-active);\n    box-shadow: 0 0 0 2px rgba(140,130,255,.14),0 15px 38px rgba(0,0,0,.38);\n  }\n\n  #md-mobile-configurator .md-card-top {\n    display: grid;\n    grid-template-columns: minmax(0,1fr) auto;\n    gap: 9px;\n    align-items: start;\n  }\n\n  #md-mobile-configurator .md-card h3 {\n    margin: 0 0 6px;\n    color: var(--md-main);\n    font-size: 19px;\n    line-height: 1.18;\n  }\n\n  #md-mobile-configurator .md-card p {\n    margin: 0;\n    color: var(--md-soft);\n    font-size: 13px;\n    line-height: 1.42;\n  }\n\n  #md-mobile-configurator .md-price-pill,\n  #md-mobile-configurator .md-medal-price {\n    position: static !important;\n    transform: none !important;\n    display: inline-flex;\n    align-items: center;\n    justify-content: center;\n    padding: 6px 9px;\n    border-radius: 999px;\n    background: var(--md-pill);\n    color: #0e1020 !important;\n    font-size: 11px;\n    font-weight: 900;\n    white-space: nowrap;\n  }\n\n  #md-mobile-configurator .md-variant-box {\n    margin-top: 13px;\n    padding-top: 13px;\n    border-top: 1px solid rgba(160,170,255,.16);\n  }\n\n  #md-mobile-configurator .md-variant-box > span {\n    display: block;\n    margin-bottom: 7px;\n    color: var(--md-main);\n    font-size: 13px;\n    font-weight: 800;\n  }\n\n  #md-mobile-configurator .md-medal-select { position: relative; width: 100%; }\n\n  #md-mobile-configurator .md-medal-select-toggle {\n    display: grid;\n    grid-template-columns: 54px minmax(0,1fr) auto;\n    align-items: center;\n    gap: 9px;\n    width: 100%;\n    min-height: 68px;\n    padding: 7px 9px;\n    border: 1px solid rgba(155,170,255,.3) !important;\n    border-radius: 14px;\n    background: var(--md-field) !important;\n    color: #f4f7ff !important;\n    text-align: left;\n    cursor: pointer;\n  }\n\n  #md-mobile-configurator .md-medal-selected-img,\n  #md-mobile-configurator .md-medal-img {\n    width: 54px;\n    height: 54px;\n    border: 1px solid rgba(170,180,255,.18);\n    border-radius: 11px;\n    background: rgba(255,255,255,.05);\n    overflow: hidden;\n  }\n\n  #md-mobile-configurator .md-medal-selected-img img,\n  #md-mobile-configurator .md-medal-img img { width:100%;height:100%;object-fit:cover; }\n\n  #md-mobile-configurator .md-medal-selected-text {\n    min-width: 0;\n    color: var(--md-main);\n    font-size: 13px;\n    font-weight: 800;\n    overflow-wrap: anywhere;\n  }\n\n  #md-mobile-configurator .md-medal-arrow { color:#9fb7ff;transition:.18s ease; }\n  #md-mobile-configurator .md-medal-select.open .md-medal-arrow { transform:rotate(180deg); }\n\n  #md-mobile-configurator .md-medal-dropdown {\n    display: none !important;\n    position: static !important;\n    width: 100%;\n    max-height: none;\n    margin-top: 7px;\n    padding: 6px;\n    border: 1px solid rgba(150,170,255,.28) !important;\n    border-radius: 14px;\n    background: linear-gradient(145deg,#121426,#0c0f1d) !important;\n    overflow: visible !important;\n    opacity: 1 !important;\n    visibility: visible !important;\n    pointer-events: auto !important;\n  }\n\n  #md-mobile-configurator .md-medal-select.open .md-medal-dropdown {\n    display: grid !important;\n    gap: 6px;\n  }\n\n  #md-mobile-configurator .md-medal-option {\n    position: relative;\n    display: grid;\n    grid-template-columns: 54px minmax(0,1fr);\n    gap: 9px;\n    align-items: center;\n    width: 100%;\n    padding: 8px;\n    border: 1px solid rgba(255,255,255,.08) !important;\n    border-radius: 12px;\n    background: linear-gradient(145deg,rgba(22,24,39,.99),rgba(14,17,30,.99)) !important;\n    color: var(--md-soft) !important;\n    text-align: left;\n    cursor: pointer;\n  }\n\n  #md-mobile-configurator .md-medal-option.active { border-color: rgba(145,170,255,.55) !important; }\n  #md-mobile-configurator .md-medal-info { min-width:0; padding-right:0 !important; }\n  #md-mobile-configurator .md-medal-info strong { display:block;color:#fff;font-size:13px;line-height:1.2; }\n  #md-mobile-configurator .md-medal-info small { display:block;margin-top:3px;color:var(--md-soft);font-size:11px;line-height:1.3; }\n  #md-mobile-configurator .md-medal-price { grid-column:2;justify-self:start;margin-top:-3px; }\n\n  #md-mobile-configurator .md-selected-box,\n  #md-mobile-configurator .md-qty-main,\n  #md-mobile-configurator .md-live-price,\n  #md-mobile-configurator .md-saving-box,\n  #md-mobile-configurator .md-summary-box {\n    width: 100%;\n    margin-left: auto;\n    margin-right: auto;\n  }\n\n  #md-mobile-configurator .md-selected-box {\n    margin-bottom: 11px;\n    padding: 12px;\n    border: 1px solid rgba(255,255,255,.12);\n    border-radius: 15px;\n    background: rgba(255,255,255,.055);\n    text-align:center;\n  }\n  #md-mobile-configurator .md-selected-box span {display:block;color:var(--md-muted);font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;}\n  #md-mobile-configurator .md-selected-box strong {display:block;margin:4px 0 8px;color:#fff;font-size:16px;}\n  #md-mobile-configurator .md-change-btn {padding:7px 11px;border:1px solid rgba(255,255,255,.22)!important;border-radius:999px;background:transparent!important;color:var(--md-soft)!important;font-size:11px;font-weight:800;}\n\n  #md-mobile-configurator .md-qty-main { text-align:center; }\n  #md-mobile-configurator .md-qty-main label {display:block;margin-bottom:6px;color:#fff;font-size:14px;font-weight:800;}\n  #md-mobile-configurator input[type=\"number\"] {width:100%;min-height:52px;padding:10px 12px;border:1px solid rgba(155,170,255,.34);border-radius:14px;background:var(--md-field);color:#fff;text-align:center;font-size:18px;font-weight:800;}\n  #md-mobile-configurator input[type=\"number\"]:focus {outline:none;border-color:rgba(150,180,255,.7);box-shadow:0 0 0 3px rgba(135,183,255,.1);}\n  #md-mobile-configurator #mdm-qty-hint {display:block;margin-top:7px;color:var(--md-soft);font-size:11px;line-height:1.35;}\n  #md-mobile-configurator #mdm-qty-hint.md-qty-hint-error {color:#ffb3b3;font-weight:800;}\n  #md-mobile-configurator #mdm-qty-hint.md-qty-hint-ok {color:#bfffd0;font-weight:800;}\n\n  #md-mobile-configurator .md-tier-row {display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:11px;}\n  #md-mobile-configurator .md-tier-chip {min-height:40px;padding:6px;border:1px solid rgba(155,170,255,.25)!important;border-radius:11px;background:var(--md-field)!important;color:var(--md-soft)!important;font-size:11px;font-weight:800;}\n  #md-mobile-configurator .md-tier-chip.active {background:var(--md-pill)!important;color:#0e1020!important;border-color:#fff!important;}\n  #md-mobile-configurator .md-over-limit-note {margin:8px 3px 0;color:var(--md-muted);font-size:11px;line-height:1.35;text-align:center;}\n\n  #md-mobile-configurator .md-live-price {margin-top:12px;padding:13px;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:var(--md-card);text-align:center;}\n  #md-mobile-configurator .md-live-price p {margin:0 0 3px;color:var(--md-muted);font-size:11px;}\n  #md-mobile-configurator .md-live-price strong {display:block;margin-bottom:2px;color:#fff;font-size:22px;font-weight:900;}\n  #md-mobile-configurator .md-live-price span {color:var(--md-soft);font-size:12px;}\n  #md-mobile-configurator .md-saving-box {display:none;margin-top:9px;padding:11px;border:1px solid rgba(170,255,200,.16);border-radius:15px;background:linear-gradient(145deg,rgba(45,78,57,.84),rgba(30,54,42,.9));text-align:center;}\n  #md-mobile-configurator .md-saving-box.show {display:block;}\n  #md-mobile-configurator .md-saving-label {display:block;margin-bottom:4px;color:rgba(220,255,230,.72);font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;}\n  #md-mobile-configurator #mdm-saving-amount {display:block;color:#d9ffe7;font-size:17px;font-weight:900;}\n\n  #md-mobile-configurator .md-summary-box {padding:14px;border:1px solid rgba(255,255,255,.12);border-radius:17px;background:var(--md-card);}\n  #md-mobile-configurator .md-summary-box p {display:block;margin:9px 0;font-size:13px;line-height:1.35;}\n  #md-mobile-configurator .md-summary-box strong {color:#fff;}\n  #md-mobile-configurator .md-summary-box span {display:block;margin-top:2px;color:var(--md-soft);text-align:left;overflow-wrap:anywhere;}\n  #md-mobile-configurator .md-summary-box hr {border:0;border-top:1px solid rgba(255,255,255,.16);margin:12px 0;}\n  #md-mobile-configurator .md-total-line {font-size:16px!important;}\n  #md-mobile-configurator .md-total-line span {color:#fff;font-weight:900;}\n  #md-mobile-configurator .md-summary-box small {display:block;margin-top:12px;color:var(--md-muted);font-size:11px;line-height:1.4;text-align:left;}\n\n  #md-mobile-configurator .md-error {display:none;margin:11px 4px 0;color:#ffb3b3;font-size:12px;font-weight:800;line-height:1.35;text-align:center;}\n  #md-mobile-configurator .md-error.show {display:block;}\n\n  #md-mobile-configurator .md-nav-buttons {display:grid;grid-template-columns:1fr;gap:8px;margin-top:15px;}\n  #md-mobile-configurator .md-btn-prev,\n  #md-mobile-configurator .md-btn-next,\n  #md-mobile-configurator .md-request-btn {display:flex;align-items:center;justify-content:center;width:100%;min-height:50px;padding:10px 14px;border-radius:14px;font-size:13px;font-weight:900;text-decoration:none!important;cursor:pointer;}\n  #md-mobile-configurator .md-btn-prev {border:1px solid rgba(155,170,255,.34)!important;background:transparent!important;color:var(--md-soft)!important;order:2;}\n  #md-mobile-configurator .md-btn-next,\n  #md-mobile-configurator .md-request-btn {border:0!important;background:var(--md-pill)!important;color:#0e1020!important;order:1;}\n}\n\n@media (max-width: 380px) {\n  #md-mobile-configurator .md-panel-head h2 {font-size:24px;}\n  #md-mobile-configurator .md-card {padding:13px;}\n  #md-mobile-configurator .md-card h3 {font-size:17px;}\n  #md-mobile-configurator .md-tier-row {grid-template-columns:repeat(2,1fr);}\n}\n\n\n\/* =========================================================\n   CONTACT FORM 7 \u2013 MOBILE ANFRAGEFORMULAR\n   ========================================================= *\/\n@media (max-width: 720px) {\n  #md-mobile-configurator .md-request-form-container {\n    width: 100%;\n    margin: 16px auto 0;\n  }\n\n  #md-mobile-configurator .md-form-loading {\n    margin: 0;\n    padding: 12px;\n    color: var(--md-muted);\n    font-size: 12px;\n    text-align: center;\n  }\n\n  #md-mobile-configurator .md-request-form {\n    width: 100%;\n    padding: 14px;\n    border: 1px solid var(--md-border);\n    border-radius: 17px;\n    background: var(--md-card);\n    box-shadow: 0 12px 32px rgba(0,0,0,.3), inset 0 1px 0 rgba(255,255,255,.05);\n  }\n\n  #md-mobile-configurator .md-request-head {\n    margin: 0 0 16px;\n    text-align: left;\n  }\n\n  #md-mobile-configurator .md-request-head h3 {\n    margin: 0;\n    color: var(--md-main);\n    font-size: 23px;\n    line-height: 1.15;\n  }\n\n  #md-mobile-configurator .md-request-head p {\n    margin: 8px 0 0;\n    color: var(--md-soft);\n    font-size: 13px;\n    line-height: 1.45;\n  }\n\n  #md-mobile-configurator .md-form-grid {\n    display: grid;\n    grid-template-columns: 1fr;\n    gap: 12px;\n  }\n\n  #md-mobile-configurator .md-form-field,\n  #md-mobile-configurator .md-form-field-full {\n    min-width: 0;\n    margin-top: 12px;\n  }\n\n  #md-mobile-configurator .md-form-grid .md-form-field {\n    margin-top: 0;\n  }\n\n  #md-mobile-configurator .md-form-field label {\n    display: block;\n    color: var(--md-main);\n    font-size: 13px;\n    font-weight: 800;\n    line-height: 1.4;\n  }\n\n  #md-mobile-configurator .md-form-field input:not([type=\"checkbox\"]):not([type=\"submit\"]),\n  #md-mobile-configurator .md-form-field textarea {\n    display: block;\n    width: 100%;\n    min-height: 50px;\n    margin-top: 6px;\n    padding: 11px 12px;\n    border: 1px solid rgba(155,170,255,.34);\n    border-radius: 14px;\n    background: var(--md-field);\n    color: var(--md-main);\n    font-family: inherit;\n    font-size: 16px;\n    line-height: 1.35;\n    box-shadow: inset 0 1px 0 rgba(255,255,255,.04);\n  }\n\n  #md-mobile-configurator .md-form-field input:focus,\n  #md-mobile-configurator .md-form-field textarea:focus {\n    outline: none;\n    border-color: rgba(150,180,255,.7);\n    box-shadow: 0 0 0 3px rgba(135,183,255,.1);\n  }\n\n  #md-mobile-configurator .md-form-field textarea {\n    min-height: 125px;\n    resize: vertical;\n  }\n\n  #md-mobile-configurator .md-form-field input[type=\"file\"] {\n    padding: 9px;\n    font-size: 13px;\n  }\n\n  #md-mobile-configurator .md-form-field small {\n    display: block;\n    margin-top: 6px;\n    color: var(--md-muted);\n    font-size: 11px;\n    line-height: 1.4;\n  }\n\n  #md-mobile-configurator .md-form-privacy {\n    margin-top: 14px;\n    padding: 11px;\n    border: 1px solid rgba(255,255,255,.12);\n    border-radius: 14px;\n    background: rgba(255,255,255,.035);\n    color: var(--md-soft);\n    font-size: 12px;\n    line-height: 1.45;\n  }\n\n  #md-mobile-configurator .md-form-privacy .wpcf7-list-item {\n    margin: 0;\n  }\n\n  #md-mobile-configurator .md-form-privacy label {\n    display: grid;\n    grid-template-columns: 20px minmax(0,1fr);\n    gap: 8px;\n    align-items: start;\n  }\n\n  #md-mobile-configurator .md-form-privacy input[type=\"checkbox\"] {\n    width: 19px;\n    height: 19px;\n    margin: 1px 0 0;\n    accent-color: #9e94ff;\n  }\n\n  #md-mobile-configurator .md-form-privacy a {\n    color: #b9caff;\n    text-decoration: underline;\n  }\n\n  #md-mobile-configurator .md-form-submit {\n    margin-top: 14px;\n  }\n\n  #md-mobile-configurator .md-form-submit-button {\n    display: flex;\n    align-items: center;\n    justify-content: center;\n    width: 100%;\n    min-height: 52px;\n    padding: 11px 14px;\n    border: 0 !important;\n    border-radius: 14px;\n    background: var(--md-pill) !important;\n    color: #0e1020 !important;\n    font-family: inherit;\n    font-size: 13px;\n    font-weight: 900;\n    cursor: pointer;\n  }\n\n  #md-mobile-configurator .md-form-required {\n    margin: 8px 0 0;\n    color: var(--md-muted);\n    font-size: 10px;\n    text-align: center;\n  }\n\n  #md-mobile-configurator .wpcf7-spinner {\n    display: block;\n    margin: 10px auto 0;\n  }\n\n  #md-mobile-configurator .wpcf7-not-valid-tip {\n    display: block;\n    margin-top: 5px;\n    color: #ffb3b3;\n    font-size: 11px;\n    font-weight: 700;\n  }\n\n  #md-mobile-configurator .wpcf7-response-output {\n    margin: 12px 0 0 !important;\n    padding: 10px 11px !important;\n    border-radius: 13px;\n    color: var(--md-main);\n    font-size: 12px;\n    line-height: 1.4;\n  }\n\n  #md-mobile-configurator .wpcf7 form.sent .wpcf7-response-output {\n    border-color: rgba(170,255,200,.35);\n    background: rgba(45,78,57,.55);\n  }\n\n  #md-mobile-configurator .wpcf7 form.invalid .wpcf7-response-output,\n  #md-mobile-configurator .wpcf7 form.failed .wpcf7-response-output {\n    border-color: rgba(255,179,179,.35);\n    background: rgba(100,35,45,.35);\n  }\n}\n\n<\/style>\n<script>\n(function () {\n  const root = document.getElementById(\"md-mobile-configurator\");\n  if (!root) return;\n\n  \/* Alte Desktop-Overlays sofort entfernen, falls sie noch aktiv sind. *\/\n  const desktopRoot = document.getElementById(\"md-configurator\");\n  if (desktopRoot) {\n    desktopRoot.classList.remove(\"md-dropdown-active\");\n    desktopRoot.querySelectorAll(\".md-medal-select.open\").forEach(function (select) {\n      select.classList.remove(\"open\");\n    });\n  }\n\n  root.style.pointerEvents = \"auto\";\n\n  const state = {\n    currentStep: 1,\n    maxReachedStep: 1,\n    planKey: \"\",\n    planLabel: \"\",\n    variant: \"\",\n    band: \"\",\n    bandPrice: 0,\n    quantity: \"\",\n    quantityRange: \"\",\n    design: \"\",\n    designPrice: 0\n  };\n\n  const planPrices = {\n    form_fertig: {\n      label: \"Individueller Druck & bestehende Form\",\n      tiers: [\n        { max: 150, price: 5 },\n        { max: 300, price: 4.8 },\n        { max: 500, price: 4.5 },\n        { max: 1000, price: 4.25 },\n        { max: 2000, price: 4 }\n      ]\n    },\n    form_wunsch: {\n      label: \"Individuelle Form & individueller Druck\",\n      tiers: [\n        { max: 150, price: 11 },\n        { max: 300, price: 10 },\n        { max: 500, price: 9 },\n        { max: 1000, price: 8 },\n        { max: 2000, price: 7 }\n      ]\n    }\n  };\n\n  const ranges = [\n    { max: 150, label: \"bis 150\" },\n    { max: 300, label: \"bis 300\" },\n    { max: 500, label: \"bis 500\" },\n    { max: 1000, label: \"bis 1000\" },\n    { max: 2000, label: \"bis 2000\" }\n  ];\n\n  function formatEuro(value) {\n    return value.toLocaleString(\"de-DE\", {\n      style: \"currency\",\n      currency: \"EUR\"\n    });\n  }\n\n  function getRangeForQuantity(qty) {\n    const value = Number(qty);\n    if (!value || value < 1 || value > 2000) return null;\n    return ranges.find(r => value <= r.max) || null;\n  }\n\n  function getBasePrice() {\n    if (!state.planKey || !state.quantityRange) return 0;\n\n    const plan = planPrices[state.planKey];\n    const tier = plan.tiers.find(t => Number(state.quantityRange) <= t.max);\n\n    return tier ? tier.price : 0;\n  }\n\n  function calculatePrice() {\n    if (!state.planKey || !state.quantity) return null;\n\n    const base = getBasePrice();\n    if (!base) return null;\n\n    const unit = base + Number(state.bandPrice || 0) + Number(state.designPrice || 0);\n    const total = unit * Number(state.quantity);\n\n    return { unit, total };\n  }\n\n  function calculateSavings() {\n    if (!state.planKey || !state.quantity || !state.quantityRange) return null;\n\n    const plan = planPrices[state.planKey];\n    const firstTierPrice = plan.tiers[0].price;\n    const currentPrice = getBasePrice();\n    const savingsPerUnit = firstTierPrice - currentPrice;\n\n    if (savingsPerUnit <= 0) return null;\n\n    return {\n      total: savingsPerUnit * Number(state.quantity),\n      perUnit: savingsPerUnit\n    };\n  }\n\n  function clearErrors() {\n    root.querySelectorAll(\".md-error\").forEach(function (error) {\n      error.classList.remove(\"show\");\n    });\n  }\n\n  function showError(id) {\n    const el = root.querySelector(\"#\" + id);\n    if (el) el.classList.add(\"show\");\n  }\n\n  function setQtyHint(message, type) {\n    const hint = root.querySelector(\"#mdm-qty-hint\");\n    if (!hint) return;\n\n    hint.textContent = message;\n    hint.classList.remove(\"md-qty-hint-error\", \"md-qty-hint-ok\");\n\n    if (type === \"error\") hint.classList.add(\"md-qty-hint-error\");\n    if (type === \"ok\") hint.classList.add(\"md-qty-hint-ok\");\n  }\n\n  function updateQuantityFromInput(showMessage = true) {\n    const input = root.querySelector(\"#mdm-qty-input\");\n    if (!input) return false;\n\n    const value = parseInt(input.value, 10);\n    const range = getRangeForQuantity(value);\n\n    root.querySelectorAll(\".md-tier-chip\").forEach(function (chip) {\n      chip.classList.remove(\"active\");\n    });\n\n    if (!range) {\n      state.quantity = \"\";\n      state.quantityRange = \"\";\n\n      if (input.value !== \"\" && showMessage) {\n        setQtyHint(\"Bitte gib eine St\u00fcckzahl zwischen 1 und 2000 ein.\", \"error\");\n      }\n\n      updateLivePrice();\n      updateMiniSummary();\n      return false;\n    }\n\n    state.quantity = value;\n    state.quantityRange = range.max;\n\n    const activeChip = root.querySelector('.md-tier-chip[data-max=\"' + range.max + '\"]');\n    if (activeChip) activeChip.classList.add(\"active\");\n\n    if (showMessage) {\n      setQtyHint(\"Preisstaffel automatisch erkannt: \" + range.label + \".\", \"ok\");\n    }\n\n    updateLivePrice();\n    updateMiniSummary();\n    return true;\n  }\n\n  function updateLivePrice() {\n    const price = calculatePrice();\n\n    const liveTotal = root.querySelector(\"#mdm-live-total\");\n    const liveUnit = root.querySelector(\"#mdm-live-unit\");\n    const liveTotal4 = root.querySelector(\"#mdm-live-total-step4\");\n    const liveUnit4 = root.querySelector(\"#mdm-live-unit-step4\");\n    const savingBox = root.querySelector(\"#mdm-saving-box\");\n    const savingAmount = root.querySelector(\"#mdm-saving-amount\");\n\n    if (!price) {\n      if (liveTotal) liveTotal.textContent = \"\u2013\";\n      if (liveUnit) liveUnit.textContent = \"Bitte St\u00fcckzahl eingeben\";\n      if (liveTotal4) liveTotal4.textContent = \"\u2013\";\n      if (liveUnit4) liveUnit4.textContent = \"Bitte Design w\u00e4hlen\";\n      if (savingBox) savingBox.classList.remove(\"show\");\n      return;\n    }\n\n    if (liveTotal) liveTotal.textContent = formatEuro(price.total);\n    if (liveUnit) liveUnit.textContent = formatEuro(price.unit) + \" pro St\u00fcck\";\n\n    if (liveTotal4) liveTotal4.textContent = formatEuro(price.total);\n    if (liveUnit4) liveUnit4.textContent = formatEuro(price.unit) + \" pro St\u00fcck\";\n\n    const savings = calculateSavings();\n\n    if (savings && savingBox && savingAmount) {\n      savingBox.classList.add(\"show\");\n      savingAmount.innerHTML =\n        \"Du sparst ca. \" +\n        formatEuro(savings.total) +\n        \"<br><small style='font-size:.9rem;opacity:.82;'>(\" +\n        formatEuro(savings.perUnit) +\n        \" pro Medaille)<\/small>\";\n    } else if (savingBox) {\n      savingBox.classList.remove(\"show\");\n    }\n  }\n\n  function updateMiniSummary() {\n    const miniMedal = root.querySelector(\"#mdm-mini-medal\");\n    const miniQty = root.querySelector(\"#mdm-mini-qty\");\n    const miniPrice = root.querySelector(\"#mdm-mini-price\");\n    const price = calculatePrice();\n\n    if (miniMedal) {\n      miniMedal.textContent =\n        state.variant ||\n        (state.planKey === \"form_wunsch\" ? \"Eigene Form\" : \"Noch keine Medaille gew\u00e4hlt\");\n    }\n\n    if (miniQty) {\n      miniQty.textContent = state.quantity ? state.quantity + \" St\u00fcck\" : \"Menge offen\";\n    }\n\n    if (miniPrice) {\n      miniPrice.textContent = price ? formatEuro(price.total) : \"Preis offen\";\n    }\n  }\n\n  function updateSelectedMedalBox() {\n    const selected = root.querySelector(\"#mdm-selected-medal-name\");\n\n    if (!selected) return;\n\n    selected.textContent =\n      state.variant ||\n      (state.planKey === \"form_wunsch\" ? \"Eigene Form & individueller Druck\" : \"\u2013\");\n  }\n\n  function updateSummary() {\n    const price = calculatePrice();\n\n    root.querySelector(\"#mdm-summary-plan\").textContent = state.planLabel || \"\u2013\";\n    root.querySelector(\"#mdm-summary-variant\").textContent =\n      state.variant || (state.planKey === \"form_wunsch\" ? \"Eigene Form\" : \"\u2013\");\n    root.querySelector(\"#mdm-summary-qty\").textContent = state.quantity ? state.quantity + \" St\u00fcck\" : \"\u2013\";\n    root.querySelector(\"#mdm-summary-band\").textContent = state.band || \"\u2013\";\n    root.querySelector(\"#mdm-summary-design\").textContent = state.design || \"\u2013\";\n\n    root.querySelector(\"#mdm-summary-unit\").textContent = price ? formatEuro(price.unit) : \"\u2013\";\n    root.querySelector(\"#mdm-summary-total\").textContent = price ? formatEuro(price.total) : \"\u2013\";\n  }\n\n  function moveContactFormIntoMobileConfigurator() {\n    if (!window.matchMedia(\"(max-width: 720px)\").matches) return false;\n\n    const target = root.querySelector(\"#mdm-cf7-target\");\n    if (!target) return false;\n\n    \/* Optional: Formular-ID aus dem CF7-Shortcode eintragen. *\/\n    const CONTACT_FORM_7_ID = \"\";\n    let source = null;\n\n    if (CONTACT_FORM_7_ID) {\n      const idField = document.querySelector(\n        '.wpcf7 input[name=\"_wpcf7\"][value=\"' + CONTACT_FORM_7_ID + '\"]'\n      );\n      source = idField ? idField.closest(\".wpcf7\") : null;\n    }\n\n    if (!source) {\n      source = Array.from(document.querySelectorAll(\".wpcf7\")).find(function (form) {\n        return !target.contains(form);\n      }) || target.querySelector(\".wpcf7\");\n    }\n\n    if (!source) return false;\n    if (target.contains(source)) return true;\n\n    const sourceWidget = source.closest(\n      \".elementor-widget-shortcode, .elementor-widget-wp-widget-contact-form-7\"\n    );\n\n    target.innerHTML = \"\";\n    target.appendChild(source);\n\n    if (sourceWidget && !root.contains(sourceWidget)) {\n      sourceWidget.style.display = \"none\";\n      sourceWidget.setAttribute(\"aria-hidden\", \"true\");\n    }\n\n    return true;\n  }\n\n  function updateRequestForm() {\n    const price = calculatePrice();\n    const formValues = {\n      \"#md-form-plan\": state.planLabel || \"\",\n      \"#md-form-variant\": state.variant || (state.planKey === \"form_wunsch\" ? \"Eigene Form\" : \"\"),\n      \"#md-form-quantity\": state.quantity ? state.quantity + \" St\u00fcck\" : \"\",\n      \"#md-form-band\": state.band || \"\",\n      \"#md-form-design\": state.design || \"\",\n      \"#md-form-unit\": price ? formatEuro(price.unit) : \"\",\n      \"#md-form-total\": price ? formatEuro(price.total) : \"\"\n    };\n\n    Object.entries(formValues).forEach(function ([selector, value]) {\n      const field = root.querySelector(selector);\n      if (!field) return;\n      field.value = value;\n      field.dispatchEvent(new Event(\"input\", { bubbles: true }));\n      field.dispatchEvent(new Event(\"change\", { bubbles: true }));\n    });\n  }\n\n  function prepareMobileContactForm(attempt) {\n    const currentAttempt = Number(attempt || 0);\n\n    if (moveContactFormIntoMobileConfigurator()) {\n      updateRequestForm();\n      return;\n    }\n\n    if (currentAttempt < 20) {\n      window.setTimeout(function () {\n        prepareMobileContactForm(currentAttempt + 1);\n      }, 250);\n    }\n  }\n\n  function canEnterStep(step) {\n    return step <= state.maxReachedStep;\n  }\n\n  function goToStep(step) {\n    step = Number(step);\n\n    if (!canEnterStep(step)) return;\n\n    state.currentStep = step;\n\n    root.querySelectorAll(\".md-panel\").forEach(function (panel) {\n      panel.classList.toggle(\"active\", Number(panel.dataset.step) === step);\n    });\n\n    root.querySelectorAll(\".md-progress-step\").forEach(function (progress) {\n      const progressStep = Number(progress.dataset.step);\n\n      progress.classList.toggle(\"active\", progressStep === step);\n      progress.classList.toggle(\"done\", progressStep < step && progressStep <= state.maxReachedStep);\n    });\n\n    const medalSelect = root.querySelector(\".md-medal-select\");\n    if (medalSelect) medalSelect.classList.remove(\"open\");\n    root.classList.remove(\"md-dropdown-active\");\n\n    updateSelectedMedalBox();\n    updateLivePrice();\n    updateMiniSummary();\n\n    if (step === 5) {\n      updateSummary();\n      window.setTimeout(function () {\n        prepareMobileContactForm(0);\n        updateRequestForm();\n      }, 100);\n    }\n  }\n\n  function allowNextStep(step) {\n    state.maxReachedStep = Math.max(state.maxReachedStep, Number(step));\n  }\n\n  function validateCurrentStep(targetStep) {\n    clearErrors();\n\n    if (targetStep === 2) {\n      if (!state.planKey || (state.planKey === \"form_fertig\" && !state.variant)) {\n        showError(\"mdm-error-step1\");\n        return false;\n      }\n    }\n\n    if (targetStep === 3) {\n      if (!updateQuantityFromInput(true)) {\n        showError(\"mdm-error-step2\");\n        return false;\n      }\n    }\n\n    if (targetStep === 4) {\n      if (!state.band) {\n        showError(\"mdm-error-step3\");\n        return false;\n      }\n    }\n\n    if (targetStep === 5) {\n      if (!state.design) {\n        showError(\"mdm-error-step4\");\n        return false;\n      }\n    }\n\n    return true;\n  }\n\n  function resetMedalDropdown() {\n    state.variant = \"\";\n\n    root.querySelectorAll(\".md-medal-option\").forEach(function (option) {\n      option.classList.remove(\"active\");\n    });\n\n    const selectedText = root.querySelector(\".md-medal-selected-text\");\n    const selectedImg = root.querySelector(\".md-medal-selected-img\");\n    const medalSelect = root.querySelector(\".md-medal-select\");\n\n    if (selectedText) selectedText.textContent = \"Bitte Medaille ausw\u00e4hlen\";\n    if (selectedImg) selectedImg.innerHTML = \"\";\n    if (medalSelect) medalSelect.classList.remove(\"open\");\n    root.classList.remove(\"md-dropdown-active\");\n  }\n\n  root.querySelectorAll(\"[data-plan]\").forEach(function (card) {\n    card.addEventListener(\"click\", function (e) {\n\n      if (e.target.closest(\".md-medal-select\")) {\n        return;\n      }\n\n      root.querySelectorAll(\"[data-plan]\").forEach(function (c) {\n        c.classList.remove(\"active\");\n      });\n\n      this.classList.add(\"active\");\n\n      state.planKey = this.dataset.plan;\n      state.planLabel = planPrices[state.planKey].label;\n\n      if (state.planKey === \"form_wunsch\") {\n        resetMedalDropdown();\n        clearErrors();\n      }\n\n      updateSelectedMedalBox();\n      updateMiniSummary();\n      updateLivePrice();\n    });\n  });\n\n  const medalSelect = root.querySelector(\".md-medal-select\");\n  const medalToggle = root.querySelector(\".md-medal-select-toggle\");\n  const medalSelectedText = root.querySelector(\".md-medal-selected-text\");\n  const medalSelectedImg = root.querySelector(\".md-medal-selected-img\");\n\n  if (medalToggle && medalSelect) {\n    medalToggle.addEventListener(\"click\", function (e) {\n      e.preventDefault();\n      e.stopPropagation();\n\n      const existingFormCard = root.querySelector('[data-plan=\"form_fertig\"]');\n\n      root.querySelectorAll(\"[data-plan]\").forEach(function (c) {\n        c.classList.remove(\"active\");\n      });\n\n      if (existingFormCard) {\n        existingFormCard.classList.add(\"active\");\n      }\n\n      state.planKey = \"form_fertig\";\n      state.planLabel = planPrices.form_fertig.label;\n\n      medalSelect.classList.toggle(\"open\");\n\n      if (medalSelect.classList.contains(\"open\")) {\n        root.classList.add(\"md-dropdown-active\");\n      } else {\n        root.classList.remove(\"md-dropdown-active\");\n      }\n\n      clearErrors();\n      updateMiniSummary();\n      updateLivePrice();\n    });\n  }\n\n  root.querySelectorAll(\".md-medal-option\").forEach(function (option) {\n    option.addEventListener(\"click\", function (e) {\n      e.preventDefault();\n      e.stopPropagation();\n\n      const existingFormCard = root.querySelector('[data-plan=\"form_fertig\"]');\n\n      root.querySelectorAll(\"[data-plan]\").forEach(function (c) {\n        c.classList.remove(\"active\");\n      });\n\n      if (existingFormCard) {\n        existingFormCard.classList.add(\"active\");\n      }\n\n      root.querySelectorAll(\".md-medal-option\").forEach(function (o) {\n        o.classList.remove(\"active\");\n      });\n\n      this.classList.add(\"active\");\n\n      state.planKey = \"form_fertig\";\n      state.planLabel = planPrices.form_fertig.label;\n      state.variant = this.dataset.variant;\n\n      const titleElement = this.querySelector(\"strong\");\n      const title = titleElement ? titleElement.textContent : this.dataset.variant;\n      const img = this.querySelector(\"img\");\n\n      if (medalSelectedText) {\n        medalSelectedText.textContent = title;\n      }\n\n      if (medalSelectedImg && img) {\n        medalSelectedImg.innerHTML =\n          '<img decoding=\"async\" src=\"' + img.src + '\" alt=\"' + img.alt + '\">';\n      }\n\n      medalSelect.classList.remove(\"open\");\n      root.classList.remove(\"md-dropdown-active\");\n\n      clearErrors();\n      updateSelectedMedalBox();\n      updateMiniSummary();\n      updateLivePrice();\n    });\n  });\n\n  document.addEventListener(\"click\", function (e) {\n    if (!medalSelect) return;\n\n    if (!medalSelect.contains(e.target)) {\n      medalSelect.classList.remove(\"open\");\n      root.classList.remove(\"md-dropdown-active\");\n    }\n  });\n\n  const qtyInput = root.querySelector(\"#mdm-qty-input\");\n\n  if (qtyInput) {\n    qtyInput.addEventListener(\"input\", function () {\n      updateQuantityFromInput(true);\n      clearErrors();\n    });\n  }\n\n  root.querySelectorAll(\".md-tier-chip\").forEach(function (chip) {\n    chip.addEventListener(\"click\", function () {\n      if (!qtyInput) return;\n\n      qtyInput.value = this.dataset.example;\n      updateQuantityFromInput(true);\n      clearErrors();\n    });\n  });\n\n  root.querySelectorAll(\"[data-band]\").forEach(function (card) {\n    card.addEventListener(\"click\", function () {\n      root.querySelectorAll(\"[data-band]\").forEach(function (c) {\n        c.classList.remove(\"active\");\n      });\n\n      this.classList.add(\"active\");\n\n      state.band = this.dataset.band;\n      state.bandPrice = parseFloat(this.dataset.bandPrice || 0);\n\n      clearErrors();\n      updateLivePrice();\n      updateMiniSummary();\n    });\n  });\n\n  root.querySelectorAll(\"[data-design]\").forEach(function (card) {\n    card.addEventListener(\"click\", function () {\n      root.querySelectorAll(\"[data-design]\").forEach(function (c) {\n        c.classList.remove(\"active\");\n      });\n\n      this.classList.add(\"active\");\n\n      state.design = this.dataset.design;\n      state.designPrice = parseFloat(this.dataset.designPrice || 0);\n\n      clearErrors();\n      updateLivePrice();\n      updateMiniSummary();\n    });\n  });\n\n  root.querySelectorAll(\"[data-next]\").forEach(function (btn) {\n    btn.addEventListener(\"click\", function () {\n      const target = Number(this.dataset.next);\n\n      if (!validateCurrentStep(target)) return;\n\n      allowNextStep(target);\n      goToStep(target);\n    });\n  });\n\n  root.querySelectorAll(\"[data-prev]\").forEach(function (btn) {\n    btn.addEventListener(\"click\", function () {\n      goToStep(this.dataset.prev);\n    });\n  });\n\n  root.querySelectorAll(\"[data-go]\").forEach(function (btn) {\n    btn.addEventListener(\"click\", function () {\n      goToStep(this.dataset.go);\n    });\n  });\n\n  root.querySelectorAll(\".md-progress-step\").forEach(function (btn) {\n    btn.addEventListener(\"click\", function () {\n      goToStep(this.dataset.step);\n    });\n  });\n\n  function initializeMobileContactForm() {\n    if (!window.matchMedia(\"(max-width: 720px)\").matches) return;\n    prepareMobileContactForm(0);\n  }\n\n  if (document.readyState === \"loading\") {\n    document.addEventListener(\"DOMContentLoaded\", function () {\n      window.setTimeout(initializeMobileContactForm, 400);\n    });\n  } else {\n    window.setTimeout(initializeMobileContactForm, 400);\n  }\n\n  window.addEventListener(\"load\", function () {\n    window.setTimeout(initializeMobileContactForm, 800);\n  });\n\n  window.addEventListener(\"resize\", function () {\n    window.setTimeout(initializeMobileContactForm, 150);\n  });\n\n  \/* Elementor und CF7 k\u00f6nnen verz\u00f6gert laden. Mobile \u00fcbernimmt das Formular\n     deshalb nach dem Laden nochmals und verschiebt es in den unsichtbaren Schritt 5. *\/\n  const mdmFormObserver = new MutationObserver(function () {\n    if (!window.matchMedia(\"(max-width: 720px)\").matches) return;\n    if (moveContactFormIntoMobileConfigurator()) {\n      updateRequestForm();\n    }\n  });\n\n  mdmFormObserver.observe(document.body, { childList: true, subtree: true });\n  window.setTimeout(function () { mdmFormObserver.disconnect(); }, 7000);\n\n  updateMiniSummary();\n})();\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c9acef0 elementor-widget elementor-widget-shortcode\" data-id=\"c9acef0\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\">\n<div class=\"wpcf7 no-js\" id=\"wpcf7-f1222-o1\" lang=\"de-DE\" dir=\"ltr\" data-wpcf7-id=\"1222\">\n<div class=\"screen-reader-response\"><p role=\"status\" aria-live=\"polite\" aria-atomic=\"true\"><\/p> <ul><\/ul><\/div>\n<form action=\"\/home\/wp-json\/wp\/v2\/pages\/96#wpcf7-f1222-o1\" method=\"post\" class=\"wpcf7-form init\" aria-label=\"Kontaktformular\" enctype=\"multipart\/form-data\" novalidate=\"novalidate\" data-status=\"init\">\n<fieldset class=\"hidden-fields-container\"><input type=\"hidden\" name=\"_wpcf7\" value=\"1222\" \/><input type=\"hidden\" name=\"_wpcf7_version\" value=\"6.1.6\" \/><input type=\"hidden\" name=\"_wpcf7_locale\" value=\"de_DE\" \/><input type=\"hidden\" name=\"_wpcf7_unit_tag\" value=\"wpcf7-f1222-o1\" \/><input type=\"hidden\" name=\"_wpcf7_container_post\" value=\"0\" \/><input type=\"hidden\" name=\"_wpcf7_posted_data_hash\" value=\"\" \/>\n<\/fieldset>\n<div class=\"md-request-form\">\n\t<div class=\"md-request-head\">\n\t\t<p><span class=\"md-kicker\">Fast geschafft<\/span>\n\t\t<\/p>\n\t\t<h3>Unverbindliche Anfrage senden\n\t\t<\/h3>\n\t\t<p><br \/>\nTrage deine Kontaktdaten ein. Deine Medaillen-Konfiguration<br \/>\nwird automatisch mitgesendet.\n\t\t<\/p>\n\t<\/div>\n\t<div class=\"md-form-grid\">\n\t\t<div class=\"md-form-field\">\n\t\t\t<p><label><br \/>\nName *<br \/>\n<span class=\"wpcf7-form-control-wrap\" data-name=\"md-name\"><input size=\"40\" maxlength=\"400\" class=\"wpcf7-form-control wpcf7-text wpcf7-validates-as-required\" autocomplete=\"name\" aria-required=\"true\" aria-invalid=\"false\" placeholder=\"Vor- und Nachname\" value=\"\" type=\"text\" name=\"md-name\" \/><\/span><br \/>\n<\/label>\n\t\t\t<\/p>\n\t\t<\/div>\n\t\t<div class=\"md-form-field\">\n\t\t\t<p><label><br \/>\nE-Mail-Adresse *<br \/>\n<span class=\"wpcf7-form-control-wrap\" data-name=\"md-email\"><input size=\"40\" maxlength=\"400\" class=\"wpcf7-form-control wpcf7-email wpcf7-validates-as-required wpcf7-text wpcf7-validates-as-email\" autocomplete=\"email\" aria-required=\"true\" aria-invalid=\"false\" placeholder=\"name@beispiel.de\" value=\"\" type=\"email\" name=\"md-email\" \/><\/span><br \/>\n<\/label>\n\t\t\t<\/p>\n\t\t<\/div>\n\t\t<div class=\"md-form-field\">\n\t\t\t<p><label><br \/>\nTelefonnummer<br \/>\n<span class=\"wpcf7-form-control-wrap\" data-name=\"md-phone\"><input size=\"40\" maxlength=\"400\" class=\"wpcf7-form-control wpcf7-tel wpcf7-text wpcf7-validates-as-tel\" autocomplete=\"tel\" aria-invalid=\"false\" placeholder=\"Optional\" value=\"\" type=\"tel\" name=\"md-phone\" \/><\/span><br \/>\n<\/label>\n\t\t\t<\/p>\n\t\t<\/div>\n\t\t<div class=\"md-form-field\">\n\t\t\t<p><label><br \/>\nVerein oder Unternehmen<br \/>\n<span class=\"wpcf7-form-control-wrap\" data-name=\"md-company\"><input size=\"40\" maxlength=\"400\" class=\"wpcf7-form-control wpcf7-text\" autocomplete=\"organization\" aria-invalid=\"false\" placeholder=\"Optional\" value=\"\" type=\"text\" name=\"md-company\" \/><\/span><br \/>\n<\/label>\n\t\t\t<\/p>\n\t\t<\/div>\n\t\t<div class=\"md-form-field\">\n\t\t\t<p><label><br \/>\nGew\u00fcnschter Liefertermin<br \/>\n<span class=\"wpcf7-form-control-wrap\" data-name=\"md-date\"><input class=\"wpcf7-form-control wpcf7-date wpcf7-validates-as-date\" aria-invalid=\"false\" value=\"\" type=\"date\" name=\"md-date\" \/><\/span><br \/>\n<\/label>\n\t\t\t<\/p>\n\t\t<\/div>\n\t\t<div class=\"md-form-field\">\n\t\t\t<p><label><br \/>\nVeranstaltungsart<br \/>\n<span class=\"wpcf7-form-control-wrap\" data-name=\"md-event\"><input size=\"40\" maxlength=\"400\" class=\"wpcf7-form-control wpcf7-text\" aria-invalid=\"false\" placeholder=\"z. B. Fu\u00dfballturnier oder Firmenlauf\" value=\"\" type=\"text\" name=\"md-event\" \/><\/span><br \/>\n<\/label>\n\t\t\t<\/p>\n\t\t<\/div>\n\t<\/div>\n\t<div class=\"md-form-field md-form-field-full\">\n\t\t<p><label><br \/>\nLogo, Design oder Vorlage hochladen<br \/>\n<span class=\"wpcf7-form-control-wrap\" data-name=\"md-file\"><input size=\"40\" class=\"wpcf7-form-control wpcf7-file\" accept=\".jpg,.jpeg,.png,.pdf,.ai,.eps,.svg,.zip\" aria-invalid=\"false\" type=\"file\" name=\"md-file\" \/><\/span><br \/>\n<\/label>\n\t\t<\/p>\n\t\t<p><small><br \/>\nM\u00f6gliche Formate: JPG, PNG, PDF, AI, EPS, SVG oder ZIP.<br \/>\nMaximale Dateigr\u00f6\u00dfe: 10 MB.<br \/>\n<\/small>\n\t\t<\/p>\n\t<\/div>\n\t<div class=\"md-form-field md-form-field-full\">\n\t\t<p><label><br \/>\nNachricht oder besondere W\u00fcnsche<br \/>\n<span class=\"wpcf7-form-control-wrap\" data-name=\"md-message\"><textarea cols=\"5\" rows=\"40\" maxlength=\"2000\" class=\"wpcf7-form-control wpcf7-textarea\" aria-invalid=\"false\" placeholder=\"Gibt es besondere W\u00fcnsche zur Form, Farbe, Gestaltung oder Lieferung?\" name=\"md-message\"><\/textarea><\/span><br \/>\n<\/label>\n\t\t<\/p>\n\t<\/div>\n<input class=\"wpcf7-form-control wpcf7-hidden\" id=\"md-form-plan\" value=\"\" type=\"hidden\" name=\"md-plan\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" id=\"md-form-variant\" value=\"\" type=\"hidden\" name=\"md-variant\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" id=\"md-form-quantity\" value=\"\" type=\"hidden\" name=\"md-quantity\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" id=\"md-form-band\" value=\"\" type=\"hidden\" name=\"md-band\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" id=\"md-form-design\" value=\"\" type=\"hidden\" name=\"md-design\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" id=\"md-form-unit\" value=\"\" type=\"hidden\" name=\"md-unit-price\" \/>\n<input class=\"wpcf7-form-control wpcf7-hidden\" id=\"md-form-total\" value=\"\" type=\"hidden\" name=\"md-total-price\" \/>\n\t<div class=\"md-form-privacy\">\n\t\t<p><span class=\"wpcf7-form-control-wrap\" data-name=\"md-privacy\"><span class=\"wpcf7-form-control wpcf7-acceptance\"><span class=\"wpcf7-list-item\"><label><input type=\"checkbox\" name=\"md-privacy\" value=\"1\" aria-invalid=\"false\" \/><span class=\"wpcf7-list-item-label\">Ich habe die\n      <a href=\"\/datenschutz\/\" target=\"_blank\" rel=\"noopener\">\n        Datenschutzerkl\u00e4rung\n      <\/a>\n      gelesen und stimme der Verarbeitung meiner Angaben zur Bearbeitung\n      der Anfrage zu.<\/span><\/label><\/span><\/span><\/span>\n\t\t<\/p>\n\t<\/div>\n\t<div class=\"md-form-submit\">\n\t\t<p><input class=\"wpcf7-form-control wpcf7-submit has-spinner md-form-submit-button\" type=\"submit\" value=\"Unverbindliche Anfrage senden\" \/>\n\t\t<\/p>\n\t<\/div>\n\t<p class=\"md-form-required\">* Pflichtfelder\n\t<\/p>\n<\/div><input type=\"hidden\" id=\"ct_checkjs_cf7_05f971b5ec196b8c65b75d2ef8267331\" name=\"ct_checkjs_cf7\" value=\"0\" \/><script >setTimeout(function(){var ct_input_name = \"ct_checkjs_cf7_05f971b5ec196b8c65b75d2ef8267331\";if (document.getElementById(ct_input_name) !== null) {var ct_input_value = document.getElementById(ct_input_name).value;document.getElementById(ct_input_name).value = document.getElementById(ct_input_name).value.replace(ct_input_value, '5e72d78b4f3304465fd45995b8779967dec4d5361adb0fec7a40ed96015b2538');}}, 1000);<\/script><input\n                    class=\"apbct_special_field apbct_email_id__wp_contact_form_7\"\n                    name=\"apbct__email_id__wp_contact_form_7\"\n                    aria-label=\"apbct__label_id__wp_contact_form_7\"\n                    type=\"text\" size=\"30\" maxlength=\"200\" autocomplete=\"off\"\n                    value=\"\"\n                \/><div class=\"wpcf7-response-output\" aria-hidden=\"true\"><\/div>\n<input\n                    class=\"apbct_special_field apbct_email_id__elementor_form\"\n                    name=\"apbct__email_id__elementor_form\"\n                    aria-label=\"apbct__label_id__elementor_form\"\n                    type=\"text\" size=\"30\" maxlength=\"200\" autocomplete=\"off\"\n                    value=\"\"\n                \/><\/form>\n<\/div>\n<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-f77f64a e-con-full e-flex e-con e-child\" data-id=\"f77f64a\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-40e7990 elementor-widget elementor-widget-html\" data-id=\"40e7990\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t\n<section class=\"md-seo-text\">\n  <div class=\"md-seo-inner\">\n\n    <span class=\"md-seo-kicker\">MEDAILLEN NACH WUNSCH<\/span>\n\n    <h2>\n      Individuelle Medaillen bedrucken lassen\n      <span>mit Logo, Motiv oder eigenem Design<\/span>\n    <\/h2>\n\n    <div class=\"md-seo-grid\">\n\n      <article class=\"md-seo-card\">\n        <h3>Medaillen mit Logo gestalten<\/h3>\n        <p>\n          Medaillen sind eine besondere Form der Anerkennung. Sie w\u00fcrdigen sportliche Leistungen,\n          erinnern an erfolgreiche Veranstaltungen und schaffen bleibende Erinnerungen f\u00fcr Teilnehmer,\n          Teams und Gewinner. Bei Medaillendruck.de k\u00f6nnen Sie hochwertige Medaillen individuell\n          bedrucken lassen und passend zu Ihrem Event gestalten.\n        <\/p>\n        <p>\n          Ob Vereinslogo, Firmenbranding, Foto oder eigenes Motiv \u2013 durch modernen UV-Druck entstehen\n          individuelle Medaillen mit brillanten Farben, klaren Details und professioneller Wirkung.\n        <\/p>\n      <\/article>\n\n      <article class=\"md-seo-card\">\n        <h3>F\u00fcr Vereine, Sportevents und Unternehmen<\/h3>\n        <p>\n          Unsere Medaillen eignen sich f\u00fcr Sportvereine, Laufveranstaltungen, Firmenl\u00e4ufe, Schulfeste,\n          Turniere, Ehrungen und besondere Events. Vereine nutzen individuelle Vereinsmedaillen f\u00fcr\n          Meisterschaften und Wettk\u00e4mpfe, w\u00e4hrend Unternehmen personalisierte Medaillen f\u00fcr Events,\n          Mitarbeiterveranstaltungen oder Firmenl\u00e4ufe einsetzen.\n        <\/p>\n        <p>\n          Durch die individuelle Gestaltung entsteht eine Auszeichnung, die perfekt zum Anlass passt\n          und lange in Erinnerung bleibt.\n        <\/p>\n      <\/article>\n\n      <article class=\"md-seo-card\">\n        <h3>Hochwertiger UV-Druck f\u00fcr brillante Ergebnisse<\/h3>\n        <p>\n          Mit moderner Drucktechnik lassen sich sowohl kleine als auch gr\u00f6\u00dfere St\u00fcckzahlen flexibel\n          realisieren. Der UV-Druck sorgt f\u00fcr intensive Farben, scharfe Konturen und ein hochwertiges\n          Druckbild direkt auf der Medaille.\n        <\/p>\n        <p>\n          Von der ersten Idee bis zur fertigen Medaille begleiten wir Sie pers\u00f6nlich bei Ihrem Projekt\n          und unterst\u00fctzen Sie bei der Umsetzung Ihres Wunschdesigns.\n        <\/p>\n      <\/article>\n\n    <\/div>\n\n  <\/div>\n<\/section>\n\n<style>\n.md-seo-text {\n  font-family: 'Montserrat', sans-serif;\n  color: #ffffff;\n  padding: 90px 24px;\n  background:\n    radial-gradient(circle at top left, rgba(142,128,255,0.14), transparent 32%),\n    radial-gradient(circle at bottom right, rgba(149,226,255,0.10), transparent 34%),\n    linear-gradient(135deg, #070914 0%, #0d1020 55%, #080a13 100%);\n}\n\n.md-seo-inner {\n  max-width: 1180px;\n  margin: 0 auto;\n}\n\n.md-seo-kicker {\n  display: inline-block;\n  margin-bottom: 18px;\n  font-size: 13px;\n  font-weight: 500;\n  letter-spacing: 0.18em;\n  text-transform: uppercase;\n  color: #95e2ff;\n}\n\n.md-seo-text h2 {\n  max-width: 900px;\n  margin: 0 0 42px;\n  font-family: 'Orbitron', sans-serif;\n  font-size: clamp(34px, 4vw, 56px);\n  font-weight: 500;\n  line-height: 1.08;\n  letter-spacing: -0.04em;\n\n  background: linear-gradient(\n      135deg,\n      #8e80ff 0%,\n      #a095ff 30%,\n      #87b7ff 65%,\n      #95e2ff 100%\n    );\n  -webkit-background-clip: text;\n  -webkit-text-fill-color: transparent;\n}\n\n.md-seo-text h2 span {\n  display: block;\n  margin-top: 10px;\n  font-size: clamp(22px, 2.6vw, 36px);\n  line-height: 1.2;\n}\n\n.md-seo-grid {\n  display: grid;\n  grid-template-columns: repeat(3, 1fr);\n  gap: 22px;\n}\n\n.md-seo-card {\n  padding: 34px;\n  border-radius: 28px;\n  background:\n    linear-gradient(\n      135deg,\n      rgba(142,128,255,0.10),\n      rgba(149,226,255,0.04)\n    ),\n    rgba(255,255,255,0.045);\n  border: 1px solid rgba(255,255,255,0.11);\n  box-shadow: 0 24px 70px rgba(0,0,0,0.28);\n  backdrop-filter: blur(18px);\n  transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;\n}\n\n.md-seo-card:hover {\n  transform: translateY(-5px);\n  border-color: rgba(149,226,255,0.35);\n  box-shadow:\n    0 30px 90px rgba(0,0,0,0.35),\n    0 0 34px rgba(120,140,255,0.16);\n}\n\n.md-seo-card h3 {\n  margin: 0 0 18px;\n  font-family: 'Orbitron', sans-serif;\n  font-size: 22px;\n  font-weight: 500;\n  line-height: 1.25;\n  color: #ffffff;\n}\n\n.md-seo-card p {\n  margin: 0 0 16px;\n  color: rgba(255,255,255,0.72);\n  font-size: 15.5px;\n  line-height: 1.75;\n}\n\n.md-seo-card p:last-child {\n  margin-bottom: 0;\n}\n\n@media (max-width: 980px) {\n  .md-seo-grid {\n    grid-template-columns: 1fr;\n  }\n\n  .md-seo-text {\n    padding: 70px 18px;\n  }\n\n  .md-seo-card {\n    padding: 28px;\n  }\n}\n\n@media (max-width: 520px) {\n  .md-seo-text {\n    padding: 60px 16px;\n  }\n\n  .md-seo-card {\n    border-radius: 22px;\n  }\n}\n<\/style>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-363f4d1 e-con e-atomic-element e-flexbox-base e-20d94ed \" data-id=\"363f4d1\" data-element_type=\"e-flexbox\" data-e-type=\"e-flexbox\" data-interaction-id=\"363f4d1\">\n    \t\t<div class=\"elementor-element elementor-element-9f85255 elementor-widget elementor-widget-html\" data-id=\"9f85255\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<div class=\"md-footer\">\n  <div class=\"md-footer-logo\">MEDAILLEN<span>DRUCK.DE<\/span><\/div>\n\n  <nav class=\"md-footer-nav\" aria-label=\"Footer Navigation\">\n    <a href=\"\/\">Startseite<\/a>\n    <a href=\"\/produkte\/\">Medaillen<\/a>\n    <a href=\"\/portfolio\/\">Portfolio<\/a>\n    <a href=\"\/kontakt\/\">Kontakt<\/a>\n  <\/nav>\n\n  <div class=\"md-footer-info\">\n    <p>\n      <a href=\"mailto:info@medaillendruck.de\">info@medaillendruck.de<\/a>\n    <\/p>\n    <p>\n      Individuelle Medaillen bedrucken lassen \u2022 Medaillen mit Logo \u2022 Design &amp; UV-Druck\n    <\/p>\n  <\/div>\n\n  <div class=\"md-footer-legal\">\n    <a href=\"\/agb\/\">AGB<\/a>\n    <span>\u2022<\/span>\n    <a href=\"\/datenschutz\/\">Datenschutz<\/a>\n    <span>\u2022<\/span>\n    <a href=\"\/impressum\/\">Impressum<\/a>\n  <\/div>\n\n  <div class=\"md-footer-copy\">\n    \u00a9 2026 Medaillendruck.de \u2013 Alle Rechte vorbehalten.\n  <\/div>\n<\/div>\n\n<style>\n\/* =========================\n   Footer\n========================= *\/\n\n@import url('https:\/\/fonts.googleapis.com\/css2?family=Orbitron:wght@900&display=swap');\n@import url('https:\/\/fonts.googleapis.com\/css2?family=Montserrat:wght@400;500;600;700;800;900&display=swap');\n\n.md-footer,\n.md-footer * {\n  box-sizing: border-box;\n}\n\n.md-footer {\n  position: relative;\n  overflow: hidden;\n\n  padding: 70px 20px;\n\n  text-align: center;\n\n  color: #d7dde5;\n\n  font-family: \"Montserrat\", Arial, sans-serif;\n\n  border-top: 1px solid rgba(255,255,255,.10);\n}\n\n.md-footer::before {\n  content: \"\";\n\n  position: absolute;\n  inset: -25%;\n\n  background:\n   radial-gradient(circle at top left, rgba(142,128,255,0.14), transparent 32%),\n    radial-gradient(circle at bottom right, rgba(149,226,255,0.10), transparent 34%),\n    linear-gradient(135deg, #070914 0%, #0d1020 55%, #080a13 100%);\n  filter: blur(46px);\n  opacity: .9;\n\n  pointer-events: none;\n}\n\n.md-footer::after {\n  content: \"\";\n\n  position: absolute;\n\n  left: 0;\n  right: 0;\n  top: 0;\n\n  height: 1px;\n\n  background:\n    linear-gradient(\n      90deg,\n      transparent,\n      rgba(255,255,255,.22),\n      transparent\n    );\n\n  pointer-events: none;\n}\n\n.md-footer > * {\n  position: relative;\n  z-index: 2;\n}\n\n\/* =========================\n   Logo\n========================= *\/\n\n.md-footer-logo,\n.md-footer-logo * {\n  font-family: \"Orbitron\", sans-serif !important;\n  font-weight: 900 !important;\n}\n\n.md-footer-logo {\n  margin-bottom: 22px;\n\n  color: #ffffff;\n\n  font-size: clamp(1.55rem, 4vw, 2rem);\n  letter-spacing: .02em;\n\n  text-shadow:\n    0 0 18px rgba(200,210,255,.18),\n    0 8px 26px rgba(0,0,0,.55);\n}\n\n.md-footer-logo span {\n  margin-left: .06em;\n\n  background:\n    linear-gradient(\n      135deg,\n      #8d92ff,\n      #90c9ff\n    );\n\n  -webkit-background-clip: text;\n  background-clip: text;\n\n  -webkit-text-fill-color: transparent;\n  color: transparent;\n\n  filter:\n    drop-shadow(0 0 12px rgba(120,150,255,.18));\n}\n\n\/* =========================\n   Navigation\n========================= *\/\n\n.md-footer-nav {\n  display: flex;\n  justify-content: center;\n  flex-wrap: wrap;\n\n  gap: .65rem 1.6rem;\n\n  margin: 0 0 22px;\n}\n\n.md-footer-nav a {\n  color: #e5e8ec;\n\n  text-decoration: none;\n\n  font-size: 1.05rem;\n  font-weight: 600;\n\n  opacity: .9;\n\n  transition: .22s ease;\n}\n\n.md-footer-nav a:hover {\n  opacity: 1;\n\n  color: #ffffff;\n\n  text-shadow:\n    0 0 14px rgba(255,255,255,.22);\n}\n\n\/* =========================\n   Info\n========================= *\/\n\n.md-footer-info {\n  max-width: 760px;\n  margin: 0 auto;\n}\n\n.md-footer-info p {\n  margin: 6px 0;\n\n  color: rgba(215,221,229,.84);\n\n  font-size: .96rem;\n  line-height: 1.7;\n}\n\n.md-footer-info a {\n  color: #e5e8ec;\n\n  text-decoration: none;\n\n  font-weight: 600;\n\n  transition: .22s ease;\n}\n\n.md-footer-info a:hover {\n  color: #ffffff;\n\n  text-shadow:\n    0 0 12px rgba(255,255,255,.20);\n}\n\n\/* =========================\n   Legal Links\n========================= *\/\n\n.md-footer-legal {\n  margin-top: 22px;\n\n  color: rgba(199,205,212,.86);\n\n  font-size: .92rem;\n}\n\n.md-footer-legal a {\n  color: #c7cdd4;\n\n  text-decoration: none;\n\n  margin: 0 7px;\n\n  transition: .22s ease;\n}\n\n.md-footer-legal a:hover {\n  color: #ffffff;\n\n  text-shadow:\n    0 0 12px rgba(255,255,255,.20);\n}\n\n.md-footer-legal span {\n  color: rgba(199,205,212,.45);\n}\n\n\/* =========================\n   Copyright\n========================= *\/\n\n.md-footer-copy {\n  margin-top: 18px;\n\n  color: rgba(215,221,229,.62);\n\n  font-size: .82rem;\n  line-height: 1.6;\n}\n\n\/* =========================\n   Subtile Animation\n========================= *\/\n\n@media (prefers-reduced-motion: no-preference) {\n  .md-footer::before {\n    animation: mdFooterSmoke 18s ease-in-out infinite alternate;\n  }\n}\n\n@keyframes mdFooterSmoke {\n  from {\n    transform: translateX(-1%) translateY(-1%);\n  }\n\n  to {\n    transform: translateX(1%) translateY(1%);\n  }\n}\n\n\/* =========================\n   Responsive\n========================= *\/\n\n@media (max-width: 600px) {\n  .md-footer {\n    padding: 60px 18px;\n  }\n\n  .md-footer-nav {\n    flex-direction: column;\n    gap: .75rem;\n  }\n\n  .md-footer-legal {\n    line-height: 1.9;\n  }\n}\n<\/style>\t\t\t\t<\/div>\n\t\t\n<\/div>\n\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>WEBSEITE AKTUELL IM AUFBAU \u2022 WEITERE INFORMATIONEN ZU PRODUKTEN UND KONFIGURATIONSM\u00d6GLICHKEITEN FOLGEN IN K\u00dcRZE \u2022 WEBSEITE AKTUELL IM AUFBAU \u2022 WEITERE INFORMATIONEN ZU PRODUKTEN UND KONFIGURATIONSM\u00d6GLICHKEITEN FOLGEN IN K\u00dcRZE \u2022 WEBSEITE AKTUELL IM AUFBAU \u2022 WEITERE INFORMATIONEN ZU PRODUKTEN UND KONFIGURATIONSM\u00d6GLICHKEITEN FOLGEN IN K\u00dcRZE \u2022 MEDAILLENDRUCK.DE Home Produkte Portfolio \u00dcber uns Kontakt Jetzt anfragen WEBSEITE [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_canvas","meta":{"om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"footnotes":""},"class_list":["post-96","page","type-page","status-publish","hentry"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 4.9.10 - aioseo.com -->\n\t<meta name=\"description\" content=\"Medaillen bedrucken lassen mit Logo, Motiv oder eigenem Design \u2013 hochwertiger UV-Druck f\u00fcr Sportevents, Vereine und besondere Anl\u00e4sse.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<link rel=\"canonical\" href=\"https:\/\/medaillendruck.de\/home\/\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 4.9.10\" \/>\n\t\t<meta property=\"og:locale\" content=\"de_DE\" \/>\n\t\t<meta property=\"og:site_name\" content=\"medaillendruck.de - Individuelle Medaillen f\u00fcr dein einzigartiges Event.\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"Medaillen bedrucken lassen | Medaillendruck.de\" \/>\n\t\t<meta property=\"og:description\" content=\"Medaillen bedrucken lassen mit Logo, Motiv oder eigenem Design \u2013 hochwertiger UV-Druck f\u00fcr Sportevents, Vereine und besondere Anl\u00e4sse.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/medaillendruck.de\/home\/\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/medaillendruck.de\/wp-content\/uploads\/2025\/11\/Medaillendruck_logo.png\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/medaillendruck.de\/wp-content\/uploads\/2025\/11\/Medaillendruck_logo.png\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2025-12-04T10:45:32+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2026-07-28T10:29:58+00:00\" \/>\n\t\t<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n\t\t<meta name=\"twitter:title\" content=\"Medaillen bedrucken lassen | Medaillendruck.de\" \/>\n\t\t<meta name=\"twitter:description\" content=\"Medaillen bedrucken lassen mit Logo, Motiv oder eigenem Design \u2013 hochwertiger UV-Druck f\u00fcr Sportevents, Vereine und besondere Anl\u00e4sse.\" \/>\n\t\t<meta name=\"twitter:image\" content=\"https:\/\/medaillendruck.de\/wp-content\/uploads\/2025\/11\/Medaillendruck_logo.png\" \/>\n\t\t<script type=\"application\/ld+json\" class=\"aioseo-schema\">\n\t\t\t{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/medaillendruck.de\\\/home\\\/#breadcrumblist\",\"itemListElement\":[{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/medaillendruck.de\\\/home#listItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/medaillendruck.de\\\/home\",\"nextItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/medaillendruck.de\\\/home\\\/#listItem\",\"name\":\"Home\"}},{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/medaillendruck.de\\\/home\\\/#listItem\",\"position\":2,\"name\":\"Home\",\"previousItem\":{\"@type\":\"ListItem\",\"@id\":\"https:\\\/\\\/medaillendruck.de\\\/home#listItem\",\"name\":\"Home\"}}]},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/medaillendruck.de\\\/home\\\/#organization\",\"name\":\"medaillendruck.de medaillendruck.de\",\"description\":\"Individuelle Medaillen f\\u00fcr dein einzigartiges Event. Medaillendruck.de bietet individuell bedruckte Medaillen f\\u00fcr Sportevents, Vereine, Firmen und besondere Anl\\u00e4sse. Hochwertiger UV-Druck auf Edelstahl, pers\\u00f6nliche Gestaltung und schnelle Umsetzung.\",\"url\":\"https:\\\/\\\/medaillendruck.de\\\/home\\\/\",\"email\":\"info@medaillendruck.de\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https:\\\/\\\/medaillendruck.de\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/Zeichenflaeche-1.png\",\"@id\":\"https:\\\/\\\/medaillendruck.de\\\/home\\\/#organizationLogo\",\"width\":160,\"height\":160},\"image\":{\"@id\":\"https:\\\/\\\/medaillendruck.de\\\/home\\\/#organizationLogo\"}},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/medaillendruck.de\\\/home\\\/#webpage\",\"url\":\"https:\\\/\\\/medaillendruck.de\\\/home\\\/\",\"name\":\"Medaillen bedrucken lassen | Medaillendruck.de\",\"description\":\"Medaillen bedrucken lassen mit Logo, Motiv oder eigenem Design \\u2013 hochwertiger UV-Druck f\\u00fcr Sportevents, Vereine und besondere Anl\\u00e4sse.\",\"inLanguage\":\"de-DE\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/medaillendruck.de\\\/home\\\/#website\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/medaillendruck.de\\\/home\\\/#breadcrumblist\"},\"datePublished\":\"2025-12-04T10:45:32+00:00\",\"dateModified\":\"2026-07-28T10:29:58+00:00\"},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/medaillendruck.de\\\/home\\\/#website\",\"url\":\"https:\\\/\\\/medaillendruck.de\\\/home\\\/\",\"name\":\"medaillendruck.de\",\"alternateName\":\"MD\",\"description\":\"Individuelle Medaillen f\\u00fcr dein einzigartiges Event.\",\"inLanguage\":\"de-DE\",\"publisher\":{\"@id\":\"https:\\\/\\\/medaillendruck.de\\\/home\\\/#organization\"}}]}\n\t\t<\/script>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"Medaillen bedrucken lassen | Medaillendruck.de","description":"Medaillen bedrucken lassen mit Logo, Motiv oder eigenem Design \u2013 hochwertiger UV-Druck f\u00fcr Sportevents, Vereine und besondere Anl\u00e4sse.","canonical_url":"https:\/\/medaillendruck.de\/home\/","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"BreadcrumbList","@id":"https:\/\/medaillendruck.de\/home\/#breadcrumblist","itemListElement":[{"@type":"ListItem","@id":"https:\/\/medaillendruck.de\/home#listItem","position":1,"name":"Home","item":"https:\/\/medaillendruck.de\/home","nextItem":{"@type":"ListItem","@id":"https:\/\/medaillendruck.de\/home\/#listItem","name":"Home"}},{"@type":"ListItem","@id":"https:\/\/medaillendruck.de\/home\/#listItem","position":2,"name":"Home","previousItem":{"@type":"ListItem","@id":"https:\/\/medaillendruck.de\/home#listItem","name":"Home"}}]},{"@type":"Organization","@id":"https:\/\/medaillendruck.de\/home\/#organization","name":"medaillendruck.de medaillendruck.de","description":"Individuelle Medaillen f\u00fcr dein einzigartiges Event. Medaillendruck.de bietet individuell bedruckte Medaillen f\u00fcr Sportevents, Vereine, Firmen und besondere Anl\u00e4sse. Hochwertiger UV-Druck auf Edelstahl, pers\u00f6nliche Gestaltung und schnelle Umsetzung.","url":"https:\/\/medaillendruck.de\/home\/","email":"info@medaillendruck.de","logo":{"@type":"ImageObject","url":"https:\/\/medaillendruck.de\/wp-content\/uploads\/2026\/06\/Zeichenflaeche-1.png","@id":"https:\/\/medaillendruck.de\/home\/#organizationLogo","width":160,"height":160},"image":{"@id":"https:\/\/medaillendruck.de\/home\/#organizationLogo"}},{"@type":"WebPage","@id":"https:\/\/medaillendruck.de\/home\/#webpage","url":"https:\/\/medaillendruck.de\/home\/","name":"Medaillen bedrucken lassen | Medaillendruck.de","description":"Medaillen bedrucken lassen mit Logo, Motiv oder eigenem Design \u2013 hochwertiger UV-Druck f\u00fcr Sportevents, Vereine und besondere Anl\u00e4sse.","inLanguage":"de-DE","isPartOf":{"@id":"https:\/\/medaillendruck.de\/home\/#website"},"breadcrumb":{"@id":"https:\/\/medaillendruck.de\/home\/#breadcrumblist"},"datePublished":"2025-12-04T10:45:32+00:00","dateModified":"2026-07-28T10:29:58+00:00"},{"@type":"WebSite","@id":"https:\/\/medaillendruck.de\/home\/#website","url":"https:\/\/medaillendruck.de\/home\/","name":"medaillendruck.de","alternateName":"MD","description":"Individuelle Medaillen f\u00fcr dein einzigartiges Event.","inLanguage":"de-DE","publisher":{"@id":"https:\/\/medaillendruck.de\/home\/#organization"}}]},"og:locale":"de_DE","og:site_name":"medaillendruck.de - Individuelle Medaillen f\u00fcr dein einzigartiges Event.","og:type":"article","og:title":"Medaillen bedrucken lassen | Medaillendruck.de","og:description":"Medaillen bedrucken lassen mit Logo, Motiv oder eigenem Design \u2013 hochwertiger UV-Druck f\u00fcr Sportevents, Vereine und besondere Anl\u00e4sse.","og:url":"https:\/\/medaillendruck.de\/home\/","og:image":"https:\/\/medaillendruck.de\/wp-content\/uploads\/2025\/11\/Medaillendruck_logo.png","og:image:secure_url":"https:\/\/medaillendruck.de\/wp-content\/uploads\/2025\/11\/Medaillendruck_logo.png","article:published_time":"2025-12-04T10:45:32+00:00","article:modified_time":"2026-07-28T10:29:58+00:00","twitter:card":"summary_large_image","twitter:title":"Medaillen bedrucken lassen | Medaillendruck.de","twitter:description":"Medaillen bedrucken lassen mit Logo, Motiv oder eigenem Design \u2013 hochwertiger UV-Druck f\u00fcr Sportevents, Vereine und besondere Anl\u00e4sse.","twitter:image":"https:\/\/medaillendruck.de\/wp-content\/uploads\/2025\/11\/Medaillendruck_logo.png"},"aioseo_meta_data":{"post_id":"96","title":"Medaillen bedrucken lassen | Medaillendruck.de","description":"Medaillen bedrucken lassen mit Logo, Motiv oder eigenem Design \u2013 hochwertiger UV-Druck f\u00fcr Sportevents, Vereine und besondere Anl\u00e4sse.","keywords":null,"keyphrases":{"focus":{"keyphrase":"Medaillen bedrucken lassen","score":57,"analysis":{"keyphraseInTitle":{"score":9,"maxScore":9,"error":0},"keyphraseInDescription":{"score":9,"maxScore":9,"error":0},"keyphraseLength":{"score":9,"maxScore":9,"error":0,"length":3},"keyphraseInIntroduction":{"score":3,"maxScore":9,"error":1},"keyphraseInSubHeadings":{"score":3,"maxScore":9,"error":1},"keyphraseInImageAlt":{"score":3,"maxScore":9,"error":1},"keywordDensity":{"score":0,"type":"low","maxScore":9,"error":1}}},"additional":[]},"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":"","og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"WebPage","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":"-1","robots_max_videopreview":"-1","robots_max_imagepreview":"large","priority":null,"frequency":"default","local_seo":null,"breadcrumb_settings":null,"limit_modified_date":false,"ai":{"faqs":[],"keyPoints":[],"schemas":[],"titles":[],"descriptions":[],"socialPosts":{"email":[],"linkedin":[],"twitter":[],"facebook":[],"instagram":[]}},"created":"2025-12-02 11:19:29","updated":"2026-07-28 10:41:27","seo_analyzer_scan_date":null},"aioseo_breadcrumb":"<div class=\"aioseo-breadcrumbs\"><span class=\"aioseo-breadcrumb\">\n\t\t\t<a href=\"https:\/\/medaillendruck.de\/home\" title=\"Home\">Home<\/a>\n\t\t<\/span><span class=\"aioseo-breadcrumb-separator\">&raquo;<\/span><span class=\"aioseo-breadcrumb\">\n\t\t\tHome\n\t\t<\/span><\/div>","aioseo_breadcrumb_json":[{"label":"Home","link":"https:\/\/medaillendruck.de\/home"},{"label":"Home","link":"https:\/\/medaillendruck.de\/home\/"}],"_links":{"self":[{"href":"https:\/\/medaillendruck.de\/home\/wp-json\/wp\/v2\/pages\/96","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/medaillendruck.de\/home\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/medaillendruck.de\/home\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/medaillendruck.de\/home\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/medaillendruck.de\/home\/wp-json\/wp\/v2\/comments?post=96"}],"version-history":[{"count":556,"href":"https:\/\/medaillendruck.de\/home\/wp-json\/wp\/v2\/pages\/96\/revisions"}],"predecessor-version":[{"id":1458,"href":"https:\/\/medaillendruck.de\/home\/wp-json\/wp\/v2\/pages\/96\/revisions\/1458"}],"wp:attachment":[{"href":"https:\/\/medaillendruck.de\/home\/wp-json\/wp\/v2\/media?parent=96"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}