/**
 * Manufaktur – Designschicht (wird zuletzt geladen)
 *
 * Lebendig: kräftige Farbflächen, bewegte Formen, Bricolage Grotesque und
 * Figtree. Die Farben kommen aus der aktiven Palette (base.css).
 */

:root,
body {
  --mf-serif: 'Newsreader', Georgia, 'Times New Roman', serif;
  --mf-sans: 'Instrument Sans', 'Segoe UI', 'Helvetica Neue', Arial, sans-serif;
  --mf-ink: var(--bx-navy-dark);
  --mf-radius: 2px;
  --mf-radius-lg: 2px;
  --mf-gutter: clamp(16px, 3vw, 40px);
  --mf-section: clamp(56px, 7vw, 104px);
  --mf-ease: cubic-bezier(0.22, 1, 0.36, 1);
  --mk-ink: var(--mf-ink);
  --mk-radius: 2px;
  --mk-radius-lg: 2px;
  --fx-accent: var(--bx-amber);
  --fx-glow: var(--bx-glow-rgb);
  --font-heading: var(--mf-serif);
  --font-body: var(--mf-sans);
}

body {
  background: var(--bx-bg);
  color: var(--mf-ink);
  font-family: var(--mf-sans);
  font-size: 16px;
}

h1, h2, h3, h4,
.product_title,
.shop-hero-title,
.mf-title {
  font-family: var(--mf-serif) !important;
  font-weight: 600 !important;
  letter-spacing: -0.01em !important;
  text-transform: none;
  color: var(--bx-navy-dark);
}

.manu-em,
em.manu-em {
  font-weight: 500;
  color: var(--bx-accent-ink);
}

.mf-wrap {
  width: 100%;
  max-width: 1320px;
  margin: 0 auto;
  padding-left: var(--mf-gutter);
  padding-right: var(--mf-gutter);
}

.mf-title {
  margin: 0;
  font-size: clamp(28px, 3.2vw, 44px);
  line-height: 1.12;
}

.mf-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 12px;
  color: var(--bx-navy);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.mf-eyebrow::before {
  content: "";
  width: 22px;
  height: 2px;
  border-radius: var(--mf-radius);
  background: var(--bx-amber);
}

/* ---------- Buttons und Links ---------- */
.mf-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-height: 50px;
  padding: 0 24px;
  border: 2px solid transparent;
  border-radius: var(--mf-radius);
  font-family: var(--mf-sans) !important;
  font-size: 15.5px;
  font-weight: 800;
  line-height: 1;
  text-decoration: none !important;
  cursor: pointer;
  transition: background-color 0.25s ease, color 0.25s ease, border-color 0.25s ease, transform 0.3s var(--mf-ease), box-shadow 0.3s var(--mf-ease);
}

.mf-btn:hover {
  transform: translateY(-2px);
}

.mf-btn--primary {
  background: var(--bx-navy);
  color: #FFFFFF !important;
  box-shadow: none;
}

.mf-btn--primary:hover {
  background: var(--bx-navy-dark);
}

.mf-btn--accent {
  background: var(--bx-amber);
  color: var(--bx-on-accent) !important;
}

.mf-btn--accent:hover {
  background: var(--bx-amber-dark);
}

.mf-btn--soft {
  background: var(--bx-promo-bg);
  color: var(--bx-navy) !important;
}

.mf-btn--soft:hover {
  background: #FFFFFF;
  border-color: var(--bx-navy);
}

.mf-btn--ghost {
  border-color: rgba(255, 255, 255, 0.45);
  color: #FFFFFF !important;
}

.mf-btn--ghost:hover {
  background: #FFFFFF;
  color: var(--bx-navy-dark) !important;
}

.mf-link {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: var(--bx-navy) !important;
  font-weight: 800;
  text-decoration: none !important;
}

.mf-link span {
  background: linear-gradient(currentColor, currentColor) 0 100% / 0 2px no-repeat;
  transition: background-size 0.35s var(--mf-ease);
}

.mf-link:hover span {
  background-size: 100% 2px;
}

.mf-link svg {
  transition: transform 0.3s var(--mf-ease);
}

.mf-link:hover svg {
  transform: translateX(3px);
}

.mf-pill {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  margin: 0 0 16px;
  padding: 7px 14px;
  border-radius: var(--mf-radius);
  background: var(--bx-promo-bg);
  color: var(--bx-navy);
  font-size: 13.5px;
  font-weight: 800;
}

/* ---------- WhatsApp, nach oben ---------- */
.manu-back-to-top {
  border-radius: var(--mf-radius);
  background: var(--bx-navy) !important;
}

/* ---------- Innenseiten ---------- */
.single_add_to_cart_button,
.manu-buy-now-button,
.woocommerce #place_order,
.wc-block-components-checkout-place-order-button,
.wc-block-cart__submit-button,
.woocommerce a.button,
.woocommerce button.button {
  border-radius: var(--mf-radius);
  font-family: var(--mf-sans) !important;
  font-style: normal !important;
  font-weight: 800 !important;
}

.single_add_to_cart_button,
.woocommerce #place_order,
.wc-block-components-checkout-place-order-button,
.wc-block-cart__submit-button {
  background: var(--bx-navy) !important;
  border-color: var(--bx-navy) !important;
  color: #FFFFFF !important;
}

.manu-buy-now-button {
  background: var(--bx-amber) !important;
  border-color: var(--bx-amber) !important;
  color: var(--bx-on-accent) !important;
}

.shop-catalog-hero {
  background: var(--bx-promo-bg) !important;
  border-radius: var(--mf-radius);
}

.product-gallery-wrap img,
.woocommerce-product-gallery__image {
  border-radius: var(--mf-radius);
}

/* Buttons immer in der Textschrift */
.mf-btn,
.mf-card .mf-card__add,
.mf-card a.mf-card__add.add_to_cart_button,
.mf-card__buy,
.mf-cart,
.nd-selector-tab,
.nd-selector-fuels a {
  font-family: var(--mf-sans) !important;
  font-style: normal !important;
}

/* ---------- Preguntas frecuentes: respuestas con listas ---------- */
.faq-accordion-content p {
  margin: 0 0 10px;
}

.faq-accordion-content ol,
.faq-accordion-content ul {
  margin: 0 0 12px;
  padding-left: 22px;
}

.faq-accordion-content li {
  margin: 0 0 4px;
}

.faq-accordion-content a,
.manu-faq-contact a {
  color: var(--bx-navy);
  font-weight: 600;
}

.manu-faq-contact {
  line-height: 1.8;
}

/* ---------- Páginas legales ---------- */
.mk-legal__hero {
  padding: clamp(28px, 4vw, 52px) 0;
  background: var(--bx-navy);
  color: #FFFFFF;
}

.mk-legal__kicker {
  margin: 0 0 8px;
  color: var(--bx-amber);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.mk-legal__title {
  margin: 0 !important;
  color: #FFFFFF !important;
  font-size: clamp(30px, 4vw, 48px) !important;
}

.mk-legal__date {
  margin: 10px 0 0;
  color: rgba(255, 255, 255, 0.7);
  font-size: 14px;
}

.mk-legal__grid {
  display: grid;
  grid-template-columns: 290px minmax(0, 1fr);
  gap: clamp(24px, 4vw, 56px);
  align-items: start;
  padding-top: clamp(28px, 4vw, 48px);
  padding-bottom: clamp(40px, 5vw, 72px);
}

.mk-legal__side {
  position: sticky;
  top: 150px;
  display: flex;
  flex-direction: column;
  gap: 14px;
}

.mk-legal__toc,
.mk-legal__pages,
.mk-legal__company {
  padding: 18px;
  border: 1px solid var(--nd-line);
  border-radius: var(--mf-radius);
  background: #FFFFFF;
}

.mk-legal__side-title {
  margin: 0 0 10px;
  color: var(--bx-navy-dark);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

.mk-legal__toc ol {
  margin: 0;
  padding: 0;
  list-style: none;
  counter-reset: mk-toc;
}

.mk-legal__toc li {
  counter-increment: mk-toc;
}

.mk-legal__toc a {
  display: flex;
  gap: 10px;
  padding: 6px 0;
  color: var(--mk-ink) !important;
  font-size: 14px;
  line-height: 1.35;
  text-decoration: none !important;
}

.mk-legal__toc a::before {
  content: counter(mk-toc, decimal-leading-zero);
  flex: 0 0 auto;
  color: var(--bx-accent-ink);
  font-weight: 700;
}

.mk-legal__toc a:hover {
  color: var(--bx-navy) !important;
  text-decoration: underline !important;
}

.mk-legal__links {
  margin: 0;
  padding: 0;
  list-style: none;
}

.mk-legal__links li a {
  display: block;
  padding: 6px 10px;
  border-radius: var(--mf-radius);
  color: var(--mk-ink) !important;
  font-size: 14px;
  text-decoration: none !important;
}

.mk-legal__links li a:hover {
  background: var(--nd-mist);
}

.mk-legal__links li.active a,
.mk-legal__links li.current-menu-item a {
  background: var(--bx-promo-bg);
  color: var(--bx-navy) !important;
  font-weight: 700;
}

.mk-legal__company {
  background: var(--bx-promo-bg);
  border-color: transparent;
  font-size: 13.5px;
  line-height: 1.55;
}

.mk-legal__company p {
  margin: 6px 0 0;
}

.mk-legal__company a {
  color: var(--bx-navy) !important;
  font-weight: 600;
}

.mk-reclama--light {
  margin-top: 12px;
  background: #FFFFFF;
  color: var(--bx-navy) !important;
}

.mk-legal__body {
  max-width: 820px;
  font-size: 16px;
  line-height: 1.7;
}

.mk-legal-summary {
  margin: 0 0 28px;
  padding: 20px 22px;
  border-left: 0;
  border-radius: var(--mf-radius);
  background: var(--bx-accent-soft);
}

.mk-legal-summary__title {
  margin: 0 0 8px;
  color: var(--bx-accent-ink);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.mk-legal-summary ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.mk-legal-summary li {
  position: relative;
  padding-left: 26px;
  margin: 4px 0;
  color: var(--bx-navy-dark);
  font-weight: 500;
}

.mk-legal-summary li::before {
  content: "✓";
  position: absolute;
  left: 2px;
  color: var(--color-stock);
  font-weight: 800;
}

.mk-legal-section {
  padding: 24px 0;
  border-top: 1px solid var(--nd-line);
}

.mk-legal-section h2 {
  display: flex;
  align-items: baseline;
  gap: 12px;
  margin: 0 0 12px !important;
  font-size: clamp(20px, 2vw, 25px) !important;
  scroll-margin-top: 160px;
}

.mk-legal-no {
  flex: 0 0 auto;
  display: inline-grid;
  place-items: center;
  min-width: 36px;
  height: 30px;
  padding: 0 6px;
  border-radius: var(--mf-radius);
  background: var(--bx-navy);
  color: #FFFFFF;
  font-size: 14px;
  font-weight: 700;
}

.mk-legal__body ol,
.mk-legal__body ul {
  padding-left: 22px;
}

.mk-legal__body li {
  margin: 0 0 6px;
}

.mk-legal__body a {
  color: var(--bx-navy);
  font-weight: 600;
}

.mk-legal-card {
  padding: 16px 18px;
  border: 1px solid var(--nd-line);
  border-radius: var(--mf-radius);
  background: #FFFFFF;
}

.mk-legal-table {
  width: 100%;
  margin: 8px 0 0;
  border-collapse: collapse;
  font-size: 14.5px;
}

.mk-legal-table th,
.mk-legal-table td {
  padding: 10px 12px;
  border: 1px solid var(--nd-line);
  text-align: left;
  vertical-align: top;
}

.mk-legal-table th {
  background: var(--bx-promo-bg);
  color: var(--bx-navy-dark);
  font-weight: 700;
}

.mk-legal-form {
  padding: 18px 20px;
  border: 2px dashed var(--nd-greige);
  border-radius: var(--mf-radius);
  background: #FFFFFF;
  font-size: 15px;
}

.mk-legal-help {
  margin-top: 28px;
  padding: 18px 20px;
  border-radius: var(--mf-radius);
  background: var(--bx-promo-bg);
}

.mk-legal-help p {
  margin: 0;
}

@media (max-width: 991px) {
  .mk-legal__grid {
    grid-template-columns: minmax(0, 1fr);
  }
  .mk-legal__side {
    display: contents;
  }
  .mk-legal__toc {
    order: -1;
  }
  .mk-legal__body {
    order: 0;
  }
  .mk-legal__pages,
  .mk-legal__company {
    order: 2;
  }
}

@media (max-width: 600px) {
  .mk-legal-table,
  .mk-legal-table thead,
  .mk-legal-table tbody,
  .mk-legal-table tr,
  .mk-legal-table th,
  .mk-legal-table td {
    display: block;
  }
  .mk-legal-table thead {
    display: none;
  }
  .mk-legal-table tr {
    margin-bottom: 10px;
    border: 1px solid var(--nd-line);
    border-radius: var(--mf-radius);
  }
  .mk-legal-table td {
    border: 0;
    border-top: 1px solid var(--nd-line);
  }
  .mk-legal-table td:first-child {
    border-top: 0;
    font-weight: 700;
  }
}

/* =============================================================
   BESTELLSTRECKE (Warenkorb, Kasse, Bestätigung) – Manufaktur
   Für Blöcke (wc-block-*) und klassische Templates.
   ============================================================= */
.wc-block-cart__sidebar::after,
.cart_totals::after {
  content: none !important;
  display: none !important;
}

.mf-flow {
  position: relative;
  padding: clamp(28px, 4vw, 52px) 0 clamp(24px, 3vw, 36px);
  overflow: hidden;
}

.mf-flow::before {
  content: "";
  position: absolute;
  top: -120px;
  right: -120px;
  width: 360px;
  height: 360px;
  border-radius: var(--mf-radius);
  background: repeating-radial-gradient(circle, transparent 0 14px, rgba(var(--bx-primary-rgb), 0.06) 14px 16px);
  pointer-events: none;
}

.mf-flow__inner {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: space-between;
  gap: 24px 40px;
}

.mf-flow__title {
  margin: 0 !important;
  font-size: clamp(34px, 4.2vw, 54px) !important;
  line-height: 1.05 !important;
}

.mf-flow__sub {
  margin: 10px 0 0;
  color: var(--nd-muted);
  font-size: 17px;
}

.mf-trail {
  position: relative;
  display: flex;
  margin: 0;
  padding: 0;
  list-style: none;
}

.mf-trail__step {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  width: 132px;
  text-align: center;
}

.mf-trail__step + .mf-trail__step::before {
  content: "";
  position: absolute;
  top: 26px;
  right: calc(50% + 30px);
  width: calc(100% - 60px);
  border-top: 2px dashed var(--nd-greige);
}

.mf-trail__step.is-done + .mf-trail__step::before,
.mf-trail__step.is-current::before {
  border-top-color: var(--bx-navy);
}

.mf-trail__ring {
  display: grid;
  place-items: center;
  width: 54px;
  height: 54px;
  border-radius: var(--mf-radius);
  background: repeating-radial-gradient(circle, #FFFFFF 0 5px, var(--nd-mist) 5px 7px);
  border: 2px solid var(--nd-line);
  color: var(--nd-muted);
  font-family: var(--mf-serif);
  font-size: 19px;
  font-weight: 700;
}

.mf-trail__step.is-done .mf-trail__ring {
  background: var(--bx-promo-bg);
  border-color: var(--bx-navy);
  color: var(--bx-navy);
}

.mf-trail__step.is-current .mf-trail__ring {
  background: repeating-radial-gradient(circle, var(--bx-navy) 0 5px, var(--bx-primary-light) 5px 7px);
  border-color: var(--bx-navy);
  color: #FFFFFF;
  box-shadow: none;
}

.mf-trail__text {
  display: flex;
  flex-direction: column;
  line-height: 1.25;
}

.mf-trail__text strong {
  color: var(--bx-navy-dark);
  font-size: 14.5px;
}

.mf-trail__text small {
  color: var(--nd-muted);
  font-size: 12.5px;
}

.mf-trail__step:not(.is-current):not(.is-done) .mf-trail__text strong {
  color: var(--nd-muted);
}

@media (max-width: 760px) {
  .mf-trail {
    width: 100%;
    justify-content: space-between;
  }
  .mf-trail__step {
    width: auto;
    flex: 1 1 0;
  }
  .mf-trail__text small {
    display: none;
  }
}

.mf-flow-page {
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 var(--mf-gutter) var(--mf-section);
}

.mf-flow-page > .woocommerce,
.mf-flow-page > .wp-block-woocommerce-cart,
.mf-flow-page > .wp-block-woocommerce-checkout {
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* ---- Warenkorb-Block: Positionen als Karten ---- */
.mf-flow-page .wc-block-components-sidebar-layout {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 380px;
  gap: 24px;
  align-items: start;
  margin: 0 !important;
}

.mf-flow-page .wc-block-components-sidebar-layout .wc-block-components-main,
.mf-flow-page .wc-block-components-sidebar-layout .wc-block-components-sidebar {
  flex: none !important;
  width: auto !important;
  max-width: none !important;
  min-width: 0 !important;
  margin: 0 !important;
}

.mf-flow-page .wc-block-components-sidebar-layout .wc-block-components-main {
  padding: 0 !important;
  background: none !important;
  border: 0 !important;
  box-shadow: none;
}

.mf-flow-page .wc-block-components-sidebar-layout table.wc-block-cart-items,
.mf-flow-page .wc-block-components-sidebar-layout table.wc-block-cart-items tbody {
  display: block;
  width: 100%;
  margin: 0 !important;
  border: 0 !important;
  background: none !important;
  box-shadow: none;
}

.mf-flow-page .wc-block-components-sidebar-layout table.wc-block-cart-items .wc-block-cart-items__header,
.mf-flow-page .wc-block-components-sidebar-layout table.wc-block-cart-items thead {
  display: none !important;
}

.mf-flow-page .wc-block-components-sidebar-layout table.wc-block-cart-items tbody tr.wc-block-cart-items__row {
  display: grid !important;
  grid-template-columns: 112px minmax(0, 1fr) auto;
  align-items: center;
  gap: 4px 22px;
  margin: 0 0 12px;
  padding: 14px 22px 14px 14px !important;
  border: 0 !important;
  border-radius: var(--mf-radius);
  background: #FFFFFF;
  box-shadow: none;
}

.mf-flow-page .wc-block-components-sidebar-layout table.wc-block-cart-items tbody tr.wc-block-cart-items__row td {
  display: block !important;
  width: auto !important;
  padding: 0 !important;
  border: 0 !important;
  background: none !important;
}

.mf-flow-page .wc-block-cart-item__image a,
.mf-flow-page .wc-block-cart-item__image img {
  display: block;
  width: 112px !important;
  height: 112px !important;
  max-width: none !important;
  border-radius: var(--mf-radius);
  background: var(--nd-mist);
  object-fit: contain;
}

.mf-flow-page .wc-block-components-product-name {
  color: var(--bx-navy-dark) !important;
  font-family: var(--mf-serif) !important;
  font-size: 19px !important;
  font-weight: 600 !important;
  line-height: 1.25 !important;
  text-decoration: none !important;
}

.mf-flow-page .wc-block-cart-item__prices,
.mf-flow-page .wc-block-components-product-metadata {
  color: var(--nd-muted) !important;
  font-size: 14px !important;
}

.mf-flow-page .wc-block-cart-item__total {
  text-align: right;
}

.mf-flow-page .wc-block-cart-item__total .wc-block-components-product-price,
.mf-flow-page .wc-block-cart-item__total .wc-block-formatted-money-amount {
  color: var(--bx-navy-dark) !important;
  font-family: var(--mf-serif) !important;
  font-size: 21px !important;
  font-weight: 700 !important;
}

.mf-flow-page .wc-block-cart-item__quantity {
  display: flex !important;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 16px;
  margin-top: 10px;
}

.mf-flow-page .wc-block-components-quantity-selector {
  width: auto !important;
  min-width: 128px;
  height: 42px;
  margin: 0 !important;
  overflow: hidden;
  border: 1.5px solid var(--nd-line) !important;
  border-radius: var(--mf-radius);
  background: var(--bx-bg) !important;
}

.mf-flow-page .wc-block-components-quantity-selector::after {
  display: none !important;
}

.mf-flow-page .wc-block-components-quantity-selector input {
  background: transparent !important;
  color: var(--bx-navy-dark) !important;
  font-weight: 800 !important;
}

.mf-flow-page .wc-block-components-quantity-selector__button {
  min-width: 38px !important;
  background: transparent !important;
  color: var(--bx-navy) !important;
  font-size: 18px !important;
  opacity: 1 !important;
}

.mf-flow-page .wc-block-cart-item__remove-link {
  display: inline-flex !important;
  align-items: center;
  gap: 4px;
  color: var(--nd-muted) !important;
  font-size: 13.5px !important;
  font-weight: 700 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px;
}

.mf-flow-page .wc-block-cart-item__remove-link:hover {
  color: var(--nd-flame) !important;
}

/* ---- Summenkarte (Warenkorb und Kasse) ---- */
.mf-flow-page .wc-block-cart__sidebar,
.mf-flow-page .wc-block-checkout__sidebar {
  position: sticky !important;
  top: 100px;
}

.mf-flow-page .wc-block-components-sidebar-layout .wp-block-woocommerce-cart-totals-block,
.mf-flow-page .wc-block-components-sidebar-layout .wp-block-woocommerce-checkout-totals-block,
.woocommerce-cart .cart_totals {
  position: relative;
  padding: 30px 24px 24px !important;
  border: 0 !important;
  border-radius: var(--mf-radius);
  background: var(--bx-navy) !important;
  color: rgba(255, 255, 255, 0.88) !important;
  box-shadow: none;
  overflow: visible;
}

.mf-flow-page .wp-block-woocommerce-cart-totals-block::before,
.mf-flow-page .wp-block-woocommerce-checkout-totals-block::before,
.woocommerce-cart .cart_totals::before {
  content: "";
  position: absolute;
  top: -12px;
  left: 20px;
  right: 20px;
  height: 14px;
  background: radial-gradient(circle at 12px 14px, var(--bx-navy) 12px, transparent 12.5px) repeat-x;
  background-size: 24px 14px;
}

.mf-flow-page .wc-block-cart__totals-title,
.mf-flow-page .wc-block-components-checkout-order-summary__title,
.mf-flow-page .wc-block-components-checkout-order-summary__title-text,
.woocommerce-cart .cart_totals h2 {
  margin: 0 0 14px !important;
  padding: 0 !important;
  color: #FFFFFF !important;
  font-family: var(--mf-serif) !important;
  font-size: 22px !important;
  font-weight: 600 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  text-align: left !important;
}

.mf-flow-page .wc-block-components-totals-wrapper {
  padding: 14px 0 !important;
  border-top: 1px dashed rgba(255, 255, 255, 0.22) !important;
  border-bottom: 0 !important;
}

.mf-flow-page .wp-block-woocommerce-cart-totals-block .wc-block-components-totals-item,
.mf-flow-page .wp-block-woocommerce-cart-totals-block .wc-block-components-totals-item__label,
.mf-flow-page .wp-block-woocommerce-cart-totals-block .wc-block-components-totals-item__value,
.mf-flow-page .wp-block-woocommerce-cart-totals-block .wc-block-components-panel__button,
.mf-flow-page .wp-block-woocommerce-cart-totals-block .wc-block-components-totals-coupon a,
.mf-flow-page .wp-block-woocommerce-checkout-totals-block .wc-block-components-totals-item,
.mf-flow-page .wp-block-woocommerce-checkout-totals-block .wc-block-components-totals-item__label,
.mf-flow-page .wp-block-woocommerce-checkout-totals-block .wc-block-components-totals-item__value,
.mf-flow-page .wp-block-woocommerce-checkout-totals-block .wc-block-components-panel__button,
.mf-flow-page .wp-block-woocommerce-checkout-totals-block .wc-block-components-order-summary,
.mf-flow-page .wp-block-woocommerce-checkout-totals-block .wc-block-components-order-summary *,
.mf-flow-page .wp-block-woocommerce-checkout-totals-block .wc-block-components-checkout-order-summary__title * {
  color: rgba(255, 255, 255, 0.88) !important;
}

.mf-flow-page .wc-block-components-panel__button {
  font-weight: 700 !important;
}

.mf-flow-page .wc-block-components-panel__button svg {
  fill: currentColor !important;
}

.mf-flow-page .wc-block-components-totals-footer-item .wc-block-components-totals-item__label {
  color: #FFFFFF !important;
  font-size: 16px !important;
  font-weight: 800 !important;
}

.mf-flow-page .wc-block-components-totals-footer-item .wc-block-components-totals-item__value,
.mf-flow-page .wc-block-components-totals-footer-item .wc-block-formatted-money-amount,
.woocommerce-cart .cart_totals .order-total td {
  color: var(--bx-amber) !important;
  font-family: var(--mf-serif) !important;
  font-size: 30px !important;
  font-weight: 700 !important;
}

.mf-flow-page .wc-block-components-totals-item__description,
.mf-flow-page .wc-block-components-totals-footer-item-tax {
  color: rgba(255, 255, 255, 0.65) !important;
  font-size: 13px !important;
}

.mf-flow-page .wc-block-components-text-input input,
.mf-flow-page .wc-block-components-totals-coupon input {
  border-radius: var(--mf-radius);
}

.mf-flow-page .wc-block-components-totals-coupon__button {
  border-radius: var(--mf-radius);
  background: var(--bx-amber) !important;
  color: var(--bx-on-accent) !important;
}

.mf-flow-page .wc-block-cart__submit {
  margin: 18px 0 0 !important;
}

.mf-flow-page .wc-block-cart__submit-button,
.woocommerce-cart .wc-proceed-to-checkout .checkout-button {
  width: 100% !important;
  height: auto !important;
  min-height: 56px !important;
  margin: 0 !important;
  border-radius: var(--mf-radius);
  background: var(--bx-amber) !important;
  color: var(--bx-on-accent) !important;
  font-family: var(--mf-sans) !important;
  font-size: 16.5px !important;
  font-weight: 800 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  box-shadow: none;
  transition: background-color 0.2s ease, transform 0.3s var(--mf-ease) !important;
}

.mf-flow-page .wc-block-cart__submit-button:hover,
.woocommerce-cart .wc-proceed-to-checkout .checkout-button:hover {
  background: var(--bx-amber-dark) !important;
  transform: translateY(-2px) !important;
}

.mf-flow-page .wc-block-cart__payment-options {
  display: none;
}

/* Karte „Ihre Lieferung“ */
.mf-delivery {
  margin: 16px 0 0;
  padding: 16px 18px;
  border-radius: var(--mf-radius);
  background: var(--bx-promo-bg);
  color: var(--mf-ink);
  font-size: 14px;
}

.mf-flow-page .mf-delivery {
  background: rgba(255, 255, 255, 0.08);
  color: rgba(255, 255, 255, 0.88);
}

.mf-delivery__title {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 8px;
  color: inherit;
  font-weight: 800;
}

.mf-delivery__title svg {
  color: var(--bx-amber);
}

.mf-delivery ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.mf-delivery li {
  position: relative;
  margin: 0 0 4px;
  padding-left: 16px;
  line-height: 1.45;
}

.mf-delivery li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.55em;
  width: 7px;
  height: 7px;
  border-radius: var(--mf-radius);
  background: var(--bx-amber);
}

.mf-delivery__wa {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  margin-top: 10px;
  color: inherit !important;
  font-weight: 800;
  text-decoration: underline !important;
  text-underline-offset: 3px;
}

/* Band „Gut zu wissen“ */
.mf-know {
  margin-top: clamp(32px, 4vw, 48px);
}

.mf-know .mf-wrap {
  padding: 0;
}

.mf-know__title {
  margin: 0 0 14px !important;
  font-size: 22px !important;
}

.mf-know__list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.mf-know__list li {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 18px;
  border-radius: var(--mf-radius);
  background: var(--bx-promo-bg);
  font-size: 14.5px;
  line-height: 1.5;
}

.mf-know__list strong {
  display: block;
  color: var(--bx-navy-dark);
  font-family: var(--mf-serif);
  font-size: 17px;
}

.mf-know__icon {
  display: inline-grid;
  place-items: center;
  flex: 0 0 40px;
  width: 40px;
  height: 40px;
  border-radius: var(--mf-radius);
  background: #FFFFFF;
  color: var(--bx-navy);
}

/* ---- Kasse (Block) ---- */
.mf-flow-page .wc-block-checkout__main .wc-block-components-checkout-step {
  margin: 0 0 16px !important;
  padding: 24px 24px 20px !important;
  border: 0 !important;
  border-radius: var(--mf-radius);
  background: #FFFFFF;
  box-shadow: none;
}

.mf-flow-page .wc-block-components-checkout-step__heading {
  margin: 0 0 14px !important;
}

.mf-flow-page .wc-block-components-checkout-step__title {
  color: var(--bx-navy-dark) !important;
  font-family: var(--mf-serif) !important;
  font-size: 22px !important;
  font-weight: 600 !important;
}

.mf-flow-page .wc-block-components-checkout-step__container::after,
.mf-flow-page .wc-block-components-checkout-step::before {
  display: none !important;
}

.mf-flow-page .wc-block-components-text-input input,
.mf-flow-page .wc-blocks-components-select__select,
.woocommerce-checkout .woocommerce-input-wrapper input,
.woocommerce-checkout .woocommerce-input-wrapper select,
.woocommerce-checkout .woocommerce-input-wrapper textarea {
  border: 1.5px solid var(--nd-line) !important;
  border-radius: var(--mf-radius);
  background: var(--bx-bg) !important;
}

.mf-flow-page .wc-block-components-text-input input:focus,
.mf-flow-page .wc-blocks-components-select__select:focus,
.woocommerce-checkout .woocommerce-input-wrapper input:focus {
  border-color: var(--bx-navy) !important;
  box-shadow: none;
}

.mf-flow-page .wc-block-components-radio-control__option,
.mf-flow-page .wc-block-components-radio-control-accordion-option {
  border-radius: var(--mf-radius);
}

.mf-flow-page .wc-block-components-checkout-place-order-button,
.woocommerce-checkout #place_order {
  min-height: 58px !important;
  border-radius: var(--mf-radius);
  background: var(--bx-navy) !important;
  color: #FFFFFF !important;
  font-family: var(--mf-sans) !important;
  font-size: 17px !important;
  font-weight: 800 !important;
  text-transform: none !important;
}

.mf-flow-page .wc-block-components-checkout-place-order-button:hover,
.woocommerce-checkout #place_order:hover {
  background: var(--bx-navy-dark) !important;
}

.mf-flow-page .wc-block-components-order-summary-item__image img {
  border-radius: var(--mf-radius);
  background: #FFFFFF;
}

.mf-flow-page .wc-block-components-order-summary-item__quantity {
  background: var(--bx-amber) !important;
  border-color: var(--bx-amber) !important;
  color: var(--bx-on-accent) !important;
}

/* ---- Klassischer Warenkorb ---- */
.woocommerce-cart table.shop_table.cart {
  border: 0 !important;
  border-radius: var(--mf-radius);
  background: #FFFFFF !important;
  overflow: hidden;
}

/* ---- Leerer Warenkorb ---- */
.mf-flow-page .wp-block-woocommerce-empty-cart-block,
.woocommerce-cart .cart-empty {
  padding: clamp(32px, 5vw, 64px) 24px;
  border-radius: var(--mf-radius);
  background: #FFFFFF;
  text-align: center;
}

@media (max-width: 991px) {
  .mf-flow-page .wc-block-components-sidebar-layout {
    grid-template-columns: minmax(0, 1fr);
  }
  .mf-flow-page .wc-block-cart__sidebar,
  .mf-flow-page .wc-block-checkout__sidebar {
    position: relative !important;
    top: auto;
    margin-top: 12px !important;
  }
  .mf-know__list {
    grid-template-columns: minmax(0, 1fr);
  }
}

@media (max-width: 600px) {
  .mf-flow-page .wc-block-components-sidebar-layout table.wc-block-cart-items tbody tr.wc-block-cart-items__row {
    grid-template-columns: 84px minmax(0, 1fr);
    gap: 4px 14px;
    padding: 12px !important;
  }
  .mf-flow-page .wc-block-cart-item__image a,
  .mf-flow-page .wc-block-cart-item__image img {
    width: 84px !important;
    height: 84px !important;
  }
  .mf-flow-page .wc-block-cart-item__total {
    grid-column: 2;
    text-align: left;
  }
  .mf-flow-page .wc-block-components-product-name {
    font-size: 16px !important;
  }
}

.mf-flow-page .wc-block-components-sidebar-layout .wc-block-components-totals-wrapper,
.mf-flow-page .wc-block-components-sidebar-layout .wc-block-components-totals-footer-item,
.mf-flow-page .wc-block-components-sidebar-layout .wc-block-components-totals-item {
  background: transparent !important;
  border-left: 0 !important;
  border-right: 0 !important;
  box-shadow: none;
}

.mf-flow-page .wc-block-components-sidebar-layout .wc-block-components-totals-footer-item {
  margin: 0 !important;
  padding: 6px 0 0 !important;
  border-top: 0 !important;
  border-bottom: 0 !important;
}

/* =============================================================
   PRODUKTSEITE – Manufaktur
   ============================================================= */
.mf-pdp {
  padding-top: clamp(16px, 2vw, 28px);
}

.mf-pdp .mf-pdp__grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 0.95fr) !important;
  gap: clamp(28px, 4vw, 64px) !important;
  align-items: start;
}

.mf-pdp .mf-pdp__gallery {
  position: sticky;
  top: 100px;
  padding: clamp(14px, 2vw, 24px) !important;
  border: 0 !important;
  border-radius: var(--mf-radius);
  background: #FFFFFF !important;
  box-shadow: none;
}

.mf-pdp .mf-pdp__gallery .woocommerce-product-gallery,
.mf-pdp .mf-pdp__gallery .woocommerce-product-gallery__wrapper,
.mf-pdp .mf-pdp__gallery .woocommerce-product-gallery__image,
.mf-pdp .mf-pdp__gallery img {
  border-radius: var(--mf-radius);
  background: var(--nd-mist) !important;
  overflow: hidden;
}

.mf-pdp .mf-pdp__gallery .flex-control-thumbs {
  display: flex;
  gap: 8px;
  margin-top: 12px !important;
}

.mf-pdp .mf-pdp__gallery .flex-control-thumbs li img {
  border-radius: var(--mf-radius);
}

.mf-pdp__meta {
  display: flex !important;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 10px !important;
  margin: 0 0 14px !important;
  padding: 0 !important;
  border: 0 !important;
}

.mf-pdp__meta .mf-pill {
  margin: 0;
  text-decoration: none !important;
}

.mf-stock {
  display: inline-flex !important;
  align-items: center;
  gap: 7px;
  padding: 7px 13px !important;
  border-radius: var(--mf-radius);
  background: #FFFFFF !important;
  border: 1.5px solid var(--nd-line) !important;
  color: var(--bx-navy-dark) !important;
  font-size: 13.5px !important;
  font-weight: 800 !important;
}

.mf-stock .stock-dot {
  width: 8px;
  height: 8px;
  border-radius: var(--mf-radius);
  background: var(--color-stock);
}

.mf-stock.on-demand .stock-dot {
  background: var(--bx-amber);
}

.mf-pdp__sku {
  color: var(--nd-muted);
  font-size: 13px;
}

.mf-pdp .mf-pdp__title {
  margin: 0 0 12px !important;
  font-size: clamp(32px, 3.6vw, 50px) !important;
  line-height: 1.08 !important;
}

.mf-pdp__lead,
.mf-pdp__lead p {
  margin: 0 0 18px;
  color: var(--nd-muted);
  font-size: 17px;
  line-height: 1.6;
}

/* Eckdaten als Holzscheiben */
.mf-pdp .mf-slices {
  display: flex !important;
  flex-wrap: wrap;
  gap: 12px !important;
  margin: 0 0 22px !important;
  padding: 0 !important;
  border: 0 !important;
  background: none !important;
}

.mf-pdp .mf-slice {
  display: flex !important;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 112px;
  height: 112px;
  padding: 10px !important;
  border: 0 !important;
  border-radius: var(--mf-radius);
  background: repeating-radial-gradient(circle at 50% 50%, #FFFFFF 0 9px, var(--nd-mist) 9px 11px) !important;
  box-shadow: none;
  text-align: center;
}

.mf-pdp .mf-slice dd {
  margin: 0 !important;
  padding: 2px 6px;
  border-radius: var(--mf-radius);
  background: rgba(255, 255, 255, 0.85);
  color: var(--bx-navy-dark) !important;
  font-family: var(--mf-serif);
  font-size: 15px !important;
  font-weight: 700 !important;
  line-height: 1.15;
}

.mf-pdp .mf-slice dt {
  margin: 4px 0 0 !important;
  padding: 1px 6px;
  border-radius: var(--mf-radius);
  background: rgba(255, 255, 255, 0.85);
  color: var(--nd-muted) !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

/* Bestell-Karte */
.mf-buybox {
  margin: 0 0 16px;
  padding: 22px;
  border-radius: var(--mf-radius);
  background: #FFFFFF;
  box-shadow: none;
}

.mf-pdp .mf-buybox__price {
  margin: 0 0 16px !important;
  padding: 0 0 16px !important;
  border: 0 !important;
  border-bottom: 1px dashed var(--nd-line) !important;
  background: none !important;
}

.mf-pdp .mf-buybox__price .single-price-current,
.mf-pdp .mf-buybox__price .single-price-current * {
  color: var(--bx-navy-dark) !important;
  font-family: var(--mf-serif) !important;
  font-size: clamp(32px, 3vw, 42px) !important;
  font-weight: 700 !important;
  line-height: 1.05 !important;
  text-decoration: none !important;
}

.mf-pdp .mf-buybox__price .single-price-original {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 4px;
  color: var(--nd-muted);
}

.mf-pdp .single-price-discount-pill {
  padding: 3px 9px;
  border-radius: var(--mf-radius);
  background: var(--nd-flame) !important;
  color: #FFFFFF !important;
  font-size: 12.5px;
  font-weight: 800;
}

.mf-pdp .manu-price-legal {
  margin: 6px 0 0 !important;
  color: var(--nd-muted) !important;
  font-size: 13.5px !important;
}

.mf-pdp .manu-delivery-time {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin: 12px 0 0 !important;
  padding: 6px 12px;
  border-radius: var(--mf-radius);
  background: var(--bx-promo-bg);
  color: var(--bx-navy) !important;
  font-size: 14px;
  font-weight: 800;
}

.mf-pdp form.cart {
  display: flex !important;
  flex-wrap: wrap;
  align-items: stretch;
  gap: 10px !important;
  margin: 0 !important;
}

.mf-pdp form.cart .quantity {
  flex: 0 0 auto;
  margin: 0 !important;
}

.mf-pdp form.cart .quantity input.qty {
  width: 92px !important;
  height: 56px !important;
  border: 1.5px solid var(--nd-line) !important;
  border-radius: var(--mf-radius);
  background: var(--bx-bg) !important;
  color: var(--bx-navy-dark) !important;
  font-size: 17px !important;
  font-weight: 800 !important;
  text-align: center;
}

.mf-pdp .single_add_to_cart_button {
  flex: 1 1 200px;
  min-height: 56px !important;
  margin: 0 !important;
  border-radius: var(--mf-radius);
  background: var(--bx-navy) !important;
  border-color: var(--bx-navy) !important;
  color: #FFFFFF !important;
  font-size: 16.5px !important;
  text-transform: none !important;
  box-shadow: none;
}

.mf-pdp .single_add_to_cart_button:hover {
  background: var(--bx-navy-dark) !important;
}

.mf-pdp .manu-buy-now-button {
  flex: 1 1 100%;
  min-height: 52px !important;
  margin: 0 !important;
  border-radius: var(--mf-radius);
  background: var(--bx-amber) !important;
  border-color: var(--bx-amber) !important;
  color: var(--bx-on-accent) !important;
  font-size: 16px !important;
  text-transform: none !important;
}

.mf-pdp__aside {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 12px;
  margin: 0 0 16px;
}

.mf-pdp__aside .mf-delivery {
  margin: 0;
}

.mf-pdp .manu-whatsapp-action-wrapper {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: none !important;
}

.mf-pdp .btn-whatsapp-inquiry {
  width: 100%;
  min-height: 50px;
  border-radius: var(--mf-radius);
  background: #FFFFFF !important;
  border: 1.5px solid var(--nd-line) !important;
  color: var(--bx-navy-dark) !important;
  font-weight: 800 !important;
}

.mf-pdp .btn-whatsapp-inquiry:hover {
  border-color: var(--bx-navy) !important;
}

.mf-pdp .manu-whatsapp-hint {
  margin: 6px 0 0 !important;
  color: var(--nd-muted);
  font-size: 13px;
  text-align: center;
}

.mf-pdp__legal {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin: 0;
  color: var(--nd-muted);
  font-size: 13.5px;
  line-height: 1.5;
}

.mf-pdp__legal svg {
  flex: 0 0 auto;
  margin-top: 2px;
  color: var(--color-stock);
}

.mf-pdp__legal a {
  color: var(--bx-navy) !important;
  font-weight: 700;
}

/* Rechner */
.mf-pdp .manu-calc {
  margin: 0 0 16px !important;
  border: 0 !important;
  border-radius: var(--mf-radius);
  background: var(--bx-promo-bg) !important;
  overflow: hidden;
}

.mf-pdp .manu-calc summary {
  padding: 16px 20px !important;
  font-family: var(--mf-serif);
  font-size: 18px;
  font-weight: 600;
  cursor: pointer;
}

.mf-pdp .manu-calc__no {
  display: inline-grid;
  place-items: center;
  width: 30px;
  height: 30px;
  margin-right: 8px;
  border-radius: var(--mf-radius);
  background: var(--bx-navy);
  color: #FFFFFF;
  font-family: var(--mf-sans);
  font-size: 11px;
  font-weight: 800;
}

.mf-pdp .manu-calc input {
  border-radius: var(--mf-radius);
  border: 1.5px solid var(--nd-line) !important;
}

.mf-pdp .manu-calc__result {
  font-family: var(--mf-serif);
  color: var(--bx-navy-dark);
}

/* Reiter, ähnliche Produkte */
.mf-pdp .woocommerce-tabs {
  margin-top: clamp(40px, 5vw, 72px) !important;
  padding: clamp(22px, 3vw, 36px) !important;
  border: 0 !important;
  border-radius: var(--mf-radius);
  background: #FFFFFF !important;
}

.mf-pdp .woocommerce-tabs ul.tabs {
  display: flex !important;
  flex-wrap: wrap;
  gap: 6px;
  margin: 0 0 20px !important;
  padding: 0 !important;
  border: 0 !important;
}

.mf-pdp .woocommerce-tabs ul.tabs::before,
.mf-pdp .woocommerce-tabs ul.tabs li::before,
.mf-pdp .woocommerce-tabs ul.tabs li::after {
  display: none !important;
}

.mf-pdp .woocommerce-tabs ul.tabs li {
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: var(--mf-radius);
  background: var(--bx-promo-bg) !important;
}

.mf-pdp .woocommerce-tabs ul.tabs li a {
  display: block;
  padding: 10px 18px !important;
  color: var(--bx-navy) !important;
  font-weight: 800 !important;
}

.mf-pdp .woocommerce-tabs ul.tabs li.active {
  background: var(--bx-navy) !important;
}

.mf-pdp .woocommerce-tabs ul.tabs li.active a {
  color: #FFFFFF !important;
}

.mf-pdp .woocommerce-tabs table.shop_attributes th,
.mf-pdp .woocommerce-tabs table.shop_attributes td,
.mf-pdp .manu-specs-table th,
.mf-pdp .manu-specs-table td {
  border-color: var(--nd-line) !important;
  background: none !important;
}

.mf-pdp .related > h2,
.mf-pdp .upsells > h2 {
  font-size: clamp(26px, 2.6vw, 36px) !important;
}

@media (max-width: 900px) {
  .mf-pdp .mf-pdp__grid {
    grid-template-columns: minmax(0, 1fr) !important;
  }
  .mf-pdp .mf-pdp__gallery {
    position: relative;
    top: auto;
  }
}

@media (max-width: 520px) {
  .mf-pdp .mf-slice {
    width: 96px;
    height: 96px;
  }
  .mf-pdp .mf-slice dd {
    font-size: 13.5px !important;
  }
  .mf-buybox {
    padding: 16px;
  }
  .mf-pdp .single_add_to_cart_button {
    flex-basis: 140px;
  }
}

/* =============================================================
   SHOP UND KATEGORIEN – Manufaktur
   ============================================================= */
.shop-catalog-hero {
  position: relative;
  overflow: hidden;
  margin: 0 var(--mf-gutter) !important;
  border-radius: var(--mf-radius);
  background: var(--bx-navy) !important;
}

.shop-catalog-hero::after {
  content: "";
  position: absolute;
  right: -90px;
  bottom: -120px;
  width: 320px;
  height: 320px;
  border-radius: var(--mf-radius);
  background: repeating-radial-gradient(circle, transparent 0 14px, rgba(var(--bx-accent-rgb), 0.22) 14px 16px);
  pointer-events: none;
}

.shop-catalog-hero,
.shop-catalog-hero h1,
.shop-catalog-hero p,
.shop-catalog-hero a,
.shop-catalog-hero .shop-hero-title {
  color: #FFFFFF !important;
}

.shop-catalog-hero .manu-em {
  color: var(--bx-amber) !important;
}

.mf-pdp .mf-slice {
  width: 126px;
  height: 126px;
}

.mf-pdp .mf-slice dt {
  max-width: 100%;
  font-size: 10.5px !important;
  letter-spacing: 0.02em;
  overflow-wrap: anywhere;
  text-transform: none;
}

@media (max-width: 520px) {
  .mf-pdp .mf-slice {
    width: 104px;
    height: 104px;
  }
}

.mf-pdp .manu-quick-specs .mf-slice {
  flex-direction: column !important;
  justify-content: center !important;
  align-items: center !important;
  gap: 0 !important;
}

/* =============================================================
   INHALTSSEITEN: Kontakt, Über uns, Häufige Fragen – Manufaktur
   ============================================================= */
.mf-page {
  padding-bottom: var(--mf-section);
}

.mf-page > .container {
  max-width: none;
  padding: 0;
}

.mf-page-hero {
  position: relative;
  padding: clamp(28px, 4vw, 56px) 0 clamp(24px, 3vw, 40px);
  overflow: hidden;
}

.mf-page-hero::before {
  content: "";
  position: absolute;
  top: -140px;
  right: -140px;
  width: 400px;
  height: 400px;
  border-radius: var(--mf-radius);
  background: repeating-radial-gradient(circle, transparent 0 15px, rgba(var(--bx-primary-rgb), 0.06) 15px 17px);
  pointer-events: none;
}

.mf-page-hero--center {
  text-align: center;
}

.mf-page-hero--center .mf-eyebrow {
  justify-content: center;
}

.mf-page-hero__title {
  max-width: 820px;
  margin: 0 0 14px !important;
  font-size: clamp(36px, 4.6vw, 60px) !important;
  line-height: 1.06 !important;
}

.mf-page-hero--center .mf-page-hero__title,
.mf-page-hero--center .mf-page-hero__lead {
  margin-left: auto !important;
  margin-right: auto !important;
}

.mf-page-hero__lead,
.mf-page-hero__lead p {
  max-width: 680px;
  margin: 0;
  color: var(--nd-muted);
  font-size: 18px;
  line-height: 1.6;
}

/* Chips (Themen, Formular) */
.mf-chip {
  position: relative;
  display: inline-flex;
  cursor: pointer;
}

.mf-chip input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.mf-chip span {
  display: inline-flex;
  align-items: center;
  min-height: 40px;
  padding: 0 16px;
  border: 1.5px solid var(--nd-line);
  border-radius: var(--mf-radius);
  background: #FFFFFF;
  color: var(--bx-navy-dark);
  font-size: 14.5px;
  font-weight: 800;
  text-decoration: none;
  transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.mf-chip:hover span {
  border-color: var(--bx-navy);
}

.mf-chip input:checked + span {
  background: var(--bx-navy);
  border-color: var(--bx-navy);
  color: #FFFFFF;
}

.mf-chip input:focus-visible + span {
  outline: 3px solid rgba(var(--bx-accent-rgb), 0.6);
  outline-offset: 2px;
}

.mf-chip--link {
  text-decoration: none !important;
}

/* ---------- Kontakt ---------- */
.mf-quick {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
  margin: 0 0 24px;
  padding: 0;
  list-style: none;
}

.mf-quick__card {
  display: flex;
  flex-direction: column;
  gap: 4px;
  height: 100%;
  padding: 22px;
  border-radius: var(--mf-radius);
  background: #FFFFFF;
  color: var(--mf-ink) !important;
  text-decoration: none !important;
  box-shadow: none;
  transition: transform 0.4s var(--mf-ease), box-shadow 0.4s var(--mf-ease);
}

.mf-quick__card:hover {
  transform: translateY(-4px);
  box-shadow: none;
}

.mf-quick__icon {
  display: inline-grid;
  place-items: center;
  width: 52px;
  height: 52px;
  margin-bottom: 8px;
  border-radius: var(--mf-radius);
  background: var(--bx-promo-bg);
  color: var(--bx-navy);
}

.mf-quick__label {
  color: var(--nd-muted);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.mf-quick__value {
  color: var(--bx-navy-dark);
  font-family: var(--mf-serif);
  font-size: 22px;
  font-weight: 700;
  overflow-wrap: anywhere;
}

.mf-quick__note {
  color: var(--nd-muted);
  font-size: 14px;
}

.mf-quick__card--accent {
  background: var(--bx-amber);
}

.mf-quick__card--accent .mf-quick__icon {
  background: rgba(255, 255, 255, 0.55);
  color: var(--bx-on-accent);
}

.mf-quick__card--accent .mf-quick__label,
.mf-quick__card--accent .mf-quick__value,
.mf-quick__card--accent .mf-quick__note {
  color: var(--bx-on-accent);
}

.mf-contact__grid {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(0, 0.85fr);
  gap: 20px;
  align-items: start;
}

.mf-formcard {
  position: relative;
  padding: clamp(22px, 3vw, 36px) !important;
  overflow: hidden;
  border: 0 !important;
  border-radius: var(--mf-radius);
  background: #FFFFFF !important;
  box-shadow: none;
}

.mf-formcard__leaf {
  position: absolute;
  top: -30px;
  right: -30px;
  width: 120px;
  height: 120px;
  border-radius: var(--mf-radius);
  background: var(--bx-promo-bg);
  transform: rotate(20deg);
  pointer-events: none;
}

.mf-formcard__title {
  position: relative;
  margin: 0 0 4px !important;
  font-size: clamp(24px, 2.4vw, 32px) !important;
}

.mf-formcard__sub {
  margin: 0 0 20px;
  color: var(--nd-muted);
  font-size: 14px;
}

.mf-form__topics {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 20px;
  padding: 0;
  border: 0;
}

.mf-form__topics legend {
  width: 100%;
  margin: 0 0 10px;
  padding: 0;
  color: var(--bx-navy-dark);
  font-weight: 800;
}

.mf-form__cols {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0 16px;
}

.mf-field {
  display: flex;
  flex-direction: column;
  gap: 6px;
  margin: 0 0 16px;
}

.mf-field label {
  color: var(--bx-navy-dark);
  font-size: 14px;
  font-weight: 800;
}

.mf-field input,
.mf-field textarea {
  width: 100%;
  min-height: 50px;
  padding: 12px 16px !important;
  border: 1.5px solid var(--nd-line) !important;
  border-radius: var(--mf-radius);
  background: var(--bx-bg) !important;
  color: var(--mf-ink) !important;
  font-family: var(--mf-sans);
  font-size: 15.5px;
  box-shadow: none;
  transition: border-color 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
}

.mf-field textarea {
  min-height: 150px;
  resize: vertical;
}

.mf-field input:focus,
.mf-field textarea:focus {
  border-color: var(--bx-navy) !important;
  background: #FFFFFF !important;
  box-shadow: none;
  outline: 0;
}

.mf-form__privacy {
  margin: 0 0 18px;
  color: var(--nd-muted);
  font-size: 13.5px;
}

.mf-form__privacy a {
  color: var(--bx-navy) !important;
  font-weight: 700;
}

.mf-form__submit {
  min-width: 220px;
}

.mf-visit {
  position: sticky;
  top: 100px;
  padding: clamp(22px, 3vw, 32px);
  border-radius: var(--mf-radius);
  background: var(--bx-navy);
  color: rgba(255, 255, 255, 0.85);
}

.mf-visit .mf-eyebrow {
  color: #FFFFFF;
}

.mf-visit__address {
  margin: 0 0 14px;
  font-style: normal;
  font-size: 16px;
  line-height: 1.6;
}

.mf-visit__address strong {
  color: #FFFFFF;
  font-family: var(--mf-serif);
  font-size: 20px;
}

.mf-visit__note {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  margin: 0 0 20px;
  font-size: 14.5px;
}

.mf-visit__note svg {
  flex: 0 0 auto;
  margin-top: 3px;
  color: var(--bx-amber);
}

.mf-visit__region {
  display: flex;
  align-items: center;
  gap: 16px;
  margin: 0 0 20px;
  padding: 14px;
  border-radius: var(--mf-radius);
  background: rgba(255, 255, 255, 0.07);
}

.mf-visit__region p {
  margin: 0;
  color: #FFFFFF;
  font-family: var(--mf-serif);
  font-size: 18px;
  line-height: 1.3;
}

.mf-visit__region .manu-em {
  color: var(--bx-amber);
}

.mf-visit__region small {
  display: block;
  margin-top: 2px;
  color: rgba(255, 255, 255, 0.7);
  font-family: var(--mf-sans);
  font-size: 13.5px;
}

.mf-radius--mini {
  flex: 0 0 96px;
  width: 96px;
  margin: 0;
}

.mf-radius--mini .mf-radius__pin {
  width: 34px;
  height: 34px;
}

.mf-link--light {
  color: #FFFFFF !important;
}

/* ---------- Über uns ---------- */
.mf-about__intro {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr);
  gap: clamp(28px, 5vw, 72px);
  align-items: center;
  padding-top: clamp(28px, 4vw, 56px);
}

.mf-about__content p {
  color: var(--nd-muted);
  line-height: 1.7;
}

.mf-about__content .mf-page-hero__lead {
  margin-bottom: 14px;
  color: var(--mf-ink);
}

.mf-about__facts {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin: 22px 0 0;
  padding: 0;
  list-style: none;
}

.mf-about__facts li {
  display: flex;
  flex-direction: column;
  padding: 14px 20px;
  border-radius: var(--mf-radius);
  background: #FFFFFF;
  box-shadow: none;
}

.mf-about__facts strong {
  color: var(--bx-navy-dark);
  font-family: var(--mf-serif);
  font-size: 22px;
}

.mf-about__facts span {
  color: var(--nd-muted);
  font-size: 13px;
  font-weight: 700;
}

.mf-about__media {
  position: relative;
}

.mf-about__arch {
  position: relative;
  aspect-ratio: 4 / 5;
  overflow: hidden;
  border-radius: var(--mf-radius);
  background: var(--bx-promo-bg);
  box-shadow: none;
}

.mf-about__arch img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.mf-about__empty {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  color: rgba(var(--bx-primary-rgb), 0.4);
  font-size: 13px;
}

.mf-journey {
  margin-top: var(--mf-section);
  padding: var(--mf-section) 0;
  background: var(--bx-promo-bg);
  border-radius: var(--mf-radius);
}

.mf-journey__list {
  position: relative;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 20px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.mf-journey__list::before {
  content: "";
  position: absolute;
  top: 34px;
  left: 12%;
  right: 12%;
  border-top: 2px dashed rgba(var(--bx-primary-rgb), 0.35);
}

.mf-journey__step {
  position: relative;
  text-align: center;
}

.mf-journey__ring {
  position: relative;
  z-index: 1;
  display: inline-grid;
  place-items: center;
  width: 70px;
  height: 70px;
  margin-bottom: 12px;
  border-radius: var(--mf-radius);
  background: repeating-radial-gradient(circle, #FFFFFF 0 6px, var(--nd-mist) 6px 8px);
  border: 2px solid var(--bx-navy);
  color: var(--bx-navy);
}

.mf-journey__no {
  display: block;
  color: var(--bx-accent-ink);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.1em;
}

.mf-journey__step h3 {
  margin: 4px 0 8px !important;
  font-size: 20px !important;
}

.mf-journey__step p {
  margin: 0 auto;
  max-width: 260px;
  color: var(--nd-muted);
  font-size: 15px;
  line-height: 1.55;
}

.mf-talk {
  margin-top: var(--mf-section);
}

.mf-talk__card {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 24px 40px;
  padding: clamp(24px, 4vw, 44px);
  border-radius: var(--mf-radius);
  background: var(--bx-navy);
  color: rgba(255, 255, 255, 0.85);
}

.mf-talk__card > div:first-child {
  flex: 1 1 420px;
}

.mf-talk__card .mf-eyebrow,
.mf-talk__card .mf-title {
  color: #FFFFFF !important;
}

.mf-talk__card .manu-em {
  color: var(--bx-amber);
}

.mf-talk__card p:not(.mf-eyebrow) {
  margin: 10px 0 0;
}

.mf-talk__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 18px;
}

.mf-talk__address {
  padding: 18px 22px;
  border-radius: var(--mf-radius);
  background: rgba(255, 255, 255, 0.07);
  font-style: normal;
  line-height: 1.6;
}

.mf-talk__address strong {
  color: #FFFFFF;
}

.mf-talk__address a {
  color: var(--bx-amber) !important;
}

/* ---------- Häufige Fragen ---------- */
.mf-faq__topics {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
  margin-top: 24px;
}

.mf-faq__body {
  max-width: 900px;
}

.mf-faq__group {
  margin: 0 0 clamp(28px, 4vw, 44px) !important;
  scroll-margin-top: 100px;
}

.mf-faq__group-title {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0 0 14px !important;
  font-size: clamp(24px, 2.4vw, 30px) !important;
}

.mf-faq__count {
  display: inline-grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border-radius: var(--mf-radius);
  background: var(--bx-amber);
  color: var(--bx-on-accent);
  font-family: var(--mf-sans);
  font-size: 15px;
  font-weight: 800;
}

.mf-faq__list {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin: 0 !important;
  border: 0 !important;
  background: none !important;
}

.mf-faq .faq-accordion-item {
  overflow: hidden;
  border: 0 !important;
  border-radius: var(--mf-radius);
  background: #FFFFFF !important;
  box-shadow: none;
  transition: box-shadow 0.3s ease;
}

.mf-faq .faq-accordion-item.is-open {
  box-shadow: none;
}

.mf-faq .faq-accordion-header {
  display: flex !important;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  width: 100%;
  padding: 18px 20px 18px 24px !important;
  border: 0 !important;
  background: transparent !important;
  color: var(--bx-navy-dark) !important;
  font-family: var(--mf-serif) !important;
  font-size: 18px !important;
  font-weight: 600 !important;
  text-align: left;
  cursor: pointer;
}

.mf-faq__plus {
  position: relative;
  flex: 0 0 36px;
  width: 36px;
  height: 36px;
  border-radius: var(--mf-radius);
  background: var(--bx-promo-bg);
  transition: background-color 0.3s ease, transform 0.4s var(--mf-ease);
}

.mf-faq__plus::before,
.mf-faq__plus::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 14px;
  height: 2px;
  border-radius: var(--mf-radius);
  background: var(--bx-navy);
  transform: translate(-50%, -50%);
}

.mf-faq__plus::after {
  transform: translate(-50%, -50%) rotate(90deg);
  transition: transform 0.3s var(--mf-ease);
}

.mf-faq .faq-accordion-item.is-open .mf-faq__plus {
  background: var(--bx-navy);
  transform: rotate(180deg);
}

.mf-faq .faq-accordion-item.is-open .mf-faq__plus::before,
.mf-faq .faq-accordion-item.is-open .mf-faq__plus::after {
  background: #FFFFFF;
}

.mf-faq .faq-accordion-item.is-open .mf-faq__plus::after {
  transform: translate(-50%, -50%) rotate(0deg);
}

.mf-faq .faq-accordion-content {
  padding: 0 24px !important;
  border: 0 !important;
  background: transparent !important;
}

.mf-faq .faq-accordion-item.is-open .faq-accordion-content {
  padding-bottom: 20px !important;
}

.mf-faq .faq-accordion-content p {
  margin: 0;
  color: var(--nd-muted);
  font-size: 16px;
  line-height: 1.65;
}

.mf-faq__more {
  margin-top: clamp(16px, 3vw, 32px);
}

@media (max-width: 991px) {
  .mf-contact__grid,
  .mf-about__intro {
    grid-template-columns: minmax(0, 1fr);
  }
  .mf-visit {
    position: static;
  }
  .mf-about__media {
    max-width: 440px;
  }
  .mf-journey__list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    row-gap: 32px;
  }
  .mf-journey__list::before {
    display: none;
  }
}

@media (max-width: 720px) {
  .mf-quick {
    grid-template-columns: minmax(0, 1fr);
  }
  .mf-form__cols {
    grid-template-columns: minmax(0, 1fr);
  }
  .mf-form__submit {
    width: 100%;
  }
}

@media (max-width: 520px) {
  .mf-journey__list {
    grid-template-columns: minmax(0, 1fr);
  }
  .mf-journey {
    border-radius: var(--mf-radius);
  }
  .mf-faq .faq-accordion-header {
    padding: 16px 16px 16px 18px !important;
    font-size: 16.5px !important;
  }
  .mf-talk__actions .mf-btn {
    width: 100%;
  }
}

.mf-faq .manu-faq-group h2.mf-faq__group-title {
  padding: 0 !important;
  border: 0 !important;
  color: var(--bx-navy-dark) !important;
  font-family: var(--mf-serif) !important;
  font-size: clamp(24px, 2.4vw, 30px) !important;
  font-weight: 600 !important;
  letter-spacing: -0.01em !important;
  text-transform: none !important;
}

.mf-faq .manu-faq-group h2.mf-faq__group-title::after,
.mf-faq .manu-faq-group h2.mf-faq__group-title::before {
  display: none !important;
}

@media (max-width: 720px) {
  .mf-about__arch { aspect-ratio: 4 / 3.4 !important; max-height: 340px; }
  .mf-about__facts { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
}
@media (max-width: 720px) {
  .mf-about__facts li strong { font-size: 18px !important; line-height: 1.25 !important; }
}

/* -------------------------------------------------------------
   WhatsApp-Button: Foto + Sprechblase (v1.3.0)
   ------------------------------------------------------------- */
.manu-wa-bubble.mf-wa {
  --mf-wa-color: #D9480F;
  right: 24px;
  bottom: 24px;
  width: auto;
  height: auto;
  padding: 0;
  border-radius: 0;
  background: none;
  box-shadow: none;
  display: flex;
  align-items: center;
  gap: 12px;
  text-decoration: none;
}

.manu-wa-bubble.mf-wa:hover,
.manu-wa-bubble.mf-wa:focus-visible {
  transform: translateY(-2px);
}

.mf-wa__avatar {
  position: relative;
  flex: 0 0 auto;
  width: 56px;
  height: 56px;
  border-radius: 16px;
  background: #25D366;
  color: #FFFFFF;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 8px 22px rgba(17, 17, 17, 0.2);
}

.mf-wa__avatar img {
  width: 100%;
  height: 100%;
  border-radius: 16px;
  object-fit: cover;
  display: block;
}

.mf-wa__badge {
  position: absolute;
  right: -5px;
  bottom: -5px;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: #25D366;
  color: #FFFFFF;
  border: 2px solid #FFFFFF;
  display: flex;
  align-items: center;
  justify-content: center;
}

.mf-wa__pill {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 12px 20px 12px 16px;
  border-radius: 14px;
  background: var(--mf-wa-color);
  color: #FFFFFF;
  font-family: var(--mf-sans);
  font-size: 15px;
  font-weight: 700;
  line-height: 1.2;
  white-space: nowrap;
  box-shadow: 0 8px 22px rgba(17, 17, 17, 0.18);
  transition: filter 0.2s ease;
}

.manu-wa-bubble.mf-wa:hover .mf-wa__pill {
  filter: brightness(1.08);
}

.mf-wa__dot {
  position: relative;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #FFFFFF;
  flex: 0 0 auto;
}

@media (prefers-reduced-motion: no-preference) {
  .mf-wa__dot::after {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 50%;
    background: #FFFFFF;
    animation: mf-wa-ping 2.2s ease-out infinite;
  }
  .mf-wa__pill {
    animation: mf-wa-in 0.6s var(--mf-ease) 1.2s both;
  }
}

@keyframes mf-wa-ping {
  0% { transform: scale(1); opacity: 0.7; }
  80%, 100% { transform: scale(2.6); opacity: 0; }
}

@keyframes mf-wa-in {
  from { opacity: 0; transform: translateX(10px); }
  to { opacity: 1; transform: none; }
}

/* Flèche « retour en haut » au-dessus du bouton */
.manu-back-to-top {
  bottom: 96px !important;
}

@media (max-width: 768px) {
  .manu-wa-bubble.mf-wa {
    right: 14px;
    bottom: 14px;
    gap: 8px;
    width: auto;
    height: auto;
  }
  .mf-wa__avatar,
  .mf-wa__avatar img {
    width: 50px;
    height: 50px;
    border-radius: 14px;
  }
  .mf-wa__pill {
    font-size: 14px;
    padding: 10px 16px 10px 13px;
  }
  .manu-back-to-top {
    bottom: 80px !important;
  }
}

@media (max-width: 340px) {
  .mf-wa__pill {
    display: none;
  }
}

/* =============================================================
   MANUFAKTUR: REDAKTIONELLE GESTALTUNG
   Papier, Tinte, feine Linien. Keine Schatten, keine Rundungen.
   ============================================================= */
body {
  font-size: 16.5px;
  line-height: 1.6;
}

h1, h2, h3, h4,
.product_title,
.shop-hero-title,
.mf-title {
  font-weight: 400 !important;
  letter-spacing: -0.015em !important;
  color: var(--bx-navy-dark);
}

.mf-title {
  font-size: clamp(32px, 4.2vw, 60px);
  line-height: 1.06;
}

.manu-em,
em.manu-em {
  font-weight: 400;
  color: var(--bx-amber);
}

.mf-eyebrow {
  margin-bottom: 16px;
  color: var(--bx-navy-dark);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.16em;
}

.mf-eyebrow::before {
  display: none;
}

.mf-wrap {
  max-width: 1400px;
}

/* Knöpfe: eckig, ruhig, ohne Sprung */
.mf-btn {
  min-height: 50px;
  padding: 0 26px;
  border-width: 1px;
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.03em;
}

.mf-btn:hover {
  transform: none;
}

.mf-btn--primary {
  background: var(--bx-navy-dark);
  border-color: var(--bx-navy-dark);
  color: #fff !important;
}

.mf-btn--primary:hover {
  background: var(--bx-amber);
  border-color: var(--bx-amber);
  color: var(--bx-on-accent) !important;
}

.mf-btn--outline {
  background: transparent;
  border-color: var(--bx-navy-dark);
  color: var(--bx-navy-dark) !important;
}

.mf-btn--outline:hover {
  background: var(--bx-navy-dark);
  color: #fff !important;
}

.mf-section {
  padding: var(--mf-section) 0;
}

.mf-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 32px;
  margin-bottom: clamp(30px, 4vw, 56px);
}

.mf-head--center {
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.mf-head__link,
.mf-link {
  display: inline-flex;
  flex: none;
  align-items: center;
  gap: 9px;
  padding-bottom: 3px;
  border-bottom: 1px solid currentColor;
  color: var(--bx-navy-dark) !important;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none !important;
  transition: color 0.2s ease;
}

.mf-head__link:hover,
.mf-link:hover {
  color: var(--bx-amber) !important;
}

.mf-head__desc {
  max-width: 420px;
  margin: 0;
  color: var(--nd-muted);
  font-size: 15.5px;
}

.mf-placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  background: var(--nd-mist);
  color: var(--nd-greige);
  font-family: var(--mf-serif);
  font-size: clamp(64px, 9vw, 140px);
  line-height: 1;
}

/* ---------- Regale und Produktraster ---------- */
.mf-shelf {
  padding: clamp(42px, 5vw, 72px) 0;
  border-top: 1px solid var(--nd-line);
  background: transparent;
}

.mf-shelf--tint {
  background: transparent;
}

.mf-shelf .mf-title {
  font-size: clamp(30px, 3.2vw, 46px);
}

.mf-grid,
.manu-product-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: clamp(36px, 4vw, 56px) clamp(16px, 2vw, 28px) !important;
}

/* ---------- Produktkarte ---------- */
.mf-card {
  display: flex;
  flex-direction: column;
  min-width: 0;
  background: transparent;
  border: 0;
  box-shadow: none;
}

.mf-card__media {
  position: relative;
  display: block;
  aspect-ratio: 4 / 5;
  overflow: hidden;
  background: var(--nd-mist);
}

.mf-card__media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.9s var(--mf-ease);
}

.mf-card:hover .mf-card__media img {
  transform: scale(1.03);
}

.mf-card__tag {
  position: absolute;
  top: 0;
  left: 0;
  padding: 6px 11px;
  background: var(--bx-amber);
  color: var(--bx-on-accent);
  font-size: 11.5px;
  font-weight: 600;
  letter-spacing: 0.06em;
}

.mf-card__tag--muted {
  background: var(--bx-bg);
  color: var(--nd-muted);
}

.mf-card__body {
  display: flex;
  flex: 1 1 auto;
  flex-direction: column;
  padding-top: 15px;
}

.mf-card__cat {
  margin: 0 0 7px;
  color: var(--nd-muted);
  font-size: 11.5px;
  font-weight: 500;
  letter-spacing: 0.13em;
  text-transform: uppercase;
}

.mf-card__title {
  margin: 0 0 8px;
  font-size: clamp(19px, 1.55vw, 23px) !important;
  line-height: 1.2;
}

.mf-card__title a {
  color: var(--bx-navy-dark);
  text-decoration: none;
  transition: color 0.2s ease;
}

.mf-card__title a:hover {
  color: var(--bx-amber);
}

.mf-card__specs {
  margin: 0 0 12px;
  color: var(--nd-muted);
  font-size: 13.5px;
  line-height: 1.45;
}

.mf-card__foot {
  margin-top: auto;
  padding-top: 11px;
  border-top: 1px solid var(--nd-line);
  font-size: 12.5px;
  color: var(--nd-muted);
}

.mf-card__price {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 8px;
  margin: 0 0 3px;
  color: var(--bx-navy-dark);
  font-family: var(--mf-serif);
  font-size: 21px;
}

.mf-card__price ins {
  color: var(--bx-amber);
  text-decoration: none;
}

.mf-card__price del {
  color: var(--nd-muted);
  font-size: 15px;
}

.mf-card__foot > * {
  margin-top: 0;
  margin-bottom: 2px;
}

.mf-card__add {
  display: inline-flex;
  align-self: flex-start;
  align-items: center;
  gap: 8px;
  margin-top: 12px;
  padding: 0 0 2px;
  background: transparent !important;
  border: 0;
  border-bottom: 1px solid var(--bx-navy-dark);
  border-radius: 0;
  color: var(--bx-navy-dark) !important;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none !important;
  transition: color 0.2s ease, border-color 0.2s ease;
}

.mf-card__add:hover {
  border-color: var(--bx-amber);
  color: var(--bx-amber) !important;
}

.mf-card__add.loading {
  opacity: 0.55;
}

.mf-card .added_to_cart {
  display: inline-block;
  margin-top: 8px;
  color: var(--bx-amber);
  font-size: 13.5px;
}

/* ---------- Einheitliche Felder in Inhalten und Shop ---------- */
.site-main input[type="text"],
.site-main input[type="email"],
.site-main input[type="tel"],
.site-main input[type="number"],
.site-main input[type="password"],
.site-main textarea,
.site-main select {
  border-radius: var(--mf-radius);
}

/* ---------- Innenseiten: ohne Karten, mit Linien ---------- */
.mf-about__arch {
  aspect-ratio: 4 / 5;
  overflow: hidden;
  background: var(--nd-mist);
}

.mf-about__arch img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.mf-about__empty {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  color: var(--nd-muted);
}

.mf-journey__no {
  color: var(--bx-amber);
  font-family: var(--mf-serif);
  font-size: 30px;
  background: transparent;
}

.mf-talk__card,
.mf-formcard,
.mf-visit,
.mf-faq,
.mf-buybox,
.mf-delivery,
.mf-know {
  box-shadow: none;
}

.mf-talk__card {
  background: var(--nd-mist);
  color: var(--bx-navy-dark);
}

.mf-talk__card .mf-title,
.mf-talk__card .mf-eyebrow,
.mf-talk__card p {
  color: var(--bx-navy-dark);
}

/* ---------- Vorrang vor den Grundstilen ---------- */
.mf-card a.mf-card__add {
  min-height: 0 !important;
  width: auto !important;
  margin-left: 0 !important;
  padding: 0 0 2px !important;
  border: 0 !important;
  border-bottom: 1px solid var(--bx-navy-dark) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  transform: none !important;
}

.mf-card a.mf-card__add:hover {
  border-bottom-color: var(--bx-amber) !important;
}

/* ---------- Produktseite: Katalogblatt statt Karten ---------- */
.mf-pdp .mf-pdp__grid {
  gap: clamp(28px, 5vw, 84px) !important;
}

.mf-pdp .mf-pdp__gallery {
  padding: 0 !important;
  background: var(--nd-mist) !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.mf-pdp__meta {
  gap: 14px !important;
  margin-bottom: 16px;
  font-size: 12.5px;
}

.mf-pdp__meta .mf-pill {
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  color: var(--bx-navy-dark) !important;
  font-size: 11.5px !important;
  font-weight: 600 !important;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

.mf-pdp__meta .mf-pill svg {
  display: none;
}

.mf-pdp__meta .mf-stock {
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  color: var(--color-stock) !important;
  font-size: 13px !important;
  font-weight: 500 !important;
}

.mf-pdp .mf-pdp__title {
  margin: 0 0 14px !important;
  font-size: clamp(36px, 4.2vw, 62px) !important;
  font-weight: 400 !important;
  line-height: 1.04 !important;
  letter-spacing: -0.025em !important;
}

.mf-pdp__lead p {
  color: var(--nd-muted);
  font-size: 17px;
}

/* Eckdaten als Liste zwischen Linien */
.mf-pdp .mf-slices,
.mf-pdp .manu-quick-specs.mf-slices {
  display: block !important;
  margin: 22px 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-top: 1px solid var(--bx-navy-dark) !important;
}

.mf-pdp .mf-slice,
.mf-pdp .manu-quick-specs .mf-slice {
  display: flex !important;
  flex-direction: row-reverse !important;
  align-items: baseline !important;
  justify-content: space-between !important;
  gap: 18px !important;
  width: auto !important;
  height: auto !important;
  aspect-ratio: auto !important;
  padding: 10px 0 !important;
  background: none !important;
  border: 0 !important;
  border-bottom: 1px solid var(--nd-line) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  text-align: left !important;
}

.mf-pdp .mf-slice::before,
.mf-pdp .mf-slice::after {
  display: none !important;
}

.mf-pdp .mf-slice dt {
  margin: 0 !important;
  color: var(--nd-muted) !important;
  font-family: var(--mf-sans) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

.mf-pdp .mf-slice dd {
  margin: 0 !important;
  color: var(--bx-navy-dark) !important;
  font-family: var(--mf-serif) !important;
  font-size: 18px !important;
  font-weight: 400 !important;
  line-height: 1.25 !important;
  text-align: right;
}

/* Kaufbereich ohne Kasten */
.mf-buybox {
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.mf-pdp .mf-buybox__price {
  margin-bottom: 18px !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
}

.mf-pdp .mf-buybox__price .single-price-current,
.mf-pdp .mf-buybox__price .single-price-current * {
  color: var(--bx-navy-dark) !important;
  font-family: var(--mf-serif) !important;
  font-size: clamp(32px, 3.2vw, 44px) !important;
  font-weight: 400 !important;
  letter-spacing: -0.02em;
  text-decoration: none;
}

.mf-pdp .mf-buybox__price .single-price-current ins,
.mf-pdp .mf-buybox__price .single-price-current ins * {
  color: var(--bx-amber) !important;
}

.mf-pdp .single-price-discount-pill {
  padding: 0 !important;
  background: transparent !important;
  color: var(--bx-amber) !important;
  font-weight: 600;
}

.mf-pdp form.cart {
  gap: 8px !important;
}

.mf-pdp form.cart .quantity input.qty {
  min-height: 52px;
  background: transparent !important;
  border: 1px solid var(--bx-navy-dark) !important;
  border-radius: var(--mf-radius) !important;
  box-shadow: none !important;
}

.mf-pdp .single_add_to_cart_button,
.mf-pdp .manu-buy-now-button {
  min-height: 52px !important;
  border-radius: var(--mf-radius) !important;
  box-shadow: none !important;
  font-family: var(--mf-sans) !important;
  font-size: 14.5px !important;
  font-weight: 600 !important;
  letter-spacing: 0.02em;
  text-transform: none !important;
  transform: none !important;
}

.mf-pdp .single_add_to_cart_button {
  background: var(--bx-navy-dark) !important;
  border: 1px solid var(--bx-navy-dark) !important;
  color: #fff !important;
}

.mf-pdp .single_add_to_cart_button:hover {
  background: var(--bx-amber) !important;
  border-color: var(--bx-amber) !important;
}

.mf-pdp .manu-buy-now-button {
  background: transparent !important;
  border: 1px solid var(--bx-navy-dark) !important;
  color: var(--bx-navy-dark) !important;
}

.mf-pdp .manu-buy-now-button:hover {
  background: var(--bx-navy-dark) !important;
  color: #fff !important;
}

/* Rechner, Lieferkarte, WhatsApp */
.mf-pdp .manu-calc {
  margin-top: 22px !important;
  background: transparent !important;
  border: 0 !important;
  border-top: 1px solid var(--nd-line) !important;
  border-bottom: 1px solid var(--nd-line) !important;
  border-radius: 0 !important;
}

.mf-pdp .manu-calc summary {
  padding: 14px 0 !important;
  background: transparent !important;
}

.mf-pdp .manu-calc__no {
  display: none !important;
}

.mf-pdp .manu-calc__result {
  background: var(--nd-mist) !important;
}

.mf-pdp__aside .mf-delivery,
.mf-delivery,
.mf-know {
  padding: 18px 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-bottom: 1px solid var(--nd-line) !important;
  border-radius: 0 !important;
}

.mf-pdp .btn-whatsapp-inquiry {
  min-height: 48px !important;
  background: transparent !important;
  border: 1px solid var(--nd-greige) !important;
  border-radius: var(--mf-radius) !important;
  box-shadow: none !important;
  color: var(--bx-navy-dark) !important;
  font-weight: 500 !important;
}

.mf-pdp .btn-whatsapp-inquiry:hover {
  border-color: var(--bx-navy-dark) !important;
  background: transparent !important;
}

/* Reiter unter dem Produkt */
.mf-pdp .woocommerce-tabs {
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.mf-pdp .woocommerce-tabs ul.tabs {
  display: flex !important;
  gap: clamp(18px, 3vw, 40px) !important;
  margin: 0 0 26px !important;
  padding: 0 !important;
  border-top: 1px solid var(--bx-navy-dark) !important;
  border-bottom: 1px solid var(--nd-line) !important;
  background: transparent !important;
}

.mf-pdp .woocommerce-tabs ul.tabs li {
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
}

.mf-pdp .woocommerce-tabs ul.tabs li a {
  padding: 14px 0 !important;
  color: var(--nd-muted) !important;
  font-size: 14px !important;
  font-weight: 500 !important;
}

.mf-pdp .woocommerce-tabs ul.tabs li.active a {
  color: var(--bx-amber) !important;
  box-shadow: inset 0 -1px 0 var(--bx-amber);
  background: transparent !important;
}

.mf-pdp .woocommerce-tabs .panel {
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

.mf-pdp .related > h2,
.mf-pdp .upsells > h2 {
  font-size: clamp(28px, 3vw, 42px) !important;
  font-weight: 400 !important;
}

/* ---------- Inhaltsseiten: Linien statt Karten ---------- */
.mf-page-hero {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  color: var(--bx-navy-dark) !important;
}

.mf-page-hero::before,
.mf-page-hero::after {
  display: none !important;
}

.mf-page-hero h1,
.mf-page-hero p,
.mf-page-hero a,
.mf-page-hero span:not(.manu-em) {
  color: var(--bx-navy-dark) !important;
}

.mf-page-hero h1 {
  font-size: clamp(44px, 7vw, 100px) !important;
  font-weight: 400 !important;
  line-height: 1 !important;
  letter-spacing: -0.03em !important;
}

.mf-quick a,
.mf-quick > *,
.mf-formcard,
.mf-visit,
.mf-journey__step,
.mf-faq details,
.mf-talk__card {
  border-radius: 0 !important;
  box-shadow: none !important;
}

.mf-formcard,
.mf-visit {
  background: transparent !important;
  border: 0 !important;
  border-top: 1px solid var(--bx-navy-dark) !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.mf-formcard input,
.mf-formcard textarea,
.mf-formcard select {
  background: transparent !important;
  border: 0 !important;
  border-bottom: 1px solid var(--bx-navy-dark) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.mf-formcard input[type="checkbox"] {
  border: 1px solid var(--bx-navy-dark) !important;
}

.mf-journey {
  background: transparent !important;
}

.mf-journey__step {
  background: transparent !important;
  border: 0 !important;
  border-top: 1px solid var(--bx-navy-dark) !important;
  text-align: left !important;
  padding: 16px 0 0 !important;
}

.mf-journey__list::before,
.mf-journey__list::after,
.mf-journey__step::before,
.mf-journey__step::after {
  display: none !important;
}

@media (max-width: 900px) {
  .mf-pdp .mf-pdp__grid {
    gap: 22px !important;
  }
  .mf-pdp .woocommerce-tabs ul.tabs {
    overflow-x: auto;
    flex-wrap: nowrap !important;
  }
  .mf-pdp .woocommerce-tabs ul.tabs li {
    flex: none;
  }
}

body .mf-pdp form.cart button.single_add_to_cart_button.button,
body .mf-pdp form.cart .manu-buy-now-button,
body .mf-pdp form.cart a.manu-buy-now-button {
  border-radius: var(--mf-radius) !important;
  box-shadow: none !important;
}

body .mf-pdp form.cart button.single_add_to_cart_button.button {
  background: var(--bx-amber) !important;
  border: 1px solid var(--bx-amber) !important;
  color: var(--bx-on-accent) !important;
}

body .mf-pdp form.cart button.single_add_to_cart_button.button:hover {
  background: var(--bx-amber-dark) !important;
  border-color: var(--bx-amber-dark) !important;
}

body .mf-pdp form.cart .manu-buy-now-button {
  background: transparent !important;
  border: 1px solid var(--bx-navy-dark) !important;
  color: var(--bx-navy-dark) !important;
}

body .mf-pdp form.cart .manu-buy-now-button:hover {
  background: var(--bx-navy-dark) !important;
  color: #fff !important;
}

.mf-pdp .mf-slice dt,
.mf-pdp .mf-slice dd {
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

/* Kontaktwege und Eckzahlen ohne Flächen */
.mf-about__facts li,
.mf-about__stats li,
.mf-about__media ~ * li {
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.mf-quick {
  gap: 0 !important;
  border-top: 1px solid var(--bx-navy-dark);
  border-bottom: 1px solid var(--nd-line);
}

.mf-quick > *,
.mf-quick > *:hover {
  background: transparent !important;
  border: 0 !important;
  border-left: 1px solid var(--nd-line) !important;
  color: var(--bx-navy-dark) !important;
  transform: none !important;
}

.mf-quick > *:first-child {
  border-left: 0 !important;
}

.mf-quick > * *,
.mf-quick > *:hover * {
  color: var(--bx-navy-dark) !important;
}

.mf-quick > *:hover strong {
  color: var(--bx-amber) !important;
}

.mf-quick svg {
  display: none !important;
}

.mf-quick [class*="icon"],
.mf-quick [class*="__ic"] {
  display: none !important;
}

/* ---------- Bestellstrecke: Papier und Linien statt dunkler Karte ---------- */
.mf-flow::before {
  display: none !important;
}

.mf-trail__ring,
.mf-trail__step.is-done .mf-trail__ring,
.mf-trail__step.is-current .mf-trail__ring {
  width: 34px !important;
  height: 34px !important;
  background: transparent !important;
  border: 1px solid var(--nd-greige) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  color: var(--nd-muted) !important;
  font-family: var(--mf-serif);
}

.mf-trail__step.is-done .mf-trail__ring {
  border-color: var(--bx-navy-dark) !important;
  color: var(--bx-navy-dark) !important;
}

.mf-trail__step.is-current .mf-trail__ring {
  background: var(--bx-navy-dark) !important;
  border-color: var(--bx-navy-dark) !important;
  color: #fff !important;
}

.mf-trail__step + .mf-trail__step::before {
  border-top-style: solid !important;
  border-top-width: 1px !important;
}

.mf-flow-page .wc-block-components-sidebar-layout table.wc-block-cart-items tbody tr.wc-block-cart-items__row,
.mf-flow-page .wc-block-components-sidebar-layout .wc-block-components-main > *,
.mf-flow-page .wc-block-components-checkout-step,
.mf-flow-page .wc-block-checkout__form > * {
  background: transparent !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.mf-flow-page .wc-block-components-sidebar-layout table.wc-block-cart-items tbody tr.wc-block-cart-items__row {
  border: 0 !important;
  border-bottom: 1px solid var(--nd-line) !important;
}

.mf-flow-page .wc-block-components-checkout-step {
  border: 0 !important;
  border-top: 1px solid var(--bx-navy-dark) !important;
  padding: 18px 0 8px !important;
}

.mf-flow-page .wc-block-components-title,
.mf-flow-page .wc-block-components-checkout-step__title {
  font-size: clamp(24px, 2.2vw, 30px) !important;
  font-weight: 400 !important;
}

.mf-flow-page .wc-block-components-sidebar-layout .wp-block-woocommerce-cart-totals-block,
.mf-flow-page .wc-block-components-sidebar-layout .wp-block-woocommerce-checkout-totals-block,
.woocommerce-cart .cart_totals {
  padding: 20px 0 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-top: 1px solid var(--bx-navy-dark) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  color: var(--bx-navy-dark) !important;
  mask: none !important;
  -webkit-mask: none !important;
  clip-path: none !important;
}

.mf-flow-page .wp-block-woocommerce-cart-totals-block::before,
.mf-flow-page .wp-block-woocommerce-checkout-totals-block::before,
.woocommerce-cart .cart_totals::before,
.mf-flow-page .wp-block-woocommerce-cart-totals-block::after,
.mf-flow-page .wp-block-woocommerce-checkout-totals-block::after {
  display: none !important;
  content: none !important;
}

.mf-flow-page .wp-block-woocommerce-cart-totals-block *:not(.wc-block-cart__submit-button):not(.wc-block-cart__submit-button *):not(.wc-block-components-order-summary-item__quantity):not(.wc-block-components-order-summary-item__quantity *):not(.mf-btn):not(.mf-btn *),
.mf-flow-page .wp-block-woocommerce-checkout-totals-block *:not(.wc-block-components-order-summary-item__quantity):not(.wc-block-components-order-summary-item__quantity *) {
  color: var(--bx-navy-dark) !important;
  border-color: var(--nd-line) !important;
  background-color: transparent;
}

.mf-flow-page .wc-block-components-totals-footer-item .wc-block-components-totals-item__value,
.mf-flow-page .wc-block-components-totals-footer-item .wc-block-components-totals-item__value * {
  font-family: var(--mf-serif) !important;
  font-size: 26px !important;
  font-weight: 400 !important;
}

.mf-flow-page .wc-block-cart__submit-button,
.mf-flow-page .wc-block-components-checkout-place-order-button,
.mf-flow-page a.wc-block-cart__submit-button {
  min-height: 54px !important;
  background: var(--bx-amber) !important;
  border: 1px solid var(--bx-amber) !important;
  border-radius: var(--mf-radius) !important;
  box-shadow: none !important;
  color: var(--bx-on-accent) !important;
  font-family: var(--mf-sans) !important;
  font-weight: 600 !important;
  text-transform: none !important;
  transform: none !important;
}

.mf-flow-page .wc-block-cart__submit-button *,
.mf-flow-page .wc-block-components-checkout-place-order-button * {
  color: var(--bx-on-accent) !important;
}

.mf-flow-page .wc-block-components-text-input input,
.mf-flow-page .wc-blocks-components-select__select,
.mf-flow-page .wc-block-components-textarea {
  background: transparent !important;
  border-color: var(--nd-greige) !important;
  border-radius: var(--mf-radius) !important;
  box-shadow: none !important;
}

.mf-flow-page .wc-block-components-text-input input:focus,
.mf-flow-page .wc-blocks-components-select__select:focus {
  border-color: var(--bx-navy-dark) !important;
}

.mf-know__icon {
  display: none !important;
}

.mf-flow-page .wc-block-components-sidebar-layout .wc-block-components-main {
  padding-left: 0 !important;
  border: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
}

/* Korrekturen Produktseite */
.mf-pdp .mf-slices,
.mf-pdp .manu-quick-specs.mf-slices {
  border-radius: 0 !important;
}

body .mf-pdp form.cart .quantity input.qty,
body .mf-pdp form.cart input.qty {
  border-radius: var(--mf-radius) !important;
}

body .mf-pdp .manu-buy-now-button,
body .mf-pdp a.manu-buy-now-button {
  background: transparent !important;
  border: 1px solid var(--bx-navy-dark) !important;
  border-radius: var(--mf-radius) !important;
  box-shadow: none !important;
  color: var(--bx-navy-dark) !important;
}

body .mf-pdp .manu-buy-now-button *,
body .mf-pdp a.manu-buy-now-button * {
  color: inherit !important;
}

body .mf-pdp .manu-buy-now-button:hover,
body .mf-pdp a.manu-buy-now-button:hover {
  background: var(--bx-navy-dark) !important;
  color: #fff !important;
}

@media (max-width: 900px) {
  body .mf-pdp form.cart button.single_add_to_cart_button.button,
  body .mf-pdp form.cart .quantity {
    flex: 0 0 auto !important;
  }
  body .mf-pdp form.cart button.single_add_to_cart_button.button {
    height: 52px !important;
  }
}

/* ---------- Rechtstexte: ruhige Textseite ---------- */
.mk-legal__hero {
  padding: clamp(30px, 5vw, 64px) 0 clamp(20px, 3vw, 36px) !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  color: var(--bx-navy-dark) !important;
}

.mk-legal__hero::before,
.mk-legal__hero::after {
  display: none !important;
}

.mk-legal__hero .mk-legal__kicker {
  color: var(--nd-muted) !important;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.14em;
}

.mk-legal__hero .mk-legal__title {
  color: var(--bx-navy-dark) !important;
  font-size: clamp(38px, 6.4vw, 88px) !important;
  font-weight: 400 !important;
  line-height: 1.02 !important;
  letter-spacing: -0.03em !important;
  overflow-wrap: anywhere;
  hyphens: auto;
}

.mk-legal__hero .mk-legal__date {
  color: var(--nd-muted) !important;
}

.mk-legal__toc,
.mk-legal__pages,
.mk-legal-summary,
.mk-legal-help,
.mk-legal-card,
.mk-legal-form,
.mk-legal__side > * {
  background: transparent !important;
  border: 0 !important;
  border-top: 1px solid var(--bx-navy-dark) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.mk-legal-form {
  border: 1px solid var(--nd-greige) !important;
  padding: 18px !important;
}

.mk-legal-summary li {
  font-weight: 400 !important;
}

.mk-legal-no {
  background: transparent !important;
  border-radius: 0 !important;
  color: var(--bx-amber) !important;
  font-family: var(--mf-serif);
  font-weight: 400 !important;
}

.mk-legal__body h2 {
  font-size: clamp(25px, 2.5vw, 34px) !important;
  font-weight: 400 !important;
}

/* ---------- Häufige Fragen: Liste mit Linien ---------- */
.mf-page-hero--center {
  text-align: left !important;
}

.mf-page-hero--center .mf-page-hero__lead {
  margin-left: 0 !important;
  max-width: 640px;
}

.mf-faq__topics {
  justify-content: flex-start !important;
  gap: 8px 22px !important;
}

.mf-chip,
.mf-chip--link {
  padding: 0 0 2px !important;
  background: transparent !important;
  border: 0 !important;
  border-bottom: 1px solid currentColor !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  color: var(--bx-navy-dark) !important;
  font-weight: 500 !important;
}

.mf-chip--link:hover {
  color: var(--bx-amber) !important;
}

.mf-faq__count {
  display: none !important;
}

.mf-faq .manu-faq-group h2.mf-faq__group-title {
  font-size: clamp(28px, 3vw, 40px) !important;
  font-weight: 400 !important;
}

.mf-faq .manu-faq-group h2.mf-faq__group-title::before {
  display: none !important;
}

.mf-faq__list {
  gap: 0 !important;
  border-top: 1px solid var(--bx-navy-dark);
}

.mf-faq .faq-accordion-item,
.mf-faq .faq-accordion-item.is-open {
  background: transparent !important;
  border: 0 !important;
  border-bottom: 1px solid var(--nd-line) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

.mf-faq .faq-accordion-header {
  padding: 18px 0 !important;
  background: transparent !important;
}

.mf-faq .faq-question-title {
  font-family: var(--mf-serif) !important;
  font-size: clamp(18px, 1.7vw, 22px) !important;
  font-weight: 400 !important;
}

.mf-faq .faq-accordion-content {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.mf-faq__plus,
.mf-faq .faq-accordion-item.is-open .mf-faq__plus {
  background: transparent !important;
  border: 0 !important;
  color: var(--bx-navy-dark) !important;
}

.mf-faq .mf-faq__topics a.mf-chip,
.mf-faq .mf-faq__topics a.mf-chip:hover {
  min-height: 0 !important;
  background: transparent !important;
  transform: none !important;
}

.manu-order-status-box.order-success {
  padding: 26px 0 !important;
  background: transparent !important;
  border: 0 !important;
  border-top: 1px solid var(--bx-navy-dark) !important;
  border-radius: 0 !important;
  text-align: left !important;
}

.manu-order-status-box .manu-order-check {
  width: 40px !important;
  height: 40px !important;
  margin: 0 0 14px !important;
  background: var(--bx-navy-dark) !important;
  border-radius: 0 !important;
  color: #fff !important;
}

.manu-order-status-box h1 {
  font-weight: 400 !important;
}

/* ---------- Kontakt: lesbar auf Papier ---------- */
.mf-quick .mf-quick__card,
.mf-quick .mf-quick__card--accent,
.mf-quick .mf-quick__card:hover,
.mf-quick .mf-quick__card--accent:hover {
  background: transparent !important;
  border-radius: 0 !important;
}

.mf-quick .mf-quick__label,
.mf-quick .mf-quick__note,
.mf-quick .mf-quick__card--accent .mf-quick__label,
.mf-quick .mf-quick__card--accent .mf-quick__note {
  color: var(--nd-muted) !important;
}

.mf-quick .mf-quick__value,
.mf-quick .mf-quick__card--accent .mf-quick__value {
  color: var(--bx-navy-dark) !important;
  font-family: var(--mf-serif) !important;
  font-size: clamp(20px, 1.9vw, 26px) !important;
  font-weight: 400 !important;
  overflow-wrap: anywhere;
}

.mf-quick .mf-quick__card:hover .mf-quick__value {
  color: var(--bx-amber) !important;
}

aside.mf-visit,
aside.mf-visit * {
  color: var(--bx-navy-dark) !important;
}

aside.mf-visit .mf-visit__note,
aside.mf-visit small {
  color: var(--nd-muted) !important;
}

aside.mf-visit .mf-visit__region {
  background: transparent !important;
  border: 0 !important;
  border-top: 1px solid var(--nd-line) !important;
  border-radius: 0 !important;
  padding-left: 0 !important;
}

aside.mf-visit a,
aside.mf-visit .mf-link {
  color: var(--bx-navy-dark) !important;
}

.mf-formcard .mf-chip,
.mf-formcard [class*="topic"],
.mf-formcard label.is-active,
.mf-formcard input[type="radio"] + span {
  border-radius: 0 !important;
  box-shadow: none !important;
}

@media (max-width: 900px) {
  .mf-quick > * {
    border-left: 0 !important;
    border-top: 1px solid var(--nd-line) !important;
  }
  .mf-quick > *:first-child {
    border-top: 0 !important;
  }
}

.woocommerce div.product.mf-pdp form.cart .manu-buy-now-button {
  background: transparent !important;
  border: 1px solid var(--bx-navy-dark) !important;
  border-radius: var(--mf-radius) !important;
  color: var(--bx-navy-dark) !important;
}

.woocommerce div.product.mf-pdp form.cart .manu-buy-now-button:hover {
  background: var(--bx-navy-dark) !important;
  color: #fff !important;
}

.woocommerce div.product.mf-pdp form.cart .quantity input.qty {
  border-radius: var(--mf-radius) !important;
}

/* =============================================================
   LEBENDIGE GESTALTUNG „Forêt électrique“
   Kräftige Farbflächen, bewegte Formen, Bricolage Grotesque + Figtree.
   Die Produktkarten (.mf-card) bleiben davon unberührt.
   ============================================================= */
:root,
body {
  --mf-serif: 'Bricolage Grotesque', 'Arial Black', 'Segoe UI', sans-serif;
  --mf-sans: 'Figtree', 'Segoe UI', 'Helvetica Neue', Arial, sans-serif;
  --mf-radius: 14px;
  --mf-radius-lg: 28px;
  --mk-radius: 14px;
  --mk-radius-lg: 28px;
  --fx-glow: var(--mf-citron-rgb);
}

body {
  font-size: 16.5px;
}

h1, h2, h3, h4,
.product_title,
.mf-title {
  font-weight: 700 !important;
  letter-spacing: -0.03em !important;
}

.mf-card__title {
  font-weight: 600 !important;
  letter-spacing: -0.015em !important;
}

.mf-title {
  font-size: clamp(36px, 5.2vw, 76px);
  line-height: 1;
}

.manu-em,
em.manu-em {
  position: relative;
  z-index: 0;
  font-style: normal;
  font-weight: inherit;
  color: inherit;
  white-space: nowrap;
}

.manu-em::after {
  content: "";
  position: absolute;
  z-index: -1;
  left: -0.06em;
  right: -0.06em;
  bottom: 0.04em;
  height: 0.36em;
  border-radius: 0.2em;
  background: var(--mf-citron);
  transform-origin: left center;
}

body.manu-anim .is-visible .manu-em::after,
body.manu-anim .is-visible.mf-head .manu-em::after {
  animation: mf-swipe 0.8s var(--mf-ease) 0.25s both;
}

@keyframes mf-swipe {
  from { transform: scaleX(0); }
  to { transform: scaleX(1); }
}

/* Farbwelten */
.mf-tone-1 { --t-bg: var(--mf-emerald); --t-fg: #fff; --t-soft: rgba(255, 255, 255, 0.86); --t-mark: var(--mf-forest); --t-btn: var(--mf-citron); --t-btn-fg: var(--mf-forest); }
.mf-tone-2 { --t-bg: var(--mf-forest); --t-fg: #fff; --t-soft: rgba(255, 255, 255, 0.82); --t-mark: var(--mf-emerald); --t-btn: var(--mf-citron); --t-btn-fg: var(--mf-forest); }
.mf-tone-3 { --t-bg: var(--mf-coral); --t-fg: var(--mf-forest); --t-soft: var(--mf-forest); --t-mark: var(--mf-citron); --t-btn: var(--mf-forest); --t-btn-fg: #fff; }
.mf-tone-4 { --t-bg: var(--mf-citron); --t-fg: var(--mf-forest); --t-soft: var(--mf-forest); --t-mark: var(--mf-mint); --t-btn: var(--mf-forest); --t-btn-fg: #fff; }

/* Knöpfe */
.mf-btn {
  position: relative;
  min-height: 54px;
  padding: 0 28px;
  overflow: hidden;
  border: 0;
  border-radius: 999px;
  font-family: var(--mf-sans) !important;
  font-size: 15.5px;
  font-weight: 700;
  letter-spacing: 0;
  transition: transform 0.25s var(--mf-ease), box-shadow 0.25s ease, background-color 0.25s ease, color 0.25s ease;
}

.mf-btn svg {
  transition: transform 0.25s var(--mf-ease);
}

.mf-btn:hover {
  transform: translateY(-3px) rotate(-1deg);
}

.mf-btn:hover svg {
  transform: translateX(5px);
}

.mf-btn--primary,
.mf-btn--primary:hover {
  background: var(--mf-emerald);
  color: #fff !important;
}

.mf-btn--primary:hover {
  background: var(--mf-forest);
}

.mf-btn--pop,
.mf-btn--pop:hover {
  background: var(--t-btn, var(--mf-citron));
  color: var(--t-btn-fg, var(--mf-forest)) !important;
  box-shadow: 0 8px 0 -2px rgba(0, 0, 0, 0.18);
}

.mf-btn--line {
  background: transparent;
  border: 2px solid currentColor;
  color: inherit !important;
}

.mf-link,
.mf-head__link {
  display: inline-flex;
  flex: none;
  align-items: center;
  gap: 9px;
  padding: 10px 18px;
  background: var(--mf-forest);
  border: 0;
  border-radius: 999px;
  color: #fff !important;
  font-size: 14.5px;
  font-weight: 700;
  text-decoration: none !important;
  transition: transform 0.25s var(--mf-ease), background-color 0.2s ease, color 0.2s ease;
}

.mf-link:hover,
.mf-head__link:hover {
  background: var(--mf-citron);
  color: var(--mf-forest) !important;
  transform: translateY(-2px);
}

.mf-section {
  padding: var(--mf-section) 0;
}

.mf-head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 32px;
  margin-bottom: clamp(26px, 3.4vw, 48px);
}

.mf-head--center {
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.mf-head__desc {
  max-width: 420px;
  margin: 0;
  color: var(--nd-muted);
}

.mf-placeholder {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  background: var(--nd-mist);
  color: var(--nd-greige);
  font-family: var(--mf-serif);
  font-size: clamp(64px, 9vw, 140px);
  font-weight: 700;
  line-height: 1;
}

.mf-wave {
  position: absolute;
  left: 0;
  right: 0;
  bottom: -1px;
  z-index: 3;
  display: block;
  width: 100%;
  height: clamp(24px, 4vw, 60px);
  fill: var(--bx-bg);
  pointer-events: none;
}

.mf-wave--top {
  top: -1px;
  bottom: auto;
  transform: rotate(180deg);
}

/* ---------- Laufband oben ---------- */
.mf-ticker {
  overflow: hidden;
  background: var(--mf-citron);
  color: var(--mf-forest);
  font-size: 13.5px;
  font-weight: 700;
}

.mf-ticker__track {
  display: flex;
  width: max-content;
  padding: 7px 0;
}

.mf-ticker__track span {
  flex: none;
  padding: 0 28px;
}

.mf-ticker__track span::after {
  content: "✺";
  margin-left: 56px;
  color: var(--mf-emerald);
}

body.manu-anim .mf-ticker__track {
  animation: mf-slide 60s linear infinite;
}

.mf-ticker:hover .mf-ticker__track {
  animation-play-state: paused;
}

@keyframes mf-slide {
  to { transform: translateX(-50%); }
}

/* ---------- Kopfbereich ---------- */
.site-header.mf-header {
  position: sticky;
  top: 0;
  z-index: 1000;
  background: var(--bx-bg);
  border: 0;
  box-shadow: none;
  transition: box-shadow 0.25s ease;
}

.site-header.mf-header.is-scrolled {
  box-shadow: 0 2px 0 var(--mf-forest);
}

.mf-masthead {
  position: relative;
  display: flex;
  align-items: center;
  gap: 20px;
  min-height: 76px;
}

.mf-brand {
  flex: none;
}

.mf-brand img {
  width: auto;
  max-height: 50px;
}

.mf-logo {
  display: block;
  color: var(--mf-forest) !important;
  font-family: var(--mf-serif);
  font-size: clamp(23px, 2.2vw, 31px);
  font-weight: 800;
  line-height: 1;
  letter-spacing: -0.04em;
  text-decoration: none !important;
}

.mf-logo:hover {
  color: var(--mf-emerald) !important;
}

.main-navigation.mf-nav {
  display: flex;
  flex: 1 1 auto;
  align-items: center;
  justify-content: center;
  background: transparent;
}

.mf-nav ul#primary-menu,
.mf-nav > ul {
  display: flex !important;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center !important;
  gap: 2px !important;
  margin: 0;
  padding: 0;
  list-style: none;
}

.mf-nav li {
  position: relative;
  margin: 0;
}

.mf-nav li a {
  display: block;
  padding: 9px 14px !important;
  background: transparent !important;
  border-radius: 999px;
  color: var(--mf-forest) !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  transition: background-color 0.2s ease, transform 0.25s var(--mf-ease);
}

.mf-nav li a:hover,
.mf-nav li.current-menu-item > a {
  background: var(--mf-citron) !important;
  transform: rotate(-2deg) scale(1.04);
}

.mf-nav ul ul {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 20;
  display: none;
  min-width: 220px;
  margin: 0;
  padding: 8px;
  background: var(--bx-bg);
  border: 2px solid var(--mf-forest);
  border-radius: var(--mf-radius);
  list-style: none;
}

.mf-nav li:hover > ul,
.mf-nav li:focus-within > ul {
  display: block;
}

.mf-nav__phone {
  display: none;
}

.mf-tools {
  display: flex;
  flex: none;
  align-items: center;
  gap: 6px;
  margin-left: auto;
}

.mf-iconbtn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  padding: 0;
  background: transparent;
  border: 0;
  border-radius: 50%;
  color: var(--mf-forest) !important;
  cursor: pointer;
  transition: background-color 0.2s ease, transform 0.25s var(--mf-ease);
}

.mf-iconbtn:hover {
  background: var(--mf-mint);
  transform: scale(1.08);
}

.mf-cart {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  height: 44px;
  padding: 0 16px;
  background: var(--mf-emerald);
  border-radius: 999px;
  color: #fff !important;
  font-weight: 700;
  text-decoration: none !important;
  transition: transform 0.25s var(--mf-ease), background-color 0.2s ease;
}

.mf-cart:hover {
  background: var(--mf-forest);
  transform: translateY(-2px);
}

.mf-cart .cart-count-badge {
  position: static !important;
  display: inline-block !important;
  width: auto !important;
  min-width: 0 !important;
  height: auto !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  color: inherit !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  transform: none !important;
}

.mf-search {
  position: relative;
  display: flex;
  align-items: center;
  margin: 0;
}

.mf-search__input {
  width: 0;
  padding: 0;
  background: #fff;
  border: 0;
  border-radius: 999px;
  color: var(--mf-forest);
  font-size: 15px;
  opacity: 0;
  transition: width 0.35s var(--mf-ease), opacity 0.2s ease, padding 0.2s ease;
}

.mf-search.is-open .mf-search__input,
.mf-search:focus-within .mf-search__input {
  width: min(22vw, 240px);
  height: 42px;
  padding: 0 16px;
  outline: 2px solid var(--mf-forest);
  opacity: 1;
}

.mobile-menu-toggle.mf-burger {
  display: none;
  position: relative;
  flex: none;
  width: 44px;
  height: 44px;
  padding: 0;
  background: var(--mf-citron) !important;
  border: 0 !important;
  border-radius: 50% !important;
  box-shadow: none !important;
  cursor: pointer;
}

.mobile-menu-toggle.mf-burger span {
  position: absolute !important;
  left: 12px !important;
  display: block !important;
  width: 20px !important;
  height: 2.5px !important;
  margin: 0 !important;
  background: var(--mf-forest) !important;
  border-radius: 2px;
  transition: transform 0.25s var(--mf-ease), top 0.25s var(--mf-ease), opacity 0.2s ease;
}

.mobile-menu-toggle.mf-burger span:nth-child(1) { top: 15px !important; }
.mobile-menu-toggle.mf-burger span:nth-child(2) { top: 21px !important; }
.mobile-menu-toggle.mf-burger span:nth-child(3) { top: 27px !important; }

.mobile-menu-toggle.mf-burger[aria-expanded="true"] span:nth-child(1) { top: 21px !important; transform: rotate(45deg); }
.mobile-menu-toggle.mf-burger[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
.mobile-menu-toggle.mf-burger[aria-expanded="true"] span:nth-child(3) { top: 21px !important; transform: rotate(-45deg); }

/* ---------- Bühne ---------- */
.mf-stage {
  position: relative;
  display: grid;
  overflow: hidden;
}

.mf-stage .fx-embers {
  position: absolute;
  inset: 0;
  z-index: 2;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

.mf-slide {
  grid-area: 1 / 1;
  min-width: 0;
  padding: clamp(36px, 5vw, 76px) 0 clamp(110px, 10vw, 150px);
  background: var(--t-bg);
  color: var(--t-fg);
  opacity: 0;
  visibility: hidden;
  clip-path: circle(0% at 78% 45%);
  transition: clip-path 0.9s var(--mf-ease), opacity 0.1s linear 0.9s, visibility 0s linear 0.9s;
}

.mf-slide.is-active {
  z-index: 1;
  opacity: 1;
  visibility: visible;
  clip-path: circle(150% at 78% 45%);
  transition: clip-path 0.9s var(--mf-ease);
}

.mf-slide__inner {
  position: relative;
  z-index: 3;
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
  gap: clamp(24px, 4vw, 64px);
  align-items: center;
}

.mf-slide__kicker {
  display: inline-block;
  margin: 0 0 18px;
  padding: 6px 14px;
  background: var(--t-fg);
  border-radius: 999px;
  color: var(--t-bg);
  font-size: 13.5px;
  font-weight: 800;
  letter-spacing: 0.02em;
}

.mf-slide__title {
  margin: 0 0 20px;
  color: inherit !important;
  font-family: var(--mf-serif) !important;
  font-size: clamp(44px, 7.4vw, 112px);
  font-weight: 800 !important;
  line-height: 0.95;
  letter-spacing: -0.045em !important;
}

.mf-slide__title .manu-em::after {
  background: var(--t-mark);
}

.mf-slide__text {
  max-width: 540px;
  margin: 0 0 26px;
  color: var(--t-soft);
  font-size: clamp(17px, 1.4vw, 20px);
  line-height: 1.45;
}

body.manu-anim .mf-slide.is-active .mf-slide__kicker,
body.manu-anim .mf-slide.is-active .mf-slide__title,
body.manu-anim .mf-slide.is-active .mf-slide__text,
body.manu-anim .mf-slide.is-active .mf-btn {
  animation: mf-rise 0.8s var(--mf-ease) both;
}

body.manu-anim .mf-slide.is-active .mf-slide__title { animation-delay: 0.08s; }
body.manu-anim .mf-slide.is-active .mf-slide__text { animation-delay: 0.18s; }
body.manu-anim .mf-slide.is-active .mf-btn { animation-delay: 0.28s; }

body.manu-anim .mf-slide.is-active .mf-slide__title .manu-em::after {
  animation: mf-swipe 0.7s var(--mf-ease) 0.6s both;
}

@keyframes mf-rise {
  from { opacity: 0; transform: translateY(34px); }
  to { opacity: 1; transform: none; }
}

.mf-slide__visual {
  position: relative;
  justify-self: center;
  width: min(100%, 520px);
  transform: translate(var(--px, 0), var(--py, 0));
  transition: transform 0.5s ease-out;
}

.mf-blob {
  position: relative;
  aspect-ratio: 1;
  margin: 0;
  overflow: hidden;
  background: var(--t-mark, var(--mf-mint));
  border-radius: 58% 42% 46% 54% / 46% 56% 44% 54%;
}

body.manu-anim .mf-blob {
  animation: mf-morph 11s ease-in-out infinite alternate;
}

@keyframes mf-morph {
  0% { border-radius: 58% 42% 46% 54% / 46% 56% 44% 54%; }
  50% { border-radius: 42% 58% 60% 40% / 58% 42% 58% 42%; }
  100% { border-radius: 52% 48% 38% 62% / 40% 62% 38% 60%; }
}

.mf-blob img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.mf-blob .mf-placeholder {
  background: transparent;
  color: var(--t-fg);
  opacity: 0.55;
  font-size: clamp(110px, 15vw, 220px);
}

.mf-seal {
  position: absolute;
  top: -6%;
  right: -4%;
  width: clamp(96px, 11vw, 150px);
  height: auto;
  padding: 8px;
  overflow: visible;
  background: var(--t-btn);
  border-radius: 50%;
  fill: var(--t-btn-fg);
  font-family: var(--mf-sans);
  font-size: 20px;
  font-weight: 800;
}

body.manu-anim .mf-seal {
  animation: mf-spin 16s linear infinite;
}

@keyframes mf-spin {
  to { transform: rotate(360deg); }
}

.mf-floats {
  position: absolute;
  left: -6%;
  bottom: 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.mf-floats li {
  padding: 8px 14px;
  background: #fff;
  border-radius: 999px;
  box-shadow: 0 6px 0 -1px rgba(0, 0, 0, 0.14);
  color: var(--mf-forest);
  font-size: 13.5px;
  font-weight: 700;
}

body.manu-anim .mf-floats li {
  animation: mf-bob 4.5s ease-in-out infinite alternate;
}

body.manu-anim .mf-floats li:nth-child(2) { animation-delay: -1.5s; margin-left: 22px; }
body.manu-anim .mf-floats li:nth-child(3) { animation-delay: -3s; }

@keyframes mf-bob {
  to { transform: translateY(-9px) rotate(-1.5deg); }
}

.mf-stage__nav {
  position: absolute;
  left: 0;
  right: 0;
  bottom: clamp(38px, 5vw, 76px);
  z-index: 4;
  display: flex;
  align-items: center;
  gap: 18px;
  margin: 0 auto;
}

.mf-stage__count {
  margin: 0;
  padding: 4px 12px;
  background: #fff;
  border-radius: 999px;
  color: var(--mf-forest);
  font-family: var(--mf-serif);
  font-size: 15px;
  font-weight: 800;
}

.mf-stage__dots {
  display: flex;
  gap: 6px;
}

.mf-stage__dots button {
  width: 44px;
  height: 24px;
  padding: 0;
  background: transparent;
  border: 0;
  cursor: pointer;
}

.mf-stage__dots i {
  display: block;
  width: 100%;
  height: 6px;
  background: #fff;
  border-radius: 6px;
  opacity: 0.55;
  transform-origin: left;
  transition: opacity 0.2s ease;
}

.mf-stage__dots button.is-active i {
  opacity: 1;
}

.mf-stage__arrows {
  display: flex;
  gap: 6px;
  margin-left: auto;
}

.mf-stage__arrows button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 46px;
  padding: 0;
  background: #fff;
  border: 0;
  border-radius: 50%;
  color: var(--mf-forest);
  cursor: pointer;
  transition: transform 0.25s var(--mf-ease), background-color 0.2s ease;
}

.mf-stage__arrows button:hover {
  background: var(--mf-citron);
  transform: scale(1.12);
}

/* ---------- Bunte Kacheln ---------- */
.mf-bento {
  padding: clamp(20px, 3vw, 44px) 0 clamp(36px, 4vw, 56px);
}

.mf-bento__grid {
  display: grid;
  grid-template-columns: 1.25fr 1fr 1fr 1.25fr;
  gap: 14px;
  margin: 0 auto;
  list-style: none;
}

.mf-bento__tile {
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-width: 0;
  padding: clamp(20px, 2vw, 28px);
  background: var(--t-bg);
  border-radius: var(--mf-radius-lg);
  color: var(--t-fg);
  transition: transform 0.35s var(--mf-ease);
}

.mf-bento__tile:hover {
  transform: translateY(-6px) rotate(-1deg);
}

.mf-bento__tile:nth-child(even):hover {
  transform: translateY(-6px) rotate(1deg);
}

.mf-bento__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 54px;
  height: 54px;
  margin-bottom: 18px;
  background: var(--t-fg);
  border-radius: 50%;
  color: var(--t-bg);
  transition: transform 0.45s var(--mf-ease);
}

.mf-bento__tile:hover .mf-bento__icon {
  transform: rotate(-14deg) scale(1.14);
}

.mf-bento__tile strong {
  color: inherit;
  font-family: var(--mf-serif);
  font-size: clamp(22px, 1.9vw, 28px);
  font-weight: 700;
  line-height: 1.05;
  letter-spacing: -0.025em;
}

.mf-bento__text {
  color: var(--t-soft);
  font-size: 15px;
  line-height: 1.4;
}

/* ---------- Großes Laufband ---------- */
.mf-bigband {
  overflow: hidden;
  background: var(--mf-forest);
  color: var(--mf-citron);
  transform: rotate(-1.2deg) scale(1.03);
}

.mf-bigband__track {
  display: flex;
  align-items: center;
  gap: clamp(18px, 2.5vw, 38px);
  width: max-content;
  padding: clamp(10px, 1.4vw, 20px) 0;
  font-family: var(--mf-serif);
  font-size: clamp(30px, 5vw, 72px);
  font-weight: 800;
  line-height: 1;
  letter-spacing: -0.04em;
  white-space: nowrap;
}

.mf-bigband__track i {
  color: var(--mf-coral);
  font-style: normal;
}

body.manu-anim .mf-bigband__track {
  animation: mf-slide 44s linear infinite;
}

/* ---------- Paneele Sortiment ---------- */
.mf-panels {
  display: flex;
  gap: 12px;
  height: clamp(380px, 38vw, 540px);
  margin: 0;
  padding: 0;
  list-style: none;
}

.mf-panel {
  flex: 1 1 0;
  min-width: 0;
  transition: flex-grow 0.6s var(--mf-ease);
}

.mf-panel:hover,
.mf-panel:focus-within {
  flex-grow: 2.4;
}

.mf-panel a {
  position: relative;
  display: block;
  height: 100%;
  overflow: hidden;
  background: var(--t-bg);
  border-radius: var(--mf-radius-lg);
  color: var(--t-fg) !important;
  text-decoration: none !important;
}

.mf-panel__img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 1.1s var(--mf-ease);
}

.mf-panel:hover .mf-panel__img {
  transform: scale(1.07);
}

.mf-panel a:has(.mf-panel__img) .mf-panel__letter {
  display: none;
}

.mf-panel a:has(.mf-panel__img) .mf-panel__body {
  margin: 10px;
  padding: 14px 16px;
  background: var(--t-bg);
  border-radius: var(--mf-radius);
}

.mf-panel__letter {
  position: absolute;
  top: 2%;
  left: 6%;
  font-family: var(--mf-serif);
  font-size: clamp(120px, 15vw, 240px);
  font-weight: 800;
  line-height: 1;
  opacity: 0.2;
  transition: transform 0.7s var(--mf-ease), opacity 0.3s ease;
}

.mf-panel:hover .mf-panel__letter {
  opacity: 0.38;
  transform: translateX(8%) rotate(-6deg);
}

.mf-panel__body {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 2px 10px;
  align-items: end;
  padding: clamp(16px, 1.8vw, 26px);
}

.mf-panel__name {
  grid-column: 1;
  font-family: var(--mf-serif);
  font-size: clamp(23px, 2.5vw, 38px);
  font-weight: 800;
  line-height: 1;
  letter-spacing: -0.035em;
  overflow-wrap: anywhere;
  hyphens: auto;
}

.mf-panel__count {
  grid-column: 1;
  color: var(--t-soft);
  font-size: 14px;
  font-weight: 600;
}

.mf-panel__go {
  grid-column: 2;
  grid-row: 1 / span 2;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  background: var(--t-fg);
  border-radius: 50%;
  color: var(--t-bg);
  transition: transform 0.35s var(--mf-ease);
}

.mf-panel:hover .mf-panel__go {
  transform: rotate(-35deg) scale(1.12);
}

/* ---------- Regale (Karten unverändert) ---------- */
.mf-shelf .mf-title {
  font-size: clamp(30px, 3.6vw, 52px);
}

/* ---------- Holz-Finder ---------- */
.mf-finder__box {
  display: grid;
  grid-template-columns: minmax(0, 5fr) minmax(0, 7fr);
  gap: 14px;
}

.mf-finder__tabs {
  display: flex;
  flex-direction: column;
  gap: 6px;
}

.mf-finder__tabs button {
  flex: 1 1 auto;
  padding: 14px 24px;
  background: var(--nd-mist);
  border: 0;
  border-radius: var(--mf-radius-lg);
  color: var(--mf-forest);
  font-family: var(--mf-serif);
  font-size: clamp(30px, 4vw, 60px);
  font-weight: 800;
  line-height: 1;
  letter-spacing: -0.04em;
  text-align: left;
  cursor: pointer;
  transition: background-color 0.25s ease, color 0.25s ease, padding 0.35s var(--mf-ease);
}

.mf-finder__tabs button:hover,
.mf-finder__tabs button[aria-selected="true"] {
  padding-left: 40px;
}

.mf-finder__tabs button[aria-selected="true"] {
  background: var(--mf-forest);
  color: var(--mf-citron);
}

.mf-finder__panels {
  display: grid;
  min-width: 0;
}

.mf-finder__panel {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 16px;
  min-height: 380px;
  padding: clamp(24px, 3vw, 44px);
  background: var(--t-bg);
  border-radius: var(--mf-radius-lg);
  color: var(--t-fg);
}

.mf-finder__panel[hidden] {
  display: none;
}

body.manu-anim .mf-finder__panel:not([hidden]) {
  animation: mf-pop 0.45s var(--mf-ease);
}

@keyframes mf-pop {
  from { opacity: 0.4; transform: scale(0.975); }
  to { opacity: 1; transform: none; }
}

.mf-finder__value {
  margin: 0 0 auto;
  font-family: var(--mf-serif);
  font-size: clamp(34px, 4.6vw, 68px);
  font-weight: 800;
  line-height: 1;
  letter-spacing: -0.04em;
}

.mf-finder__text {
  max-width: 520px;
  margin: 18px 0 6px;
  color: var(--t-soft);
  font-size: 18px;
  line-height: 1.4;
}

.mf-meter span {
  display: block;
  margin-bottom: 6px;
  font-size: 13.5px;
  font-weight: 700;
}

.mf-meter b {
  display: block;
  height: 14px;
  overflow: hidden;
  background: rgba(255, 255, 255, 0.26);
  border-radius: 999px;
}

.mf-tone-3 .mf-meter b,
.mf-tone-4 .mf-meter b {
  background: rgba(6, 40, 30, 0.16);
}

.mf-meter i {
  display: block;
  width: var(--v);
  height: 100%;
  background: var(--t-btn);
  border-radius: 999px;
}

body.manu-anim .mf-finder__panel:not([hidden]) .mf-meter i {
  animation: mf-grow 0.9s var(--mf-ease) both;
}

@keyframes mf-grow {
  from { width: 0; }
  to { width: var(--v); }
}

.mf-stickers {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin: 22px 0 0;
}

.mf-sticker {
  padding: 20px 22px;
  background: var(--mf-mint);
  border-radius: var(--mf-radius-lg);
  color: var(--mf-forest);
  transition: transform 0.35s var(--mf-ease);
}

.mf-sticker--1 { transform: rotate(-1deg); }
.mf-sticker--2 { background: var(--nd-mist); transform: rotate(0.8deg); }
.mf-sticker--3 { transform: rotate(-0.6deg); }

.mf-sticker:hover {
  transform: rotate(0) translateY(-4px);
}

.mf-sticker dt {
  margin-bottom: 4px;
  font-family: var(--mf-serif);
  font-size: 22px;
  font-weight: 800;
  letter-spacing: -0.02em;
}

.mf-sticker dd {
  margin: 0;
  font-size: 15px;
  line-height: 1.45;
}

/* ---------- Winter-Rechner ---------- */
.mf-winter {
  position: relative;
  padding: clamp(72px, 9vw, 130px) 0;
  background: var(--mf-forest);
  color: #fff;
}

.mf-winter .mf-title {
  color: #fff !important;
}

.mf-winter .manu-em::after {
  background: var(--mf-emerald);
}

.mf-winter__grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: clamp(32px, 6vw, 96px);
  align-items: start;
}

.mf-winter__fuels {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: clamp(22px, 3vw, 36px) 0 clamp(20px, 2.4vw, 30px);
}

.mf-winter__fuels label {
  cursor: pointer;
}

.mf-winter__fuels input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.mf-winter__fuels span {
  display: block;
  padding: 11px 20px;
  background: rgba(255, 255, 255, 0.12);
  border-radius: 999px;
  font-weight: 700;
  transition: background-color 0.2s ease, color 0.2s ease, transform 0.25s var(--mf-ease);
}

.mf-winter__fuels label:hover span {
  transform: translateY(-2px);
}

.mf-winter__fuels input:checked + span {
  background: var(--mf-citron);
  color: var(--mf-forest);
}

.mf-winter__fuels input:focus-visible + span {
  outline: 2px solid #fff;
  outline-offset: 2px;
}

.mf-winter__slider {
  display: block;
  margin-bottom: 20px;
}

.mf-winter__sliderhead {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 8px;
  font-size: 15px;
}

.mf-winter__sliderhead output {
  color: var(--mf-citron);
  font-family: var(--mf-serif);
  font-size: 23px;
  font-weight: 800;
}

.mf-winter__slider input[type="range"] {
  width: 100%;
  height: 10px;
  margin: 0;
  padding: 0;
  background: linear-gradient(to right, var(--mf-citron) var(--fill, 50%), rgba(255, 255, 255, 0.2) var(--fill, 50%));
  border: 0;
  border-radius: 999px;
  cursor: grab;
  appearance: none;
  -webkit-appearance: none;
}

.mf-winter__slider input[type="range"]::-webkit-slider-thumb {
  width: 30px;
  height: 30px;
  background: #fff;
  border: 5px solid var(--mf-emerald);
  border-radius: 50%;
  transition: transform 0.2s var(--mf-ease);
  appearance: none;
  -webkit-appearance: none;
}

.mf-winter__slider input[type="range"]::-moz-range-thumb {
  width: 20px;
  height: 20px;
  background: #fff;
  border: 5px solid var(--mf-emerald);
  border-radius: 50%;
}

.mf-winter__slider input[type="range"]:active::-webkit-slider-thumb {
  transform: scale(1.2);
}

.mf-winter__result {
  padding: clamp(22px, 3vw, 38px);
  background: var(--mf-emerald);
  border-radius: var(--mf-radius-lg);
}

.mf-winter__label {
  margin: 0;
  font-weight: 700;
}

.mf-winter__value {
  margin: 8px 0 4px;
  color: var(--mf-citron);
  font-family: var(--mf-serif);
  font-size: clamp(60px, 8.5vw, 124px);
  font-weight: 800;
  line-height: 0.95;
  letter-spacing: -0.05em;
  font-variant-numeric: tabular-nums;
}

.mf-winter__value small {
  font-size: 0.34em;
  letter-spacing: -0.02em;
}

.mf-winter__sub {
  min-height: 1.5em;
  margin: 0 0 16px;
  font-weight: 600;
}

.mf-stack {
  display: flex;
  flex-wrap: wrap;
  align-content: flex-start;
  gap: 4px;
  min-height: 62px;
  margin-bottom: 20px;
}

.mf-stack i {
  display: block;
  width: 26px;
  height: 12px;
  background: var(--mf-citron);
  border-radius: 6px;
}

.mf-stack[data-kind="sack"] i {
  width: 15px;
  height: 20px;
  background: var(--mf-mint);
  border-radius: 4px;
}

.mf-stack i:nth-child(3n) { background: var(--mf-coral); }

body.manu-anim .mf-stack i {
  animation: mf-drop 0.35s var(--mf-ease) both;
}

@keyframes mf-drop {
  from { opacity: 0; transform: translateY(-12px) scale(0.7); }
  to { opacity: 1; transform: none; }
}

.mf-winter__note {
  margin: 18px 0 0;
  color: rgba(255, 255, 255, 0.86);
  font-size: 12.5px;
  line-height: 1.5;
}

/* ---------- Das Haus und Radar ---------- */
.mf-house__grid {
  display: grid;
  grid-template-columns: minmax(0, 6fr) minmax(0, 5fr);
  gap: clamp(28px, 5vw, 84px);
  align-items: center;
}

.mf-house__text {
  margin: 20px 0 24px;
  font-size: clamp(17px, 1.4vw, 20px);
  line-height: 1.5;
}

.mf-blob--house {
  --t-mark: var(--mf-citron);
  --t-fg: var(--mf-forest);
}

.mf-radar {
  position: relative;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: clamp(20px, 3.4vw, 54px);
  align-items: center;
  margin-top: clamp(40px, 5vw, 76px);
  padding: clamp(24px, 3vw, 42px);
  overflow: hidden;
  background: var(--mf-emerald);
  border-radius: var(--mf-radius-lg);
  color: #fff;
  --t-btn: var(--mf-citron);
  --t-btn-fg: var(--mf-forest);
}

.mf-radar__visual {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(110px, 12vw, 170px);
  aspect-ratio: 1;
}

.mf-radar__visual i {
  position: absolute;
  inset: 0;
  border: 2px solid var(--mf-citron);
  border-radius: 50%;
  opacity: 0.45;
}

.mf-radar__visual i:nth-child(2) { inset: 18%; }
.mf-radar__visual i:nth-child(3) { inset: 34%; }

body.manu-anim .mf-radar__visual i {
  animation: mf-ping 3s ease-out infinite;
}

body.manu-anim .mf-radar__visual i:nth-child(2) { animation-delay: 1s; }
body.manu-anim .mf-radar__visual i:nth-child(3) { animation-delay: 2s; }

@keyframes mf-ping {
  from { opacity: 0.9; transform: scale(0.4); }
  to { opacity: 0; transform: scale(1.15); }
}

.mf-radar__visual b {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 54px;
  height: 54px;
  background: var(--mf-citron);
  border-radius: 50%;
  color: var(--mf-forest);
}

.mf-radar__num {
  margin: 0;
  color: var(--mf-citron);
  font-family: var(--mf-serif);
  font-size: clamp(50px, 6.6vw, 96px);
  font-weight: 800;
  line-height: 1;
  letter-spacing: -0.05em;
}

.mf-radar__lead {
  margin: 4px 0;
  font-family: var(--mf-serif);
  font-size: clamp(19px, 1.8vw, 25px);
  font-weight: 600;
  line-height: 1.2;
}

.mf-radar__note {
  margin: 0;
  font-size: 14.5px;
}

.mf-radar__actions {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

/* ---------- Fußbereich ---------- */
.site-footer.mf-footer {
  position: relative;
  margin: clamp(30px, 4vw, 60px) 0 0;
  padding: clamp(60px, 7vw, 100px) 0 26px;
  background: var(--mf-forest);
  border: 0;
  color: #fff;
}

.mf-footer__ask {
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
  gap: clamp(26px, 5vw, 72px);
  align-items: start;
  padding-bottom: clamp(36px, 5vw, 60px);
}

.site-footer.mf-footer .mf-footer__claim {
  margin: 0;
  color: #fff !important;
  font-family: var(--mf-serif);
  font-size: clamp(38px, 5.6vw, 84px);
  font-weight: 800;
  line-height: 0.98;
  letter-spacing: -0.045em;
}

.mf-footer__claim .manu-em::after {
  background: var(--mf-emerald);
}

.mf-footer__ways {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.mf-footer__ways a {
  display: grid;
  grid-template-columns: 84px minmax(0, 1fr);
  align-items: baseline;
  gap: 10px;
  padding: 12px 18px;
  background: rgba(255, 255, 255, 0.08);
  border-radius: var(--mf-radius);
  color: #fff !important;
  font-weight: 600;
  overflow-wrap: anywhere;
  text-decoration: none !important;
  transition: background-color 0.2s ease, color 0.2s ease, transform 0.25s var(--mf-ease);
}

.mf-footer__ways a:hover {
  background: var(--mf-citron);
  color: var(--mf-forest) !important;
  transform: translateX(6px);
}

.mf-footer__ways small {
  font-size: 12.5px;
  font-weight: 500;
  opacity: 0.82;
}

.mf-footer__cols {
  display: grid;
  grid-template-columns: minmax(0, 1.6fr) repeat(3, minmax(0, 1fr));
  gap: clamp(26px, 4vw, 56px);
  padding: clamp(28px, 3vw, 42px) 0;
  border-top: 1px solid rgba(255, 255, 255, 0.2);
  font-size: 15px;
}

.site-footer.mf-footer .mf-footer__cols h4 {
  margin: 0 0 13px;
  color: var(--mf-citron) !important;
  font-family: var(--mf-serif) !important;
  font-size: 18px;
  font-weight: 700 !important;
}

.site-footer.mf-footer .mf-footer__company,
.site-footer.mf-footer .mf-footer__company * {
  color: #fff !important;
}

.mf-footer__company p {
  margin: 0 0 8px;
}

.mf-footer__list {
  margin: 0;
  padding: 0;
  list-style: none;
}

.mf-footer__list li {
  margin: 0 0 7px;
}

.site-footer.mf-footer .mf-footer__list a {
  color: #fff !important;
  text-decoration: none !important;
  transition: color 0.2s ease;
}

.site-footer.mf-footer .mf-footer__list a:hover {
  color: var(--mf-citron) !important;
}

.mf-footer__end {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
  justify-content: space-between;
  gap: 16px 40px;
  padding-top: 22px;
  border-top: 1px solid rgba(255, 255, 255, 0.2);
}

.site-footer.mf-footer .mf-footer__mark {
  margin: 0;
  color: var(--mf-citron) !important;
  font-family: var(--mf-serif);
  font-size: clamp(30px, 4vw, 56px);
  font-weight: 800;
  line-height: 1;
  letter-spacing: -0.045em;
}

.site-footer.mf-footer .mf-footer__legal,
.site-footer.mf-footer .mf-footer__legal * {
  max-width: 640px;
  color: rgba(255, 255, 255, 0.82) !important;
  font-size: 12.5px;
}

.mf-footer__legal {
  text-align: right;
}

.mf-footer__legal p {
  margin: 0 0 3px;
}

/* ---------- Shop: Auftakt ---------- */
.mf-shophero {
  position: relative;
  padding: clamp(22px, 3vw, 36px) 0 clamp(64px, 8vw, 110px);
  overflow: hidden;
  background: var(--mf-emerald);
  color: #fff;
}

.mf-shophero .fx-embers {
  position: absolute;
  inset: 0;
  z-index: 1;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

.mf-shophero__inner {
  position: relative;
  z-index: 2;
}

.mf-shophero__crumbs,
.mf-shophero__crumbs * {
  background: transparent !important;
  border: 0 !important;
  color: #fff !important;
}

.mf-shophero__crumbs a,
.mf-shophero__crumbs span,
.mf-shophero__crumbs li {
  color: #fff !important;
  opacity: 1 !important;
}

.mf-shophero__crumbs .manu-breadcrumbs {
  margin: 0 0 clamp(14px, 2vw, 26px);
  padding: 0;
}

.mf-shophero__row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
}

.mf-shophero__title {
  margin: 0 0 10px;
  color: #fff !important;
  font-size: clamp(50px, 9.5vw, 148px) !important;
  font-weight: 800 !important;
  line-height: 0.92;
  letter-spacing: -0.05em !important;
}

body.manu-anim .mf-shophero__title {
  animation: mf-rise 0.8s var(--mf-ease) both;
}

.mf-shophero__desc p {
  max-width: 560px;
  margin: 0;
  color: #fff;
  font-size: clamp(17px, 1.4vw, 20px);
}

.mf-shophero__sticker {
  display: flex;
  flex: none;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: clamp(112px, 13vw, 186px);
  aspect-ratio: 1;
  margin: 0;
  background: var(--mf-citron);
  border-radius: 50%;
  color: var(--mf-forest);
  font-weight: 700;
  transform: rotate(8deg);
}

.mf-shophero__sticker strong {
  font-family: var(--mf-serif);
  font-size: clamp(38px, 5vw, 72px);
  font-weight: 800;
  line-height: 1;
  letter-spacing: -0.04em;
}

body.manu-anim .mf-shophero__sticker {
  animation: mf-sway 5s ease-in-out infinite alternate;
}

@keyframes mf-sway {
  from { transform: rotate(8deg) translateY(0); }
  to { transform: rotate(-5deg) translateY(-8px); }
}

/* Kategorie-Kacheln */
.mf-shopcats {
  display: flex;
  gap: 10px;
  padding-top: clamp(14px, 2vw, 24px);
  padding-bottom: 8px;
  overflow-x: auto;
  scrollbar-width: none;
}

.mf-shopcats::-webkit-scrollbar {
  display: none;
}

.mf-shopcat {
  display: inline-flex;
  flex: none;
  align-items: flex-start;
  gap: 8px;
  padding: 14px 22px;
  background: var(--nd-mist);
  border-radius: var(--mf-radius);
  color: var(--mf-forest) !important;
  text-decoration: none !important;
  transition: transform 0.3s var(--mf-ease), background-color 0.2s ease, color 0.2s ease;
}

.mf-shopcat__name {
  font-family: var(--mf-serif);
  font-size: clamp(21px, 2.2vw, 31px);
  font-weight: 800;
  line-height: 1;
  letter-spacing: -0.035em;
}

.mf-shopcat__count {
  font-size: 13px;
  font-weight: 700;
}

.mf-shopcat:hover {
  background: var(--mf-mint);
  transform: translateY(-3px) rotate(-1.5deg);
}

.mf-shopcat.is-active {
  background: var(--mf-forest);
  color: var(--mf-citron) !important;
}

/* Filterleiste */
.mf-shopbar {
  position: sticky;
  top: var(--mf-head-h, 76px);
  z-index: 900;
  background: var(--bx-bg);
}

.mf-shopbar__inner {
  display: flex;
  align-items: center;
  gap: 12px;
  min-height: 62px;
}

.mf-shopbar__toggle {
  display: inline-flex;
  flex: none;
  align-items: center;
  gap: 10px;
  height: 44px;
  padding: 0 18px;
  background: var(--mf-citron);
  border: 0;
  border-radius: 999px;
  color: var(--mf-forest);
  font-size: 15px;
  font-weight: 800;
  cursor: pointer;
  transition: transform 0.25s var(--mf-ease);
}

.mf-shopbar__toggle:hover {
  transform: scale(1.05);
}

.mf-shopbar__icon {
  position: relative;
  display: block;
  width: 18px;
  height: 14px;
}

.mf-shopbar__icon i {
  position: absolute;
  left: 0;
  right: 0;
  height: 2px;
  background: currentColor;
  border-radius: 2px;
}

.mf-shopbar__icon i:nth-child(1) { top: 0; }
.mf-shopbar__icon i:nth-child(2) { top: 6px; left: 3px; right: 3px; }
.mf-shopbar__icon i:nth-child(3) { top: 12px; left: 6px; right: 6px; }

.mf-shopbar__badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 22px;
  height: 22px;
  padding: 0 6px;
  background: var(--mf-forest);
  border-radius: 999px;
  color: #fff;
  font-size: 12.5px;
}

.mf-shopbar__badge[hidden] {
  display: none;
}

.mf-shopbar__chips {
  display: flex;
  flex: 1 1 auto;
  gap: 6px;
  min-width: 0;
  overflow-x: auto;
  scrollbar-width: none;
}

.mf-shopbar__chips::-webkit-scrollbar {
  display: none;
}

.mf-fchip {
  display: inline-flex;
  flex: none;
  align-items: center;
  gap: 7px;
  padding: 7px 13px;
  background: var(--mf-forest);
  border-radius: 999px;
  color: #fff !important;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none !important;
  animation: mf-pop 0.3s var(--mf-ease);
}

.mf-fchip b {
  color: var(--mf-citron);
  font-size: 16px;
  line-height: 1;
}

.mf-fchip:hover {
  background: var(--mf-coral);
  color: var(--mf-forest) !important;
}

.mf-fchip--clear {
  background: transparent;
  color: var(--mf-forest) !important;
  text-decoration: underline !important;
}

.mf-shopbar__order {
  flex: none;
  margin-left: auto;
}

.mf-shopbar__order .woocommerce-ordering {
  float: none;
  margin: 0;
}

.mf-shopbar__order select {
  height: 44px;
  min-height: 0;
  padding: 0 34px 0 16px;
  background-color: var(--nd-mist);
  border: 0;
  border-radius: 999px;
  color: var(--mf-forest);
  font-size: 14.5px;
  font-weight: 700;
}

/* Filter: am Rechner aufklappbar */
.mf-filters__backdrop {
  display: none;
}

.mf-filters__clip {
  display: grid;
  grid-template-rows: 1fr;
  transition: grid-template-rows 0.45s var(--mf-ease);
}

.mf-filters__form {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  min-height: 0;
  overflow: hidden;
}

body.mf-filters-shut .mf-filters__clip {
  grid-template-rows: 0fr;
}

body.mf-filters-shut .mf-filters__form {
  visibility: hidden;
  transition: visibility 0s linear 0.45s;
}

.mf-filters__head,
.mf-filters__foot {
  display: none;
}

.mf-fgroup {
  min-width: 0;
  margin: 0 0 14px;
  padding: 16px 18px 18px;
  background: var(--nd-mist);
  border: 0;
  border-radius: var(--mf-radius-lg);
}

.mf-fgroup legend {
  float: left;
  width: 100%;
  margin-bottom: 10px;
  padding: 0;
  color: var(--mf-forest);
  font-family: var(--mf-serif);
  font-size: 20px;
  font-weight: 800;
  letter-spacing: -0.02em;
}

.mf-fopts {
  clear: both;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.mf-fopt {
  cursor: pointer;
}

.mf-fopt input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.mf-fopt span {
  display: block;
  padding: 8px 14px;
  background: #fff;
  border-radius: 999px;
  color: var(--mf-forest);
  font-size: 14.5px;
  font-weight: 600;
  transition: background-color 0.2s ease, color 0.2s ease, transform 0.25s var(--mf-ease);
}

.mf-fopt:hover span {
  transform: translateY(-2px);
}

.mf-fopt input:checked + span {
  background: var(--mf-emerald);
  color: #fff;
  transform: scale(1.05);
}

.mf-fopt input:focus-visible + span {
  outline: 2px solid var(--mf-forest);
  outline-offset: 2px;
}

.mf-price {
  clear: both;
}

.mf-price__values {
  display: flex;
  justify-content: space-between;
  margin-bottom: 10px;
  color: var(--mf-forest);
  font-weight: 700;
}

.mf-price__track {
  position: relative;
  height: 28px;
}

.mf-price__track::before {
  content: "";
  position: absolute;
  top: 10px;
  left: 0;
  right: 0;
  height: 8px;
  background: linear-gradient(to right, #fff var(--a, 0%), var(--mf-emerald) var(--a, 0%), var(--mf-emerald) var(--b, 100%), #fff var(--b, 100%));
  border-radius: 999px;
}

.mf-price input[type="range"] {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 28px;
  margin: 0;
  padding: 0;
  background: transparent;
  border: 0;
  pointer-events: none;
  appearance: none;
  -webkit-appearance: none;
}

.mf-price input[type="range"]::-webkit-slider-thumb {
  width: 26px;
  height: 26px;
  background: var(--mf-citron);
  border: 3px solid var(--mf-forest);
  border-radius: 50%;
  cursor: grab;
  pointer-events: auto;
  appearance: none;
  -webkit-appearance: none;
}

.mf-price input[type="range"]::-moz-range-thumb {
  width: 20px;
  height: 20px;
  background: var(--mf-citron);
  border: 3px solid var(--mf-forest);
  border-radius: 50%;
  cursor: grab;
  pointer-events: auto;
}

/* Ergebnisse */
.mf-shop__results {
  padding-top: 6px;
  padding-bottom: clamp(50px, 6vw, 90px);
  transition: opacity 0.2s ease;
}

.mf-shop__results.is-loading {
  opacity: 0.4;
  pointer-events: none;
}

.mf-shop__count {
  margin-bottom: 14px;
  color: var(--nd-muted);
  font-size: 14px;
}

.mf-shop__count .woocommerce-result-count {
  float: none;
  margin: 0;
}

.mf-enter {
  animation: mf-rise 0.55s var(--mf-ease) both;
}

/* ---------- Innenseiten in Farbe ---------- */
.mf-page-hero,
.mk-legal__hero {
  padding: clamp(36px, 5vw, 70px) 0 !important;
  background: var(--mf-emerald) !important;
  color: #fff !important;
}

.mf-page-hero .mf-page-hero__title,
.mf-page-hero h1,
.mf-page-hero p,
.mf-page-hero a,
.mf-page-hero span:not(.manu-em),
.mk-legal__hero .mk-legal__title,
.mk-legal__hero .mk-legal__kicker,
.mk-legal__hero .mk-legal__date,
.mk-legal__hero .mk-legal__date * {
  color: #fff !important;
}

.mf-page-hero h1,
.mk-legal__hero .mk-legal__title {
  font-weight: 800 !important;
  letter-spacing: -0.045em !important;
}

.mf-page-hero .manu-em::after {
  background: var(--mf-forest);
}

.mf-page-hero .mf-eyebrow {
  color: var(--mf-citron) !important;
}

.mf-eyebrow {
  color: var(--mf-emerald);
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: none;
  font-size: 14px;
}

.mf-flow {
  background: var(--mf-citron) !important;
}

.mf-flow .manu-em::after {
  background: var(--mf-mint);
}

.mf-trail__step.is-current .mf-trail__ring {
  background: var(--mf-forest) !important;
  color: var(--mf-citron) !important;
  border-radius: 50% !important;
}

.mf-trail__ring,
.mf-trail__step.is-done .mf-trail__ring {
  border-radius: 50% !important;
}

.mf-quick {
  gap: 12px !important;
  border: 0 !important;
}

.mf-quick .mf-quick__card,
.mf-quick .mf-quick__card:hover {
  background: var(--nd-mist) !important;
  border: 0 !important;
  border-radius: var(--mf-radius-lg) !important;
}

.mf-quick .mf-quick__card--accent,
.mf-quick .mf-quick__card--accent:hover {
  background: var(--mf-citron) !important;
}

.mf-quick .mf-quick__label,
.mf-quick .mf-quick__note,
.mf-quick .mf-quick__card--accent .mf-quick__label,
.mf-quick .mf-quick__card--accent .mf-quick__note {
  color: var(--mf-forest) !important;
}

.mf-quick .mf-quick__value {
  font-weight: 800 !important;
}

.mf-faq .faq-question-title,
.mf-pdp .mf-pdp__title,
.mf-faq .manu-faq-group h2.mf-faq__group-title,
.mk-legal__body h2,
.manu-order-status-box h1,
.mf-flow-page .wc-block-components-title,
.mf-flow-page .wc-block-components-checkout-step__title {
  font-weight: 700 !important;
}

.mf-pdp .mf-slice dd {
  font-weight: 700 !important;
}

.mf-pdp .mf-buybox__price .single-price-current,
.mf-pdp .mf-buybox__price .single-price-current * {
  font-weight: 800 !important;
}

.mf-chip,
.mf-chip--link,
.mf-faq .mf-faq__topics a.mf-chip,
.mf-faq .mf-faq__topics a.mf-chip:hover {
  padding: 8px 16px !important;
  background: var(--mf-mint) !important;
  border: 0 !important;
  border-radius: 999px !important;
  color: var(--mf-forest) !important;
  font-weight: 700 !important;
}

.mf-talk__card {
  background: var(--mf-citron) !important;
  border-radius: var(--mf-radius-lg) !important;
}

.mf-journey__no {
  color: var(--mf-emerald);
  font-weight: 800;
}

.woocommerce div.product.mf-pdp form.cart .manu-buy-now-button,
body .mf-pdp form.cart .manu-buy-now-button {
  border: 2px solid var(--mf-forest) !important;
  border-radius: 999px !important;
}

body .mf-pdp form.cart button.single_add_to_cart_button.button {
  border-radius: 999px !important;
  background: var(--mf-emerald) !important;
  border-color: var(--mf-emerald) !important;
  color: #fff !important;
}

body .mf-pdp form.cart button.single_add_to_cart_button.button:hover {
  background: var(--mf-forest) !important;
  border-color: var(--mf-forest) !important;
}

.woocommerce div.product.mf-pdp form.cart .quantity input.qty {
  border: 2px solid var(--mf-forest) !important;
  border-radius: 999px !important;
}

.mf-pdp .mf-pdp__gallery {
  border-radius: var(--mf-radius-lg) !important;
  overflow: hidden;
}

.mf-flow-page .wc-block-cart__submit-button,
.mf-flow-page .wc-block-components-checkout-place-order-button,
.mf-flow-page a.wc-block-cart__submit-button {
  background: var(--mf-emerald) !important;
  border-color: var(--mf-emerald) !important;
  border-radius: 999px !important;
  color: #fff !important;
}

.mf-flow-page .wc-block-cart__submit-button *,
.mf-flow-page .wc-block-components-checkout-place-order-button * {
  color: #fff !important;
}

/* Texte auf Farbflächen */
.mf-finder__panel p.mf-finder__value,
.mf-finder__panel .mf-meter span {
  color: var(--t-fg);
}

.mf-finder__panel p.mf-finder__text {
  color: var(--t-soft);
}

.mf-winter__result p.mf-winter__label,
.mf-winter__result p.mf-winter__sub {
  color: #fff;
}

.mf-winter__result p.mf-winter__value {
  color: var(--mf-citron);
}

.mf-winter__result p.mf-winter__note {
  color: rgba(255, 255, 255, 0.9);
}

.mf-radar p.mf-radar__lead,
.mf-radar p.mf-radar__note {
  color: #fff;
}

.mf-radar p.mf-radar__num {
  color: var(--mf-citron);
}

.mf-shophero .mf-shophero__desc p,
.mf-shophero .mf-shophero__desc {
  color: #fff;
}

.mf-shophero p.mf-shophero__sticker,
.mf-shophero p.mf-shophero__sticker * {
  color: var(--mf-forest);
}

.mf-slide p.mf-slide__kicker {
  color: var(--t-bg);
}

.mf-slide p.mf-slide__text {
  color: var(--t-soft);
}

/* ---------- Mittlere Breite ---------- */
@media (max-width: 1180px) {
  .mf-grid,
  .manu-product-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
  .mf-bento__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .mf-footer__cols {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .mf-footer__company {
    grid-column: 1 / -1;
  }
  .mf-radar {
    grid-template-columns: auto minmax(0, 1fr);
  }
  .mf-radar__actions {
    grid-column: 1 / -1;
    flex-direction: row;
    flex-wrap: wrap;
  }
}

/* ---------- Tablet und Handy ---------- */
@media (max-width: 900px) {
  .mobile-menu-toggle.mf-burger {
    display: block;
  }
  .mf-masthead {
    gap: 8px;
    min-height: 64px;
  }
  .mf-iconbtn--account {
    display: none;
  }
  .main-navigation.mf-nav {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    z-index: 1001;
    display: none;
    max-height: calc(100dvh - 90px);
    overflow-y: auto;
    padding: 12px var(--mf-gutter) 26px;
    background: var(--mf-forest);
    border-radius: 0 0 var(--mf-radius-lg) var(--mf-radius-lg);
  }
  .main-navigation.mf-nav.is-active {
    display: block;
    animation: mf-rise 0.3s var(--mf-ease);
  }
  .mf-nav ul#primary-menu,
  .mf-nav > ul {
    flex-direction: column;
    align-items: stretch !important;
    justify-content: flex-start !important;
    gap: 0 !important;
  }
  .mf-nav li a {
    padding: 12px 8px !important;
    color: #fff !important;
    font-family: var(--mf-serif);
    font-size: 30px !important;
    font-weight: 800 !important;
    letter-spacing: -0.03em;
  }
  .mf-nav li a:hover,
  .mf-nav li.current-menu-item > a {
    background: transparent !important;
    color: var(--mf-citron) !important;
    transform: none;
  }
  .mf-nav ul ul {
    position: static;
    display: block;
    padding: 0 0 8px 12px;
    background: transparent;
    border: 0;
  }
  .mf-nav ul ul a {
    font-size: 20px !important;
  }
  .mf-nav__phone {
    display: inline-block;
    margin-top: 14px;
    padding: 10px 18px;
    background: var(--mf-citron);
    border-radius: 999px;
    color: var(--mf-forest) !important;
    font-weight: 800;
    text-decoration: none !important;
  }
  .mf-search.is-open,
  .mf-search:focus-within {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    z-index: 1002;
    padding: 8px var(--mf-gutter);
    background: var(--mf-citron);
  }
  .mf-search.is-open .mf-search__input,
  .mf-search:focus-within .mf-search__input {
    flex: 1 1 auto;
    width: auto;
  }
  .mf-slide {
    padding-top: 30px;
    padding-bottom: 130px;
  }
  .mf-slide__inner {
    grid-template-columns: 1fr;
  }
  .mf-slide__visual {
    width: min(82%, 400px);
    margin-top: 6px;
  }
  .mf-floats {
    left: -9%;
  }
  .mf-grid,
  .manu-product-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .mf-panels {
    flex-direction: column;
    height: auto;
  }
  .mf-panel,
  .mf-panel:hover,
  .mf-panel:focus-within {
    flex: none;
  }
  .mf-panel a {
    height: 150px;
  }
  .mf-panel__letter {
    top: -12%;
    left: auto;
    right: 4%;
    font-size: 170px;
  }
  .mf-finder__box,
  .mf-winter__grid,
  .mf-house__grid,
  .mf-footer__ask {
    grid-template-columns: 1fr;
  }
  .mf-finder__tabs {
    flex-direction: row;
    overflow-x: auto;
    scrollbar-width: none;
  }
  .mf-finder__tabs button,
  .mf-finder__tabs button:hover,
  .mf-finder__tabs button[aria-selected="true"] {
    flex: none;
    padding: 12px 20px;
    border-radius: 999px;
    font-size: 24px;
  }
  .mf-finder__panel {
    min-height: 320px;
  }
  .mf-blob--house {
    width: min(84%, 420px);
    margin: 0 auto;
  }
  .mf-shophero__sticker {
    width: 100px;
  }
  .mf-shophero__sticker strong {
    font-size: 34px;
  }
  .mf-shophero__sticker span {
    font-size: 12.5px;
  }
  /* Filter als Seitenleiste, die sich ausblenden lässt */
  .mf-shopbar__order select {
    max-width: 150px;
    padding-left: 12px;
    font-size: 13.5px;
  }
  .mf-filters__backdrop {
    position: fixed;
    inset: 0;
    z-index: 1100;
    display: block;
    background: rgba(6, 40, 30, 0.55);
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0s linear 0.3s;
  }
  body.mf-filters-open .mf-filters__backdrop {
    opacity: 1;
    visibility: visible;
    transition: opacity 0.3s ease;
  }
  .mf-filters {
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    z-index: 1101;
    width: min(88vw, 360px);
    background: var(--bx-bg);
    border-radius: 0 var(--mf-radius-lg) var(--mf-radius-lg) 0;
    visibility: hidden;
    transform: translateX(-104%);
    transition: transform 0.38s var(--mf-ease), visibility 0s linear 0.38s;
  }
  body.mf-filters-open .mf-filters {
    visibility: visible;
    transform: none;
    transition: transform 0.38s var(--mf-ease);
  }
  .mf-filters__clip {
    display: block;
    height: 100%;
  }
  .mf-filters__form {
    display: flex;
    flex-direction: column;
    gap: 10px;
    height: 100%;
    padding: 0 14px;
    overflow-y: auto;
    visibility: inherit;
  }
  .mf-filters__head {
    position: sticky;
    top: 0;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 0 -14px;
    padding: 14px;
    background: var(--bx-bg);
  }
  .mf-filters__head h2 {
    margin: 0;
    font-size: 30px;
    font-weight: 800 !important;
  }
  .mf-filters__close {
    width: 44px;
    height: 44px;
    padding: 0;
    background: var(--mf-citron);
    border: 0;
    border-radius: 50%;
    color: var(--mf-forest);
    font-size: 26px;
    line-height: 1;
    cursor: pointer;
  }
  .mf-fgroup {
    margin: 0;
    flex: none;
  }
  .mf-filters__foot {
    position: sticky;
    bottom: 0;
    z-index: 2;
    display: flex;
    flex: none;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin: auto -14px 0;
    padding: 12px 14px;
    background: var(--bx-bg);
  }
  .mf-filters__reset {
    color: var(--mf-forest) !important;
    font-weight: 700;
  }
}

/* ---------- Handy ---------- */
@media (max-width: 640px) {
  .mf-head {
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
  }
  .mf-bento__grid {
    gap: 8px;
  }
  .mf-bento__tile {
    padding: 16px;
    border-radius: 20px;
  }
  .mf-bento__icon {
    width: 44px;
    height: 44px;
    margin-bottom: 10px;
  }
  .mf-bento__text {
    font-size: 14px;
  }
  .mf-stickers {
    grid-template-columns: 1fr;
  }
  .mf-shophero__row {
    align-items: flex-end;
  }
  .mf-shopbar__toggle {
    padding: 0 14px;
  }
  .mf-shopbar__inner {
    gap: 8px;
  }
  .mf-radar {
    grid-template-columns: 1fr;
  }
  .mf-radar__actions {
    flex-direction: column;
  }
  .mf-radar__actions .mf-btn {
    width: 100%;
  }
  .mf-footer__cols {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .mf-footer__end {
    flex-direction: column;
    align-items: flex-start;
  }
  .mf-footer__legal {
    text-align: left;
  }
}

/* ---------- Weniger Bewegung auf Wunsch ---------- */
@media (prefers-reduced-motion: reduce) {
  .mf-ticker__track,
  .mf-bigband__track,
  .mf-blob,
  .mf-seal,
  .mf-floats li,
  .mf-radar__visual i,
  .mf-shophero__sticker,
  .mf-slide,
  .mf-slide *,
  .mf-enter,
  .mf-fchip {
    animation: none !important;
    transition: none !important;
  }
}

.mf-shophero__crumbs strong,
.mf-shophero__crumbs [aria-current],
.mf-shophero__crumbs .manu-breadcrumbs * {
  color: #fff !important;
}

@media (max-width: 900px) {
  .mf-shopbar__order select {
    max-width: 170px;
    text-overflow: ellipsis;
  }
}
