/* ==========================================================================
   Minibike Friends · Design
   Farben zentral hier ändern. Die Kadence-Farbpalette wird von diesen
   Werten überschrieben, damit Theme, Shop und Bausteine immer gleich aussehen.
   ========================================================================== */

:root:root {
	/* Markenfarben */
	--mbf-accent:        #e3261b; /* Rot (Akzent, Buttons, Links) */
	--mbf-accent-hover:  #ff4a3a;
	--mbf-bg:            #0b0c0e; /* Seitenhintergrund */
	--mbf-surface:       #131518; /* Karten, Bänder */
	--mbf-surface-2:     #1b1e22;
	--mbf-line:          #2a2e33; /* Linien, Rahmen */
	--mbf-text:          #d9dadc; /* Fließtext */
	--mbf-heading:       #f5f5f2; /* Überschriften */
	--mbf-muted:         #9ea2a8; /* Nebentext */

	--mbf-font-display: 'Barlow Condensed', 'Arial Narrow', Arial, sans-serif;
	--mbf-font-body:    'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
	--mbf-radius: 3px;
	--mbf-section-space: clamp(64px, 9vw, 128px);

	/* Kadence-Palette auf Markenfarben mappen */
	--global-palette1: var(--mbf-accent);
	--global-palette2: var(--mbf-accent-hover);
	--global-palette3: var(--mbf-heading);
	--global-palette4: var(--mbf-text);
	--global-palette5: var(--mbf-muted);
	--global-palette6: #6e7277;
	--global-palette7: var(--mbf-surface-2);
	--global-palette8: var(--mbf-bg);
	--global-palette9: var(--mbf-surface);
	--global-palette-btn-bg: var(--mbf-accent);
	--global-palette-btn-bg-hover: var(--mbf-accent-hover);
	--global-palette-btn: #ffffff;
	--global-palette-btn-hover: #ffffff;
}

/* --------------------------------------------------------------------------
   Grundlagen
   -------------------------------------------------------------------------- */
body {
	background: var(--mbf-bg);
	color: var(--mbf-text);
	font-family: var(--mbf-font-body);
	-webkit-font-smoothing: antialiased;
}
.site, .content-bg, body.content-style-unboxed .site, .site-header-row-container-inner, .site-footer-row-container-inner {
	background-color: var(--mbf-bg);
}
h1, h2, h3, h4, h5, h6,
.entry-content h1, .entry-content h2, .entry-content h3, .entry-content h4 {
	font-family: var(--mbf-font-display);
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .01em;
	line-height: 1;
	color: var(--mbf-heading);
}
h1 { font-size: clamp(2.8rem, 7vw, 5.5rem); }
h2 { font-size: clamp(2.2rem, 5vw, 3.8rem); }
h3 { font-size: clamp(1.5rem, 2.6vw, 2rem); }
p { line-height: 1.65; }
a { color: #ff5a4a; }
a:hover { color: #ff8173; }
em { font-style: italic; }
::selection { background: var(--mbf-accent); color: #ffffff; }

/* Header & Menü (Kadence) */
.site-header, .site-header-row-container-inner { border-bottom: 1px solid var(--mbf-line); }
.main-navigation .primary-menu-container > ul > li.menu-item > a,
.mobile-navigation ul li > a {
	font-family: var(--mbf-font-display);
	font-weight: 600;
	font-size: 1.05rem;
	text-transform: uppercase;
	letter-spacing: .06em;
	color: var(--mbf-heading);
}
.main-navigation .primary-menu-container > ul > li.menu-item > a:hover,
.main-navigation .primary-menu-container > ul > li.current-menu-item > a { color: var(--mbf-accent); }
.popup-drawer .drawer-inner { background: var(--mbf-bg); }

/* --------------------------------------------------------------------------
   Buttons
   -------------------------------------------------------------------------- */
.wp-block-button__link, .wp-element-button, .button, button.button,
.woocommerce a.button, .woocommerce button.button, .kb-button {
	font-family: var(--mbf-font-display);
	font-weight: 700;
	font-size: 1.1rem;
	text-transform: uppercase;
	letter-spacing: .06em;
	border-radius: var(--mbf-radius);
	padding: .85em 1.6em;
	transition: background-color .2s, color .2s, border-color .2s, transform .2s;
}
.wp-block-button:not(.is-style-outline) .wp-block-button__link {
	background: var(--mbf-accent);
	color: #ffffff;
}
.wp-block-button:not(.is-style-outline) .wp-block-button__link:hover { background: var(--mbf-accent-hover); color: #ffffff; }
.wp-block-button.is-style-outline .wp-block-button__link {
	background: transparent;
	color: var(--mbf-heading);
	border: 2px solid rgba(245,245,242,.55);
}
.wp-block-button.is-style-outline .wp-block-button__link:hover { border-color: var(--mbf-accent); color: var(--mbf-accent); }
.mbf-link-arrow a { font-family: var(--mbf-font-display); font-weight: 700; text-transform: uppercase; letter-spacing: .06em; text-decoration: none; }

/* --------------------------------------------------------------------------
   Bausteine
   -------------------------------------------------------------------------- */
.mbf-eyebrow {
	font-family: var(--mbf-font-display);
	font-weight: 600;
	font-size: .95rem;
	text-transform: uppercase;
	letter-spacing: .2em;
	color: var(--mbf-accent);
	margin-bottom: .75rem !important;
}
.mbf-lead { font-size: clamp(1.05rem, 1.6vw, 1.25rem); color: var(--mbf-text); max-width: 46rem; }
.mbf-muted { color: var(--mbf-muted); }

.mbf-section { padding-top: var(--mbf-section-space); padding-bottom: var(--mbf-section-space); }
.mbf-section.mbf-surface, .mbf-surface { background: var(--mbf-surface); }
.mbf-container { max-width: 1240px; margin-left: auto !important; margin-right: auto !important; padding-left: 24px; padding-right: 24px; box-sizing: border-box; width: 100%; }
.mbf-container.mbf-narrow { max-width: 868px; }
.mbf-center { text-align: center; }
.mbf-center .wp-block-buttons { justify-content: center; }
.mbf-center .mbf-lead { margin-left: auto; margin-right: auto; }
.mbf-section > .mbf-container > *:first-child { margin-top: 0; }
.entry-content > .wp-block-group.alignfull, .entry-content > .wp-block-cover.alignfull { margin-top: 0; margin-bottom: 0; }

/* Hero */
.mbf-hero { padding-top: 120px; padding-bottom: 96px; }
.mbf-hero .wp-block-cover__inner-container, .mbf-band .wp-block-cover__inner-container { max-width: 1240px; width: 100%; margin: 0 auto; padding: 0 24px; box-sizing: border-box; }
.mbf-hero h1 { max-width: 14ch; margin: 0 0 1.5rem; }
.mbf-hero h1 em, .mbf-accent-text em, .mbf-accent-text { color: var(--mbf-accent); }
.mbf-hero .mbf-lead { color: #e6e6e3; margin-bottom: 2rem; }

/* Feature-Leiste */
.mbf-features { background: var(--mbf-surface); border-top: 1px solid var(--mbf-line); border-bottom: 1px solid var(--mbf-line); padding-top: 40px; padding-bottom: 40px; }
.mbf-features .wp-block-column { border-top: 3px solid var(--mbf-accent); padding-top: 18px; }
.mbf-features h3 { font-size: 1.35rem; margin: 0 0 .4rem; }
.mbf-features p { margin: 0; color: var(--mbf-muted); font-size: .95rem; line-height: 1.5; }

/* Bilder */
.mbf-img img, .mbf-img-duo img { width: 100%; height: 100%; object-fit: cover; border-radius: var(--mbf-radius); display: block; }
.mbf-img-duo .wp-block-column { aspect-ratio: 4 / 3; }
.mbf-img-duo figure { height: 100%; margin: 0; }
.mbf-split { align-items: center !important; gap: clamp(32px, 5vw, 80px) !important; }
.mbf-split .mbf-img { aspect-ratio: 4 / 5; margin: 0; }

/* Band mit Hintergrundbild */
.mbf-band { padding-top: 110px; padding-bottom: 110px; }
.mbf-band .wp-block-cover__inner-container { max-width: 868px; text-align: center; }
.mbf-band .wp-block-buttons { justify-content: center; }

/* Karten */
.mbf-cards { gap: 24px !important; }
.mbf-card {
	background: var(--mbf-surface);
	border: 1px solid var(--mbf-line);
	border-radius: var(--mbf-radius);
	padding: clamp(28px, 4vw, 48px);
	height: 100%;
	display: flex; flex-direction: column;
	transition: border-color .2s;
}
.mbf-card:hover { border-color: var(--mbf-accent); }
.mbf-card .wp-block-buttons { margin-top: auto; padding-top: 1rem; }
.mbf-cards > .wp-block-column { display: flex; }
.mbf-cards > .wp-block-column > .mbf-card { width: 100%; }

/* Seitenkopf für Unterseiten */
.mbf-page-header { padding-top: clamp(72px, 10vw, 140px); padding-bottom: clamp(40px, 6vw, 72px); border-bottom: 1px solid var(--mbf-line); }
.mbf-page-header h1 { margin: 0 0 1rem; }

/* Kopfzeile Produktbereich */
.mbf-row-head { justify-content: space-between; align-items: flex-end !important; gap: 16px; margin-bottom: 32px; }
.mbf-row-head h2 { margin: 0; }

/* FAQ */
.mbf-faq .wp-block-details { border-bottom: 1px solid var(--mbf-line); padding: 20px 0; }
.mbf-faq summary { font-family: var(--mbf-font-display); font-weight: 700; font-size: 1.35rem; text-transform: uppercase; color: var(--mbf-heading); cursor: pointer; }
.mbf-faq .wp-block-details p { margin-top: .75rem; }

/* Formular-Platzhalter */
.mbf-form-slot { border: 1px dashed var(--mbf-line); border-radius: var(--mbf-radius); padding: 32px; color: var(--mbf-muted); }

/* Footer */
.mbf-footer { background: var(--mbf-bg); border-top: 1px solid var(--mbf-line); padding-top: 64px; padding-bottom: 32px; font-size: .95rem; }
.mbf-footer h4 { font-size: 1.15rem; letter-spacing: .08em; margin: 0 0 1rem; }
.mbf-footer p { margin: 0 0 .5rem; color: var(--mbf-muted); }
.mbf-footer a { color: var(--mbf-text); text-decoration: none; }
.mbf-footer a:hover { color: var(--mbf-accent); }
.mbf-footer-bottom { border-top: 1px solid var(--mbf-line); margin-top: 40px !important; padding-top: 24px; justify-content: space-between; color: var(--mbf-muted); font-size: .85rem; }
.site-footer .site-bottom-footer-wrap { border-top: 1px solid var(--mbf-line); }

/* --------------------------------------------------------------------------
   WooCommerce
   -------------------------------------------------------------------------- */
.woocommerce ul.products li.product, .wc-block-grid__product {
	background: var(--mbf-surface);
	border: 1px solid var(--mbf-line);
	border-radius: var(--mbf-radius);
	overflow: hidden;
	transition: border-color .2s, transform .2s;
}
.woocommerce ul.products li.product:hover { border-color: var(--mbf-accent); transform: translateY(-2px); }
.woocommerce ul.products li.product .product-details,
.woocommerce ul.products li.product .entry-content-wrap { padding: 18px 20px 22px; }
.woocommerce ul.products li.product img { background: #0e1013; }
.woocommerce ul.products li.product .woocommerce-loop-product__title {
	font-family: var(--mbf-font-display);
	font-weight: 700; font-size: 1.25rem; text-transform: uppercase;
	color: var(--mbf-heading); line-height: 1.1;
}
.woocommerce ul.products li.product .price,
.woocommerce div.product p.price, .woocommerce div.product span.price { color: var(--mbf-accent); font-weight: 600; }
.woocommerce .stock.out-of-stock, .mbf-badge {
	display: inline-block; font-family: var(--mbf-font-display); font-weight: 700; font-size: .85rem;
	text-transform: uppercase; letter-spacing: .1em; color: var(--mbf-accent);
	border: 1px solid var(--mbf-accent); padding: .2em .6em; border-radius: var(--mbf-radius);
}
.woocommerce div.product .product_title { font-size: clamp(2rem, 4vw, 3.2rem); }
.woocommerce-tabs, .woocommerce div.product .woocommerce-tabs ul.tabs li { background: transparent; }
.woocommerce form .input-text, .woocommerce form select, input[type="text"], input[type="email"], input[type="password"], input[type="tel"], textarea, select {
	background: var(--mbf-surface-2); color: var(--mbf-heading); border: 1px solid var(--mbf-line); border-radius: var(--mbf-radius);
}

/* B2B-Hinweisbox (Produktseite, nur für Endkunden/Gäste sichtbar) */
.mbf-dealer-box {
	margin: 1.5rem 0; padding: 22px 24px;
	background: var(--mbf-surface-2); border: 1px solid var(--mbf-line); border-left: 3px solid var(--mbf-accent);
	border-radius: var(--mbf-radius);
}
.mbf-dealer-box strong { display: block; font-family: var(--mbf-font-display); font-size: 1.3rem; text-transform: uppercase; color: var(--mbf-heading); margin-bottom: .35rem; }
.mbf-dealer-box p { margin: 0 0 1rem; color: var(--mbf-muted); }
.mbf-dealer-box .mbf-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.mbf-dealer-box .button.alt { background: transparent; color: var(--mbf-heading); border: 2px solid rgba(245,245,242,.55); }
.woocommerce ul.products li.product .mbf-loop-cta { margin-top: .5rem; }
.mbf-pending { padding: 16px 20px; border-left: 3px solid var(--mbf-accent); background: var(--mbf-surface-2); margin-bottom: 24px; }

/* --------------------------------------------------------------------------
   Mobil
   -------------------------------------------------------------------------- */
@media (max-width: 781px) {
	.mbf-hero { padding-top: 96px; padding-bottom: 64px; min-height: 78vh !important; }
	.mbf-features .wp-block-columns { gap: 28px; }
	.mbf-split .mbf-img { aspect-ratio: 4 / 3; }
	.mbf-row-head { flex-direction: column; align-items: flex-start !important; }
	.mbf-footer-bottom { flex-direction: column; gap: 8px; }
}

/* Ergänzungen */
.mbf-section-tight { padding-top: 0; padding-bottom: var(--mbf-section-space); }
.mbf-row-head > .wp-block-group { max-width: 46rem; }
.mbf-row-head .mbf-link-arrow { margin: 0; }
.mbf-img { margin: 0; }
.mbf-hero, .mbf-band { padding-left: 0; padding-right: 0; }
@media (max-width: 781px) {
	.mbf-features .wp-block-columns { display: grid !important; grid-template-columns: 1fr 1fr; gap: 24px 16px; }
	.mbf-features h3 { font-size: 1.15rem; }
}

/* ==========================================================================
   Version 2: Startseite Rider / Dealer, Bereiche, Händlerpreise, Preorder
   ========================================================================== */

/* WooCommerce-Buttons in Rot */
.woocommerce a.button, .woocommerce button.button, .woocommerce input.button, .woocommerce #respond input#submit,
.woocommerce a.button.alt, .woocommerce button.button.alt, .mbf-status .button, .mbf-po-card .button {
	background: var(--mbf-accent); color: #ffffff; border: 0;
}
.woocommerce a.button:hover, .woocommerce button.button:hover, .woocommerce a.button.alt:hover, .woocommerce button.button.alt:hover,
.mbf-status .button:hover, .mbf-po-card .button:hover { background: var(--mbf-accent-hover); color: #ffffff; }
.mbf-status .button.alt { background: transparent; color: var(--mbf-heading); border: 2px solid rgba(245,245,242,.55); }
.mbf-status .button.alt:hover { border-color: var(--mbf-accent); color: #ffffff; background: transparent; }

/* Logo */
.mbf-brand { display: flex; justify-content: center; margin: 0 auto; }
.mbf-brand img { max-width: 100%; height: auto; }
.site-branding .custom-logo { max-height: 56px; width: auto; }

/* Startseite: Weiche */
.mbf-gate { position: relative; overflow: hidden; padding-top: clamp(48px, 7vw, 88px); padding-bottom: clamp(56px, 8vw, 104px); border-top: 6px solid var(--mbf-accent); }
.mbf-gate::before { content: "MF"; position: absolute; right: -2vw; top: 18%; font-family: var(--mbf-font-display); font-weight: 700; font-size: 34vw; line-height: .8; color: rgba(255,255,255,.025); pointer-events: none; }
.mbf-gate .mbf-container { position: relative; }
.mbf-gate h1 { margin: clamp(28px, 4vw, 48px) 0 1rem; text-align: center; }
.mbf-gate .mbf-lead { text-align: center; margin: 0 auto; color: var(--mbf-muted); }
.mbf-lanes { gap: clamp(16px, 2.5vw, 32px) !important; margin-top: clamp(32px, 5vw, 56px) !important; }
.mbf-lanes > .wp-block-column { display: flex; }
.mbf-lane { position: relative; width: 100%; min-height: clamp(360px, 42vw, 520px); border-radius: 14px; overflow: hidden; border: 1.5px solid var(--mbf-line); display: flex; align-items: flex-end !important; padding: clamp(24px, 3.5vw, 44px) !important; transition: transform .25s ease, border-color .25s ease; }
.mbf-lane:hover, .mbf-lane:focus-within { transform: translateY(-6px); border-color: var(--mbf-accent); }
.mbf-lane .wp-block-cover__image-background { transition: transform .6s ease; }
.mbf-lane:hover .wp-block-cover__image-background { transform: scale(1.04); }
.mbf-lane .wp-block-cover__inner-container { width: 100%; }
.mbf-lane .mbf-eyebrow { color: #ffffff; opacity: .7; }
.mbf-lane h2 { font-size: clamp(2.6rem, 5vw, 4.2rem); margin: 0 0 .6rem; }
.mbf-lane p { color: #e6e6e3; max-width: 30rem; }
.mbf-lane .wp-block-buttons { margin-top: 1.25rem; }
.mbf-lane .wp-block-button__link::after { content: ""; position: absolute; inset: 0; } /* ganze Karte klickbar */
.mbf-lane .wp-block-button { position: static; }
.mbf-lane .wp-block-button__link:focus-visible { outline: 3px solid #ffffff; outline-offset: 4px; }
.mbf-tags { display: flex; flex-wrap: wrap; gap: 8px; margin: 1rem 0 0 !important; padding: 0 !important; list-style: none; }
.mbf-tags li { border: 1px solid rgba(255,255,255,.3); border-radius: 999px; padding: .3em .9em; font-size: .9rem; color: #f1f1ee; }

/* Status-Box im Dealer-Bereich */
.mbf-status { background: var(--mbf-surface); border: 1px solid var(--mbf-line); border-left: 4px solid var(--mbf-accent); border-radius: var(--mbf-radius); padding: clamp(24px, 3.5vw, 40px); }
.mbf-status h3 { margin: 0 0 .5rem; }
.mbf-status p { color: var(--mbf-muted); }
.mbf-status .mbf-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 1.25rem; }

/* Händlerpreis-Hinweis */
.mbf-price-note { display: inline-block; margin-left: .4em; font-family: var(--mbf-font-display); font-size: .75rem; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--mbf-muted); }

/* Sammel-Preorder: Fortschritt */
.mbf-po { margin: 1.25rem 0; padding: 18px 20px; background: var(--mbf-surface-2); border: 1px solid var(--mbf-line); border-radius: var(--mbf-radius); }
.mbf-po--compact { margin: .6rem 0 .2rem; padding: 10px 12px; }
.mbf-po__head { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; flex-wrap: wrap; }
.mbf-po__label { font-family: var(--mbf-font-display); font-weight: 700; font-size: .85rem; letter-spacing: .14em; text-transform: uppercase; color: var(--mbf-accent); }
.mbf-po__count { color: var(--mbf-text); font-size: .95rem; }
.mbf-po__count strong { font-family: var(--mbf-font-display); font-size: 1.6rem; color: var(--mbf-heading); margin-right: .15em; }
.mbf-po--compact .mbf-po__count strong { font-size: 1.15rem; }
.mbf-po__bar { height: 10px; margin: 10px 0 8px; background: #2a2e33; border-radius: 999px; overflow: hidden; }
.mbf-po--compact .mbf-po__bar { height: 6px; margin: 6px 0; }
.mbf-po__bar span { display: block; height: 100%; background: var(--mbf-accent); border-radius: 999px; transition: width .6s ease; }
.mbf-po.is-reached .mbf-po__bar span { background: #2fa84f; }
.mbf-po.is-reached .mbf-po__label { color: #4cc26b; }
.mbf-po.is-closed { opacity: .7; }
.mbf-po__meta { display: flex; flex-wrap: wrap; gap: 6px 18px; font-size: .9rem; color: var(--mbf-muted); }
.mbf-po__note { margin: .75rem 0 0; font-size: .9rem; color: var(--mbf-muted); }

/* Übersicht laufender Preorders */
.mbf-po-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 24px; }
.mbf-po-card { background: var(--mbf-surface); border: 1px solid var(--mbf-line); border-radius: var(--mbf-radius); overflow: hidden; display: flex; flex-direction: column; transition: border-color .2s; }
.mbf-po-card:hover { border-color: var(--mbf-accent); }
.mbf-po-card__img img { display: block; width: 100%; aspect-ratio: 1 / 1; object-fit: cover; background: #0e1013; }
.mbf-po-card__body { padding: 18px 20px 22px; display: flex; flex-direction: column; flex: 1; }
.mbf-po-card h3 { font-size: 1.35rem; margin: 0; }
.mbf-po-card h3 a { color: var(--mbf-heading); text-decoration: none; }
.mbf-po-card .button { margin-top: auto; align-self: flex-start; }
.mbf-po-card__price { margin: 6px 0 0; font-family: var(--mbf-font-display); font-size: 1.35rem; font-weight: 700; color: var(--mbf-heading); }
.mbf-po-card__price.mbf-muted { font-family: inherit; font-size: .95rem; font-weight: 400; }

@media (max-width: 781px) {
	.mbf-lane { min-height: 320px; }
	.mbf-gate::before { display: none; }
}
@media (prefers-reduced-motion: reduce) {
	.mbf-lane, .mbf-lane .wp-block-cover__image-background, .mbf-po__bar span { transition: none; }
	.mbf-lane:hover { transform: none; }
}

/* Header: nur das Logo, kein zusätzlicher Text; auf der Startseite steht das große Logo */
.site-branding .brand.has-logo-image .site-title-wrap { display: none; }
.home .site-header .site-branding { visibility: hidden; }
.entry-content .wp-block-button.is-style-outline .wp-block-button__link, .wp-block-button.is-style-outline > .wp-block-button__link:not(.has-text-color) { color: var(--mbf-heading); }
.entry-content .wp-block-button.is-style-outline .wp-block-button__link:hover { color: #ffffff; border-color: var(--mbf-accent); }

/* ==========================================================================
   Version 2.1: Footer und Widerrufsformular
   ========================================================================== */
.mbf-site-footer { background: var(--mbf-bg); }
.mbf-footer-cols { gap: clamp(28px, 4vw, 56px) !important; }
.mbf-footer-logo { margin: 0 0 1rem; }
.mbf-footer-logo img { max-width: 100%; height: auto; }
.mbf-footer-list { list-style: none; padding: 0 !important; margin: 0; }
.mbf-footer-list li { margin: 0 0 .55rem; }
.mbf-footer-list a, .mbf-footer-contact a { color: var(--mbf-text); text-decoration: none; }
.mbf-footer-list a:hover, .mbf-footer-contact a:hover { color: #ff5a4a; }
.mbf-footer-withdraw { margin-top: 1.25rem; }
.mbf-footer-withdraw .wp-block-button__link { font-size: .95rem; padding: .7em 1.2em; }

.mbf-wd-form { background: var(--mbf-surface); border: 1px solid var(--mbf-line); border-radius: var(--mbf-radius); padding: clamp(24px, 4vw, 40px); margin-bottom: 2.5rem; }
.mbf-wd-field { margin: 0 0 1.25rem; border: 0; padding: 0; }
.mbf-wd-field label, .mbf-wd-field legend { display: block; font-weight: 600; color: var(--mbf-heading); margin-bottom: .4rem; }
.mbf-wd-field fieldset label, fieldset.mbf-wd-field label { font-weight: 400; color: var(--mbf-text); display: flex; gap: .5rem; align-items: center; margin: .3rem 0; }
.mbf-wd-field input[type=text], .mbf-wd-field input[type=email], .mbf-wd-field textarea { width: 100%; padding: .8em 1em; font-size: 1rem; box-sizing: border-box; }
.mbf-wd-field small { display: block; color: var(--mbf-muted); margin-top: .35rem; }
.mbf-wd-note { padding: 14px 16px; border-left: 3px solid var(--mbf-accent); background: var(--mbf-surface-2); }
.mbf-wd-submit { font-size: 1.15rem !important; min-height: 48px; }
.mbf-wd-small { color: var(--mbf-muted); font-size: .9rem; }
.mbf-wd-error { padding: 12px 16px; background: rgba(227,38,27,.12); border: 1px solid var(--mbf-accent); border-radius: var(--mbf-radius); color: #ffd4cf; }
.mbf-wd-hp { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.mbf-wd-receipt { background: var(--mbf-surface); border: 1px solid #2fa84f; border-left: 4px solid #2fa84f; border-radius: var(--mbf-radius); padding: clamp(24px, 4vw, 40px); margin-bottom: 2.5rem; }
.mbf-wd-receipt .mbf-eyebrow { color: #4cc26b; }
.mbf-wd-receipt h2 { font-size: clamp(1.6rem, 3vw, 2.2rem); }
.mbf-wd-receipt dl { display: grid; grid-template-columns: max-content 1fr; gap: 8px 20px; margin: 1.5rem 0 0; }
.mbf-wd-receipt dt { color: var(--mbf-muted); }
.mbf-wd-receipt dd { margin: 0; color: var(--mbf-heading); }
@media (max-width: 600px) { .mbf-wd-receipt dl { grid-template-columns: 1fr; } .mbf-wd-receipt dd { margin-bottom: .6rem; } }

/* Verkäuferhinweis */
.mbf-seller { display: flex; flex-wrap: wrap; gap: 4px 10px; align-items: baseline; margin: 1.25rem 0; padding: 12px 16px; background: var(--mbf-surface-2); border: 1px solid var(--mbf-line); border-radius: var(--mbf-radius); font-size: .92rem; color: var(--mbf-muted); }
.mbf-seller__label { font-family: var(--mbf-font-display); font-weight: 700; font-size: .8rem; letter-spacing: .14em; text-transform: uppercase; color: var(--mbf-heading); }
.mbf-seller strong { color: var(--mbf-heading); }
.mbf-seller--checkout { margin: 0 0 1rem; }
.mbf-seller--cart { margin-top: .75rem; }

/* Händler-Mindestmenge */
.mbf-qty-note { width: 100%; margin: 0 0 .75rem; font-size: .9rem; color: var(--mbf-muted); }

.mbf-form-hint { font-size: .9rem; color: var(--mbf-muted); margin-top: -.25rem !important; }

/* ==========================================================================
   Umfrage [mbf_survey]
   ========================================================================== */
.mbf-survey { max-width: 760px; margin: 0 auto; background: var(--mbf-surface); border: 1px solid var(--mbf-line); border-radius: 14px; padding: clamp(22px, 4vw, 44px); }
.mbf-survey__head { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 10px 16px; margin-bottom: clamp(20px, 3vw, 32px); }
.mbf-survey__head .mbf-eyebrow { margin: 0; }
.mbf-survey__step { margin: 0; font-family: var(--mbf-font-display); font-weight: 700; color: var(--mbf-muted); letter-spacing: .08em; }
.mbf-survey__bar { grid-column: 1 / -1; grid-row: 2; height: 4px; background: var(--mbf-line); border-radius: 2px; overflow: hidden; }
.mbf-survey__bar span { display: block; height: 100%; width: 0; background: var(--mbf-accent); transition: width .35s ease; }
.mbf-survey__intro { margin: 0 0 10px; }
.mbf-survey__q { font-size: clamp(1.8rem, 4.2vw, 2.8rem); margin: 0 0 clamp(18px, 3vw, 28px); line-height: 1.05; }
.mbf-survey__choices { display: grid; grid-template-columns: 1fr auto 1fr; align-items: stretch; gap: 14px; }
.mbf-survey__choice { position: relative; display: flex; flex-direction: column; align-items: flex-start; justify-content: flex-end; gap: 10px; min-height: clamp(130px, 22vw, 190px); padding: 20px 22px; background: var(--mbf-surface-2); border: 1.5px solid var(--mbf-line); border-radius: 12px; color: var(--mbf-heading); text-align: left; cursor: pointer; transition: transform .2s ease, border-color .2s ease, background .2s ease; }
.mbf-survey__choice:hover, .mbf-survey__choice:focus-visible { transform: translateY(-4px); border-color: var(--mbf-accent); background: #221416; outline: none; }
.mbf-survey__or { font-family: var(--mbf-font-display); font-weight: 700; font-size: .85rem; letter-spacing: .12em; color: var(--mbf-accent); }
.mbf-survey__label { font-family: var(--mbf-font-display); font-weight: 700; font-size: clamp(1.8rem, 4.5vw, 2.6rem); line-height: 1; text-transform: uppercase; }
.mbf-survey__vs { align-self: center; font-family: var(--mbf-font-display); font-style: italic; font-weight: 700; color: var(--mbf-muted); text-transform: uppercase; }
.mbf-survey__back { margin-top: 18px; background: none; border: 0; padding: 0; color: var(--mbf-muted); cursor: pointer; font-size: .95rem; }
.mbf-survey__back:hover { color: var(--mbf-heading); }
.mbf-survey__results { display: grid; gap: 18px; }
.mbf-survey__rq { margin: 0 0 6px; font-weight: 600; color: var(--mbf-heading); }
.mbf-survey__split { display: flex; height: 10px; border-radius: 5px; overflow: hidden; background: var(--mbf-line); }
.mbf-survey__sa { background: var(--mbf-accent); }
.mbf-survey__sb { background: #5b6068; }
.mbf-survey__legend { display: flex; justify-content: space-between; gap: 12px; margin-top: 6px; font-size: .9rem; color: var(--mbf-muted); }
.mine-a .la, .mine-b .lb { color: var(--mbf-heading); font-weight: 600; }
@media (max-width: 560px) {
	.mbf-survey__choices { grid-template-columns: 1fr; }
	.mbf-survey__vs { justify-self: center; }
	.mbf-survey__choice { min-height: 104px; }
}

/* ==========================================================================
   Coming-soon-Seite
   ========================================================================== */
.woocommerce-coming-soon-default { position: relative; overflow: hidden; }
.woocommerce-coming-soon-default::before { content: ""; position: absolute; inset: 0; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 600 254'%3E%3Cpath fill='%23fff' fill-rule='evenodd' d='M111,232 135,203 143,205 196,208 197,209 209,209 210,210 248,212 249,213 261,213 262,214 274,214 275,215 289,215 290,216 304,216 305,217 319,217 320,218 333,218 334,219 349,219 350,220 365,220 366,221 380,221 381,222 395,222 396,223 411,223 412,224 433,225 366,208 324,206 323,205 307,205 306,204 251,201 250,200 239,200 238,199 226,199 225,198 212,198 211,197 198,197 197,196 184,196 183,195 126,191 122,201 121,207ZM6,129 30,145 45,153 70,158 83,159 84,160 112,162 113,163 125,163 126,164 178,166 185,154 145,153 144,152 129,152 128,151 116,151 115,150 86,148 85,147 79,147 78,146 72,146 71,145 50,142 32,137 9,128ZM535,122 529,126 522,133 518,140 516,151 517,152 517,157 520,164 524,170 532,178 541,184 553,190 565,194 577,196 557,190 546,184 538,178 531,171 527,164 525,157 525,145 530,134 537,127 544,123 566,117 579,116 580,115 593,115 593,114 591,113 565,113 550,116ZM462,96 458,101 459,106 511,213 541,246 528,221 528,219 515,194 515,192 501,165 501,163 487,136 487,134 470,99 466,96ZM190,173 222,133 240,115 264,98 281,90 296,86 309,85 310,84 337,84 338,85 351,86 365,91 378,98 389,106 396,113 411,134 413,139 430,166 439,184 436,169 428,145 416,121 407,107 394,94 380,85 357,75 348,73 341,73 340,72 307,72 306,73 294,74 268,82 252,91 244,97 220,123 204,146ZM375,7 376,9 378,9 382,12 392,16 402,22 404,22 406,24 433,37 464,54 472,62 477,74 481,92 482,114 485,117 492,116 494,112 494,98 493,97 493,89 490,79 490,75 484,58 474,46 448,31 407,14 385,6Z'/%3E%3C/svg%3E") center 58% / min(1200px, 150vw) auto no-repeat; opacity: .05; pointer-events: none; }
.woocommerce-coming-soon-default .woocommerce-coming-soon-header-logo-title { visibility: hidden; }
.woocommerce-coming-soon-default .wp-block-social-links { display: none; }
.mbf-cs-logo { display: block; width: min(440px, 80vw); height: auto; margin: 0 auto clamp(20px, 4vw, 36px); }
.mbf-cs-red { color: var(--mbf-accent); }


/* ==========================================================================
   Dealer-Bereich hell (Body-Klasse .mbf-light)
   Header und Footer bleiben dunkel, weil das Logo weiße Schrift hat.
   ========================================================================== */
body.mbf-light {
	--mbf-bg:        #ffffff;
	--mbf-surface:   #f4f5f6;
	--mbf-surface-2: #eceef0;
	--mbf-line:      #dfe2e6;
	--mbf-text:      #2b2e33;
	--mbf-heading:   #0b0c0e;
	--mbf-muted:     #646a72;
	--global-palette3: #0b0c0e;
	--global-palette4: #2b2e33;
	--global-palette5: #646a72;
	--global-palette6: #8a9097;
	--global-palette7: #eceef0;
	--global-palette8: #ffffff;
	--global-palette9: #f4f5f6;
	--global-palette2: #c41e14;
	--global-palette-btn-bg-hover: #c41e14;
	--mbf-accent-hover: #c41e14;
	background: #ffffff;
	color: var(--mbf-text);
}
body.mbf-light .site-header,
body.mbf-light .site-footer,
body.mbf-light .mbf-site-footer {
	--mbf-bg:        #0b0c0e;
	--mbf-surface:   #131518;
	--mbf-surface-2: #1b1e22;
	--mbf-line:      #2a2e33;
	--mbf-text:      #d9dadc;
	--mbf-heading:   #f5f5f2;
	--mbf-muted:     #9ea2a8;
	--global-palette3: #f5f5f2;
	--global-palette4: #d9dadc;
	--global-palette5: #9ea2a8;
	--global-palette7: #1b1e22;
	--global-palette8: #0b0c0e;
	--global-palette9: #131518;
	--global-palette2: #ff4a3a;
	--global-palette-btn-bg-hover: #ff4a3a;
	--mbf-accent-hover: #ff4a3a;
}
body.mbf-light ul.products li.product img { background: #f4f5f6; }
body.mbf-light .mbf-gate::before { color: rgba(0,0,0,.04); }
body.mbf-light input:not([type=submit]):not([type=checkbox]):not([type=radio]),
body.mbf-light select,
body.mbf-light textarea {
	background: #ffffff;
	color: var(--mbf-text);
	border-color: #c9cdd2;
}
