
:root {
  --kgd-blue: #1d70b7;
  --kgd-blue-dark: #15578f;
  --kgd-graphite: #575756;
  --kgd-ice: #e2edf4;
  --kgd-silver: #b2b2b1;
  --kgd-white: #ffffff;
  --kgd-text: #20262c;
  --kgd-muted: #65717a;
  --kgd-radius: 18px;
  --kgd-shadow: 0 18px 50px rgba(25, 52, 73, .10);
}

.kgd-about,
.kgd-about * {
  box-sizing: border-box;
}

.kgd-about {
  color: var(--kgd-text);
  font-family: inherit;
  line-height: 1.65;
  width: 100%;
  max-width: 100%;
  overflow: hidden;
}

.kgd-about-page .wp-block-shortcode {
  width: 100%;
  max-width: 100%;
  margin: 0 !important;
}

.kgd-about-page .entry-header,
.kgd-about-page .page-header,
.kgd-about-page .entry-title {
  display: none !important;
}

.kgd-about-page .entry-content {
  margin-top: 0 !important;
}

.kgd-about h1,
.kgd-about h2,
.kgd-about h3 {
  font-family: "Roboto Condensed", "Arial Narrow", Arial, sans-serif;
  letter-spacing: -.02em;
  line-height: 1.12;
  margin: 0;
}

.kgd-about p {
  margin: 0;
}

.kgd-about a {
  text-decoration: none;
}

.kgd-full {
  position: relative;
  left: auto;
  width: 100%;
  max-width: 100%;
  margin-left: 0;
}

.kgd-shell {
  width: 100%;
  max-width: 1180px;
  margin-inline: auto;
  padding-inline: clamp(20px, 4vw, 52px);
}

.kgd-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 18px;
  color: var(--kgd-blue);
  font-size: .82rem;
  font-weight: 800;
  letter-spacing: .13em;
  text-transform: uppercase;
}

.kgd-eyebrow::before {
  content: "";
  width: 30px;
  height: 3px;
  border-radius: 999px;
  background: currentColor;
}

.kgd-hero {
  background:
    radial-gradient(circle at 85% 18%, rgba(255,255,255,.18), transparent 30%),
    linear-gradient(135deg, var(--kgd-blue-dark), var(--kgd-blue));
  color: var(--kgd-white);
}

.kgd-hero-inner {
  display: grid;
  grid-template-columns: minmax(0, 1.35fr) minmax(280px, .65fr);
  align-items: center;
  gap: clamp(36px, 7vw, 90px);
  min-height: 590px;
  padding-block: clamp(70px, 9vw, 112px);
}

.kgd-hero .kgd-eyebrow {
  color: #dcecf8;
}

.kgd-hero h1 {
  max-width: 760px;
  font-size: clamp(2.55rem, 5vw, 4.75rem);
  color: var(--kgd-white);
}

.kgd-hero-lead {
  max-width: 750px;
  margin-top: 24px !important;
  font-size: clamp(1.05rem, 1.55vw, 1.25rem);
  color: rgba(255,255,255,.91);
}

.kgd-hero-sub {
  max-width: 700px;
  margin-top: 15px !important;
  color: rgba(255,255,255,.78);
}

.kgd-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 30px;
}

.kgd-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 50px;
  padding: 12px 21px;
  border: 2px solid transparent;
  border-radius: 10px;
  font-weight: 800;
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
}

.kgd-btn:hover,
.kgd-btn:focus-visible {
  transform: translateY(-2px);
}

.kgd-btn-primary {
  background: var(--kgd-white);
  color: var(--kgd-blue-dark);
  box-shadow: 0 10px 28px rgba(0,0,0,.15);
}

.kgd-btn-secondary {
  border-color: rgba(255,255,255,.55);
  color: var(--kgd-white);
  background: rgba(255,255,255,.07);
}

.kgd-portrait-card {
  position: relative;
  min-height: 390px;
  display: grid;
  place-items: center;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.22);
  border-radius: 28px;
  background: rgba(255,255,255,.10);
  box-shadow: 0 22px 55px rgba(0,0,0,.18);
  backdrop-filter: blur(8px);
}

.kgd-portrait-card img {
  width: 100%;
  height: 100%;
  min-height: 390px;
  object-fit: cover;
  object-position: center;
}

.kgd-portrait-fallback {
  display: grid;
  place-items: center;
  gap: 20px;
  padding: 36px;
  text-align: center;
}

.kgd-monogram {
  width: 152px;
  aspect-ratio: 1;
  display: grid;
  place-items: center;
  border: 2px solid rgba(255,255,255,.62);
  border-radius: 50%;
  font-family: "Roboto Condensed", "Arial Narrow", Arial, sans-serif;
  font-size: 3.8rem;
  font-weight: 800;
  letter-spacing: -.06em;
}

.kgd-portrait-fallback strong {
  display: block;
  font-family: "Roboto Condensed", "Arial Narrow", Arial, sans-serif;
  font-size: 1.35rem;
}

.kgd-portrait-fallback span {
  display: block;
  margin-top: 4px;
  color: rgba(255,255,255,.73);
  font-size: .94rem;
}

.kgd-section {
  padding-block: clamp(72px, 8vw, 108px);
}

.kgd-section-soft {
  background: #f5f9fc;
}

.kgd-intro-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(340px, .9fr);
  gap: clamp(42px, 7vw, 86px);
  align-items: start;
}

.kgd-section h2 {
  max-width: 770px;
  font-size: clamp(2rem, 3.5vw, 3.25rem);
  color: var(--kgd-graphite);
}

.kgd-copy {
  display: grid;
  gap: 16px;
  margin-top: 23px;
  color: #46515a;
  font-size: 1.05rem;
}

.kgd-facts {
  display: grid;
  gap: 14px;
}

.kgd-fact {
  display: grid;
  grid-template-columns: 100px 1fr;
  gap: 22px;
  align-items: center;
  min-height: 100px;
  padding: 20px 22px;
  border: 1px solid #dce6ed;
  border-radius: var(--kgd-radius);
  background: var(--kgd-white);
  box-shadow: 0 10px 28px rgba(31, 64, 88, .06);
}

.kgd-fact-number {
  color: var(--kgd-blue);
  font-family: "Roboto Condensed", "Arial Narrow", Arial, sans-serif;
  font-size: 2rem;
  font-weight: 800;
  line-height: 1;
}

.kgd-fact strong {
  display: block;
  color: var(--kgd-graphite);
  font-size: 1.05rem;
}

.kgd-fact span {
  display: block;
  margin-top: 3px;
  color: var(--kgd-muted);
  font-size: .91rem;
}

.kgd-section-head {
  max-width: 820px;
  margin-bottom: 40px;
}

.kgd-section-head p {
  margin-top: 16px;
  color: #59656e;
  font-size: 1.04rem;
}

.kgd-qualifications {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 20px;
}

.kgd-qual-card {
  display: flex;
  flex-direction: column;
  min-height: 100%;
  padding: 28px;
  border: 1px solid #dbe5eb;
  border-radius: var(--kgd-radius);
  background: var(--kgd-white);
  box-shadow: var(--kgd-shadow);
}

.kgd-seal-box {
  height: 84px;
  display: flex;
  align-items: center;
  margin-bottom: 22px;
}

.kgd-seal-box img {
  display: block;
  width: auto;
  max-width: 150px;
  max-height: 78px;
  object-fit: contain;
}

.kgd-seal-box .kgd-dgusv {
  max-width: 92px;
}

.kgd-vfk-mark {
  display: inline-grid;
  place-items: center;
  width: 82px;
  height: 58px;
  border: 2px solid var(--kgd-blue);
  transform: skewX(-10deg);
  color: var(--kgd-blue);
  font-family: "Roboto Condensed", "Arial Narrow", Arial, sans-serif;
  font-size: 1.45rem;
  font-weight: 800;
  letter-spacing: .06em;
}

.kgd-vfk-mark span {
  transform: skewX(10deg);
}

.kgd-qual-card h3 {
  font-size: 1.42rem;
  color: var(--kgd-graphite);
}

.kgd-qual-card p {
  margin-top: 13px;
  color: #59656e;
  font-size: .96rem;
}

.kgd-proof-link {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  margin-top: auto;
  padding-top: 20px;
  color: var(--kgd-blue-dark);
  font-weight: 800;
  font-size: .91rem;
}

.kgd-proof-link::after {
  content: "↗";
  font-size: 1rem;
}

.kgd-values-wrap {
  display: grid;
  grid-template-columns: .78fr 1.22fr;
  gap: clamp(42px, 7vw, 86px);
  align-items: start;
}

.kgd-values-intro p {
  margin-top: 18px;
  color: #59656e;
}

.kgd-check-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.kgd-check {
  position: relative;
  min-height: 132px;
  padding: 24px 22px 22px 58px;
  border: 1px solid #dce6ed;
  border-radius: 15px;
  background: var(--kgd-white);
}

.kgd-check::before {
  content: "✓";
  position: absolute;
  top: 23px;
  left: 22px;
  display: grid;
  place-items: center;
  width: 25px;
  height: 25px;
  border-radius: 50%;
  background: var(--kgd-ice);
  color: var(--kgd-blue-dark);
  font-weight: 900;
}

.kgd-check strong {
  display: block;
  color: var(--kgd-graphite);
  font-size: 1rem;
}

.kgd-check span {
  display: block;
  margin-top: 7px;
  color: var(--kgd-muted);
  font-size: .91rem;
  line-height: 1.48;
}

.kgd-network {
  margin-top: 18px !important;
  color: #59656e;
  font-size: .96rem;
}

.kgd-work-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px;
}

.kgd-work-grid figure {
  margin: 0;
  overflow: hidden;
  border-radius: var(--kgd-radius);
  background: var(--kgd-ice);
  box-shadow: var(--kgd-shadow);
}

.kgd-work-grid img {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 10;
  object-fit: cover;
}

.kgd-cta {
  background: var(--kgd-graphite);
  color: var(--kgd-white);
}

.kgd-cta-inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 34px;
  align-items: center;
  padding-block: clamp(58px, 7vw, 82px);
}

.kgd-cta h2 {
  max-width: 780px;
  color: var(--kgd-white);
  font-size: clamp(2rem, 3.7vw, 3.4rem);
}

.kgd-cta p {
  max-width: 780px;
  margin-top: 14px;
  color: rgba(255,255,255,.78);
}

.kgd-cta .kgd-actions {
  margin-top: 0;
  justify-content: flex-end;
}

.kgd-cta .kgd-btn-primary {
  color: var(--kgd-blue-dark);
}

.kgd-cta .kgd-btn-secondary {
  color: var(--kgd-white);
}

@media (max-width: 980px) {
  .kgd-hero-inner,
  .kgd-intro-grid,
  .kgd-values-wrap,
  .kgd-cta-inner {
    grid-template-columns: 1fr;
  }

  .kgd-hero-inner {
    min-height: auto;
  }

  .kgd-portrait-card {
    width: min(470px, 100%);
    min-height: 330px;
  }

  .kgd-portrait-card img {
    min-height: 330px;
  }

  .kgd-qualifications {
    grid-template-columns: 1fr;
  }

  .kgd-qual-card {
    min-height: auto;
  }

  .kgd-cta .kgd-actions {
    justify-content: flex-start;
  }
}

@media (max-width: 680px) {
  .kgd-shell {
    padding-inline: 14px;
  }

  .kgd-section {
    padding-block: 64px;
  }

  .kgd-hero-inner {
    padding-block: 66px;
  }

  .kgd-actions,
  .kgd-btn {
    width: 100%;
  }

  .kgd-fact {
    grid-template-columns: 76px 1fr;
    gap: 14px;
    padding: 18px;
  }

  .kgd-fact-number {
    font-size: 1.55rem;
  }

  .kgd-check-grid,
  .kgd-work-grid {
    grid-template-columns: 1fr;
  }

  .kgd-check {
    min-height: auto;
  }
}

@media (prefers-reduced-motion: reduce) {
  .kgd-btn {
    transition: none;
  }
}


/* =========================================================
   Kontaktseite
   ========================================================= */

.kgd-contact,
.kgd-contact * {
  box-sizing: border-box;
}

.kgd-contact {
  width: 100%;
  max-width: 100%;
  overflow: hidden;
  color: var(--kgd-text);
  font-family: inherit;
  line-height: 1.65;
}

.kgd-contact-page .wp-block-shortcode {
  width: 100%;
  max-width: 100%;
  margin: 0 !important;
}

.kgd-contact-page .entry-header,
.kgd-contact-page .page-header,
.kgd-contact-page .entry-title {
  display: none !important;
}

.kgd-contact-page .entry-content {
  margin-top: 0 !important;
}

.kgd-contact h1,
.kgd-contact h2,
.kgd-contact h3 {
  margin: 0;
  font-family: "Roboto Condensed", "Arial Narrow", Arial, sans-serif;
  letter-spacing: -.02em;
  line-height: 1.12;
}

.kgd-contact p {
  margin: 0;
}

.kgd-contact a {
  text-decoration: none;
}

.kgd-contact-hero {
  position: relative;
  color: var(--kgd-white);
  background:
    radial-gradient(circle at 88% 16%, rgba(255,255,255,.17), transparent 31%),
    linear-gradient(135deg, var(--kgd-blue-dark), var(--kgd-blue));
}

.kgd-contact-hero-inner {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(330px, .95fr);
  gap: clamp(42px, 7vw, 86px);
  align-items: center;
  min-height: 510px;
  padding-block: clamp(68px, 8vw, 96px);
}

.kgd-contact-hero .kgd-eyebrow {
  color: #dcecf8;
}

.kgd-contact-hero h1 {
  max-width: 720px;
  color: var(--kgd-white);
  font-size: clamp(2.5rem, 5vw, 4.55rem);
}

.kgd-contact-lead {
  max-width: 720px;
  margin-top: 23px !important;
  color: rgba(255,255,255,.92);
  font-size: clamp(1.04rem, 1.5vw, 1.22rem);
}

.kgd-contact-sub {
  margin-top: 13px !important;
  color: rgba(255,255,255,.74);
}

.kgd-contact-options {
  display: grid;
  gap: 13px;
}

.kgd-contact-option {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  gap: 16px;
  align-items: center;
  min-height: 92px;
  padding: 19px 21px;
  border: 1px solid rgba(255,255,255,.24);
  border-radius: 16px;
  background: rgba(255,255,255,.11);
  color: var(--kgd-white);
  box-shadow: 0 14px 34px rgba(0,0,0,.10);
  backdrop-filter: blur(8px);
  transition: transform .18s ease, background .18s ease, border-color .18s ease;
}

.kgd-contact-option:hover,
.kgd-contact-option:focus-visible {
  transform: translateY(-2px);
  border-color: rgba(255,255,255,.48);
  background: rgba(255,255,255,.17);
}

.kgd-contact-icon {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  border-radius: 13px;
  background: rgba(255,255,255,.16);
}

.kgd-contact-icon svg {
  width: 24px;
  height: 24px;
  fill: currentColor;
}

.kgd-contact-option small {
  display: block;
  color: rgba(255,255,255,.70);
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.kgd-contact-option strong {
  display: block;
  overflow-wrap: anywhere;
  margin-top: 2px;
  color: var(--kgd-white);
  font-size: 1.02rem;
}

.kgd-contact-content {
  padding-block: clamp(72px, 8vw, 106px);
  background: #f5f9fc;
}

.kgd-contact-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(310px, .75fr);
  gap: clamp(28px, 5vw, 58px);
  align-items: start;
}

.kgd-form-card {
  padding: clamp(28px, 4.6vw, 52px);
  border: 1px solid #dbe5eb;
  border-radius: 22px;
  background: var(--kgd-white);
  box-shadow: var(--kgd-shadow);
}

.kgd-form-card h2 {
  max-width: 720px;
  color: var(--kgd-graphite);
  font-size: clamp(2rem, 3.5vw, 3.1rem);
}

.kgd-form-intro {
  max-width: 720px;
  margin-top: 17px !important;
  color: #59656e;
  font-size: 1.01rem;
}

.kgd-wpforms-wrap {
  margin-top: 30px;
}

.kgd-form-fallback {
  padding: 20px;
  border: 1px solid #dbe5eb;
  border-radius: 12px;
  background: #f7fafc;
}

.kgd-form-fallback p {
  margin-top: 6px;
}

/* WPForms Lite */
.kgd-contact .wpforms-container,
.kgd-contact div.wpforms-container-full {
  margin: 0 !important;
}

.kgd-contact .wpforms-container .wpforms-form .wpforms-field,
.kgd-contact div.wpforms-container-full .wpforms-form .wpforms-field {
  padding: 0 0 19px !important;
}

.kgd-contact .wpforms-container .wpforms-field-label,
.kgd-contact div.wpforms-container-full .wpforms-field-label {
  margin: 0 0 7px !important;
  color: var(--kgd-graphite) !important;
  font-size: .94rem !important;
  font-weight: 800 !important;
}

.kgd-contact .wpforms-container .wpforms-field-sublabel,
.kgd-contact div.wpforms-container-full .wpforms-field-sublabel,
.kgd-contact .wpforms-container .wpforms-field-description,
.kgd-contact div.wpforms-container-full .wpforms-field-description {
  color: var(--kgd-muted) !important;
  font-size: .83rem !important;
}

.kgd-contact .wpforms-container input[type="text"],
.kgd-contact .wpforms-container input[type="email"],
.kgd-contact .wpforms-container input[type="tel"],
.kgd-contact .wpforms-container textarea,
.kgd-contact div.wpforms-container-full input[type="text"],
.kgd-contact div.wpforms-container-full input[type="email"],
.kgd-contact div.wpforms-container-full input[type="tel"],
.kgd-contact div.wpforms-container-full textarea {
  width: 100% !important;
  max-width: 100% !important;
  border: 1px solid #cbd7df !important;
  border-radius: 10px !important;
  background: #fbfdfe !important;
  color: var(--kgd-text) !important;
  box-shadow: none !important;
  font: inherit !important;
  transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

.kgd-contact .wpforms-container input[type="text"],
.kgd-contact .wpforms-container input[type="email"],
.kgd-contact .wpforms-container input[type="tel"],
.kgd-contact div.wpforms-container-full input[type="text"],
.kgd-contact div.wpforms-container-full input[type="email"],
.kgd-contact div.wpforms-container-full input[type="tel"] {
  min-height: 52px !important;
  padding: 10px 13px !important;
}

.kgd-contact .wpforms-container textarea,
.kgd-contact div.wpforms-container-full textarea {
  min-height: 138px !important;
  padding: 12px 13px !important;
  resize: vertical;
}

.kgd-contact .wpforms-container input:focus,
.kgd-contact .wpforms-container textarea:focus,
.kgd-contact div.wpforms-container-full input:focus,
.kgd-contact div.wpforms-container-full textarea:focus {
  border-color: var(--kgd-blue) !important;
  background: var(--kgd-white) !important;
  box-shadow: 0 0 0 3px rgba(29,112,183,.12) !important;
  outline: 0 !important;
}

.kgd-contact .wpforms-container .wpforms-required-label,
.kgd-contact div.wpforms-container-full .wpforms-required-label {
  color: #b42318 !important;
}

.kgd-contact .wpforms-container .wpforms-submit-container,
.kgd-contact div.wpforms-container-full .wpforms-submit-container {
  padding: 4px 0 0 !important;
}

.kgd-contact .wpforms-container button[type="submit"],
.kgd-contact .wpforms-container input[type="submit"],
.kgd-contact div.wpforms-container-full button[type="submit"],
.kgd-contact div.wpforms-container-full input[type="submit"] {
  min-height: 52px !important;
  padding: 12px 23px !important;
  border: 0 !important;
  border-radius: 10px !important;
  background: var(--kgd-blue) !important;
  color: var(--kgd-white) !important;
  box-shadow: 0 9px 24px rgba(29,112,183,.22) !important;
  font: inherit !important;
  font-weight: 800 !important;
  cursor: pointer;
  transition: transform .18s ease, background .18s ease, box-shadow .18s ease;
}

.kgd-contact .wpforms-container button[type="submit"]:hover,
.kgd-contact .wpforms-container button[type="submit"]:focus-visible,
.kgd-contact div.wpforms-container-full button[type="submit"]:hover,
.kgd-contact div.wpforms-container-full button[type="submit"]:focus-visible {
  transform: translateY(-2px);
  background: var(--kgd-blue-dark) !important;
  box-shadow: 0 12px 28px rgba(29,112,183,.28) !important;
}

.kgd-contact .wpforms-confirmation-container-full {
  margin: 0 !important;
  border: 1px solid #b8d8c2 !important;
  border-radius: 12px !important;
  background: #eff9f2 !important;
}

.kgd-privacy-note {
  margin-top: 18px !important;
  color: var(--kgd-muted);
  font-size: .84rem;
  line-height: 1.55;
}

.kgd-privacy-note a {
  color: var(--kgd-blue-dark);
  font-weight: 800;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.kgd-contact-assurance {
  position: sticky;
  top: 24px;
  padding: clamp(26px, 3.5vw, 38px);
  border-radius: 22px;
  background: var(--kgd-graphite);
  color: var(--kgd-white);
  box-shadow: 0 18px 48px rgba(31,40,48,.18);
}

.kgd-contact-assurance .kgd-eyebrow {
  color: #dbeaf5;
}

.kgd-assurance-list {
  display: grid;
  gap: 0;
}

.kgd-assurance-item {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 15px;
  padding-block: 22px;
  border-bottom: 1px solid rgba(255,255,255,.14);
}

.kgd-assurance-number {
  color: #a9d3f2;
  font-family: "Roboto Condensed", "Arial Narrow", Arial, sans-serif;
  font-size: 1.03rem;
  font-weight: 800;
}

.kgd-assurance-item h3 {
  color: var(--kgd-white);
  font-size: 1.18rem;
}

.kgd-assurance-item p {
  margin-top: 7px;
  color: rgba(255,255,255,.72);
  font-size: .91rem;
  line-height: 1.5;
}

.kgd-contact-mini {
  margin-top: 26px;
  padding: 20px;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 14px;
  background: rgba(255,255,255,.07);
}

.kgd-contact-mini strong {
  display: block;
  color: var(--kgd-white);
}

.kgd-contact-mini p {
  margin-top: 6px;
  color: rgba(255,255,255,.72);
  font-size: .89rem;
}

.kgd-contact-mini a {
  display: inline-flex;
  margin-top: 13px;
  color: #d9edfb;
  font-weight: 800;
}

@media (max-width: 980px) {
  .kgd-contact-hero-inner,
  .kgd-contact-layout {
    grid-template-columns: 1fr;
  }

  .kgd-contact-hero-inner {
    min-height: auto;
  }

  .kgd-contact-options {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .kgd-contact-option {
    grid-template-columns: 1fr;
    text-align: center;
  }

  .kgd-contact-icon {
    margin-inline: auto;
  }

  .kgd-contact-assurance {
    position: static;
  }
}

@media (max-width: 720px) {
  .kgd-contact-options {
    grid-template-columns: 1fr;
  }

  .kgd-contact-option {
    grid-template-columns: 48px minmax(0, 1fr);
    text-align: left;
  }

  .kgd-contact-icon {
    margin-inline: 0;
  }

  .kgd-form-card {
    padding: 25px 19px;
  }

  .kgd-contact-assurance {
    padding: 27px 22px;
  }

  .kgd-contact .wpforms-container button[type="submit"],
  .kgd-contact div.wpforms-container-full button[type="submit"] {
    width: 100% !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .kgd-contact-option,
  .kgd-contact .wpforms-container button[type="submit"],
  .kgd-contact div.wpforms-container-full button[type="submit"] {
    transition: none;
  }
}


/* =========================================================
   Wissensseite
   ========================================================= */

.kgd-knowledge,
.kgd-knowledge * {
  box-sizing: border-box;
}

.kgd-knowledge {
  width: 100%;
  max-width: 100%;
  overflow: hidden;
  color: var(--kgd-text);
  font-family: inherit;
  line-height: 1.65;
}

.kgd-knowledge-page .wp-block-shortcode {
  width: 100%;
  max-width: 100%;
  margin: 0 !important;
}

.kgd-knowledge-page .entry-header,
.kgd-knowledge-page .page-header,
.kgd-knowledge-page .entry-title {
  display: none !important;
}

.kgd-knowledge-page .entry-content {
  margin-top: 0 !important;
}

.kgd-knowledge h1,
.kgd-knowledge h2,
.kgd-knowledge h3 {
  margin: 0;
  font-family: "Roboto Condensed", "Arial Narrow", Arial, sans-serif;
  letter-spacing: -.02em;
  line-height: 1.12;
}

.kgd-knowledge p {
  margin: 0;
}

.kgd-knowledge a {
  text-decoration: none;
}

.kgd-knowledge-hero {
  color: var(--kgd-white);
  background:
    radial-gradient(circle at 85% 14%, rgba(255,255,255,.17), transparent 30%),
    linear-gradient(135deg, var(--kgd-blue-dark), var(--kgd-blue));
}

.kgd-knowledge-hero-inner {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(330px, .9fr);
  gap: clamp(42px, 7vw, 86px);
  align-items: center;
  min-height: 540px;
  padding-block: clamp(72px, 8vw, 100px);
}

.kgd-knowledge-hero .kgd-eyebrow {
  color: #dcecf8;
}

.kgd-knowledge-hero h1 {
  max-width: 760px;
  color: var(--kgd-white);
  font-size: clamp(2.55rem, 5vw, 4.65rem);
}

.kgd-knowledge-lead {
  max-width: 760px;
  margin-top: 23px !important;
  color: rgba(255,255,255,.90);
  font-size: clamp(1.04rem, 1.5vw, 1.22rem);
}

.kgd-knowledge-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 29px;
}

.kgd-knowledge-overview {
  display: grid;
  gap: 13px;
}

.kgd-overview-card {
  display: grid;
  grid-template-columns: 65px minmax(0, 1fr);
  gap: 17px;
  align-items: center;
  min-height: 98px;
  padding: 18px 21px;
  border: 1px solid rgba(255,255,255,.24);
  border-radius: 17px;
  background: rgba(255,255,255,.11);
  color: var(--kgd-white);
  box-shadow: 0 14px 34px rgba(0,0,0,.10);
  backdrop-filter: blur(8px);
  transition: transform .18s ease, background .18s ease, border-color .18s ease;
}

.kgd-overview-card:hover,
.kgd-overview-card:focus-visible {
  transform: translateY(-3px);
  border-color: rgba(255,255,255,.48);
  background: rgba(255,255,255,.17);
}

.kgd-overview-number {
  display: grid;
  place-items: center;
  width: 65px;
  height: 58px;
  border-radius: 14px;
  background: rgba(255,255,255,.14);
  font-family: "Roboto Condensed", "Arial Narrow", Arial, sans-serif;
  font-size: 1.45rem;
  font-weight: 800;
}

.kgd-overview-card strong,
.kgd-overview-card small {
  display: block;
}

.kgd-overview-card strong {
  color: var(--kgd-white);
  font-size: 1.03rem;
}

.kgd-overview-card small {
  margin-top: 3px;
  color: rgba(255,255,255,.70);
  font-size: .86rem;
}

.kgd-knowledge-tools {
  position: relative;
  z-index: 4;
  margin-top: -40px;
}

.kgd-search-panel {
  padding: 25px clamp(20px, 4vw, 38px);
  border: 1px solid #dbe5eb;
  border-radius: 20px;
  background: var(--kgd-white);
  box-shadow: var(--kgd-shadow);
}

.kgd-search-panel > label {
  display: block;
  margin-bottom: 8px;
  color: var(--kgd-graphite);
  font-weight: 800;
}

.kgd-search-field {
  position: relative;
}

.kgd-search-field svg {
  position: absolute;
  top: 50%;
  left: 17px;
  width: 22px;
  height: 22px;
  fill: var(--kgd-blue);
  transform: translateY(-50%);
  pointer-events: none;
}

.kgd-search-field input {
  width: 100%;
  min-height: 54px;
  padding: 11px 16px 11px 51px;
  border: 1px solid #cbd7df;
  border-radius: 12px;
  background: #fbfdfe;
  color: var(--kgd-text);
  font: inherit;
  outline: 0;
  transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

.kgd-search-field input:focus {
  border-color: var(--kgd-blue);
  background: var(--kgd-white);
  box-shadow: 0 0 0 3px rgba(29,112,183,.12);
}

.kgd-filter-buttons {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 16px;
}

.kgd-filter-buttons button {
  min-height: 39px;
  padding: 8px 14px;
  border: 1px solid #d2dde5;
  border-radius: 999px;
  background: var(--kgd-white);
  color: var(--kgd-graphite);
  font: inherit;
  font-size: .88rem;
  font-weight: 800;
  cursor: pointer;
  transition: background .18s ease, border-color .18s ease, color .18s ease, transform .18s ease;
}

.kgd-filter-buttons button:hover,
.kgd-filter-buttons button:focus-visible {
  transform: translateY(-1px);
  border-color: var(--kgd-blue);
  color: var(--kgd-blue-dark);
}

.kgd-filter-buttons button.is-active {
  border-color: var(--kgd-blue);
  background: var(--kgd-blue);
  color: var(--kgd-white);
}

.kgd-result-count {
  min-height: 20px;
  margin-top: 10px !important;
  color: var(--kgd-muted);
  font-size: .84rem;
}

.kgd-knowledge-section {
  padding-block: clamp(74px, 8vw, 108px);
  scroll-margin-top: 30px;
}

.kgd-knowledge-section-soft {
  background: #f5f9fc;
}

.kgd-knowledge-heading {
  max-width: 840px;
  margin-bottom: 38px;
}

.kgd-knowledge-heading h2 {
  color: var(--kgd-graphite);
  font-size: clamp(2rem, 3.6vw, 3.25rem);
}

.kgd-knowledge-heading p {
  margin-top: 16px;
  color: #59656e;
  font-size: 1.02rem;
}

.kgd-accordion-list {
  display: grid;
  gap: 13px;
}

.kgd-knowledge-item {
  overflow: hidden;
  border: 1px solid #dbe5eb;
  border-radius: 16px;
  background: var(--kgd-white);
  box-shadow: 0 9px 25px rgba(31,64,88,.055);
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.kgd-knowledge-item[hidden] {
  display: none !important;
}

.kgd-knowledge-item:hover {
  transform: translateY(-2px);
  border-color: #b7d2e5;
  box-shadow: 0 14px 30px rgba(31,64,88,.09);
}

.kgd-knowledge-item[open] {
  border-color: rgba(29,112,183,.52);
  box-shadow: 0 16px 36px rgba(31,64,88,.10);
}

.kgd-knowledge-item summary {
  position: relative;
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) 28px;
  gap: 14px;
  align-items: center;
  min-height: 78px;
  padding: 18px 21px;
  color: var(--kgd-graphite);
  cursor: pointer;
  list-style: none;
  outline: 0;
}

.kgd-knowledge-item summary::-webkit-details-marker {
  display: none;
}

.kgd-knowledge-item summary:focus-visible {
  box-shadow: inset 0 0 0 3px rgba(29,112,183,.19);
}

.kgd-item-index {
  color: var(--kgd-blue);
  font-family: "Roboto Condensed", "Arial Narrow", Arial, sans-serif;
  font-size: 1rem;
  font-weight: 800;
}

.kgd-item-title {
  font-weight: 800;
  line-height: 1.35;
}

.kgd-item-toggle {
  position: relative;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: var(--kgd-ice);
}

.kgd-item-toggle::before,
.kgd-item-toggle::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 11px;
  height: 2px;
  border-radius: 999px;
  background: var(--kgd-blue-dark);
  transform: translate(-50%, -50%);
  transition: transform .18s ease;
}

.kgd-item-toggle::after {
  transform: translate(-50%, -50%) rotate(90deg);
}

.kgd-knowledge-item[open] .kgd-item-toggle::after {
  transform: translate(-50%, -50%) rotate(0);
}

.kgd-item-content {
  padding: 0 63px 23px 77px;
  color: #56626b;
}

.kgd-item-content p {
  max-width: 940px;
}

.kgd-glossary-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 15px;
}

.kgd-glossary-item summary {
  grid-template-columns: 46px minmax(0, 1fr) 28px;
  min-height: 86px;
}

.kgd-glossary-letter {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 12px;
  background: var(--kgd-ice);
  color: var(--kgd-blue-dark);
  font-family: "Roboto Condensed", "Arial Narrow", Arial, sans-serif;
  font-size: 1.25rem;
  font-weight: 800;
}

.kgd-glossary-item .kgd-item-content {
  padding: 0 25px 24px 81px;
}

.kgd-no-results {
  margin-top: 20px;
  padding: 26px;
  border: 1px dashed #b7c9d6;
  border-radius: 14px;
  text-align: center;
  color: var(--kgd-muted);
}

.kgd-no-results strong {
  color: var(--kgd-graphite);
}

.kgd-no-results p {
  margin-top: 6px;
}

.kgd-knowledge-note {
  padding-block: 30px;
  border-top: 1px solid #dce6ed;
  border-bottom: 1px solid #dce6ed;
  background: var(--kgd-white);
}

.kgd-knowledge-note-inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 28px;
  align-items: center;
}

.kgd-knowledge-note strong {
  color: var(--kgd-graphite);
}

.kgd-knowledge-note p {
  max-width: 940px;
  margin-top: 5px;
  color: var(--kgd-muted);
  font-size: .9rem;
}

.kgd-knowledge-note span {
  color: var(--kgd-muted);
  font-size: .84rem;
  white-space: nowrap;
}

.kgd-knowledge-cta {
  color: var(--kgd-white);
  background: var(--kgd-graphite);
}

.kgd-knowledge-cta-inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 34px;
  align-items: center;
  padding-block: clamp(60px, 7vw, 84px);
}

.kgd-knowledge-cta .kgd-eyebrow {
  color: #dbeaf5;
}

.kgd-knowledge-cta h2 {
  max-width: 780px;
  color: var(--kgd-white);
  font-size: clamp(2rem, 3.6vw, 3.3rem);
}

.kgd-knowledge-cta p {
  max-width: 800px;
  margin-top: 14px;
  color: rgba(255,255,255,.76);
}

.kgd-knowledge-cta .kgd-actions {
  margin-top: 0;
}

@media (max-width: 980px) {
  .kgd-knowledge-hero-inner,
  .kgd-knowledge-cta-inner {
    grid-template-columns: 1fr;
  }

  .kgd-knowledge-hero-inner {
    min-height: auto;
  }

  .kgd-knowledge-overview {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  .kgd-overview-card {
    grid-template-columns: 1fr;
    text-align: center;
  }

  .kgd-overview-number {
    margin-inline: auto;
  }

  .kgd-knowledge-cta .kgd-actions {
    justify-content: flex-start;
  }
}

@media (max-width: 760px) {
  .kgd-knowledge-overview,
  .kgd-glossary-grid {
    grid-template-columns: 1fr;
  }

  .kgd-overview-card {
    grid-template-columns: 65px minmax(0, 1fr);
    text-align: left;
  }

  .kgd-overview-number {
    margin-inline: 0;
  }

  .kgd-knowledge-tools {
    margin-top: -24px;
  }

  .kgd-knowledge-item summary {
    grid-template-columns: 34px minmax(0, 1fr) 26px;
    gap: 10px;
    min-height: 72px;
    padding: 16px;
  }

  .kgd-item-content,
  .kgd-glossary-item .kgd-item-content {
    padding: 0 18px 21px 60px;
  }

  .kgd-glossary-item summary {
    grid-template-columns: 42px minmax(0, 1fr) 26px;
  }

  .kgd-glossary-item .kgd-item-content {
    padding-left: 68px;
  }

  .kgd-knowledge-note-inner {
    grid-template-columns: 1fr;
    gap: 10px;
  }
}

@media (max-width: 560px) {
  .kgd-knowledge-actions,
  .kgd-knowledge-actions .kgd-btn {
    width: 100%;
  }

  .kgd-filter-buttons {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .kgd-filter-buttons button {
    width: 100%;
  }

  .kgd-overview-card {
    grid-template-columns: 56px minmax(0, 1fr);
  }

  .kgd-overview-number {
    width: 56px;
    height: 52px;
  }

  .kgd-item-content,
  .kgd-glossary-item .kgd-item-content {
    padding-left: 18px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .kgd-overview-card,
  .kgd-filter-buttons button,
  .kgd-knowledge-item,
  .kgd-item-toggle::before,
  .kgd-item-toggle::after {
    transition: none;
  }
}


/* =========================================================
   Ablauf am Unfallort
   ========================================================= */

.kgd-accident-scene,
.kgd-accident-scene * {
  box-sizing: border-box;
}

.kgd-accident-scene {
  width: 100%;
  max-width: 100%;
  overflow: hidden;
  color: var(--kgd-text);
  font-family: inherit;
  line-height: 1.65;
}

.kgd-accident-scene-page .wp-block-shortcode {
  width: 100%;
  max-width: 100%;
  margin: 0 !important;
}

.kgd-accident-scene-page .entry-header,
.kgd-accident-scene-page .page-header,
.kgd-accident-scene-page .entry-title {
  display: none !important;
}

.kgd-accident-scene-page .entry-content {
  margin-top: 0 !important;
}

.kgd-accident-scene h1,
.kgd-accident-scene h2,
.kgd-accident-scene h3 {
  margin: 0;
  font-family: "Roboto Condensed", "Arial Narrow", Arial, sans-serif;
  letter-spacing: -.02em;
  line-height: 1.12;
}

.kgd-accident-scene p {
  margin: 0;
}

.kgd-accident-scene a {
  text-decoration: none;
}

.kgd-accident-hero {
  color: var(--kgd-white);
  background:
    radial-gradient(circle at 86% 12%, rgba(255,255,255,.17), transparent 31%),
    linear-gradient(135deg, var(--kgd-blue-dark), var(--kgd-blue));
}

.kgd-accident-hero-inner {
  display: grid;
  grid-template-columns: minmax(0, 1.12fr) minmax(330px, .88fr);
  gap: clamp(42px, 7vw, 84px);
  align-items: center;
  min-height: 610px;
  padding-block: clamp(70px, 8vw, 100px);
}

.kgd-accident-hero .kgd-eyebrow {
  color: #dcecf8;
}

.kgd-accident-hero h1 {
  max-width: 780px;
  color: var(--kgd-white);
  font-size: clamp(2.55rem, 5vw, 4.65rem);
}

.kgd-accident-lead {
  max-width: 760px;
  margin-top: 23px !important;
  color: rgba(255,255,255,.90);
  font-size: clamp(1.04rem, 1.5vw, 1.22rem);
}

.kgd-accident-hero-actions {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 11px;
  margin-top: 30px;
}

.kgd-emergency-button {
  min-height: 118px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 15px;
  border: 1px solid rgba(255,255,255,.25);
  border-radius: 14px;
  background: rgba(255,255,255,.11);
  color: var(--kgd-white);
  text-align: center;
  box-shadow: 0 12px 28px rgba(0,0,0,.09);
  transition: transform .18s ease, background .18s ease, border-color .18s ease;
}

.kgd-emergency-button:hover,
.kgd-emergency-button:focus-visible {
  transform: translateY(-3px);
  border-color: rgba(255,255,255,.50);
  background: rgba(255,255,255,.17);
}

.kgd-emergency-button span,
.kgd-emergency-button strong,
.kgd-emergency-button small {
  display: block;
}

.kgd-emergency-button span {
  color: rgba(255,255,255,.70);
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.kgd-emergency-button strong {
  margin-top: 2px;
  color: var(--kgd-white);
  font-family: "Roboto Condensed", "Arial Narrow", Arial, sans-serif;
  font-size: clamp(1.35rem, 2.2vw, 1.75rem);
  line-height: 1.1;
}

.kgd-emergency-button small {
  margin-top: 6px;
  color: rgba(255,255,255,.72);
  font-size: .76rem;
  line-height: 1.25;
}

.kgd-emergency-red {
  border-color: rgba(255,255,255,.36);
  background: rgba(110, 12, 12, .36);
}

.kgd-accident-quick-card {
  padding: clamp(26px, 4vw, 38px);
  border: 1px solid rgba(255,255,255,.24);
  border-radius: 24px;
  background: rgba(255,255,255,.11);
  box-shadow: 0 20px 48px rgba(0,0,0,.16);
  backdrop-filter: blur(9px);
}

.kgd-quick-card-head {
  display: flex;
  gap: 14px;
  align-items: center;
  padding-bottom: 20px;
  border-bottom: 1px solid rgba(255,255,255,.16);
}

.kgd-quick-card-head > span {
  display: grid;
  place-items: center;
  width: 46px;
  height: 46px;
  border-radius: 13px;
  background: rgba(255,255,255,.16);
}

.kgd-quick-card-head svg {
  width: 26px;
  height: 26px;
  fill: currentColor;
}

.kgd-quick-card-head strong,
.kgd-quick-card-head small {
  display: block;
}

.kgd-quick-card-head strong {
  font-family: "Roboto Condensed", "Arial Narrow", Arial, sans-serif;
  font-size: 1.35rem;
}

.kgd-quick-card-head small {
  margin-top: 2px;
  color: rgba(255,255,255,.70);
}

.kgd-accident-quick-card ol {
  display: grid;
  gap: 13px;
  margin: 22px 0 0;
  padding: 0;
  list-style: none;
}

.kgd-accident-quick-card li {
  display: grid;
  grid-template-columns: 29px minmax(0, 1fr);
  gap: 11px;
  align-items: center;
  color: rgba(255,255,255,.91);
  font-size: .94rem;
}

.kgd-accident-quick-card li span {
  display: grid;
  place-items: center;
  width: 29px;
  height: 29px;
  border-radius: 50%;
  background: rgba(255,255,255,.14);
  font-family: "Roboto Condensed", "Arial Narrow", Arial, sans-serif;
  font-weight: 800;
}

.kgd-print-checklist {
  width: 100%;
  min-height: 45px;
  margin-top: 23px;
  border: 1px solid rgba(255,255,255,.35);
  border-radius: 10px;
  background: rgba(255,255,255,.08);
  color: var(--kgd-white);
  font: inherit;
  font-weight: 800;
  cursor: pointer;
  transition: background .18s ease, transform .18s ease;
}

.kgd-print-checklist:hover,
.kgd-print-checklist:focus-visible {
  transform: translateY(-2px);
  background: rgba(255,255,255,.16);
}

.kgd-accident-intro {
  padding-block: 54px;
  border-bottom: 1px solid #dce6ed;
  background: var(--kgd-white);
}

.kgd-accident-intro-inner {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
  gap: clamp(30px, 6vw, 74px);
  align-items: end;
}

.kgd-accident-intro h2,
.kgd-accident-document h2,
.kgd-accident-heading h2 {
  color: var(--kgd-graphite);
  font-size: clamp(2rem, 3.5vw, 3.18rem);
}

.kgd-accident-intro p {
  color: #59656e;
  font-size: 1.01rem;
}

.kgd-accident-steps {
  padding-block: clamp(68px, 8vw, 104px);
  background: #f5f9fc;
}

.kgd-accident-timeline {
  position: relative;
  width: min(920px, 100%);
  margin-inline: auto;
}

.kgd-accident-timeline::before {
  content: "";
  position: absolute;
  top: 42px;
  bottom: 42px;
  left: 37px;
  width: 2px;
  background: linear-gradient(var(--kgd-blue), #b8d6e9);
}

.kgd-accident-step {
  position: relative;
  margin-bottom: 14px;
  overflow: hidden;
  border: 1px solid #dbe5eb;
  border-radius: 17px;
  background: var(--kgd-white);
  box-shadow: 0 9px 24px rgba(31,64,88,.055);
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.kgd-accident-step:last-child {
  margin-bottom: 0;
}

.kgd-accident-step:hover {
  transform: translateY(-2px);
  border-color: #b7d2e5;
  box-shadow: 0 14px 30px rgba(31,64,88,.09);
}

.kgd-accident-step[open] {
  border-color: rgba(29,112,183,.50);
  box-shadow: 0 16px 36px rgba(31,64,88,.10);
}

.kgd-accident-step summary {
  display: grid;
  grid-template-columns: 48px 52px minmax(0, 1fr) 30px;
  gap: 15px;
  align-items: center;
  min-height: 98px;
  padding: 18px 22px;
  cursor: pointer;
  list-style: none;
  outline: 0;
}

.kgd-accident-step summary::-webkit-details-marker {
  display: none;
}

.kgd-accident-step summary:focus-visible {
  box-shadow: inset 0 0 0 3px rgba(29,112,183,.18);
}

.kgd-step-number {
  position: relative;
  z-index: 2;
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: var(--kgd-blue);
  color: var(--kgd-white);
  font-family: "Roboto Condensed", "Arial Narrow", Arial, sans-serif;
  font-size: .82rem;
  font-weight: 800;
  box-shadow: 0 0 0 6px #f5f9fc;
}

.kgd-step-icon {
  display: grid;
  place-items: center;
  width: 52px;
  height: 52px;
  border-radius: 14px;
  background: var(--kgd-ice);
  color: var(--kgd-blue-dark);
}

.kgd-step-icon svg {
  width: 27px;
  height: 27px;
  fill: currentColor;
}

.kgd-step-main strong,
.kgd-step-main small {
  display: block;
}

.kgd-step-main strong {
  color: var(--kgd-graphite);
  font-family: "Roboto Condensed", "Arial Narrow", Arial, sans-serif;
  font-size: 1.2rem;
}

.kgd-step-main small {
  margin-top: 6px;
  color: var(--kgd-muted);
  font-size: .91rem;
  line-height: 1.42;
}

.kgd-step-toggle {
  position: relative;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: var(--kgd-ice);
}

.kgd-step-toggle::before,
.kgd-step-toggle::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 11px;
  height: 2px;
  border-radius: 999px;
  background: var(--kgd-blue-dark);
  transform: translate(-50%, -50%);
  transition: transform .18s ease;
}

.kgd-step-toggle::after {
  transform: translate(-50%, -50%) rotate(90deg);
}

.kgd-accident-step[open] .kgd-step-toggle::after {
  transform: translate(-50%, -50%) rotate(0);
}

.kgd-step-detail {
  padding: 0 66px 24px 152px;
  color: #56626b;
}

.kgd-accident-document {
  padding-block: clamp(72px, 8vw, 106px);
  background: var(--kgd-white);
}

.kgd-document-grid {
  display: grid;
  grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
  gap: clamp(42px, 7vw, 86px);
  align-items: start;
}

.kgd-accident-document p {
  margin-top: 18px;
  color: #59656e;
}

.kgd-photo-checks {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 13px;
}

.kgd-photo-checks > div {
  display: grid;
  grid-template-columns: 35px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  min-height: 78px;
  padding: 17px;
  border: 1px solid #dbe5eb;
  border-radius: 14px;
  background: #f8fbfd;
  color: var(--kgd-graphite);
  font-weight: 800;
}

.kgd-photo-checks span {
  display: grid;
  place-items: center;
  width: 35px;
  height: 35px;
  border-radius: 10px;
  background: var(--kgd-ice);
  color: var(--kgd-blue-dark);
}

.kgd-photo-checks svg {
  width: 20px;
  height: 20px;
  fill: currentColor;
}

.kgd-accident-donts {
  padding-block: clamp(72px, 8vw, 104px);
  background: #f5f9fc;
}

.kgd-accident-heading {
  max-width: 800px;
  margin-bottom: 36px;
}

.kgd-dont-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.kgd-dont-grid article {
  min-height: 100%;
  padding: 24px;
  border: 1px solid #dbe5eb;
  border-radius: 16px;
  background: var(--kgd-white);
  box-shadow: 0 10px 27px rgba(31,64,88,.06);
}

.kgd-dont-grid article > span {
  display: grid;
  place-items: center;
  width: 39px;
  height: 39px;
  border-radius: 11px;
  background: #fcebea;
  color: #9f2e27;
}

.kgd-dont-grid svg {
  width: 22px;
  height: 22px;
  fill: currentColor;
}

.kgd-dont-grid h3 {
  margin-top: 18px;
  color: var(--kgd-graphite);
  font-size: 1.17rem;
}

.kgd-dont-grid p {
  margin-top: 10px;
  color: var(--kgd-muted);
  font-size: .91rem;
  line-height: 1.5;
}

.kgd-accident-after {
  color: var(--kgd-white);
  background: var(--kgd-graphite);
}

.kgd-accident-after-inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 34px;
  align-items: center;
  padding-block: clamp(62px, 7vw, 85px);
}

.kgd-accident-after .kgd-eyebrow {
  color: #dbeaf5;
}

.kgd-accident-after h2 {
  max-width: 820px;
  color: var(--kgd-white);
  font-size: clamp(2rem, 3.7vw, 3.35rem);
}

.kgd-accident-after p {
  max-width: 830px;
  margin-top: 14px;
  color: rgba(255,255,255,.76);
}

.kgd-accident-after .kgd-actions {
  margin-top: 0;
}

.kgd-accident-note {
  padding-block: 25px;
  border-top: 1px solid #dce6ed;
  background: var(--kgd-white);
}

.kgd-accident-note-inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 26px;
  align-items: center;
}

.kgd-accident-note p,
.kgd-accident-note span {
  color: var(--kgd-muted);
  font-size: .83rem;
}

.kgd-accident-note span {
  white-space: nowrap;
}

@media (max-width: 1050px) {
  .kgd-accident-hero-inner,
  .kgd-document-grid,
  .kgd-accident-after-inner {
    grid-template-columns: 1fr;
  }

  .kgd-accident-hero-inner {
    min-height: auto;
  }

  .kgd-dont-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .kgd-accident-after .kgd-actions {
    justify-content: flex-start;
  }
}

@media (max-width: 760px) {
  .kgd-accident-hero-actions,
  .kgd-photo-checks,
  .kgd-dont-grid {
    grid-template-columns: 1fr;
  }

  .kgd-emergency-button {
    min-height: 91px;
  }

  .kgd-accident-intro-inner,
  .kgd-accident-note-inner {
    grid-template-columns: 1fr;
  }

  .kgd-accident-timeline::before {
    left: 31px;
  }

  .kgd-accident-step summary {
    grid-template-columns: 36px 44px minmax(0, 1fr) 26px;
    gap: 10px;
    min-height: 90px;
    padding: 15px 14px;
  }

  .kgd-step-number {
    width: 30px;
    height: 30px;
    box-shadow: 0 0 0 5px #f5f9fc;
  }

  .kgd-step-icon {
    width: 44px;
    height: 44px;
  }

  .kgd-step-icon svg {
    width: 23px;
    height: 23px;
  }

  .kgd-step-detail {
    padding: 0 18px 21px 104px;
  }
}

@media (max-width: 520px) {
  .kgd-step-icon {
    display: none;
  }

  .kgd-accident-step summary {
    grid-template-columns: 36px minmax(0, 1fr) 26px;
  }

  .kgd-step-detail {
    padding-left: 60px;
  }

  .kgd-accident-after .kgd-actions,
  .kgd-accident-after .kgd-btn {
    width: 100%;
  }
}

@media print {
  body * {
    visibility: hidden !important;
  }

  .kgd-accident-scene,
  .kgd-accident-scene * {
    visibility: visible !important;
  }

  .kgd-accident-scene {
    position: absolute;
    inset: 0;
    color: #000 !important;
    overflow: visible;
  }

  .kgd-accident-hero,
  .kgd-accident-steps,
  .kgd-accident-document,
  .kgd-accident-donts,
  .kgd-accident-after,
  .kgd-accident-note {
    background: #fff !important;
    color: #000 !important;
  }

  .kgd-accident-hero-inner,
  .kgd-document-grid,
  .kgd-accident-after-inner {
    display: block;
    min-height: auto;
    padding-block: 20px;
  }

  .kgd-accident-hero h1,
  .kgd-accident-hero p,
  .kgd-accident-after h2,
  .kgd-accident-after p,
  .kgd-quick-card-head,
  .kgd-accident-quick-card li {
    color: #000 !important;
  }

  .kgd-accident-hero-actions,
  .kgd-knowledge-actions,
  .kgd-print-checklist,
  .kgd-accident-after .kgd-actions,
  .kgd-accident-intro {
    display: none !important;
  }

  .kgd-accident-quick-card,
  .kgd-accident-step,
  .kgd-dont-grid article {
    break-inside: avoid;
    border: 1px solid #aaa;
    box-shadow: none;
  }

  .kgd-accident-step {
    margin-bottom: 7px;
  }

  .kgd-accident-step .kgd-step-detail {
    display: block !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .kgd-emergency-button,
  .kgd-print-checklist,
  .kgd-accident-step,
  .kgd-step-toggle::before,
  .kgd-step-toggle::after {
    transition: none;
  }
}


/* =========================================================
   Luxus- und Premiumfahrzeuge
   ========================================================= */

.kgd-premium,
.kgd-premium * {
  box-sizing: border-box;
}

.kgd-premium {
  width: 100%;
  max-width: 100%;
  overflow: hidden;
  color: var(--kgd-text);
  font-family: inherit;
  line-height: 1.65;
}

.kgd-premium-page .wp-block-shortcode {
  width: 100%;
  max-width: 100%;
  margin: 0 !important;
}

.kgd-premium-page .entry-header,
.kgd-premium-page .page-header,
.kgd-premium-page .entry-title {
  display: none !important;
}

.kgd-premium-page .entry-content {
  margin-top: 0 !important;
}

.kgd-premium h1,
.kgd-premium h2,
.kgd-premium h3 {
  margin: 0;
  font-family: "Roboto Condensed", "Arial Narrow", Arial, sans-serif;
  letter-spacing: -.02em;
  line-height: 1.12;
}

.kgd-premium p {
  margin: 0;
}

.kgd-premium a {
  text-decoration: none;
}

.kgd-premium-hero {
  color: var(--kgd-white);
  background:
    radial-gradient(circle at 15% 5%, rgba(255,255,255,.10), transparent 30%),
    linear-gradient(135deg, #102d48, var(--kgd-blue-dark));
}

.kgd-premium-hero-inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(380px, .9fr);
  gap: clamp(42px, 7vw, 86px);
  align-items: center;
  min-height: 650px;
  padding-block: clamp(70px, 8vw, 104px);
}

.kgd-premium-hero .kgd-eyebrow {
  color: #dcecf8;
}

.kgd-premium-hero h1 {
  max-width: 780px;
  color: var(--kgd-white);
  font-size: clamp(2.55rem, 5vw, 4.65rem);
}

.kgd-premium-lead {
  max-width: 760px;
  margin-top: 24px !important;
  color: rgba(255,255,255,.92);
  font-size: clamp(1.05rem, 1.55vw, 1.24rem);
}

.kgd-premium-sub {
  max-width: 720px;
  margin-top: 14px !important;
  color: rgba(255,255,255,.73);
}

.kgd-premium-trust {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 24px;
}

.kgd-premium-trust span {
  padding: 7px 11px;
  border: 1px solid rgba(255,255,255,.23);
  border-radius: 999px;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.82);
  font-size: .79rem;
  font-weight: 800;
}

.kgd-premium-hero-media {
  position: relative;
  min-height: 490px;
  margin: 0;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.22);
  border-radius: 27px;
  box-shadow: 0 24px 60px rgba(0,0,0,.24);
}

.kgd-premium-hero-media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 55%, rgba(7,23,36,.47));
  pointer-events: none;
}

.kgd-premium-hero-media img {
  width: 100%;
  height: 100%;
  min-height: 490px;
  display: block;
  object-fit: cover;
  object-position: 52% center;
}

.kgd-premium-hero-media figcaption {
  position: absolute;
  z-index: 2;
  right: 17px;
  bottom: 13px;
  color: rgba(255,255,255,.72);
  font-size: .74rem;
}

.kgd-premium-intro {
  padding-block: clamp(74px, 8vw, 108px);
  background: var(--kgd-white);
}

.kgd-premium-intro-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.02fr) minmax(340px, .98fr);
  gap: clamp(42px, 7vw, 86px);
  align-items: center;
}

.kgd-premium-intro h2,
.kgd-premium-heading h2,
.kgd-premium-profile h2 {
  color: var(--kgd-graphite);
  font-size: clamp(2rem, 3.6vw, 3.25rem);
}

.kgd-premium-intro p {
  margin-top: 18px;
  color: #59656e;
  font-size: 1.02rem;
}

.kgd-premium-detail-media {
  margin: 0;
  overflow: hidden;
  border-radius: 21px;
  background: #f1f5f7;
  box-shadow: var(--kgd-shadow);
}

.kgd-premium-detail-media img {
  width: 100%;
  aspect-ratio: 16 / 10;
  display: block;
  object-fit: cover;
}

.kgd-premium-detail-media figcaption {
  padding: 13px 16px;
  color: var(--kgd-muted);
  font-size: .82rem;
}

.kgd-premium-special {
  padding-block: clamp(74px, 8vw, 108px);
  background: #f5f9fc;
}

.kgd-premium-heading {
  max-width: 850px;
  margin-bottom: 39px;
}

.kgd-premium-heading p {
  margin-top: 16px;
  color: #59656e;
  font-size: 1.02rem;
}

.kgd-premium-feature-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.kgd-premium-feature-grid article {
  min-height: 100%;
  padding: 26px 23px;
  border: 1px solid #dbe5eb;
  border-radius: 17px;
  background: var(--kgd-white);
  box-shadow: 0 10px 28px rgba(31,64,88,.06);
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.kgd-premium-feature-grid article:hover {
  transform: translateY(-4px);
  border-color: #b6d1e4;
  box-shadow: 0 18px 36px rgba(31,64,88,.10);
}

.kgd-premium-feature-grid article > span {
  color: var(--kgd-blue);
  font-family: "Roboto Condensed", "Arial Narrow", Arial, sans-serif;
  font-size: .9rem;
  font-weight: 800;
  letter-spacing: .09em;
}

.kgd-premium-feature-grid h3 {
  margin-top: 19px;
  color: var(--kgd-graphite);
  font-size: 1.28rem;
}

.kgd-premium-feature-grid p {
  margin-top: 12px;
  color: var(--kgd-muted);
  font-size: .91rem;
  line-height: 1.52;
}

.kgd-premium-gallery {
  padding-block: clamp(74px, 8vw, 108px);
  color: var(--kgd-white);
  background: #172631;
}

.kgd-premium-heading-light h2 {
  color: var(--kgd-white);
}

.kgd-premium-heading-light .kgd-eyebrow {
  color: #a9d3f2;
}

.kgd-premium-image-grid {
  display: grid;
  grid-template-columns: 1.12fr .88fr .88fr;
  gap: 17px;
  align-items: stretch;
}

.kgd-premium-image-card {
  position: relative;
  min-height: 410px;
  margin: 0;
  overflow: hidden;
  border-radius: 18px;
  background: #0c151c;
}

.kgd-premium-image-card::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 53%, rgba(3,10,15,.82));
  pointer-events: none;
}

.kgd-premium-image-card img {
  width: 100%;
  height: 100%;
  min-height: 410px;
  display: block;
  object-fit: cover;
  transition: transform .35s ease;
}

.kgd-premium-image-card:hover img {
  transform: scale(1.025);
}

.kgd-premium-image-card-tall img {
  object-position: center 48%;
}

.kgd-premium-image-card figcaption {
  position: absolute;
  z-index: 2;
  right: 20px;
  bottom: 18px;
  left: 20px;
  color: rgba(255,255,255,.87);
  font-size: .86rem;
  font-weight: 800;
  line-height: 1.4;
}

.kgd-premium-symbol-note {
  margin-top: 13px !important;
  color: rgba(255,255,255,.52);
  font-size: .76rem;
  text-align: right;
}

.kgd-premium-process {
  padding-block: clamp(74px, 8vw, 108px);
  background: var(--kgd-white);
}

.kgd-premium-process-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
}

.kgd-premium-process-grid article {
  position: relative;
  min-height: 100%;
  padding: 27px 23px;
  border-top: 3px solid var(--kgd-blue);
  border-right: 1px solid #dbe5eb;
  border-bottom: 1px solid #dbe5eb;
  border-left: 1px solid #dbe5eb;
  border-radius: 0 0 16px 16px;
  background: #fbfdfe;
}

.kgd-premium-process-grid article > span {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border-radius: 11px;
  background: var(--kgd-ice);
  color: var(--kgd-blue-dark);
  font-family: "Roboto Condensed", "Arial Narrow", Arial, sans-serif;
  font-size: 1.05rem;
  font-weight: 800;
}

.kgd-premium-process-grid h3 {
  margin-top: 21px;
  color: var(--kgd-graphite);
  font-size: 1.24rem;
}

.kgd-premium-process-grid p {
  margin-top: 10px;
  color: var(--kgd-muted);
  font-size: .91rem;
  line-height: 1.52;
}

.kgd-premium-profile {
  padding-block: clamp(72px, 8vw, 104px);
  background: #f5f9fc;
}

.kgd-premium-profile-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.12fr) minmax(310px, .88fr);
  gap: clamp(42px, 7vw, 82px);
  align-items: center;
}

.kgd-premium-profile p {
  margin-top: 17px;
  color: #59656e;
}

.kgd-premium-profile ul {
  display: grid;
  gap: 9px;
  margin: 23px 0 0;
  padding: 0;
  list-style: none;
}

.kgd-premium-profile li {
  position: relative;
  padding-left: 30px;
  color: #46515a;
}

.kgd-premium-profile li::before {
  content: "✓";
  position: absolute;
  top: 1px;
  left: 0;
  display: grid;
  place-items: center;
  width: 21px;
  height: 21px;
  border-radius: 50%;
  background: var(--kgd-ice);
  color: var(--kgd-blue-dark);
  font-size: .8rem;
  font-weight: 900;
}

.kgd-premium-profile-card {
  padding: clamp(28px, 4vw, 40px);
  border-radius: 21px;
  background: var(--kgd-graphite);
  color: var(--kgd-white);
  box-shadow: 0 18px 44px rgba(31,40,48,.16);
}

.kgd-premium-profile-card strong {
  display: block;
  font-family: "Roboto Condensed", "Arial Narrow", Arial, sans-serif;
  font-size: 1.5rem;
  line-height: 1.2;
}

.kgd-premium-profile-card p {
  margin-top: 14px;
  color: rgba(255,255,255,.73);
}

.kgd-premium-profile-card a {
  display: inline-flex;
  margin-top: 20px;
  color: #d9edfb;
  font-weight: 800;
}

.kgd-premium-cta {
  color: var(--kgd-white);
  background: linear-gradient(135deg, var(--kgd-blue-dark), var(--kgd-blue));
}

.kgd-premium-cta-inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 34px;
  align-items: center;
  padding-block: clamp(62px, 7vw, 86px);
}

.kgd-premium-cta .kgd-eyebrow {
  color: #dcecf8;
}

.kgd-premium-cta h2 {
  max-width: 830px;
  color: var(--kgd-white);
  font-size: clamp(2rem, 3.7vw, 3.35rem);
}

.kgd-premium-cta p {
  max-width: 820px;
  margin-top: 14px;
  color: rgba(255,255,255,.77);
}

.kgd-premium-cta .kgd-actions {
  margin-top: 0;
}

@media (max-width: 1080px) {
  .kgd-premium-feature-grid,
  .kgd-premium-process-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .kgd-premium-image-grid {
    grid-template-columns: 1fr 1fr;
  }

  .kgd-premium-image-card-tall {
    grid-row: span 2;
  }
}

@media (max-width: 920px) {
  .kgd-premium-hero-inner,
  .kgd-premium-intro-grid,
  .kgd-premium-profile-grid,
  .kgd-premium-cta-inner {
    grid-template-columns: 1fr;
  }

  .kgd-premium-hero-inner {
    min-height: auto;
  }

  .kgd-premium-hero-media {
    width: min(620px, 100%);
  }

  .kgd-premium-cta .kgd-actions {
    justify-content: flex-start;
  }
}

@media (max-width: 680px) {
  .kgd-premium-feature-grid,
  .kgd-premium-process-grid,
  .kgd-premium-image-grid {
    grid-template-columns: 1fr;
  }

  .kgd-premium-image-card,
  .kgd-premium-image-card img {
    min-height: 360px;
  }

  .kgd-premium-image-card-tall {
    grid-row: auto;
  }

  .kgd-premium-trust {
    display: grid;
  }

  .kgd-premium-trust span {
    text-align: center;
  }

  .kgd-premium-cta .kgd-actions,
  .kgd-premium-cta .kgd-btn {
    width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .kgd-premium-feature-grid article,
  .kgd-premium-image-card img {
    transition: none;
  }
}


/* =========================================================
   Einsatzgebiet
   ========================================================= */

.kgd-service-area,
.kgd-service-area * {
  box-sizing: border-box;
}

.kgd-service-area {
  width: 100%;
  max-width: 100%;
  overflow: hidden;
  color: var(--kgd-text);
  font-family: inherit;
  line-height: 1.65;
}

.kgd-service-area-page .wp-block-shortcode {
  width: 100%;
  max-width: 100%;
  margin: 0 !important;
}

.kgd-service-area-page .entry-header,
.kgd-service-area-page .page-header,
.kgd-service-area-page .entry-title {
  display: none !important;
}

.kgd-service-area-page .entry-content {
  margin-top: 0 !important;
}

.kgd-service-area h1,
.kgd-service-area h2,
.kgd-service-area h3 {
  margin: 0;
  font-family: "Roboto Condensed", "Arial Narrow", Arial, sans-serif;
  letter-spacing: -.02em;
  line-height: 1.12;
}

.kgd-service-area p {
  margin: 0;
}

.kgd-service-area a {
  text-decoration: none;
}

.kgd-area-hero {
  color: var(--kgd-white);
  background:
    radial-gradient(circle at 12% 8%, rgba(255,255,255,.10), transparent 30%),
    linear-gradient(135deg, #123653, var(--kgd-blue-dark));
}

.kgd-area-hero-inner {
  display: grid;
  grid-template-columns: minmax(0, 1.02fr) minmax(390px, .98fr);
  gap: clamp(42px, 7vw, 86px);
  align-items: center;
  min-height: 635px;
  padding-block: clamp(70px, 8vw, 104px);
}

.kgd-area-hero .kgd-eyebrow {
  color: #dcecf8;
}

.kgd-area-hero h1 {
  max-width: 790px;
  color: var(--kgd-white);
  font-size: clamp(2.55rem, 5vw, 4.7rem);
}

.kgd-area-lead {
  max-width: 770px;
  margin-top: 24px !important;
  color: rgba(255,255,255,.90);
  font-size: clamp(1.05rem, 1.55vw, 1.23rem);
}

.kgd-area-hero-facts {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 23px;
}

.kgd-area-hero-facts span {
  padding: 7px 11px;
  border: 1px solid rgba(255,255,255,.22);
  border-radius: 999px;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.82);
  font-size: .79rem;
  font-weight: 800;
}

.kgd-area-hero-media {
  position: relative;
  min-height: 470px;
  margin: 0;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.22);
  border-radius: 26px;
  box-shadow: 0 24px 60px rgba(0,0,0,.22);
}

.kgd-area-hero-media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 55%, rgba(7,23,36,.55));
  pointer-events: none;
}

.kgd-area-hero-media img {
  width: 100%;
  height: 100%;
  min-height: 470px;
  display: block;
  object-fit: cover;
  object-position: center;
}

.kgd-area-hero-media figcaption {
  position: absolute;
  z-index: 2;
  right: 18px;
  bottom: 14px;
  left: 18px;
  color: rgba(255,255,255,.75);
  font-size: .76rem;
  text-align: right;
}

.kgd-area-overview,
.kgd-area-city-pages,
.kgd-area-mobile {
  padding-block: clamp(74px, 8vw, 108px);
}

.kgd-area-overview {
  background: #f5f9fc;
}

.kgd-area-city-pages {
  background: var(--kgd-white);
}

.kgd-area-heading {
  max-width: 850px;
  margin-bottom: 39px;
}

.kgd-area-heading h2,
.kgd-area-mobile h2,
.kgd-area-boundary h2 {
  color: var(--kgd-graphite);
  font-size: clamp(2rem, 3.6vw, 3.25rem);
}

.kgd-area-heading p,
.kgd-area-mobile > .kgd-shell > div > p,
.kgd-area-boundary-inner > div > p {
  margin-top: 16px;
  color: #59656e;
  font-size: 1.01rem;
}

.kgd-region-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.kgd-region-card {
  position: relative;
  min-height: 390px;
  overflow: hidden;
  padding: 25px;
  border: 1px solid #dbe5eb;
  border-radius: 20px;
  background:
    radial-gradient(circle at 90% 10%, rgba(29,112,183,.13), transparent 35%),
    var(--kgd-white);
  box-shadow: 0 12px 30px rgba(31,64,88,.07);
  outline: 0;
  transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;
}

.kgd-region-card::before {
  content: "";
  position: absolute;
  right: -28%;
  bottom: -48%;
  width: 250px;
  height: 250px;
  border: 1px solid rgba(29,112,183,.13);
  border-radius: 50%;
  box-shadow:
    0 0 0 32px rgba(29,112,183,.04),
    0 0 0 66px rgba(29,112,183,.025);
  transition: transform .4s ease;
}

.kgd-region-card:hover,
.kgd-region-card:focus-visible,
.kgd-region-card:focus-within {
  z-index: 2;
  transform: translateY(-7px);
  border-color: rgba(29,112,183,.55);
  box-shadow: 0 22px 45px rgba(31,64,88,.13);
}

.kgd-region-card:hover::before,
.kgd-region-card:focus-visible::before,
.kgd-region-card:focus-within::before {
  transform: translate(-18px, -22px) scale(1.08);
}

.kgd-region-core {
  color: var(--kgd-white);
  border-color: transparent;
  background:
    radial-gradient(circle at 90% 10%, rgba(255,255,255,.18), transparent 35%),
    linear-gradient(145deg, var(--kgd-blue-dark), var(--kgd-blue));
}

.kgd-region-core::before,
.kgd-region-partner::before {
  border-color: rgba(255,255,255,.17);
  box-shadow:
    0 0 0 32px rgba(255,255,255,.05),
    0 0 0 66px rgba(255,255,255,.03);
}

.kgd-region-partner {
  color: var(--kgd-white);
  border-color: transparent;
  background:
    radial-gradient(circle at 90% 10%, rgba(255,255,255,.15), transparent 35%),
    linear-gradient(145deg, #3e4b54, var(--kgd-graphite));
}

.kgd-region-top {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.kgd-region-icon {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  border-radius: 14px;
  background: var(--kgd-ice);
  color: var(--kgd-blue-dark);
}

.kgd-region-core .kgd-region-icon,
.kgd-region-partner .kgd-region-icon {
  background: rgba(255,255,255,.14);
  color: var(--kgd-white);
}

.kgd-region-icon svg {
  width: 25px;
  height: 25px;
  fill: currentColor;
}

.kgd-region-label {
  color: var(--kgd-blue-dark);
  font-size: .75rem;
  font-weight: 800;
  letter-spacing: .1em;
  text-transform: uppercase;
}

.kgd-region-core .kgd-region-label,
.kgd-region-partner .kgd-region-label {
  color: rgba(255,255,255,.73);
}

.kgd-region-copy {
  position: relative;
  z-index: 2;
  margin-top: 68px;
  transition: transform .3s ease;
}

.kgd-region-copy h3 {
  color: var(--kgd-graphite);
  font-size: 1.55rem;
}

.kgd-region-copy p {
  margin-top: 12px;
  color: var(--kgd-muted);
  font-size: .94rem;
}

.kgd-region-core .kgd-region-copy h3,
.kgd-region-partner .kgd-region-copy h3 {
  color: var(--kgd-white);
}

.kgd-region-core .kgd-region-copy p,
.kgd-region-partner .kgd-region-copy p {
  color: rgba(255,255,255,.72);
}

.kgd-region-reveal {
  position: absolute;
  z-index: 3;
  right: 25px;
  bottom: 24px;
  left: 25px;
  padding-top: 17px;
  border-top: 1px solid #dce6ed;
  opacity: 0;
  transform: translateY(24px);
  transition: opacity .28s ease, transform .28s ease;
}

.kgd-region-core .kgd-region-reveal,
.kgd-region-partner .kgd-region-reveal {
  border-color: rgba(255,255,255,.18);
}

.kgd-region-reveal strong {
  display: block;
  color: var(--kgd-graphite);
  font-size: .83rem;
  letter-spacing: .07em;
  text-transform: uppercase;
}

.kgd-region-reveal p {
  margin-top: 7px;
  color: #59656e;
  font-size: .89rem;
  line-height: 1.48;
}

.kgd-region-reveal span {
  display: block;
  margin-top: 10px;
  color: var(--kgd-blue-dark);
  font-size: .78rem;
  font-weight: 800;
}

.kgd-region-core .kgd-region-reveal strong,
.kgd-region-core .kgd-region-reveal span,
.kgd-region-partner .kgd-region-reveal strong,
.kgd-region-partner .kgd-region-reveal span {
  color: var(--kgd-white);
}

.kgd-region-core .kgd-region-reveal p,
.kgd-region-partner .kgd-region-reveal p {
  color: rgba(255,255,255,.74);
}

@media (hover: hover) and (pointer: fine) {
  .kgd-region-card:hover .kgd-region-copy,
  .kgd-region-card:focus-visible .kgd-region-copy {
    transform: translateY(-72px);
  }

  .kgd-region-card:hover .kgd-region-reveal,
  .kgd-region-card:focus-visible .kgd-region-reveal {
    opacity: 1;
    transform: translateY(0);
  }
}

.kgd-city-link-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.kgd-city-link {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 34px;
  gap: 18px;
  align-items: center;
  min-height: 110px;
  padding: 22px 24px;
  overflow: hidden;
  border: 1px solid #dbe5eb;
  border-radius: 16px;
  background: #fbfdfe;
  color: var(--kgd-graphite);
  transition: transform .2s ease, border-color .2s ease, background .2s ease, box-shadow .2s ease;
}

.kgd-city-link:hover,
.kgd-city-link:focus-visible {
  transform: translateX(6px);
  border-color: rgba(29,112,183,.52);
  background: var(--kgd-white);
  box-shadow: 0 14px 30px rgba(31,64,88,.09);
}

.kgd-city-link small,
.kgd-city-link strong {
  display: block;
}

.kgd-city-link small {
  color: var(--kgd-blue);
  font-size: .75rem;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.kgd-city-link strong {
  margin-top: 4px;
  font-family: "Roboto Condensed", "Arial Narrow", Arial, sans-serif;
  font-size: 1.35rem;
}

.kgd-city-link svg {
  width: 27px;
  height: 27px;
  fill: var(--kgd-blue);
  transition: transform .2s ease;
}

.kgd-city-link:hover svg,
.kgd-city-link:focus-visible svg {
  transform: translateX(5px);
}

.kgd-area-mobile {
  background: #f5f9fc;
}

.kgd-area-mobile-grid {
  display: grid;
  grid-template-columns: minmax(340px, .92fr) minmax(0, 1.08fr);
  gap: clamp(42px, 7vw, 86px);
  align-items: center;
}

.kgd-area-camera {
  margin: 0;
  overflow: hidden;
  border-radius: 21px;
  background: #18242d;
  box-shadow: var(--kgd-shadow);
}

.kgd-area-camera img {
  width: 100%;
  aspect-ratio: 4 / 3;
  display: block;
  object-fit: cover;
}

.kgd-area-camera figcaption {
  padding: 13px 16px;
  color: rgba(255,255,255,.72);
  font-size: .8rem;
}

.kgd-location-types {
  display: grid;
  gap: 12px;
  margin-top: 27px;
}

.kgd-location-types article {
  display: grid;
  grid-template-columns: 45px minmax(0, 1fr);
  gap: 15px;
  align-items: center;
  min-height: 83px;
  padding: 17px 19px;
  border: 1px solid #dbe5eb;
  border-radius: 14px;
  background: var(--kgd-white);
}

.kgd-location-types article > span {
  display: grid;
  place-items: center;
  width: 45px;
  height: 45px;
  border-radius: 12px;
  background: var(--kgd-ice);
  color: var(--kgd-blue-dark);
}

.kgd-location-types svg {
  width: 23px;
  height: 23px;
  fill: currentColor;
}

.kgd-location-types strong,
.kgd-location-types small {
  display: block;
}

.kgd-location-types strong {
  color: var(--kgd-graphite);
}

.kgd-location-types small {
  margin-top: 3px;
  color: var(--kgd-muted);
  font-size: .84rem;
}

.kgd-area-boundary {
  color: var(--kgd-white);
  background: var(--kgd-graphite);
}

.kgd-area-boundary-inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(330px, .72fr);
  gap: clamp(36px, 6vw, 74px);
  align-items: center;
  padding-block: clamp(64px, 7vw, 88px);
}

.kgd-area-boundary .kgd-eyebrow {
  color: #dbeaf5;
}

.kgd-area-boundary h2 {
  color: var(--kgd-white);
}

.kgd-area-boundary-inner > div > p {
  color: rgba(255,255,255,.72);
}

.kgd-area-boundary-card {
  padding: 27px;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 18px;
  background: rgba(255,255,255,.07);
}

.kgd-area-boundary-card strong {
  display: block;
  color: var(--kgd-white);
  font-family: "Roboto Condensed", "Arial Narrow", Arial, sans-serif;
  font-size: 1.3rem;
}

.kgd-area-boundary-card p {
  margin-top: 9px;
  color: rgba(255,255,255,.72);
  font-size: .9rem;
}

.kgd-area-boundary-card .kgd-actions {
  margin-top: 20px;
}

.kgd-area-note {
  padding-block: 24px;
  border-top: 1px solid #dce6ed;
  background: var(--kgd-white);
}

.kgd-area-note p {
  color: var(--kgd-muted);
  font-size: .82rem;
  text-align: center;
}

@media (max-width: 1100px) {
  .kgd-region-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 920px) {
  .kgd-area-hero-inner,
  .kgd-area-mobile-grid,
  .kgd-area-boundary-inner {
    grid-template-columns: 1fr;
  }

  .kgd-area-hero-inner {
    min-height: auto;
  }

  .kgd-area-hero-media {
    width: min(700px, 100%);
  }
}

@media (max-width: 700px) {
  .kgd-region-grid,
  .kgd-city-link-grid {
    grid-template-columns: 1fr;
  }

  .kgd-region-card {
    min-height: auto;
  }

  .kgd-region-copy {
    margin-top: 42px;
  }

  .kgd-region-reveal {
    position: relative;
    right: auto;
    bottom: auto;
    left: auto;
    margin-top: 24px;
    opacity: 1;
    transform: none;
  }

  .kgd-area-hero-facts {
    display: grid;
  }

  .kgd-area-hero-facts span {
    text-align: center;
  }

  .kgd-area-boundary-card .kgd-actions,
  .kgd-area-boundary-card .kgd-btn {
    width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .kgd-region-card,
  .kgd-region-card::before,
  .kgd-region-copy,
  .kgd-region-reveal,
  .kgd-city-link,
  .kgd-city-link svg {
    transition: none;
  }
}


/* =========================================================
   Einsatzgebiet – Hover-Karten lesbar und ohne Überlagerung
   Version 1.5.2
   ========================================================= */

@media (hover: hover) and (pointer: fine) and (min-width: 701px) {
  .kgd-region-card {
    min-height: 410px;
  }

  .kgd-region-copy {
    margin-top: 68px;
    transform: none !important;
  }

  .kgd-region-reveal {
    position: absolute;
    z-index: 10;
    inset: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 100%;
    padding: 30px;
    border: 0;
    border-radius: inherit;
    background: rgba(255, 255, 255, .99);
    opacity: 0;
    transform: translateY(100%);
    box-shadow: none;
    pointer-events: none;
  }

  .kgd-region-core .kgd-region-reveal {
    background: rgba(20, 91, 145, .99);
  }

  .kgd-region-partner .kgd-region-reveal {
    background: rgba(78, 78, 77, .99);
  }

  .kgd-region-card:hover .kgd-region-reveal,
  .kgd-region-card:focus-visible .kgd-region-reveal,
  .kgd-region-card:focus-within .kgd-region-reveal {
    opacity: 1;
    transform: translateY(0);
  }

  .kgd-region-reveal strong {
    color: var(--kgd-graphite);
    font-family: "Roboto Condensed", "Arial Narrow", Arial, sans-serif;
    font-size: 1.42rem;
    line-height: 1.2;
    letter-spacing: -.01em;
    text-transform: none;
  }

  .kgd-region-reveal p {
    margin-top: 15px;
    color: #4e5a63;
    font-size: .96rem;
    line-height: 1.55;
  }

  .kgd-region-reveal span {
    display: block;
    margin-top: 17px;
    color: var(--kgd-blue-dark);
    font-size: .82rem;
    font-weight: 800;
    line-height: 1.45;
  }

  .kgd-region-core .kgd-region-reveal strong,
  .kgd-region-core .kgd-region-reveal span,
  .kgd-region-partner .kgd-region-reveal strong,
  .kgd-region-partner .kgd-region-reveal span {
    color: #ffffff;
  }

  .kgd-region-core .kgd-region-reveal p,
  .kgd-region-partner .kgd-region-reveal p {
    color: rgba(255, 255, 255, .84);
  }
}

/* Tablet und Smartphone: Zusatzinformationen immer vollständig sichtbar. */
@media (max-width: 700px), (hover: none) {
  .kgd-region-reveal {
    opacity: 1;
    transform: none;
  }
}


/* =========================================================
   Unfallgutachten
   ========================================================= */

.kgd-accident-report,
.kgd-accident-report * {
  box-sizing: border-box;
}

.kgd-accident-report {
  width: 100%;
  max-width: 100%;
  overflow: hidden;
  color: var(--kgd-text);
  font-family: inherit;
  line-height: 1.65;
}

.kgd-accident-report-page .wp-block-shortcode {
  width: 100%;
  max-width: 100%;
  margin: 0 !important;
}

.kgd-accident-report-page .entry-header,
.kgd-accident-report-page .page-header,
.kgd-accident-report-page .entry-title {
  display: none !important;
}

.kgd-accident-report-page .entry-content {
  margin-top: 0 !important;
}

.kgd-accident-report h1,
.kgd-accident-report h2,
.kgd-accident-report h3 {
  margin: 0;
  font-family: "Roboto Condensed", "Arial Narrow", Arial, sans-serif;
  letter-spacing: -.02em;
  line-height: 1.12;
}

.kgd-accident-report p {
  margin: 0;
}

.kgd-accident-report a {
  text-decoration: none;
}

.kgd-report-hero {
  color: var(--kgd-white);
  background:
    radial-gradient(circle at 9% 4%, rgba(255,255,255,.09), transparent 28%),
    linear-gradient(135deg, #102f4a, var(--kgd-blue-dark));
}

.kgd-report-hero-inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(410px, .9fr);
  gap: clamp(42px, 7vw, 86px);
  align-items: center;
  min-height: 610px;
  padding-block: clamp(68px, 8vw, 98px) 54px;
}

.kgd-report-hero .kgd-eyebrow {
  color: #dcecf8;
}

.kgd-report-hero h1 {
  max-width: 820px;
  color: var(--kgd-white);
  font-size: clamp(2.55rem, 5vw, 4.7rem);
}

.kgd-report-lead {
  max-width: 780px;
  margin-top: 24px !important;
  color: rgba(255,255,255,.91);
  font-size: clamp(1.05rem, 1.55vw, 1.23rem);
}

.kgd-report-sub {
  max-width: 760px;
  margin-top: 13px !important;
  color: rgba(255,255,255,.72);
}

.kgd-report-hero-media {
  position: relative;
  min-height: 380px;
  margin: 0;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.22);
  border-radius: 25px;
  background: #f5f5f5;
  box-shadow: 0 24px 58px rgba(0,0,0,.23);
}

.kgd-report-hero-media img {
  width: 100%;
  min-height: 380px;
  display: block;
  object-fit: cover;
  object-position: center;
}

.kgd-report-hero-media figcaption {
  position: absolute;
  right: 16px;
  bottom: 13px;
  padding: 5px 8px;
  border-radius: 7px;
  background: rgba(13,31,44,.72);
  color: rgba(255,255,255,.80);
  font-size: .72rem;
}

.kgd-report-fact-strip {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  border-top: 1px solid rgba(255,255,255,.15);
}

.kgd-report-fact-strip > div {
  min-height: 96px;
  padding: 21px 18px;
  border-right: 1px solid rgba(255,255,255,.14);
}

.kgd-report-fact-strip > div:last-child {
  border-right: 0;
}

.kgd-report-fact-strip strong,
.kgd-report-fact-strip span {
  display: block;
}

.kgd-report-fact-strip strong {
  color: var(--kgd-white);
  font-family: "Roboto Condensed", "Arial Narrow", Arial, sans-serif;
  font-size: 1.1rem;
}

.kgd-report-fact-strip span {
  margin-top: 4px;
  color: rgba(255,255,255,.65);
  font-size: .81rem;
  line-height: 1.35;
}

.kgd-report-scope,
.kgd-report-process,
.kgd-report-groups {
  padding-block: clamp(74px, 8vw, 108px);
}

.kgd-report-scope,
.kgd-report-groups {
  background: #f5f9fc;
}

.kgd-report-process {
  background: var(--kgd-white);
}

.kgd-report-heading {
  max-width: 880px;
  margin-bottom: 39px;
}

.kgd-report-heading h2,
.kgd-report-depth h2,
.kgd-report-choice h2,
.kgd-report-digital h2,
.kgd-report-rights h2 {
  color: var(--kgd-graphite);
  font-size: clamp(2rem, 3.6vw, 3.25rem);
}

.kgd-report-heading p {
  margin-top: 16px;
  color: #59656e;
  font-size: 1.01rem;
}

.kgd-report-scan-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.kgd-report-scan-grid article {
  position: relative;
  min-height: 275px;
  overflow: hidden;
  padding: 26px 24px;
  border: 1px solid #dbe5eb;
  border-radius: 17px;
  background: var(--kgd-white);
  box-shadow: 0 10px 28px rgba(31,64,88,.06);
  transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}

.kgd-report-scan-grid article::after {
  content: "";
  position: absolute;
  top: -4px;
  right: 0;
  left: 0;
  height: 3px;
  background: linear-gradient(90deg, transparent, var(--kgd-blue), transparent);
  transform: translateX(-100%);
  transition: transform .45s ease;
}

.kgd-report-scan-grid article:hover {
  transform: translateY(-4px);
  border-color: #b7d2e5;
  box-shadow: 0 18px 36px rgba(31,64,88,.10);
}

.kgd-report-scan-grid article:hover::after {
  transform: translateX(100%);
}

.kgd-report-scan-grid article > span {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  border-radius: 14px;
  background: var(--kgd-ice);
  color: var(--kgd-blue-dark);
}

.kgd-report-scan-grid svg {
  width: 25px;
  height: 25px;
  fill: currentColor;
}

.kgd-report-scan-grid h3 {
  margin-top: 20px;
  color: var(--kgd-graphite);
  font-size: 1.28rem;
}

.kgd-report-scan-grid p {
  margin-top: 11px;
  color: var(--kgd-muted);
  font-size: .91rem;
  line-height: 1.52;
}

.kgd-report-depth {
  padding-block: clamp(74px, 8vw, 108px);
  background: var(--kgd-white);
}

.kgd-report-depth-grid,
.kgd-report-digital-grid {
  display: grid;
  grid-template-columns: minmax(390px, .94fr) minmax(0, 1.06fr);
  gap: clamp(42px, 7vw, 86px);
  align-items: center;
}

.kgd-report-detail-media,
.kgd-report-digital-media {
  margin: 0;
  overflow: hidden;
  border-radius: 21px;
  background: #17242d;
  box-shadow: var(--kgd-shadow);
}

.kgd-report-detail-media img,
.kgd-report-digital-media img {
  width: 100%;
  display: block;
  object-fit: cover;
}

.kgd-report-detail-media img {
  aspect-ratio: 4 / 3;
}

.kgd-report-digital-media img {
  aspect-ratio: 16 / 10;
}

.kgd-report-detail-media figcaption,
.kgd-report-digital-media figcaption {
  padding: 12px 15px;
  color: rgba(255,255,255,.70);
  font-size: .79rem;
}

.kgd-report-depth p,
.kgd-report-choice-copy p,
.kgd-report-digital p,
.kgd-report-rights p {
  margin-top: 17px;
  color: #59656e;
}

.kgd-report-principles {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  margin-top: 24px;
}

.kgd-report-principles span {
  padding: 7px 11px;
  border: 1px solid #cbdce8;
  border-radius: 999px;
  background: #f6fafc;
  color: var(--kgd-blue-dark);
  font-size: .78rem;
  font-weight: 800;
}

.kgd-report-process-line {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  overflow: hidden;
  border: 1px solid #dbe5eb;
  border-radius: 18px;
}

.kgd-report-process-line article {
  min-height: 285px;
  padding: 27px 23px;
  border-right: 1px solid #dbe5eb;
  background: #fbfdfe;
  transition: background .2s ease, transform .2s ease;
}

.kgd-report-process-line article:last-child {
  border-right: 0;
}

.kgd-report-process-line article:hover {
  background: var(--kgd-ice);
}

.kgd-report-process-line article > span {
  color: var(--kgd-blue);
  font-family: "Roboto Condensed", "Arial Narrow", Arial, sans-serif;
  font-size: 1.6rem;
  font-weight: 800;
}

.kgd-report-process-line h3 {
  margin-top: 45px;
  color: var(--kgd-graphite);
  font-size: 1.28rem;
}

.kgd-report-process-line p {
  margin-top: 12px;
  color: var(--kgd-muted);
  font-size: .91rem;
  line-height: 1.52;
}

.kgd-report-choice {
  padding-block: clamp(72px, 8vw, 104px);
  background: var(--kgd-graphite);
  color: var(--kgd-white);
}

.kgd-report-choice-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(360px, .9fr);
  gap: clamp(42px, 7vw, 82px);
  align-items: center;
}

.kgd-report-choice .kgd-eyebrow {
  color: #dbeaf5;
}

.kgd-report-choice h2 {
  color: var(--kgd-white);
}

.kgd-report-choice-copy p {
  color: rgba(255,255,255,.73);
}

.kgd-inline-link {
  display: inline-flex;
  margin-top: 22px;
  color: #d9edfb;
  font-weight: 800;
}

.kgd-report-choice-board {
  overflow: hidden;
  border: 1px solid rgba(255,255,255,.16);
  border-radius: 18px;
  background: rgba(255,255,255,.07);
}

.kgd-report-choice-board > div {
  padding: 24px 25px;
  border-bottom: 1px solid rgba(255,255,255,.14);
}

.kgd-report-choice-board > div:last-child {
  border-bottom: 0;
  background: rgba(29,112,183,.15);
}

.kgd-report-choice-board strong {
  color: var(--kgd-white);
  font-family: "Roboto Condensed", "Arial Narrow", Arial, sans-serif;
  font-size: 1.18rem;
}

.kgd-report-choice-board ul {
  display: grid;
  gap: 8px;
  margin: 14px 0 0;
  padding-left: 18px;
  color: rgba(255,255,255,.73);
  font-size: .88rem;
}

.kgd-report-digital {
  padding-block: clamp(74px, 8vw, 108px);
  background: var(--kgd-white);
}

.kgd-report-digital-grid {
  grid-template-columns: minmax(0, 1.04fr) minmax(390px, .96fr);
}

.kgd-report-group-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 17px;
}

.kgd-report-group-grid article {
  min-height: 260px;
  padding: 27px 24px;
  border: 1px solid #dbe5eb;
  border-radius: 17px;
  background: var(--kgd-white);
  box-shadow: 0 10px 28px rgba(31,64,88,.06);
}

.kgd-report-group-grid article > span {
  display: grid;
  place-items: center;
  width: 50px;
  height: 50px;
  border-radius: 14px;
  background: var(--kgd-ice);
  color: var(--kgd-blue-dark);
}

.kgd-report-group-grid svg {
  width: 27px;
  height: 27px;
  fill: currentColor;
}

.kgd-report-group-grid h3 {
  margin-top: 21px;
  color: var(--kgd-graphite);
  font-size: 1.3rem;
}

.kgd-report-group-grid p {
  margin-top: 11px;
  color: var(--kgd-muted);
  font-size: .91rem;
  line-height: 1.52;
}

.kgd-report-rights {
  padding-block: clamp(72px, 8vw, 104px);
  background: var(--kgd-white);
}

.kgd-report-rights-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.12fr) minmax(320px, .88fr);
  gap: clamp(42px, 7vw, 82px);
  align-items: center;
}

.kgd-report-rights-card {
  padding: clamp(28px, 4vw, 40px);
  border-radius: 20px;
  background: linear-gradient(145deg, var(--kgd-blue-dark), var(--kgd-blue));
  color: var(--kgd-white);
  box-shadow: 0 18px 44px rgba(21,74,115,.20);
}

.kgd-report-rights-card > strong {
  display: block;
  font-family: "Roboto Condensed", "Arial Narrow", Arial, sans-serif;
  font-size: 1.55rem;
}

.kgd-report-rights-card ul {
  display: grid;
  gap: 13px;
  margin: 22px 0 0;
  padding: 0;
  list-style: none;
}

.kgd-report-rights-card li {
  display: grid;
  grid-template-columns: 24px minmax(0, 1fr);
  gap: 10px;
  align-items: start;
  color: rgba(255,255,255,.84);
  font-size: .91rem;
}

.kgd-report-rights-card svg {
  width: 22px;
  height: 22px;
  fill: #d8edfa;
}

.kgd-report-cta {
  color: var(--kgd-white);
  background: linear-gradient(135deg, #112f49, var(--kgd-blue-dark));
}

.kgd-report-cta-inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 34px;
  align-items: center;
  padding-block: clamp(62px, 7vw, 86px);
}

.kgd-report-cta .kgd-eyebrow {
  color: #dcecf8;
}

.kgd-report-cta h2 {
  max-width: 840px;
  color: var(--kgd-white);
  font-size: clamp(2rem, 3.7vw, 3.35rem);
}

.kgd-report-cta p {
  max-width: 820px;
  margin-top: 14px;
  color: rgba(255,255,255,.76);
}

.kgd-report-cta .kgd-actions {
  margin-top: 0;
}

.kgd-report-note {
  padding-block: 24px;
  background: var(--kgd-white);
}

.kgd-report-note p {
  color: var(--kgd-muted);
  font-size: .82rem;
  text-align: center;
}

@media (max-width: 1050px) {
  .kgd-report-scan-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .kgd-report-process-line {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .kgd-report-process-line article:nth-child(2) {
    border-right: 0;
  }

  .kgd-report-process-line article:nth-child(-n+2) {
    border-bottom: 1px solid #dbe5eb;
  }
}

@media (max-width: 920px) {
  .kgd-report-hero-inner,
  .kgd-report-depth-grid,
  .kgd-report-choice-grid,
  .kgd-report-digital-grid,
  .kgd-report-rights-grid,
  .kgd-report-cta-inner {
    grid-template-columns: 1fr;
  }

  .kgd-report-hero-inner {
    min-height: auto;
  }

  .kgd-report-hero-media {
    width: min(720px, 100%);
  }

  .kgd-report-fact-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .kgd-report-fact-strip > div:nth-child(2) {
    border-right: 0;
  }

  .kgd-report-fact-strip > div:nth-child(-n+2) {
    border-bottom: 1px solid rgba(255,255,255,.14);
  }

  .kgd-report-cta .kgd-actions {
    justify-content: flex-start;
  }
}

@media (max-width: 700px) {
  .kgd-report-scan-grid,
  .kgd-report-process-line,
  .kgd-report-group-grid {
    grid-template-columns: 1fr;
  }

  .kgd-report-process-line article,
  .kgd-report-process-line article:nth-child(2) {
    border-right: 0;
    border-bottom: 1px solid #dbe5eb;
  }

  .kgd-report-process-line article:last-child {
    border-bottom: 0;
  }

  .kgd-report-fact-strip {
    grid-template-columns: 1fr;
  }

  .kgd-report-fact-strip > div {
    border-right: 0;
    border-bottom: 1px solid rgba(255,255,255,.14);
  }

  .kgd-report-fact-strip > div:last-child {
    border-bottom: 0;
  }

  .kgd-report-principles {
    display: grid;
  }

  .kgd-report-principles span {
    text-align: center;
  }

  .kgd-report-cta .kgd-actions,
  .kgd-report-cta .kgd-btn {
    width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .kgd-report-scan-grid article,
  .kgd-report-scan-grid article::after,
  .kgd-report-process-line article {
    transition: none;
  }
}


/* =========================================================
   Startseite
   ========================================================= */

.kgd-home,
.kgd-home * {
  box-sizing: border-box;
}

.kgd-home {
  width: 100%;
  max-width: 100%;
  overflow: hidden;
  color: var(--kgd-text);
  font-family: inherit;
  line-height: 1.65;
}

.kgd-home-page .wp-block-shortcode {
  width: 100%;
  max-width: 100%;
  margin: 0 !important;
}

.kgd-home-page .entry-header,
.kgd-home-page .page-header,
.kgd-home-page .entry-title {
  display: none !important;
}

.kgd-home-page .entry-content {
  margin-top: 0 !important;
}

.kgd-home h1,
.kgd-home h2,
.kgd-home h3 {
  margin: 0;
  font-family: "Roboto Condensed", "Arial Narrow", Arial, sans-serif;
  letter-spacing: -.025em;
  line-height: 1.1;
}

.kgd-home p {
  margin: 0;
}

.kgd-home a {
  text-decoration: none;
}

.kgd-home svg {
  fill: currentColor;
}

/* Hero mit Bildmotiv, dessen ursprüngliche Textfläche bewusst überdeckt wird */
.kgd-home-hero {
  position: relative;
  min-height: 690px;
  overflow: hidden;
  color: var(--kgd-white);
  background: var(--kgd-blue-dark);
}

.kgd-home-hero-media {
  position: absolute;
  inset: 0;
  margin: 0;
}

.kgd-home-hero-media::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    linear-gradient(
      90deg,
      rgba(14, 58, 91, 1) 0%,
      rgba(14, 58, 91, .995) 39%,
      rgba(14, 58, 91, .91) 49%,
      rgba(14, 58, 91, .52) 64%,
      rgba(9, 28, 42, .13) 82%,
      rgba(9, 28, 42, .20) 100%
    );
}

.kgd-home-hero-media img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center center;
}

.kgd-home-hero-inner {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  min-height: 690px;
  padding-block: clamp(74px, 8vw, 112px);
}

.kgd-home-hero-copy {
  width: min(700px, 59%);
}

.kgd-home-hero .kgd-eyebrow {
  color: #dcecf8;
}

.kgd-home-hero h1 {
  color: var(--kgd-white);
  font-size: clamp(2.75rem, 5.3vw, 5.15rem);
}

.kgd-home-lead {
  max-width: 690px;
  margin-top: 24px !important;
  color: rgba(255,255,255,.91);
  font-size: clamp(1.06rem, 1.65vw, 1.26rem);
}

.kgd-home-region {
  margin-top: 13px !important;
  color: rgba(255,255,255,.68);
  font-size: .92rem;
  font-weight: 700;
}

.kgd-home-hero-actions {
  align-items: center;
}

.kgd-home-hero-actions .kgd-btn {
  gap: 9px;
}

.kgd-home-hero-actions .kgd-btn svg {
  width: 19px;
  height: 19px;
}

.kgd-home-text-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 48px;
  color: #e4f3fd;
  font-size: .88rem;
  font-weight: 800;
}

.kgd-home-text-link svg {
  width: 19px;
  height: 19px;
  transition: transform .2s ease;
}

.kgd-home-text-link:hover svg,
.kgd-home-text-link:focus-visible svg {
  transform: translateX(5px);
}

.kgd-home-trust-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 25px;
}

.kgd-home-trust-chips span {
  padding: 7px 11px;
  border: 1px solid rgba(255,255,255,.20);
  border-radius: 999px;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.79);
  font-size: .76rem;
  font-weight: 800;
}

/* Direkt anklickbare Aktionsschaltflächen */
.kgd-home-action-dock {
  position: relative;
  z-index: 5;
  margin-top: -42px;
}

.kgd-home-action-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 13px;
}

.kgd-home-action {
  display: grid;
  grid-template-columns: 50px minmax(0, 1fr) 26px;
  gap: 15px;
  align-items: center;
  min-height: 112px;
  padding: 20px 21px;
  border: 1px solid #d8e3ea;
  border-radius: 17px;
  background: rgba(255,255,255,.98);
  color: var(--kgd-graphite);
  box-shadow: 0 16px 38px rgba(20,55,79,.13);
  transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease;
}

.kgd-home-action:hover,
.kgd-home-action:focus-visible {
  transform: translateY(-6px);
  border-color: rgba(29,112,183,.58);
  box-shadow: 0 23px 45px rgba(20,55,79,.17);
}

.kgd-home-action-icon {
  display: grid;
  place-items: center;
  width: 50px;
  height: 50px;
  border-radius: 14px;
  background: var(--kgd-ice);
  color: var(--kgd-blue-dark);
}

.kgd-home-action-icon svg {
  width: 25px;
  height: 25px;
}

.kgd-home-action small,
.kgd-home-action strong {
  display: block;
}

.kgd-home-action small {
  color: var(--kgd-blue);
  font-size: .74rem;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
}

.kgd-home-action strong {
  margin-top: 3px;
  font-family: "Roboto Condensed", "Arial Narrow", Arial, sans-serif;
  font-size: 1.24rem;
}

.kgd-home-action > svg {
  width: 24px;
  height: 24px;
  color: var(--kgd-blue);
  transition: transform .2s ease;
}

.kgd-home-action:hover > svg,
.kgd-home-action:focus-visible > svg {
  transform: translateX(5px);
}

/* Situations-Navigator: dritte Interaktionsart */
.kgd-home-navigator {
  padding-block: clamp(104px, 10vw, 140px) clamp(76px, 8vw, 108px);
  background: #f5f9fc;
}

.kgd-home-navigator-grid {
  display: grid;
  grid-template-columns: minmax(0, .88fr) minmax(440px, 1.12fr);
  gap: clamp(42px, 7vw, 88px);
  align-items: center;
}

.kgd-home-navigator h2,
.kgd-home-heading h2,
.kgd-home-method h2 {
  color: var(--kgd-graphite);
  font-size: clamp(2.1rem, 3.8vw, 3.45rem);
}

.kgd-home-navigator-copy > p {
  max-width: 650px;
  margin-top: 16px;
  color: #59656e;
}

.kgd-home-choice-tabs {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 27px;
  padding: 6px;
  border: 1px solid #d7e3eb;
  border-radius: 15px;
  background: var(--kgd-white);
}

.kgd-home-choice-tab {
  min-height: 43px;
  padding: 9px 15px;
  border: 0;
  border-radius: 10px;
  background: transparent;
  color: #53616b;
  font: inherit;
  font-size: .84rem;
  font-weight: 800;
  cursor: pointer;
  transition: background .18s ease, color .18s ease, box-shadow .18s ease;
}

.kgd-home-choice-tab:hover {
  color: var(--kgd-blue-dark);
}

.kgd-home-choice-tab.is-active {
  background: var(--kgd-blue-dark);
  color: var(--kgd-white);
  box-shadow: 0 7px 18px rgba(21,79,121,.19);
}

.kgd-home-choice-stage {
  min-height: 312px;
}

.kgd-home-choice-panel {
  display: grid;
  grid-template-columns: 90px minmax(0, 1fr);
  gap: 27px;
  align-items: center;
  min-height: 312px;
  padding: clamp(28px, 5vw, 48px);
  border-radius: 24px;
  background:
    radial-gradient(circle at 96% 4%, rgba(255,255,255,.15), transparent 27%),
    linear-gradient(145deg, var(--kgd-blue-dark), var(--kgd-blue));
  color: var(--kgd-white);
  box-shadow: 0 22px 52px rgba(21,74,115,.19);
  animation: kgdHomePanelIn .28s ease both;
}

.kgd-home-choice-panel[hidden] {
  display: none;
}

@keyframes kgdHomePanelIn {
  from {
    opacity: 0;
    transform: translateY(12px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.kgd-home-choice-number {
  display: grid;
  place-items: center;
  width: 90px;
  height: 90px;
  border: 1px solid rgba(255,255,255,.20);
  border-radius: 24px;
  background: rgba(255,255,255,.10);
  font-family: "Roboto Condensed", "Arial Narrow", Arial, sans-serif;
  font-size: 2rem;
  font-weight: 800;
}

.kgd-home-choice-panel h3 {
  color: var(--kgd-white);
  font-size: clamp(1.7rem, 3vw, 2.45rem);
}

.kgd-home-choice-panel p {
  max-width: 620px;
  margin-top: 12px;
  color: rgba(255,255,255,.74);
}

.kgd-home-choice-panel a {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  margin-top: 21px;
  color: var(--kgd-white);
  font-weight: 800;
}

.kgd-home-choice-panel a svg {
  width: 21px;
  height: 21px;
  transition: transform .2s ease;
}

.kgd-home-choice-panel a:hover svg,
.kgd-home-choice-panel a:focus-visible svg {
  transform: translateX(5px);
}

/* Automatisch öffnende Hover-Karten */
.kgd-home-services {
  padding-block: clamp(76px, 8vw, 110px);
  background: var(--kgd-white);
}

.kgd-home-heading {
  max-width: 850px;
  margin-bottom: 39px;
}

.kgd-home-heading p {
  margin-top: 16px;
  color: #59656e;
}

.kgd-home-service-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 17px;
}

.kgd-home-service-card {
  position: relative;
  min-height: 370px;
  overflow: hidden;
  border-radius: 20px;
  background: #16232c;
  color: var(--kgd-white);
  box-shadow: 0 15px 38px rgba(31,64,88,.12);
  outline: 0;
}

.kgd-home-service-card::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 35%, rgba(4,15,23,.89));
  pointer-events: none;
}

.kgd-home-service-card img {
  width: 100%;
  height: 100%;
  min-height: 370px;
  display: block;
  object-fit: cover;
  transition: transform .38s ease;
}

.kgd-home-service-card:hover img,
.kgd-home-service-card:focus-visible img {
  transform: scale(1.035);
}

.kgd-home-service-base {
  position: absolute;
  z-index: 2;
  right: 25px;
  bottom: 23px;
  left: 25px;
  transition: opacity .25s ease, transform .25s ease;
}

.kgd-home-service-base small {
  display: block;
  color: #9fd2f6;
  font-size: .75rem;
  font-weight: 800;
  letter-spacing: .09em;
  text-transform: uppercase;
}

.kgd-home-service-base h3 {
  margin-top: 5px;
  color: var(--kgd-white);
  font-size: 1.65rem;
}

.kgd-home-service-reveal {
  position: absolute;
  z-index: 4;
  inset: 0;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 31px;
  background: rgba(17,74,116,.975);
  opacity: 0;
  transform: translateY(100%);
  transition: opacity .3s ease, transform .3s ease;
}

.kgd-home-service-reveal h3 {
  color: var(--kgd-white);
  font-size: 1.75rem;
}

.kgd-home-service-reveal p {
  max-width: 590px;
  margin-top: 12px;
  color: rgba(255,255,255,.80);
}

.kgd-home-service-reveal span {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: 19px;
  color: var(--kgd-white);
  font-size: .84rem;
  font-weight: 800;
}

.kgd-home-service-reveal svg {
  width: 20px;
  height: 20px;
}

@media (hover: hover) and (pointer: fine) {
  .kgd-home-service-card:hover .kgd-home-service-base,
  .kgd-home-service-card:focus-visible .kgd-home-service-base {
    opacity: 0;
    transform: translateY(18px);
  }

  .kgd-home-service-card:hover .kgd-home-service-reveal,
  .kgd-home-service-card:focus-visible .kgd-home-service-reveal {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Arbeitsweise */
.kgd-home-method {
  padding-block: clamp(76px, 8vw, 110px);
  background: #f5f9fc;
}

.kgd-home-method-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.06fr) minmax(390px, .94fr);
  gap: clamp(42px, 7vw, 86px);
  align-items: center;
}

.kgd-home-method-copy > p {
  margin-top: 17px;
  color: #59656e;
}

.kgd-home-method-points {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 11px 18px;
  margin-top: 25px;
}

.kgd-home-method-points span {
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr);
  gap: 9px;
  align-items: center;
  color: #46535c;
  font-size: .9rem;
  font-weight: 700;
}

.kgd-home-method-points svg {
  width: 22px;
  height: 22px;
  color: var(--kgd-blue);
}

.kgd-home-method-links {
  display: flex;
  flex-wrap: wrap;
  gap: 13px 23px;
  margin-top: 27px;
}

.kgd-home-method-links a {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: var(--kgd-blue-dark);
  font-size: .86rem;
  font-weight: 800;
}

.kgd-home-method-links svg {
  width: 19px;
  height: 19px;
  transition: transform .2s ease;
}

.kgd-home-method-links a:hover svg,
.kgd-home-method-links a:focus-visible svg {
  transform: translateX(5px);
}

.kgd-home-method-media {
  margin: 0;
  overflow: hidden;
  border-radius: 21px;
  background: #17242d;
  box-shadow: var(--kgd-shadow);
}

.kgd-home-method-media img {
  width: 100%;
  aspect-ratio: 16 / 10;
  display: block;
  object-fit: cover;
}

.kgd-home-method-media figcaption {
  padding: 12px 15px;
  color: rgba(255,255,255,.70);
  font-size: .79rem;
}

/* Rechtlich vorsichtiger Kostenhinweis */
.kgd-home-cost-note {
  padding-block: 32px;
  background: var(--kgd-white);
}

.kgd-home-cost-note-inner {
  display: grid;
  grid-template-columns: 58px minmax(0, 1fr) auto;
  gap: 20px;
  align-items: center;
  padding: 24px 27px;
  border: 1px solid #d9e5ec;
  border-radius: 18px;
  background: #fbfdfe;
}

.kgd-home-cost-icon {
  display: grid;
  place-items: center;
  width: 58px;
  height: 58px;
  border-radius: 15px;
  background: var(--kgd-ice);
  color: var(--kgd-blue-dark);
}

.kgd-home-cost-icon svg {
  width: 29px;
  height: 29px;
}

.kgd-home-cost-note strong {
  display: block;
  color: var(--kgd-graphite);
  font-family: "Roboto Condensed", "Arial Narrow", Arial, sans-serif;
  font-size: 1.2rem;
}

.kgd-home-cost-note p {
  margin-top: 5px;
  color: var(--kgd-muted);
  font-size: .86rem;
  line-height: 1.48;
}

.kgd-home-cost-note a {
  white-space: nowrap;
  color: var(--kgd-blue-dark);
  font-size: .83rem;
  font-weight: 800;
}

/* Abschluss */
.kgd-home-cta {
  color: var(--kgd-white);
  background:
    radial-gradient(circle at 88% 15%, rgba(255,255,255,.10), transparent 27%),
    linear-gradient(135deg, #102f4a, var(--kgd-blue-dark));
}

.kgd-home-cta-inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 34px;
  align-items: center;
  padding-block: clamp(64px, 7vw, 90px);
}

.kgd-home-cta .kgd-eyebrow {
  color: #dcecf8;
}

.kgd-home-cta h2 {
  max-width: 820px;
  color: var(--kgd-white);
  font-size: clamp(2.05rem, 3.8vw, 3.45rem);
}

.kgd-home-cta p {
  max-width: 790px;
  margin-top: 14px;
  color: rgba(255,255,255,.74);
}

.kgd-home-cta .kgd-actions {
  margin-top: 0;
}

.kgd-home-cta .kgd-btn {
  gap: 9px;
}

.kgd-home-cta .kgd-btn svg {
  width: 19px;
  height: 19px;
}

.kgd-home-note {
  padding-block: 23px;
  background: var(--kgd-white);
}

.kgd-home-note p {
  color: var(--kgd-muted);
  font-size: .8rem;
  text-align: center;
}

@media (max-width: 1040px) {
  .kgd-home-hero-copy {
    width: min(680px, 70%);
  }

  .kgd-home-action-grid {
    grid-template-columns: 1fr;
  }

  .kgd-home-action-dock {
    margin-top: -28px;
  }
}

@media (max-width: 920px) {
  .kgd-home-hero {
    min-height: 670px;
  }

  .kgd-home-hero-media::after {
    background:
      linear-gradient(
        90deg,
        rgba(14,58,91,.99) 0%,
        rgba(14,58,91,.96) 54%,
        rgba(14,58,91,.67) 76%,
        rgba(9,28,42,.33) 100%
      );
  }

  .kgd-home-hero-inner {
    min-height: 670px;
  }

  .kgd-home-hero-copy {
    width: min(660px, 82%);
  }

  .kgd-home-navigator-grid,
  .kgd-home-method-grid,
  .kgd-home-cta-inner {
    grid-template-columns: 1fr;
  }

  .kgd-home-choice-stage {
    min-height: auto;
  }

  .kgd-home-cta .kgd-actions {
    justify-content: flex-start;
  }

  .kgd-home-cost-note-inner {
    grid-template-columns: 58px minmax(0, 1fr);
  }

  .kgd-home-cost-note a {
    grid-column: 2;
  }
}

@media (max-width: 700px) {
  .kgd-home-hero {
    min-height: 710px;
  }

  .kgd-home-hero-media img {
    object-position: 68% center;
  }

  .kgd-home-hero-media::after {
    background: rgba(13,55,87,.87);
  }

  .kgd-home-hero-inner {
    min-height: 710px;
  }

  .kgd-home-hero-copy {
    width: 100%;
  }

  .kgd-home-hero-actions,
  .kgd-home-hero-actions .kgd-btn {
    width: 100%;
  }

  .kgd-home-text-link {
    justify-content: center;
    width: 100%;
  }

  .kgd-home-trust-chips {
    display: grid;
  }

  .kgd-home-trust-chips span {
    text-align: center;
  }

  .kgd-home-action {
    grid-template-columns: 46px minmax(0, 1fr) 23px;
    min-height: 103px;
  }

  .kgd-home-action-icon {
    width: 46px;
    height: 46px;
  }

  .kgd-home-choice-tabs {
    display: grid;
    grid-template-columns: 1fr;
    width: 100%;
  }

  .kgd-home-choice-panel {
    grid-template-columns: 1fr;
    min-height: auto;
  }

  .kgd-home-choice-number {
    width: 65px;
    height: 65px;
    border-radius: 18px;
    font-size: 1.45rem;
  }

  .kgd-home-service-grid,
  .kgd-home-method-points {
    grid-template-columns: 1fr;
  }

  .kgd-home-service-card,
  .kgd-home-service-card img {
    min-height: 350px;
  }

  .kgd-home-service-reveal {
    position: relative;
    inset: auto;
    min-height: 0;
    padding: 24px;
    opacity: 1;
    transform: none;
    background: var(--kgd-blue-dark);
  }

  .kgd-home-service-base {
    display: none;
  }

  .kgd-home-cost-note-inner {
    grid-template-columns: 1fr;
    text-align: left;
  }

  .kgd-home-cost-note a {
    grid-column: auto;
  }

  .kgd-home-cta .kgd-actions,
  .kgd-home-cta .kgd-btn {
    width: 100%;
  }
}

@media (prefers-reduced-motion: reduce) {
  .kgd-home-text-link svg,
  .kgd-home-action,
  .kgd-home-action > svg,
  .kgd-home-choice-tab,
  .kgd-home-choice-panel,
  .kgd-home-choice-panel a svg,
  .kgd-home-service-card img,
  .kgd-home-service-base,
  .kgd-home-service-reveal,
  .kgd-home-method-links svg {
    animation: none;
    transition: none;
  }
}
