/* ===== Design v3 — gemeinsame Farb- und Schriftwelt aller Seiten (Override ueber Inline-Styles).
   Canvas-Seiten (Startseite, Wissen) serialisieren Farben als rgb() und Fonts ohne Quotes,
   statische Seiten behalten Hex — darum stehen beide Selektor-Varianten nebeneinander.
   Tokens (aus Flyer + Logo): Papier #F3ECE1 (Grund) · Tannengruen #1F3B2C (Tinte/Hero/Polo) · Logo-Graugruen #3F5B49
           Olivgruen #55602F (Zweitakzent, 'am Hof') · Sand #E9E1D2 (Flaeche)
   Schrift: DM Serif Display (Headlines, wie 'Stark am Hof') + Outfit (Text/Nav, wie die Wortmarke); Fonts lokal in fonts/
   Ein mutiger Move: der vollbreite dunkle Hero. Alles andere bleibt ruhig. ===== */
:root {
  --v3-ground: #F3ECE1; --v3-ink: #1F3B2C; --v3-brand: #3F5B49; --v3-olive: #55602F;
  --v3-field: #E9E1D2; --v3-mist: #5E6658; --v3-line: rgba(31,59,44,0.16);
  --v3-display: 'DM Serif Display', 'Georgia', 'Times New Roman', serif;
  --v3-sans: 'Outfit', 'Karla', system-ui, sans-serif;
}
body { background: var(--v3-ground) !important; color: var(--v3-ink); font-family: var(--v3-sans); }
[style*="font-family: Bitter"], [style*="font-family:'Bitter'"], [style*="font-family: 'Bitter'"], .pinfo-bubble strong, .pinfo-card strong { font-family: var(--v3-display) !important; font-weight: 400 !important; }
[style*="font-family: Karla"], [style*="font-family:'Karla'"], [style*="font-family: 'Karla'"] { font-family: var(--v3-sans) !important; }
[style*="color: rgb(35, 80, 58)"], [style*="color:#23503A"], [style*="color: #23503A"] { color: var(--v3-brand) !important; }
[style*="background: rgb(35, 80, 58)"], [style*="background:#23503A"], [style*="background: #23503A"], .pinfo-close { background: var(--v3-ink) !important; }
[style*="border: 1.5px solid rgb(35, 80, 58)"], [style*="border:1.5px solid #23503A"] { border-color: var(--v3-brand) !important; }
a { color: var(--v3-brand); }
[style*="background:#F5F1E8"], [style*="background: #F5F1E8"], [style*="background: rgb(245, 241, 232)"] { background: var(--v3-ground) !important; }
[data-r="products"] > div[style*="background: rgb(245, 241, 232)"], [data-r="products"] > div[style*="background:#F5F1E8"] { background: #FFFFFF !important; border-color: var(--v3-line) !important; }
[style*="color: rgb(143, 85, 16)"], [style*="color:#8F5510"], [style*="color: #8F5510"] { color: var(--v3-olive) !important; letter-spacing: 0.16em !important; font-family: var(--v3-sans); }
[style*="color: rgb(90, 97, 87)"], [style*="color:#5A6157"], [style*="color: #5A6157"] { color: var(--v3-mist) !important; }
[style*="color: rgb(62, 74, 66)"], [style*="color:#3E4A42"], [style*="color: #3E4A42"] { color: #2C3A31 !important; }
[style*="background: rgb(181, 112, 28)"], [style*="background:#B5701C"], [style*="background: #B5701C"] { background: var(--v3-olive) !important; }
[style*="border-left: 3px solid rgb(181, 112, 28)"], [style*="border-left:3px solid #B5701C"] { border-left-color: var(--v3-olive) !important; }

/* Eyebrow-Marke statt Nummer: kurzer Strich, kein Zaehler */
.eyebrow-mark { display:block; width:28px; height:2px; background: var(--v3-olive); flex:none; }
.eyebrow-mark--light { background: #E0B872; }

/* Typografie: mehr Groessenkontrast, Headline enger */
[data-r="hero-text"] h1 { font-size: clamp(40px, 7.2vw, 80px) !important; line-height: 0.98 !important; letter-spacing: -0.015em !important; }
h2 { letter-spacing: -0.01em !important; }
/* Wie am Flyer: Hauptzeile dunkel, Nebenzeile olivgruen */
[data-r="hero-text"] h1 em { font-style: normal; color: #B7C3A0; }

/* Nav: sitzt auf Kalkweiss, feine Linie */
[data-r="nav"] { background: rgba(243,236,225,0.94) !important; backdrop-filter: blur(8px); border-bottom-color: var(--v3-line) !important; }

/* Hero: Vollbreite Tannengruen, Text links, Video rechts — der eine mutige Move */
/* Einspaltig wie der Rest der Seite: dunkles Band, Inhalt auf 900px, Video unter dem Text */
[data-r="hero"] { max-width: none !important; background: var(--v3-ink); color: #F3ECE1; }
[data-r="hero-text"] { max-width: 900px; width: 100%; box-sizing: border-box; margin: 0 auto; padding-top: clamp(48px, 8vw, 96px) !important; padding-bottom: clamp(40px, 6vw, 72px) !important; }
[data-r="hero-text"] h1 { color: #F3ECE1; }
[data-r="hero-text"] p, [data-r="hero-text"] > div:last-child { color: #CBD3C6 !important; }
[data-r="hero-text"] > div:last-child span { background: #B7C3A0 !important; }
[data-r="hero-text"] > span:first-child { color: #9FB3A4 !important; }
[data-r="hero-text"] a[href^="tel"] { background: #F3ECE1 !important; color: var(--v3-ink) !important; }
[data-r="hero-text"] a[href^="mailto"] { border-color: rgba(243,236,225,0.55) !important; color: #F3ECE1 !important; }
[data-r="hero-text"] a:focus-visible, a:focus-visible, button:focus-visible { outline: 3px solid var(--v3-olive); outline-offset: 3px; text-decoration: none; }
[data-r="media"] { border-radius: 0 !important; min-height: 420px !important; max-width: 900px; width: 100%; margin: 0 auto; }


/* USP-Streifen: Weide-Flaeche, schliesst an den Hero an */
[data-r="usp"] { background: var(--v3-field); border: 0 !important; }
[data-r="usp"] > div { border-right-color: var(--v3-line) !important; padding: 18px clamp(18px,3vw,32px) !important; }
/* Statische Seiten (Impressum, Datenschutz, Aktuelles, 404): Regeln ohne Inline-Styles */
h1, h2, h3, .pinfo-bubble strong, .pinfo-card strong { font-family: var(--v3-display) !important; font-weight: 400 !important; }

