:root {
  --mdt-radius: 18px;
  --mdt-shadow: 0 18px 55px rgba(28, 43, 59, .08);
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { -webkit-font-smoothing: antialiased; text-rendering: optimizeLegibility; }
a { text-underline-offset: .18em; }
.wp-site-blocks { overflow-x: clip; }

.mdt-header {
  position: sticky;
  top: 0;
  z-index: 1000;
  background: rgba(255,255,255,.96);
  backdrop-filter: blur(14px);
  border-bottom: 1px solid var(--wp--preset--color--line);
}
.admin-bar .mdt-header { top: 32px; }
.mdt-header-inner { min-height: 78px; }
.mdt-header .custom-logo { width: min(270px, 34vw); height: auto; display: block; }
.mdt-header .wp-block-navigation-item__content { text-decoration: none; }
.mdt-header .wp-block-navigation-item__content:hover { color: var(--wp--preset--color--blue); }
.mdt-header-actions { gap: .65rem !important; }
.mdt-header-actions .wp-block-search__inside-wrapper { border: 1px solid var(--wp--preset--color--line); border-radius: 10px; overflow: hidden; }

.mdt-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  background:
    radial-gradient(circle at 86% 15%, rgba(60,165,216,.15), transparent 27rem),
    radial-gradient(circle at 66% 80%, rgba(92,99,173,.12), transparent 23rem),
    linear-gradient(180deg, #fbfdff 0%, #f4f7fa 100%);
  border-bottom: 1px solid var(--wp--preset--color--line);
}
.mdt-eyebrow {
  display: inline-flex;
  width: auto;
  padding: .4rem .72rem;
  border: 1px solid rgba(36,81,164,.18);
  border-radius: 999px;
  background: rgba(255,255,255,.8);
  color: var(--wp--preset--color--blue);
  font-size: .82rem;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.mdt-hero h1 { max-width: 820px; }
.mdt-hero-copy { max-width: 680px; color: var(--wp--preset--color--muted); font-size: clamp(1.06rem, 2vw, 1.28rem); }
.mdt-hero-grid { align-items: stretch !important; }

.mdt-finder-card {
  min-height: 100%;
  border: 1px solid var(--wp--preset--color--line);
  border-radius: 24px;
  background: rgba(255,255,255,.92);
  box-shadow: var(--mdt-shadow);
}
.mdt-finder-head { border-bottom: 1px solid var(--wp--preset--color--line); }
.mdt-vehicle-buttons { gap: .65rem !important; }
.mdt-vehicle-buttons .wp-block-button__link {
  background: #fff;
  color: var(--wp--preset--color--ink);
  border: 1px solid var(--wp--preset--color--line);
  box-shadow: none;
}
.mdt-vehicle-buttons .wp-block-button__link:hover {
  border-color: var(--wp--preset--color--blue);
  background: #f6f9ff;
  color: var(--wp--preset--color--blue);
}
.mdt-finder-note { color: var(--wp--preset--color--muted); font-size: .88rem; }

.mdt-section { padding-top: clamp(3.2rem, 7vw, 6.2rem); padding-bottom: clamp(3.2rem, 7vw, 6.2rem); }
.mdt-section-muted { background: var(--wp--preset--color--surface); }
.mdt-section-head { max-width: 760px; margin-bottom: 2.1rem; }
.mdt-kicker { color: var(--wp--preset--color--blue); font-weight: 800; text-transform: uppercase; letter-spacing: .08em; font-size: .78rem; }

.mdt-card-grid { gap: 1rem !important; }
.mdt-card {
  height: 100%;
  padding: 1.5rem;
  border: 1px solid var(--wp--preset--color--line);
  border-radius: var(--mdt-radius);
  background: #fff;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.mdt-card:hover { transform: translateY(-3px); border-color: #cdd7e4; box-shadow: 0 16px 38px rgba(31,52,73,.08); }
.mdt-card h3 { margin-top: .35rem; margin-bottom: .45rem; font-size: 1.22rem; }
.mdt-card p { margin: 0; color: var(--wp--preset--color--muted); font-size: .94rem; }
.mdt-card-number {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border-radius: 10px;
  background: #edf3ff;
  color: var(--wp--preset--color--blue);
  font-weight: 850;
}

.mdt-trust {
  border-top: 1px solid var(--wp--preset--color--line);
  border-bottom: 1px solid var(--wp--preset--color--line);
  background: #fff;
}
.mdt-trust-item { padding: 1.15rem 0; }
.mdt-trust-item strong { display: block; font-size: .95rem; }
.mdt-trust-item span { color: var(--wp--preset--color--muted); font-size: .82rem; }

.mdt-cta {
  overflow: hidden;
  border-radius: 26px;
  background: var(--wp--preset--color--ink);
  color: #fff;
  box-shadow: var(--mdt-shadow);
}
.mdt-cta h2, .mdt-cta p { color: #fff; }
.mdt-cta p { opacity: .78; }
.mdt-cta .wp-block-button__link { background: #fff; color: var(--wp--preset--color--ink); }
.mdt-cta .wp-block-button__link:hover { background: #eaf0f7; color: var(--wp--preset--color--ink); }

.mdt-footer { background: #20252b; color: #e8edf3; }
.mdt-footer a { color: #e8edf3; text-decoration: none; }
.mdt-footer a:hover { color: #fff; text-decoration: underline; }
.mdt-footer .custom-logo { width: 230px; height: auto; filter: brightness(1.35); }
.mdt-footer-small { color: #9faab6; font-size: .82rem; }

.woocommerce div.product .summary,
.woocommerce div.product .woocommerce-product-gallery,
.woocommerce .products li.product,
.wc-block-grid__product,
.wc-block-cart,
.wc-block-checkout {
  border-radius: var(--mdt-radius);
}
.woocommerce .button,
.woocommerce button.button,
.woocommerce a.button,
.wc-block-components-button {
  border-radius: 10px !important;
  font-weight: 750 !important;
}
.woocommerce-message,
.woocommerce-info,
.woocommerce-error {
  border-radius: 12px;
}

@media (max-width: 960px) {
  .mdt-header-inner { min-height: 70px; }
  .mdt-header .custom-logo { width: min(230px, 52vw); }
  .mdt-header-actions .wp-block-search { display: none; }
  .mdt-hero-grid { grid-template-columns: 1fr !important; }
}
@media (max-width: 782px) {
  .admin-bar .mdt-header { top: 46px; }
  .mdt-card-grid { grid-template-columns: 1fr !important; }
  .mdt-trust .wp-block-columns { gap: .2rem !important; }
  .mdt-trust-item { padding: .65rem 0; }
}
@media (max-width: 600px) {
  .mdt-header { position: relative; top: auto !important; }
  .mdt-header-inner { padding-left: 1rem !important; padding-right: 1rem !important; }
  .mdt-hero { padding-top: 2.6rem !important; padding-bottom: 3rem !important; }
  .mdt-finder-card { border-radius: 18px; }
  .mdt-vehicle-buttons { display: grid !important; grid-template-columns: 1fr 1fr; }
  .mdt-vehicle-buttons .wp-block-button { width: 100%; }
  .mdt-vehicle-buttons .wp-block-button__link { width: 100%; }
}
.mdt-trust-item p { margin: 0; }


/* 1.0.1 – Desktop-Proportionen und visuelle Hierarchie */
.mdt-header-inner {
  min-height: 92px;
  gap: clamp(1.25rem, 2.5vw, 2.75rem) !important;
}
.mdt-header .custom-logo {
  width: min(310px, 29vw);
}
.mdt-header .wp-block-navigation {
  flex: 1 1 auto;
}
.mdt-header .wp-block-navigation__container {
  gap: clamp(.85rem, 1.4vw, 1.65rem) !important;
}
.mdt-header .wp-block-navigation-item__content {
  font-size: .98rem;
  white-space: nowrap;
}
.mdt-header-actions {
  margin-left: auto;
}
.mdt-hero-grid {
  gap: clamp(2.75rem, 5vw, 6rem) !important;
}
.mdt-hero h1 {
  max-width: 760px;
  margin-top: .75rem;
  margin-bottom: 1.25rem;
  text-wrap: balance;
}
.mdt-hero-copy {
  max-width: 620px;
  margin-bottom: 1.65rem;
}
.mdt-finder-card {
  max-width: 620px;
  margin-left: auto;
  padding-left: clamp(1.35rem, 2.2vw, 2rem) !important;
  padding-right: clamp(1.35rem, 2.2vw, 2rem) !important;
  padding-bottom: clamp(1.5rem, 2.2vw, 2rem) !important;
  border-radius: 26px;
}
.mdt-finder-head {
  padding-top: 1.65rem !important;
}
.mdt-finder-card .wp-block-search__inside-wrapper {
  min-height: 50px;
  border-radius: 12px;
  overflow: hidden;
}
.mdt-finder-card .wp-block-search__button {
  min-width: 96px;
}
.mdt-vehicle-buttons .wp-block-button__link {
  padding: .72rem 1rem;
  min-width: 78px;
}
.mdt-finder-note {
  margin-top: .75rem;
  margin-bottom: 1rem;
}
.mdt-trust .wp-block-columns {
  gap: clamp(1rem, 2.5vw, 3.5rem) !important;
}
.mdt-trust-item {
  padding: 1.45rem 0;
}
.mdt-section {
  padding-top: clamp(3.5rem, 5.6vw, 5.4rem);
  padding-bottom: clamp(3.5rem, 5.6vw, 5.4rem);
}
.mdt-section-head {
  max-width: 860px;
  margin-bottom: 2rem;
}
.mdt-card {
  padding: 1.65rem;
}
.mdt-card h3 {
  font-size: 1.28rem;
}
.mdt-cta {
  min-height: 160px;
}

@media (min-width: 1200px) {
  .mdt-hero .wp-block-columns {
    min-height: 470px;
    align-items: center !important;
  }
}
@media (max-width: 1100px) {
  .mdt-header .custom-logo { width: min(260px, 28vw); }
  .mdt-header .wp-block-navigation__container { gap: .75rem !important; }
  .mdt-header-actions .wp-block-search { display: none; }
}
@media (max-width: 960px) {
  .mdt-header-inner { min-height: 76px; }
  .mdt-header .custom-logo { width: min(245px, 50vw); }
  .mdt-hero-grid { gap: 2rem !important; }
  .mdt-finder-card { max-width: none; margin-left: 0; }
}

/* 1.0.2 – Produktseite als Reparatur-Service-Seite */
.single-product .wp-site-blocks main,
.single-product main.wp-block-group,
.single-product .woocommerce {
  width: 100%;
}
.single-product .woocommerce > .product,
.single-product .wp-block-woocommerce-single-product {
  max-width: 1320px;
  margin-left: auto;
  margin-right: auto;
}
.single-product .woocommerce div.product {
  padding: clamp(1.25rem, 3vw, 2.5rem) clamp(1rem, 2.5vw, 2rem) 0;
}
.single-product .woocommerce div.product::after {
  content: "";
  display: table;
  clear: both;
}
.single-product .woocommerce div.product div.images,
.single-product .woocommerce div.product div.woocommerce-product-gallery {
  width: 41% !important;
  margin-bottom: 2.5rem;
}
.single-product .woocommerce div.product div.summary {
  width: 53% !important;
  padding: clamp(1.35rem, 2.2vw, 2rem);
  border: 1px solid var(--wp--preset--color--line);
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 18px 55px rgba(28,43,59,.07);
}
.single-product .woocommerce-product-gallery {
  padding: 1rem;
  border: 1px solid var(--wp--preset--color--line);
  border-radius: 22px;
  background: #fff;
}
.single-product .woocommerce-product-gallery__image img {
  border-radius: 14px;
}
.single-product .flex-control-thumbs {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: .75rem;
  margin-top: 1rem !important;
}
.single-product .flex-control-thumbs li {
  width: auto !important;
  float: none !important;
}
.single-product .flex-control-thumbs img {
  border: 1px solid var(--wp--preset--color--line);
  border-radius: 10px;
}
.single-product .product_title,
.single-product .wp-block-post-title,
.single-product .wp-block-woocommerce-product-title {
  margin: 0 0 .8rem !important;
  font-size: clamp(2rem, 3.25vw, 3.2rem) !important;
  line-height: 1.04 !important;
  letter-spacing: -.035em;
}
.single-product .summary .price,
.single-product .wp-block-woocommerce-product-price {
  margin: .25rem 0 1rem !important;
  color: var(--wp--preset--color--ink) !important;
  font-size: clamp(1.65rem, 2.4vw, 2.2rem) !important;
  font-weight: 800;
}
.single-product .woocommerce-product-details__short-description,
.single-product .wp-block-woocommerce-product-summary {
  display: none !important;
}
.single-product .mdt-product-details-jump {
  margin: -.4rem 0 .95rem;
}
.single-product .mdt-product-details-jump a {
  display: inline-flex;
  align-items: center;
  gap: .35rem;
  color: var(--wp--preset--color--blue);
  font-size: .92rem;
  font-weight: 750;
  text-decoration: none;
}
.single-product .mdt-product-details-jump a:hover {
  text-decoration: underline;
  text-underline-offset: 3px;
}
.single-product #tab-description,
.single-product .woocommerce-tabs {
  scroll-margin-top: 90px;
}
.single-product .mdt-product-service-points {
  display: grid;
  gap: .55rem;
  margin: 1.2rem 0 1.35rem;
  padding: 1rem 1.1rem;
  border-radius: 14px;
  background: #f4f7fa;
  color: #3d4854;
  font-size: .94rem;
}
.single-product .mdt-product-service-points span {
  display: flex;
  align-items: flex-start;
  gap: .6rem;
}
.single-product .mdt-product-service-points strong {
  color: #1e7c4b;
}
.single-product form.cart {
  display: flex !important;
  align-items: stretch;
  gap: .75rem;
  margin: 1.35rem 0 0 !important;
  padding: 1rem;
  border: 1px solid #d9e2ec;
  border-radius: 14px;
  background: #fbfdff;
}
.single-product form.cart .quantity {
  margin: 0 !important;
}
.single-product form.cart .qty {
  min-width: 72px;
  height: 50px;
  border: 1px solid #cdd8e4;
  border-radius: 10px;
  font-weight: 700;
}
.single-product form.cart .single_add_to_cart_button {
  flex: 1 1 auto;
  min-height: 50px;
  padding: .9rem 1.3rem !important;
  border-radius: 10px !important;
  background: var(--wp--preset--color--blue) !important;
  font-size: 1rem !important;
}
.single-product form.cart .single_add_to_cart_button:hover {
  background: #183f87 !important;
}
.single-product .product_meta {
  display: none !important;
}
.single-product .mdt-product-repair-data {
  clear: both;
  display: grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap: 1.25rem;
  max-width: 1320px;
  margin: 2.5rem auto 1.5rem;
  padding: 0 clamp(1rem, 2.5vw, 2rem);
}
.single-product .mdt-product-info-card {
  padding: clamp(1.25rem, 2.2vw, 1.8rem);
  border: 1px solid var(--wp--preset--color--line);
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 12px 36px rgba(28,43,59,.05);
}
.single-product .mdt-product-info-card__head h2 {
  margin: .2rem 0 .45rem;
  font-size: clamp(1.4rem, 2vw, 1.8rem);
}
.single-product .mdt-product-info-card__head p {
  margin: 0 0 1rem;
  color: var(--wp--preset--color--muted);
  font-size: .94rem;
}
.single-product .mdt-product-info-kicker {
  color: var(--wp--preset--color--blue);
  font-size: .74rem;
  font-weight: 850;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.single-product .mdt-fitment-groups {
  display: grid;
  gap: .9rem;
}
.single-product .mdt-fitment-group {
  padding-top: .85rem;
  border-top: 1px solid #edf1f5;
}
.single-product .mdt-fitment-group:first-child {
  padding-top: 0;
  border-top: 0;
}
.single-product .mdt-fitment-group__title {
  display: flex;
  align-items: baseline;
  gap: .55rem;
  margin-bottom: .55rem;
}
.single-product .mdt-fitment-group__title span {
  color: var(--wp--preset--color--blue);
  font-size: .73rem;
  font-weight: 800;
  text-transform: uppercase;
}
.single-product .mdt-fitment-group__title strong {
  font-size: 1rem;
}
.single-product .mdt-fitment-models,
.single-product .mdt-part-number-list {
  display: flex;
  flex-wrap: wrap;
  gap: .45rem;
}
.single-product .mdt-fitment-chip,
.single-product .mdt-part-number-chip {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: .34rem .62rem;
  border: 1px solid #dbe4ee;
  border-radius: 999px;
  background: #f7f9fc;
  color: #3d4854;
  font-size: .82rem;
  line-height: 1.2;
}
.single-product .mdt-fitment-chip.is-all {
  background: #edf4ff;
  border-color: #d7e5fa;
  color: #2451a4;
  font-weight: 700;
}
.single-product .mdt-part-number-chip {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  background: #f4f7fa;
}
.single-product .mdt-product-components {
  margin-top: 1rem;
  padding-top: .85rem;
  border-top: 1px solid #edf1f5;
  color: #55606c;
  font-size: .9rem;
}
.single-product .mdt-part-number-more {
  margin-top: .8rem;
}
.single-product .mdt-part-number-more summary {
  cursor: pointer;
  color: var(--wp--preset--color--blue);
  font-weight: 750;
  font-size: .9rem;
}
.single-product .mdt-part-number-more[open] .mdt-part-number-list {
  margin-top: .75rem;
}
.single-product .woocommerce-tabs,
.single-product .wp-block-woocommerce-product-details {
  clear: both;
  max-width: 1320px;
  margin: 1.5rem auto 0 !important;
  padding: 0 clamp(1rem, 2.5vw, 2rem);
}
.single-product .woocommerce-tabs ul.tabs {
  margin-bottom: 1.4rem !important;
  padding: 0 !important;
  border-bottom: 1px solid var(--wp--preset--color--line);
}
.single-product .woocommerce-tabs ul.tabs::before { display: none !important; }
.single-product .woocommerce-tabs ul.tabs li {
  border: 0 !important;
  background: transparent !important;
  margin: 0 1.2rem 0 0 !important;
  padding: 0 !important;
}
.single-product .woocommerce-tabs ul.tabs li::before,
.single-product .woocommerce-tabs ul.tabs li::after { display: none !important; }
.single-product .woocommerce-tabs ul.tabs li a {
  padding: .8rem .1rem !important;
  color: #66717d !important;
}
.single-product .woocommerce-tabs ul.tabs li.active a {
  color: var(--wp--preset--color--blue) !important;
  box-shadow: inset 0 -2px 0 var(--wp--preset--color--blue);
}
.single-product .woocommerce-Tabs-panel {
  max-width: 980px;
  font-size: 1rem;
  line-height: 1.75;
}
.single-product .woocommerce-Tabs-panel h2,
.single-product .woocommerce-Tabs-panel h3,
.single-product .woocommerce-Tabs-panel h4 {
  margin-top: 2rem;
  margin-bottom: .8rem;
}
.single-product .woocommerce-Tabs-panel li {
  margin-bottom: .35rem;
}
.single-product .related.products {
  clear: both;
  max-width: 1320px;
  margin: 3.5rem auto 0 !important;
  padding: 2.5rem clamp(1rem, 2.5vw, 2rem) 3rem;
  border-top: 1px solid var(--wp--preset--color--line);
}
.single-product .related.products > h2 {
  margin-bottom: 1.5rem;
  font-size: clamp(1.65rem, 2.5vw, 2.2rem);
}
.single-product .related.products ul.products {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0,1fr));
  gap: 1rem;
}
.single-product .related.products ul.products::before,
.single-product .related.products ul.products::after { display: none; }
.single-product .related.products ul.products li.product {
  width: auto !important;
  margin: 0 !important;
  padding: .85rem;
  border: 1px solid var(--wp--preset--color--line);
  border-radius: 16px;
  background: #fff;
}
.single-product .related.products li.product img {
  border-radius: 11px;
}
.single-product .related.products li.product .woocommerce-loop-product__title {
  font-size: .95rem !important;
  line-height: 1.3;
}
.single-product .related.products li.product .button {
  width: 100%;
  text-align: center;
}

@media (max-width: 980px) {
  .single-product .woocommerce div.product div.images,
  .single-product .woocommerce div.product div.woocommerce-product-gallery,
  .single-product .woocommerce div.product div.summary {
    width: 100% !important;
    float: none !important;
  }
  .single-product .mdt-product-repair-data {
    grid-template-columns: 1fr;
  }
  .single-product .related.products ul.products {
    grid-template-columns: repeat(2, minmax(0,1fr));
  }
}
@media (max-width: 600px) {
  .single-product .woocommerce div.product {
    padding-left: 1rem;
    padding-right: 1rem;
  }
  .single-product .woocommerce div.product div.summary {
    padding: 1.1rem;
    border-radius: 16px;
  }
  .single-product .product_title,
  .single-product .wp-block-post-title,
  .single-product .wp-block-woocommerce-product-title {
    font-size: 2rem !important;
  }
  .single-product form.cart {
    flex-direction: column;
  }
  .single-product form.cart .quantity,
  .single-product form.cart .qty,
  .single-product form.cart .single_add_to_cart_button {
    width: 100%;
  }
  .single-product .related.products ul.products {
    grid-template-columns: 1fr;
  }
}


/* 1.0.3 – Produkt-Metadaten aus dem Kopf entfernen, Beschreibung beruhigen, Empfehlungen kompakter */
.single-product .product_meta,
.single-product .wp-block-woocommerce-product-meta,
.single-product .wc-block-components-product-metadata,
.single-product .wc-block-components-product-details,
.single-product .wp-block-post-terms,
.single-product .wp-block-woocommerce-product-categories,
.single-product .wp-block-woocommerce-product-tags {
  display: none !important;
}

.single-product .woocommerce-tabs,
.single-product .wp-block-woocommerce-product-details {
  padding-top: .75rem;
}
.single-product .woocommerce-Tabs-panel,
.single-product .wp-block-woocommerce-product-details .wp-block-group {
  max-width: 1080px;
}
.single-product .woocommerce-Tabs-panel--description,
.single-product .woocommerce-Tabs-panel#tab-description {
  padding: clamp(1.2rem, 2.2vw, 2rem);
  border: 1px solid var(--wp--preset--color--line);
  border-radius: 18px;
  background: #fff;
}
.single-product .woocommerce-Tabs-panel--description > :first-child,
.single-product .woocommerce-Tabs-panel#tab-description > :first-child {
  margin-top: 0 !important;
}
.single-product .woocommerce-Tabs-panel p,
.single-product .woocommerce-Tabs-panel li {
  color: #4d5864;
}
.single-product .woocommerce-Tabs-panel ul,
.single-product .woocommerce-Tabs-panel ol {
  padding-left: 1.25rem;
}

/* Classic WooCommerce related products */
.single-product .related.products ul.products li.product .woocommerce-loop-product__title {
  display: -webkit-box;
  overflow: hidden;
  min-height: 2.6em;
  max-height: 2.6em;
  margin: .65rem 0 .45rem !important;
  font-size: .98rem !important;
  line-height: 1.3 !important;
  font-weight: 750 !important;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.single-product .related.products li.product .price {
  display: block;
  margin: .35rem 0 .7rem;
  font-size: 1rem !important;
  font-weight: 800;
}
.single-product .related.products li.product img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: contain;
  background: #fff;
}

/* WooCommerce block-based related/product collection output */
.single-product .wp-block-woocommerce-related-products,
.single-product .wp-block-woocommerce-product-collection[data-collection*="related"] {
  clear: both;
  max-width: 1320px;
  margin: 3.5rem auto 0 !important;
  padding: 2.5rem clamp(1rem, 2.5vw, 2rem) 3rem;
  border-top: 1px solid var(--wp--preset--color--line);
}
.single-product .wp-block-woocommerce-related-products h2,
.single-product .wp-block-woocommerce-related-products h3,
.single-product .wp-block-woocommerce-product-collection[data-collection*="related"] > h2 {
  margin: 0 0 1.4rem !important;
  font-size: clamp(1.55rem, 2.2vw, 2rem) !important;
  line-height: 1.15 !important;
}
.single-product .wp-block-woocommerce-related-products .wc-block-product-template,
.single-product .wp-block-woocommerce-related-products .wp-block-post-template,
.single-product .wp-block-woocommerce-product-collection[data-collection*="related"] .wc-block-product-template,
.single-product .wp-block-woocommerce-product-collection[data-collection*="related"] .wp-block-post-template {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0,1fr)) !important;
  gap: 1rem !important;
}
.single-product .wp-block-woocommerce-related-products .wc-block-product,
.single-product .wp-block-woocommerce-related-products .wp-block-post,
.single-product .wp-block-woocommerce-product-collection[data-collection*="related"] .wc-block-product,
.single-product .wp-block-woocommerce-product-collection[data-collection*="related"] .wp-block-post {
  min-width: 0;
  margin: 0 !important;
  padding: .85rem !important;
  border: 1px solid var(--wp--preset--color--line);
  border-radius: 16px;
  background: #fff;
}
.single-product .wp-block-woocommerce-related-products .wc-block-components-product-image img,
.single-product .wp-block-woocommerce-related-products .wp-block-woocommerce-product-image img,
.single-product .wp-block-woocommerce-product-collection[data-collection*="related"] .wc-block-components-product-image img,
.single-product .wp-block-woocommerce-product-collection[data-collection*="related"] .wp-block-woocommerce-product-image img {
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: contain;
  border-radius: 11px;
  background: #fff;
}
.single-product .wp-block-woocommerce-related-products .wc-block-components-product-name,
.single-product .wp-block-woocommerce-related-products .wp-block-post-title,
.single-product .wp-block-woocommerce-related-products .wp-block-woocommerce-product-title,
.single-product .wp-block-woocommerce-product-collection[data-collection*="related"] .wc-block-components-product-name,
.single-product .wp-block-woocommerce-product-collection[data-collection*="related"] .wp-block-post-title,
.single-product .wp-block-woocommerce-product-collection[data-collection*="related"] .wp-block-woocommerce-product-title {
  display: -webkit-box;
  overflow: hidden;
  min-height: 2.6em;
  max-height: 2.6em;
  margin: .65rem 0 .45rem !important;
  font-size: .98rem !important;
  line-height: 1.3 !important;
  font-weight: 750 !important;
  letter-spacing: 0 !important;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.single-product .wp-block-woocommerce-related-products .wc-block-components-product-price,
.single-product .wp-block-woocommerce-related-products .wp-block-woocommerce-product-price,
.single-product .wp-block-woocommerce-product-collection[data-collection*="related"] .wc-block-components-product-price,
.single-product .wp-block-woocommerce-product-collection[data-collection*="related"] .wp-block-woocommerce-product-price {
  margin: .35rem 0 .7rem !important;
  font-size: 1rem !important;
  font-weight: 800 !important;
}
.single-product .wp-block-woocommerce-related-products .wp-block-button,
.single-product .wp-block-woocommerce-related-products .wp-block-woocommerce-product-button,
.single-product .wp-block-woocommerce-product-collection[data-collection*="related"] .wp-block-button,
.single-product .wp-block-woocommerce-product-collection[data-collection*="related"] .wp-block-woocommerce-product-button {
  width: 100%;
}
.single-product .wp-block-woocommerce-related-products .wp-block-button__link,
.single-product .wp-block-woocommerce-related-products .wp-element-button,
.single-product .wp-block-woocommerce-product-collection[data-collection*="related"] .wp-block-button__link,
.single-product .wp-block-woocommerce-product-collection[data-collection*="related"] .wp-element-button {
  width: 100%;
  padding: .65rem .75rem !important;
  font-size: .84rem !important;
  text-align: center;
}

@media (max-width: 980px) {
  .single-product .wp-block-woocommerce-related-products .wc-block-product-template,
  .single-product .wp-block-woocommerce-related-products .wp-block-post-template,
  .single-product .wp-block-woocommerce-product-collection[data-collection*="related"] .wc-block-product-template,
  .single-product .wp-block-woocommerce-product-collection[data-collection*="related"] .wp-block-post-template {
    grid-template-columns: repeat(2, minmax(0,1fr)) !important;
  }
}
@media (max-width: 600px) {
  .single-product .wp-block-woocommerce-related-products .wc-block-product-template,
  .single-product .wp-block-woocommerce-related-products .wp-block-post-template,
  .single-product .wp-block-woocommerce-product-collection[data-collection*="related"] .wc-block-product-template,
  .single-product .wp-block-woocommerce-product-collection[data-collection*="related"] .wp-block-post-template {
    grid-template-columns: 1fr !important;
  }
}


/* 1.0.4 – Related repairs: robust full-width card grid */
.single-product .related.products {
  display: block !important;
  float: none !important;
  clear: both !important;
  width: 100% !important;
  max-width: 1320px !important;
  box-sizing: border-box !important;
}
.single-product .related.products ul.products,
.single-product .related.products ul.products.columns-2,
.single-product .related.products ul.products.columns-3,
.single-product .related.products ul.products.columns-4,
.single-product .related.products ul.products.columns-5,
.single-product .related.products ul.products.columns-6 {
  display: grid !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 1.15rem !important;
  align-items: stretch !important;
}
.single-product .related.products ul.products li.product,
.single-product .related.products ul.products[class*="columns-"] li.product {
  display: flex !important;
  float: none !important;
  flex-direction: column !important;
  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 1rem !important;
  box-sizing: border-box !important;
  border: 1px solid var(--wp--preset--color--line) !important;
  border-radius: 16px !important;
  background: #fff !important;
}
.single-product .related.products li.product > a.woocommerce-LoopProduct-link,
.single-product .related.products li.product > a.woocommerce-loop-product__link {
  display: flex !important;
  flex: 1 1 auto !important;
  flex-direction: column !important;
  width: 100% !important;
  min-width: 0 !important;
  color: inherit !important;
  text-decoration: none !important;
}
.single-product .related.products li.product img {
  display: block !important;
  width: 100% !important;
  height: 175px !important;
  max-width: 100% !important;
  margin: 0 0 .8rem !important;
  object-fit: contain !important;
  border-radius: 10px !important;
  background: #fff !important;
}
.single-product .related.products li.product .woocommerce-loop-product__title {
  display: -webkit-box !important;
  overflow: hidden !important;
  min-height: 2.65em !important;
  max-height: 2.65em !important;
  margin: 0 0 .55rem !important;
  font-size: .98rem !important;
  line-height: 1.32 !important;
  font-weight: 760 !important;
  letter-spacing: 0 !important;
  word-break: normal !important;
  overflow-wrap: break-word !important;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.single-product .related.products li.product .price {
  display: block !important;
  margin: auto 0 .75rem !important;
  font-size: 1rem !important;
  line-height: 1.2 !important;
  font-weight: 800 !important;
}
.single-product .related.products li.product .button {
  display: block !important;
  width: 100% !important;
  min-height: 42px !important;
  margin: 0 !important;
  padding: .7rem .8rem !important;
  box-sizing: border-box !important;
  font-size: .86rem !important;
  line-height: 1.15 !important;
  text-align: center !important;
}
@media (max-width: 980px) {
  .single-product .related.products ul.products,
  .single-product .related.products ul.products[class*="columns-"] {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 600px) {
  .single-product .related.products ul.products,
  .single-product .related.products ul.products[class*="columns-"] {
    grid-template-columns: 1fr !important;
  }
  .single-product .related.products li.product img {
    height: auto !important;
    max-height: 260px !important;
  }
}

/* 1.0.5 – Eigene, robuste Related-Repair-Karten statt WooCommerce-Produktloop */
.single-product .related.products,
.single-product .wp-block-woocommerce-related-products {
  display: none !important;
}
.single-product .mdt-related-repairs {
  clear: both;
  width: min(1320px, calc(100% - 2rem));
  margin: 3rem auto 0;
  padding: 2.25rem clamp(.25rem, 1.5vw, 1rem) 3rem;
  border-top: 1px solid var(--wp--preset--color--line);
}
.single-product .mdt-related-repairs > h2 {
  margin: 0 0 1.35rem;
  font-size: clamp(1.45rem, 2.1vw, 1.95rem);
  line-height: 1.15;
  letter-spacing: -.02em;
}
.single-product .mdt-related-repairs__grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1rem;
  width: 100%;
}
.single-product .mdt-related-repair-card {
  display: flex;
  flex-direction: column;
  min-width: 0;
  overflow: hidden;
  border: 1px solid var(--wp--preset--color--line);
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 8px 28px rgba(28,43,59,.045);
}
.single-product .mdt-related-repair-card__image {
  display: grid;
  place-items: center;
  width: 100%;
  height: 185px;
  padding: .8rem;
  background: #fff;
}
.single-product .mdt-related-repair-card__image img {
  display: block;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  object-fit: contain;
}
.single-product .mdt-related-repair-card__body {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  padding: .9rem 1rem 1rem;
  border-top: 1px solid #edf1f5;
}
.single-product .mdt-related-repair-card h3 {
  margin: 0 0 .65rem;
  font-size: .98rem;
  line-height: 1.32;
  font-weight: 760;
}
.single-product .mdt-related-repair-card h3 a {
  display: -webkit-box;
  overflow: hidden;
  color: var(--wp--preset--color--ink);
  text-decoration: none;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.single-product .mdt-related-repair-card h3 a:hover {
  color: var(--wp--preset--color--blue);
}
.single-product .mdt-related-repair-card__price {
  margin: auto 0 .75rem;
  color: var(--wp--preset--color--ink);
  font-size: 1rem;
  font-weight: 800;
}
.single-product .mdt-related-repair-card__button {
  width: 100%;
  min-height: 42px;
  margin: 0 !important;
  padding: .72rem .8rem !important;
  font-size: .86rem !important;
  line-height: 1.15 !important;
  text-align: center;
}
@media (max-width: 980px) {
  .single-product .mdt-related-repairs__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 600px) {
  .single-product .mdt-related-repairs {
    width: calc(100% - 1.5rem);
  }
  .single-product .mdt-related-repairs__grid {
    grid-template-columns: 1fr;
  }
  .single-product .mdt-related-repair-card__image {
    height: 220px;
  }
}

/* 1.0.6 – final fallback: hide only WooCommerce block-based related collections. */
.single-product .wp-block-woocommerce-related-products,
.single-product .wp-block-woocommerce-product-collection[data-collection*="related"],
.single-product .wp-block-woocommerce-product-collection[data-collection*="Related"],
.single-product [data-block-name="woocommerce/related-products"] {
  display: none !important;
}

/* 1.0.8 – hard fallback for short-description/excerpt output in the product hero. */
.single-product .summary .woocommerce-product-details__short-description,
.single-product .summary .wp-block-post-excerpt,
.single-product .summary [data-block-name="core/post-excerpt"],
.single-product .summary .wp-block-woocommerce-product-summary-description,
.single-product .summary [data-block-name="woocommerce/product-summary-description"] {
  display: none !important;
}
.single-product .mdt-product-details-jump {
  margin: .15rem 0 .9rem;
}

/* 1.0.9 – compact, balanced repair-product hero */
@media (min-width: 981px) {
  .single-product .woocommerce div.product div.images,
  .single-product .woocommerce div.product div.woocommerce-product-gallery {
    width: 38% !important;
    max-width: 500px;
    margin-bottom: 1.25rem !important;
  }
  .single-product .woocommerce div.product div.summary {
    width: 58% !important;
    padding: .2rem 0 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }
  .single-product .woocommerce-product-gallery {
    padding: .85rem !important;
  }
  .single-product .woocommerce-product-gallery__wrapper,
  .single-product .woocommerce-product-gallery__image,
  .single-product .woocommerce-product-gallery__image > a {
    max-height: 440px;
  }
  .single-product .woocommerce-product-gallery__image > a {
    display: flex !important;
    align-items: center;
    justify-content: center;
    overflow: hidden;
  }
  .single-product .woocommerce-product-gallery__image img {
    width: 100% !important;
    height: 100% !important;
    max-height: 440px !important;
    object-fit: contain !important;
  }
  .single-product .flex-control-thumbs {
    margin-top: .7rem !important;
  }
}

.single-product .product_title,
.single-product .wp-block-post-title,
.single-product .wp-block-woocommerce-product-title {
  max-width: 900px;
  margin-bottom: .65rem !important;
  font-size: clamp(2rem, 2.8vw, 2.75rem) !important;
  line-height: 1.04 !important;
}
.single-product .summary .price,
.single-product .wp-block-woocommerce-product-price {
  margin: .1rem 0 1rem !important;
  font-size: clamp(1.65rem, 2vw, 2rem) !important;
}

/* The trust facts belong directly to the purchase decision. */
.single-product .mdt-product-service-points {
  margin: .9rem 0 .85rem !important;
  padding: .9rem 1rem !important;
  gap: .42rem !important;
  border: 1px solid #e2e8ef;
  border-radius: 14px;
  background: #f7f9fc !important;
  font-size: .9rem !important;
}
.single-product form.cart {
  margin: 0 !important;
  padding: .8rem !important;
  border-radius: 14px !important;
}
.single-product .mdt-product-details-jump {
  margin: .7rem 0 0 !important;
  text-align: right;
}
.single-product .mdt-product-details-jump a {
  font-size: .86rem !important;
  font-weight: 700 !important;
}

/* Reduce the visual gap before the complete service description. */
.single-product .woocommerce-tabs,
.single-product .wp-block-woocommerce-product-details {
  margin-top: .45rem !important;
  padding-top: 0 !important;
}
.single-product .woocommerce div.product div.images,
.single-product .woocommerce div.product div.woocommerce-product-gallery {
  margin-bottom: 1.1rem !important;
}

@media (max-width: 980px) {
  .single-product .woocommerce div.product div.summary {
    padding: 1rem 0 0 !important;
    border: 0 !important;
    box-shadow: none !important;
  }
  .single-product .mdt-product-details-jump {
    text-align: left;
  }
}

/* 1.0.10 – Moderne Shop- und Kategorieübersicht */
.post-type-archive-product .woocommerce,
.tax-product_cat .woocommerce {
  max-width: 1440px;
  margin-inline: auto;
  padding-inline: clamp(1rem, 3vw, 2.25rem);
}
.post-type-archive-product .woocommerce-breadcrumb,
.tax-product_cat .woocommerce-breadcrumb {
  margin: 1.1rem 0 .8rem;
  color: #74808d;
  font-size: .86rem;
}
.mdt-shop-hero {
  display: grid;
  grid-template-columns: minmax(0, 1.55fr) minmax(260px, .75fr);
  gap: clamp(1.5rem, 4vw, 4rem);
  align-items: center;
  margin: .75rem 0 1.25rem;
  padding: clamp(1.5rem, 3.6vw, 3rem);
  border: 1px solid #dbe4ee;
  border-radius: 26px;
  background:
    radial-gradient(circle at 92% 5%, rgba(60,165,216,.18), transparent 20rem),
    linear-gradient(135deg, #fbfdff 0%, #f4f7fb 100%);
  box-shadow: 0 16px 45px rgba(28,43,59,.055);
}
.mdt-shop-kicker {
  display: inline-flex;
  margin-bottom: .65rem;
  color: var(--wp--preset--color--blue);
  font-size: .76rem;
  font-weight: 850;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.mdt-shop-hero h1 {
  margin: 0 0 .75rem;
  font-size: clamp(2rem, 4vw, 3.6rem);
  line-height: 1.02;
  letter-spacing: -.035em;
}
.mdt-shop-hero p {
  max-width: 760px;
  margin: 0;
  color: #64717f;
  font-size: clamp(1rem, 1.45vw, 1.14rem);
  line-height: 1.65;
}
.mdt-shop-hero__actions {
  display: flex;
  flex-wrap: wrap;
  gap: .7rem;
  margin-top: 1.3rem;
}
.mdt-shop-hero__actions .button {
  padding: .82rem 1.08rem !important;
  text-decoration: none;
}
.mdt-shop-primary {
  background: var(--wp--preset--color--blue) !important;
  color: #fff !important;
}
.mdt-shop-secondary {
  border: 1px solid #bcc9d7 !important;
  background: #fff !important;
  color: var(--wp--preset--color--ink) !important;
}
.mdt-shop-hero__note {
  display: grid;
  gap: .45rem;
  padding: 1.25rem 1.35rem;
  border: 1px solid rgba(36,81,164,.14);
  border-radius: 18px;
  background: rgba(255,255,255,.8);
}
.mdt-shop-hero__note strong { font-size: 1.02rem; }
.mdt-shop-hero__note span { color: #6b7784; font-size: .91rem; line-height: 1.5; }

.mdt-shop-categories {
  display: flex;
  gap: .65rem;
  margin: 0 0 1.55rem;
  padding: .15rem 0 .35rem;
  overflow-x: auto;
  scrollbar-width: thin;
}
.mdt-shop-category {
  display: inline-flex;
  flex: 0 0 auto;
  align-items: center;
  gap: .55rem;
  min-height: 42px;
  padding: .62rem .85rem;
  border: 1px solid #d8e1eb;
  border-radius: 999px;
  background: #fff;
  color: #303943;
  font-size: .88rem;
  font-weight: 700;
  text-decoration: none;
  transition: border-color .16s ease, background .16s ease, color .16s ease;
}
.mdt-shop-category small {
  display: grid;
  place-items: center;
  min-width: 22px;
  height: 22px;
  padding: 0 .35rem;
  border-radius: 999px;
  background: #eef3f9;
  color: #677482;
  font-size: .72rem;
}
.mdt-shop-category:hover,
.mdt-shop-category.is-active {
  border-color: rgba(36,81,164,.34);
  background: #edf3ff;
  color: var(--wp--preset--color--blue);
}
.mdt-shop-category.is-active small { background: #fff; color: var(--wp--preset--color--blue); }

.post-type-archive-product .woocommerce-result-count,
.tax-product_cat .woocommerce-result-count {
  float: none;
  display: inline-flex;
  align-items: center;
  min-height: 42px;
  margin: 0 0 1.1rem;
  color: #697583;
  font-size: .9rem;
}
.post-type-archive-product .woocommerce-ordering,
.tax-product_cat .woocommerce-ordering {
  float: right;
  margin: 0 0 1.1rem;
}
.post-type-archive-product .woocommerce-ordering select,
.tax-product_cat .woocommerce-ordering select {
  min-height: 42px;
  padding: 0 2.4rem 0 .85rem;
  border: 1px solid #d5dfe9;
  border-radius: 10px;
  background: #fff;
  color: #34404b;
}
.post-type-archive-product .woocommerce::after,
.tax-product_cat .woocommerce::after { content: ""; display: table; clear: both; }

.post-type-archive-product ul.products,
.tax-product_cat ul.products {
  clear: both;
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: clamp(1rem, 1.8vw, 1.45rem) !important;
  margin: 0 0 2rem !important;
  padding: 0 !important;
}
.post-type-archive-product ul.products::before,
.post-type-archive-product ul.products::after,
.tax-product_cat ul.products::before,
.tax-product_cat ul.products::after { display: none !important; }
.post-type-archive-product ul.products li.product,
.tax-product_cat ul.products li.product,
.post-type-archive-product ul.products[class*="columns-"] li.product,
.tax-product_cat ul.products[class*="columns-"] li.product {
  float: none !important;
  width: auto !important;
  min-width: 0;
  margin: 0 !important;
  padding: .85rem !important;
  border: 1px solid #dbe3ec;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 10px 30px rgba(28,43,59,.045);
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.post-type-archive-product ul.products li.product:hover,
.tax-product_cat ul.products li.product:hover {
  transform: translateY(-3px);
  border-color: #c6d3e0;
  box-shadow: 0 18px 42px rgba(28,43,59,.09);
}
.post-type-archive-product ul.products li.product > a.woocommerce-loop-product__link,
.tax-product_cat ul.products li.product > a.woocommerce-loop-product__link {
  display: flex;
  min-height: 100%;
  flex-direction: column;
  color: inherit;
  text-decoration: none;
}
.post-type-archive-product ul.products li.product img,
.tax-product_cat ul.products li.product img {
  width: 100% !important;
  aspect-ratio: 4 / 3;
  margin: 0 0 .9rem !important;
  padding: .4rem;
  border-radius: 13px;
  background: #f7f9fb;
  object-fit: contain;
}
.post-type-archive-product ul.products li.product .woocommerce-loop-product__title,
.tax-product_cat ul.products li.product .woocommerce-loop-product__title {
  display: -webkit-box;
  min-height: 3.9em;
  margin: 0 0 .55rem !important;
  padding: 0 !important;
  overflow: hidden;
  color: #252d35;
  font-size: clamp(.96rem, 1.25vw, 1.08rem) !important;
  font-weight: 780;
  line-height: 1.3 !important;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}
.post-type-archive-product ul.products li.product .price,
.tax-product_cat ul.products li.product .price {
  margin: auto 0 .7rem !important;
  color: #20272e !important;
  font-size: 1.05rem !important;
  font-weight: 850 !important;
}
.post-type-archive-product ul.products li.product .button,
.tax-product_cat ul.products li.product .button {
  display: flex;
  width: 100%;
  min-height: 42px;
  align-items: center;
  justify-content: center;
  margin: .35rem 0 0 !important;
  padding: .68rem .75rem !important;
  background: var(--wp--preset--color--blue) !important;
  color: #fff !important;
  font-size: .86rem !important;
  text-align: center;
}
.post-type-archive-product ul.products li.product .wgm-info,
.post-type-archive-product ul.products li.product .wc-gzd-additional-info,
.tax-product_cat ul.products li.product .wgm-info,
.tax-product_cat ul.products li.product .wc-gzd-additional-info {
  margin: .45rem 0 0 !important;
  color: #7b8793;
  font-size: .72rem !important;
  line-height: 1.35;
}
.post-type-archive-product ul.products li.product .star-rating,
.tax-product_cat ul.products li.product .star-rating { margin: .35rem 0; }

.post-type-archive-product .woocommerce-pagination,
.tax-product_cat .woocommerce-pagination {
  margin: 2rem 0 3rem;
}
.post-type-archive-product .woocommerce-pagination ul.page-numbers,
.tax-product_cat .woocommerce-pagination ul.page-numbers {
  display: flex;
  justify-content: center;
  gap: .35rem;
  border: 0 !important;
}
.post-type-archive-product .woocommerce-pagination ul.page-numbers li,
.tax-product_cat .woocommerce-pagination ul.page-numbers li { border: 0 !important; }
.post-type-archive-product .woocommerce-pagination .page-numbers a,
.post-type-archive-product .woocommerce-pagination .page-numbers span,
.tax-product_cat .woocommerce-pagination .page-numbers a,
.tax-product_cat .woocommerce-pagination .page-numbers span {
  display: grid;
  place-items: center;
  min-width: 40px;
  height: 40px;
  border: 1px solid #d8e1eb;
  border-radius: 9px;
  background: #fff;
  color: #36414c;
}
.post-type-archive-product .woocommerce-pagination .page-numbers .current,
.tax-product_cat .woocommerce-pagination .page-numbers .current {
  border-color: var(--wp--preset--color--blue);
  background: var(--wp--preset--color--blue);
  color: #fff;
}

@media (max-width: 1180px) {
  .post-type-archive-product ul.products,
  .tax-product_cat ul.products { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 860px) {
  .mdt-shop-hero { grid-template-columns: 1fr; }
  .mdt-shop-hero__note { max-width: 620px; }
  .post-type-archive-product ul.products,
  .tax-product_cat ul.products { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
  .mdt-shop-hero { padding: 1.35rem; border-radius: 18px; }
  .mdt-shop-hero h1 { font-size: 2.15rem; }
  .mdt-shop-hero__actions .button { width: 100%; text-align: center; }
  .post-type-archive-product .woocommerce-ordering,
  .tax-product_cat .woocommerce-ordering { float: none; width: 100%; }
  .post-type-archive-product .woocommerce-ordering select,
  .tax-product_cat .woocommerce-ordering select { width: 100%; }
  .post-type-archive-product ul.products,
  .tax-product_cat ul.products { grid-template-columns: 1fr; }
}

/* 1.0.11 – Shop archive width / toolbar / category polish */
.post-type-archive-product main.wp-block-group.alignwide,
.tax-product_cat main.wp-block-group.alignwide {
  width: 100% !important;
  max-width: none !important;
  padding-left: clamp(1rem, 2.2vw, 2rem) !important;
  padding-right: clamp(1rem, 2.2vw, 2rem) !important;
}
.post-type-archive-product main.wp-block-group.alignwide > .wp-block-query-title,
.tax-product_cat main.wp-block-group.alignwide > .wp-block-query-title,
.post-type-archive-product main.wp-block-group.alignwide > h1,
.tax-product_cat main.wp-block-group.alignwide > h1 {
  display: none !important;
}
.post-type-archive-product .woocommerce,
.tax-product_cat .woocommerce {
  width: min(100%, 1500px);
  max-width: 1500px;
  padding-inline: 0;
}
.mdt-shop-categories {
  flex-wrap: wrap;
  overflow: visible;
  scrollbar-width: none;
  gap: .55rem;
  margin-bottom: 1.1rem;
  padding-bottom: 0;
}
.mdt-shop-categories::-webkit-scrollbar { display: none; }
.mdt-shop-category {
  min-height: 38px;
  padding: .52rem .76rem;
  font-size: .84rem;
}
.mdt-shop-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin: 0 0 1.2rem;
  padding: .8rem 0;
  border-top: 1px solid #e5ebf1;
  border-bottom: 1px solid #e5ebf1;
}
.mdt-shop-toolbar__count .woocommerce-result-count,
.mdt-shop-toolbar__ordering .woocommerce-ordering {
  float: none !important;
  margin: 0 !important;
}
.mdt-shop-toolbar__count .woocommerce-result-count {
  min-height: 0;
  color: #697583;
  font-size: .88rem;
}
.mdt-shop-toolbar__ordering .woocommerce-ordering select {
  min-width: 210px;
  min-height: 40px;
}
/* Hide the duplicate WooCommerce toolbar that block/classic output can add outside ours. */
.post-type-archive-product .woocommerce > .woocommerce-result-count,
.post-type-archive-product .woocommerce > .woocommerce-ordering,
.tax-product_cat .woocommerce > .woocommerce-result-count,
.tax-product_cat .woocommerce > .woocommerce-ordering {
  display: none !important;
}
/* Allow four useful cards on normal desktop widths now that the archive itself is full width. */
@media (min-width: 981px) {
  .post-type-archive-product ul.products,
  .tax-product_cat ul.products {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 980px) and (min-width: 721px) {
  .post-type-archive-product ul.products,
  .tax-product_cat ul.products {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 720px) {
  .mdt-shop-toolbar {
    align-items: stretch;
    flex-direction: column;
  }
  .mdt-shop-toolbar__ordering .woocommerce-ordering,
  .mdt-shop-toolbar__ordering .woocommerce-ordering select {
    width: 100%;
  }
  .post-type-archive-product ul.products,
  .tax-product_cat ul.products {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 520px) {
  .post-type-archive-product ul.products,
  .tax-product_cat ul.products {
    grid-template-columns: 1fr !important;
  }
}

/* 1.0.12 – Make WooCommerce catalog archives genuinely wide in block themes. */
body.post-type-archive-product .wp-site-blocks > main,
body.tax-product_cat .wp-site-blocks > main,
body.post-type-archive-product .wp-site-blocks main,
body.tax-product_cat .wp-site-blocks main {
  width: 100% !important;
  max-width: none !important;
  margin-inline: 0 !important;
}

/* WordPress constrained layouts otherwise keep WooCommerce at contentSize (860px). */
body.post-type-archive-product .wp-site-blocks main > *,
body.tax-product_cat .wp-site-blocks main > * {
  width: min(1500px, calc(100% - 3rem)) !important;
  max-width: 1500px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

body.post-type-archive-product .wp-site-blocks main .woocommerce,
body.tax-product_cat .wp-site-blocks main .woocommerce,
body.post-type-archive-product .woocommerce,
body.tax-product_cat .woocommerce {
  width: 100% !important;
  max-width: 1500px !important;
}

/* Last-resort suppression for the redundant WordPress/WooCommerce catalog heading. */
body.post-type-archive-product main > h1:not(#mdt-shop-title),
body.tax-product_cat main > h1:not(#mdt-shop-title),
body.post-type-archive-product .wp-block-query-title,
body.tax-product_cat .wp-block-query-title {
  display: none !important;
}

/* 1.0.13 – Keep product names visible in both classic and block catalog loops. */
body.post-type-archive-product ul.products li.product .woocommerce-loop-product__title,
body.tax-product_cat ul.products li.product .woocommerce-loop-product__title,
body.post-type-archive-product ul.products li.product .wp-block-post-title,
body.tax-product_cat ul.products li.product .wp-block-post-title {
  display: -webkit-box !important;
  visibility: visible !important;
  opacity: 1 !important;
}

/* Germanized: show tax information, but remove the separate shipping-costs line
 * from shop/category cards. Shipping information remains available in checkout
 * and wherever Germanized needs it outside the catalog grid. */
body.post-type-archive-product ul.products li.product .shipping-costs-info,
body.tax-product_cat ul.products li.product .shipping-costs-info,
body.post-type-archive-product ul.products li.product .wc-gzd-additional-info.shipping-costs-info,
body.tax-product_cat ul.products li.product .wc-gzd-additional-info.shipping-costs-info {
  display: none !important;
}

/* Four real cards on desktop once the parent is no longer contentSize-constrained. */
@media (min-width: 1200px) {
  body.post-type-archive-product ul.products,
  body.tax-product_cat ul.products,
  body.post-type-archive-product ul.products[class*="columns-"],
  body.tax-product_cat ul.products[class*="columns-"] {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    width: 100% !important;
  }
}

@media (min-width: 820px) and (max-width: 1199px) {
  body.post-type-archive-product ul.products,
  body.tax-product_cat ul.products,
  body.post-type-archive-product ul.products[class*="columns-"],
  body.tax-product_cat ul.products[class*="columns-"] {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 819px) {
  body.post-type-archive-product .wp-site-blocks main > *,
  body.tax-product_cat .wp-site-blocks main > * {
    width: min(100% - 2rem, 1500px) !important;
  }
}


/* 1.0.14 – Keep catalog cards clean: hide Germanized tax/shipping helper lines
 * only on shop/category archives. Product page, cart and checkout remain untouched. */
body.post-type-archive-product ul.products li.product .tax-info,
body.tax-product_cat ul.products li.product .tax-info,
body.post-type-archive-product ul.products li.product .wc-gzd-additional-info.tax-info,
body.tax-product_cat ul.products li.product .wc-gzd-additional-info.tax-info,
body.post-type-archive-product ul.products li.product .shipping-costs-info,
body.tax-product_cat ul.products li.product .shipping-costs-info,
body.post-type-archive-product ul.products li.product .wc-gzd-additional-info.shipping-costs-info,
body.tax-product_cat ul.products li.product .wc-gzd-additional-info.shipping-costs-info {
  display: none !important;
}


/* 1.0.15 – Catalog cards: keep only the native clickable product title and
 * hide Germanized tax/shipping helper output regardless of its markup variant. */
body.post-type-archive-product .wc-gzd-additional-info,
body.tax-product_cat .wc-gzd-additional-info,
body.post-type-archive-product .wgm-info,
body.tax-product_cat .wgm-info,
body.post-type-archive-product .shipping-costs-info,
body.tax-product_cat .shipping-costs-info,
body.post-type-archive-product .tax-info,
body.tax-product_cat .tax-info,
body.post-type-archive-product .legal-price-info,
body.tax-product_cat .legal-price-info {
  display: none !important;
}


/* 1.0.16 – Align catalog action buttons to the same vertical position.
 * Grid rows stretch cards to equal height; the button is pushed to the bottom
 * of each card regardless of whether the linked title wraps to one, two or
 * three lines. The native clickable product title remains unchanged. */
body.post-type-archive-product ul.products li.product,
body.tax-product_cat ul.products li.product,
body.post-type-archive-product ul.products[class*="columns-"] li.product,
body.tax-product_cat ul.products[class*="columns-"] li.product {
  display: flex !important;
  flex-direction: column !important;
  height: 100%;
}

body.post-type-archive-product ul.products li.product .woocommerce-loop-product__title,
body.tax-product_cat ul.products li.product .woocommerce-loop-product__title,
body.post-type-archive-product ul.products li.product .wp-block-post-title,
body.tax-product_cat ul.products li.product .wp-block-post-title {
  min-height: 3.9em !important;
}

body.post-type-archive-product ul.products li.product .button,
body.tax-product_cat ul.products li.product .button {
  margin-top: auto !important;
}

/* 1.0.17 – Robust vertical alignment for catalog cards.
 * The native WooCommerce product link contains image, title and price. Let that
 * link grow to fill all available card space, keep a fixed title area, push the
 * price to the bottom of the link, and place the action button directly below.
 * This keeps every "Reparatur ansehen" button on the same baseline per grid row. */
body.post-type-archive-product ul.products li.product,
body.tax-product_cat ul.products li.product,
body.post-type-archive-product ul.products[class*="columns-"] li.product,
body.tax-product_cat ul.products[class*="columns-"] li.product {
  display: flex !important;
  flex-direction: column !important;
  align-self: stretch !important;
  height: 100% !important;
}

body.post-type-archive-product ul.products li.product > a.woocommerce-loop-product__link,
body.tax-product_cat ul.products li.product > a.woocommerce-loop-product__link {
  display: flex !important;
  flex: 1 1 auto !important;
  flex-direction: column !important;
  min-height: 0 !important;
  height: auto !important;
}

body.post-type-archive-product ul.products li.product .woocommerce-loop-product__title,
body.tax-product_cat ul.products li.product .woocommerce-loop-product__title,
body.post-type-archive-product ul.products li.product .wp-block-post-title,
body.tax-product_cat ul.products li.product .wp-block-post-title {
  min-height: 3.9em !important;
  margin-bottom: .55rem !important;
}

body.post-type-archive-product ul.products li.product .price,
body.tax-product_cat ul.products li.product .price {
  margin: auto 0 .75rem !important;
  color: #1f2933 !important;
  font-weight: 800 !important;
}
body.post-type-archive-product ul.products li.product .price .amount,
body.tax-product_cat ul.products li.product .price .amount,
body.post-type-archive-product ul.products li.product .price bdi,
body.tax-product_cat ul.products li.product .price bdi,
body.post-type-archive-product ul.products li.product .price ins,
body.tax-product_cat ul.products li.product .price ins {
  color: inherit !important;
  font-weight: 800 !important;
  text-decoration-thickness: auto;
}

body.post-type-archive-product ul.products li.product .button,
body.tax-product_cat ul.products li.product .button {
  flex: 0 0 auto !important;
  margin-top: 0 !important;
}

/* 1.0.18 – Catalog alignment for both classic WooCommerce and Product Collection blocks.
 * The live shop can render block-based cards, so align those structures as well as ul.products.
 */
body.post-type-archive-product .wc-block-product-template,
body.tax-product_cat .wc-block-product-template,
body.post-type-archive-product .wp-block-woocommerce-product-template,
body.tax-product_cat .wp-block-woocommerce-product-template,
body.post-type-archive-product .wc-block-grid__products,
body.tax-product_cat .wc-block-grid__products {
  align-items: stretch !important;
}

body.post-type-archive-product .wc-block-product,
body.tax-product_cat .wc-block-product,
body.post-type-archive-product .wc-block-grid__product,
body.tax-product_cat .wc-block-grid__product {
  display: flex !important;
  flex-direction: column !important;
  align-self: stretch !important;
  height: 100% !important;
}

/* Reserve the same title area no matter which WooCommerce title block is used. */
body.post-type-archive-product .wc-block-product .wp-block-post-title,
body.tax-product_cat .wc-block-product .wp-block-post-title,
body.post-type-archive-product .wc-block-product .wc-block-components-product-name,
body.tax-product_cat .wc-block-product .wc-block-components-product-name,
body.post-type-archive-product .wc-block-grid__product .wc-block-grid__product-title,
body.tax-product_cat .wc-block-grid__product .wc-block-grid__product-title,
body.post-type-archive-product ul.products li.product .woocommerce-loop-product__title,
body.tax-product_cat ul.products li.product .woocommerce-loop-product__title {
  min-height: 3.15em !important;
}

/* Push the action area to the bottom for block cards as well. */
body.post-type-archive-product .wc-block-product .wp-block-button,
body.tax-product_cat .wc-block-product .wp-block-button,
body.post-type-archive-product .wc-block-product .wc-block-components-product-button,
body.tax-product_cat .wc-block-product .wc-block-components-product-button,
body.post-type-archive-product .wc-block-grid__product .wc-block-grid__product-add-to-cart,
body.tax-product_cat .wc-block-grid__product .wc-block-grid__product-add-to-cart,
body.post-type-archive-product ul.products li.product .button,
body.tax-product_cat ul.products li.product .button {
  margin-top: auto !important;
}

/* Price: visibly bold in every catalog renderer. */
body.post-type-archive-product .price,
body.tax-product_cat .price,
body.post-type-archive-product .wc-block-components-product-price,
body.tax-product_cat .wc-block-components-product-price,
body.post-type-archive-product .wp-block-woocommerce-product-price,
body.tax-product_cat .wp-block-woocommerce-product-price,
body.post-type-archive-product .wc-block-grid__product-price,
body.tax-product_cat .wc-block-grid__product-price,
body.post-type-archive-product .woocommerce-Price-amount,
body.tax-product_cat .woocommerce-Price-amount,
body.post-type-archive-product .woocommerce-Price-amount bdi,
body.tax-product_cat .woocommerce-Price-amount bdi {
  color: #1f2933 !important;
  font-weight: 800 !important;
}


/* 1.1.4 – compact single-product service details */
.single-product .mdt-product-repair-data.is-inline {
  width: 100%;
  max-width: none;
  margin: 1.35rem 0 1.6rem;
  padding: 0;
  gap: 1rem;
}
.single-product .mdt-product-repair-data.is-inline .mdt-product-info-card {
  padding: clamp(1rem, 1.8vw, 1.35rem);
  border-radius: 16px;
  box-shadow: 0 8px 24px rgba(28,43,59,.04);
}
.single-product .mdt-product-repair-data.is-inline .mdt-product-info-card__head h2 {
  margin-top: .12rem;
  font-size: clamp(1.2rem, 1.7vw, 1.5rem);
}
.single-product .mdt-product-repair-data.is-inline .mdt-product-info-card__head p {
  margin-bottom: .75rem;
  font-size: .9rem;
  line-height: 1.5;
}
.single-product .mdt-product-description-enhanced > h2:first-child {
  margin-bottom: 1.15rem;
}
.single-product .mdt-product-detail-accordion {
  margin: .7rem 0;
  overflow: hidden;
  border: 1px solid #dfe6ee;
  border-radius: 13px;
  background: #fff;
}
.single-product .mdt-product-detail-accordion summary {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 50px;
  padding: .8rem 3rem .8rem 1rem;
  cursor: pointer;
  color: var(--wp--preset--color--ink);
  font-weight: 780;
  line-height: 1.3;
  list-style: none;
  user-select: none;
}
.single-product .mdt-product-detail-accordion summary::-webkit-details-marker {
  display: none;
}
.single-product .mdt-product-detail-accordion summary::after {
  content: '+';
  position: absolute;
  right: 1rem;
  top: 50%;
  transform: translateY(-50%);
  color: var(--wp--preset--color--blue);
  font-size: 1.35rem;
  font-weight: 500;
}
.single-product .mdt-product-detail-accordion[open] summary::after {
  content: '−';
}
.single-product .mdt-product-detail-accordion[open] summary {
  border-bottom: 1px solid #edf1f5;
  background: #f8fafc;
}
.single-product .mdt-product-detail-accordion__body {
  padding: .9rem 1rem 1rem;
}
.single-product .mdt-product-detail-accordion__body > :first-child {
  margin-top: 0 !important;
}
.single-product .mdt-product-detail-accordion__body > :last-child {
  margin-bottom: 0 !important;
}
.single-product .woocommerce-Tabs-panel--description,
.single-product .woocommerce-Tabs-panel#tab-description {
  max-width: 1080px;
}

@media (max-width: 780px) {
  .single-product .mdt-product-repair-data.is-inline {
    grid-template-columns: 1fr;
  }
  .single-product .mdt-product-detail-accordion summary {
    min-height: 46px;
  }
}

/* 1.1.11 – Einheitliche Hauptbreite der drei Produktseiten-Bereiche.
 * Der Produktkopf aus 1.1.10 war optisch korrekt. Beschreibung/Tabs und
 * "Weitere passende Reparaturen" werden nun auf exakt dieselbe 1080-px-
 * Inhaltsbreite begrenzt, statt auf die gesamte Browserbreite zu wachsen.
 */
@media (min-width: 981px) {
  body.single-product {
    --mdt-single-product-content-width: 1080px;
  }

  /* Produktkopf: unverändert auf der bereits passenden Breite. */
  .single-product .woocommerce > .product,
  .single-product .wp-block-woocommerce-single-product {
    width: min(var(--mdt-single-product-content-width), calc(100% - 2rem));
    max-width: var(--mdt-single-product-content-width) !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .single-product .woocommerce div.product {
    box-sizing: border-box;
  }

  /* Beschreibung inklusive Tab-Navigation: dieselbe Außenbreite wie oben. */
  .single-product .woocommerce-tabs,
  .single-product .wp-block-woocommerce-product-details {
    width: min(var(--mdt-single-product-content-width), calc(100% - 2rem)) !important;
    max-width: var(--mdt-single-product-content-width) !important;
    box-sizing: border-box;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  /* Der eigentliche Beschreibungs-Kasten darf die komplette Containerbreite nutzen. */
  .single-product .woocommerce-Tabs-panel,
  .single-product .woocommerce-Tabs-panel--description,
  .single-product .woocommerce-Tabs-panel#tab-description,
  .single-product .wp-block-woocommerce-product-details .wp-block-group {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box;
  }

  /* Empfehlungen: exakt bündig zu Produktkopf und Beschreibung. */
  .single-product .mdt-related-repairs {
    width: min(var(--mdt-single-product-content-width), calc(100% - 2rem)) !important;
    max-width: var(--mdt-single-product-content-width) !important;
    box-sizing: border-box;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}


/* 1.1.12 – Produktkopf exakt auf Beschreibungsbreite + saubere Empfehlungskarten. */
@media (min-width: 981px) {
  /* In der aktuellen WooCommerce-Hybridstruktur ist der eigentliche
   * Produkt-Wrapper die zuverlässige gemeinsame Klammer für Galerie + Summary.
   * Ihn direkt zu begrenzen verhindert, dass der Hero wieder auf Wide-Width
   * wächst, während Beschreibung und Empfehlungen schmal bleiben. */
  .single-product .woocommerce div.product {
    width: min(var(--mdt-single-product-content-width, 1080px), calc(100% - 2rem)) !important;
    max-width: var(--mdt-single-product-content-width, 1080px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box;
  }
}

/* Related cards: Bild und Text sind zwei klar getrennte Bereiche. WooCommerce
 * bzw. globale Block-Stile dürfen den Body nicht über das Bild legen. */
.single-product .mdt-related-repair-card__image {
  position: relative !important;
  z-index: 1;
  flex: 0 0 185px;
  height: 185px !important;
  overflow: hidden !important;
  border: 0 !important;
  background: #fff !important;
}
.single-product .mdt-related-repair-card__image img {
  position: static !important;
  inset: auto !important;
  transform: none !important;
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  max-width: 100% !important;
  max-height: 100% !important;
  margin: 0 !important;
  object-fit: contain !important;
}
.single-product .mdt-related-repair-card__body {
  position: relative !important;
  z-index: 2;
  margin: 0 !important;
  transform: none !important;
  border-top: 0 !important;
  background: #fff !important;
  opacity: 1 !important;
}
@media (max-width: 600px) {
  .single-product .mdt-related-repair-card__image {
    flex-basis: 220px;
    height: 220px !important;
  }
}

/* 1.1.13 – Baugruppen-Kacheln als direkter, vorgefilterter RepairFinder-Einstieg. */
.mdt-baugruppe-card {
  position: relative;
  cursor: pointer;
}
.mdt-baugruppe-card .mdt-card-hitarea {
  position: absolute;
  inset: 0;
  z-index: 3;
  border-radius: inherit;
  overflow: hidden;
  color: transparent !important;
  text-decoration: none !important;
  font-size: 0;
}
.mdt-baugruppe-card:focus-within {
  border-color: var(--wp--preset--color--blue);
  box-shadow: 0 0 0 3px rgba(36,88,173,.14), 0 16px 38px rgba(31,52,73,.08);
}


/* 1.1.14 – Startseite: Vorteilsleiste und Reparaturablauf verfeinern */
.mdt-trust-item {
  position: relative;
  padding-left: 1rem;
}
.mdt-trust-item::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 3px;
  height: 2.25rem;
  border-radius: 999px;
  background: var(--wp--preset--color--blue);
  transform: translateY(-50%);
  opacity: .82;
}
.mdt-trust-item strong {
  color: var(--wp--preset--color--ink);
  font-size: 1rem;
  font-weight: 800;
  line-height: 1.3;
}
.mdt-trust-item span {
  display: inline-block;
  margin-top: .18rem;
  line-height: 1.45;
}
@media (max-width: 782px) {
  .mdt-trust-item { padding-left: .85rem; }
  .mdt-trust-item::before { height: 1.8rem; }
}


/* 1.1.16 – dynamischer Startseiten-Kachel-Builder aus RepairFinder 3.1.31 */
.mdtrf-home-groups {
  display: grid !important;
  grid-template-columns: repeat(var(--mdtrf-home-columns, 4), minmax(0, 1fr));
  gap: 1rem !important;
  width: 100%;
}
.mdtrf-home-groups--auto {
  grid-template-columns: repeat(auto-fit, minmax(min(250px, 100%), 1fr));
}
.mdtrf-home-group-item {
  min-width: 0;
  height: 100%;
}
.mdtrf-home-groups .mdt-baugruppe-card {
  height: 100%;
  box-sizing: border-box;
  background: var(--mdtrf-tile-bg, #fff) !important;
}
.mdtrf-home-groups .mdt-baugruppe-card h3 {
  color: inherit;
}
.mdtrf-home-groups .mdt-baugruppe-card .mdtrf-home-group-description {
  color: inherit !important;
  opacity: .72;
}
.mdtrf-home-groups .mdt-baugruppe-card.is-dark-tile {
  color: #fff;
  border-color: rgba(255,255,255,.25);
}
.mdtrf-home-groups .mdt-baugruppe-card.is-dark-tile .mdt-card-number {
  background: rgba(255,255,255,.16);
  color: #fff;
}
.mdtrf-home-groups .mdt-baugruppe-card.is-dark-tile:hover {
  border-color: rgba(255,255,255,.5);
  box-shadow: 0 16px 38px rgba(15,23,42,.20);
}
@media (max-width: 1100px) and (min-width: 783px) {
  .mdtrf-home-groups:not(.mdtrf-home-groups--1):not(.mdtrf-home-groups--2) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 782px) {
  .mdtrf-home-groups {
    grid-template-columns: 1fr !important;
  }
}

/* 1.1.19 – Startseiten-Hero: Copy dezenter, RepairFinder klarer Hauptfokus. */
@media (min-width: 961px) {
  .mdt-hero-grid > .wp-block-column:first-child {
    flex-basis: 38% !important;
    max-width: 540px;
  }
  .mdt-hero-grid > .wp-block-column:nth-child(2) {
    flex-basis: 62% !important;
    min-width: 0;
  }
  .mdt-hero-grid {
    gap: clamp(2.25rem, 4vw, 4.5rem) !important;
    align-items: center !important;
  }
  .mdt-hero h1 {
    max-width: 530px;
    font-size: clamp(3rem, 4.4vw, 4.8rem) !important;
    line-height: .98 !important;
    letter-spacing: -.045em;
    margin-bottom: 1rem;
  }
  .mdt-hero-copy {
    max-width: 500px;
    font-size: clamp(1rem, 1.25vw, 1.12rem);
    line-height: 1.55;
  }
  .mdt-hero .wp-block-buttons {
    gap: .75rem;
  }
  .mdt-hero .mdtrf--compact {
    max-width: none;
    padding: clamp(1.6rem, 2.2vw, 2rem);
    border-radius: 22px;
    box-shadow: 0 24px 65px rgba(25,45,70,.11);
  }
  .mdt-hero .mdtrf--compact .mdtrf__head h2 {
    font-size: clamp(1.2rem, 1.5vw, 1.4rem);
  }
  .mdt-hero .mdtrf--compact .mdtrf__head p {
    font-size: .82rem;
  }
  .mdt-hero .mdtrf--compact .mdtrf__panel {
    min-height: 88px;
  }
  .mdt-hero .mdtrf--compact .mdtrf__result {
    grid-template-columns: 58px 1fr auto;
    padding: .75rem;
  }
  .mdt-hero .mdtrf--compact .mdtrf__result img,
  .mdt-hero .mdtrf--compact .mdtrf__result-placeholder {
    width: 58px;
    height: 58px;
  }
  .mdt-hero .mdtrf--compact .mdtrf__result-body strong {
    font-size: .9rem;
  }
  .mdt-hero .mdtrf--compact .mdtrf__price {
    font-size: .86rem;
  }
}


/* 1.1.20 – Hero-Fokus: RepairFinder groesser, hoeher und weiter rechts. */
@media (min-width: 1100px) {
  .mdt-hero-grid {
    gap: clamp(2rem, 3vw, 3.5rem) !important;
    align-items: center !important;
  }
  .mdt-hero-grid > .wp-block-column:first-child {
    flex-basis: 31% !important;
    max-width: 470px;
  }
  .mdt-hero-grid > .wp-block-column:nth-child(2) {
    flex-basis: 69% !important;
    min-width: 0;
    transform: translate(clamp(1rem, 2.2vw, 2.75rem), clamp(-2rem, -1.6vw, -1rem));
  }
  .mdt-hero h1 {
    max-width: 470px;
    font-size: clamp(2.75rem, 3.9vw, 4.15rem) !important;
    line-height: 1.01 !important;
  }
  .mdt-hero-copy {
    max-width: 455px;
    font-size: clamp(.98rem, 1.1vw, 1.08rem);
  }
  .mdt-hero .mdtrf--compact {
    width: 100%;
    min-height: 390px;
    padding: clamp(1.75rem, 2.4vw, 2.35rem);
  }
  .mdt-hero .mdtrf--compact .mdtrf__panel {
    min-height: 112px;
  }
}
@media (min-width: 1400px) {
  .mdt-hero-grid > .wp-block-column:nth-child(2) {
    transform: translate(3.25rem, -1.8rem);
  }
  .mdt-hero .mdtrf--compact {
    min-height: 420px;
  }
}


/* 1.1.21 – Startseiten-Hero: mehrere Layouts direkt im Gutenberg-Editor. */
@media (min-width: 1100px) {
  /* Neuer Standard: mehr Gesamtbreite, linker Text bekommt wieder Luft,
     RepairFinder bleibt klarer Fokus und sitzt weiter rechts. */
  .mdt-hero-grid {
    width: min(1680px, calc(100vw - 56px));
    max-width: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
    gap: clamp(2.5rem, 4vw, 5rem) !important;
    align-items: center !important;
  }
  .mdt-hero-grid > .wp-block-column:first-child {
    flex-basis: 39% !important;
    max-width: 610px;
  }
  .mdt-hero-grid > .wp-block-column:nth-child(2) {
    flex-basis: 61% !important;
    min-width: 0;
    transform: translate(1rem, -1rem);
  }
  .mdt-hero h1 {
    max-width: 600px;
    font-size: clamp(2.95rem, 3.8vw, 4.2rem) !important;
    line-height: 1.01 !important;
  }
  .mdt-hero-copy {
    max-width: 575px;
  }
  .mdt-hero .mdtrf--compact {
    width: 100%;
    max-width: 980px;
    margin-left: auto;
    min-height: 410px;
  }

  /* Editor-Stil: ausgewogen – Copy und Finder fast gleichgewichtet. */
  .mdt-hero-grid.is-style-mdt-hero-balanced {
    width: min(1480px, calc(100vw - 72px));
    gap: clamp(2.5rem, 4vw, 4.5rem) !important;
  }
  .mdt-hero-grid.is-style-mdt-hero-balanced > .wp-block-column:first-child {
    flex-basis: 44% !important;
    max-width: 650px;
  }
  .mdt-hero-grid.is-style-mdt-hero-balanced > .wp-block-column:nth-child(2) {
    flex-basis: 56% !important;
    transform: none;
  }
  .mdt-hero-grid.is-style-mdt-hero-balanced .mdtrf--compact {
    max-width: 860px;
    min-height: 390px;
  }

  /* Editor-Stil: Fokus – RepairFinder möglichst groß, Copy bewusst kompakt. */
  .mdt-hero-grid.is-style-mdt-hero-finder-focus {
    width: min(1640px, calc(100vw - 56px));
    gap: clamp(2.25rem, 3.2vw, 4rem) !important;
  }
  .mdt-hero-grid.is-style-mdt-hero-finder-focus > .wp-block-column:first-child {
    flex-basis: 34% !important;
    max-width: 520px;
  }
  .mdt-hero-grid.is-style-mdt-hero-finder-focus > .wp-block-column:nth-child(2) {
    flex-basis: 66% !important;
    transform: translate(1.5rem, -1.25rem);
  }
  .mdt-hero-grid.is-style-mdt-hero-finder-focus .mdtrf--compact {
    max-width: 1040px;
    min-height: 430px;
  }

  /* Editor-Stil: weit rechts – viel Platz für die Copy, Finder an den rechten Rand. */
  .mdt-hero-grid.is-style-mdt-hero-finder-right {
    width: min(1740px, calc(100vw - 40px));
    gap: clamp(3rem, 4.5vw, 6rem) !important;
  }
  .mdt-hero-grid.is-style-mdt-hero-finder-right > .wp-block-column:first-child {
    flex-basis: 40% !important;
    max-width: 650px;
  }
  .mdt-hero-grid.is-style-mdt-hero-finder-right > .wp-block-column:nth-child(2) {
    flex-basis: 60% !important;
    transform: translate(1.75rem, -1.15rem);
  }
  .mdt-hero-grid.is-style-mdt-hero-finder-right .mdtrf--compact {
    max-width: 1000px;
    margin-left: auto;
    min-height: 420px;
  }
}

/* RepairFinder kann im Startseiten-Editor auch aus dem Hero herausgezogen und
   z.B. direkt unter die vier Vorteilspunkte verschoben werden. Diese Styles
   steuern dann seine Breite ohne zusätzliche Theme-Anpassung. */
.wp-block-shortcode.is-style-mdt-finder-wide {
  width: min(1120px, calc(100% - 2rem));
  max-width: none !important;
  margin: clamp(2rem, 4vw, 3.5rem) auto !important;
}
.wp-block-shortcode.is-style-mdt-finder-xwide {
  width: min(1440px, calc(100% - 2rem));
  max-width: none !important;
  margin: clamp(2rem, 4vw, 3.5rem) auto !important;
}
.wp-block-shortcode.is-style-mdt-finder-wide .mdtrf--compact,
.wp-block-shortcode.is-style-mdt-finder-xwide .mdtrf--compact {
  width: 100%;
  max-width: none;
  min-height: 420px;
}

@media (max-width: 1099px) {
  .mdt-hero-grid,
  .mdt-hero-grid.is-style-mdt-hero-balanced,
  .mdt-hero-grid.is-style-mdt-hero-finder-focus,
  .mdt-hero-grid.is-style-mdt-hero-finder-right {
    width: auto;
    max-width: var(--wp--style--global--wide-size, 1440px) !important;
  }
  .mdt-hero-grid > .wp-block-column:nth-child(2),
  .mdt-hero-grid.is-style-mdt-hero-balanced > .wp-block-column:nth-child(2),
  .mdt-hero-grid.is-style-mdt-hero-finder-focus > .wp-block-column:nth-child(2),
  .mdt-hero-grid.is-style-mdt-hero-finder-right > .wp-block-column:nth-child(2) {
    transform: none !important;
  }
}

/* 1.1.22 – weitere im Editor wählbare Startseiten-Layouts. */
@media (min-width: 1100px) {
  /* Extra weit rechts: linker Text behält Luft, Finder nutzt den rechten Bereich maximal. */
  .mdt-hero-grid.is-style-mdt-hero-finder-xright {
    width: min(1780px, calc(100vw - 72px));
    max-width: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
    gap: clamp(3rem, 4.6vw, 6rem) !important;
    align-items: center !important;
  }
  .mdt-hero-grid.is-style-mdt-hero-finder-xright > .wp-block-column:first-child {
    flex-basis: 40% !important;
    max-width: 650px;
  }
  .mdt-hero-grid.is-style-mdt-hero-finder-xright > .wp-block-column:nth-child(2) {
    flex-basis: 60% !important;
    min-width: 0;
    transform: translate(3.5rem, -1.35rem);
  }
  .mdt-hero-grid.is-style-mdt-hero-finder-xright .mdtrf--compact {
    width: 100%;
    max-width: 1120px;
    margin-left: auto;
    min-height: 445px;
  }

  /* Wenn der Finder aus dem Hero herausgezogen wurde, kann der Hero bewusst nur den Text tragen. */
  .mdt-hero-grid.is-style-mdt-hero-copy-only {
    display: block !important;
    width: min(1440px, calc(100vw - 72px));
    max-width: none !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  .mdt-hero-grid.is-style-mdt-hero-copy-only > .wp-block-column:first-child {
    width: 100% !important;
    max-width: 720px;
  }
  .mdt-hero-grid.is-style-mdt-hero-copy-only > .wp-block-column:nth-child(2) {
    display: none !important;
  }
}

/* Eigenständiger Finder direkt unter den vier Vorteilspunkten. Der Shortcode-Block
   muss im Editor an diese Position gezogen und anschließend dieser Stil gewählt werden. */
.wp-block-shortcode.is-style-mdt-finder-after-benefits {
  width: min(1480px, calc(100% - 2rem));
  max-width: none !important;
  margin: clamp(2.25rem, 4vw, 4rem) auto !important;
}
.wp-block-shortcode.is-style-mdt-finder-after-benefits .mdtrf--compact {
  width: 100%;
  max-width: none !important;
  min-height: 440px;
}

@media (max-width: 1099px) {
  .mdt-hero-grid.is-style-mdt-hero-finder-xright,
  .mdt-hero-grid.is-style-mdt-hero-copy-only {
    width: auto;
    max-width: var(--wp--style--global--wide-size, 1440px) !important;
  }
  .mdt-hero-grid.is-style-mdt-hero-finder-xright > .wp-block-column:nth-child(2) {
    transform: none !important;
  }
}

/* 1.1.24 – Mobile Feinschliff: kompakter Header mit Hamburger-Menü
   und platzsparende Vorteilsleiste auf kleinen Displays. */
@media (max-width: 960px) {
  .mdt-header-inner {
    min-height: 72px;
    gap: .65rem !important;
    align-items: center !important;
    padding-top: .6rem !important;
    padding-bottom: .6rem !important;
  }
  .mdt-header .custom-logo {
    width: min(205px, 46vw) !important;
  }
  .mdt-header .wp-block-navigation {
    flex: 0 0 auto !important;
    margin-left: auto !important;
  }
  .mdt-header-actions {
    flex: 0 0 auto !important;
    margin-left: 0 !important;
    gap: .35rem !important;
  }

  /* WordPress' Mobile-Navigation bereits auf Tablet-/Phone-Breite erzwingen,
     damit die vier Links nicht mehr in zwei Zeilen umbrechen. */
  .mdt-header .wp-block-navigation__responsive-container-open {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    padding: .45rem !important;
    border: 1px solid var(--wp--preset--color--line);
    border-radius: 10px;
    background: #fff;
    color: var(--wp--preset--color--ink);
  }
  .mdt-header .wp-block-navigation__responsive-container:not(.is-menu-open) {
    display: none !important;
  }
  .mdt-header .wp-block-navigation__responsive-container.is-menu-open {
    display: flex !important;
  }
  .mdt-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
    padding-top: 3.5rem;
  }
  .mdt-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
    gap: 1rem !important;
    align-items: flex-start !important;
  }
  .mdt-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
    font-size: 1.12rem;
    font-weight: 750;
  }
}

@media (max-width: 782px) {
  .mdt-trust {
    padding: .35rem 1rem;
  }
  .mdt-trust .wp-block-columns {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 0 .9rem !important;
    margin: 0 !important;
  }
  .mdt-trust-item {
    min-width: 0;
    margin: 0 !important;
    padding: .8rem .25rem .8rem .9rem !important;
  }
  .mdt-trust-item p {
    margin: 0 !important;
  }
  .mdt-trust-item::before {
    height: 1.55rem;
  }
  .mdt-trust-item strong {
    font-size: .94rem;
  }
  .mdt-trust-item span {
    margin-top: .12rem;
    font-size: .8rem;
    line-height: 1.35;
  }
}

@media (max-width: 520px) {
  .mdt-header .custom-logo {
    width: min(180px, 48vw) !important;
  }
  .mdt-trust .wp-block-columns {
    grid-template-columns: 1fr !important;
  }
  .mdt-trust-item {
    padding-top: .65rem !important;
    padding-bottom: .65rem !important;
  }
}


/* 1.1.27 – Ablauf-Seite breiter und ohne doppelten Seitentitel. */
body.mdt-page-ablauf main.wp-block-group.alignwide {
  width: min(100% - 2.5rem, var(--wp--style--global--wide-size, 1440px));
  max-width: var(--wp--style--global--wide-size, 1440px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-top: clamp(1.75rem, 3vw, 2.75rem) !important;
}
body.mdt-page-ablauf main.wp-block-group.alignwide > .wp-block-post-title {
  display: none !important;
}
body.mdt-page-ablauf main.wp-block-group.alignwide > .wp-block-post-content {
  width: 100% !important;
  max-width: none !important;
}
body.mdt-page-ablauf .wp-block-post-content > .wp-block-group.alignfull,
body.mdt-page-ablauf .wp-block-post-content > .wp-block-group.alignwide {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
body.mdt-page-ablauf .wp-block-post-content .mdt-section > .alignwide,
body.mdt-page-ablauf .wp-block-post-content .mdt-section > .wp-block-group.alignwide,
body.mdt-page-ablauf .wp-block-post-content .mdt-section > .wp-block-columns.alignwide {
  width: 100% !important;
  max-width: none !important;
}
body.mdt-page-ablauf .mdt-section-head {
  max-width: 920px;
}
body.mdt-page-ablauf .mdt-process-grid {
  width: 100%;
}
body.mdt-page-ablauf .mdt-process-card {
  min-width: 0;
}

@media (max-width: 782px) {
  body.mdt-page-ablauf main.wp-block-group.alignwide {
    width: min(100% - 1.5rem, var(--wp--style--global--wide-size, 1440px));
    padding-top: 1.25rem !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}

/* 1.1.28 – Dedicated Ablauf template: no duplicate page title, genuinely wide content. */
.mdt-ablauf-page-main,
.mdt-ablauf-page-main > .wp-block-post-content {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
.mdt-ablauf-page-main > .wp-block-post-content > .mdt-section,
.mdt-ablauf-page-main > .wp-block-post-content > .wp-block-group.alignfull {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
.mdt-ablauf-page-main .mdt-section > .alignwide,
.mdt-ablauf-page-main .mdt-section > .wp-block-group.alignwide,
.mdt-ablauf-page-main .mdt-section > .wp-block-columns.alignwide {
  width: min(calc(100% - 2.5rem), 1280px) !important;
  max-width: 1280px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
.mdt-ablauf-page-main .mdt-section-head {
  max-width: 980px !important;
}
.mdt-ablauf-page-main .mdt-card-grid {
  gap: 1.25rem !important;
  align-items: stretch !important;
}
.mdt-ablauf-page-main .mdt-card-grid > .wp-block-column,
.mdt-ablauf-page-main .mdt-card-grid .mdt-card {
  min-width: 0 !important;
  height: 100%;
}
@media (max-width: 900px) {
  .mdt-ablauf-page-main .mdt-card-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .mdt-ablauf-page-main .mdt-section > .alignwide,
  .mdt-ablauf-page-main .mdt-section > .wp-block-group.alignwide,
  .mdt-ablauf-page-main .mdt-section > .wp-block-columns.alignwide {
    width: min(calc(100% - 1.5rem), 1280px) !important;
  }
}
@media (max-width: 600px) {
  .mdt-ablauf-page-main .mdt-card-grid {
    grid-template-columns: 1fr !important;
  }
}

/* 1.1.29 – Hilfe/Kontakt page. */
.mdt-help-page-main,
.mdt-help-page-main > .wp-block-post-content {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
}
.mdt-help-page-main .mdt-help-hero {
  background: linear-gradient(135deg, #f7f9fc 0%, #eef5fb 100%);
}
.mdt-help-page-main .mdt-help-hero > .alignwide,
.mdt-help-page-main .mdt-help-section > .alignwide,
.mdt-help-page-main .mdt-help-contact > .alignwide {
  width: min(calc(100% - 2.5rem), 1280px) !important;
  max-width: 1280px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
.mdt-help-page-main .mdt-help-head {
  max-width: 850px !important;
}
.mdt-help-page-main .mdt-help-grid {
  gap: 1.25rem !important;
  align-items: stretch !important;
}
.mdt-help-page-main .mdt-help-card {
  height: 100%;
  display: flex;
  flex-direction: column;
  gap: .85rem;
}
.mdt-help-page-main .mdt-help-card .wp-block-buttons {
  margin-top: auto;
}
.mdt-help-page-main .mdt-help-contact-card {
  max-width: 460px;
  margin-left: auto;
}
.mdt-help-page-main .mdt-help-contact-card a:not(.wp-block-button__link) {
  color: var(--wp--preset--color--primary, #245bb5);
}
@media (max-width: 900px) {
  .mdt-help-page-main .mdt-help-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
  }
  .mdt-help-page-main .mdt-help-contact-card {
    max-width: none;
    margin-left: 0;
  }
  .mdt-help-page-main .mdt-help-hero > .alignwide,
  .mdt-help-page-main .mdt-help-section > .alignwide,
  .mdt-help-page-main .mdt-help-contact > .alignwide {
    width: min(calc(100% - 1.5rem), 1280px) !important;
  }
}

/* 1.1.30 – Hilfe-Anfrageformular. */
.mdt-help-form-section {
  padding: 4.5rem 1.25rem 5rem;
  background: #fff;
}
.mdt-help-form-wrap {
  width: min(calc(100% - 0rem), 1280px);
  margin: 0 auto;
}
.mdt-help-form-wrap > h2 {
  margin: .2rem 0 .65rem;
  font-size: clamp(1.9rem, 3vw, 2.7rem);
}
.mdt-help-form-intro {
  max-width: 900px;
  margin: 0 0 1.5rem;
  color: var(--wp--preset--color--muted, #667085);
}
.mdt-help-request-form {
  background: #f7f9fc;
  border: 1px solid #d9e1ea;
  border-radius: 18px;
  padding: clamp(1.25rem, 3vw, 2rem);
  box-shadow: 0 18px 45px rgba(31,52,73,.06);
}
.mdt-help-form-subtitle {
  margin: .2rem 0 .9rem;
  padding-bottom: .55rem;
  border-bottom: 1px solid #dfe5ec;
  font-size: 1.05rem;
  font-weight: 750;
  color: #263445;
}
.mdt-help-form-subtitle:not(:first-of-type) { margin-top: 1.6rem; }
.mdt-help-form-subtitle small,
.mdt-help-request-form label small { font-weight: 500; color: #748094; }
.mdt-help-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}
.mdt-help-form-triple {
  grid-column: 1 / -1;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
}
.mdt-help-request-form label {
  display: flex;
  flex-direction: column;
  gap: .42rem;
  margin: 0;
  color: #263445;
  font-size: .92rem;
  font-weight: 650;
}
.mdt-help-request-form input[type="text"],
.mdt-help-request-form input[type="email"],
.mdt-help-request-form input[type="tel"],
.mdt-help-request-form select,
.mdt-help-request-form textarea,
.mdt-help-request-form input[type="file"] {
  width: 100%;
  box-sizing: border-box;
  min-height: 48px;
  border: 1px solid #b9c5d2;
  border-radius: 10px;
  background: #fff;
  color: #263445;
  padding: .72rem .85rem;
  font: inherit;
  font-weight: 500;
}
.mdt-help-request-form textarea {
  min-height: 150px;
  resize: vertical;
  line-height: 1.5;
}
.mdt-help-request-form input:focus,
.mdt-help-request-form select:focus,
.mdt-help-request-form textarea:focus {
  outline: 2px solid rgba(36,91,181,.17);
  border-color: #245bb5;
}
.mdt-help-form-wide,
.mdt-help-form-description,
.mdt-help-form-files { grid-column: 1 / -1; }
.mdt-help-form-description { margin-top: 1rem !important; }
.mdt-help-form-files { margin-top: 1rem !important; }
.mdt-help-form-files input[type="file"] { padding: .58rem .7rem; }
.mdt-help-form-files > small { display: block; font-weight: 500; color: #748094; }
.mdt-help-form-consent {
  flex-direction: row !important;
  align-items: flex-start;
  gap: .65rem !important;
  margin-top: 1.25rem !important;
  font-weight: 500 !important;
  line-height: 1.45;
}
.mdt-help-form-consent input { margin-top: .22rem; flex: 0 0 auto; }
.mdt-help-form-actions {
  display: flex;
  align-items: center;
  gap: 1rem;
  flex-wrap: wrap;
  margin-top: 1.35rem;
}
.mdt-help-form-actions button {
  border: 0;
  border-radius: 10px;
  background: #245bb5;
  color: #fff;
  padding: .9rem 1.35rem;
  font: inherit;
  font-weight: 750;
  cursor: pointer;
}
.mdt-help-form-actions button:hover { background: #183f87; }
.mdt-help-form-actions span { color: #667085; font-size: .92rem; }
.mdt-help-form-notice {
  margin: 0 0 1.25rem;
  padding: .9rem 1rem;
  border-radius: 10px;
  font-weight: 650;
}
.mdt-help-form-notice.is-success { background: #eef9f1; border: 1px solid #a7d7b3; color: #206a36; }
.mdt-help-form-notice.is-error { background: #fff1f1; border: 1px solid #e2b3b3; color: #8a2727; }
.mdt-help-honeypot { position: absolute !important; left: -9999px !important; width: 1px !important; height: 1px !important; overflow: hidden !important; }
@media (max-width: 760px) {
  .mdt-help-form-section { padding: 3rem .75rem 3.5rem; }
  .mdt-help-request-form { border-radius: 14px; padding: 1rem; }
  .mdt-help-form-grid { grid-template-columns: 1fr; }
  .mdt-help-form-triple { grid-column: auto; grid-template-columns: 1fr; }
  .mdt-help-form-wide { grid-column: auto; }
  .mdt-help-form-actions { align-items: stretch; flex-direction: column; }
  .mdt-help-form-actions button { width: 100%; }
}

/* 1.1.34 – Anfrageformular: freie Fahrzeugangaben mit RepairFinder-Autocomplete. */
.mdt-help-vehicle-note {
  margin: -.2rem 0 1rem;
  color: #667085;
  font-size: .9rem;
  line-height: 1.5;
}
.mdt-help-request-form input[list] {
  background-image: linear-gradient(45deg, transparent 50%, #667085 50%), linear-gradient(135deg, #667085 50%, transparent 50%);
  background-position: calc(100% - 18px) 50%, calc(100% - 13px) 50%;
  background-size: 5px 5px, 5px 5px;
  background-repeat: no-repeat;
  padding-right: 2.4rem;
}
.mdt-help-request-form input[aria-busy="true"] { cursor: progress; }

/* 1.1.35 – Service page. */
.mdt-service-page-main,
.mdt-service-page-main > .wp-block-post-content {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
}
.mdt-service-page-main .mdt-service-hero {
  background: linear-gradient(135deg, #f7f9fc 0%, #edf5fb 100%);
}
.mdt-service-page-main .mdt-service-hero > .alignwide,
.mdt-service-page-main .mdt-service-section > .alignwide,
.mdt-service-page-main .mdt-service-repair > .alignwide,
.mdt-service-page-main .mdt-service-process > .alignwide,
.mdt-service-page-main .mdt-service-values > .alignwide,
.mdt-service-page-main .mdt-service-about > .alignwide {
  width: min(calc(100% - 2.5rem), 1280px) !important;
  max-width: 1280px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
.mdt-service-page-main .mdt-service-head {
  max-width: 900px !important;
}
.mdt-service-page-main .mdt-service-lead {
  max-width: 820px;
  font-size: 1.08rem;
  line-height: 1.65;
  color: #566579;
}
.mdt-service-page-main .mdt-service-area-grid,
.mdt-service-page-main .mdt-service-process-grid {
  gap: 1rem !important;
  align-items: stretch !important;
}
.mdt-service-page-main .mdt-service-area-card,
.mdt-service-page-main .mdt-service-value-card {
  height: 100%;
}
.mdt-service-page-main .mdt-service-area-card h3,
.mdt-service-page-main .mdt-service-value-card h3 {
  margin-bottom: .4rem;
}
.mdt-service-page-main .mdt-service-split {
  gap: clamp(2rem, 5vw, 5rem) !important;
}
.mdt-service-page-main .mdt-service-checks {
  margin: 0;
  padding-left: 0;
  list-style: none;
  display: grid;
  gap: .8rem;
}
.mdt-service-page-main .mdt-service-checks li {
  position: relative;
  padding-left: 1.7rem;
  line-height: 1.55;
}
.mdt-service-page-main .mdt-service-checks li::before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 0;
  color: #245bb5;
  font-weight: 800;
}
.mdt-service-page-main .mdt-service-value-grid {
  gap: 1.15rem !important;
  align-items: stretch !important;
}
.mdt-service-page-main .mdt-service-mini-cta {
  border-radius: 18px;
}
.mdt-service-page-main .mdt-service-mini-cta .is-style-outline .wp-block-button__link {
  color: #fff;
  border-color: rgba(255,255,255,.65);
}
.mdt-service-page-main .mdt-service-mini-cta .is-style-outline .wp-block-button__link:hover {
  background: rgba(255,255,255,.1);
}
@media (max-width: 900px) {
  .mdt-service-page-main .mdt-service-area-grid,
  .mdt-service-page-main .mdt-service-process-grid,
  .mdt-service-page-main .mdt-service-value-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .mdt-service-page-main .mdt-service-split {
    display: grid !important;
    grid-template-columns: 1fr !important;
  }
  .mdt-service-page-main .mdt-service-hero > .alignwide,
  .mdt-service-page-main .mdt-service-section > .alignwide,
  .mdt-service-page-main .mdt-service-repair > .alignwide,
  .mdt-service-page-main .mdt-service-process > .alignwide,
  .mdt-service-page-main .mdt-service-values > .alignwide,
  .mdt-service-page-main .mdt-service-about > .alignwide {
    width: min(calc(100% - 1.5rem), 1280px) !important;
  }
}
@media (max-width: 600px) {
  .mdt-service-page-main .mdt-service-area-grid,
  .mdt-service-page-main .mdt-service-process-grid,
  .mdt-service-page-main .mdt-service-value-grid {
    grid-template-columns: 1fr !important;
  }
  .mdt-service-page-main .mdt-service-hero {
    padding-top: 3rem !important;
    padding-bottom: 2.8rem !important;
  }
}


/* 1.1.36 – Auftrag per Formular. */
.mdt-form-order-hero { background: #f5f8fc; }
.mdt-form-order-hero > .alignwide { width: min(calc(100% - 0rem), 1280px); margin-inline: auto; }
.mdt-form-order-hero h1 { margin: .2rem 0 .8rem; }
.mdt-form-order-hero p { max-width: 960px; }
.mdt-form-order-note { margin-top: 1rem; padding: .85rem 1rem; border-left: 4px solid #245bb5; background: #fff; border-radius: 0 10px 10px 0; }
.mdt-form-order-section { padding: 3rem 1.25rem 5rem; background: #fff; }
.mdt-form-order-wrap { width: min(100%, 1280px); margin: 0 auto; }
.mdt-form-order-form { position: relative; }
.mdt-form-order-label-choice { display: flex !important; flex-direction: row !important; align-items: flex-start; gap: .7rem !important; margin-top: 1.3rem !important; padding: 1rem; border: 1px solid #cdd8e5; border-radius: 12px; background: #fff; }
.mdt-form-order-label-choice input { margin-top: .25rem; flex: 0 0 auto; }
.mdt-form-order-label-choice span { display: flex; flex-direction: column; gap: .18rem; }
.mdt-form-order-label-choice small { font-weight: 500; color: #667085; }
.mdt-form-order-contract-note { margin-top: 1.2rem; padding: .9rem 1rem; border-radius: 10px; background: #eef4fb; color: #334155; line-height: 1.5; }
.mdt-form-order-success { padding: clamp(1.4rem,4vw,2.4rem); border: 1px solid #cdd8e5; border-radius: 18px; background: #f7f9fc; box-shadow: 0 18px 45px rgba(31,52,73,.06); }
.mdt-form-order-success h2 { margin: .25rem 0 .8rem; font-size: clamp(1.7rem,3vw,2.4rem); }
.mdt-form-order-success-actions { display: flex; flex-wrap: wrap; align-items: center; gap: .75rem; margin-top: 1.4rem; }
.mdt-form-order-success-actions .wp-element-button { text-decoration: none; border-radius: 10px; padding: .85rem 1.15rem; background: #245bb5; color: #fff; font-weight: 750; }
.mdt-form-order-success-actions .wp-element-button.is-secondary { background: #fff; color: #24415e; border: 1px solid #b9c5d2; }
.mdt-form-order-label-note { flex-basis: 100%; color: #667085; font-size: .92rem; }
.mdt-form-order-help-cta { width: min(calc(100% - 2.5rem), 1280px); margin: 2rem auto 0; padding: 1.4rem 1.5rem; border: 1px solid #d9e1ea; border-radius: 16px; background: #f7f9fc; }
.mdt-form-order-help-cta h3 { margin-top: 0; }
.mdt-form-order-cta-section { padding: 1rem 1.25rem 4.5rem; }
.mdt-form-order-cta { width: min(100%, 1280px); margin-inline: auto; padding: clamp(1.5rem,4vw,2.5rem); border-radius: 20px; }
@media (max-width: 760px) {
  .mdt-form-order-hero { padding-top: 2.5rem !important; padding-bottom: 2rem !important; }
  .mdt-form-order-section { padding: 2rem .75rem 3.5rem; }
  .mdt-form-order-success-actions { align-items: stretch; flex-direction: column; }
  .mdt-form-order-success-actions .wp-element-button { width: 100%; text-align: center; box-sizing: border-box; }
}

/* 1.1.41 – Blanko-Auftragsformular + Servicepauschale. */
.mdt-service-docs-strip {
  padding: 0 1.25rem 2.2rem;
  background: #f5f8fc;
}
.mdt-service-docs-strip > .alignwide,
.mdt-form-order-docs {
  width: min(calc(100% - 0rem), 1280px);
  margin-inline: auto;
}
.mdt-service-docs-strip > .alignwide,
.mdt-form-order-docs {
  display: grid;
  gap: .9rem;
}
.mdt-blank-form-download {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .8rem 1rem;
}
.mdt-blank-form-download .wp-element-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: .78rem 1.1rem;
  border-radius: 10px;
  background: #245bb5;
  border: 1px solid #245bb5;
  color: #fff;
  font-weight: 750;
  text-decoration: none;
}
.mdt-blank-form-download .wp-element-button:hover {
  background: #1f4b93;
  border-color: #1f4b93;
  color: #fff;
}
.mdt-blank-form-download span {
  color: #667085;
  font-size: .94rem;
}
.mdt-service-fee-notice {
  padding: 1rem 1.15rem;
  border: 1px solid #e6a24a;
  border-left: 4px solid #d97706;
  border-radius: 10px;
  background: #fff7ed;
  color: #6b3a05;
  line-height: 1.55;
}
.mdt-form-order-docs {
  padding: 0 1.25rem;
  margin-top: 1.4rem;
  margin-bottom: .5rem;
}
@media (max-width: 600px) {
  .mdt-service-docs-strip { padding-left: .75rem; padding-right: .75rem; }
  .mdt-form-order-docs { padding-left: .75rem; padding-right: .75rem; }
  .mdt-blank-form-download .wp-element-button { width: 100%; }
}

/* 1.1.44 – Service-Hero: sekundäre Wege zu einem gemeinsamen Feld zusammenfassen. */
.mdt-service-hero-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  gap: .85rem;
}
.mdt-service-hero-actions > .wp-block-button {
  margin: 0;
}
.mdt-service-secondary-actions {
  display: inline-flex !important;
  flex-wrap: nowrap !important;
  align-items: stretch;
  gap: 0 !important;
  padding: 0 !important;
  border: 2px solid #245bb5;
  border-radius: 10px;
  overflow: hidden;
  background: #fff;
}
.mdt-service-secondary-actions .wp-block-button {
  margin: 0 !important;
}
.mdt-service-secondary-actions .wp-block-button + .wp-block-button {
  border-left: 1px solid #245bb5;
}
.mdt-service-secondary-actions .wp-block-button__link,
.mdt-service-secondary-actions .wp-block-button__link:hover,
.mdt-service-secondary-actions .is-style-outline .wp-block-button__link {
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  padding: .75rem 1.25rem;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: #245bb5 !important;
  box-shadow: none !important;
  text-decoration: none;
  font-weight: 700;
  white-space: nowrap;
}
.mdt-service-secondary-actions .wp-block-button__link:hover {
  background: #eef4ff !important;
}

/* Der Servicepauschalen-Hinweis soll informieren, aber nicht dominieren. */
.mdt-service-fee-notice {
  padding: .7rem .9rem;
  border: 1px solid #dbe2ea;
  border-left: 3px solid #94a3b8;
  border-radius: 8px;
  background: #f8fafc;
  color: #5b6876;
  font-size: .9rem;
  line-height: 1.5;
}
.mdt-service-fee-notice strong {
  color: #3f4b59;
}
.mdt-service-docs-strip {
  padding-top: .75rem;
  padding-bottom: 1.25rem;
  background: #fff;
}

@media (max-width: 700px) {
  .mdt-service-hero-actions { align-items: stretch; }
  .mdt-service-secondary-actions { width: 100%; }
  .mdt-service-secondary-actions .wp-block-button { flex: 1 1 50%; }
  .mdt-service-secondary-actions .wp-block-button__link { width: 100%; padding-inline: .85rem; }
}

/* 1.1.55 – Öffentliche Anfrage-/Auftragsformulare: Fahrzeugart sicher ausblenden. */
.mdt-help-request-form label:has(> select[name="vehicle_type"]),
.mdt-help-request-form label:has(> input[name="vehicle_type"]:not([type="hidden"])) {
  display: none !important;
}

/* 1.1.58 – Hilfe & Anfrage: vier gleich hohe Schnellwahl-Kacheln. */
.mdt-help-page-main .mdt-help-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 1.25rem !important;
  align-items: stretch !important;
}
.mdt-help-page-main .mdt-help-grid > .wp-block-column {
  min-width: 0;
  display: flex;
}
.mdt-help-page-main .mdt-help-card {
  width: 100%;
  box-sizing: border-box;
}
.mdt-help-page-main .mdt-help-card-contact {
  margin-top: auto;
  padding-top: .25rem;
  line-height: 1.65;
}
.mdt-help-page-main .mdt-help-card-contact a {
  color: var(--wp--preset--color--primary, #245bb5);
  text-decoration: none;
  overflow-wrap: anywhere;
}
.mdt-help-page-main .mdt-help-card-contact a:hover {
  text-decoration: underline;
}
@media (max-width: 1100px) {
  .mdt-help-page-main .mdt-help-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 650px) {
  .mdt-help-page-main .mdt-help-grid {
    grid-template-columns: 1fr !important;
  }
}


/* 1.1.62 – Service-Hero: alle drei Wege als eigenständige Buttons darstellen. */
.mdt-service-secondary-actions {
  display: inline-flex !important;
  flex-wrap: nowrap !important;
  align-items: stretch;
  gap: .7rem !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  overflow: visible !important;
  background: transparent !important;
}
.mdt-service-secondary-actions .wp-block-button {
  margin: 0 !important;
}
.mdt-service-secondary-actions .wp-block-button + .wp-block-button {
  border-left: 0 !important;
}
.mdt-service-secondary-actions .wp-block-button__link,
.mdt-service-secondary-actions .is-style-outline .wp-block-button__link {
  min-height: 48px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  padding: .75rem 1.25rem;
  border: 2px solid #245bb5 !important;
  border-radius: 10px !important;
  background: #fff !important;
  color: #245bb5 !important;
  box-shadow: none !important;
  text-decoration: none;
  font-weight: 700;
  white-space: nowrap;
}
.mdt-service-secondary-actions .wp-block-button__link:hover,
.mdt-service-secondary-actions .is-style-outline .wp-block-button__link:hover {
  border-color: #1d4f9f !important;
  background: #eef4ff !important;
  color: #1d4f9f !important;
}
@media (max-width: 700px) {
  .mdt-service-secondary-actions {
    width: 100%;
    gap: .65rem !important;
  }
  .mdt-service-secondary-actions .wp-block-button {
    flex: 1 1 50%;
  }
  .mdt-service-secondary-actions .wp-block-button__link {
    width: 100%;
    padding-inline: .85rem;
  }
}
@media (max-width: 480px) {
  .mdt-service-secondary-actions {
    flex-wrap: wrap !important;
  }
  .mdt-service-secondary-actions .wp-block-button {
    flex: 1 1 100%;
  }
}


/* 1.1.63 – Service: Checkmarks im Markenblau. */
.mdt-service-page-main .mdt-service-checks li::before {
  color: #245bb5;
}


/* 1.1.64 – gemeinsamer Abschluss-CTA auf Service & Auftrag. */
.mdt-service-page-main .mdt-service-final-cta .mdt-service-final-actions {
  display: flex;
  flex-wrap: wrap;
  gap: .7rem;
  margin-top: 1.15rem;
}
.mdt-service-page-main .mdt-service-final-cta .mdt-service-final-actions .wp-block-button {
  margin: 0;
}
.mdt-service-page-main .mdt-service-final-cta .mdt-service-final-actions .wp-block-button__link {
  white-space: nowrap;
}
@media (max-width: 600px) {
  .mdt-service-page-main .mdt-service-final-cta .mdt-service-final-actions {
    display: grid;
    grid-template-columns: 1fr;
  }
  .mdt-service-page-main .mdt-service-final-cta .mdt-service-final-actions .wp-block-button__link {
    width: 100%;
    box-sizing: border-box;
    text-align: center;
  }
}


/* 1.1.66 – Service-Abschluss-CTA: kräftiges MD-Tronix-Blau und drei gleichmäßige Buttons. */
.mdt-service-page-main .mdt-service-final-cta {
  background: #245bb5 !important;
  background-image: linear-gradient(135deg, #1f56b3 0%, #2b66c9 100%) !important;
  color: #fff !important;
}
.mdt-service-page-main .mdt-service-final-cta h3,
.mdt-service-page-main .mdt-service-final-cta p {
  color: #fff !important;
}
.mdt-service-page-main .mdt-service-final-cta p {
  opacity: .96 !important;
}
.mdt-service-page-main .mdt-service-final-cta .mdt-service-final-actions {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: .85rem !important;
  width: 100% !important;
  margin-top: 1.25rem !important;
}
.mdt-service-page-main .mdt-service-final-cta .mdt-service-final-actions .wp-block-button {
  width: 100% !important;
  margin: 0 !important;
}
.mdt-service-page-main .mdt-service-final-cta .mdt-service-final-actions .wp-block-button__link {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 58px !important;
  box-sizing: border-box !important;
  padding: .9rem 1rem !important;
  border: 2px solid rgba(255,255,255,.9) !important;
  border-radius: 14px !important;
  background: #fff !important;
  color: #1d4f9f !important;
  font-weight: 800 !important;
  line-height: 1.2 !important;
  text-align: center !important;
  white-space: normal !important;
}
.mdt-service-page-main .mdt-service-final-cta .mdt-service-final-actions .wp-block-button__link:hover {
  background: #eaf2ff !important;
  color: #153f83 !important;
}
@media (max-width: 900px) {
  .mdt-service-page-main .mdt-service-final-cta .mdt-service-final-actions {
    grid-template-columns: 1fr !important;
  }
}


/* 1.1.67 – Footer aufgeräumt und Überschriften besser lesbar. */
.mdt-footer h4.wp-block-heading {
  color: #b9c7d6;
  font-weight: 800;
}
.mdt-footer .wp-block-navigation-item__content {
  color: #f3f6fa;
}


/* 1.1.69 – Hilfe & Anfrage: Kicker „Anfrageformular“ größer darstellen. */
.mdt-help-form-section .mdt-kicker {
  font-size: clamp(.92rem, 1.1vw, 1.02rem);
  letter-spacing: .09em;
  margin-bottom: .45rem;
}


/* 1.1.71 – Anfrageformular: Upload, Datenschutz und alternative E-Mail optisch verfeinern. */
.mdt-help-form-files input[type="file"] {
  min-height: 54px;
  padding: .45rem .55rem;
  border-color: #c7d3df;
  background: #fff;
  color: #667085;
}
.mdt-help-form-files input[type="file"]::file-selector-button {
  min-height: 40px;
  margin-right: .8rem;
  padding: .62rem .95rem;
  border: 1px solid #245bb5;
  border-radius: 9px;
  background: #fff;
  color: #245bb5;
  font: inherit;
  font-weight: 750;
  cursor: pointer;
  transition: background .15s ease, color .15s ease, border-color .15s ease;
}
.mdt-help-form-files input[type="file"]::file-selector-button:hover {
  background: #eef4ff;
  border-color: #1d4f9f;
  color: #1d4f9f;
}
.mdt-help-form-consent {
  align-items: center;
  gap: .75rem !important;
}
.mdt-help-form-consent input[type="checkbox"] {
  width: 18px;
  height: 18px;
  margin: 0;
  accent-color: #245bb5;
}
.mdt-help-form-actions span {
  color: #7a8492;
  font-size: .88rem;
}
.mdt-help-form-actions span a {
  color: #596779;
  text-decoration-color: rgba(89,103,121,.45);
}
.mdt-help-form-actions span a:hover {
  color: #245bb5;
}
@media (max-width: 760px) {
  .mdt-help-form-files input[type="file"]::file-selector-button {
    margin-right: .55rem;
    padding-inline: .75rem;
  }
}


/* 1.1.72 – Ablauf: vier gleich hohe Prozesskarten. */
@media (min-width: 901px) {
  .mdt-ablauf-page-main .mdt-card-grid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    align-items: stretch !important;
  }
  .mdt-ablauf-page-main .mdt-card-grid > .wp-block-column {
    display: flex !important;
    width: auto !important;
    flex-basis: auto !important;
  }
  .mdt-ablauf-page-main .mdt-card-grid .mdt-card {
    width: 100%;
    height: 100%;
  }
}


/* 1.1.73 – Ablauf: Symbole statt Nummern + drei saubere CTA-Buttons. */
.mdt-ablauf-page-main .mdt-card-number {
  font-size: 1.12rem;
  font-weight: 700;
  line-height: 1;
}
.mdt-ablauf-page-main .mdt-ablauf-actions .wp-block-buttons {
  gap: .8rem !important;
}
@media (min-width: 721px) {
  .mdt-ablauf-page-main .mdt-ablauf-actions .wp-block-buttons {
    display: grid !important;
    grid-template-columns: repeat(3, max-content);
    justify-content: center !important;
    align-items: center;
  }
}
@media (max-width: 720px) {
  .mdt-ablauf-page-main .mdt-ablauf-actions .wp-block-buttons {
    display: grid !important;
    grid-template-columns: 1fr;
  }
  .mdt-ablauf-page-main .mdt-ablauf-actions .wp-block-button__link {
    width: 100%;
    text-align: center;
    box-sizing: border-box;
  }
}


/* 1.1.74 – Größere Ablauf-Symbole auf Startseite und Ablauf-Seite. */
.home .mdt-card-number,
.mdt-ablauf-page-main .mdt-card-number {
  width: 56px;
  height: 56px;
  border-radius: 14px;
  font-size: 1.62rem;
  font-weight: 700;
  line-height: 1;
}
.home .mdt-card h3,
.mdt-ablauf-page-main .mdt-card h3 {
  margin-top: .65rem;
}


/* 1.1.78 – Startseite: Hilfe-CTA kräftig blau und zwei Buttons. */
.home .mdt-home-help-cta {
  background: linear-gradient(135deg, #1f56b3 0%, #2b66c9 100%);
}
.home .mdt-home-help-cta h2,
.home .mdt-home-help-cta p {
  color: #fff;
}
.home .mdt-home-help-cta p {
  opacity: .96;
}
.home .mdt-home-help-cta .wp-block-buttons {
  gap: .8rem !important;
}
.home .mdt-home-help-cta .wp-block-button__link {
  min-width: 210px;
  text-align: center;
}
@media (max-width: 720px) {
  .home .mdt-home-help-cta .wp-block-buttons {
    display: grid !important;
    grid-template-columns: 1fr;
  }
  .home .mdt-home-help-cta .wp-block-button__link {
    width: 100%;
    min-width: 0;
    box-sizing: border-box;
  }
}


/* 1.1.80 – Startseite: Stärken als echte Nutzen-Kacheln hervorheben. */
.home .mdt-trust {
  padding: 2.1rem 1.25rem;
  border-top: 1px solid #e1e8f0;
  border-bottom: 1px solid #e1e8f0;
  background: #f7f9fc;
}
.home .mdt-trust .wp-block-columns {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 1rem !important;
  align-items: stretch !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.home .mdt-trust-item {
  position: relative;
  min-width: 0;
  margin: 0 !important;
  padding: 1.35rem 1.25rem 1.4rem !important;
  border: 1px solid #dbe4ee;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 10px 28px rgba(31, 52, 73, .045);
}
.home .mdt-trust-item::before {
  position: static;
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  margin: 0 0 .9rem 0;
  border-radius: 13px;
  background: #edf3ff;
  transform: none;
  opacity: 1;
  color: #245bb5;
  font-size: 1.35rem;
  font-weight: 800;
  line-height: 1;
}
.home .mdt-trust-item:nth-child(1)::before { content: "🔧"; }
.home .mdt-trust-item:nth-child(2)::before { content: "♻️"; }
.home .mdt-trust-item:nth-child(3)::before { content: "🚚"; }
.home .mdt-trust-item:nth-child(4)::before { content: "📋"; }
.home .mdt-trust-item p {
  margin: 0 !important;
}
.home .mdt-trust-item strong {
  display: block;
  margin-bottom: .42rem;
  color: var(--wp--preset--color--ink);
  font-size: 1.04rem;
  font-weight: 850;
  line-height: 1.3;
}
.home .mdt-trust-item span {
  display: block;
  margin: 0;
  color: var(--wp--preset--color--muted);
  font-size: .88rem;
  line-height: 1.48;
}
@media (max-width: 980px) {
  .home .mdt-trust .wp-block-columns {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
@media (max-width: 560px) {
  .home .mdt-trust {
    padding: 1.3rem 1rem;
  }
  .home .mdt-trust .wp-block-columns {
    grid-template-columns: 1fr !important;
    gap: .75rem !important;
  }
  .home .mdt-trust-item {
    padding: 1.1rem !important;
  }
}


/* 1.1.81 – Startseite: Kontakt & Standorte klar sichtbar. */
.home .mdt-home-contact-section {
  padding-top: clamp(3rem, 6vw, 5rem);
  padding-bottom: clamp(3rem, 6vw, 5rem);
  background: #fff;
}
.home .mdt-home-contact-head {
  max-width: 820px;
  margin-bottom: 1.5rem;
}
.home .mdt-home-contact-head h2 {
  margin: .25rem 0 .55rem;
}
.home .mdt-home-contact-head p:last-child {
  margin-bottom: 0;
  color: var(--wp--preset--color--muted);
}
.home .mdt-home-contact-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem !important;
  align-items: stretch;
}
.home .mdt-home-contact-card {
  min-width: 0;
  padding: 1.35rem 1.35rem 1.45rem;
  border: 1px solid #dbe4ee;
  border-radius: 18px;
  background: #f8faff;
  box-shadow: 0 10px 28px rgba(31,52,73,.045);
}
.home .mdt-home-contact-icon {
  display: grid;
  place-items: center;
  width: 52px;
  height: 52px;
  margin: 0 0 .9rem;
  border-radius: 14px;
  background: #eaf1ff;
  font-size: 1.45rem;
  line-height: 1;
}
.home .mdt-home-contact-card h3 {
  margin: 0 0 .55rem;
  font-size: 1.16rem;
}
.home .mdt-home-contact-card p {
  margin: 0;
  color: var(--wp--preset--color--muted);
  line-height: 1.62;
}
.home .mdt-home-contact-card a {
  color: #1f56b3;
  font-weight: 750;
  text-decoration: none;
}
.home .mdt-home-contact-card a:hover {
  text-decoration: underline;
}
.home .mdt-home-contact-card strong {
  color: var(--wp--preset--color--ink);
}
@media (max-width: 900px) {
  .home .mdt-home-contact-grid {
    grid-template-columns: 1fr !important;
  }
}


/* 1.1.82 – Startseite: kompakter Kontakt direkt unter dem Reparaturablauf. */
.home .mdt-home-direct-contact-section {
  margin-top: 0;
  padding: 0 1.25rem clamp(2.8rem, 5vw, 4.5rem);
  background: var(--wp--preset--color--surface);
}
.home .mdt-home-direct-contact {
  display: grid;
  grid-template-columns: minmax(250px, .9fr) minmax(420px, 1.25fr);
  gap: 1.4rem 2rem;
  align-items: center;
  padding: 1.55rem 1.7rem 1.25rem;
  border: 1px solid #d7e1ec;
  border-radius: 20px;
  background: #fff;
  box-shadow: 0 12px 34px rgba(31,52,73,.055);
}
.home .mdt-home-direct-contact-copy .mdt-kicker {
  margin: 0 0 .35rem;
}
.home .mdt-home-direct-contact-copy h3 {
  margin: 0;
  font-size: clamp(1.25rem, 2vw, 1.65rem);
}
.home .mdt-home-direct-contact-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: .8rem;
}
.home .mdt-home-direct-contact-link {
  display: flex;
  align-items: center;
  gap: .75rem;
  min-width: 0;
  min-height: 64px;
  padding: .8rem 1rem;
  border: 1px solid #cddbf0;
  border-radius: 14px;
  background: #f7faff;
  color: #173f84;
  font-weight: 800;
  text-decoration: none;
  line-height: 1.25;
}
.home .mdt-home-direct-contact-link:hover {
  border-color: #245bb5;
  background: #eef4ff;
  color: #173f84;
}
.home .mdt-home-direct-contact-link .mdt-home-direct-contact-icon {
  display: grid;
  flex: 0 0 38px;
  place-items: center;
  width: 38px;
  height: 38px;
  border-radius: 10px;
  background: #e7efff;
  font-size: 1.1rem;
}
.home .mdt-home-direct-contact-locations {
  grid-column: 1 / -1;
  display: flex;
  flex-wrap: wrap;
  gap: .45rem 1.6rem;
  padding-top: 1rem;
  border-top: 1px solid #e4eaf1;
  color: var(--wp--preset--color--muted);
  font-size: .88rem;
}
.home .mdt-home-direct-contact-locations strong {
  color: var(--wp--preset--color--ink);
}
@media (max-width: 900px) {
  .home .mdt-home-direct-contact {
    grid-template-columns: 1fr;
  }
  .home .mdt-home-direct-contact-actions {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 600px) {
  .home .mdt-home-direct-contact {
    padding: 1.25rem;
  }
  .home .mdt-home-direct-contact-actions {
    grid-template-columns: 1fr;
  }
  .home .mdt-home-direct-contact-locations {
    display: grid;
    grid-template-columns: 1fr;
  }
}


/* 1.1.83 – Startseite: Kontakt untereinander, ohne Button-Optik, mit Erreichbarkeit. */
.home .mdt-home-direct-contact {
  display: block;
  max-width: 860px;
  margin-inline: auto;
}
.home .mdt-home-direct-contact-copy h3 {
  margin-bottom: .75rem;
}
.home .mdt-home-direct-contact-details {
  display: grid;
  gap: .35rem;
  margin-top: .25rem;
  color: var(--wp--preset--color--ink);
  font-size: 1rem;
  line-height: 1.55;
}
.home .mdt-home-direct-contact-details a {
  color: #1d4f9f;
  font-weight: 800;
  text-decoration: none;
}
.home .mdt-home-direct-contact-details a:hover {
  text-decoration: underline;
}
.home .mdt-home-direct-contact-hours {
  margin-top: .2rem;
  color: var(--wp--preset--color--muted);
  font-size: .92rem;
}
.home .mdt-home-direct-contact-locations {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: .55rem 1.6rem;
  margin-top: 1.15rem;
  padding-top: 1rem;
}
.home .mdt-home-direct-contact-locations span {
  display: block;
}
@media (max-width: 700px) {
  .home .mdt-home-direct-contact-locations {
    grid-template-columns: 1fr;
  }
}


/* 1.1.84 – Startseite: Telefon/E-Mail nebeneinander, Adressen als Blöcke. */
.home .mdt-home-direct-contact {
  display: block;
  max-width: 960px;
}
.home .mdt-home-direct-contact-copy h3 {
  margin-bottom: .95rem;
}
.home .mdt-home-direct-contact-details {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: .85rem 1rem;
  align-items: start;
  margin-top: .35rem;
}
.home .mdt-home-direct-contact-item {
  padding: .95rem 1rem;
  border: 1px solid #dbe4ee;
  border-radius: 14px;
  background: #f9fbff;
  line-height: 1.45;
}
.home .mdt-home-direct-contact-item strong {
  display: block;
  margin-bottom: .18rem;
}
.home .mdt-home-direct-contact-item a {
  color: #1d4f9f;
  font-weight: 800;
  text-decoration: none;
}
.home .mdt-home-direct-contact-item a:hover {
  text-decoration: underline;
}
.home .mdt-home-direct-contact-hours {
  grid-column: 1 / -1;
  margin-top: -.1rem;
  color: var(--wp--preset--color--muted);
  font-size: .94rem;
}
.home .mdt-home-direct-contact-locations {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
  margin-top: 1.15rem;
  padding-top: 1rem;
}
.home .mdt-home-direct-contact-location {
  padding: .95rem 1rem;
  border: 1px solid #dbe4ee;
  border-radius: 14px;
  background: #fff;
  line-height: 1.55;
}
.home .mdt-home-direct-contact-location strong {
  display: block;
  margin-bottom: .12rem;
  color: var(--wp--preset--color--ink);
}
@media (max-width: 700px) {
  .home .mdt-home-direct-contact-details,
  .home .mdt-home-direct-contact-locations {
    grid-template-columns: 1fr;
  }
}


/* 1.1.85 – Footer: Kontakt unter Logo, Adressen nebeneinander. */
.mdt-footer .mdt-footer-contact-column {
  min-width: 0;
}
.mdt-footer .mdt-footer-claim {
  max-width: 520px;
  margin-bottom: 1.15rem;
}
.mdt-footer .mdt-footer-contact {
  max-width: 560px;
  color: #c8d3df;
  font-size: .86rem;
  line-height: 1.5;
}
.mdt-footer .mdt-footer-contact a {
  color: #fff;
  font-weight: 750;
  text-decoration: none;
}
.mdt-footer .mdt-footer-contact a:hover {
  text-decoration: underline;
}
.mdt-footer .mdt-footer-contact-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: .75rem 1.25rem;
  margin-bottom: .65rem;
}
.mdt-footer .mdt-footer-contact-row strong,
.mdt-footer .mdt-footer-address strong {
  color: #fff;
}
.mdt-footer .mdt-footer-hours {
  margin-bottom: 1rem;
  color: #aebdca;
}
.mdt-footer .mdt-footer-addresses {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: .85rem 1rem;
}
.mdt-footer .mdt-footer-address {
  padding-top: .8rem;
  border-top: 1px solid #3a424b;
}
@media (max-width: 980px) {
  .mdt-footer > .wp-block-columns {
    flex-wrap: wrap !important;
  }
  .mdt-footer .mdt-footer-contact-column {
    flex-basis: 100% !important;
    margin-bottom: 1rem;
  }
}
@media (max-width: 560px) {
  .mdt-footer .mdt-footer-contact-row,
  .mdt-footer .mdt-footer-addresses {
    grid-template-columns: 1fr;
  }
}


/* 1.1.86 – Footer: Sitz-Bezeichnung + Öffnungszeiten unter Adressen. */
.mdt-footer .mdt-footer-hours {
  margin-top: 1rem;
  margin-bottom: 0;
  color: #c8d3df;
  display: flex;
  align-items: center;
  gap: .45rem;
  flex-wrap: wrap;
}
.mdt-footer .mdt-footer-hours-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 1.4rem;
  height: 1.4rem;
  border-radius: 999px;
  background: #2a61bf;
  color: #fff;
  font-size: .82rem;
  line-height: 1;
}


/* 1.1.87 – Footer: Hotline unter Telefonnummer, Öffnungszeiten ohne Symbol. */
.mdt-footer .mdt-footer-hotline {
  margin-top: .28rem;
  color: #aebdca;
  font-size: .8rem;
  font-weight: 600;
}
.mdt-footer .mdt-footer-hotline span {
  margin-right: .25rem;
  color: #7fb0ff;
}
.mdt-footer .mdt-footer-hours {
  display: block;
  margin-top: 1rem;
  margin-bottom: 0;
  color: #c8d3df;
}


/* 1.1.88 – Footer klarer gliedern und gleichmäßiger ausrichten. */
@media (min-width: 981px) {
  .mdt-footer > .wp-block-columns.alignwide {
    display: grid !important;
    grid-template-columns: minmax(440px, 1.7fr) repeat(3, minmax(150px, .72fr));
    gap: clamp(2rem, 3vw, 3.5rem) !important;
    align-items: start;
  }
  .mdt-footer > .wp-block-columns.alignwide > .wp-block-column {
    width: auto !important;
    flex-basis: auto !important;
    min-width: 0;
    margin: 0 !important;
  }
}
.mdt-footer .mdt-footer-contact-column {
  max-width: 640px;
}
.mdt-footer .mdt-footer-claim {
  max-width: 560px;
  margin-top: .7rem;
  margin-bottom: 1.35rem;
  line-height: 1.5;
}
.mdt-footer .mdt-footer-contact {
  max-width: none;
}
.mdt-footer .mdt-footer-contact-row {
  gap: 1.25rem 1.75rem;
  margin: 0;
  padding: .95rem 0;
  border-top: 1px solid #3a424b;
  border-bottom: 1px solid #3a424b;
}
.mdt-footer .mdt-footer-contact-row > div {
  min-width: 0;
}
.mdt-footer .mdt-footer-contact-row > div > strong {
  display: block;
  margin-bottom: .18rem;
  color: #9fb6cf;
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
}
.mdt-footer .mdt-footer-contact-row a {
  font-size: .94rem;
  line-height: 1.35;
}
.mdt-footer .mdt-footer-hotline {
  margin-top: .35rem;
  color: #b9c6d3;
  font-size: .78rem;
}
.mdt-footer .mdt-footer-addresses {
  gap: 1.1rem 1.75rem;
  margin-top: 0;
  padding-top: 1rem;
}
.mdt-footer .mdt-footer-address {
  padding-top: 0;
  border-top: 0;
  color: #c8d3df;
  line-height: 1.55;
}
.mdt-footer .mdt-footer-address strong {
  display: block;
  margin-bottom: .18rem;
  color: #fff;
  font-size: .84rem;
}
.mdt-footer .mdt-footer-hours {
  margin-top: .95rem;
  padding-top: .8rem;
  border-top: 1px solid #3a424b;
  color: #b9c6d3;
  font-size: .82rem;
}
.mdt-footer .mdt-footer-hours strong {
  color: #fff;
}
.mdt-footer h4.wp-block-heading {
  margin: .15rem 0 1rem;
  color: #b9cbe0 !important;
  font-size: .82rem !important;
  font-weight: 850;
  letter-spacing: .03em;
}
.mdt-footer .wp-block-navigation__container {
  gap: .75rem !important;
}
.mdt-footer .wp-block-navigation-item__content {
  line-height: 1.35;
}
.mdt-footer > .wp-block-separator {
  margin-top: 2rem;
  margin-bottom: 1.35rem;
}
@media (max-width: 700px) {
  .mdt-footer .mdt-footer-contact-row,
  .mdt-footer .mdt-footer-addresses {
    grid-template-columns: 1fr;
    gap: .9rem;
  }
}


/* 1.1.89 – Footer als einheitliches Gesamtraster. */
.mdt-footer .mdt-footer-brand {
  display: flex !important;
  align-items: center;
  gap: 1.4rem !important;
  margin-bottom: 1.65rem;
  padding-bottom: 1.45rem;
  border-bottom: 1px solid #3a424b;
}
.mdt-footer .mdt-footer-brand .custom-logo {
  width: 230px;
  flex: 0 0 auto;
}
.mdt-footer .mdt-footer-brand .mdt-footer-claim {
  max-width: 620px;
  margin: 0;
  font-size: .86rem;
  line-height: 1.5;
}
@media (min-width: 981px) {
  .mdt-footer .mdt-footer-main-grid {
    display: grid !important;
    grid-template-columns: minmax(390px, 1.45fr) repeat(3, minmax(150px, .72fr));
    gap: clamp(2.25rem, 3.5vw, 4.5rem) !important;
    align-items: start;
  }
  .mdt-footer .mdt-footer-main-grid > .wp-block-column {
    width: auto !important;
    flex-basis: auto !important;
    min-width: 0;
    margin: 0 !important;
  }
}
.mdt-footer .mdt-footer-contact-column {
  max-width: none;
}
.mdt-footer .mdt-footer-main-grid h4.wp-block-heading {
  margin: 0 0 1.05rem;
  padding-bottom: .55rem;
  border-bottom: 1px solid #3a424b;
  color: #b9cbe0 !important;
  font-size: .78rem !important;
  font-weight: 850;
  letter-spacing: .055em;
  text-transform: uppercase;
}
.mdt-footer .mdt-footer-contact-row {
  padding: 0;
  border: 0;
  gap: .8rem 1.25rem;
  margin-bottom: 1rem;
}
.mdt-footer .mdt-footer-contact-row > div > strong {
  color: #b9cbe0;
  font-size: .7rem;
}
.mdt-footer .mdt-footer-addresses {
  margin: 0;
  padding: .95rem 0 0;
  border-top: 1px solid #343c45;
  gap: 1rem 1.25rem;
}
.mdt-footer .mdt-footer-address {
  font-size: .82rem;
  line-height: 1.5;
}
.mdt-footer .mdt-footer-hours {
  margin-top: .85rem;
  padding-top: .7rem;
  border-top: 1px solid #343c45;
  font-size: .8rem;
}
.mdt-footer .wp-block-navigation__container {
  gap: .7rem !important;
}
.mdt-footer .wp-block-navigation-item__content {
  font-size: .9rem;
  font-weight: 700;
  line-height: 1.35;
}
.mdt-footer > .wp-block-separator {
  margin-top: 2.1rem;
  margin-bottom: 1.25rem;
}
@media (max-width: 980px) {
  .mdt-footer .mdt-footer-brand {
    align-items: flex-start;
  }
  .mdt-footer .mdt-footer-main-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 2rem 2.5rem !important;
  }
  .mdt-footer .mdt-footer-contact-column {
    grid-column: 1 / -1;
  }
}
@media (max-width: 620px) {
  .mdt-footer .mdt-footer-brand {
    display: block !important;
  }
  .mdt-footer .mdt-footer-brand .mdt-footer-claim {
    margin-top: .8rem;
  }
  .mdt-footer .mdt-footer-main-grid {
    grid-template-columns: 1fr;
    gap: 1.7rem !important;
  }
  .mdt-footer .mdt-footer-contact-column {
    grid-column: auto;
  }
}


/* 1.1.90 – Footer: Claim unter Logo, Kontaktzeile mit Telefon/E-Mail/Öffnungszeiten. */
.mdt-footer .mdt-footer-brand {
  display: block !important;
  margin-bottom: 1.75rem;
}
.mdt-footer .mdt-footer-brand .custom-logo {
  display: block;
  margin-bottom: .8rem;
}
.mdt-footer .mdt-footer-brand .mdt-footer-claim {
  max-width: 520px;
  margin: 0;
}
.mdt-footer .mdt-footer-contact-row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: .9rem 1.2rem;
  align-items: start;
}
.mdt-footer .mdt-footer-contact-row > div {
  min-width: 0;
}
.mdt-footer .mdt-footer-contact-row > div > strong {
  display: block;
  margin-bottom: .35rem;
}
.mdt-footer .mdt-footer-opening {
  color: #e8edf3;
  font-weight: 700;
}
.mdt-footer .mdt-footer-addresses {
  margin-top: 1rem;
}
.mdt-footer .mdt-footer-hours {
  display: none;
}
@media (max-width: 980px) {
  .mdt-footer .mdt-footer-contact-row {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 620px) {
  .mdt-footer .mdt-footer-contact-row {
    grid-template-columns: 1fr;
  }
}


/* 1.1.91 – Footer: Schnellkontakt direkt neben dem Logo. */
.mdt-footer .mdt-footer-top {
  display: grid !important;
  grid-template-columns: minmax(280px, .8fr) minmax(560px, 1.45fr);
  gap: clamp(2rem, 4vw, 5rem) !important;
  align-items: start;
  margin-bottom: 1.9rem;
  padding-bottom: 1.55rem;
  border-bottom: 1px solid #3a424b;
}
.mdt-footer .mdt-footer-brand {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}
.mdt-footer .mdt-footer-brand .custom-logo {
  display: block;
  margin: 0 0 .75rem;
}
.mdt-footer .mdt-footer-brand .mdt-footer-claim {
  max-width: 430px;
  margin: 0;
}
.mdt-footer .mdt-footer-quick-contact {
  min-width: 0;
}
.mdt-footer .mdt-footer-quick-contact h4.wp-block-heading {
  margin: 0 0 .85rem;
  padding-bottom: .5rem;
  border-bottom: 1px solid #3a424b;
  color: #b9cbe0 !important;
  font-size: .78rem !important;
  font-weight: 850;
  letter-spacing: .055em;
  text-transform: uppercase;
}
.mdt-footer .mdt-footer-contact-row-top {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem 1.35rem;
  margin: 0;
}
.mdt-footer .mdt-footer-contact-row-top > div > strong {
  display: block;
  margin-bottom: .32rem;
  color: #b9cbe0;
  font-size: .7rem;
  letter-spacing: .04em;
  text-transform: uppercase;
}
.mdt-footer .mdt-footer-contact-row-top a,
.mdt-footer .mdt-footer-contact-row-top .mdt-footer-opening {
  color: #fff;
  font-weight: 750;
}
.mdt-footer .mdt-footer-main-grid {
  margin-top: 0;
}
.mdt-footer .mdt-footer-addresses {
  padding-top: 0;
  border-top: 0;
}
@media (min-width: 981px) {
  .mdt-footer .mdt-footer-main-grid {
    display: grid !important;
    grid-template-columns: minmax(300px, 1.25fr) repeat(3, minmax(150px, .75fr));
    gap: clamp(2.25rem, 3.4vw, 4rem) !important;
    align-items: start;
  }
}
@media (max-width: 980px) {
  .mdt-footer .mdt-footer-top {
    grid-template-columns: 1fr;
    gap: 1.6rem !important;
  }
  .mdt-footer .mdt-footer-contact-row-top {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}
@media (max-width: 700px) {
  .mdt-footer .mdt-footer-contact-row-top {
    grid-template-columns: 1fr;
    gap: .9rem;
  }
}


/* 1.1.93 – Footer kompakter und ruhiger, weniger Linien. */
.mdt-footer {
  padding-top: 2.2rem !important;
  padding-bottom: 1.5rem !important;
}
.mdt-footer .mdt-footer-top {
  gap: clamp(1.4rem, 2.2vw, 2.8rem) !important;
  margin-bottom: 1.2rem;
  padding-bottom: .5rem;
  border-bottom: 0;
}
.mdt-footer .mdt-footer-brand .custom-logo {
  margin-bottom: .55rem;
}
.mdt-footer .mdt-footer-brand .mdt-footer-claim {
  max-width: 400px;
  line-height: 1.45;
}
.mdt-footer .mdt-footer-quick-contact h4.wp-block-heading,
.mdt-footer .mdt-footer-main-grid h4.wp-block-heading {
  margin: 0 0 .65rem;
  padding-bottom: 0;
  border-bottom: 0;
}
.mdt-footer .mdt-footer-contact-row-top {
  gap: .75rem 1rem;
}
.mdt-footer .mdt-footer-contact-row-top > div > strong {
  margin-bottom: .2rem;
}
.mdt-footer .mdt-footer-hotline {
  margin-top: .25rem;
}
.mdt-footer .mdt-footer-main-grid {
  margin-top: .2rem;
}
@media (min-width: 981px) {
  .mdt-footer .mdt-footer-main-grid {
    grid-template-columns: minmax(300px, 1.15fr) repeat(3, minmax(140px, .7fr));
    gap: 1.6rem !important;
  }
}
.mdt-footer .mdt-footer-addresses {
  margin-top: 0;
  padding-top: 0;
  border-top: 0;
  gap: .85rem 1rem;
}
.mdt-footer .mdt-footer-address {
  font-size: .81rem;
  line-height: 1.45;
}
.mdt-footer .wp-block-navigation__container {
  gap: .45rem !important;
}
.mdt-footer .wp-block-navigation-item__content {
  line-height: 1.3;
}
.mdt-footer > .wp-block-separator {
  display: none;
}
.mdt-footer .mdt-footer-small {
  margin-top: 1rem;
}
@media (max-width: 980px) {
  .mdt-footer .mdt-footer-top {
    gap: 1rem !important;
  }
  .mdt-footer .mdt-footer-main-grid {
    gap: 1.1rem !important;
  }
}


/* 1.1.94 – Kontaktleiste unter Header + kompakter Footer ohne Kontaktdaten. */
.mdt-header-contactbar {
  border-top: 1px solid #edf1f5;
  background: #f7f9fc;
}
.mdt-header-contactbar-inner {
  width: min(calc(100% - 3rem), 1280px);
  min-height: 34px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 1.5rem;
  color: #536171;
  font-size: .78rem;
  line-height: 1.2;
}
.mdt-header-contactbar-inner span {
  display: inline-flex;
  align-items: center;
  gap: .28rem;
  white-space: nowrap;
}
.mdt-header-contactbar-inner a {
  color: #1d4f9f;
  font-weight: 750;
  text-decoration: none;
}
.mdt-header-contactbar-inner a:hover {
  text-decoration: underline;
}
.mdt-header-contactbar-inner small {
  color: #748293;
  font-size: .72rem;
}
@media (max-width: 900px) {
  .mdt-header-contactbar-inner {
    width: min(calc(100% - 2rem), 1280px);
    justify-content: center;
    gap: 1rem;
  }
  .mdt-header-contactbar-inner span:nth-child(3) {
    display: none;
  }
}
@media (max-width: 620px) {
  .mdt-header-contactbar-inner {
    min-height: 32px;
    justify-content: space-between;
    gap: .65rem;
    font-size: .72rem;
  }
  .mdt-header-contactbar-inner small {
    display: none;
  }
  .mdt-header-contactbar-inner span:nth-child(2) {
    overflow: hidden;
    text-overflow: ellipsis;
  }
}

.mdt-footer .mdt-footer-compact-grid {
  margin: 0 !important;
}
@media (min-width: 1101px) {
  .mdt-footer .mdt-footer-compact-grid {
    display: grid !important;
    grid-template-columns: minmax(260px, 1.25fr) minmax(300px, 1.35fr) repeat(3, minmax(130px, .7fr));
    gap: 1.6rem !important;
    align-items: start;
  }
  .mdt-footer .mdt-footer-compact-grid > .wp-block-column {
    width: auto !important;
    flex-basis: auto !important;
    min-width: 0;
    margin: 0 !important;
  }
}
.mdt-footer .mdt-footer-brand-column .custom-logo {
  width: 210px;
  margin: 0 0 .55rem;
}
.mdt-footer .mdt-footer-brand-column .mdt-footer-claim {
  max-width: 310px;
  margin: 0;
  line-height: 1.45;
}
.mdt-footer .mdt-footer-compact-grid h4.wp-block-heading {
  margin: 0 0 .6rem;
  padding: 0;
  border: 0;
  color: #b9cbe0 !important;
  font-size: .75rem !important;
  font-weight: 850;
  letter-spacing: .05em;
  text-transform: uppercase;
}
.mdt-footer .mdt-footer-locations-column .mdt-footer-addresses {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: .85rem;
  margin: 0;
  padding: 0;
  border: 0;
}
.mdt-footer .mdt-footer-address {
  padding: 0;
  border: 0;
  font-size: .79rem;
  line-height: 1.4;
}
.mdt-footer .wp-block-navigation__container {
  gap: .38rem !important;
}
.mdt-footer .wp-block-navigation-item__content {
  font-size: .84rem;
  line-height: 1.25;
}
.mdt-footer .mdt-footer-bottom {
  margin-top: 1.25rem;
  padding-top: .85rem;
  border-top: 1px solid #343c45;
}
.mdt-footer .mdt-footer-bottom .mdt-footer-small {
  margin: 0;
}
@media (max-width: 1100px) {
  .mdt-footer .mdt-footer-compact-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1.5rem 2rem !important;
  }
  .mdt-footer .mdt-footer-brand-column,
  .mdt-footer .mdt-footer-locations-column {
    grid-column: auto;
  }
}
@media (max-width: 620px) {
  .mdt-footer .mdt-footer-compact-grid {
    grid-template-columns: 1fr;
    gap: 1.25rem !important;
  }
  .mdt-footer .mdt-footer-locations-column .mdt-footer-addresses {
    grid-template-columns: 1fr 1fr;
  }
}


/* 1.1.95 – Header-Kontaktleiste entfernt, kompakter Footer mit höher sitzenden Standortblöcken. */
.mdt-header-contactbar,
.mdt-header-contactbar-inner {
  display: none !important;
}
.mdt-footer {
  padding-top: 2rem !important;
  padding-bottom: 1.35rem !important;
}
.mdt-footer .mdt-footer-compact-grid {
  gap: 1.35rem !important;
}
@media (min-width: 1101px) {
  .mdt-footer .mdt-footer-compact-grid {
    grid-template-columns: minmax(260px, 1.22fr) minmax(300px, 1.18fr) repeat(3, minmax(130px, .7fr));
    gap: 1.45rem !important;
  }
}
.mdt-footer .mdt-footer-brand-column .mdt-footer-claim {
  margin-bottom: .15rem;
}
.mdt-footer .mdt-footer-locations-column {
  margin-top: -.1rem;
}
.mdt-footer .mdt-footer-compact-grid h4.wp-block-heading {
  margin: 0 0 .45rem;
}
.mdt-footer .mdt-footer-locations-column .mdt-footer-addresses {
  gap: .65rem;
  align-items: start;
}
.mdt-footer .mdt-footer-address {
  line-height: 1.35;
}
.mdt-footer .mdt-footer-bottom {
  margin-top: 1rem;
}


/* 1.1.96 – Footer neu geordnet: Adressen unter Logo, sauberes 4-Spalten-Layout. */
@media (min-width: 1101px) {
  .mdt-footer .mdt-footer-compact-grid {
    grid-template-columns: minmax(340px, 1.45fr) repeat(3, minmax(170px, .72fr)) !important;
    gap: 2rem !important;
    align-items: start;
  }
}
.mdt-footer .mdt-footer-brand-column {
  min-width: 0;
}
.mdt-footer .mdt-footer-brand-column .custom-logo {
  margin-bottom: .6rem;
}
.mdt-footer .mdt-footer-brand-column .mdt-footer-claim {
  max-width: 340px;
  margin: 0 0 1rem;
}
.mdt-footer .mdt-footer-brand-column h4.wp-block-heading {
  margin: 0 0 .55rem;
}
.mdt-footer .mdt-footer-brand-column .mdt-footer-addresses {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: .7rem 1.25rem;
  margin: 0;
}
.mdt-footer .mdt-footer-address {
  font-size: .8rem;
  line-height: 1.4;
}
.mdt-footer .wp-block-column > .wp-block-navigation {
  margin-top: 0;
}
.mdt-footer .mdt-footer-bottom {
  margin-top: 1.1rem;
}
@media (max-width: 1100px) {
  .mdt-footer .mdt-footer-compact-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 1.4rem 1.8rem !important;
  }
  .mdt-footer .mdt-footer-brand-column {
    grid-column: 1 / -1;
  }
  .mdt-footer .mdt-footer-brand-column .mdt-footer-addresses {
    max-width: 560px;
  }
}
@media (max-width: 620px) {
  .mdt-footer .mdt-footer-compact-grid {
    grid-template-columns: 1fr !important;
  }
  .mdt-footer .mdt-footer-brand-column .mdt-footer-addresses {
    grid-template-columns: 1fr;
    gap: .7rem;
  }
}


/* 1.1.97 – Footer zentriert, Adressen neben Logo, gleichmäßige kompakte Abstände. */
.mdt-footer .mdt-footer-centered {
  width: min(calc(100% - 2rem), 1220px) !important;
  max-width: 1220px !important;
  margin-inline: auto !important;
}
@media (min-width: 1101px) {
  .mdt-footer .mdt-footer-compact-grid {
    display: grid !important;
    grid-template-columns: minmax(560px, 1.9fr) repeat(3, minmax(145px, .62fr)) !important;
    gap: 1.55rem !important;
    align-items: start;
    margin: 0 !important;
  }
  .mdt-footer .mdt-footer-compact-grid > .wp-block-column {
    width: auto !important;
    flex-basis: auto !important;
    min-width: 0;
    margin: 0 !important;
  }
}
.mdt-footer .mdt-footer-company-inner {
  display: grid !important;
  grid-template-columns: minmax(190px, .9fr) minmax(330px, 1.5fr);
  gap: 1.35rem !important;
  align-items: start;
}
.mdt-footer .mdt-footer-brand-block .custom-logo {
  width: 205px;
  margin: 0 0 .5rem;
}
.mdt-footer .mdt-footer-brand-block .mdt-footer-claim {
  max-width: 230px;
  margin: 0;
  line-height: 1.4;
}
.mdt-footer .mdt-footer-addresses-inline {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: .85rem 1.2rem;
  margin: .1rem 0 0;
}
.mdt-footer .mdt-footer-address {
  font-size: .79rem;
  line-height: 1.4;
}
.mdt-footer .mdt-footer-compact-grid h4.wp-block-heading {
  margin: 0 0 .5rem;
}
.mdt-footer .wp-block-navigation__container {
  gap: .36rem !important;
}
.mdt-footer .mdt-footer-bottom {
  margin-top: 1.15rem;
  padding-top: .75rem;
  border-top: 1px solid #343c45;
}
@media (max-width: 1100px) {
  .mdt-footer .mdt-footer-compact-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 1.3rem !important;
  }
  .mdt-footer .mdt-footer-company-column {
    grid-column: 1 / -1;
  }
  .mdt-footer .mdt-footer-company-inner {
    grid-template-columns: minmax(190px, .75fr) minmax(330px, 1.5fr);
  }
}
@media (max-width: 700px) {
  .mdt-footer .mdt-footer-compact-grid {
    grid-template-columns: 1fr !important;
  }
  .mdt-footer .mdt-footer-company-column {
    grid-column: auto;
  }
  .mdt-footer .mdt-footer-company-inner {
    grid-template-columns: 1fr;
    gap: 1rem !important;
  }
  .mdt-footer .mdt-footer-addresses-inline {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 480px) {
  .mdt-footer .mdt-footer-addresses-inline {
    grid-template-columns: 1fr;
  }
}


/* 1.1.98 – Footer: größeres Logo, mehr Abstand zu Adressen, Kontaktüberschrift. */
@media (min-width: 1101px) {
  .mdt-footer .mdt-footer-company-inner {
    grid-template-columns: minmax(245px, .92fr) minmax(330px, 1.35fr);
    gap: 2.1rem !important;
  }
}
.mdt-footer .mdt-footer-brand-block .custom-logo {
  width: 235px;
  margin: 0 0 .55rem;
}
.mdt-footer .mdt-footer-brand-block .mdt-footer-claim {
  max-width: 315px;
  margin: 0;
  line-height: 1.42;
}
.mdt-footer .mdt-footer-contact-address-block {
  min-width: 0;
}
.mdt-footer .mdt-footer-contact-title {
  margin: 0 0 .55rem;
  color: #b9cbe0;
  font-size: .75rem;
  font-weight: 850;
  letter-spacing: .05em;
  line-height: 1.2;
  text-transform: uppercase;
}
.mdt-footer .mdt-footer-addresses-inline {
  margin-top: 0;
}
@media (max-width: 1100px) {
  .mdt-footer .mdt-footer-company-inner {
    grid-template-columns: minmax(225px, .75fr) minmax(330px, 1.4fr);
    gap: 1.8rem !important;
  }
}
@media (max-width: 700px) {
  .mdt-footer .mdt-footer-company-inner {
    grid-template-columns: 1fr;
    gap: 1.15rem !important;
  }
}


/* 1.1.99 – Footer exakt auf Wide-Breite, gleichmäßiges Gesamtraster. */
.mdt-footer .mdt-footer-centered {
  width: min(calc(100% - 2.5rem), 1440px) !important;
  max-width: 1440px !important;
  margin-inline: auto !important;
}
.mdt-footer .mdt-footer-grid-199 {
  margin: 0 !important;
}
@media (min-width: 1101px) {
  .mdt-footer .mdt-footer-grid-199 {
    display: grid !important;
    grid-template-columns: minmax(250px, 1.08fr) minmax(340px, 1.4fr) repeat(3, minmax(155px, .76fr));
    gap: clamp(1.5rem, 2vw, 2.25rem) !important;
    align-items: start;
  }
  .mdt-footer .mdt-footer-grid-199 > .wp-block-column {
    width: auto !important;
    flex-basis: auto !important;
    min-width: 0;
    margin: 0 !important;
  }
}
.mdt-footer .mdt-footer-brand-199 .custom-logo {
  width: 250px;
  margin: 0 0 .55rem;
}
.mdt-footer .mdt-footer-brand-199 .mdt-footer-claim {
  max-width: 285px;
  margin: 0;
  line-height: 1.42;
}
.mdt-footer .mdt-footer-grid-199 h4.wp-block-heading {
  margin: 0 0 .58rem;
  padding: 0;
  border: 0;
  color: #b9cbe0 !important;
  font-size: .75rem !important;
  font-weight: 850;
  letter-spacing: .05em;
  text-transform: uppercase;
}
.mdt-footer .mdt-footer-addresses-199 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.1rem;
}
.mdt-footer .mdt-footer-address-199 {
  min-width: 0;
  color: #c8d3df;
  font-size: .81rem;
  line-height: 1.42;
}
.mdt-footer .mdt-footer-address-199 strong {
  display: block;
  margin-bottom: .18rem;
  color: #fff;
}
.mdt-footer .mdt-footer-grid-199 .wp-block-navigation__container {
  gap: .42rem !important;
}
.mdt-footer .mdt-footer-grid-199 .wp-block-navigation-item__content {
  font-size: .86rem;
  line-height: 1.28;
}
.mdt-footer .mdt-footer-bottom {
  margin-top: 1.25rem;
  padding-top: .75rem;
  border-top: 1px solid #343c45;
}
.mdt-footer .mdt-footer-bottom .mdt-footer-small {
  margin: 0;
}
@media (max-width: 1100px) {
  .mdt-footer .mdt-footer-grid-199 {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1.4rem 1.8rem !important;
  }
  .mdt-footer .mdt-footer-brand-199,
  .mdt-footer .mdt-footer-contact-199 {
    grid-column: span 3;
  }
  .mdt-footer .mdt-footer-addresses-199 {
    max-width: 600px;
  }
}
@media (max-width: 700px) {
  .mdt-footer .mdt-footer-centered {
    width: min(calc(100% - 2rem), 1440px) !important;
  }
  .mdt-footer .mdt-footer-grid-199 {
    grid-template-columns: 1fr !important;
    gap: 1.2rem !important;
  }
  .mdt-footer .mdt-footer-brand-199,
  .mdt-footer .mdt-footer-contact-199 {
    grid-column: auto;
  }
}
@media (max-width: 480px) {
  .mdt-footer .mdt-footer-addresses-199 {
    grid-template-columns: 1fr;
    gap: .7rem;
  }
}


/* 1.2.0 – Finaler Footer-Feinschliff. */
.mdt-footer .mdt-footer-brand-column .custom-logo {
  width: 225px !important;
}
@media (min-width: 1101px) {
  .mdt-footer .mdt-footer-compact-grid {
    grid-template-columns: minmax(250px, 1.06fr) minmax(360px, 1.42fr) repeat(3, minmax(145px, .70fr)) !important;
    gap: 1.55rem !important;
  }
}
.mdt-footer .mdt-footer-brand-column .mdt-footer-claim {
  max-width: 330px;
}
.mdt-footer .mdt-footer-contact-column,
.mdt-footer .mdt-footer-locations-column {
  min-width: 0;
}
.mdt-footer .mdt-footer-locations-column .mdt-footer-addresses,
.mdt-footer .mdt-footer-addresses {
  column-gap: 1.35rem !important;
}
.mdt-footer .mdt-footer-bottom {
  margin-left: auto;
  margin-right: auto;
}


/* 1.2.1 – Footer: Betriebsstätte optisch näher an Kontakt ausrichten. */
@media (min-width: 1101px) {
  .mdt-footer .mdt-footer-grid-199 {
    grid-template-columns: minmax(250px, 1.08fr) minmax(320px, 1.25fr) repeat(3, minmax(155px, .78fr));
    gap: clamp(1.4rem, 1.7vw, 1.9rem) !important;
  }
}
.mdt-footer .mdt-footer-contact-199 {
  justify-self: start;
}
.mdt-footer .mdt-footer-addresses-199 {
  grid-template-columns: minmax(112px, 1fr) minmax(132px, 1fr);
  gap: .8rem;
  max-width: 300px;
}
.mdt-footer .mdt-footer-address-199 {
  justify-self: start;
}


/* 1.2.2 – Header zweizeilig: Kontakt über Navigation, Menü etwas tiefer. */
@media (min-width: 961px) {
  .mdt-header .mdt-header-inner {
    display: grid !important;
    grid-template-columns: minmax(250px, auto) minmax(560px, 1fr) auto;
    align-items: center !important;
    gap: clamp(1.25rem, 2.2vw, 2.6rem) !important;
    min-height: 104px;
  }
  .mdt-header .mdt-header-center {
    display: flex !important;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-width: 0;
    width: 100%;
    gap: .42rem;
  }
  .mdt-header .mdt-header-contact-inline {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .55rem 1rem;
    width: 100%;
    min-width: 0;
    color: #687789;
    font-size: .74rem;
    line-height: 1.25;
    white-space: nowrap;
  }
  .mdt-header .mdt-header-contact-inline span {
    display: inline-flex;
    align-items: center;
    gap: .28rem;
  }
  .mdt-header .mdt-header-contact-inline a {
    color: #2456a6;
    font-weight: 750;
    text-decoration: none;
  }
  .mdt-header .mdt-header-contact-inline a:hover {
    text-decoration: underline;
  }
  .mdt-header .mdt-header-contact-inline small {
    color: #7b8794;
    font-size: .72rem;
  }
  .mdt-header .mdt-header-nav {
    width: 100%;
    margin-top: .08rem;
  }
  .mdt-header .mdt-header-nav .wp-block-navigation__container {
    justify-content: center !important;
  }
  .mdt-header .mdt-header-actions {
    align-self: center;
  }
}
@media (max-width: 1200px) and (min-width: 961px) {
  .mdt-header .mdt-header-inner {
    grid-template-columns: minmax(220px, auto) minmax(470px, 1fr) auto;
    gap: 1rem !important;
  }
  .mdt-header .custom-logo {
    width: min(270px, 24vw) !important;
  }
  .mdt-header .mdt-header-contact-inline {
    font-size: .69rem;
    gap: .45rem .7rem;
  }
  .mdt-header .mdt-header-contact-inline small {
    display: none;
  }
  .mdt-header .wp-block-navigation__container {
    gap: .65rem !important;
  }
  .mdt-header .wp-block-navigation-item__content {
    font-size: .9rem;
  }
}
@media (max-width: 960px) {
  .mdt-header .mdt-header-center {
    display: flex !important;
    align-items: center;
    margin-left: auto;
  }
  .mdt-header .mdt-header-contact-inline {
    display: none;
  }
  .mdt-header .mdt-header-nav {
    margin: 0 !important;
  }
}


/* 1.2.3 – Header robust neu strukturiert: Kontakt oben, Menü + Aktionen darunter. */
@media (min-width: 961px) {
  .mdt-header .mdt-header-inner {
    display: grid !important;
    grid-template-columns: minmax(270px, 315px) minmax(0, 1fr) !important;
    gap: clamp(1.5rem, 2.8vw, 3.25rem) !important;
    align-items: center !important;
    min-height: 104px;
  }
  .mdt-header .mdt-header-inner > .wp-block-site-logo {
    grid-column: 1;
    grid-row: 1;
    margin: 0 !important;
    align-self: center;
  }
  .mdt-header .custom-logo {
    width: min(310px, 24vw) !important;
  }
  .mdt-header .mdt-header-right {
    grid-column: 2;
    grid-row: 1;
    display: grid !important;
    grid-template-rows: auto auto;
    gap: .5rem;
    width: 100%;
    min-width: 0;
    margin: 0 !important;
  }
  .mdt-header .mdt-header-contact-inline {
    display: flex !important;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: nowrap;
    gap: .55rem 1.15rem;
    width: 100%;
    color: #5f6f81;
    font-size: .76rem;
    line-height: 1.2;
    white-space: nowrap;
  }
  .mdt-header .mdt-header-contact-inline span {
    display: inline-flex;
    align-items: center;
    gap: .28rem;
  }
  .mdt-header .mdt-header-contact-inline a {
    color: #2456a6;
    font-weight: 750;
    text-decoration: none;
  }
  .mdt-header .mdt-header-contact-inline small {
    color: #748296;
    font-size: .72rem;
  }
  .mdt-header .mdt-header-bottomline {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 1rem !important;
    align-items: center !important;
    width: 100%;
    min-width: 0;
    margin: 0 !important;
  }
  .mdt-header .mdt-header-nav {
    width: auto !important;
    min-width: 0;
    margin: 0 !important;
  }
  .mdt-header .mdt-header-nav .wp-block-navigation__container {
    justify-content: flex-start !important;
    flex-wrap: nowrap !important;
    gap: clamp(.7rem, 1.05vw, 1.25rem) !important;
  }
  .mdt-header .mdt-header-actions {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
    margin: 0 !important;
    gap: .55rem !important;
    white-space: nowrap;
  }
  .mdt-header .mdt-header-actions .wp-block-search {
    flex: 0 0 200px;
    width: 200px !important;
    margin: 0 !important;
  }
}
@media (max-width: 1280px) and (min-width: 1101px) {
  .mdt-header .mdt-header-inner {
    grid-template-columns: minmax(235px, 270px) minmax(0, 1fr) !important;
    gap: 1.25rem !important;
  }
  .mdt-header .custom-logo {
    width: min(270px, 22vw) !important;
  }
  .mdt-header .mdt-header-contact-inline {
    font-size: .69rem;
    gap: .4rem .72rem;
  }
  .mdt-header .mdt-header-contact-inline small {
    display: none;
  }
  .mdt-header .wp-block-navigation-item__content {
    font-size: .9rem;
  }
  .mdt-header .mdt-header-actions .wp-block-search {
    flex-basis: 170px;
    width: 170px !important;
  }
}
@media (max-width: 1100px) and (min-width: 961px) {
  .mdt-header .mdt-header-contact-inline .mdt-header-hours {
    display: none;
  }
}
@media (max-width: 960px) {
  .mdt-header .mdt-header-inner {
    display: flex !important;
    min-height: 72px;
    gap: .65rem !important;
  }
  .mdt-header .mdt-header-right {
    display: flex !important;
    align-items: center;
    justify-content: flex-end;
    margin-left: auto !important;
    min-width: 0;
  }
  .mdt-header .mdt-header-contact-inline {
    display: none !important;
  }
  .mdt-header .mdt-header-bottomline {
    display: flex !important;
    align-items: center;
    justify-content: flex-end;
    gap: .35rem !important;
    margin: 0 !important;
  }
  .mdt-header .mdt-header-nav,
  .mdt-header .mdt-header-actions {
    margin: 0 !important;
  }
}


/* 1.2.4 – Header zuverlässig als zweizeiliges Desktop-Raster. */
@media (min-width: 1101px) {
  .mdt-header-124 .mdt-header-shell-124 {
    display: grid !important;
    grid-template-columns: 310px minmax(0, 1fr);
    gap: clamp(2rem, 3vw, 3.5rem) !important;
    align-items: center !important;
    min-height: 112px;
    padding: .75rem 1.5rem !important;
  }
  .mdt-header-124 .mdt-header-shell-124 > .wp-block-site-logo {
    grid-column: 1;
    grid-row: 1;
    margin: 0 !important;
  }
  .mdt-header-124 .custom-logo {
    width: 310px !important;
    max-width: 100%;
    height: auto;
  }
  .mdt-header-124 .mdt-header-stack-124 {
    grid-column: 2;
    grid-row: 1;
    display: grid !important;
    grid-template-rows: auto auto;
    gap: .55rem;
    width: 100%;
    min-width: 0;
    margin: 0 !important;
  }
  .mdt-header-124 .mdt-header-contact-124 {
    display: flex !important;
    justify-content: flex-end;
    align-items: center;
    gap: 1.25rem;
    min-height: 22px;
    color: #66768a;
    font-size: .76rem;
    line-height: 1.2;
    white-space: nowrap;
  }
  .mdt-header-124 .mdt-header-contact-124 span {
    display: inline-flex;
    align-items: center;
    gap: .28rem;
  }
  .mdt-header-124 .mdt-header-contact-124 a {
    color: #2456a6;
    font-weight: 750;
    text-decoration: none;
  }
  .mdt-header-124 .mdt-header-contact-124 small {
    color: #7b8898;
    font-size: .71rem;
  }
  .mdt-header-124 .mdt-header-mainrow-124 {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 1.1rem !important;
    align-items: center !important;
    width: 100%;
    min-width: 0;
    margin: 0 !important;
  }
  .mdt-header-124 .mdt-header-nav-124 {
    min-width: 0;
    margin: 0 !important;
  }
  .mdt-header-124 .mdt-header-nav-124 .wp-block-navigation__container {
    flex-wrap: nowrap !important;
    gap: clamp(.7rem, .95vw, 1.15rem) !important;
  }
  .mdt-header-124 .mdt-header-actions-124 {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    gap: .55rem !important;
    margin: 0 !important;
    white-space: nowrap;
  }
  .mdt-header-124 .mdt-header-actions-124 .wp-block-search {
    width: 200px !important;
    flex: 0 0 200px;
    margin: 0 !important;
  }
}
.mdt-account-link-124 {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  color: #2456a6;
  text-decoration: none;
}
.mdt-account-link-124 svg { width: 22px; height: 22px; display: block; }
@media (max-width: 1280px) and (min-width: 1101px) {
  .mdt-header-124 .mdt-header-shell-124 {
    grid-template-columns: 255px minmax(0, 1fr);
    gap: 1.25rem !important;
  }
  .mdt-header-124 .custom-logo { width: 255px !important; }
  .mdt-header-124 .mdt-header-contact-124 { gap: .7rem; font-size: .68rem; }
  .mdt-header-124 .mdt-header-contact-124 small { display: none; }
  .mdt-header-124 .mdt-header-nav-124 .wp-block-navigation-item__content { font-size: .88rem; }
  .mdt-header-124 .mdt-header-actions-124 .wp-block-search { width: 165px !important; flex-basis: 165px; }
}
@media (max-width: 1100px) {
  .mdt-header-124 .mdt-header-shell-124 {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    min-height: 76px;
    padding: .65rem 1rem !important;
  }
  .mdt-header-124 .custom-logo { width: min(245px, 48vw) !important; }
  .mdt-header-124 .mdt-header-stack-124 {
    display: flex !important;
    align-items: center;
    justify-content: flex-end;
    margin-left: auto !important;
  }
  .mdt-header-124 .mdt-header-contact-124 { display: none !important; }
  .mdt-header-124 .mdt-header-mainrow-124 {
    display: flex !important;
    align-items: center;
    justify-content: flex-end;
    gap: .4rem !important;
    margin: 0 !important;
  }
  .mdt-header-124 .mdt-header-actions-124 .wp-block-search { display: none !important; }
}


/* 1.2.5 – Kontaktzeile im Desktop-Header etwas weiter nach links. */
@media (min-width: 1101px) {
  .mdt-header-124 .mdt-header-contact-124 {
    padding-right: clamp(4.5rem, 7vw, 7.5rem);
    box-sizing: border-box;
  }
}
@media (max-width: 1280px) and (min-width: 1101px) {
  .mdt-header-124 .mdt-header-contact-124 {
    padding-right: 3.25rem;
  }
}

/* 1.2.6 – Kontaktzeile linksbündig am Start des Menüs ausrichten. */
@media (min-width: 1101px) {
  .mdt-header-124 .mdt-header-contact-124 {
    justify-content: flex-start;
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
}
@media (max-width: 1280px) and (min-width: 1101px) {
  .mdt-header-124 .mdt-header-contact-124 {
    justify-content: flex-start;
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
}

/* 1.2.7 – Kontaktzeile exakt an der linken Kante des Menüs ausrichten. */
@media (min-width: 1101px) {
  .mdt-header-124 .mdt-header-contact-124 {
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    justify-content: flex-start !important;
    padding: 0 !important;
    box-sizing: border-box;
  }
}

/* 1.2.8 – Reparatur-finden-Seite als breite Shop-/Filteransicht. */
.mdt-repair-shop-main{background:#fff}
.mdt-repair-shop-title{width:min(calc(100% - 2.5rem),1240px)!important;max-width:1240px!important;margin:0 auto .4rem!important}
.mdt-repair-shop-title .wp-block-post-title{margin:0;font-size:clamp(2rem,3vw,2.8rem);line-height:1.1}
.mdt-repair-shop-main>.wp-block-post-content{margin:0!important}
.mdt-repair-shop-main .mdtrf-shop-page{margin-top:0}
@media(max-width:700px){.mdt-repair-shop-title{width:min(calc(100% - 1.25rem),1240px)!important}.mdt-repair-shop-main{padding-top:2rem!important;padding-bottom:3.5rem!important}}


/* 1.2.9 – Reparatur-finden wieder ruhig/zentriert, Shop-Raster bleibt breit. */
.mdt-repair-shop-main {
  padding-top: 3.25rem !important;
}
.mdt-repair-shop-title {
  width: min(calc(100% - 2.5rem), 860px) !important;
  max-width: 860px !important;
  margin: 0 auto .8rem !important;
}
.mdt-repair-shop-title .wp-block-post-title {
  text-align: left;
  margin: 0;
}
.mdt-repair-shop-main .mdtrf-shop-page {
  width: min(calc(100% - 2.5rem), 1240px) !important;
  max-width: 1240px !important;
  margin: 0 auto 2.5rem !important;
  position: static !important;
  left: auto !important;
  transform: none !important;
}
.mdt-repair-shop-main .mdtrf-shop__intro {
  max-width: 860px;
  margin: 0 auto 1rem;
}
.mdt-repair-shop-main .mdtrf--shop {
  max-width: 860px;
  margin: 0 auto;
}
.mdt-repair-shop-main .mdtrf-shop__catalog,
.mdt-repair-shop-main .mdtrf-shop__help {
  width: 100%;
  max-width: 1240px;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 700px) {
  .mdt-repair-shop-title,
  .mdt-repair-shop-main .mdtrf-shop-page {
    width: min(calc(100% - 1.25rem), 1240px) !important;
  }
  .mdt-repair-shop-main .mdtrf-shop__intro,
  .mdt-repair-shop-main .mdtrf--shop {
    max-width: none;
  }
}


/* 1.2.10 – Reparatur-Shop: Produktbereich ruhig an den Finder anbinden. */
.mdt-repair-shop-main .mdtrf-shop__catalog {
  margin-top: 2rem;
}
.mdt-repair-shop-main .mdtrf-shop__catalog-head {
  margin-bottom: .9rem;
}
.mdt-repair-shop-main .mdtrf-shop__help {
  margin-top: 2rem;
  margin-bottom: .25rem;
}


/* 1.2.11 – Reparatur-Shop: kompaktere Übergänge bei langer Produktliste. */
.mdt-repair-shop-main .mdtrf-shop__catalog{margin-top:1.65rem}
.mdt-repair-shop-main .mdtrf-shop__catalog-head{margin-bottom:.8rem}
.mdt-repair-shop-main .mdtrf-shop__help{margin-top:1.65rem}
@media(min-width:981px){.mdt-repair-shop-main .mdtrf-shop__grid{gap:1rem 1.1rem}}


/* 1.2.12 – Reparatur-Shop: mehr Kontrast zwischen Produktkarten. */
.mdt-repair-shop-main .mdtrf-shop__catalog {
  padding: 1.25rem;
  border: 1px solid #e1e8f0;
  border-radius: 20px;
  background: #f4f7fa;
}
.mdt-repair-shop-main .mdtrf-shop__catalog-head {
  margin-bottom: 1rem;
}
.mdt-repair-shop-main .mdtrf-shop__grid {
  gap: 1.15rem !important;
}
.mdt-repair-shop-main .mdtrf-shop__card {
  background: #fff;
  border-color: #cfdbe7;
  box-shadow: 0 5px 16px rgba(31,52,73,.055);
}
.mdt-repair-shop-main .mdtrf-shop__card:hover {
  border-color: #9fb7d2;
  box-shadow: 0 12px 28px rgba(31,52,73,.10);
}
.mdt-repair-shop-main .mdtrf-shop__image {
  background: #f8fafc;
  border-bottom: 1px solid #edf1f5;
}
@media (max-width: 700px) {
  .mdt-repair-shop-main .mdtrf-shop__catalog {
    padding: .85rem;
    border-radius: 16px;
  }
}


/* 1.2.13 – RepairFinder auf Shop-Seite passend zum hellgrauen Produktbereich. */
.mdt-repair-shop-main .mdtrf--shop {
  --rf-bg: #f4f7fa;
  background: #f4f7fa !important;
  border-color: #e1e8f0 !important;
  box-shadow: 0 10px 28px rgba(31,52,73,.06);
}
.mdt-repair-shop-main .mdtrf--shop .mdtrf__search-row,
.mdt-repair-shop-main .mdtrf--shop .mdtrf__search-row input,
.mdt-repair-shop-main .mdtrf--shop .mdtrf__choice,
.mdt-repair-shop-main .mdtrf--shop .mdtrf__result {
  background: #fff;
}
.mdt-repair-shop-main .mdtrf--shop .mdtrf__progress span {
  border: 1px solid #e5ebf1;
}
.mdt-repair-shop-main .mdtrf--shop .mdtrf__progress span.is-active {
  border-color: #d7e4f7;
}


/* 1.2.14 – RepairFinder so breit wie der Produktbereich. */
.mdt-repair-shop-main .mdtrf--shop {
  width: 100%;
  max-width: 1240px;
  margin-left: auto;
  margin-right: auto;
}
.mdt-repair-shop-main .mdtrf--shop .mdtrf__panel {
  width: 100%;
}
@media (min-width: 981px) {
  .mdt-repair-shop-main .mdtrf--shop {
    padding-left: 1.6rem;
    padding-right: 1.6rem;
  }
}
@media (max-width: 700px) {
  .mdt-repair-shop-main .mdtrf--shop {
    max-width: none;
  }
}


/* 1.2.15 – Titel und Einleitung links an Finder/Produktbereich ausrichten. */
.mdt-repair-shop-title {
  width: min(calc(100% - 2.5rem), 1240px) !important;
  max-width: 1240px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
.mdt-repair-shop-main .mdtrf-shop__intro {
  max-width: 1240px;
  margin-left: 0;
  margin-right: 0;
}
@media (max-width: 700px) {
  .mdt-repair-shop-title {
    width: min(calc(100% - 1.25rem), 1240px) !important;
  }
}


/* 1.2.16 – Header auf dieselbe 1240px-Inhaltsbreite wie Reparaturfinder ausrichten. */
.mdt-header-124 .mdt-header-shell-124 {
  width: min(calc(100% - 2.5rem), 1240px) !important;
  max-width: 1240px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box;
}
@media (max-width: 700px) {
  .mdt-header-124 .mdt-header-shell-124 {
    width: min(calc(100% - 1.25rem), 1240px) !important;
  }
}


/* 1.2.17 – Header entkoppeln + Footer an 1240px-Raster angleichen. */
@media (min-width: 1101px) {
  .mdt-header-124 .mdt-header-mainrow-124 {
    grid-template-columns: minmax(0, 1fr) auto !important;
    column-gap: 1.35rem !important;
  }
  .mdt-header-124 .mdt-header-nav-124 {
    min-width: 0;
    overflow: visible;
  }
  .mdt-header-124 .mdt-header-nav-124 .wp-block-navigation__container {
    gap: clamp(.62rem, .82vw, .95rem) !important;
  }
  .mdt-header-124 .mdt-header-actions-124 {
    margin-left: .25rem !important;
    gap: .6rem !important;
  }
  .mdt-header-124 .mdt-account-link-124 {
    flex: 0 0 34px;
    margin-left: .05rem;
  }
}
@media (max-width: 1360px) and (min-width: 1101px) {
  .mdt-header-124 .mdt-header-shell-124 {
    grid-template-columns: 270px minmax(0, 1fr) !important;
    gap: 1.35rem !important;
  }
  .mdt-header-124 .custom-logo {
    width: 270px !important;
  }
  .mdt-header-124 .mdt-header-nav-124 .wp-block-navigation-item__content {
    font-size: .86rem !important;
  }
  .mdt-header-124 .mdt-header-actions-124 .wp-block-search {
    width: 170px !important;
    flex-basis: 170px !important;
  }
}

.mdt-footer .mdt-footer-centered {
  width: min(calc(100% - 2.5rem), 1240px) !important;
  max-width: 1240px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box;
}
@media (min-width: 1101px) {
  .mdt-footer .mdt-footer-grid-199 {
    display: grid !important;
    grid-template-columns: minmax(235px, 1.08fr) minmax(300px, 1.28fr) repeat(3, minmax(135px, .76fr)) !important;
    gap: 1.35rem !important;
    align-items: start !important;
  }
}
.mdt-footer .mdt-footer-brand-199 .custom-logo {
  width: 235px !important;
}
.mdt-footer .mdt-footer-brand-199 .mdt-footer-claim {
  max-width: 270px !important;
}
.mdt-footer .mdt-footer-addresses-199 {
  max-width: 290px !important;
  gap: .75rem !important;
}
.mdt-footer .mdt-footer-bottom {
  width: 100%;
  box-sizing: border-box;
}
@media (max-width: 700px) {
  .mdt-footer .mdt-footer-centered {
    width: min(calc(100% - 1.25rem), 1240px) !important;
  }
}

/* Etwas ruhigerer Übergang vom Shop-CTA zum Footer. */
.mdt-repair-shop-main .mdtrf-shop__help,
.mdt-repair-shop-main .mdtrf-shop-help {
  margin-bottom: 2.5rem !important;
}


/* 1.2.18 – Desktop-Header: Menü und Aktionen strikt trennen, keine Überlappung. */
@media (min-width: 1101px) {
  .mdt-header-124 .mdt-header-shell-124 {
    grid-template-columns: 265px minmax(0, 1fr) !important;
    gap: 1.35rem !important;
  }
  .mdt-header-124 .custom-logo {
    width: 265px !important;
  }
  .mdt-header-124 .mdt-header-mainrow-124 {
    grid-template-columns: minmax(0, 1fr) 250px !important;
    column-gap: 1.25rem !important;
  }
  .mdt-header-124 .mdt-header-nav-124 {
    min-width: 0 !important;
    max-width: 100% !important;
  }
  .mdt-header-124 .mdt-header-nav-124 .wp-block-navigation__container {
    flex-wrap: nowrap !important;
    gap: .55rem !important;
  }
  .mdt-header-124 .mdt-header-nav-124 .wp-block-navigation-item__content {
    font-size: .84rem !important;
    white-space: nowrap !important;
  }
  .mdt-header-124 .mdt-header-actions-124 {
    width: 250px !important;
    min-width: 250px !important;
    justify-content: flex-end !important;
    margin-left: 0 !important;
    gap: .5rem !important;
  }
  .mdt-header-124 .mdt-header-actions-124 .wp-block-search {
    width: 165px !important;
    flex: 0 0 165px !important;
  }
  .mdt-header-124 .mdt-header-contact-124 {
    font-size: .72rem !important;
    gap: 1rem !important;
  }
}
@media (max-width: 1220px) and (min-width: 1101px) {
  .mdt-header-124 .mdt-header-shell-124 {
    grid-template-columns: 235px minmax(0, 1fr) !important;
    gap: 1rem !important;
  }
  .mdt-header-124 .custom-logo { width: 235px !important; }
  .mdt-header-124 .mdt-header-mainrow-124 {
    grid-template-columns: minmax(0, 1fr) 220px !important;
    column-gap: .85rem !important;
  }
  .mdt-header-124 .mdt-header-actions-124 {
    width: 220px !important;
    min-width: 220px !important;
  }
  .mdt-header-124 .mdt-header-actions-124 .wp-block-search {
    width: 140px !important;
    flex-basis: 140px !important;
  }
  .mdt-header-124 .mdt-header-nav-124 .wp-block-navigation__container { gap: .4rem !important; }
  .mdt-header-124 .mdt-header-nav-124 .wp-block-navigation-item__content { font-size: .8rem !important; }
  .mdt-header-124 .mdt-header-contact-124 { gap: .65rem !important; font-size: .66rem !important; }
  .mdt-header-124 .mdt-header-contact-124 small { display: none !important; }
}


/* 1.2.19 – Header-Menüpunkte einen Tick größer. */
@media (min-width: 1221px) {
  .mdt-header-124 .mdt-header-nav-124 .wp-block-navigation-item__content {
    font-size: .88rem !important;
  }
}
@media (max-width: 1220px) and (min-width: 1101px) {
  .mdt-header-124 .mdt-header-nav-124 .wp-block-navigation-item__content {
    font-size: .82rem !important;
  }
}


/* 1.2.20 – Desktop-Menü noch leicht größer, ohne Header-Raster zu ändern. */
@media (min-width: 1221px) {
  .mdt-header-124 .mdt-header-nav-124 .wp-block-navigation-item__content {
    font-size: .92rem !important;
  }
}
@media (max-width: 1220px) and (min-width: 1101px) {
  .mdt-header-124 .mdt-header-nav-124 .wp-block-navigation-item__content {
    font-size: .84rem !important;
  }
}


/* 1.2.21 – Seitentitel auf Reparatur-finden exakt links mit Finder ausrichten. */
.mdt-repair-shop-title {
  box-sizing: border-box;
}
.mdt-repair-shop-title > .wp-block-post-title,
.mdt-repair-shop-title .wp-block-post-title {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  text-align: left !important;
}


/* 1.2.22 – Desktop-Menü etwas größer und luftiger. */
@media (min-width: 1221px) {
  .mdt-header-124 .mdt-header-nav-124 .wp-block-navigation__container {
    gap: .72rem !important;
  }
  .mdt-header-124 .mdt-header-nav-124 .wp-block-navigation-item__content {
    font-size: .98rem !important;
    line-height: 1.25 !important;
  }
}
@media (max-width: 1220px) and (min-width: 1101px) {
  .mdt-header-124 .mdt-header-nav-124 .wp-block-navigation__container {
    gap: .46rem !important;
  }
  .mdt-header-124 .mdt-header-nav-124 .wp-block-navigation-item__content {
    font-size: .86rem !important;
  }
}


/* 1.2.23 – Desktop-Menü noch etwas mehr Abstand. */
@media (min-width: 1221px) {
  .mdt-header-124 .mdt-header-nav-124 .wp-block-navigation__container {
    gap: .90rem !important;
  }
}
@media (max-width: 1220px) and (min-width: 1101px) {
  .mdt-header-124 .mdt-header-nav-124 .wp-block-navigation__container {
    gap: .54rem !important;
  }
}


/* 1.2.24 – Ablauf-Seite: 1240px Raster, größere Icons und kompakter Info-Bereich. */
.mdt-ablauf-page-main .mdt-section > .alignwide,
.mdt-ablauf-page-main .mdt-section > .wp-block-group.alignwide,
.mdt-ablauf-page-main .mdt-section > .wp-block-columns.alignwide {
  width: min(calc(100% - 2.5rem), 1240px) !important;
  max-width: 1240px !important;
}
.mdt-ablauf-page-main .mdt-section-head {
  max-width: 1240px !important;
}
.mdt-ablauf-page-main .mdt-card-grid {
  gap: 1rem !important;
}
.mdt-ablauf-page-main .mdt-card-grid .mdt-card {
  padding: 1.45rem !important;
}
.mdt-ablauf-page-main .mdt-card-number {
  width: 64px !important;
  height: 64px !important;
  border-radius: 16px !important;
  font-size: 1.9rem !important;
}
.mdt-ablauf-page-main .mdt-card h3 {
  margin-top: .7rem;
}
.mdt-ablauf-page-main .mdt-ablauf-actions {
  margin-top: 1.6rem !important;
}
.mdt-ablauf-page-main .mdt-ablauf-info-124 {
  width: min(calc(100% - 2.5rem), 1240px) !important;
  max-width: 1240px !important;
  margin: 2rem auto 0 !important;
}
.mdt-ablauf-page-main .mdt-ablauf-info-grid-124 {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem !important;
  margin: 0 !important;
}
.mdt-ablauf-page-main .mdt-ablauf-info-grid-124 > .wp-block-column {
  width: auto !important;
  flex-basis: auto !important;
  margin: 0 !important;
}
.mdt-ablauf-page-main .mdt-ablauf-info-card-124 {
  height: 100%;
  padding: 1.4rem 1.5rem;
  border: 1px solid #dbe4ee;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 12px 28px rgba(20, 43, 77, .06);
}
.mdt-ablauf-page-main .mdt-ablauf-info-icon-124 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  margin: 0 0 .8rem;
  border-radius: 13px;
  background: #edf4ff;
  font-size: 1.35rem;
  line-height: 1;
}
.mdt-ablauf-page-main .mdt-ablauf-info-card-124 h3 {
  margin: 0 0 .45rem;
  font-size: 1.12rem;
}
.mdt-ablauf-page-main .mdt-ablauf-info-card-124 p:last-child {
  margin-bottom: 0;
  color: #647286;
  line-height: 1.6;
}
@media (max-width: 900px) {
  .mdt-ablauf-page-main .mdt-section > .alignwide,
  .mdt-ablauf-page-main .mdt-section > .wp-block-group.alignwide,
  .mdt-ablauf-page-main .mdt-section > .wp-block-columns.alignwide,
  .mdt-ablauf-page-main .mdt-ablauf-info-124 {
    width: min(calc(100% - 1.5rem), 1240px) !important;
  }
  .mdt-ablauf-page-main .mdt-ablauf-info-grid-124 {
    grid-template-columns: 1fr;
  }
}


/* 1.2.25 – Ablauf-Infokarten wirklich über die volle Wide-Breite verteilen. */
.mdt-ablauf-page-main .mdt-ablauf-info-124 {
  width: min(calc(100% - 2.5rem), 1240px) !important;
  max-width: 1240px !important;
}
.mdt-ablauf-page-main .mdt-ablauf-info-124 > .mdt-ablauf-info-grid-124,
.mdt-ablauf-page-main .mdt-ablauf-info-grid-124 {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 1rem !important;
}
.mdt-ablauf-page-main .mdt-ablauf-info-grid-124 > .wp-block-column {
  width: 100% !important;
  max-width: none !important;
  min-width: 0 !important;
}
@media (max-width: 900px) {
  .mdt-ablauf-page-main .mdt-ablauf-info-124 > .mdt-ablauf-info-grid-124,
  .mdt-ablauf-page-main .mdt-ablauf-info-grid-124 {
    grid-template-columns: 1fr !important;
  }
}


/* 1.2.28 – Service & Auftrag: sichere Frontend-Verfeinerung ohne Seitenmigration. */
.mdt-service-page-main .mdt-service-section > .alignwide {
  width: min(calc(100% - 2.5rem), 1240px) !important;
  max-width: 1240px !important;
  margin-inline: auto !important;
}
.mdt-service-page-main .mdt-service-area-grid {
  gap: 1.1rem !important;
}
.mdt-service-page-main .mdt-service-area-card-enhanced {
  position: relative;
  overflow: hidden;
  min-height: 100%;
  padding-top: 1.35rem;
  cursor: pointer;
}
.mdt-service-page-main .mdt-service-area-icon {
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  margin-bottom: .75rem;
  border-radius: 12px;
  background: #edf3ff;
  font-size: 1.45rem;
  line-height: 1;
}
.mdt-service-page-main .mdt-service-area-hitarea {
  position: absolute;
  inset: 0;
  z-index: 2;
  border-radius: inherit;
}
.mdt-service-page-main .mdt-service-area-card-enhanced:hover,
.mdt-service-page-main .mdt-service-area-card-enhanced:focus-within {
  transform: translateY(-3px);
  border-color: #9fb8dd;
  box-shadow: 0 16px 38px rgba(31,52,73,.10);
}
.mdt-service-page-main .mdt-service-area-card-enhanced:focus-within {
  outline: 2px solid #245bb5;
  outline-offset: 2px;
}
@media (max-width: 900px) {
  .mdt-service-page-main .mdt-service-section > .alignwide {
    width: min(calc(100% - 1.5rem), 1240px) !important;
  }
}


/* 1.2.29 – Service: Prozessbereich an Ablauf-Seite angleichen. */
.mdt-service-page-main .mdt-service-process > .alignwide,
.mdt-service-page-main .mdt-service-process > .wp-block-group.alignwide,
.mdt-service-page-main .mdt-service-process > .wp-block-columns.alignwide {
  width: min(calc(100% - 2.5rem), 1240px) !important;
  max-width: 1240px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
.mdt-service-page-main .mdt-service-process-grid {
  gap: 1rem !important;
  align-items: stretch !important;
}
.mdt-service-page-main .mdt-service-process-grid .mdt-card {
  height: 100%;
  padding: 1.5rem !important;
}
.mdt-service-page-main .mdt-service-process-grid .mdt-card-number.mdt-service-process-icon {
  width: 60px !important;
  height: 60px !important;
  border-radius: 15px !important;
  font-size: 1.7rem !important;
  line-height: 1 !important;
  font-weight: 400 !important;
}
.mdt-service-page-main .mdt-service-process-grid .mdt-card h3 {
  margin-top: .7rem;
}
/* Die beiden aufeinanderfolgenden Prozessabschnitte etwas dichter zusammenführen. */
.mdt-service-page-main .mdt-service-repair {
  padding-bottom: clamp(2.6rem, 4.2vw, 4rem) !important;
}
.mdt-service-page-main .mdt-service-process {
  padding-top: clamp(2.6rem, 4.2vw, 4rem) !important;
}
@media (max-width: 900px) {
  .mdt-service-page-main .mdt-service-process > .alignwide,
  .mdt-service-page-main .mdt-service-process > .wp-block-group.alignwide,
  .mdt-service-page-main .mdt-service-process > .wp-block-columns.alignwide {
    width: min(calc(100% - 1.5rem), 1240px) !important;
  }
}


/* 1.2.30 – Servicewerte mit Symbolen und kompakterem Abschnittsabstand. */
.mdt-service-page-main .mdt-service-values > .alignwide,
.mdt-service-page-main .mdt-service-values > .wp-block-group.alignwide,
.mdt-service-page-main .mdt-service-values > .wp-block-columns.alignwide {
  width: min(calc(100% - 2.5rem), 1240px) !important;
  max-width: 1240px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
.mdt-service-page-main .mdt-service-process {
  padding-bottom: clamp(2.6rem, 4vw, 3.8rem) !important;
}
.mdt-service-page-main .mdt-service-values {
  padding-top: clamp(2.6rem, 4vw, 3.8rem) !important;
}
.mdt-service-page-main .mdt-service-value-card {
  position: relative;
  height: 100%;
}
.mdt-service-page-main .mdt-service-value-icon {
  display: grid;
  place-items: center;
  width: 50px;
  height: 50px;
  margin: 0 0 .75rem;
  border-radius: 13px;
  background: #edf3ff;
  font-size: 1.45rem;
  line-height: 1;
}
.mdt-service-page-main .mdt-service-value-card h3 {
  margin-top: 0;
}
@media (max-width: 900px) {
  .mdt-service-page-main .mdt-service-values > .alignwide,
  .mdt-service-page-main .mdt-service-values > .wp-block-group.alignwide,
  .mdt-service-page-main .mdt-service-values > .wp-block-columns.alignwide {
    width: min(calc(100% - 1.5rem), 1240px) !important;
  }
}


/* 1.2.31 – Service-Seite: Abstand Wertebereich → Unternehmen reduzieren. */
.mdt-service-page-main .mdt-service-values {
  padding-bottom: clamp(2.1rem, 3vw, 3rem) !important;
}
.mdt-service-page-main .mdt-service-about {
  padding-top: clamp(2.1rem, 3vw, 3rem) !important;
}


/* 1.2.32 – Hilfe & Anfrage: Formular priorisieren, Alternativen darunter. */
.mdt-help-page-main .mdt-help-form-primary {
  padding-top: clamp(3rem, 4.2vw, 4.4rem);
  padding-bottom: clamp(3.4rem, 4.5vw, 4.8rem);
}
.mdt-help-page-main .mdt-help-alternatives {
  padding-top: clamp(2.8rem, 4vw, 4rem);
  padding-bottom: clamp(3.2rem, 4.5vw, 4.8rem);
  background: #f5f8fc;
}
.mdt-help-page-main .mdt-help-alternatives > .alignwide {
  width: min(calc(100% - 2.5rem), 1240px) !important;
  max-width: 1240px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
.mdt-help-page-main .mdt-help-alternatives-head {
  margin: 0 0 1.6rem;
  max-width: 860px;
}
.mdt-help-page-main .mdt-help-alternatives-head .mdt-kicker {
  margin-bottom: .45rem;
}
.mdt-help-page-main .mdt-help-alternatives-head h2 {
  margin: 0 0 .55rem;
  font-size: clamp(1.9rem, 2.7vw, 2.6rem);
  line-height: 1.12;
}
.mdt-help-page-main .mdt-help-alternatives-head > p:last-child {
  margin: 0;
  color: #667085;
  line-height: 1.55;
}
.mdt-help-page-main .mdt-help-alternatives .mdt-help-grid {
  gap: 1rem !important;
}
.mdt-help-page-main .mdt-help-alternatives .mdt-help-card {
  position: relative;
  padding: 1.45rem;
  border: 1px solid #d8e1eb;
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 12px 30px rgba(31,52,73,.045);
  transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}
.mdt-help-page-main .mdt-help-alternatives .mdt-help-card:hover {
  border-color: #b8cae3;
  box-shadow: 0 16px 34px rgba(31,52,73,.075);
  transform: translateY(-1px);
}
.mdt-help-card-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 46px;
  margin-bottom: .1rem;
  border-radius: 12px;
  background: #edf4ff;
  font-size: 1.35rem;
  line-height: 1;
}
.mdt-help-page-main .mdt-help-alternatives .mdt-help-card h3 {
  margin: 0;
  font-size: 1.18rem;
  line-height: 1.18;
}
.mdt-help-page-main .mdt-help-alternatives .mdt-help-card > p:not(.mdt-help-card-contact) {
  margin: 0;
  color: #667085;
  line-height: 1.52;
}
.mdt-help-page-main .mdt-help-alternatives .mdt-help-card .wp-block-buttons,
.mdt-help-page-main .mdt-help-alternatives .mdt-help-card-actions {
  margin-top: auto !important;
  padding-top: .25rem;
}
.mdt-help-page-main .mdt-help-alternatives .mdt-help-card .wp-block-button__link {
  padding: .72rem 1rem;
  border-radius: 9px;
  font-size: .9rem;
}
.mdt-help-page-main .mdt-help-alternatives .mdt-help-card-contact {
  margin-top: auto;
  padding-top: .25rem;
}
@media (max-width: 900px) {
  .mdt-help-page-main .mdt-help-alternatives > .alignwide {
    width: min(calc(100% - 1.5rem), 1240px) !important;
  }
}


/* 1.2.33 – Hilfe: Überschrift vereinheitlichen und Abstand zum Footer reduzieren. */
.mdt-help-page-main {
  padding-bottom: 1.5rem !important;
}
.mdt-help-page-main .mdt-help-alternatives {
  padding-bottom: clamp(2.2rem, 3vw, 3rem) !important;
}


/* 1.2.34 – Checkout: kleines MD-Tronix-Logo statt Staging-Seitentitel. */
body.woocommerce-checkout .mdt-checkout-brand-logo {
  display: block;
  width: clamp(132px, 11vw, 165px);
  height: auto;
  max-height: 52px;
  object-fit: contain;
  object-position: left center;
}
body.woocommerce-checkout .wp-block-site-title:has(.mdt-checkout-brand-logo) {
  line-height: 1;
  margin: 0;
}
@media (max-width: 600px) {
  body.woocommerce-checkout .mdt-checkout-brand-logo {
    width: 128px;
    max-height: 44px;
  }
}


/* 1.2.35 – Bestellabschluss: Reparaturauftrag, Ablauf und Fahrzeugdaten. */
body.woocommerce-order-received .mdtrf-thankyou-next-steps {
  display: none !important;
}
body.woocommerce-order-received .mdt-order-confirmation-next,
body.woocommerce-order-received .mdt-order-vehicle-data {
  margin-top: 1.5rem;
  padding: clamp(1.25rem, 2vw, 1.8rem);
  border: 1px solid #d7e1ec;
  border-radius: 14px;
  background: #f5f8fc;
}
body.woocommerce-order-received .mdt-order-confirmation-head {
  margin-bottom: 1rem;
}
body.woocommerce-order-received .mdt-order-confirmation-head .mdt-kicker {
  margin: 0 0 .3rem;
  color: #1f56ac;
  font-size: .76rem;
  font-weight: 800;
  letter-spacing: .08em;
}
body.woocommerce-order-received .mdt-order-confirmation-head h2,
body.woocommerce-order-received .mdt-order-vehicle-data h2 {
  margin: 0;
  font-size: clamp(1.35rem, 2vw, 1.75rem);
  line-height: 1.2;
}
body.woocommerce-order-received .mdt-order-confirmation-steps {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .85rem;
}
body.woocommerce-order-received .mdt-order-confirmation-step {
  padding: 1rem;
  border: 1px solid #d9e3ef;
  border-radius: 12px;
  background: #fff;
}
body.woocommerce-order-received .mdt-order-confirmation-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  margin-bottom: .6rem;
  border-radius: 11px;
  background: #edf4ff;
  font-size: 1.3rem;
  line-height: 1;
}
body.woocommerce-order-received .mdt-order-confirmation-step h3 {
  margin: 0 0 .35rem;
  font-size: 1rem;
}
body.woocommerce-order-received .mdt-order-confirmation-step p {
  margin: 0;
  color: #5f6f82;
  font-size: .92rem;
  line-height: 1.5;
}
body.woocommerce-order-received .mdt-order-vehicle-data h2 {
  margin-bottom: 1rem;
}
body.woocommerce-order-received .mdt-order-vehicle-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .75rem;
}
body.woocommerce-order-received .mdt-order-vehicle-item {
  display: flex;
  flex-direction: column;
  gap: .25rem;
  padding: .85rem 1rem;
  border: 1px solid #d9e3ef;
  border-radius: 10px;
  background: #fff;
}
body.woocommerce-order-received .mdt-order-vehicle-item.is-wide {
  grid-column: 1 / -1;
}
body.woocommerce-order-received .mdt-order-vehicle-item strong {
  font-size: .82rem;
  color: #344054;
}
body.woocommerce-order-received .mdt-order-vehicle-item span {
  color: #5f6f82;
  line-height: 1.45;
}
@media (max-width: 900px) {
  body.woocommerce-order-received .mdt-order-confirmation-steps {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 600px) {
  body.woocommerce-order-received .mdt-order-confirmation-steps,
  body.woocommerce-order-received .mdt-order-vehicle-grid {
    grid-template-columns: 1fr;
  }
  body.woocommerce-order-received .mdt-order-vehicle-item.is-wide {
    grid-column: auto;
  }
}


/* 1.2.36 – Bestellabschluss: kompakter, Ablaufkarten etwas größer. */
body.woocommerce-order-received .mdt-order-duplicate-info-hidden {
  display: none !important;
}
body.woocommerce-order-received .mdt-order-confirmation-next {
  margin-top: 1.15rem;
}
body.woocommerce-order-received .mdt-order-confirmation-steps {
  gap: 1rem;
}
body.woocommerce-order-received .mdt-order-confirmation-step {
  padding: 1.12rem;
}
body.woocommerce-order-received .mdt-order-confirmation-icon {
  width: 46px;
  height: 46px;
  margin-bottom: .7rem;
  font-size: 1.45rem;
}
body.woocommerce-order-received .mdt-order-confirmation-step h3 {
  font-size: 1.06rem;
}
body.woocommerce-order-received .mdt-order-confirmation-step p {
  font-size: .96rem;
  line-height: 1.52;
}
\n\n/* 1.2.38 – Bestellabschluss kompakter; Fahrzeugdaten vor Ablauf. */\nbody.woocommerce-order-received .mdt-order-confirmation-next,\nbody.woocommerce-order-received .mdt-order-vehicle-data {\n  margin-top: .8rem;\n  padding: 1rem 1.15rem;\n}\nbody.woocommerce-order-received .mdt-order-vehicle-data h2 {\n  margin-bottom: .65rem;\n  font-size: clamp(1.2rem, 1.7vw, 1.5rem);\n}\nbody.woocommerce-order-received .mdt-order-vehicle-grid {\n  gap: .5rem;\n}\nbody.woocommerce-order-received .mdt-order-vehicle-item {\n  gap: .15rem;\n  padding: .62rem .78rem;\n}\nbody.woocommerce-order-received .mdt-order-vehicle-item strong {\n  font-size: .76rem;\n}\nbody.woocommerce-order-received .mdt-order-vehicle-item span {\n  font-size: .92rem;\n  line-height: 1.35;\n}\nbody.woocommerce-order-received .mdt-order-confirmation-head {\n  margin-bottom: .65rem;\n}\nbody.woocommerce-order-received .mdt-order-confirmation-head h2 {\n  font-size: clamp(1.2rem, 1.7vw, 1.5rem);\n}\nbody.woocommerce-order-received .mdt-order-confirmation-steps {\n  gap: .65rem;\n}\nbody.woocommerce-order-received .mdt-order-confirmation-step {\n  padding: .78rem .82rem;\n}\nbody.woocommerce-order-received .mdt-order-confirmation-icon {\n  width: 38px;\n  height: 38px;\n  margin-bottom: .45rem;\n  font-size: 1.18rem;\n}\nbody.woocommerce-order-received .mdt-order-confirmation-step h3 {\n  margin-bottom: .25rem;\n  font-size: .96rem;\n}\nbody.woocommerce-order-received .mdt-order-confirmation-step p {\n  font-size: .86rem;\n  line-height: 1.4;\n}\n@media (max-width: 600px) {\n  body.woocommerce-order-received .mdt-order-confirmation-next,\n  body.woocommerce-order-received .mdt-order-vehicle-data {\n    padding: .9rem;\n  }\n}\n