/*
Theme Name: FABONO Style Theme
Theme URI: https://www.fabono.de/
Author: FABONO / GRUNDUM Immobilien GmbH
Author URI: https://www.fabono.de/
Description: FABONO Block-Theme: Stil, Schriften, Farben, Header/Footer und CSS für editierbare Module. Entwickelt für die Begleitung von Erben mit Erbimmobilien.
Version: 1.11.5
Requires at least: 6.4
Tested up to: 6.5
Requires PHP: 7.4
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: fabono-style-theme
Tags: full-site-editing, block-styles, editor-style, custom-logo, custom-menu
*/


/* ============================================================
   FABONO Style Theme v1.11.0
   - Tokens
   - Globale Resets
   - Layout & Header/Footer
   - Sektions-Stile (Hero, Services, Process, About usw.)
   - Erweiterte Module (philosophy-strip, step-items, cta-note)
   - Responsive
   ============================================================ */

:root {
  --fabono-cream: #F5F0E8;
  --fabono-cream-dark: #EDE6D6;
  --fabono-ink: #1C1A16;
  --fabono-ink-mid: #4A4540;
  --fabono-ink-light: #8A837A;
  --fabono-gold: var(--wp--preset--color--gold);
  --fabono-gold-light: var(--wp--preset--color--gold-light);
  --fabono-white: #FDFAF4;
  --fabono-footer: #121009;
  --fabono-serif: 'Cormorant Garamond', Georgia, serif;
  --fabono-sans: 'Jost', Arial, sans-serif;
  --fabono-content: 1180px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--fabono-cream); color: var(--fabono-ink); font-family: var(--fabono-sans); overflow-x: hidden; }

.wp-site-blocks, .entry-content, .wp-block-post-content { max-width: none !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
.entry-content > * { margin-block-start: 0; margin-block-end: 0; }
a { color: inherit; }

/* ── HEADER ─────────────────────────────────────────────── */
.fabono-header { position: sticky; top: 0; z-index: 1000; background: rgba(245,240,232,.94); backdrop-filter: blur(12px); border-bottom: .5px solid rgba(28,26,22,.1); }
.fabono-header-inner { min-height: 76px; display: flex; align-items: center; justify-content: space-between; gap: 1rem; max-width: 1400px; margin: auto; padding: 0 clamp(1rem,3vw,4rem); flex-wrap: nowrap !important; }

.fabono-logo-img { width: clamp(230px,25vw,380px) !important; margin: 0 !important; flex: 0 0 auto; }
.fabono-logo-img img { width: 100% !important; height: auto !important; display: block; mix-blend-mode: multiply; }

/* Site-Logo (Custom-Logo Block) */
.wp-block-site-logo { width: clamp(230px,25vw,380px); margin: 0 !important; flex: 0 0 auto; }
.wp-block-site-logo img { max-width: 100% !important; height: auto !important; display: block; mix-blend-mode: multiply; }

.fabono-main-navigation { flex: 1 1 auto; justify-content: center; min-width: 0; }
.fabono-header .wp-block-navigation__container { gap: clamp(.55rem,1vw,1.15rem) !important; flex-wrap: nowrap !important; }
.fabono-header .wp-block-navigation a { font-size: 10.5px !important; font-weight: 500 !important; letter-spacing: .13em !important; text-transform: uppercase !important; color: var(--fabono-ink-mid) !important; text-decoration: none !important; white-space: nowrap; }
.fabono-header .wp-block-navigation a:hover { color: var(--fabono-gold) !important; }
.fabono-header .wp-block-navigation__submenu-container { background: var(--fabono-cream) !important; border: 1px solid rgba(28,26,22,.1) !important; box-shadow: 0 18px 40px rgba(28,26,22,.12); padding: .55rem !important; min-width: 280px !important; }
.fabono-nav-cta .wp-block-button__link { padding: 10px 18px !important; font-size: 10.5px !important; }

/* ── FULL-WIDTH SEKTIONEN ──────────────────────────────── */
.fabono-section, .hero, .seo-intro, .name-section, .gen-section, .services, .decision-section, .process, .about, .values, .quote-strip, .faq, .content-hub, .cta-section, .fabono-footer, .fabono-landing-hero, .fabono-legal-page, .philosophy-strip {
  width: 100vw !important; max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important; margin-right: calc(50% - 50vw) !important;
}
.fabono-section { padding: clamp(5rem,8vw,8rem) clamp(1.25rem,4vw,6rem); }
.fabono-section > * { max-width: var(--fabono-content); margin-left: auto !important; margin-right: auto !important; }

.fabono-white { background: var(--fabono-white); }
.fabono-cream { background: var(--fabono-cream); }
.fabono-cream-dark { background: var(--fabono-cream-dark); }
.fabono-dark { background: var(--fabono-ink); color: var(--fabono-cream); }

/* ── TYPOGRAFIE ────────────────────────────────────────── */
h1, h2, h3, h4,
.hero-headline, .section-headline, .seo-headline, .faq-headline, .cta-headline, .about-headline, .gen-headline {
  font-family: var(--fabono-serif) !important; font-weight: 300 !important; line-height: 1.12 !important; margin-top: 0;
}
.hero-headline { font-size: clamp(48px,6vw,80px) !important; }
.section-headline, .seo-headline { font-size: clamp(36px,4vw,52px) !important; }
.faq-headline, .about-headline { font-size: clamp(36px,3.5vw,44px) !important; }

.section-eyebrow, .seo-kicker, .hero-eyebrow, .about-eyebrow, .cta-eyebrow, .gen-eyebrow {
  font-size: 10px !important; font-weight: 500 !important; letter-spacing: .28em !important; text-transform: uppercase !important; color: var(--fabono-gold) !important; margin: 0 0 1rem !important;
}
.section-sub, .seo-copy, .fabono-text, p { font-family: var(--fabono-sans); line-height: 1.85; }
.section-sub, .seo-copy, .fabono-text { font-size: 14px; color: var(--fabono-ink-mid); }

/* ── BUTTONS ───────────────────────────────────────────── */
.wp-block-button__link {
  font-family: var(--fabono-sans) !important; font-size: 11px !important; font-weight: 500 !important; letter-spacing: .18em !important; text-transform: uppercase !important;
  color: var(--fabono-white) !important; background: var(--fabono-ink) !important;
  padding: 14px 32px !important; border-radius: 0 !important; border: 0 !important; text-decoration: none !important;
}
.wp-block-button__link:hover { background: var(--fabono-gold) !important; }
.is-style-fabono-gold .wp-block-button__link { background: var(--fabono-gold) !important; color: var(--fabono-ink) !important; }
.is-style-fabono-outline .wp-block-button__link { background: transparent !important; color: var(--fabono-ink) !important; border: .5px solid var(--fabono-ink) !important; }

/* ── HERO ──────────────────────────────────────────────── */
.hero { background: var(--fabono-cream); padding: clamp(6rem,10vw,9rem) clamp(1.25rem,4vw,6rem); display: grid; grid-template-columns: 1fr 1fr; gap: 5rem; align-items: center; }
.hero-left { position: relative; }
.hero-eyebrow { color: var(--fabono-gold); }
.hero-sub { font-size: 16px; line-height: 1.85; color: var(--fabono-ink-mid); margin: 1.5rem 0 2.5rem; max-width: 480px; }
.hero-actions { display: flex; gap: 1rem; flex-wrap: wrap; }

.hero-stat-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1.5rem; }
.hero-stat { background: var(--fabono-white); padding: 2rem; border: .5px solid rgba(28,26,22,.08); }
.hero-stat-num { font-family: var(--fabono-serif) !important; font-size: 56px !important; font-weight: 300 !important; color: var(--fabono-ink); line-height: 1 !important; margin: 0 0 .5rem !important; }
.hero-stat-num span { color: var(--fabono-gold); font-style: italic; }
.hero-stat-label { font-size: 11px !important; color: var(--fabono-ink-mid); line-height: 1.6 !important; margin: 0 !important; }
.hero-quote { grid-column: 1 / -1; background: var(--fabono-ink); color: var(--fabono-cream); padding: 2rem; }
.hero-quote-text { font-family: var(--fabono-serif) !important; font-size: 18px !important; font-style: italic !important; line-height: 1.5 !important; margin: 0 0 1rem !important; }
.hero-quote-attr { font-size: 10px !important; letter-spacing: .2em; text-transform: uppercase; color: rgba(245,240,232,.55); margin: 0 !important; }

/* ── SEO INTRO ─────────────────────────────────────────── */
.seo-intro { padding: 7rem 6rem; background: var(--fabono-white); display: grid; grid-template-columns: 1fr 1fr; gap: 5rem; }
.seo-checklist { list-style: none; padding: 0; margin: 1.5rem 0 0 !important; display: grid; grid-template-columns: 1fr 1fr; gap: .5rem 2rem; }
.seo-checklist li { font-size: 13px; color: var(--fabono-ink-mid); padding-left: 1.5rem; position: relative; line-height: 1.7; }
.seo-checklist li::before { content: '·'; position: absolute; left: 0; color: var(--fabono-gold); font-size: 24px; line-height: 1; top: -2px; }

/* ── PHILOSOPHY-STRIP (NEU in v11) ─────────────────────── */
.philosophy-strip { padding: 6rem 6rem; background: var(--fabono-cream-dark); display: grid; grid-template-columns: 1fr 2fr; gap: 4rem; align-items: start; }
.philosophy-label { font-size: 10px !important; font-weight: 500 !important; letter-spacing: .28em !important; text-transform: uppercase !important; color: var(--fabono-gold) !important; margin: 0 0 1.5rem !important; }
.philosophy-name { font-family: var(--fabono-serif) !important; font-size: clamp(48px,5vw,72px) !important; font-weight: 300 !important; line-height: 1 !important; color: var(--fabono-ink); margin: 0 !important; letter-spacing: .04em; }
.philosophy-name em { color: var(--fabono-gold); font-style: italic; opacity: .6; }
.philosophy-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 2rem; }
.philosophy-item { padding: 1.5rem; background: var(--fabono-white); border: .5px solid rgba(28,26,22,.06); }
.philosophy-item-title { font-family: var(--fabono-sans) !important; font-size: 11px !important; font-weight: 500 !important; letter-spacing: .16em !important; text-transform: uppercase !important; color: var(--fabono-ink); margin: 0 0 .75rem !important; }
.philosophy-item-text { font-size: 13px !important; line-height: 1.75 !important; color: var(--fabono-ink-mid); margin: 0 !important; }

/* ── NAME SECTION ──────────────────────────────────────── */
.wp-block-columns.name-section { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 0 !important; align-items: stretch !important; padding: 7rem 6rem !important; background: var(--fabono-cream) !important; width: 100vw !important; max-width: 100vw !important; margin-left: calc(50% - 50vw) !important; margin-right: calc(50% - 50vw) !important; margin-bottom: 0 !important; }
.wp-block-columns.name-section > .wp-block-column { flex-basis: auto !important; min-width: 0 !important; margin: 0 !important; }
.name-part { padding: 4rem !important; position: relative !important; margin: 0 !important; }
.name-part:first-child { background: var(--fabono-white) !important; border-right: .5px solid rgba(28,26,22,.1) !important; }
.name-part:last-child { background: var(--fabono-cream-dark) !important; }
.name-letters { font-family: var(--fabono-serif) !important; font-size: 88px !important; font-weight: 300 !important; line-height: 1 !important; color: var(--fabono-ink) !important; margin: 0 0 6px !important; letter-spacing: .04em !important; }
.name-letters em { font-style: italic !important; color: var(--fabono-ink-light) !important; opacity: .3 !important; }
.name-tag { font-family: var(--fabono-sans) !important; font-size: 10px !important; font-weight: 500 !important; letter-spacing: .24em !important; text-transform: uppercase !important; color: var(--fabono-gold) !important; margin: 0 0 1.25rem !important; }
.name-meaning { font-family: var(--fabono-serif) !important; font-size: 22px !important; font-style: italic !important; font-weight: 400 !important; line-height: 1.5 !important; color: var(--fabono-ink) !important; margin: 0 0 1.25rem !important; }
.name-desc { font-family: var(--fabono-sans) !important; font-size: 14px !important; font-weight: 400 !important; line-height: 1.85 !important; color: var(--fabono-ink-mid) !important; margin: 0 !important; }

/* ── GENERATION CHAIN ──────────────────────────────────── */
.gen-section { padding: 5rem 6rem; background: var(--fabono-cream-dark); text-align: center; }
.gen-chain { display: flex; justify-content: center; align-items: center; gap: 0; margin: 2.5rem 0; flex-wrap: wrap; }
.gen-node { display: flex; flex-direction: column; align-items: center; gap: 10px; }
.gen-circle, .gen-house { width: 80px; height: 80px; border: 1px solid rgba(28,26,22,.15); background: var(--fabono-white); display: flex; align-items: center; justify-content: center; font-family: var(--fabono-serif); font-size: 13px; font-style: italic; text-align: center; line-height: 1.4; padding: 8px; }
.gen-circle { border-radius: 50%; }
.gen-house { border-color: var(--fabono-gold-light); color: var(--fabono-gold); }
.gen-house-inner { font-family: var(--fabono-serif); font-style: italic; font-size: 13px; line-height: 1.4; }
.gen-arrow-wrap { display: flex; align-items: center; padding: 0 12px; }
.gen-arrow-line { width: 30px; height: .5px; background: var(--fabono-ink-light); }
.gen-label { font-size: 10px !important; letter-spacing: .1em; color: var(--fabono-ink-light); margin: 0 !important; }
.gen-caption { font-size: 13px !important; color: var(--fabono-ink-mid); margin: 1.5rem auto 0 !important; max-width: 720px; line-height: 1.85; }

/* ── SERVICES ──────────────────────────────────────────── */
.services { padding: 8rem 6rem; background: var(--fabono-white); }
.services-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 3rem; margin-top: 3rem; }
.service-card { padding: 2rem; background: var(--fabono-cream); border: .5px solid rgba(28,26,22,.06); }
.service-num { font-family: var(--fabono-serif) !important; font-size: 26px !important; font-weight: 300 !important; color: var(--fabono-gold) !important; font-style: italic; margin: 0 0 1rem !important; }
.service-title { font-family: var(--fabono-sans) !important; font-size: 13px !important; font-weight: 500 !important; letter-spacing: .14em !important; text-transform: uppercase !important; color: var(--fabono-ink); line-height: 1.4 !important; margin: 0 0 1rem !important; }
.service-desc { font-size: 13px !important; line-height: 1.8 !important; color: var(--fabono-ink-mid); margin: 0 0 1.25rem !important; }

.service-icon { width: 36px !important; height: 36px !important; border: .5px solid rgba(28,26,22,.15) !important; display: flex !important; align-items: center !important; justify-content: center !important; margin: 0 0 1.25rem !important; background: transparent !important; }
.service-icon svg { width: 16px !important; height: 16px !important; stroke: var(--fabono-ink-mid) !important; fill: none !important; stroke-width: 1.5 !important; stroke-linecap: round !important; stroke-linejoin: round !important; display: block !important; }

.service-tags { display: flex !important; flex-wrap: wrap !important; gap: 4px !important; margin-bottom: 1.5rem !important; }
.service-tag { font-size: 10px !important; font-weight: 400 !important; letter-spacing: .06em !important; color: var(--fabono-ink-light) !important; border: .5px solid rgba(28,26,22,.15) !important; padding: 3px 8px !important; margin: 0 !important; background: transparent !important; }

.service-link a, .service-link { font-size: 10px !important; letter-spacing: .2em !important; text-transform: uppercase !important; color: var(--fabono-gold) !important; text-decoration: none !important; font-weight: 500; }

/* ── DECISION ──────────────────────────────────────────── */
.wp-block-columns.decision-section { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 5rem !important; padding: 7rem 6rem !important; background: var(--fabono-cream-dark) !important; width: 100vw !important; max-width: 100vw !important; margin-left: calc(50% - 50vw) !important; margin-right: calc(50% - 50vw) !important; margin-bottom: 0 !important; }
.decision-card { background: var(--fabono-white); padding: 2rem; border: .5px solid rgba(28,26,22,.08); margin-top: 2px; }
.decision-title { font-family: var(--fabono-sans) !important; font-size: 11px !important; font-weight: 500 !important; letter-spacing: .16em !important; text-transform: uppercase !important; color: var(--fabono-ink); margin: 0 0 .75rem !important; }
.decision-text { font-size: 13px !important; line-height: 1.8 !important; color: var(--fabono-ink-mid); margin: 0 !important; }

/* ── PROCESS ───────────────────────────────────────────── */
.process { padding: 8rem 6rem; background: var(--fabono-cream); }
.process-inner { display: grid; grid-template-columns: 1fr 2fr; gap: 6rem; max-width: var(--fabono-content); margin: 0 auto; }
.process-sticky { position: sticky; top: 100px; align-self: start; }
.process-steps { display: flex; flex-direction: column; }
.process-step { display: flex; gap: 1.5rem; }
.step-line-wrap { display: flex; flex-direction: column; align-items: center; width: 40px; flex-shrink: 0; }
.step-num-box { width: 40px; height: 40px; border: .5px solid rgba(28,26,22,.2); background: var(--fabono-white); display: flex; align-items: center; justify-content: center; font-family: var(--fabono-serif); font-size: 18px; color: var(--fabono-gold); font-style: italic; }
.step-vert-line { width: .5px; flex: 1; min-height: 40px; background: rgba(28,26,22,.1); margin: 6px 0; }
.process-step:last-child .step-vert-line { display: none; }
.step-content { padding: 6px 0 3rem; flex: 1; }
.step-title { font-family: var(--fabono-sans) !important; font-size: 13px !important; font-weight: 500 !important; letter-spacing: .14em !important; text-transform: uppercase !important; color: var(--fabono-ink) !important; margin: 0 0 .75rem !important; }
.step-text { font-size: 13px !important; line-height: 1.8 !important; color: var(--fabono-ink-mid) !important; margin: 0 0 1rem !important; }

/* step-items (NEU in v11) */
.step-items { display: flex !important; flex-wrap: wrap !important; gap: 4px !important; margin: 0 !important; }
.step-item { font-size: 10px !important; font-weight: 400 !important; letter-spacing: .06em !important; color: var(--fabono-ink-light) !important; border: .5px solid rgba(28,26,22,.15) !important; padding: 3px 8px !important; margin: 0 !important; background: transparent !important; }

/* ── ABOUT ─────────────────────────────────────────────── */
.wp-block-columns.about { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 0 !important; align-items: stretch !important; padding: 8rem 0 !important; background: var(--fabono-ink) !important; color: var(--fabono-cream) !important; width: 100vw !important; max-width: 100vw !important; margin-left: calc(50% - 50vw) !important; margin-right: calc(50% - 50vw) !important; margin-bottom: 0 !important; }
.wp-block-columns.about > .wp-block-column { flex-basis: auto !important; min-width: 0 !important; margin: 0 !important; }
.about-left { padding: 6rem !important; display: flex !important; flex-direction: column !important; justify-content: center !important; }
.about-right { padding: 6rem !important; display: flex !important; flex-direction: column !important; justify-content: center !important; gap: 2px !important; background: rgba(255,255,255,.03) !important; border-left: .5px solid rgba(255,255,255,.07) !important; }
.about-eyebrow { color: var(--fabono-gold) !important; }
.about-body { color: rgba(245,240,232,.7); margin: 0 0 1.25rem !important; line-height: 1.85; }
.about-body strong { color: var(--fabono-cream); font-weight: 500; }
.about-sig { font-family: var(--fabono-serif) !important; font-size: 24px !important; font-style: italic !important; color: var(--fabono-cream) !important; margin: 1.5rem 0 .25rem !important; }
.about-sig-role { font-size: 11px !important; font-weight: 400 !important; letter-spacing: .14em !important; text-transform: uppercase !important; color: rgba(245,240,232,.4) !important; margin: 0 !important; }
.about-fact { background: rgba(255,255,255,.04) !important; padding: 1.5rem !important; border: .5px solid rgba(255,255,255,.06) !important; margin: 0 !important; }
.about-fact-num { font-family: var(--fabono-serif) !important; font-size: 40px !important; font-weight: 300 !important; color: var(--fabono-cream) !important; line-height: 1 !important; margin: 0 0 4px !important; }
.about-fact-num em { font-style: italic !important; color: var(--fabono-gold) !important; }
.about-fact-label { font-size: 12px !important; font-weight: 400 !important; color: rgba(245,240,232,.5) !important; line-height: 1.5 !important; margin: 0 !important; }
.about-book { background: var(--fabono-gold) !important; padding: 1.5rem !important; margin: 2px 0 0 !important; color: var(--fabono-ink) !important; }
.about-book-label { font-family: var(--fabono-sans) !important; font-size: 10px !important; font-weight: 500 !important; letter-spacing: .2em !important; text-transform: uppercase !important; color: rgba(28,26,22,.6) !important; margin: 0 0 6px !important; }
.about-book-title { font-family: var(--fabono-serif) !important; font-size: 17px !important; font-style: italic !important; font-weight: 400 !important; color: var(--fabono-ink) !important; line-height: 1.4 !important; margin: 0 !important; }

/* ── VALUES ────────────────────────────────────────────── */
.values { padding: 8rem 6rem; background: var(--fabono-white); }
.values-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 3rem; margin-top: 4rem; }
.value-item { border-top: 1px solid rgba(28,26,22,.15); padding-top: 1.5rem; }
.value-num { font-family: var(--fabono-serif) !important; font-size: 22px !important; color: var(--fabono-gold) !important; font-style: italic; margin: 0 0 1rem !important; }
.value-title { font-family: var(--fabono-sans) !important; font-size: 12px !important; font-weight: 500 !important; letter-spacing: .14em !important; text-transform: uppercase !important; margin: 0 0 .75rem !important; }
.value-text { font-size: 13px !important; line-height: 1.8 !important; color: var(--fabono-ink-mid) !important; margin: 0 !important; }

/* ── QUOTE STRIP ───────────────────────────────────────── */
.quote-strip { padding: 6rem; background: var(--fabono-cream-dark); text-align: center; }
.quote-strip-text { font-family: var(--fabono-serif) !important; font-size: clamp(24px,3.5vw,42px) !important; font-style: italic !important; line-height: 1.4 !important; max-width: 800px; margin: 0 auto 1rem !important; color: var(--fabono-ink); }
.quote-strip-attr { font-size: 10px !important; letter-spacing: .2em; text-transform: uppercase; color: var(--fabono-ink-light) !important; margin: 0 !important; }

/* ── CONTENT HUB ───────────────────────────────────────── */
.content-hub { padding: 7rem 6rem; background: var(--fabono-white); }
.hub-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 1px; background: rgba(28,26,22,.08); margin-top: 3rem; }
.hub-card { background: var(--fabono-white); padding: 2rem; min-height: 180px !important; display: block !important; transition: background .2s; text-decoration: none !important; }
.hub-card:hover { background: var(--fabono-cream); }
.hub-card-title { font-family: var(--fabono-sans) !important; font-size: 13px !important; font-weight: 500 !important; letter-spacing: .14em !important; text-transform: uppercase !important; color: var(--fabono-ink); margin: 0 0 1rem !important; }
.hub-card-text { font-size: 13px !important; line-height: 1.7 !important; color: var(--fabono-ink-mid); margin: 0 !important; }
.hub-card, .hub-card *, .content-hub a { text-decoration: none !important; }

/* ── FAQ ───────────────────────────────────────────────── */
.wp-block-columns.faq { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 6rem !important; padding: 8rem 6rem !important; background: var(--fabono-cream) !important; width: 100vw !important; max-width: 100vw !important; margin-left: calc(50% - 50vw) !important; margin-right: calc(50% - 50vw) !important; margin-bottom: 0 !important; }
.faq-sub { color: var(--fabono-ink-mid); font-size: 14px; line-height: 1.85; margin: 1.5rem 0 2rem !important; }
.fabono-faq-list { display: flex; flex-direction: column; }
.fabono-faq-item { border-top: .5px solid rgba(28,26,22,.12) !important; padding: 1.25rem 0 !important; margin: 0 !important; }
.fabono-faq-item:last-child { border-bottom: .5px solid rgba(28,26,22,.12) !important; }
.fabono-faq-item summary { font-size: 13px !important; font-weight: 500; cursor: pointer; display: flex; justify-content: space-between; gap: 1rem; list-style: none; color: var(--fabono-ink); }
.fabono-faq-item summary::-webkit-details-marker { display: none; }
.fabono-faq-item summary::after { content: '+'; width: 20px; height: 20px; border: .5px solid rgba(28,26,22,.2); display: flex; align-items: center; justify-content: center; color: var(--fabono-gold); flex-shrink: 0; }
.fabono-faq-item[open] summary::after { content: '−'; }
.fabono-faq-item p { font-size: 13px !important; line-height: 1.8 !important; color: var(--fabono-ink-mid); margin: .75rem 0 0 !important; }

/* ── SECTION HEADER ────────────────────────────────────── */
.section-header { display: grid !important; grid-template-columns: 1fr 1fr !important; gap: 4rem !important; margin: 0 0 3rem !important; align-items: end !important; max-width: var(--fabono-content); margin-left: auto !important; margin-right: auto !important; }
.section-header > * { min-width: 0 !important; }
.section-header .section-sub { align-self: end !important; margin: 0 !important; }
.services .section-header, .values .section-header, .content-hub .section-header, .fabono-section .section-header { align-items: end !important; }

/* ── CTA SECTION ───────────────────────────────────────── */
.cta-section { padding: 8rem 6rem; background: var(--fabono-ink); text-align: center; color: var(--fabono-cream); }
.cta-eyebrow { color: var(--fabono-gold) !important; }
.cta-headline { color: var(--fabono-cream); }
.cta-headline em { color: var(--fabono-gold); font-style: italic; }
.cta-sub { max-width: 520px; margin: 0 auto 3rem !important; color: rgba(245,240,232,.7); }
.cta-form { display: flex !important; flex-direction: column !important; gap: 1rem !important; max-width: 480px !important; margin: 0 auto !important; }
.cta-form input, .cta-form textarea { font-family: var(--fabono-sans) !important; font-size: 13px !important; color: var(--fabono-cream) !important; background: rgba(255,255,255,.06) !important; border: .5px solid rgba(255,255,255,.15) !important; padding: 14px 18px !important; border-radius: 0 !important; width: 100% !important; }
.cta-form input::placeholder, .cta-form textarea::placeholder { color: rgba(245,240,232,.4); }
.cta-form button { font-family: var(--fabono-sans) !important; font-size: 11px !important; font-weight: 500 !important; letter-spacing: .22em !important; text-transform: uppercase !important; color: var(--fabono-ink) !important; background: var(--fabono-gold) !important; border: 0 !important; padding: 16px 32px !important; border-radius: 0 !important; cursor: pointer; }
.cta-form button:hover { background: var(--fabono-gold-light) !important; }
.cta-note { font-size: 11px !important; color: rgba(245,240,232,.45) !important; margin: .5rem 0 0 !important; line-height: 1.6 !important; }

/* DSGVO-Checkbox im Formular */
.fabono-consent { display: flex; align-items: flex-start; gap: 8px; text-align: left; }
.fabono-consent input[type=checkbox] { width: 16px !important; height: 16px !important; flex: 0 0 auto; margin-top: 2px; }
.fabono-consent label { font-size: 11px !important; color: rgba(245,240,232,.6) !important; line-height: 1.6 !important; cursor: pointer; }
.fabono-consent label a { color: var(--fabono-gold); text-decoration: underline; }

/* Honeypot (unsichtbar) */
.fabono-hp { position: absolute !important; left: -9999px !important; top: -9999px !important; opacity: 0 !important; pointer-events: none !important; }

/* Form-Status-Hinweise */
.fabono-form-notice { max-width: 480px; margin: 0 auto 1.5rem; padding: 1rem; font-size: 13px; }
.fabono-form-notice.is-success { background: rgba(184,150,90,.12); border-left: 3px solid var(--fabono-gold); color: var(--fabono-cream); }
.fabono-form-notice.is-error { background: rgba(255,80,80,.1); border-left: 3px solid #cc4444; color: var(--fabono-cream); }

/* ── BREADCRUMBS ───────────────────────────────────────── */
.fabono-breadcrumbs { font-size: 11px; letter-spacing: .1em; text-transform: uppercase; color: var(--fabono-ink-light); margin-bottom: 1.5rem; }
.fabono-breadcrumbs a { text-decoration: none; color: var(--fabono-ink-mid); }
.fabono-breadcrumbs a:hover { color: var(--fabono-gold); }

/* ── LANDING HERO / LEGAL PAGE ─────────────────────────── */
.fabono-landing-hero { background: var(--fabono-cream-dark); padding: 6rem 6rem; }
.fabono-landing-hero > * { max-width: var(--fabono-content); margin-left: auto !important; margin-right: auto !important; }
.fabono-legal-page { background: var(--fabono-white); padding: clamp(4rem,8vw,7rem) clamp(1.25rem,4vw,3rem); }
.fabono-legal-page > * { max-width: 920px; margin-left: auto !important; margin-right: auto !important; }
.fabono-legal-page h2 { font-size: clamp(24px,3vw,32px) !important; margin-top: 2.5rem !important; margin-bottom: 1rem !important; }
.fabono-legal-page p { font-size: 14px; line-height: 1.85; color: var(--fabono-ink-mid); margin-bottom: 1rem !important; }

/* ── TAX CALCULATOR ────────────────────────────────────── */
.fabono-tax-calculator { background: var(--fabono-white); padding: 2rem; border: .5px solid rgba(28,26,22,.08); max-width: 760px !important; margin-top: 2rem; }
.fabono-tax-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem; }
.fabono-tax-calculator label { font-size: 11px; letter-spacing: .1em; text-transform: uppercase; color: var(--fabono-ink-mid); display: block; margin-bottom: .25rem; }
.fabono-tax-calculator input, .fabono-tax-calculator select { width: 100%; padding: 12px; border: .5px solid rgba(28,26,22,.16); background: var(--fabono-cream); font-family: var(--fabono-sans); }
.fabono-tax-result { margin-top: 1.25rem; background: var(--fabono-cream-dark); padding: 1rem; }
.fabono-tax-result strong { font-family: var(--fabono-serif); font-size: 24px; font-weight: 300; color: var(--fabono-gold); display: block; margin-bottom: .25rem; }
.fabono-tax-disclaimer { font-size: 11px !important; color: var(--fabono-ink-light) !important; margin-top: .75rem !important; line-height: 1.6 !important; font-style: italic; }

/* ── FOOTER ────────────────────────────────────────────── */
.fabono-footer { background: var(--fabono-footer); color: var(--fabono-cream); }
.fabono-footer-main { padding: clamp(3rem,6vw,5rem) clamp(1.25rem,4vw,6rem); }
.fabono-footer-grid { max-width: var(--fabono-content); margin: auto; display: grid; grid-template-columns: 1.2fr 1fr 1fr 1fr; gap: clamp(1.5rem,3vw,3rem); }
.fabono-footer-col { border-top: 1px solid rgba(255,255,255,.08); padding-top: 1.25rem; }
.fabono-footer-brand { font-family: var(--fabono-serif) !important; font-size: 28px !important; font-weight: 300 !important; letter-spacing: .22em !important; text-transform: uppercase !important; color: var(--fabono-cream) !important; margin: 0 0 1rem !important; }
.fabono-footer-title { font-size: 10px !important; letter-spacing: .22em !important; text-transform: uppercase; color: var(--fabono-gold) !important; margin: 0 0 .75rem !important; font-weight: 500; }
.fabono-footer p, .fabono-footer a { font-size: 13px !important; color: rgba(245,240,232,.62); text-decoration: none; line-height: 1.85; }
.fabono-footer a:hover { color: var(--fabono-gold); }
.fabono-footer-legal { background: var(--fabono-cream); color: var(--fabono-ink); padding: 1.1rem clamp(1.25rem,4vw,6rem); display: block; border-top: .5px solid rgba(28,26,22,.08); }
.fabono-footer-legal-inner { max-width: var(--fabono-content); margin: auto; display: flex; justify-content: space-between; gap: 1rem; flex-wrap: wrap; font-size: 12px; }
.fabono-footer-legal-links { display: flex; gap: 1.25rem; flex-wrap: wrap; }
.fabono-footer-legal a { text-decoration: none !important; color: var(--fabono-ink) !important; }
.fabono-footer-legal a:hover { color: var(--fabono-gold) !important; }

/* ── RESPONSIVE ────────────────────────────────────────── */
@media (max-width: 1180px) {
  .fabono-logo-img, .wp-block-site-logo { width: clamp(210px,23vw,300px) !important; }
  .fabono-header .wp-block-navigation a { font-size: 10px !important; letter-spacing: .09em !important; }
  .fabono-nav-cta { display: none; }
  .services-grid, .hub-grid, .values-grid { grid-template-columns: repeat(2,1fr); }
}
@media (max-width: 960px) {
  .fabono-main-navigation { justify-content: flex-end; }
  .hero, .seo-intro, .wp-block-columns.name-section, .wp-block-columns.decision-section, .wp-block-columns.about, .wp-block-columns.faq, .section-header, .process-inner, .philosophy-strip { grid-template-columns: 1fr !important; gap: 2rem !important; }
  .services-grid, .hub-grid, .values-grid { grid-template-columns: 1fr; }
  .gen-chain { flex-wrap: wrap; gap: 1rem; }
  .gen-arrow-wrap { display: none; }
  .seo-checklist { grid-template-columns: 1fr; }
  .hero, .seo-intro, .gen-section, .services, .process, .values, .quote-strip, .content-hub, .cta-section, .fabono-landing-hero, .philosophy-strip { padding-left: 2rem !important; padding-right: 2rem !important; }
  .wp-block-columns.name-section, .wp-block-columns.decision-section, .wp-block-columns.faq { padding: 4rem 2rem !important; }
  .wp-block-columns.about { padding: 0 !important; }
  .about-left, .about-right { padding: 4rem 2rem !important; }
  .fabono-footer-grid { grid-template-columns: 1fr 1fr; }
  .fabono-tax-grid { grid-template-columns: 1fr; }
  .hero-stat-grid { grid-template-columns: 1fr; }
}
@media (max-width: 700px) {
  .fabono-logo-img, .wp-block-site-logo { width: 205px !important; }
  .name-letters { font-size: 64px !important; }
  .hero-actions { flex-direction: column; align-items: stretch; }
  .hero, .seo-intro, .gen-section, .services, .process, .values, .quote-strip, .content-hub, .cta-section, .fabono-landing-hero, .philosophy-strip { padding-left: 1.25rem !important; padding-right: 1.25rem !important; }
  .wp-block-columns.name-section, .wp-block-columns.decision-section, .wp-block-columns.faq { padding-left: 1.25rem !important; padding-right: 1.25rem !important; }
  .about-left, .about-right { padding-left: 1.25rem !important; padding-right: 1.25rem !important; }
  .fabono-footer-grid { grid-template-columns: 1fr; }
}

/* ── ABOUT mit Foto und Buch-Cover (NEU in v11.2) ──────── */
.wp-block-columns.about { grid-template-columns: 1.1fr 1fr 1fr !important; }
.about-portrait-col { padding: 0 !important; background: var(--fabono-cream-dark) !important; display: flex !important; align-items: stretch !important; min-height: 540px; }
.about-portrait-img { margin: 0 !important; width: 100% !important; height: 100% !important; }
.about-portrait-img img { width: 100% !important; height: 100% !important; object-fit: cover !important; object-position: center top !important; display: block; filter: grayscale(8%) contrast(1.02); }

.about-book { display: grid !important; grid-template-columns: 1fr 80px !important; gap: 1rem !important; align-items: center !important; }
.about-book-content { min-width: 0; }
.about-book-cover img { width: 100% !important; height: auto !important; display: block; box-shadow: 0 6px 16px rgba(0,0,0,.35); }
.about-book-meta { font-family: var(--fabono-serif) !important; font-style: italic !important; font-size: 12px !important; line-height: 1.5 !important; color: rgba(28,26,22,.6) !important; margin: 6px 0 0 !important; }

/* ── REVIEWS / TESTIMONIALS (NEU in v11.2) ─────────────── */
.fabono-reviews { padding: clamp(5rem,8vw,8rem) clamp(1.25rem,4vw,6rem); background: var(--fabono-cream); }
.fabono-reviews > * { max-width: var(--fabono-content); margin-left: auto !important; margin-right: auto !important; }
.fabono-reviews-header { display: grid; grid-template-columns: 1fr 1fr; gap: 4rem; align-items: end; margin-bottom: 3rem; }
.fabono-reviews-rating { display: flex; align-items: center; gap: 1rem; }
.fabono-rating-stars { display: inline-flex; gap: 2px; }
.fabono-rating-stars svg { width: 18px; height: 18px; fill: var(--fabono-gold); }
.fabono-rating-num { font-family: var(--fabono-serif); font-size: 32px; color: var(--fabono-ink); font-weight: 400; line-height: 1; }
.fabono-rating-num small { font-size: 14px; color: var(--fabono-ink-light); margin-left: 6px; font-family: var(--fabono-sans); }
.fabono-reviews-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5rem; }
.fabono-review-card { background: var(--fabono-white); padding: 1.75rem; border: .5px solid rgba(28,26,22,.08); display: flex; flex-direction: column; gap: 1rem; }
.fabono-review-card .fabono-rating-stars svg { width: 14px; height: 14px; }
.fabono-review-text { font-size: 14px !important; line-height: 1.75 !important; color: var(--fabono-ink-mid) !important; margin: 0 !important; flex: 1; font-family: var(--fabono-serif); font-style: italic; }
.fabono-review-attr { font-size: 11px !important; letter-spacing: .12em; text-transform: uppercase; color: var(--fabono-ink-light) !important; margin: 0 !important; padding-top: 1rem; border-top: .5px solid rgba(28,26,22,.08); display: flex; justify-content: space-between; align-items: center; }
.fabono-review-source { font-size: 9px; letter-spacing: .15em; color: var(--fabono-gold); }

/* ── LOKALE LANDINGS Marktdaten (NEU in v11.2) ─────────── */
.fabono-marktdaten { padding: clamp(4rem,7vw,7rem) clamp(1.25rem,4vw,6rem); background: var(--fabono-cream-dark); }
.fabono-marktdaten > * { max-width: var(--fabono-content); margin-left: auto !important; margin-right: auto !important; }
.fabono-marktdaten-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; background: rgba(28,26,22,.1); margin-top: 2rem; }
.fabono-marktdaten-item { background: var(--fabono-white); padding: 2rem 1.5rem; }
.fabono-marktdaten-num { font-family: var(--fabono-serif) !important; font-size: 36px !important; font-weight: 300 !important; line-height: 1 !important; color: var(--fabono-ink) !important; margin: 0 0 .5rem !important; }
.fabono-marktdaten-num em { color: var(--fabono-gold); font-style: italic; font-size: 70%; }
.fabono-marktdaten-label { font-size: 12px !important; letter-spacing: .04em; color: var(--fabono-ink-mid) !important; line-height: 1.55 !important; margin: 0 !important; }
.fabono-marktdaten-source { font-size: 10px; color: var(--fabono-ink-light); margin-top: 1.5rem; font-style: italic; }

/* ── HONEYPOT zusätzlicher Schutz (Bug-Fix v11.2) ──────── */
input[name="fabono_website"], label[for="fabono_website"], .fabono-hp, .fabono-hp * {
  position: absolute !important;
  left: -9999px !important;
  top: -9999px !important;
  width: 1px !important;
  height: 1px !important;
  overflow: hidden !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
}

/* ── RESPONSIVE Anpassungen für neue Module ────────────── */
@media (max-width: 1180px) {
  .fabono-reviews-grid { grid-template-columns: repeat(2, 1fr); }
  .fabono-marktdaten-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 960px) {
  .wp-block-columns.about { grid-template-columns: 1fr !important; }
  .about-portrait-col { min-height: 400px; }
  .about-portrait-img img { height: 400px !important; }
  .fabono-reviews-header { grid-template-columns: 1fr; gap: 1.5rem; }
  .fabono-reviews-grid { grid-template-columns: 1fr; }
  .about-book { grid-template-columns: 1fr 60px !important; }
}
.service-icon svg { display: none !important; }
.service-icon::before { content: '' !important; width: 16px !important; height: 16px !important; display: block !important; background-repeat: no-repeat !important; background-position: center !important; background-size: 16px 16px !important; }
.service-icon-01::before { background-image: url('data:image/svg+xml;utf8,<svg fill="none" stroke="%234A4540" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z"/></svg>'); }
.service-icon-02::before { background-image: url('data:image/svg+xml;utf8,<svg fill="none" stroke="%234A4540" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><polyline points="22 12 18 12 15 21 9 3 6 12 2 12"/></svg>'); }
.service-icon-03::before { background-image: url('data:image/svg+xml;utf8,<svg fill="none" stroke="%234A4540" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><circle cx="12" cy="12" r="10"/><line x1="12" y1="8" x2="12" y2="12"/><line x1="12" y1="16" x2="12.01" y2="16"/></svg>'); }
.service-icon-04::before { background-image: url('data:image/svg+xml;utf8,<svg fill="none" stroke="%234A4540" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2"/><circle cx="9" cy="7" r="4"/><path d="M23 21v-2a4 4 0 0 0-3-3.87"/><path d="M16 3.13a4 4 0 0 1 0 7.75"/></svg>'); }
.service-icon-05::before { background-image: url('data:image/svg+xml;utf8,<svg fill="none" stroke="%234A4540" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M3 9l9-7 9 7v11a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z"/><polyline points="9 22 9 12 15 12 15 22"/></svg>'); }
.service-icon-06::before { background-image: url('data:image/svg+xml;utf8,<svg fill="none" stroke="%234A4540" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16z"/></svg>'); }
.service-icon-07::before { background-image: url('data:image/svg+xml;utf8,<svg fill="none" stroke="%234A4540" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"/><polyline points="14 2 14 8 20 8"/><line x1="16" y1="13" x2="8" y2="13"/><line x1="16" y1="17" x2="8" y2="17"/></svg>'); }
.service-icon-08::before { background-image: url('data:image/svg+xml;utf8,<svg fill="none" stroke="%234A4540" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><polyline points="3 6 5 6 21 6"/><path d="M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6m3 0V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"/></svg>'); }
.service-icon-09::before { background-image: url('data:image/svg+xml;utf8,<svg fill="none" stroke="%234A4540" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><circle cx="12" cy="12" r="10"/><path d="M12 8v4l3 3"/></svg>'); }

/* ============================================================
   HAUS GEERBT {STADT} — Landing-Page Styles (v1.11.5)
   ============================================================ */

/* Marktdaten-Block */
.market-data {
	background: var(--fabono-cream);
	padding: 5rem 6rem;
	text-align: center;
}
.market-data .market-grid {
	max-width: var(--fabono-content);
	margin: 3rem auto !important;
	gap: 2rem !important;
}
.market-stat-value {
	font-family: var(--fabono-serif) !important;
	font-size: clamp(28px, 3vw, 40px) !important;
	font-weight: 400 !important;
	color: var(--fabono-gold) !important;
	margin: 0 0 0.5rem !important;
	line-height: 1.1 !important;
}
.market-stat-label {
	font-family: var(--fabono-sans) !important;
	font-size: 12px !important;
	font-weight: 500 !important;
	letter-spacing: 0.12em !important;
	text-transform: uppercase !important;
	color: var(--fabono-ink-mid) !important;
	line-height: 1.5 !important;
	margin: 0 !important;
}
.market-source {
	max-width: 720px;
	margin: 2rem auto 0 !important;
	color: var(--fabono-ink-mid) !important;
	font-size: 12px !important;
	font-style: italic;
	opacity: 0.8;
}

/* 7-Schritte-Block */
.steps-section {
	padding: 5rem 6rem;
	max-width: var(--fabono-content);
	margin: 0 auto;
}
.steps-section .steps-grid {
	gap: 3rem !important;
	margin-bottom: 2rem !important;
}
.step-num {
	font-family: var(--fabono-serif) !important;
	font-size: 32px !important;
	color: var(--fabono-gold) !important;
	margin: 0 0 0.5rem !important;
	line-height: 1 !important;
}
/* step-title und step-text sind im Theme schon */

/* FAQ-Block für Haus-Geerbt */
.faq-section {
	padding: 5rem 6rem;
	background: var(--fabono-white);
}
.faq-section > * {
	max-width: var(--fabono-content);
	margin-left: auto !important;
	margin-right: auto !important;
}
.faq-item {
	border-top: 0.5px solid rgba(28,26,22,.12);
	padding: 1.75rem 0;
	margin: 0 !important;
}
.faq-item:last-child {
	border-bottom: 0.5px solid rgba(28,26,22,.12);
}
.faq-q {
	font-family: var(--fabono-serif) !important;
	font-size: 22px !important;
	font-weight: 400 !important;
	color: var(--fabono-ink) !important;
	margin: 0 0 1rem !important;
	line-height: 1.3 !important;
}
.faq-a {
	font-family: var(--fabono-sans) !important;
	font-size: 15px !important;
	line-height: 1.7 !important;
	color: var(--fabono-ink-mid) !important;
	margin: 0 !important;
}

/* Lokal-Block */
.local-section {
	padding: 5rem 6rem;
	background: var(--fabono-cream-dark);
}
.local-section > * {
	max-width: var(--fabono-content);
	margin-left: auto !important;
	margin-right: auto !important;
}
.local-section .contact-grid {
	gap: 4rem !important;
	margin-top: 3rem !important;
}
.office-name {
	font-family: var(--fabono-sans) !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	letter-spacing: 0.14em !important;
	text-transform: uppercase !important;
	color: var(--fabono-gold) !important;
	margin: 0 0 1rem !important;
}
.office-address {
	font-size: 15px !important;
	line-height: 1.7 !important;
	margin: 0 0 1rem !important;
	color: var(--fabono-ink) !important;
}
.office-contact {
	font-size: 14px !important;
	line-height: 1.7 !important;
	margin: 0 0 1.5rem !important;
	color: var(--fabono-ink-mid) !important;
}
.office-contact a {
	color: var(--fabono-gold);
	text-decoration: none;
}
.office-contact a:hover {
	text-decoration: underline;
}
.office-hours {
	font-size: 13px !important;
	line-height: 1.7 !important;
	color: var(--fabono-ink-mid) !important;
	margin: 0 !important;
}
.local-knowledge {
	font-size: 17px !important;
	color: var(--fabono-ink) !important;
	margin: 0 0 1.5rem !important;
}
.local-text {
	font-size: 15px !important;
	line-height: 1.8 !important;
	color: var(--fabono-ink-mid) !important;
	margin: 0 0 1.25rem !important;
}

/* Related-Themen Cross-Links */
.related-section {
	padding: 5rem 6rem;
	background: var(--fabono-white);
	text-align: center;
}
.related-section > * {
	max-width: var(--fabono-content);
	margin-left: auto !important;
	margin-right: auto !important;
}
.related-section .related-grid {
	gap: 2rem !important;
	margin-top: 3rem !important;
	text-align: left;
}
.related-title {
	font-family: var(--fabono-serif) !important;
	font-size: 18px !important;
	font-weight: 400 !important;
	color: var(--fabono-ink) !important;
	margin: 0 0 0.75rem !important;
	line-height: 1.3 !important;
}
.related-title a {
	color: var(--fabono-ink) !important;
	text-decoration: none;
	border-bottom: 1px solid var(--fabono-gold);
	padding-bottom: 2px;
}
.related-title a:hover {
	color: var(--fabono-gold) !important;
}
.related-text {
	font-size: 13px !important;
	line-height: 1.6 !important;
	color: var(--fabono-ink-mid) !important;
	margin: 0 !important;
}

/* SEO-Intro Anpassungen für Haus-Geerbt */
.seo-kicker {
	font-family: var(--fabono-sans) !important;
	font-size: 12px !important;
	font-weight: 500 !important;
	letter-spacing: 0.14em !important;
	text-transform: uppercase !important;
	color: var(--fabono-gold) !important;
	margin: 0 0 1rem !important;
}
.seo-copy {
	font-size: 15px !important;
	line-height: 1.8 !important;
	color: var(--fabono-ink-mid) !important;
	margin: 0 0 1.25rem !important;
}

/* Section-Intro */
.section-intro {
	font-size: 16px !important;
	line-height: 1.7 !important;
	color: var(--fabono-ink-mid) !important;
	max-width: 720px;
	margin: 1rem auto 3rem !important;
}

/* Trust-Section */
.trust-section {
	padding: 5rem 6rem;
}

/* Mobile-Responsive für Haus-Geerbt-Sektionen */
@media (max-width: 768px) {
	.market-data,
	.steps-section,
	.faq-section,
	.local-section,
	.related-section,
	.trust-section {
		padding-left: 2rem !important;
		padding-right: 2rem !important;
	}
	.market-data .market-grid,
	.steps-section .steps-grid,
	.local-section .contact-grid,
	.related-section .related-grid {
		grid-template-columns: 1fr !important;
		gap: 2rem !important;
	}
}
@media (max-width: 480px) {
	.market-data,
	.steps-section,
	.faq-section,
	.local-section,
	.related-section,
	.trust-section {
		padding-left: 1.25rem !important;
		padding-right: 1.25rem !important;
		padding-top: 3rem !important;
		padding-bottom: 3rem !important;
	}
	.faq-q { font-size: 18px !important; }
	.market-stat-value { font-size: 24px !important; }
}
