/* ============================================================
   DIAGNOSTIK – responsiver Neuaufbau aller Sektionen
   Desktop ab 1200px bleibt unverändert. Darunter echtes Grid,
   height:auto, kein transform:scale(), kein zoom.

   Korrigiert werden die Ursachen der Überlappungen:
   · aspect-ratio + background-size:100% 100% (feste Sektionshöhen)
   · position:absolute mit left/top in --u-Einheiten
   · white-space:nowrap auf Überschriften und Buttons
   · feste height/width an Buttons und Karten
   · min-height/overflow am Hero
   ============================================================ */

.dg-resp{display:none !important;}

/* ============================================================
   TABLET + MOBILE (≤1199px) – gemeinsame Grundlagen
   ============================================================ */
@media (max-width:1200px){

  /* ---------- Wrapper ---------- */
  html body .dg2-wrap,
  html body .dg3-wrap,
  html body .dg4-wrap,
  html body .dg5-wrap{width:100% !important;max-width:100% !important;margin:0 !important;}

  /* ---------- Sektionen: Pixelraster deaktivieren ---------- */
  html body .dg2,
  html body .dg3,
  html body .dg4,
  html body .dg5{
    position:relative !important;
    aspect-ratio:auto !important;
    height:auto !important;min-height:0 !important;max-height:none !important;
    width:100% !important;max-width:100% !important;
    background-image:none !important;
    box-sizing:border-box !important;
    overflow:hidden !important;
    display:grid !important;
    grid-template-columns:repeat(6, minmax(0,1fr));
    align-content:start;
    padding-inline:clamp(20px,5vw,80px);
    padding-block:clamp(48px,7vw,100px);
  }
  html body .dg2{background-color:#FBF8F3 !important;}
  html body .dg3{background-color:#F2F4EC !important;}
  html body .dg4{background-color:#FAF8F5 !important;}
  html body .dg5{background-color:#F7F4EE !important;}

  /* ---------- Kinder aus der absoluten Positionierung lösen ---------- */
  html body .dg2 > *,
  html body .dg3 > *,
  html body .dg4 > *,
  html body .dg5 > *{
    position:static !important;
    left:auto !important;right:auto !important;top:auto !important;bottom:auto !important;
    transform:none !important;
    white-space:normal !important;
    width:auto !important;min-width:0 !important;max-width:100% !important;
    height:auto !important;
    margin:0;
    box-sizing:border-box;
  }
  html body .dg-resp{display:block !important;}

  /* Erzwungene Desktop-Umbrüche im Fließtext aufheben */
  html body .dg2 .dg2-cb br,
  html body .dg3 .dg3-para br,
  html body .dg3 .dg3-note br,
  html body .dg5 .dg5-para br{display:none !important;}

  /* ============================================================
     1) HERO – Text im Fluss, Foto darunter, Benefits als Liste
     ============================================================ */
  html body section.hero{
    height:auto !important;min-height:0 !important;max-height:none !important;
    aspect-ratio:auto !important;
    display:flex !important;flex-direction:column;
    padding:0 !important;
    overflow:hidden !important;
    background:#F7F4EF !important;
  }
  html body section.hero > img.hero-bg,
  html body section.hero > .hero-strip{display:none !important;}

  html body .hero > .hero-content-container{
    position:static !important;order:1;
    width:100% !important;max-width:1180px !important;
    margin-inline:auto !important;
    padding:clamp(120px,15vw,178px) clamp(20px,5vw,80px) clamp(46px,6.4vw,84px) !important;
    zoom:1 !important;transform:none !important;
  }
  html body .hero .dg-headline{
    position:static !important;
    white-space:normal !important;
    font-size:clamp(28px,5.2vw,50px) !important;line-height:1.14 !important;
    margin:0 !important;
  }
  html body .hero .dg-headline br{display:none !important;}
  html body .hero .dg-headline em{display:block;margin-top:.16em;}
  html body .hero .dg-orn{
    position:static !important;display:block;
    width:clamp(140px,20vw,230px) !important;height:auto !important;
    margin:clamp(14px,2vw,20px) 0 0 !important;
  }
  html body .hero .dg-para{
    position:static !important;
    font-size:clamp(15px,2vw,18px) !important;line-height:1.75 !important;
    margin:clamp(16px,2.4vw,24px) 0 0 !important;max-width:62ch;
  }
  html body .hero .dg-para br{display:none !important;}
  html body .hero .dg-cta{
    position:static !important;display:flex !important;flex-wrap:wrap;
    gap:clamp(10px,1.6vw,16px) !important;
    margin:clamp(22px,3vw,30px) 0 0 !important;
  }
  html body .hero .dg-b1,
  html body .hero .dg-b2{
    width:auto !important;max-width:100% !important;
    height:auto !important;min-height:48px !important;
    padding:clamp(12px,1.6vw,15px) clamp(18px,3vw,28px) !important;
    font-size:clamp(12px,1.5vw,14px) !important;
    white-space:normal !important;text-align:center;
    border-radius:999px !important;
  }
  html body .hero .dg-b2{
    background:transparent !important;color:#4E7654 !important;
    border:1.5px solid #4E7654 !important;
  }
  html body .hero .dg-b2:hover{background:#4E7654 !important;color:#fff !important;}

  html body .hero .hero-rphoto{
    order:2;position:static !important;
    width:100vw !important;max-width:100vw !important;
    margin-left:calc(50% - 50vw) !important;
    height:clamp(220px,33vw,420px) !important;
    object-fit:cover !important;object-position:center 42% !important;
    display:block;
  }
  html body .hero .hero-rbenefits{
    order:3;position:static !important;list-style:none;
    width:100% !important;max-width:1180px !important;margin:0 auto !important;
    padding:clamp(22px,3.4vw,34px) clamp(20px,5vw,80px) clamp(30px,4.4vw,44px) !important;
    display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr));
    gap:clamp(16px,2.4vw,26px) clamp(16px,3vw,34px);
  }
  html body .hero .hero-rbenefits li{
    display:flex;align-items:center;gap:12px;min-width:0;
  }
  html body .hero .hero-rbenefits img{
    width:clamp(30px,4vw,40px);height:auto;flex:none;
  }
  html body .hero .hero-rbenefits span{
    font-size:clamp(14px,1.8vw,16px);line-height:1.4;font-weight:400;color:#22352a;
  }

  /* ============================================================
     2) DG2 – Ablauf + Untersuchungskarten
     ============================================================ */
  html body .dg2 .dg2-eyebrow{
    font-size:clamp(12px,1.4vw,13px) !important;letter-spacing:3px !important;
    text-transform:uppercase;font-weight:600;color:#C4A265 !important;
    justify-self:center;text-align:center;
  }
  html body .dg2 .dg2-eyebrow::after{margin:10px auto 0 !important;}
  html body .dg2 .dg2-heading{
    font-size:clamp(26px,4.4vw,40px) !important;line-height:1.2 !important;
    text-align:center;justify-self:center;margin-top:10px !important;
  }
  html body .dg2 .dg2-sub{
    font-size:clamp(15px,1.9vw,17px) !important;line-height:1.6 !important;
    font-weight:300;color:#3d4a3f !important;text-align:center;justify-self:center;
    margin-top:12px !important;
  }
  /* Ablauf-Schritte mit Icon */
  html body .dg2 .dg2-fico{
    width:clamp(52px,7vw,64px) !important;height:auto !important;
    justify-self:center;align-self:center;
  }
  html body .dg2 .dg2-step{
    font-size:clamp(15px,1.9vw,17.5px) !important;line-height:1.4 !important;
    font-weight:500;color:#22352a !important;align-self:center;
  }
  /* Untersuchungskarten: Overlay wird zur echten Kartenfläche */
  html body .dg2 .dg2-card-ov{
    z-index:0;align-self:stretch;
    background:#FFFFFF;border-radius:16px !important;
    box-shadow:0 14px 30px -22px rgba(52,67,58,.4), inset 0 0 0 1px rgba(120,140,120,.14);
  }
  html body .dg2 .dg2-card-ov:hover{box-shadow:0 18px 34px -20px rgba(52,67,58,.45) !important;}
  html body .dg2 .dg2-cico{
    z-index:1;width:clamp(58px,7.4vw,72px) !important;height:auto !important;
    justify-self:center;align-self:start;
  }
  html body .dg2 .dg2-ct{
    z-index:1;justify-self:center;align-self:start;
    font-size:clamp(15.5px,1.9vw,18px) !important;line-height:1.3 !important;
    font-weight:500;color:#1c2b20 !important;text-align:center !important;
    padding:0 12px;margin-top:12px !important;
  }
  html body .dg2 .dg2-cb{
    z-index:1;justify-self:center;align-self:start;
    font-size:clamp(13.5px,1.7vw,15px) !important;line-height:1.5 !important;
    font-weight:300;color:#44503f !important;text-align:center !important;
    padding:0 14px;margin-top:6px !important;
  }
  html body .dg2 .dg2-me{
    z-index:1;justify-self:center;align-self:start;
    font-size:clamp(13px,1.6vw,14.5px) !important;font-weight:500;
    color:#4E7654 !important;text-align:center !important;
    padding:0 12px 20px;margin-top:10px !important;
  }
  html body .dg2 .dg2-me::after{content:none;}
  html body .dg2 .dg2-unsere{
    font-size:clamp(24px,3.6vw,34px) !important;line-height:1.25 !important;
    text-align:center;justify-self:center;
  }
  html body .dg2 .dg2-footer{
    font-size:clamp(13.5px,1.7vw,15px) !important;line-height:1.6 !important;
    font-weight:300;color:#3d4a3f !important;text-align:center;justify-self:center;
  }

  /* ============================================================
     3) DG3 – Beschwerden / Untersuchung
     ============================================================ */
  html body .dg3 .dg3-heading{
    font-size:clamp(26px,4.4vw,40px) !important;line-height:1.22 !important;
  }
  html body .dg3 .dg3-heading br{display:none !important;}
  html body .dg3 .dg3-para{
    font-size:clamp(15.5px,2vw,18px) !important;line-height:1.7 !important;
    font-weight:300;color:#3d4a3f !important;margin-top:clamp(14px,2vw,20px) !important;
    max-width:60ch;
  }
  html body .dg3 .dg3-note{
    font-size:clamp(14px,1.8vw,16px) !important;line-height:1.6 !important;
    font-weight:300;color:#44503f !important;margin-top:clamp(12px,1.6vw,16px) !important;
    padding-left:26px;position:relative !important;max-width:56ch;
  }
  html body .dg3 .dg3-note::before{
    content:"i";position:absolute;left:0;top:2px;
    width:18px;height:18px;border-radius:50%;
    border:1px solid rgba(120,140,120,.7);
    display:flex;align-items:center;justify-content:center;
    font-size:11px;font-style:italic;color:#6b7a6d;
  }
  html body .dg3 .dg3-rcard{
    z-index:0;align-self:stretch;
    background:#FFFFFF;border-radius:20px;
    box-shadow:0 16px 34px -26px rgba(52,67,58,.4), inset 0 0 0 1px rgba(120,140,120,.14);
  }
  html body .dg3 .dg3-lbl,
  html body .dg3 .dg3-pill{
    z-index:1;align-self:center;
    font-size:clamp(15px,1.9vw,17.5px) !important;line-height:1.45 !important;
  }
  html body .dg3 .dg3-lbl{
    font-weight:400;color:#1c2b20 !important;
    padding:clamp(16px,2.2vw,22px) 0 clamp(16px,2.2vw,22px) clamp(16px,2.4vw,26px);
    position:relative !important;
  }
  html body .dg3 .dg3-lbl::before{
    content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);
    width:11px;height:11px;border-radius:50%;
    border:1.4px solid rgba(120,140,120,.85);
  }
  html body .dg3 .dg3-pill::before{content:"→";margin-right:10px;color:#6b8a72;}
  html body .dg3 .dg3-pill{
    font-weight:500;color:#3f6248 !important;
    background:#EDF1E7;border-radius:999px;
    padding:clamp(8px,1.2vw,11px) clamp(14px,2vw,20px);
    justify-self:end;
  }

  /* ============================================================
     4) DG4 – Moderne Technik + Ablauf
     ============================================================ */
  html body .dg4 .dg4-rphoto{
    width:100% !important;height:auto !important;display:block;
    border-radius:18px;object-fit:contain;
  }
  html body .dg4 .dg4-eyebrow{
    font-size:clamp(12px,1.4vw,13px) !important;letter-spacing:3px !important;
    text-transform:uppercase;font-weight:600;color:#C4A265 !important;
  }
  html body .dg4 .dg4-eyebrow::after{margin:10px 0 0 !important;}
  html body .dg4 .dg4-heading{
    font-size:clamp(26px,4.2vw,38px) !important;line-height:1.24 !important;
    margin-top:10px !important;
  }
  html body .dg4 .dg4-li{
    font-size:clamp(15px,1.9vw,17px) !important;line-height:1.5 !important;
    font-weight:400;color:#22352a !important;
    padding-left:32px;position:relative !important;
    margin-top:clamp(10px,1.4vw,14px) !important;
  }
  html body .dg4 .dg4-li::before{
    content:"";position:absolute;left:0;top:2px;
    width:20px;height:20px;border-radius:50%;
    border:1.5px solid #4E7654;
    background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%234E7654' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/11px 11px no-repeat;
  }
  html body .dg4 a.dg4-btn{
    display:inline-flex !important;align-items:center;justify-content:center;
    width:fit-content !important;max-width:100% !important;
    height:auto !important;min-height:50px !important;
    padding:clamp(13px,1.7vw,16px) clamp(20px,3vw,30px) !important;
    border-radius:999px !important;
    font-size:clamp(14px,1.8vw,16px) !important;
    white-space:nowrap !important;box-shadow:none !important;
    margin-top:clamp(22px,3vw,30px) !important;
  }
  html body .dg4 .dg4-tlh{
    font-size:clamp(24px,3.6vw,34px) !important;line-height:1.25 !important;
    text-align:center;justify-self:center;
    margin-top:clamp(40px,5.5vw,60px) !important;
  }
  /* Verbindungslinie auf Tablet/Mobile ausblenden */
  html body .dg4 .dg4-line{display:none !important;}

  /* Ablauf-Schritte: echtes Grid statt absoluter Punkte */
  html body .dg4 .dg4-flow{
    position:static !important;width:100% !important;height:auto !important;
    pointer-events:auto !important;
    display:grid !important;
    gap:clamp(18px,2.6vw,28px);
    margin-top:clamp(24px,3.4vw,34px) !important;
  }
  html body .dg4 .dgstep{
    position:relative !important;
    left:auto !important;top:auto !important;transform:none !important;
    width:auto !important;height:auto !important;
    display:grid !important;
    background:#FFFFFF !important;border-radius:16px !important;
    box-shadow:0 14px 30px -22px rgba(52,67,58,.4), inset 0 0 0 1px rgba(120,140,120,.14);
    padding:clamp(18px,2.4vw,24px) clamp(14px,2vw,20px);
    text-align:center;
  }
  html body .dg4 .dgstep::before{content:none !important;}
  html body .dg4 .dgstep-circle{
    position:static !important;transform:none !important;
    width:clamp(64px,8vw,84px) !important;height:clamp(64px,8vw,84px) !important;
    border-width:1.5px !important;box-shadow:none !important;
    justify-self:center;
  }
  html body .dg4 .dgstep-num{
    position:absolute !important;left:auto !important;right:12px !important;top:12px !important;
    transform:none !important;
    width:26px !important;height:26px !important;
    font-size:13px !important;box-shadow:none !important;
  }
  html body .dg4 .dgstep-t{
    position:static !important;
    font-size:clamp(17px,2.2vw,20px) !important;line-height:1.3 !important;
    margin-top:12px !important;
  }
  html body .dg4 .dgstep-b{
    position:static !important;
    font-size:clamp(13.5px,1.7vw,15px) !important;line-height:1.5 !important;
    margin-top:6px !important;
  }
  html body .dg4 .dg4-flow-status{
    font-size:clamp(13.5px,1.7vw,15px) !important;text-align:center;
    justify-self:center;margin-top:14px !important;
  }

  /* ============================================================
     5) DG5 – Abschluss-CTA
     ============================================================ */
  html body .dg5 .dg5-heading{
    font-size:clamp(24px,3.8vw,36px) !important;line-height:1.24 !important;
    white-space:normal !important;
  }
  html body .dg5 .dg5-para{
    font-size:clamp(15.5px,2vw,18px) !important;line-height:1.7 !important;
    font-weight:300;color:#3d4a3f !important;white-space:normal !important;
    margin-top:clamp(14px,2vw,20px) !important;max-width:60ch;
  }
  html body .dg5 .dg5-actions{
    display:flex !important;flex-wrap:wrap;align-items:center;
    gap:clamp(14px,2vw,22px) !important;
    margin-top:clamp(22px,3vw,30px) !important;
  }
  html body .dg5 .dg5-actions > *{position:static !important;}
  html body .dg5 a.dg5-btn{
    display:inline-flex !important;align-items:center;justify-content:center;
    width:fit-content !important;max-width:100% !important;
    height:auto !important;min-height:48px !important;
    padding:clamp(12px,1.6vw,15px) clamp(20px,3vw,28px) !important;
    border-radius:999px !important;
    font-size:clamp(14px,1.7vw,16px) !important;
    white-space:nowrap !important;box-shadow:none !important;
  }
  html body .dg5 a.dg5-link{
    font-size:clamp(14px,1.7vw,16px) !important;
    display:inline-flex !important;align-items:center;min-height:44px;
    padding-bottom:3px !important;white-space:nowrap !important;
  }
  html body .dg5 a.dg5-link .arr{
    font-size:1.1em !important;margin-left:10px !important;line-height:1;
  }

}

/* ============================================================
   TABLET 768–1199px
   ============================================================ */
@media (min-width:768px) and (max-width:1200px){

  /* ---- DG2 ---- */
  html body .dg2{column-gap:clamp(18px,2.6vw,30px);}
  html body .dg2 .dg2-eyebrow{grid-column:1 / 7;grid-row:1;}
  html body .dg2 .dg2-heading{grid-column:1 / 7;grid-row:2;}
  html body .dg2 .dg2-sub    {grid-column:1 / 7;grid-row:3;}
  /* Ablauf: vier Schritte nebeneinander */
  html body .dg2 .f-1{grid-column:1;grid-row:4;} html body .dg2 .dgs-1{grid-column:2;grid-row:4;}
  html body .dg2 .f-2{grid-column:3;grid-row:4;} html body .dg2 .dgs-2{grid-column:4;grid-row:4;}
  html body .dg2 .f-3{grid-column:1;grid-row:5;} html body .dg2 .dgs-3{grid-column:2;grid-row:5;}
  html body .dg2 .f-4{grid-column:3;grid-row:5;} html body .dg2 .dgs-4{grid-column:4;grid-row:5;}
  html body .dg2 .dg2-fico{margin-top:clamp(22px,3vw,30px) !important;}
  html body .dg2 .dg2-step{margin-top:clamp(22px,3vw,30px) !important;}
  html body .dg2 .dg2-unsere{grid-column:1 / 7;grid-row:6;margin-top:clamp(38px,5vw,52px) !important;}
  /* Karten 3 pro Reihe (3 Reihen à 4 Zeilen) */
  html body .dg2 .dg2-card-ov{margin-top:clamp(16px,2.2vw,22px);}
  html body .dg2 .ov-1{grid-column:1 / 3;grid-row:7 / 11;}
  html body .dg2 .ov-2{grid-column:3 / 5;grid-row:7 / 11;}
  html body .dg2 .ov-3{grid-column:5 / 7;grid-row:7 / 11;}
  html body .dg2 .ov-4{grid-column:1 / 3;grid-row:11 / 15;}
  html body .dg2 .ov-5{grid-column:3 / 5;grid-row:11 / 15;}
  html body .dg2 .ov-6{grid-column:5 / 7;grid-row:11 / 15;}
  html body .dg2 .ov-7{grid-column:1 / 3;grid-row:15 / 19;}
  html body .dg2 .ov-8{grid-column:3 / 5;grid-row:15 / 19;}
  html body .dg2 .c-1{grid-column:1 / 3;grid-row:7;} html body .dg2 .c-2{grid-column:3 / 5;grid-row:7;} html body .dg2 .c-3{grid-column:5 / 7;grid-row:7;}
  html body .dg2 .c-4{grid-column:1 / 3;grid-row:11;} html body .dg2 .c-5{grid-column:3 / 5;grid-row:11;} html body .dg2 .c-6{grid-column:5 / 7;grid-row:11;}
  html body .dg2 .c-7{grid-column:1 / 3;grid-row:15;} html body .dg2 .c-8{grid-column:3 / 5;grid-row:15;}
  html body .dg2 .dg2-cico{margin-top:calc(clamp(16px,2.2vw,22px) + clamp(20px,2.6vw,26px)) !important;}
  html body .dg2 .dg2-ct.r1.dgc-1{grid-column:1 / 3;grid-row:8;} html body .dg2 .dg2-cb.r1.dgc-1{grid-column:1 / 3;grid-row:9;} html body .dg2 .dg2-me.r1.dgc-1{grid-column:1 / 3;grid-row:10;}
  html body .dg2 .dg2-ct.r1.dgc-2{grid-column:3 / 5;grid-row:8;} html body .dg2 .dg2-cb.r1.dgc-2{grid-column:3 / 5;grid-row:9;} html body .dg2 .dg2-me.r1.dgc-2{grid-column:3 / 5;grid-row:10;}
  html body .dg2 .dg2-ct.r1.dgc-3{grid-column:5 / 7;grid-row:8;} html body .dg2 .dg2-cb.r1.dgc-3{grid-column:5 / 7;grid-row:9;} html body .dg2 .dg2-me.r1.dgc-3{grid-column:5 / 7;grid-row:10;}
  html body .dg2 .dg2-ct.r1.dgc-4{grid-column:1 / 3;grid-row:12;} html body .dg2 .dg2-cb.r1.dgc-4{grid-column:1 / 3;grid-row:13;} html body .dg2 .dg2-me.r1.dgc-4{grid-column:1 / 3;grid-row:14;}
  html body .dg2 .dg2-ct.r2.dgc-1{grid-column:3 / 5;grid-row:12;} html body .dg2 .dg2-cb.r2.dgc-1{grid-column:3 / 5;grid-row:13;} html body .dg2 .dg2-me.r2.dgc-1{grid-column:3 / 5;grid-row:14;}
  html body .dg2 .dg2-ct.r2.dgc-2{grid-column:5 / 7;grid-row:12;} html body .dg2 .dg2-cb.r2.dgc-2{grid-column:5 / 7;grid-row:13;} html body .dg2 .dg2-me.r2.dgc-2{grid-column:5 / 7;grid-row:14;}
  html body .dg2 .dg2-ct.r2.dgc-3{grid-column:1 / 3;grid-row:16;} html body .dg2 .dg2-cb.r2.dgc-3{grid-column:1 / 3;grid-row:17;} html body .dg2 .dg2-me.r2.dgc-3{grid-column:1 / 3;grid-row:18;}
  html body .dg2 .dg2-ct.r2.dgc-4{grid-column:3 / 5;grid-row:16;} html body .dg2 .dg2-cb.r2.dgc-4{grid-column:3 / 5;grid-row:17;} html body .dg2 .dg2-me.r2.dgc-4{grid-column:3 / 5;grid-row:18;}
  html body .dg2 .dg2-footer{grid-column:1 / 7;grid-row:19;margin-top:clamp(26px,3.4vw,34px) !important;}

  /* ---- DG3 ---- */
  html body .dg3{column-gap:clamp(14px,2vw,24px);}
  html body .dg3 .dg3-heading{grid-column:1 / 7;grid-row:1;}
  html body .dg3 .dg3-para   {grid-column:1 / 7;grid-row:2;}
  html body .dg3 .dg3-note   {grid-column:1 / 7;grid-row:3;}
  html body .dg3 .dg3-rcard  {grid-column:1 / 7;grid-row:4 / 9;margin-top:clamp(26px,3.4vw,36px);}
  html body .dg3 .dg3-lbl {grid-column:1 / 4;padding-left:clamp(38px,5vw,52px) !important;}
  html body .dg3 .dg3-pill{grid-column:4 / 7;margin-right:clamp(18px,2.4vw,28px) !important;}
  html body .dg3 .dg3-lbl.dgr-1{grid-row:4;} html body .dg3 .dg3-pill.dgr-1{grid-row:4;}
  html body .dg3 .dg3-lbl.dgr-2{grid-row:5;} html body .dg3 .dg3-pill.dgr-2{grid-row:5;}
  html body .dg3 .dg3-lbl.dgr-3{grid-row:6;} html body .dg3 .dg3-pill.dgr-3{grid-row:6;}
  html body .dg3 .dg3-lbl.dgr-4{grid-row:7;} html body .dg3 .dg3-pill.dgr-4{grid-row:7;}
  html body .dg3 .dg3-lbl.dgr-5{grid-row:8;} html body .dg3 .dg3-pill.dgr-5{grid-row:8;}
  html body .dg3 .dg3-lbl::before{left:clamp(14px,2vw,22px);}
  html body .dg3 .dg3-lbl.dgr-1,html body .dg3 .dg3-pill.dgr-1{margin-top:clamp(26px,3.4vw,36px);}
  html body .dg3 .dg3-lbl.dgr-2::after,html body .dg3 .dg3-lbl.dgr-3::after,
  html body .dg3 .dg3-lbl.dgr-4::after,html body .dg3 .dg3-lbl.dgr-5::after{
    content:"";position:absolute;left:0;top:0;height:1px;
    width:calc(200% + clamp(14px,2vw,24px));
    background:rgba(120,140,120,.22);pointer-events:none;}
  html body .dg3 .dg3-pill.dgr-5{margin-bottom:clamp(20px,2.6vw,28px);}

  /* ---- DG4 ---- */
  html body .dg4{column-gap:clamp(24px,3.4vw,40px);}
  html body .dg4 .dg4-rphoto {grid-column:1 / 4;grid-row:1 / 9;align-self:start;}
  html body .dg4 .dg4-eyebrow{grid-column:4 / 7;grid-row:1;}
  html body .dg4 .dg4-heading{grid-column:4 / 7;grid-row:2;}
  html body .dg4 .dgl-1{grid-column:4 / 7;grid-row:3;}
  html body .dg4 .dgl-2{grid-column:4 / 7;grid-row:4;}
  html body .dg4 .dgl-3{grid-column:4 / 7;grid-row:5;}
  html body .dg4 .dgl-4{grid-column:4 / 7;grid-row:6;}
  html body .dg4 .dgl-5{grid-column:4 / 7;grid-row:7;}
  html body .dg4 a.dg4-btn{grid-column:4 / 7;grid-row:8;justify-self:start;align-self:start;}
  html body .dg4 .dg4-tlh {grid-column:1 / 7;grid-row:9;}
  html body .dg4 .dg4-flow{grid-column:1 / 7;grid-row:10;
    grid-template-columns:repeat(3,minmax(0,1fr));}
  html body .dg4 .dg4-flow-status{grid-column:1 / 7;grid-row:11;}

  /* ---- DG5 ---- */
  html body .dg5 .dg5-heading{grid-column:1 / 7;grid-row:1;}
  html body .dg5 .dg5-para   {grid-column:1 / 7;grid-row:2;}
  html body .dg5 .dg5-actions{grid-column:1 / 7;grid-row:3;}
}

/* ============================================================
   MOBILE ≤767px
   ============================================================ */
@media (max-width:767.98px){

  html body .dg2,
  html body .dg3,
  html body .dg4,
  html body .dg5{column-gap:14px;padding-inline:20px;padding-block:clamp(44px,9vw,60px);}

  /* ---- DG2 ---- */
  html body .dg2 .dg2-eyebrow{grid-column:1 / 7;grid-row:1;}
  html body .dg2 .dg2-heading{grid-column:1 / 7;grid-row:2;}
  html body .dg2 .dg2-sub    {grid-column:1 / 7;grid-row:3;}
  html body .dg2 .dg2-fico{
    grid-column:1 / 4;justify-self:end;align-self:center;
    margin:20px 12px 0 0 !important;
  }
  html body .dg2 .dg2-step{
    grid-column:4 / 7;justify-self:start;align-self:center;
    text-align:left !important;margin-top:20px !important;
  }
  html body .dg2 .f-1,html body .dg2 .dgs-1{grid-row:4;}
  html body .dg2 .f-2,html body .dg2 .dgs-2{grid-row:5;}
  html body .dg2 .f-3,html body .dg2 .dgs-3{grid-row:6;}
  html body .dg2 .f-4,html body .dg2 .dgs-4{grid-row:7;}
  html body .dg2 .dg2-unsere{grid-column:1 / 7;grid-row:8;margin-top:40px !important;}
  html body .dg2 .dg2-card-ov{grid-column:1 / 7;margin-top:16px;}
  html body .dg2 .dg2-cico,
  html body .dg2 .dg2-ct,
  html body .dg2 .dg2-cb,
  html body .dg2 .dg2-me{grid-column:1 / 7;}
  html body .dg2 .dg2-cico{margin-top:calc(16px + 22px) !important;}
  html body .dg2 .ov-1{grid-row:9 / 13;}  html body .dg2 .c-1{grid-row:9;}
  html body .dg2 .dg2-ct.r1.dgc-1{grid-row:10;} html body .dg2 .dg2-cb.r1.dgc-1{grid-row:11;} html body .dg2 .dg2-me.r1.dgc-1{grid-row:12;}
  html body .dg2 .ov-2{grid-row:13 / 17;} html body .dg2 .c-2{grid-row:13;}
  html body .dg2 .dg2-ct.r1.dgc-2{grid-row:14;} html body .dg2 .dg2-cb.r1.dgc-2{grid-row:15;} html body .dg2 .dg2-me.r1.dgc-2{grid-row:16;}
  html body .dg2 .ov-3{grid-row:17 / 21;} html body .dg2 .c-3{grid-row:17;}
  html body .dg2 .dg2-ct.r1.dgc-3{grid-row:18;} html body .dg2 .dg2-cb.r1.dgc-3{grid-row:19;} html body .dg2 .dg2-me.r1.dgc-3{grid-row:20;}
  html body .dg2 .ov-4{grid-row:21 / 25;} html body .dg2 .c-4{grid-row:21;}
  html body .dg2 .dg2-ct.r1.dgc-4{grid-row:22;} html body .dg2 .dg2-cb.r1.dgc-4{grid-row:23;} html body .dg2 .dg2-me.r1.dgc-4{grid-row:24;}
  html body .dg2 .ov-5{grid-row:25 / 29;} html body .dg2 .c-5{grid-row:25;}
  html body .dg2 .dg2-ct.r2.dgc-1{grid-row:26;} html body .dg2 .dg2-cb.r2.dgc-1{grid-row:27;} html body .dg2 .dg2-me.r2.dgc-1{grid-row:28;}
  html body .dg2 .ov-6{grid-row:29 / 33;} html body .dg2 .c-6{grid-row:29;}
  html body .dg2 .dg2-ct.r2.dgc-2{grid-row:30;} html body .dg2 .dg2-cb.r2.dgc-2{grid-row:31;} html body .dg2 .dg2-me.r2.dgc-2{grid-row:32;}
  html body .dg2 .ov-7{grid-row:33 / 37;} html body .dg2 .c-7{grid-row:33;}
  html body .dg2 .dg2-ct.r2.dgc-3{grid-row:34;} html body .dg2 .dg2-cb.r2.dgc-3{grid-row:35;} html body .dg2 .dg2-me.r2.dgc-3{grid-row:36;}
  html body .dg2 .ov-8{grid-row:37 / 41;} html body .dg2 .c-8{grid-row:37;}
  html body .dg2 .dg2-ct.r2.dgc-4{grid-row:38;} html body .dg2 .dg2-cb.r2.dgc-4{grid-row:39;} html body .dg2 .dg2-me.r2.dgc-4{grid-row:40;}
  html body .dg2 .dg2-footer{grid-column:1 / 7;grid-row:41;margin-top:28px !important;}

  /* ---- DG3 ---- */
  html body .dg3 .dg3-heading{grid-column:1 / 7;grid-row:1;}
  html body .dg3 .dg3-para   {grid-column:1 / 7;grid-row:2;}
  html body .dg3 .dg3-note   {grid-column:1 / 7;grid-row:3;}
  html body .dg3 .dg3-rcard  {grid-column:1 / 7;grid-row:4 / 14;margin-top:28px;}
  /* Beschwerde und passende Untersuchung stehen in einer Zeile */
  html body .dg3 .dg3-lbl,
  html body .dg3 .dg3-pill{align-self:center;}
  html body .dg3 .dg3-lbl{
    grid-column:1 / 4;
    padding:14px 4px 14px clamp(28px,7.6vw,36px) !important;
    font-size:clamp(12px,3.3vw,15px) !important;line-height:1.3 !important;
    hyphens:auto;overflow-wrap:break-word;
  }
  html body .dg3 .dg3-pill{
    grid-column:4 / 7;justify-self:end;
    margin:0 clamp(10px,3vw,16px) 0 0 !important;
    padding:clamp(6px,1.6vw,8px) clamp(9px,2.6vw,13px) !important;
    font-size:clamp(10.5px,2.9vw,13px) !important;line-height:1.25 !important;
    text-align:center;hyphens:auto;overflow-wrap:break-word;
  }
  html body .dg3 .dg3-pill::before{margin-right:5px;}
  html body .dg3 .dg3-lbl::before{
    left:clamp(10px,2.8vw,14px);top:50%;transform:translateY(-50%);
    width:9px;height:9px;
  }
  html body .dg3 .dg3-lbl.dgr-1{grid-row:4;}  html body .dg3 .dg3-pill.dgr-1{grid-row:4;}
  html body .dg3 .dg3-lbl.dgr-2{grid-row:5;}  html body .dg3 .dg3-pill.dgr-2{grid-row:5;}
  html body .dg3 .dg3-lbl.dgr-3{grid-row:6;}  html body .dg3 .dg3-pill.dgr-3{grid-row:6;}
  html body .dg3 .dg3-lbl.dgr-4{grid-row:7;}  html body .dg3 .dg3-pill.dgr-4{grid-row:7;}
  html body .dg3 .dg3-lbl.dgr-5{grid-row:8;}  html body .dg3 .dg3-pill.dgr-5{grid-row:8;}
  html body .dg3 .dg3-lbl.dgr-1,
  html body .dg3 .dg3-pill.dgr-1{margin-top:24px !important;}
  html body .dg3 .dg3-lbl.dgr-5,
  html body .dg3 .dg3-pill.dgr-5{margin-bottom:22px !important;}
  /* Trennlinien über die volle Kartenbreite */
  html body .dg3 .dg3-lbl.dgr-2,html body .dg3 .dg3-lbl.dgr-3,
  html body .dg3 .dg3-lbl.dgr-4,html body .dg3 .dg3-lbl.dgr-5,
  html body .dg3 .dg3-pill.dgr-2,html body .dg3 .dg3-pill.dgr-3,
  html body .dg3 .dg3-pill.dgr-4,html body .dg3 .dg3-pill.dgr-5{
    position:relative !important;
  }
  html body .dg3 .dg3-lbl.dgr-2::after,html body .dg3 .dg3-lbl.dgr-3::after,
  html body .dg3 .dg3-lbl.dgr-4::after,html body .dg3 .dg3-lbl.dgr-5::after{
    content:"";position:absolute;left:clamp(10px,2.8vw,14px);right:-100%;top:0;
    border-top:1px solid rgba(120,140,120,.22);
  }

  /* ---- DG4 ---- */
  html body .dg4 .dg4-rphoto {grid-column:1 / 7;grid-row:1;}
  html body .dg4 .dg4-eyebrow{grid-column:1 / 7;grid-row:2;margin-top:28px !important;}
  html body .dg4 .dg4-heading{grid-column:1 / 7;grid-row:3;}
  html body .dg4 .dgl-1{grid-column:1 / 7;grid-row:4;}
  html body .dg4 .dgl-2{grid-column:1 / 7;grid-row:5;}
  html body .dg4 .dgl-3{grid-column:1 / 7;grid-row:6;}
  html body .dg4 .dgl-4{grid-column:1 / 7;grid-row:7;}
  html body .dg4 .dgl-5{grid-column:1 / 7;grid-row:8;}
  html body .dg4 a.dg4-btn{grid-column:1 / 7;grid-row:9;justify-self:stretch;width:100% !important;}
  html body .dg4 .dg4-tlh {grid-column:1 / 7;grid-row:10;}
  html body .dg4 .dg4-flow{grid-column:1 / 7;grid-row:11;grid-template-columns:minmax(0,1fr);}
  html body .dg4 .dg4-flow-status{grid-column:1 / 7;grid-row:12;}
  /* Vertikale Timeline */
  html body .dg4 .dgstep{
    grid-template-columns:auto minmax(0,1fr);
    text-align:left;column-gap:16px;padding:18px 16px;
  }
  html body .dg4 .dgstep-circle{grid-column:1;grid-row:1 / 3;align-self:center;
    width:64px !important;height:64px !important;}
  html body .dg4 .dgstep-t{grid-column:2;grid-row:1;text-align:left;margin-top:0 !important;
    align-self:end;padding-right:34px;}
  html body .dg4 .dgstep-b{grid-column:2;grid-row:2;text-align:left;align-self:start;}
  html body .dg4 .dgstep-b br{display:none;}

  /* ---- DG5 ---- */
  html body .dg5 .dg5-heading{grid-column:1 / 7;grid-row:1;}
  html body .dg5 .dg5-para   {grid-column:1 / 7;grid-row:2;}
  html body .dg5 .dg5-actions{grid-column:1 / 7;grid-row:3;flex-direction:column;align-items:stretch;}
  html body .dg5 a.dg5-btn{width:100% !important;}
  html body .dg5 a.dg5-link{justify-content:flex-start;}
}

/* ============================================================
   KLEINE PHONES ≤479px
   ============================================================ */
@media (max-width:479.98px){
  html body .hero .hero-rbenefits{grid-template-columns:minmax(0,1fr) !important;}
  html body .hero .dg-cta{flex-direction:column;align-items:stretch;}
  html body .hero .dg-b1,
  html body .hero .dg-b2{width:100% !important;}
  html body .dg2 .dg2-fico{width:46px !important;}
  html body .dg4 .dgstep-circle{width:56px !important;height:56px !important;}
}
