/* Manufaktur Suite Blocks 1.3.0 – Farben, Radien und Abstände aus den Theme-Tokens (--mfs-*), Rückfall auf --sd-* bzw. Standardwerte.
   Stil-Varianten (is-style-hell | -flaeche | -dunkel) setzen nur Variablen – keine festen Farben in den Blöcken. */
:root{--mfsb-dark:var(--mfs-color-primary,var(--sd-dark,#2e322f));--mfsb-on-dark:var(--mfs-color-on-primary,#fff);--mfsb-gold:var(--mfs-color-accent,var(--sd-gold,#c9a777));--mfsb-gold-text:var(--mfs-color-accent-text,#7e694b);--mfsb-gold-on-dark:var(--mfs-color-accent-on-dark,var(--mfsb-gold));--mfsb-on-accent:var(--mfs-btn-on-dark-text,#242a27);--mfsb-cream:var(--mfs-color-surface,var(--sd-cream,#f3f0eb));--mfsb-base:var(--mfs-color-base,#fff);--mfsb-text:var(--mfs-color-text,#303431);--mfsb-heading:var(--mfs-color-heading,var(--mfsb-dark));--mfsb-muted:var(--mfs-color-muted,#5c615d);--mfsb-line:var(--mfs-color-border,#e5e0d8);--mfsb-field:#8a8f8b;--mfsb-width:var(--mfs-width,var(--sd-width,1200px));--mfsb-radius:var(--mfs-radius,var(--sd-radius,4px));--mfsb-radius-card:var(--mfs-radius-card,var(--mfsb-radius));--mfsb-section:var(--mfs-space-section,clamp(40px,6vw,88px));--mfsb-focus:var(--mfs-color-focus,#7e694b);--mfsb-focus-dark:var(--mfs-color-focus-on-dark,#c9a777);--mfsb-link:var(--mfs-color-link,var(--mfsb-gold-text));--mfsb-error:#a61b14;--mfsb-success-bg:#e3efe6;--mfsb-success-text:#1f4d33}
.mfsb-container{width:min(calc(100% - 48px),var(--mfsb-width));margin-inline:auto}
.mfsb-sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.mfsb-icon{flex:none}
.mfsb-eyebrow{font-size:12px!important;letter-spacing:.16em;text-transform:uppercase;color:var(--mfsb-sec-eyebrow,var(--mfsb-gold-text));font-weight:700;margin:0 0 16px!important}
.mfsb-notice{padding:12px 16px;border:1px dashed var(--mfsb-line);border-radius:var(--mfsb-radius);font-size:14px;color:var(--mfsb-muted);background:var(--mfsb-base)}

/* ---------- Abschnitte & Varianten ---------- */
.mfsb-section{--mfsb-sec-bg:var(--mfsb-base);--mfsb-sec-text:var(--mfsb-text);--mfsb-sec-heading:var(--mfsb-heading);--mfsb-sec-muted:var(--mfsb-muted);--mfsb-sec-line:var(--mfsb-line);--mfsb-sec-card:var(--mfsb-base);--mfsb-sec-link:var(--mfsb-link);background-color:var(--mfsb-sec-bg);color:var(--mfsb-sec-text);padding-block:var(--mfsb-section);box-sizing:border-box}
.mfsb-trust,.mfsb-materials,.mfsb-finder{--mfsb-sec-bg:var(--mfsb-cream)}
.mfsb-image-text.mfsb-bg-cream{--mfsb-sec-bg:var(--mfsb-cream)}
.mfsb-gallery,.mfsb-faq-aside,.mfsb-entry--dealer{--mfsb-sec-bg:var(--mfsb-dark);--mfsb-sec-text:var(--mfsb-on-dark);--mfsb-sec-heading:var(--mfsb-on-dark);--mfsb-sec-muted:color-mix(in srgb,var(--mfsb-on-dark) 84%,var(--mfsb-dark));--mfsb-sec-line:color-mix(in srgb,var(--mfsb-on-dark) 22%,transparent);--mfsb-sec-card:color-mix(in srgb,var(--mfsb-on-dark) 6%,var(--mfsb-dark));--mfsb-sec-link:var(--mfsb-gold-on-dark);--mfsb-sec-eyebrow:var(--mfsb-gold-on-dark)}
.mfsb-promo{--mfsb-sec-bg:var(--mfsb-gold);--mfsb-sec-text:var(--mfsb-on-accent);--mfsb-sec-heading:var(--mfsb-on-accent);--mfsb-sec-muted:var(--mfsb-on-accent);--mfsb-sec-link:var(--mfsb-on-accent);--mfsb-sec-eyebrow:var(--mfsb-on-accent);--mfsb-sec-line:color-mix(in srgb,var(--mfsb-on-accent) 35%,transparent)}
.mfsb-section.is-style-hell{--mfsb-sec-bg:var(--mfsb-base);--mfsb-sec-text:var(--mfsb-text);--mfsb-sec-heading:var(--mfsb-heading);--mfsb-sec-muted:var(--mfsb-muted);--mfsb-sec-line:var(--mfsb-line);--mfsb-sec-card:var(--mfsb-base);--mfsb-sec-link:var(--mfsb-link);--mfsb-sec-eyebrow:var(--mfsb-gold-text)}
.mfsb-section.is-style-flaeche{--mfsb-sec-bg:var(--mfsb-cream);--mfsb-sec-text:var(--mfsb-text);--mfsb-sec-heading:var(--mfsb-heading);--mfsb-sec-muted:var(--mfsb-muted);--mfsb-sec-line:var(--mfsb-line);--mfsb-sec-card:var(--mfsb-base);--mfsb-sec-link:var(--mfsb-link);--mfsb-sec-eyebrow:var(--mfsb-gold-text)}
.mfsb-section.is-style-dunkel,.mfsb-hero--split.is-style-dunkel{--mfsb-sec-bg:var(--mfsb-dark);--mfsb-sec-text:var(--mfsb-on-dark);--mfsb-sec-heading:var(--mfsb-on-dark);--mfsb-sec-muted:color-mix(in srgb,var(--mfsb-on-dark) 84%,var(--mfsb-dark));--mfsb-sec-line:color-mix(in srgb,var(--mfsb-on-dark) 22%,transparent);--mfsb-sec-card:color-mix(in srgb,var(--mfsb-on-dark) 6%,var(--mfsb-dark));--mfsb-sec-link:var(--mfsb-gold-on-dark);--mfsb-sec-eyebrow:var(--mfsb-gold-on-dark)}
/* Dunkle Flächen: Akzent-Buttons, heller Fokus */
.mfsb-hero:not(.is-style-hell):not(.is-style-flaeche),.mfsb-ph-image,.mfsb-ph-action,.mfsb-gallery:not(.is-style-hell):not(.is-style-flaeche),.mfsb-section.is-style-dunkel,.mfsb-faq-aside,.mfsb-entry--dealer{--mfs-btn-bg:var(--mfs-btn-on-dark-bg,var(--mfsb-gold));--mfs-btn-text:var(--mfs-btn-on-dark-text,#242a27);--mfs-btn-hover-bg:var(--mfs-btn-on-dark-hover-bg,#d3b78f);--mfs-btn-hover-text:var(--mfs-btn-on-dark-text,#242a27);--mfs-color-focus:var(--mfsb-focus-dark)}
.mfsb-promo:not(.is-style-hell):not(.is-style-flaeche):not(.is-style-dunkel){--mfs-btn-bg:var(--mfsb-on-accent);--mfs-btn-text:var(--mfsb-gold);--mfs-btn-hover-bg:var(--mfsb-dark);--mfs-btn-hover-text:#fff;--mfs-color-focus:var(--mfsb-on-accent)}
.mfsb-section :is(h1,h2,h3,h4,h5,h6){color:var(--mfsb-sec-heading)}
.mfsb-section a:where(:not(.mfsb-button,.mfsb-category,.mfsb-review,.mfsb-gallery-link,.button,.wp-element-button,.woocommerce-LoopProduct-link,.added_to_cart)){color:var(--mfsb-sec-link)}
.mfsb-section .mfsb-map-consent a{color:var(--mfsb-sec-heading);text-decoration:underline}
.mfsb-section-head{text-align:center;max-width:740px;margin:0 auto 34px}
.mfsb-section-head :is(h1,h2,h3,h4){font-size:clamp(26px,3vw,38px);line-height:1.2;margin:0 0 10px}
.mfsb-section-head p{color:var(--mfsb-sec-muted);margin:0 0 6px}
.mfsb-section-head--left,.mfsb-section-head--split{text-align:left;max-width:none;margin:0 0 28px}
.mfsb-section-head--split{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px 24px}
.mfsb-section-head--split>div{max-width:760px}
.mfsb-more{display:inline-flex;align-items:center;gap:6px;min-height:44px;font-weight:600;text-decoration:none}
.mfsb-more:hover{text-decoration:underline}

/* ---------- Buttons (gleiche Tokens wie das Theme) ---------- */
.mfsb-buttons{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px}
.mfsb-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:12px 24px;background:var(--mfs-btn-bg,var(--mfsb-dark));color:var(--mfs-btn-text,#fff)!important;border:2px solid var(--mfs-btn-bg,var(--mfsb-dark));text-decoration:none!important;border-radius:var(--mfsb-radius);font-weight:600;line-height:1.3;cursor:pointer;font:inherit;font-weight:600;transition:background-color .18s ease,color .18s ease}
.mfsb-button:hover{background:var(--mfs-btn-hover-bg,#4b4f4c);border-color:var(--mfs-btn-hover-bg,#4b4f4c);color:var(--mfs-btn-hover-text,#fff)!important}
.mfsb-button.mfsb-button--outline{background:transparent;border-color:currentColor;color:var(--mfsb-sec-heading,currentColor)!important}
.mfsb-hero .mfsb-button.mfsb-button--outline{color:inherit!important}
.mfsb-button.mfsb-button--outline:hover{background:color-mix(in srgb,currentColor 12%,transparent);border-color:currentColor}
.mfsb-section a:focus-visible,.mfsb-hero a:focus-visible,.mfsb-page-header a:focus-visible,.mfsb-button:focus-visible,.mfsb-section summary:focus-visible,.mfsb-section :is(input,select,textarea):focus-visible{outline:3px solid var(--mfs-color-focus,var(--mfsb-focus));outline-offset:3px}

/* ---------- Hero ---------- */
.mfsb-hero{position:relative;isolation:isolate;overflow:hidden;background-color:var(--mfsb-dark);background-position:center;background-size:cover;min-height:var(--mfsb-height,440px);display:flex;align-items:center;color:var(--mfsb-on-dark);padding:48px 0;box-sizing:border-box}
.mfsb-hero .mfsb-container{display:flex}
.mfsb-hero.mfsb-text-center .mfsb-container{justify-content:center;text-align:center}.mfsb-hero.mfsb-text-right .mfsb-container{justify-content:flex-end;text-align:right}
.mfsb-hero.mfsb-text-center .mfsb-buttons{justify-content:center}.mfsb-hero.mfsb-text-right .mfsb-buttons{justify-content:flex-end}
.mfsb-hero-media{position:absolute;inset:0;z-index:-1}
.mfsb-hero-media .mfsb-hero-img{width:100%;height:100%;object-fit:cover;display:block}
.mfsb-hero-media::after{content:'';position:absolute;inset:0;background:rgba(0,0,0,var(--mfsb-overlay,.45))}
.mfsb-hero-copy{max-width:780px}
.mfsb-hero :is(h1,h2,h3,h4).mfsb-hero-title{font-size:clamp(32px,4vw,56px);line-height:1.1;color:inherit;margin:0 0 20px}
.mfsb-lead{font-size:clamp(16px,1.7vw,20px);line-height:1.6;margin:0 0 26px}
.mfsb-hero .mfsb-eyebrow{color:color-mix(in srgb,var(--mfsb-gold-on-dark) 55%,#fff)}
.mfsb-hero--split{display:block;min-height:0;padding:clamp(40px,6vw,72px) 0;background-color:var(--mfsb-sec-bg,var(--mfsb-dark));color:var(--mfsb-sec-text,var(--mfsb-on-dark))}
.mfsb-hero--split .mfsb-container{display:block}
.mfsb-hero--split .mfsb-container.mfsb-hero-grid,.mfsb-hero-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:clamp(28px,5vw,64px);align-items:center}
.mfsb-hero-figure{margin:0}.mfsb-hero-figure .mfsb-hero-img{width:100%;aspect-ratio:4/3;height:auto;object-fit:cover;border-radius:var(--mfsb-radius-card);display:block}
.mfsb-hero--split.is-style-hell{--mfsb-sec-bg:var(--mfsb-base);--mfsb-sec-text:var(--mfsb-text)}
.mfsb-hero--split.is-style-flaeche{--mfsb-sec-bg:var(--mfsb-cream);--mfsb-sec-text:var(--mfsb-text)}
.mfsb-hero--split:is(.is-style-hell,.is-style-flaeche) .mfsb-hero-title{color:var(--mfsb-heading)}
.mfsb-hero--split:is(.is-style-hell,.is-style-flaeche) .mfsb-eyebrow{color:var(--mfsb-gold-text)}
@media(max-width:900px){.mfsb-hero--split .mfsb-container.mfsb-hero-grid{grid-template-columns:1fr}}

/* ---------- Bild & Text ---------- */
.mfsb-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,5vw,80px);align-items:center}.mfsb-image-right .mfsb-image{order:2}
.mfsb-image img,.mfsb-placeholder{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;display:block;border-radius:var(--mfsb-radius-card)}.mfsb-placeholder{background:var(--mfsb-sec-line)}
.mfsb-copy :is(h1,h2,h3,h4){font-size:clamp(26px,3vw,38px);line-height:1.2;margin:0 0 20px}.mfsb-copy>p:not(.mfsb-eyebrow){line-height:1.8;margin-bottom:24px}

/* ---------- Produktwelten ---------- */
.mfsb-category-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(var(--mfsb-cols,3),minmax(0,1fr));gap:clamp(16px,2vw,24px)}
.mfsb-category-grid>li{margin:0;display:flex}
.mfsb-category{width:100%;text-decoration:none!important;border-radius:var(--mfsb-radius-card);overflow:hidden}
.mfsb-category-media{display:block;overflow:hidden;background:var(--mfsb-sec-line)}
.mfsb-category-media img,.mfsb-category-placeholder{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s ease}
.mfsb-category-placeholder{background:linear-gradient(160deg,var(--mfsb-line),var(--mfsb-muted))}
.mfsb-category:hover .mfsb-category-media img{transform:scale(1.035)}
.mfsb-category-label{font-size:19px;font-weight:700;line-height:1.3}.mfsb-category small{font-size:13px;font-weight:400}
.mfsb-badges{display:flex;flex-wrap:wrap;gap:6px}
.mfsb-badges .mfs-badge{display:inline-flex;align-items:center;min-height:24px;padding:3px 10px;border-radius:var(--mfs-radius-badge,999px);font-size:13px;font-weight:600;line-height:1.3;white-space:nowrap}
.mfsb-badges .mfs-badge--custom{background:var(--mfs-badge-custom-bg,#efe6d8);color:var(--mfs-badge-custom-text,#6b4c26)}
.mfsb-badges .mfs-badge--stock{background:var(--mfs-badge-stock-bg,#e3efe6);color:var(--mfs-badge-stock-text,#24543a)}
.mfsb-category--below{display:flex;flex-direction:column;background:var(--mfsb-sec-card);border:1px solid var(--mfsb-sec-line);color:var(--mfsb-sec-heading)!important}
.mfsb-category--below .mfsb-category-media{aspect-ratio:4/3}
.mfsb-category--below .mfsb-category-body{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;padding:14px 18px;flex:1}
.mfsb-category--below:hover .mfsb-category-label{text-decoration:underline}
.mfsb-category--overlay{display:block;position:relative;min-height:240px;aspect-ratio:4/3;color:#fff!important;background:var(--mfsb-sec-line)}
.mfsb-category--overlay .mfsb-category-media{position:absolute;inset:0}
.mfsb-category--overlay:after{content:'';position:absolute;inset:0;background:linear-gradient(rgba(0,0,0,0) 25%,rgba(0,0,0,.82))}
.mfsb-category--overlay .mfsb-category-body{position:absolute;z-index:1;bottom:18px;left:20px;right:20px;display:flex;flex-direction:column;align-items:flex-start;gap:8px}
.mfsb-category--overlay .mfsb-category-label{font-size:20px;text-shadow:0 1px 3px rgba(0,0,0,.6)}
.mfsb-category:focus-visible{outline:3px solid var(--mfsb-focus);outline-offset:3px}
@media(max-width:800px){.mfsb-category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.mfsb-split{grid-template-columns:1fr}.mfsb-image-right .mfsb-image{order:0}}
@media(max-width:520px){.mfsb-container{width:min(calc(100% - 32px),var(--mfsb-width))}.mfsb-hero{min-height:var(--mfsb-mobile-height,320px);padding:32px 0}.mfsb-hero--split{min-height:0}.mfsb-category-grid{grid-template-columns:1fr}.mfsb-category--overlay{min-height:200px}}

/* ---------- Seitenheader ---------- */
.mfsb-page-header{box-sizing:border-box;position:relative;isolation:isolate;overflow:hidden;background-color:var(--mfsb-dark);background-position:var(--mfsb-ph-position,center);background-size:cover;color:var(--mfsb-on-dark);min-height:var(--mfsb-ph-height,340px);padding:36px 0 50px;display:flex;align-items:stretch}
.mfsb-ph-media{position:absolute;inset:0;z-index:-1}.mfsb-ph-media .mfsb-ph-img{width:100%;height:100%;object-fit:cover;display:block}
.mfsb-ph-media::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(25,28,26,var(--mfsb-ph-overlay,.55)),rgba(25,28,26,calc(var(--mfsb-ph-overlay,.55)*.65)))}
.mfsb-page-header .mfsb-container{display:flex;flex-direction:column;justify-content:space-between;gap:48px}
.mfsb-page-header .mfsb-ph-crumbs{font-size:13px;line-height:1.6;color:inherit}.mfsb-page-header .mfsb-ph-crumbs a{display:inline-block;padding-block:3px;color:inherit;text-decoration:none}.mfsb-page-header .mfsb-ph-crumbs a:hover{text-decoration:underline}
.mfsb-ph-content{max-width:800px}.mfsb-page-header h1{color:inherit;font-size:clamp(32px,3.5vw,52px);line-height:1.14;margin:0 0 14px}.mfsb-ph-description{font-size:clamp(15px,1.3vw,19px);line-height:1.6;margin:0 0 22px}
.mfsb-ph-align-center .mfsb-ph-content{align-self:center;text-align:center}.mfsb-ph-align-right .mfsb-ph-content{align-self:flex-end;text-align:right}
.mfsb-ph-plain{background:var(--mfsb-cream);color:var(--mfsb-heading)}
.mfsb-ph-text{background:var(--mfsb-base);color:var(--mfsb-heading);border-bottom:1px solid var(--mfsb-line)}
.mfsb-ph-action{background:var(--mfsb-dark);color:var(--mfsb-on-dark)}
.mfsb-ph-plain .mfsb-ph-crumbs,.mfsb-ph-text .mfsb-ph-crumbs{color:var(--mfsb-muted)}
.mfsb-ph-action .mfsb-eyebrow{color:var(--mfsb-gold-on-dark)}
.mfsb-ph-image .mfsb-eyebrow{color:color-mix(in srgb,var(--mfsb-gold-on-dark) 55%,#fff)}
@media(max-width:600px){.mfsb-page-header{min-height:var(--mfsb-ph-mobile,260px);padding:24px 0 32px}.mfsb-page-header .mfsb-container{gap:30px}}

/* ---------- Zwei Einstiege ---------- */
.mfsb-entries{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:24px}
.mfsb-entry{display:flex;flex-direction:column;gap:12px;padding:clamp(24px,3vw,36px);border:1px solid var(--mfsb-sec-line);border-radius:var(--mfsb-radius-card);background:var(--mfsb-sec-card)}
.mfsb-entry .mfsb-eyebrow{margin:0!important}
.mfsb-entry :is(h2,h3,h4).mfsb-entry-title{font-size:clamp(24px,2.4vw,30px);line-height:1.2;margin:0}
.mfsb-entry-text{margin:0;color:var(--mfsb-sec-muted)}
.mfsb-entry .mfsb-buttons{margin-top:auto;padding-top:8px}
.mfsb-entry--dealer{background:var(--mfsb-sec-bg);color:var(--mfsb-sec-text);border-color:transparent}
.mfsb-entry--dealer :is(h2,h3,h4){color:var(--mfsb-sec-heading)}
.mfsb-entry--dealer .mfsb-eyebrow{color:var(--mfsb-gold-on-dark)}

/* ---------- Vertrauensleiste ---------- */
.mfsb-trust{padding-block:20px}
.mfsb-trust-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:12px 24px;font-weight:600;color:var(--mfsb-sec-heading)}
.mfsb-trust-list li{display:flex;align-items:center;gap:10px;margin:0}
.mfsb-trust-list .mfsb-icon{color:var(--mfsb-sec-eyebrow,var(--mfsb-gold-text))}

/* ---------- Bewertungen ---------- */
.mfsb-review-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:20px}
.mfsb-review-grid>li{display:flex;margin:0}
.mfsb-review{display:flex;flex-direction:column;gap:6px;width:100%;padding:24px;border:1px solid var(--mfsb-sec-line);border-radius:var(--mfsb-radius-card);background:var(--mfsb-sec-card);color:var(--mfsb-sec-text)!important;text-decoration:none!important}
a.mfsb-review:hover{border-color:var(--mfsb-sec-heading)}
.mfsb-review :is(h3,h4,h5).mfsb-review-portal{font-size:17px;font-weight:600;margin:0}
.mfsb-review-value{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:0}
.mfsb-review-number{font-size:30px;font-weight:800;line-height:1.1;color:var(--mfsb-sec-heading)}.mfsb-review-number small{font-size:16px;font-weight:600}
.mfsb-stars{--s:20px;display:inline-block;width:calc(var(--s)*5);height:var(--s);background:linear-gradient(90deg,var(--mfsb-star,#a87a24) var(--mfsb-rating,0%),var(--mfsb-star-empty,#cfc9bf) var(--mfsb-rating,0%));-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2.5l2.9 6.1 6.6.8-4.9 4.6 1.3 6.6L12 17.3l-5.9 3.3 1.3-6.6L2.5 9.4l6.6-.8z'/%3E%3C/svg%3E") left/var(--s) var(--s) repeat-x;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2.5l2.9 6.1 6.6.8-4.9 4.6 1.3 6.6L12 17.3l-5.9 3.3 1.3-6.6L2.5 9.4l6.6-.8z'/%3E%3C/svg%3E") left/var(--s) var(--s) repeat-x}
.mfsb-review-meta{margin:0;font-size:15px;color:var(--mfsb-sec-muted)}
.mfsb-review-link{display:inline-flex;align-items:center;gap:6px;margin-top:auto;padding-top:6px;font-weight:600;color:var(--mfsb-sec-link)}
a.mfsb-review:hover .mfsb-review-link{text-decoration:underline}

/* ---------- Produktauswahl ---------- */
.mfsb-products .woocommerce{margin:0}
.mfsb-products ul.products{margin-bottom:0}

/* ---------- Materialraster ---------- */
.mfsb-material-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(var(--mfsb-cols,6),minmax(0,1fr));gap:16px}
.mfsb-material{display:flex;flex-direction:column;margin:0;background:var(--mfsb-sec-card);border:1px solid var(--mfsb-sec-line);border-radius:var(--mfsb-radius-card);overflow:hidden}
.mfsb-material-media{display:block;aspect-ratio:4/3;background:var(--mfsb-sec-line)}
.mfsb-material-media img,.mfsb-material-placeholder{display:block;width:100%;height:100%;object-fit:cover}
.mfsb-material-body{display:flex;flex-direction:column;gap:2px;padding:12px 14px 14px;flex:1}
.mfsb-material :is(h3,h4,h5).mfsb-material-name{font-size:16px;line-height:1.3;margin:0}
.mfsb-material-name a{color:var(--mfsb-sec-heading)!important;text-decoration:none}.mfsb-material-name a:hover{text-decoration:underline}
.mfsb-material-kind,.mfsb-material-price{margin:0;font-size:14px;color:var(--mfsb-sec-muted)}
.mfsb-material-price{font-weight:600;color:var(--mfsb-sec-text)}
.mfsb-material-sample{display:inline-flex;align-items:center;min-height:24px;margin-top:auto;padding-top:6px;font-size:14px;font-weight:600}
.mfsb-material-note{margin:16px 0 0;font-size:14px;color:var(--mfsb-sec-muted)}
@media(max-width:1000px){.mfsb-material-grid{grid-template-columns:repeat(min(var(--mfsb-cols,6),3),minmax(0,1fr))}}
@media(max-width:600px){.mfsb-material-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ---------- Ablauf ---------- */
.mfsb-step-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:20px}
.mfsb-step{margin:0;padding-top:16px;border-top:3px solid var(--mfsb-sec-heading)}
.mfsb-step-no{display:block;font-weight:800;color:var(--mfsb-sec-eyebrow,var(--mfsb-gold-text))}
.mfsb-step :is(h3,h4,h5).mfsb-step-title{font-size:19px;line-height:1.35;margin:4px 0 4px}
.mfsb-step-text{margin:0;color:var(--mfsb-sec-muted);font-size:16px}
.mfsb-steps-cta{margin-top:28px}

/* ---------- Referenzen / Galerie ---------- */
.mfsb-gallery-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(var(--mfsb-cols,3),minmax(0,1fr));gap:20px}
.mfsb-gallery-grid>li{margin:0}
.mfsb-gallery-item{margin:0}
.mfsb-gallery-item img{display:block;width:100%;height:auto;aspect-ratio:var(--mfsb-aspect,4/3);object-fit:cover;border-radius:var(--mfsb-radius-card)}
.mfsb-gallery-link{position:relative;display:block;border-radius:var(--mfsb-radius-card)}
.mfsb-gallery-zoom{position:absolute;right:10px;bottom:10px;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:rgba(0,0,0,.6);color:#fff;transition:transform .18s ease}
.mfsb-gallery-link:hover .mfsb-gallery-zoom{transform:scale(1.1)}
.mfsb-gallery-item figcaption{margin-top:10px;font-size:15px;color:var(--mfsb-sec-muted)}
.mfsb-gallery-item figcaption strong{color:var(--mfsb-sec-text);font-weight:600}
@media(max-width:800px){.mfsb-gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.mfsb-gallery-grid{grid-template-columns:1fr}}
html.mfsb-lightbox-open{overflow:hidden}
.mfsb-lightbox{box-sizing:border-box;width:min(96vw,1400px);max-width:96vw;max-height:96vh;padding:56px 64px 40px;border:0;border-radius:var(--mfsb-radius-card);background:#151716;color:#fff}
.mfsb-lightbox::backdrop{background:rgba(0,0,0,.85)}
.mfsb-lightbox-figure{margin:0;text-align:center}
.mfsb-lightbox-figure img{display:block;max-width:100%;max-height:74vh;width:auto;height:auto;margin:0 auto;object-fit:contain}
.mfsb-lightbox-figure figcaption{margin-top:12px;font-size:16px}
.mfsb-lightbox-count{margin:8px 0 0;text-align:center;font-size:14px;color:#cfd1cf}
.mfsb-lightbox-btn{position:absolute;display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:50%;background:rgba(255,255,255,.14);color:#fff;font-size:30px;line-height:1;cursor:pointer}
.mfsb-lightbox-btn:hover{background:rgba(255,255,255,.28)}.mfsb-lightbox-btn:focus-visible{outline:3px solid #fff;outline-offset:2px}
.mfsb-lightbox-close{top:8px;right:8px}.mfsb-lightbox-prev{left:10px;top:50%;transform:translateY(-50%)}.mfsb-lightbox-next{right:10px;top:50%;transform:translateY(-50%)}
@media(max-width:600px){.mfsb-lightbox{padding:56px 8px 72px}.mfsb-lightbox-prev,.mfsb-lightbox-next{top:auto;bottom:12px;transform:none}.mfsb-lightbox-prev{left:calc(50% - 56px)}.mfsb-lightbox-next{right:calc(50% - 56px)}}

/* ---------- FAQ ---------- */
.mfsb-faq-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:clamp(28px,4vw,48px);align-items:start}
.mfsb-faq-main>:is(h2,h3,h4){font-size:clamp(26px,3vw,38px);line-height:1.2;margin:0 0 16px}
.mfsb-faq-item{border-bottom:1px solid var(--mfsb-sec-line)}
.mfsb-faq-item summary{display:flex;justify-content:space-between;align-items:center;gap:16px;min-height:48px;padding:12px 0;font-weight:600;color:var(--mfsb-sec-heading);cursor:pointer;list-style:none}
.mfsb-faq-item summary::-webkit-details-marker{display:none}
.mfsb-faq-item summary::after{content:'';flex:none;width:10px;height:10px;margin-right:4px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-3px);transition:transform .18s ease}
.mfsb-faq-item[open] summary::after{transform:rotate(-135deg) translateY(-3px)}
.mfsb-faq-answer{padding:0 0 16px;color:var(--mfsb-sec-muted)}.mfsb-faq-answer>:first-child{margin-top:0}.mfsb-faq-answer>:last-child{margin-bottom:0}
.mfsb-faq-aside{display:flex;flex-direction:column;gap:12px;padding:clamp(24px,3vw,32px);border-radius:var(--mfsb-radius-card);background:var(--mfsb-sec-bg);color:var(--mfsb-sec-text)}
.mfsb-faq-aside :is(h2,h3,h4){font-size:clamp(22px,2.2vw,28px);margin:0;color:var(--mfsb-sec-heading)}
.mfsb-faq-aside p{margin:0;color:var(--mfsb-sec-muted)}
.mfsb-faq-aside .mfsb-buttons{margin-top:4px}
.mfsb-faq-contact{font-size:15px}
@media(max-width:860px){.mfsb-faq-grid{grid-template-columns:1fr}}

/* ---------- Händlerfinder ---------- */
.mfsb-finder-grid{display:grid;grid-template-columns:1fr;gap:32px;align-items:start}
.mfsb-finder-grid:has(>.mfsb-finder-map:not([hidden])){grid-template-columns:minmax(0,1fr) minmax(0,1.1fr)}
.mfsb-finder-main>:is(h2,h3,h4){font-size:clamp(26px,3vw,38px);line-height:1.2;margin:0 0 10px}
.mfsb-finder-intro{color:var(--mfsb-sec-muted);margin:0 0 18px}
.mfsb-finder-form{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px;margin:0 0 16px}
.mfsb-finder-term{flex:1 1 200px}.mfsb-finder-radius{flex:0 0 120px}
.mfsb-finder-actions{display:flex;flex-wrap:wrap;gap:8px}
.mfsb-finder-status{margin:0 0 12px;font-weight:600;color:var(--mfsb-sec-heading)}
.mfsb-finder-status:focus{outline:none}.mfsb-finder-status:focus-visible{outline:3px solid var(--mfsb-focus);outline-offset:3px}
.mfsb-finder-results{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.mfsb-finder-item{margin:0;padding:14px 16px;background:var(--mfsb-sec-card);border:1px solid var(--mfsb-sec-line);border-radius:var(--mfsb-radius)}
.mfsb-finder-item-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 12px}
.mfsb-finder-item :is(h3,h4,h5).mfsb-finder-name{font-size:17px;margin:0}
.mfsb-finder-kind{font-size:13px;color:var(--mfsb-sec-muted)}
.mfsb-finder-item p{margin:4px 0 0;font-size:15px}
.mfsb-finder-distance{font-weight:600}
.mfsb-finder-note{color:var(--mfsb-sec-muted)}
.mfsb-finder-links{display:flex;flex-wrap:wrap;gap:4px 18px}
.mfsb-finder-links a{display:inline-flex;align-items:center;gap:6px;min-height:28px}
.mfsb-finder-map{position:relative;min-height:360px;border-radius:var(--mfsb-radius-card);overflow:hidden;background:color-mix(in srgb,var(--mfsb-sec-line) 70%,var(--mfsb-sec-bg))}
.mfsb-map-consent{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6px;min-height:360px;padding:24px;text-align:center;box-sizing:border-box}
.mfsb-map-consent p{max-width:440px;margin:0;font-size:15px}
.mfsb-map-consent-actions{display:flex;flex-direction:column;align-items:center;gap:10px;margin-top:10px!important}
.mfsb-map-remember{display:inline-flex;align-items:center;gap:8px;min-height:24px;font-size:14px}
.mfsb-map-remember input{width:24px;height:24px;margin:0}
.mfsb-map-canvas{display:none;height:100%;min-height:420px}.mfsb-map-canvas.is-active{display:block}
.mfsb-finder-map .leaflet-container{font:inherit;font-size:14px}
@media(max-width:860px){.mfsb-finder-grid:has(>.mfsb-finder-map:not([hidden])){grid-template-columns:1fr}}

/* ---------- Formulare (Kontakt, Händlerfinder) ---------- */
.mfsb-contact-inner{max-width:820px}
.mfsb-form{display:grid;gap:16px}
.mfsb-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:16px}
.mfsb-field label{display:block;margin:0 0 6px;font-weight:600;color:var(--mfsb-sec-heading)}
.mfsb-field :is(input[type=text],input[type=email],input[type=tel],input[type=url],select,textarea){box-sizing:border-box;width:100%;min-height:48px;padding:10px 14px;border:1px solid var(--mfsb-field);border-radius:var(--mfsb-radius);background:#fff;color:#1f2321;font:inherit}
.mfsb-field textarea{min-height:140px;resize:vertical}
.mfsb-field input[type=file]{font:inherit;max-width:100%}
.mfsb-field-hint{margin:6px 0 0;font-size:14px;color:var(--mfsb-sec-muted)}
.mfsb-field--error :is(input,select,textarea){border:2px solid var(--mfsb-error)}
.mfsb-field-error{margin:6px 0 0;font-size:14px;font-weight:600;color:var(--mfsb-error)}
.mfsb-section.is-style-dunkel .mfsb-field-error{color:#ffb4ab}
.mfsb-field--check{display:grid;grid-template-columns:auto 1fr;gap:4px 10px;align-items:start}
.mfsb-field--check input{width:24px;height:24px;margin:0}.mfsb-field--check label{font-weight:400;margin:0}.mfsb-field--check .mfsb-field-error{grid-column:2}
.mfsb-form-note{margin:0;font-size:14px;color:var(--mfsb-sec-muted)}
.mfsb-form .mfsb-button{justify-self:start}
.mfsb-hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.mfsb-alert{margin:0 0 20px;padding:14px 18px;border-radius:var(--mfsb-radius);border:1px solid}
.mfsb-alert p{margin:0}.mfsb-alert ul{margin:8px 0 0;padding-left:20px}
.mfsb-alert--success{background:var(--mfsb-success-bg);color:var(--mfsb-success-text);border-color:color-mix(in srgb,var(--mfsb-success-text) 30%,transparent)}
.mfsb-alert--error{background:#fbeceb;color:#7d1712;border-color:#e7b3ae}.mfsb-alert--error a{color:#7d1712!important;text-decoration:underline}

/* ---------- Aktionsbanner ---------- */
.mfsb-promo{padding-block:clamp(28px,4vw,44px)}
.mfsb-promo-inner{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:20px 40px}
.mfsb-promo-copy{flex:1 1 420px;min-width:0}
.mfsb-promo .mfsb-eyebrow{margin:0 0 8px!important}
.mfsb-promo :is(h2,h3,h4).mfsb-promo-title{font-size:clamp(22px,2.6vw,32px);line-height:1.2;margin:0 0 6px}
.mfsb-promo-text p,.mfsb-promo-text{margin:0}
.mfsb-promo-until{margin:8px 0 0;font-size:14px;font-weight:600}
.mfsb-promo-action{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px}
.mfsb-promo-code{margin:0;padding:8px 14px;border:2px dashed var(--mfsb-sec-line);border-radius:var(--mfsb-radius)}
.mfsb-promo-code strong{letter-spacing:.06em}

@media(prefers-reduced-motion:reduce){.mfsb-button,.mfsb-category-media img,.mfsb-gallery-zoom,.mfsb-faq-item summary::after{transition:none!important}.mfsb-category:hover .mfsb-category-media img{transform:none}}
.mfsb-section input[type=checkbox]{width:24px;height:24px;min-width:24px;min-height:24px;margin:0;accent-color:var(--mfsb-dark)}
