/* 1.2.87.23.0 – Opel-ähnliches Standardlayout für alle Reparaturprodukte. */
body.mdt-unified-product-page {
  --mdt-unified-blue:#245db5;
  --mdt-unified-blue-dark:#173f83;
  --mdt-unified-dark:#18283d;
  --mdt-unified-text:#425066;
  --mdt-unified-muted:#617083;
  --mdt-unified-line:#d9e3ef;
  --mdt-unified-soft:#f5f8fc;
}

/* Preis direkt am Beauftragungsbutton. */
body.mdt-unified-product-page.mdt-product-type-simple form.cart {
  display:grid;
  grid-template-columns:auto minmax(220px,1fr);
  gap:.65rem;
  align-items:stretch;
}
body.mdt-unified-product-page form.cart .mdt-product-button-price {
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:126px;
  padding:.78rem 1rem;
  border:1px solid #cfdcf0;
  border-radius:11px;
  background:#f7faff;
  color:var(--mdt-unified-dark);
  font-size:1.12rem;
  font-weight:900;
  line-height:1;
  white-space:nowrap;
}
body.mdt-unified-product-page form.cart .mdt-product-button-price del { display:none; }
body.mdt-unified-product-page form.cart .mdt-product-button-price ins { text-decoration:none; }
body.mdt-unified-product-page form.cart .single_add_to_cart_button {
  width:100%;
  min-height:50px;
}

body.mdt-unified-product-page .mdt-unified-product-content {
  color:var(--mdt-unified-text);
}
body.mdt-unified-product-page .mdt-unified-product-content > section,
body.mdt-unified-product-page .mdt-unified-product-content > .mdt-unified-product-compatibility,
body.mdt-unified-product-page .mdt-unified-product-content > .mdt-unified-product-parts {
  margin:0 0 clamp(2rem,5vw,3.5rem);
}
body.mdt-unified-product-page .mdt-unified-product-content h2 {
  margin:0 0 1rem;
  color:var(--mdt-unified-dark);
  font-size:clamp(1.55rem,2.4vw,2.15rem);
  line-height:1.15;
  letter-spacing:-.02em;
}
body.mdt-unified-product-page .mdt-unified-product-content h3 { color:var(--mdt-unified-dark); }
body.mdt-unified-product-page .mdt-unified-product-kicker {
  margin:0 0 .35rem;
  color:var(--mdt-unified-blue);
  font-size:.73rem;
  font-weight:850;
  letter-spacing:.08em;
  text-transform:uppercase;
}
body.mdt-unified-product-page .mdt-unified-product-lead {
  max-width:940px;
  font-size:1.06rem;
  line-height:1.72;
}
body.mdt-unified-product-page .mdt-unified-product-lead p:last-child { margin-bottom:0; }
body.mdt-unified-product-page .mdt-unified-product-facts,
body.mdt-unified-product-page .mdt-unified-product-card-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1rem;
  margin-top:1.35rem;
}
body.mdt-unified-product-page .mdt-unified-product-card-grid {
  grid-template-columns:repeat(4,minmax(0,1fr));
}
body.mdt-unified-product-page .mdt-unified-product-facts > div,
body.mdt-unified-product-page .mdt-unified-product-card-grid article {
  padding:1.15rem;
  border:1px solid var(--mdt-unified-line);
  border-radius:16px;
  background:#fff;
  box-shadow:0 10px 28px rgba(31,55,86,.05);
}
body.mdt-unified-product-page .mdt-unified-product-facts strong {
  display:block;
  margin-bottom:.35rem;
  color:var(--mdt-unified-dark);
  font-size:.98rem;
}
body.mdt-unified-product-page .mdt-unified-product-facts span {
  display:block;
  color:var(--mdt-unified-muted);
  font-size:.9rem;
  line-height:1.5;
}
body.mdt-unified-product-page .mdt-unified-product-two-columns {
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);
  gap:1.25rem;
  align-items:start;
}
body.mdt-unified-product-page .mdt-unified-product-checklist {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:.5rem 1rem;
  margin:0;
  padding:0;
  list-style:none;
}
body.mdt-unified-product-page .mdt-unified-product-checklist li {
  position:relative;
  padding:.75rem .8rem .75rem 2.2rem;
  border:1px solid #e2e9f1;
  border-radius:12px;
  background:#fff;
  line-height:1.42;
}
body.mdt-unified-product-page .mdt-unified-product-checklist li::before {
  content:"✓";
  position:absolute;
  left:.85rem;
  top:.72rem;
  color:#1e7c4b;
  font-weight:900;
}
body.mdt-unified-product-page .mdt-unified-product-note,
body.mdt-unified-product-page .mdt-unified-product-warning {
  padding:1.3rem;
  border:1px solid #f0d39b;
  border-radius:16px;
  background:#fff9ed;
}
body.mdt-unified-product-page .mdt-unified-product-note h2,
body.mdt-unified-product-page .mdt-unified-product-note h3 { margin-top:0; }
body.mdt-unified-product-page .mdt-unified-product-card-grid article {
  position:relative;
  padding-top:3.2rem;
}
body.mdt-unified-product-page .mdt-unified-product-step {
  position:absolute;
  top:1rem;
  left:1rem;
  display:inline-grid;
  place-items:center;
  width:1.75rem;
  height:1.75rem;
  border-radius:999px;
  background:var(--mdt-unified-blue);
  color:#fff;
  font-size:.8rem;
  font-weight:900;
}
body.mdt-unified-product-page .mdt-unified-product-card-grid h3 { margin:0 0 .5rem;font-size:1.03rem; }
body.mdt-unified-product-page .mdt-unified-product-card-grid p { margin:0;color:var(--mdt-unified-muted);font-size:.9rem;line-height:1.5; }
body.mdt-unified-product-page .mdt-unified-product-process {
  display:grid;
  gap:.75rem;
  margin:0;
  padding:0;
  counter-reset:mdt-unified-step;
  list-style:none;
}
body.mdt-unified-product-page .mdt-unified-product-process li {
  display:grid;
  grid-template-columns:minmax(210px,.42fr) 1fr;
  gap:1rem;
  padding:1rem 1.1rem;
  border-bottom:1px solid var(--mdt-unified-line);
  counter-increment:mdt-unified-step;
}
body.mdt-unified-product-page .mdt-unified-product-process strong { color:var(--mdt-unified-dark); }
body.mdt-unified-product-page .mdt-unified-product-process strong::before { content:counter(mdt-unified-step) ". ";color:var(--mdt-unified-blue); }
body.mdt-unified-product-page .mdt-unified-product-process span { color:var(--mdt-unified-muted); }
body.mdt-unified-product-page .mdt-unified-product-extra {
  padding:clamp(1.2rem,2.6vw,2rem);
  border:1px solid var(--mdt-unified-line);
  border-radius:16px;
  background:#fbfdff;
}
body.mdt-unified-product-page .mdt-unified-product-extra > :first-child { margin-top:0; }
body.mdt-unified-product-page .mdt-unified-product-faq { display:grid;gap:.65rem; }
body.mdt-unified-product-page .mdt-unified-product-faq h2 { margin-bottom:.35rem; }
body.mdt-unified-product-page .mdt-unified-product-faq details {
  border:1px solid var(--mdt-unified-line);
  border-radius:12px;
  background:#fff;
  overflow:hidden;
}
body.mdt-unified-product-page .mdt-unified-product-faq summary {
  cursor:pointer;
  padding:1rem 1.1rem;
  color:var(--mdt-unified-dark);
  font-weight:800;
  list-style:none;
}
body.mdt-unified-product-page .mdt-unified-product-faq summary::-webkit-details-marker { display:none; }
body.mdt-unified-product-page .mdt-unified-product-faq summary::after { content:"+";float:right;color:var(--mdt-unified-blue);font-size:1.2rem; }
body.mdt-unified-product-page .mdt-unified-product-faq details[open] summary::after { content:"−"; }
body.mdt-unified-product-page .mdt-unified-product-faq details > div { padding:0 1.1rem 1rem; }
body.mdt-unified-product-page .mdt-unified-product-warning { border-color:#d8e3f1;background:var(--mdt-unified-soft); }
body.mdt-unified-product-page .mdt-unified-product-warning ul { margin-bottom:0; }
body.mdt-unified-product-page .mdt-unified-product-cta {
  display:grid;
  grid-template-columns:1fr auto;
  gap:1.5rem;
  align-items:center;
  padding:clamp(1.35rem,3vw,2rem);
  border-radius:20px;
  background:linear-gradient(135deg,#173f83 0%,#2a65c7 100%);
  color:#fff;
}
body.mdt-unified-product-page .mdt-unified-product-cta,
body.mdt-unified-product-page .mdt-unified-product-cta h2,
body.mdt-unified-product-page .mdt-unified-product-cta h3,
body.mdt-unified-product-page .mdt-unified-product-cta p,
body.mdt-unified-product-page .mdt-unified-product-cta strong,
body.mdt-unified-product-page .mdt-unified-product-cta .mdt-unified-product-kicker { color:#fff !important; opacity:1 !important; }
body.mdt-unified-product-page .mdt-unified-product-cta h2 { margin-bottom:.5rem; }
body.mdt-unified-product-page .mdt-unified-product-cta p { margin:0; }
body.mdt-unified-product-page .mdt-unified-product-cta-actions { display:flex;gap:.65rem;flex-wrap:wrap;justify-content:flex-end; }
body.mdt-unified-product-page .mdt-unified-product-cta .button {
  display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.8rem 1rem;
  border:1px solid #fff;border-radius:10px;background:#fff;color:#174383;font-weight:800;text-decoration:none;
}
body.mdt-unified-product-page .mdt-unified-product-cta .button-alt { background:transparent;color:#fff; }
body.mdt-unified-product-page .mdt-unified-product-compatibility .mdt-product-repair-data,
body.mdt-unified-product-page .mdt-unified-product-parts .mdt-product-repair-data { margin:0; }
body.mdt-unified-product-page .mdt-unified-product-compatibility .mdt-product-info-card,
body.mdt-unified-product-page .mdt-unified-product-parts .mdt-product-info-card { width:100%; }

@media (max-width:980px) {
  body.mdt-unified-product-page .mdt-unified-product-facts,
  body.mdt-unified-product-page .mdt-unified-product-card-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  body.mdt-unified-product-page .mdt-unified-product-two-columns,
  body.mdt-unified-product-page .mdt-unified-product-cta { grid-template-columns:1fr; }
  body.mdt-unified-product-page .mdt-unified-product-cta-actions { justify-content:flex-start; }
}
@media (max-width:680px) {
  body.mdt-unified-product-page.mdt-product-type-simple form.cart { grid-template-columns:1fr; }
  body.mdt-unified-product-page form.cart .mdt-product-button-price { min-height:48px; }
  body.mdt-unified-product-page .mdt-unified-product-facts,
  body.mdt-unified-product-page .mdt-unified-product-checklist,
  body.mdt-unified-product-page .mdt-unified-product-card-grid { grid-template-columns:1fr; }
  body.mdt-unified-product-page .mdt-unified-product-process li { grid-template-columns:1fr;gap:.25rem; }
  body.mdt-unified-product-page .mdt-unified-product-cta-actions,
  body.mdt-unified-product-page .mdt-unified-product-cta .button { width:100%; }
}


/* 1.2.87.17.0 – alle Produkte folgen derselben Opel-orientierten Hierarchie. */
body.mdt-unified-product-page .mdt-unified-product-identification {
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:1.25rem;
  margin-top:0;
}
body.mdt-unified-product-page .mdt-unified-product-identification > div {
  width:100%;
  min-width:0;
}
body.mdt-unified-product-page .mdt-unified-product-identification .mdt-product-repair-data {
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
}
body.mdt-unified-product-page .mdt-unified-product-identification .mdt-product-info-card {
  width:100% !important;
  min-height:100%;
  box-sizing:border-box;
}

/* Preis und Beauftragungsbutton als klare gemeinsame Handlungseinheit. */
body.mdt-unified-product-page.mdt-product-type-simple form.cart {
  display:grid !important;
  grid-template-columns:minmax(118px,.24fr) minmax(220px,1fr) !important;
  gap:.7rem !important;
  align-items:stretch !important;
}
body.mdt-unified-product-page.mdt-product-type-simple form.cart > .quantity {
  display:none !important;
}
body.mdt-unified-product-page form.cart .mdt-product-button-price {
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:118px;
  min-height:50px;
  margin:0 !important;
  padding:.75rem 1rem !important;
  border:1px solid #c9d8eb !important;
  border-radius:11px !important;
  background:#f6f9fe !important;
  color:#172a43 !important;
  font-size:1.1rem !important;
  font-weight:900 !important;
  line-height:1.15 !important;
  box-sizing:border-box;
}
body.mdt-unified-product-page form.cart .mdt-product-button-price .amount,
body.mdt-unified-product-page form.cart .mdt-product-button-price bdi {
  color:inherit !important;
  font-weight:inherit !important;
}
body.mdt-unified-product-page form.cart .single_add_to_cart_button {
  grid-column:auto !important;
  min-height:50px !important;
  margin:0 !important;
}

/* Alter technischer Text bleibt verfügbar, dominiert aber nicht mehr die Seite. */
body.mdt-unified-product-page .mdt-unified-product-extra {
  padding:0;
  overflow:hidden;
}
body.mdt-unified-product-page .mdt-unified-product-extra > details {
  border:0;
  border-radius:16px;
  background:#fbfdff;
}
body.mdt-unified-product-page .mdt-unified-product-extra > details > summary {
  cursor:pointer;
  padding:1.1rem 1.25rem;
  color:var(--mdt-unified-dark);
  font-weight:850;
  list-style:none;
}
body.mdt-unified-product-page .mdt-unified-product-extra > details > summary::-webkit-details-marker { display:none; }
body.mdt-unified-product-page .mdt-unified-product-extra > details > summary::after {
  content:"+";
  float:right;
  color:var(--mdt-unified-blue);
  font-size:1.25rem;
}
body.mdt-unified-product-page .mdt-unified-product-extra > details[open] > summary::after { content:"−"; }
body.mdt-unified-product-page .mdt-unified-product-extra__content {
  padding:0 1.25rem 1.35rem;
}
body.mdt-unified-product-page .mdt-unified-product-extra__content > :first-child { margin-top:0; }

/* CTA-Kontrast gegen globale Theme-/Blockfarben absichern. */
body.mdt-unified-product-page .woocommerce-Tabs-panel .mdt-unified-product-cta,
body.mdt-unified-product-page .wp-block-woocommerce-product-details .mdt-unified-product-cta {
  background:linear-gradient(135deg,#173f83 0%,#2a65c7 100%) !important;
}
body.mdt-unified-product-page .mdt-unified-product-cta *:not(.button) {
  color:#fff !important;
}
body.mdt-unified-product-page .mdt-unified-product-cta .mdt-unified-product-kicker {
  color:#dce9ff !important;
}
body.mdt-unified-product-page .mdt-unified-product-cta .button {
  background:#fff !important;
  color:#174383 !important;
  border-color:#fff !important;
}
body.mdt-unified-product-page .mdt-unified-product-cta .button-alt {
  background:transparent !important;
  color:#fff !important;
  border-color:#fff !important;
}
body.mdt-unified-product-page .mdt-unified-product-cta .button-alt:hover,
body.mdt-unified-product-page .mdt-unified-product-cta .button-alt:focus-visible {
  background:rgba(255,255,255,.12) !important;
}

@media (max-width:680px) {
  body.mdt-unified-product-page.mdt-product-type-simple form.cart {
    grid-template-columns:1fr !important;
  }
  body.mdt-unified-product-page form.cart .mdt-product-button-price,
  body.mdt-unified-product-page form.cart .single_add_to_cart_button {
    width:100% !important;
  }
}


/* 1.2.87.18.0 – Preis und CTA zuverlässig in derselben Zeile. */
body.mdt-unified-product-page.mdt-product-type-simple form.cart {
  display:block !important;
}
body.mdt-unified-product-page form.cart .mdt-product-purchase-row {
  display:grid !important;
  grid-template-columns:minmax(135px,.28fr) minmax(240px,1fr) !important;
  gap:.75rem !important;
  align-items:stretch !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
  box-sizing:border-box !important;
}
body.mdt-unified-product-page form.cart .mdt-product-purchase-row > .quantity {
  display:none !important;
}
body.mdt-unified-product-page form.cart .mdt-product-purchase-row > .mdt-product-button-price {
  grid-column:1 !important;
  grid-row:1 !important;
  width:100% !important;
  min-width:0 !important;
  min-height:50px !important;
  box-sizing:border-box !important;
}
body.mdt-unified-product-page form.cart .mdt-product-purchase-row > .single_add_to_cart_button {
  grid-column:2 !important;
  grid-row:1 !important;
  width:100% !important;
  min-width:0 !important;
  min-height:50px !important;
  box-sizing:border-box !important;
}
@media (max-width:680px) {
  body.mdt-unified-product-page form.cart .mdt-product-purchase-row {
    grid-template-columns:1fr !important;
  }
  body.mdt-unified-product-page form.cart .mdt-product-purchase-row > .mdt-product-button-price,
  body.mdt-unified-product-page form.cart .mdt-product-purchase-row > .single_add_to_cart_button {
    grid-column:1 !important;
  }
  body.mdt-unified-product-page form.cart .mdt-product-purchase-row > .mdt-product-button-price {
    grid-row:1 !important;
  }
  body.mdt-unified-product-page form.cart .mdt-product-purchase-row > .single_add_to_cart_button {
    grid-row:2 !important;
  }
}


/* 1.2.87.23.0 – Identifikationskarten auch auf der Opel-Spezialseite untereinander. */
body.mdt-unified-product-page .mdt-opel-abs-identification-stack {
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:1.25rem;
  margin:0 0 clamp(2rem,5vw,3.5rem);
}
body.mdt-unified-product-page .mdt-opel-abs-identification-stack > section {
  width:100%;
  min-width:0;
  margin:0 !important;
}
body.mdt-unified-product-page .mdt-opel-abs-identification-stack .mdt-product-info-card {
  width:100% !important;
  max-width:none !important;
  box-sizing:border-box;
}

/* 1.2.87.24.0 – nur die RepairFinder-Kachel „Deine Auswahl“ unter dem Kaufbutton korrigieren. */
body.mdt-unified-product-page form.cart .mdt-product-purchase-row > .mdtrf-product-selection {
  grid-column:1 / -1 !important;
  grid-row:2 !important;
  display:grid !important;
  grid-template-columns:32px minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:.75rem !important;
  width:100% !important;
  min-width:0 !important;
  max-width:none !important;
  margin:0 !important;
  padding:.75rem .9rem !important;
  box-sizing:border-box !important;
}
body.mdt-unified-product-page form.cart .mdt-product-purchase-row > .mdtrf-product-selection .mdtrf-product-selection__text {
  min-width:0 !important;
  width:100% !important;
}
body.mdt-unified-product-page form.cart .mdt-product-purchase-row > .mdtrf-product-selection .mdtrf-product-selection__text strong,
body.mdt-unified-product-page form.cart .mdt-product-purchase-row > .mdtrf-product-selection .mdtrf-product-selection__text > span {
  overflow-wrap:anywhere;
}
body.mdt-unified-product-page form.cart .mdt-product-purchase-row > .mdtrf-product-selection > a {
  justify-self:end !important;
  white-space:nowrap !important;
}
@media (max-width:680px) {
  body.mdt-unified-product-page form.cart .mdt-product-purchase-row > .mdtrf-product-selection {
    grid-column:1 !important;
    grid-row:3 !important;
    grid-template-columns:28px minmax(0,1fr) !important;
    padding:.7rem .8rem !important;
  }
  body.mdt-unified-product-page form.cart .mdt-product-purchase-row > .mdtrf-product-selection > a {
    grid-column:2 !important;
    justify-self:start !important;
    white-space:normal !important;
  }
}
