@font-face{font-family:'Jost';font-style:normal;font-weight:300 700;font-display:swap;src:url(../fonts/jost.woff2) format('woff2')}
@font-face{font-family:'Jost';font-style:italic;font-weight:400;font-display:swap;src:url(../fonts/jost-italic.woff2) format('woff2')}
@font-face{font-family:'Clicker Script';font-style:normal;font-weight:400;font-display:swap;src:url(../fonts/clicker-script.woff2) format('woff2')}

/* Heidi Klein — Designsystem
   Marke des Kunden übernommen, Umsetzung neu. Die Farben stehen als Tokens
   ganz oben: nur dort ändern, nie weiter unten im Dokument. */

:root{
  --tinte:#1e2618;            /* Textfarbe der alten Seite */
  --akzent:#5a7148;           /* Grün der alten Seite: Überschriften, Flächen */
  --akzent-dunkel:#4a5e3a;    /* für kleinen Text und Knöpfe (≥ 4,5:1 auf Weiß) */
  --akzent-hell:#e7ede1;
  --salbei:#c2d0b7;           /* Knopf- und Zettelfarbe der alten Seite */
  --moos:#94a07a;
  --oliv:#636b51;
  --blush:#fdf4ee;            /* zarter Rosé-Grund der alten Seite */
  --terra:#cf9068;            /* nur Deko: Blütenmitte, Zweig wie auf der alten Seite */
  --papier:#fdfcf9;
  --sand:#f5f3ec;
  --grau:#56604c;
  --linie:#e2e3da;

  --radius:22px;
  --radius-klein:12px;
  --schatten:0 2px 4px rgba(30,38,24,.04), 0 12px 32px rgba(30,38,24,.08);
  --schatten-hoch:0 4px 8px rgba(30,38,24,.06), 0 22px 50px rgba(30,38,24,.14);
  --breite:1180px;
  --luft:clamp(60px, 8vw, 112px);
  --schrift:'Jost',-apple-system,'Segoe UI',Helvetica,Arial,sans-serif;
  --skript:'Clicker Script',cursive;
  /* Namen, die das Blog-Modul erwartet */
  --lila:var(--akzent-dunkel);--gruen:var(--akzent);--r:var(--radius);
  --schatten-stark:var(--schatten-hoch);--text:var(--tinte);
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.001ms !important;transition-duration:.001ms !important}
}
body{margin:0;font-family:var(--schrift);font-weight:400;color:var(--tinte);
  background:var(--papier);line-height:1.7;-webkit-font-smoothing:antialiased}
/* height:auto ist Pflicht — sonst gewinnt das HTML-height-Attribut über aspect-ratio */
img{max-width:100%;height:auto;display:block}
a{color:inherit}

h1,h2,h3,h4{font-weight:600;line-height:1.12;letter-spacing:-.015em;margin:0 0 .5em;
  text-wrap:balance;hyphens:none;padding-bottom:.06em}
h1{font-size:clamp(2.1rem,4.6vw,3.4rem)}
h2{font-size:clamp(1.6rem,3vw,2.4rem)}
h3{font-size:1.12rem;line-height:1.35}
p{margin:0 0 1.1em}
.lead{font-size:clamp(1.05rem,1.5vw,1.2rem);color:var(--grau);max-width:58ch}
.klein{font-size:.9rem;color:var(--grau)}
.mitte{text-align:center}
.btn-reihe.mitte{justify-content:center}

.huelle{width:min(100% - 40px,var(--breite));margin-inline:auto}
.huelle.schmal{width:min(100% - 40px,760px)}
section{padding-block:var(--luft);scroll-margin-top:92px}
.sand{background:var(--sand)}

/* Eine farbige Unterstreichung je Überschrift, immer unter den Unterlängen —
   ein Balken auf der Grundlinie schneidet sonst durch j, g und p. */
.strich{position:relative;display:inline-block;padding-bottom:.28em}
.strich::after{content:"";position:absolute;left:-.04em;right:-.06em;bottom:.02em;
  height:.18em;background:var(--akzent);border-radius:99px;opacity:.85}

.eyebrow{display:inline-block;font-size:.78rem;font-weight:600;letter-spacing:.12em;
  text-transform:uppercase;color:var(--akzent-dunkel);margin-bottom:.9em}

/* ── Buttons: genau ein Primär-CTA je Abschnitt ── */
.btn{display:inline-flex;align-items:center;gap:.55em;padding:.95em 1.7em;
  border-radius:99px;border:1.5px solid transparent;font-family:inherit;font-size:1rem;
  font-weight:500;text-decoration:none;cursor:pointer;
  transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease}
.btn-primar{background:var(--tinte);color:#fff;box-shadow:0 8px 20px rgba(20,22,30,.18)}
.btn-primar:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(20,22,30,.26)}
.btn-zweit{background:transparent;color:var(--tinte);border-color:var(--linie)}
.btn-zweit:hover{border-color:var(--tinte);background:#fff}
.btn-hell{background:#fff;color:var(--tinte)}
.btn-hell:hover{transform:translateY(-2px)}
.btn-reihe{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin-top:26px}
.pfeil{flex:none}
:where(a,button,input,select,textarea,summary):focus-visible{
  outline:3px solid var(--akzent-dunkel);outline-offset:3px;border-radius:6px}

/* ── Kopf ── */
.skip{position:absolute;left:-9999px;background:#fff;padding:1em 1.5em;z-index:100}
.skip:focus{left:0;top:0}
.kopf{position:sticky;top:0;z-index:50;border-bottom:1px solid var(--linie)}
/* Unschärfe nur auf der Fläche dahinter: backdrop-filter am .kopf selbst macht ihn
   zum Bezugsrahmen für position:fixed — das Handy-Menü wäre unsichtbar. */
.kopf::before{content:"";position:absolute;inset:0;z-index:-1;background:rgba(255,255,255,.93);
  backdrop-filter:saturate(180%) blur(14px);-webkit-backdrop-filter:saturate(180%) blur(14px)}
.kopf-innen{display:flex;align-items:center;gap:28px;padding-block:14px}
.marke{font-weight:600;letter-spacing:-.01em;text-decoration:none;font-size:1.05rem}
.marke img{height:40px;width:auto}
.menu{display:flex;gap:26px;margin-left:auto;align-items:center;list-style:none;
  padding:0;margin-block:0}
.menu a{text-decoration:none;font-size:.95rem;color:var(--tinte);padding-block:6px;position:relative}
.menu a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;
  background:var(--akzent);transform:scaleX(0);transform-origin:left;
  transition:transform .2s ease;border-radius:2px}
.menu a:hover::after,.menu a[aria-current="page"]::after{transform:scaleX(1)}
.menu-cta a::after{display:none}
.kopf .btn{padding:.7em 1.3em;font-size:.92rem}
.hat-unter{position:relative}
.unter{position:absolute;top:calc(100% + 14px);left:50%;translate:-50% 0;min-width:280px;
  background:#fff;border:1px solid var(--linie);border-radius:var(--radius);
  box-shadow:var(--schatten-hoch);padding:10px;list-style:none;margin:0;display:grid;gap:2px;
  opacity:0;visibility:hidden;transform:translateY(-6px);transition:.18s ease}
.hat-unter:hover .unter,.hat-unter:focus-within .unter{opacity:1;visibility:visible;transform:none}
.unter a{display:block;padding:.6em .9em;border-radius:var(--radius-klein);font-size:.92rem}
.unter a::after{display:none}
.unter a:hover{background:var(--akzent-hell)}
.burger{display:none;margin-left:auto;background:none;border:0;padding:10px;cursor:pointer}
.burger span{display:block;width:24px;height:2px;background:var(--tinte);border-radius:2px}
.burger span+span{margin-top:6px}

/* ── Hero ── */
.hero{padding-block:clamp(48px,6vw,88px) var(--luft)}
.hero-raster{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(32px,5vw,72px);
  align-items:center}
.hero h1{margin-bottom:.35em}
.hero-bild{position:relative;border-radius:var(--radius);overflow:hidden;
  box-shadow:var(--schatten-hoch);aspect-ratio:4/3;isolation:isolate}
.hero-bild img{width:100%;height:100%;object-fit:cover;object-position:var(--fokus,center)}
.hero-bild::before{content:"";position:absolute;inset:auto -18px -18px auto;width:62%;height:62%;
  background:var(--akzent-hell);border-radius:var(--radius);z-index:-1}
.sterne{display:inline-flex;align-items:center;gap:.6em;margin-top:22px;font-size:.92rem;
  color:var(--grau);text-decoration:none}
.sterne b{color:var(--tinte);font-weight:600}

/* ── Krumen & Faktenleiste ── */
.krumen{display:flex;flex-wrap:wrap;gap:.5em;font-size:.86rem;color:var(--grau);
  padding-top:18px}
.krumen a{text-decoration:none}
.krumen a:hover{text-decoration:underline}
.faktenleiste{padding-block:0;border-block:1px solid var(--linie);background:var(--sand)}
.fakten{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
  margin:0;gap:0}
.fakt{padding:26px 24px;border-left:1px solid var(--linie)}
.fakt:first-child{border-left:0;padding-left:0}
.fakt dt{font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;
  color:var(--akzent-dunkel);font-weight:600}
.fakt dd{margin:.3em 0 0;font-weight:500}

/* ── Karten ── */
.karten{display:grid;gap:clamp(18px,2.4vw,28px);margin-top:36px}
.karten.sp-2{grid-template-columns:repeat(2,1fr)}
.karten.sp-3{grid-template-columns:repeat(3,1fr)}
.karten.sp-4{grid-template-columns:repeat(4,1fr)}
.karte{display:flex;flex-direction:column;background:#fff;border:1px solid var(--linie);
  border-radius:var(--radius);overflow:hidden;text-decoration:none;
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}
a.karte:hover{transform:translateY(-4px);box-shadow:var(--schatten-hoch);border-color:transparent}
.karte-bild{aspect-ratio:4/3;overflow:hidden}
.karte-bild img{width:100%;height:100%;object-fit:cover;object-position:center 32%}
.karte-text{padding:22px 24px 26px}
.karte-text p{color:var(--grau);margin-bottom:0}
.mehr{display:inline-flex;align-items:center;gap:.4em;margin-top:1em;font-weight:500;
  color:var(--akzent-dunkel);font-size:.92rem}

/* ── Häkchenliste ── */
.haken{list-style:none;padding:0;margin:30px 0 0;display:grid;gap:14px}
.haken li{display:flex;gap:.8em;align-items:flex-start}
.haken svg{flex:none;width:20px;height:20px;margin-top:.28em;color:var(--akzent-dunkel)}

/* ── Ablauf mit Verbindungslinie ── */
.ablauf{list-style:none;padding:0;margin:40px 0 0;display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:28px;position:relative}
.schritt{position:relative;padding-right:14px}
.schritt::after{content:"";position:absolute;top:22px;left:52px;right:-14px;
  border-top:2px dashed var(--linie)}
.schritt:last-child::after{display:none}
.nr{display:grid;place-items:center;width:44px;height:44px;border-radius:99px;
  background:var(--akzent-hell);color:var(--akzent-dunkel);font-weight:600;
  margin-bottom:16px;position:relative;z-index:1}
.schritt p{color:var(--grau);margin-bottom:0}
.nachsatz{margin-top:30px;color:var(--grau)}

/* ── Bild + Text ── */
.bildtext{display:grid;grid-template-columns:minmax(330px,.95fr) 1.05fr;
  gap:clamp(28px,4vw,64px);align-items:center}
.bildtext.gedreht .bildtext-bild{order:2}
.bildtext-bild{border-radius:var(--radius);overflow:hidden;box-shadow:var(--schatten)}

/* ── Stimmen ── */
.slider{position:relative;margin-top:36px}
.stimmen{list-style:none;margin:0;padding:0 0 6px;display:flex;gap:22px;
  overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
.stimmen::-webkit-scrollbar{display:none}
.stimme{flex:0 0 min(100%,420px);scroll-snap-align:center;background:#fff;
  border:1px solid var(--linie);border-radius:var(--radius);padding:28px}
.stimme p{font-size:1.05rem}
.wer{font-weight:600;font-size:.92rem}
.punkte{display:flex;gap:8px;justify-content:center;margin-top:20px}
.punkte button{width:9px;height:9px;padding:0;border:0;border-radius:99px;
  background:var(--linie);cursor:pointer}
.punkte button[aria-current="true"]{background:var(--akzent-dunkel);width:22px}
.wischhinweis{display:none;text-align:center;font-size:.85rem;color:var(--grau);margin:.8em 0 0}
.g-badge{display:inline-flex;align-items:center;gap:.5em;margin-top:26px;
  font-size:.92rem;color:var(--akzent-dunkel);text-decoration:none;font-weight:500}

/* ── FAQ ── */
.faq{margin-top:32px;border-top:1px solid var(--linie)}
.faq details{border-bottom:1px solid var(--linie)}
.faq summary{cursor:pointer;list-style:none;padding:1.1em 2.2em 1.1em 0;font-weight:500;
  position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";position:absolute;right:.4em;top:1.55em;width:10px;height:10px;
  border-right:2px solid var(--akzent-dunkel);border-bottom:2px solid var(--akzent-dunkel);
  rotate:45deg;transition:rotate .2s ease}
.faq details[open] summary::after{rotate:-135deg}
.antwort{padding-bottom:1.3em;max-width:62ch;color:var(--grau)}
.antwort p{margin:0}

/* ── CTA-Band ── */
.cta-band{background:var(--tinte);color:#fff}
.cta-band .lead{color:rgba(255,255,255,.8)}

/* ── Formular ── */
.formular-raster{display:grid;grid-template-columns:1.25fr .75fr;
  gap:clamp(28px,4vw,56px);align-items:start}
.formular{display:grid;gap:18px}
.formular label{display:grid;gap:.5em;font-weight:500;font-size:.95rem}
.formular input,.formular select,.formular textarea{
  font:inherit;font-weight:400;padding:.85em 1em;border:1.5px solid var(--linie);
  border-radius:var(--radius-klein);background:#fff;color:inherit}
.formular textarea{resize:vertical}
.zustimmung{grid-template-columns:auto 1fr;align-items:start;gap:.7em;font-weight:400;
  font-size:.9rem;color:var(--grau)}
.hp{position:absolute;left:-9999px}       /* Honeypot — für Menschen unsichtbar */
.hinweis:empty{display:none}
.hinweis{margin:0;padding:.9em 1.1em;border-radius:var(--radius-klein);
  background:var(--akzent-hell);font-size:.92rem}
.kontaktspalte{background:var(--sand);border-radius:var(--radius);padding:28px}

/* ── Fuß ── */
.fuss{background:var(--akzent-hell);padding-block:clamp(44px,5vw,72px) 0;margin-top:0}
.fuss-raster{display:grid;grid-template-columns:1.3fr .8fr 1fr;gap:clamp(24px,4vw,56px)}
.fuss-marke{font-weight:600;font-size:1.1rem;margin-bottom:.3em}
.fuss-ort{color:var(--grau);margin:0}
.fuss-titel{font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;
  color:var(--akzent-dunkel);font-weight:600;margin-bottom:.9em}
.fuss-liste{list-style:none;padding:0;margin:0;display:grid;gap:.6em;font-size:.95rem}
.fuss-liste a{text-decoration:none}
.fuss-liste a:hover{text-decoration:underline}
.foot-pille{margin-top:20px;padding:.7em 1.3em;font-size:.92rem}
.fuss-unten{display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;
  align-items:center;margin-top:44px;padding-block:20px;border-top:1px solid rgba(0,0,0,.08);
  font-size:.86rem;color:var(--grau)}
.chips{display:flex;gap:18px}
.chips a{text-decoration:none}

/* ── Zurück nach oben ── */
.nach-oben{position:fixed;right:20px;bottom:20px;z-index:40;width:46px;height:46px;
  display:grid;place-items:center;border:0;border-radius:99px;background:var(--tinte);
  color:#fff;cursor:pointer;box-shadow:var(--schatten-hoch);opacity:.92}
.nach-oben svg{width:22px;height:22px}
.nach-oben[hidden]{display:none}

/* ── Mobil ── */
@media (max-width:980px){
  .hero-raster{grid-template-columns:1fr}
  .hero-bild{max-height:60vh}
  .bildtext{grid-template-columns:1fr}
  .bildtext.gedreht .bildtext-bild{order:0}
  .formular-raster{grid-template-columns:1fr}
  .fuss-raster{grid-template-columns:1fr 1fr}
  .burger{display:block}
  .menu{position:fixed;inset:64px 0 auto;flex-direction:column;align-items:stretch;
    gap:0;background:#fff;border-bottom:1px solid var(--linie);padding:10px 20px 24px;
    display:none}
  .menu.offen{display:flex}
  .menu>li{padding-block:4px}
  .menu-cta{margin-top:12px}
  .unter{position:static;translate:none;opacity:1;visibility:visible;transform:none;
    box-shadow:none;border:0;padding:0 0 0 14px;min-width:0}
  .karten.sp-3,.karten.sp-4{grid-template-columns:repeat(2,1fr)}
  .schritt::after{display:none}
  .wischhinweis{display:block}
}
@media (max-width:560px){
  .karten.sp-2,.karten.sp-3,.karten.sp-4{grid-template-columns:1fr}
  .fuss-raster{grid-template-columns:1fr}
  .fakt{border-left:0;padding-inline:0}
}
@media print{.kopf,.nach-oben,.cta-band,.fuss{display:none}}


/* ══ Blog-Modul (seeberger studio) ══ nutzt die Farbvariablen der Kundenseite */
.blogliste{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:clamp(16px,2.4vw,26px)}
.blogkarte{display:flex;flex-direction:column;background:#fff;border:1px solid var(--linie);border-radius:var(--r);
  overflow:hidden;text-decoration:none;color:inherit;transition:transform .25s,box-shadow .25s}
.blogkarte:hover{transform:translateY(-4px);box-shadow:var(--schatten-stark)}
.blogkarte__bild{aspect-ratio:3/2;overflow:hidden;background:var(--sand)}
.blogkarte__bild img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.blogkarte:hover .blogkarte__bild img{transform:scale(1.04)}
.blogkarte__text{padding:22px 24px 26px;display:flex;flex-direction:column;flex:1}
.blogkarte__meta{font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--grau);margin-bottom:10px}
.blogkarte h2{font-size:clamp(20px,2.1vw,24px);text-transform:none;letter-spacing:-.01em;margin-bottom:10px}
.blogkarte p{font-size:15.5px;color:var(--grau);margin-bottom:18px}
.blogkarte .ang__mehr{margin-top:auto}
.blogkarte--gross{grid-column:1/-1;flex-direction:row}
.blogkarte--gross .blogkarte__bild{flex:0 0 46%;aspect-ratio:4/3;max-height:420px}
.blogkarte--gross .blogkarte__text{justify-content:center;padding:clamp(24px,3vw,40px)}
.blogkarte--gross h2{font-size:clamp(24px,2.8vw,32px)}
@media (max-width:760px){.blogkarte--gross{flex-direction:column}.blogkarte--gross .blogkarte__bild{flex:none;aspect-ratio:3/2}}

.beitrag{padding-block:clamp(26px,4vw,44px) clamp(40px,5vw,70px)}
.beitrag__kopf{margin-bottom:clamp(26px,3.4vw,40px)}
.beitrag__kopf--bild{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(280px,.95fr);gap:clamp(24px,4vw,46px);align-items:center}
.beitrag__kopf h1{font-size:clamp(26px,3.1vw,38px);line-height:1.14;text-transform:none;letter-spacing:-.02em;max-width:20ch}
.beitrag__meta{font-size:12.5px;letter-spacing:.12em;text-transform:uppercase;color:var(--grau);margin:0 0 12px}
.beitrag__anriss{font-size:clamp(16.5px,1.7vw,18.5px);color:var(--grau);margin:14px 0 0;max-width:50ch}
.beitrag__bild{margin:0;border-radius:20px;overflow:hidden;background:var(--sand);box-shadow:var(--schatten)}
.beitrag__bild img{width:100%;aspect-ratio:4/3;max-height:340px;object-fit:cover;object-position:center 25%;display:block}
@media (max-width:820px){.beitrag__kopf--bild{grid-template-columns:1fr}.beitrag__bild{order:-1}
  .beitrag__bild img{aspect-ratio:16/9;max-height:260px}}

.beitrag__raster{display:grid;grid-template-columns:220px minmax(0,1fr);gap:clamp(28px,5vw,64px);align-items:start}
.beitrag__raster--ohne{grid-template-columns:minmax(0,1fr)}
@media (max-width:900px){.beitrag__raster{grid-template-columns:1fr}}

/* Sprungleiste */
.sprung{position:sticky;top:96px;border-left:2px solid var(--linie);padding-left:18px}
.sprung__titel{font-size:11.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--grau);font-weight:800;margin:0 0 14px}
.sprung nav{display:grid;gap:11px}
.sprung a{font-size:14.5px;line-height:1.35;color:var(--grau);text-decoration:none;transition:color .15s,transform .15s}
.sprung a:hover{color:var(--lila)}
.sprung a.is-hier{color:var(--lila);font-weight:700;transform:translateX(2px)}
@media (max-width:900px){
  .sprung{position:static;border-left:0;padding:18px 20px;background:#fff;border:1px solid var(--linie);border-radius:16px;margin-bottom:26px}
  .sprung nav{grid-template-columns:1fr 1fr;display:grid;gap:10px 18px}
}

.beitrag__text{max-width:70ch;font-size:17.5px;line-height:1.75}
.beitrag__text h2{font-size:clamp(22px,2.4vw,28px);text-transform:none;letter-spacing:-.01em;margin:42px 0 12px;scroll-margin-top:100px}
.beitrag__text h3{font-size:20px;margin:30px 0 10px;scroll-margin-top:100px}
.beitrag__text p{margin-bottom:1.1em}
.beitrag__text ul,.beitrag__text ol{margin:0 0 1.2em 1.2em;display:grid;gap:8px}
.beitrag__text blockquote{margin:28px 0;padding:18px 0 18px 22px;border-left:4px solid var(--gruen);
  font-size:19px;font-weight:600;color:var(--tinte)}
.beitrag__text hr{border:0;border-top:1px solid var(--linie);margin:34px 0}
.beitrag__text a{color:var(--lila);text-underline-offset:3px}

/* Aufklappbare Fragen */
.faq{display:grid;gap:10px;margin:22px 0 30px}
.faq__punkt{background:#fff;border:1px solid var(--linie);border-radius:14px;overflow:hidden;transition:border-color .2s,box-shadow .2s}
.faq__punkt[open]{border-color:var(--lila);box-shadow:var(--schatten)}
.faq__punkt summary{list-style:none;cursor:pointer;padding:18px 54px 18px 22px;font-weight:700;font-size:17px;
  color:var(--tinte);position:relative}
.faq__punkt summary::-webkit-details-marker{display:none}
.faq__punkt summary::after{content:"";position:absolute;right:22px;top:50%;width:11px;height:11px;margin-top:-6px;
  border-right:2.5px solid var(--lila);border-bottom:2.5px solid var(--lila);transform:rotate(45deg);transition:transform .25s}
.faq__punkt[open] summary::after{transform:rotate(-135deg);margin-top:-2px}
.faq__punkt summary:hover{color:var(--lila)}
.faq__antwort{padding:0 22px 20px;font-size:16.5px;line-height:1.7;color:var(--text)}
.faq__antwort p:last-child{margin-bottom:0}

.blog__bild{margin:28px 0}
.blog__bild img{width:100%;border-radius:16px}
.blog__bild figcaption{font-size:13.5px;color:var(--grau);margin-top:8px}


/* ══════════════════════════════════════════════════════════════════════
   Heidi Klein — Gestaltungsschicht
   Garten-Oase: Salbeigrün, Papierweiß, Aquarelle von „Pinselkatze“.
   Schreibschrift (Clicker Script) NUR für kurze Zeilen über Überschriften.
   ══════════════════════════════════════════════════════════════════════ */
body{background:var(--papier);font-size:1.06rem}
h1,h2,h3{font-weight:500;letter-spacing:-.01em;color:var(--tinte)}
h1{font-size:clamp(2rem,4.2vw,3.1rem);line-height:1.1}
h2{font-size:clamp(1.55rem,2.7vw,2.2rem)}
.lead{color:var(--grau)}
.sand{background:var(--sand)}
.skript{font-family:var(--skript);font-size:clamp(1.9rem,3vw,2.5rem);line-height:1;color:var(--akzent);
  margin:0 0 .18em;font-weight:400;letter-spacing:0}
.kopfzeile{margin-bottom:clamp(28px,4vw,48px)}
.kopfzeile.mitte .lead,.mitte-block{margin-inline:auto}
.kopfzeile--reihe{display:flex;justify-content:space-between;align-items:end;gap:20px;flex-wrap:wrap}
.textlink{display:inline-flex;gap:.45em;align-items:center;color:var(--akzent-dunkel);font-weight:500;
  text-decoration:none;border-bottom:1.5px solid var(--salbei);padding-bottom:2px}
.textlink:hover{border-color:var(--akzent-dunkel)}
.optional{font-weight:400;color:var(--grau);font-size:.88em}

/* Knöpfe: dunkles Grün als Hauptknopf, Salbei wie auf der alten Seite als zweiter */
.btn{letter-spacing:.02em}
.btn-primar{background:var(--akzent-dunkel);color:#fff;box-shadow:0 8px 22px rgba(74,94,58,.28)}
.btn-primar:hover{background:#3d4f30;box-shadow:0 12px 28px rgba(74,94,58,.34)}
.btn-zweit{background:var(--salbei);color:var(--tinte);border-color:transparent}
.btn-zweit:hover{background:#b3c4a6;border-color:transparent}
.btn-hell{background:#fff;color:var(--tinte)}
.btn-zweit-hell{color:#fff;border:1.5px solid rgba(255,255,255,.45);background:transparent}
.btn-zweit-hell:hover{border-color:#fff}
.btn:active{transform:translateY(0) scale(.98)}

/* ── Kopf: Signatur-Logo wie bisher, darunter kein Riesenmenü mehr ── */
.kopf-innen{padding-block:10px}
.marke{display:flex;align-items:center;gap:12px}
.marke img{height:54px;width:auto}
.marke span{display:grid;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;
  color:var(--akzent-dunkel);font-weight:500;line-height:1.25;border-left:1px solid var(--linie);padding-left:12px}
.marke small{font-size:.72rem;color:var(--grau);letter-spacing:.12em}
.kopf::before{background:rgba(253,252,249,.94)}
.menu{gap:24px}
.menu a{font-size:.98rem}
.kopf .btn{padding:.62em 1.25em}

/* ── Seitenkopf mit Bogenbild ── */
.hero{position:relative;overflow:hidden;padding-block:clamp(40px,6vw,84px) clamp(56px,7vw,96px);
  background:radial-gradient(120% 90% at 100% 0%, var(--akzent-hell) 0, transparent 55%),var(--papier)}
.hero--ohne{padding-bottom:clamp(30px,4vw,50px)}
.hero--ohne .hero-raster{grid-template-columns:1fr}
.hero-raster{grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);align-items:center}
.hero .lead{font-size:clamp(1.08rem,1.6vw,1.24rem)}
.hero-bild-wrap{position:relative;max-width:500px;justify-self:end;width:100%}
.hero-bild{aspect-ratio:4/5;border-radius:999px 999px var(--radius) var(--radius);box-shadow:var(--schatten-hoch);
  border:8px solid #fff}
.hero-bild::before{display:none}
.hero-deko{position:absolute;left:-14%;bottom:-6%;width:38%;rotate:-7deg;background:#fff;padding:8px;
  box-shadow:var(--schatten-hoch);border-radius:6px}
.hero-deko img{border-radius:2px}
.zweig{position:absolute;color:var(--salbei);pointer-events:none}
.hero .zweig{width:clamp(140px,18vw,240px);left:-30px;bottom:-12px;opacity:.9;rotate:8deg}
.hero--ohne .zweig{left:auto;right:4%;bottom:0;rotate:-10deg}
.hero-text{position:relative;z-index:1}

/* ── Zahlen ── */
.zahlen{padding-block:0;background:var(--akzent-dunkel);color:#fff}
.zahlen-reihe{display:grid;grid-template-columns:repeat(4,1fr);margin:0}
.zahl{padding:clamp(22px,3vw,34px) clamp(14px,2vw,26px);border-left:1px solid rgba(255,255,255,.18)}
.zahl:first-child{border-left:0}
.zahl dt{font-size:clamp(1.6rem,2.6vw,2.2rem);font-weight:500;line-height:1.1}
.zahl dd{margin:.3em 0 0;color:rgba(255,255,255,.82);font-size:.95rem;line-height:1.4}

/* ── Drei Türen ── */
.tueren{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(18px,2.4vw,30px)}
.tuer{display:flex;flex-direction:column;text-decoration:none;background:#fff;border-radius:var(--radius);
  overflow:hidden;box-shadow:var(--schatten);transition:transform .25s ease,box-shadow .25s ease}
.tuer:hover{transform:translateY(-5px);box-shadow:var(--schatten-hoch)}
.tuer-bild{aspect-ratio:5/4;overflow:hidden;border-radius:999px 999px 0 0;margin:14px 14px 0}
.tuer-bild img{width:100%;height:100%;object-fit:cover;object-position:var(--fokus,center);transition:transform .6s ease}
.tuer:hover .tuer-bild img{transform:scale(1.05)}
.tuer-text{padding:20px 26px 28px;display:flex;flex-direction:column;flex:1}
.tuer-text h3{font-size:1.35rem;margin-bottom:.35em}
.tuer-text p{color:var(--grau);margin-bottom:0}
.tuer .mehr{margin-top:auto;padding-top:1em}
.fuer{display:inline-block;align-self:flex-start;font-size:.74rem;letter-spacing:.14em;text-transform:uppercase;
  font-weight:600;color:var(--akzent-dunkel);background:var(--akzent-hell);border-radius:99px;padding:.35em .9em;margin:0 0 .9em}

/* ── Zitat / Vision ── */
.zitat-band{background:var(--salbei);position:relative}
.zitat-raster{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(28px,5vw,72px);align-items:center}
.zitat-bild{background:#fff;padding:10px;rotate:-3deg;box-shadow:var(--schatten-hoch);border-radius:4px;max-width:440px}
.zitat-band blockquote{margin:0}
.zitat-text{font-size:clamp(1.35rem,2.4vw,1.9rem);line-height:1.4;font-weight:400;color:var(--tinte);max-width:28ch;margin:0}
.zitat-band footer{margin-top:1em;font-size:.95rem;color:var(--oliv)}
.zitat-band .skript{color:var(--akzent-dunkel)}
.zitat-band.blush{background:var(--blush)}

/* ── Motto mit Aquarell ── */
.motto{background:var(--blush)}
.motto-raster{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:clamp(28px,5vw,80px);align-items:center}
.motto-bild{margin:0;background:#fff;padding:12px;rotate:2.5deg;box-shadow:var(--schatten-hoch);border-radius:4px;max-width:380px;justify-self:center}
.motto p{max-width:60ch}
.zettel{position:relative;background:var(--salbei);padding:1em 1.3em;font-size:1.12rem;max-width:34em;
  margin:1.4em 0 1.6em;border-radius:2px}
.zettel::after{content:"";position:absolute;right:10px;bottom:-10px;border:5px solid transparent;
  border-top-color:var(--oliv);border-left-color:var(--oliv)}

/* ── Erzählung: Bild im Bogen ── */
.erzaehlung{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(28px,5vw,80px);align-items:center}
.erzaehlung.gedreht .erz-bild{order:2}
.erz-bild{overflow:hidden;box-shadow:var(--schatten);max-width:520px;width:100%;justify-self:center}
.erz-bild img{width:100%;height:100%;object-fit:cover;object-position:var(--fokus,center)}
.erz-bild.bogen{aspect-ratio:4/5;border-radius:999px 999px var(--radius) var(--radius)}
.erz-bild.quer{aspect-ratio:4/3;border-radius:var(--radius)}
.erz-bild.rund{aspect-ratio:1;border-radius:50%}
.erz-bild.frei{box-shadow:none;border-radius:0}
.erz-bild.frei img{object-fit:contain}
.erzaehlung p{max-width:62ch}

/* ── Themen ── */
.themen{list-style:none;padding:0;margin:clamp(24px,3vw,40px) 0 0;display:grid;
  grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px;counter-reset:th}
.thema{background:#fff;border:1px solid var(--linie);border-radius:var(--radius-klein);padding:22px 22px 20px;
  position:relative;counter-increment:th;transition:border-color .2s,transform .2s}
.thema:hover{border-color:var(--salbei);transform:translateY(-2px)}
.thema::before{content:"";display:block;width:34px;height:34px;border-radius:50% 50% 50% 8px;background:var(--akzent-hell);
  margin-bottom:14px;box-shadow:inset 0 0 0 9px var(--akzent-hell),inset 0 0 0 20px var(--salbei)}
.thema h3{font-size:1.1rem;margin-bottom:.3em}
.thema p{color:var(--grau);margin:0;font-size:.97rem}
.sand .thema{background:#fff}
.themen--zitate .thema{background:var(--blush);border-color:transparent}
.themen--zitate .thema h3{font-size:1.12rem;font-weight:400;font-style:italic;line-height:1.45}

/* ── Sprechblasen (Coaching) ── */
.blasen{list-style:none;padding:0;margin:26px 0 0;display:flex;flex-wrap:wrap;gap:12px}
.blasen li{background:#fff;border:1px solid var(--linie);padding:.6em 1.1em;border-radius:18px 18px 18px 4px;
  font-size:1.02rem;box-shadow:var(--schatten)}
.blasen li:nth-child(even){background:var(--akzent-hell);border-color:transparent}

/* ── Ablauf ── */
.nr{background:var(--salbei);color:var(--tinte)}

/* ── Galerie ── */
.mosaik{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:clamp(150px,17vw,230px);grid-auto-flow:dense;gap:10px}
.kachel{padding:0;border:0;background:var(--linie);border-radius:var(--radius-klein);overflow:hidden;cursor:zoom-in;display:block}
.kachel.breit{grid-column:span 2}
.kachel.hoch{grid-row:span 2}
.kachel.gross2{grid-column:span 2;grid-row:span 2}
.kachel picture,.kachel img{width:100%;height:100%}
.kachel img{object-fit:cover;transition:transform .6s ease}
.kachel:hover img{transform:scale(1.05)}
dialog.gross{border:0;padding:0;background:transparent;max-width:min(94vw,1400px);max-height:92vh;overflow:visible}
dialog.gross::backdrop{background:rgba(22,28,18,.88)}
dialog.gross img{max-width:min(94vw,1400px);max-height:88vh;width:auto;height:auto;border-radius:8px}
dialog.gross button{position:fixed;background:rgba(255,255,255,.14);color:#fff;border:0;width:52px;height:52px;border-radius:50%;
  font-size:2rem;line-height:1;cursor:pointer;display:grid;place-items:center}
dialog.gross button:hover{background:rgba(255,255,255,.28)}
.gross-zu{top:16px;right:16px}
.gross-vor{left:16px;top:50%;translate:0 -50%}
.gross-nach{right:16px;top:50%;translate:0 -50%}

/* ── Wegweiser ── */
.wegweiser{background:linear-gradient(180deg,var(--papier),var(--akzent-hell))}
.weg-raster{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(28px,5vw,72px);align-items:start}
.weg-intro{position:relative}
.weg-intro .bluete{width:92px;color:var(--akzent-hell);margin-top:20px;filter:drop-shadow(0 0 0 var(--salbei))}
.weg-intro .bluete ellipse{fill:var(--salbei)}
.weg-karte{background:#fff;border-radius:var(--radius);box-shadow:var(--schatten-hoch);padding:clamp(22px,3vw,38px);position:relative;min-height:340px}
.schritt-weg{border:0;margin:0;padding:0}
.schritt-weg legend{font-size:1.3rem;font-weight:500;margin-bottom:18px;padding:0}
.nr-weg{display:inline-block;font-size:.8rem;font-weight:600;letter-spacing:.08em;color:var(--akzent-dunkel);
  background:var(--akzent-hell);border-radius:99px;padding:.2em .7em;margin-right:.4em;vertical-align:middle}
.wahlen{display:grid;gap:10px}
.wahl{display:block;cursor:pointer}
.wahl input{position:absolute;opacity:0;pointer-events:none}
.wahl span{display:block;padding:14px 18px 14px 48px;border:1.5px solid var(--linie);border-radius:14px;position:relative;
  transition:border-color .15s,background .15s}
.wahl span::before{content:"";position:absolute;left:16px;top:50%;width:18px;height:18px;margin-top:-9px;border-radius:50%;
  border:1.5px solid var(--moos);background:#fff;transition:.15s}
.wahl:hover span{border-color:var(--salbei);background:var(--papier)}
.wahl input:checked+span{border-color:var(--akzent-dunkel);background:var(--akzent-hell)}
.wahl input:checked+span::before{background:var(--akzent-dunkel);box-shadow:inset 0 0 0 3px #fff}
.wahl input:focus-visible+span{outline:3px solid var(--akzent-dunkel);outline-offset:2px}
.weg-zurueck,.weg-neu{background:none;border:0;color:var(--grau);font:inherit;font-size:.92rem;cursor:pointer;
  margin-top:18px;padding:4px 0;text-decoration:underline;text-underline-offset:3px}
.weg-ergebnis h3{font-size:1.6rem;margin:.2em 0 .4em}
.weg-ergebnis p{color:var(--grau)}
.weg-ergebnis .fuer{margin-bottom:.4em}

/* ── Blog-Teaser ── */
.blogminis{display:grid;grid-template-columns:repeat(2,1fr);gap:clamp(16px,2.4vw,28px)}
.blogmini{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:22px;text-decoration:none;
  background:#fff;border-radius:var(--radius);overflow:hidden;box-shadow:var(--schatten);transition:transform .25s,box-shadow .25s}
.blogmini:hover{transform:translateY(-4px);box-shadow:var(--schatten-hoch)}
.blogmini img{width:100%;height:100%;aspect-ratio:1;object-fit:cover}
.blogmini span{display:grid;gap:.4em;padding-right:22px}
.blogmini small{font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;color:var(--grau)}
.blogmini strong{font-weight:500;font-size:1.15rem;line-height:1.35}

/* ── Schlussband ── */
.cta-band{background:var(--akzent-dunkel);color:#fff;position:relative;overflow:hidden}
.cta-band h2{color:#fff}
.cta-band .skript{color:var(--salbei)}
.cta-raster{display:grid;grid-template-columns:minmax(0,.55fr) minmax(0,1.45fr);gap:clamp(28px,5vw,72px);align-items:center}
.cta-bild{background:#fff;padding:10px;rotate:-4deg;max-width:260px;justify-self:center;box-shadow:0 20px 50px rgba(0,0,0,.25);border-radius:4px}
.cta-band .lead{color:rgba(255,255,255,.85)}

/* ── Kontakt ── */
.kontaktspalte{background:var(--blush)}
.kontaktspalte .skript{font-size:2rem}
.sozial{list-style:none;padding:0;margin:0 0 1em;display:flex;flex-wrap:wrap;gap:8px}
.sozial a{display:inline-block;padding:.35em .9em;border-radius:99px;background:#fff;text-decoration:none;font-size:.9rem}
.sozial a:hover{background:var(--salbei)}
.formular input,.formular select,.formular textarea{border-color:var(--linie);background:#fff}
.formular input:focus,.formular select:focus,.formular textarea:focus{border-color:var(--akzent)}
.karte-anfahrt{display:inline-flex;gap:.4em;align-items:center}

/* ── Rechtstexte ── */
.recht h1{font-size:clamp(1.9rem,3.4vw,2.6rem);margin-bottom:.8em}
.recht h2{font-size:1.25rem;margin-top:1.8em}
.recht p{color:var(--grau)}

/* ── Fuß ── */
.fuss{background:var(--sand)}
.fuss-logo{width:96px;height:auto;margin-bottom:14px}
.fuss-ort{line-height:1.6}

/* ── Karten (Teamtage) ── */
.karte{border:0;box-shadow:var(--schatten)}
.karte-text h3{font-size:1.3rem}
.karte .unterzeile{font-family:var(--skript);font-size:1.7rem;color:var(--akzent);line-height:1;margin:-.1em 0 .5em}

/* ── Sanftes Einblenden (nur mit JS; ohne JS bleibt alles sichtbar) ── */
.js .rein{opacity:0;transform:translateY(18px);transition:opacity .7s ease,transform .7s ease}
.js .rein.da{opacity:1;transform:none}

/* ── Mobil ── */
@media (max-width:980px){
  .menu{inset:78px 0 auto;background:var(--papier)}
  .hero-raster{grid-template-columns:1fr}
  .hero-bild-wrap{justify-self:center;max-width:420px;margin-top:10px}
  .hero-deko{left:-6%;width:34%}
  .tueren{grid-template-columns:1fr 1fr}
  .zahlen-reihe{grid-template-columns:1fr 1fr}
  .zahl:nth-child(3){border-left:0}
  .zahl:nth-child(n+3){border-top:1px solid rgba(255,255,255,.18)}
  .zitat-raster,.motto-raster,.erzaehlung,.weg-raster,.cta-raster{grid-template-columns:1fr}
  .erzaehlung.gedreht .erz-bild{order:0}
  .zitat-bild{max-width:320px;justify-self:center}
  .cta-bild{max-width:190px;justify-self:start}
  .mosaik{grid-template-columns:repeat(2,1fr)}
  .blogminis{grid-template-columns:1fr}
}
@media (max-width:640px){
  body{font-size:1rem}
  .marke img{height:44px}
  .marke span{font-size:.7rem}
  .tueren{grid-template-columns:1fr}
  .hero-bild{aspect-ratio:1/1;border-radius:999px 999px var(--radius) var(--radius)}
  .hero-deko{display:none}
  .kachel.gross2{grid-column:span 2;grid-row:span 1}
  .kachel.hoch{grid-row:span 1}
  .blogmini{grid-template-columns:110px 1fr;gap:14px}
  .erz-bild.bogen{max-width:360px}
}
.schmal-links{max-width:860px}
.h1-zeile{display:block;white-space:nowrap;color:var(--akzent)}
.motto-bild{max-width:320px}
@media (max-width:980px){.motto-bild{max-width:260px}}
.zitatliste{list-style:none;padding:0;margin:.4em 0 1.6em;display:grid;gap:12px}
.zitatliste li{background:#fff;border-left:3px solid var(--salbei);padding:.8em 1.1em;font-style:italic;border-radius:0 12px 12px 0}
.zitatliste small{display:block;font-style:normal;color:var(--grau);margin-top:.3em}
.menu .btn-primar{color:#fff}
.menu .unter a[aria-current="page"]{background:var(--akzent-hell)}

/* ── Blog-Modul an die Seite anpassen ── */
.wrap{width:min(100% - 40px,var(--breite));margin-inline:auto}
.sub{padding-block:clamp(36px,5vw,64px) clamp(30px,4vw,48px);
  background:radial-gradient(120% 90% at 100% 0%, var(--akzent-hell) 0, transparent 55%),var(--papier)}
.krume{font-size:.86rem;color:var(--grau);margin-bottom:1.6em}
.krume a{color:inherit}
.kicker{display:block;font-family:var(--skript);font-size:clamp(1.9rem,3vw,2.4rem);line-height:1;color:var(--akzent);margin-bottom:.15em}
.blogkopf{margin-bottom:28px}
.blogkarte{border:0;box-shadow:var(--schatten)}
.blogkarte--gross .blogkarte__bild img{object-position:center 30%}
.beitrag__text img{border-radius:14px}
.beitrag__text .blog__bild img,.beitrag__text p img{max-width:520px;width:100%}
.beitrag .wrap{max-width:var(--breite)}

/* ══ Kopfzeile: volle Breite am Desktop, eigenes Vollbild-Menü am Handy ══ */
.kopf nav{margin-left:auto}
.kopf-innen{gap:clamp(16px,3vw,40px)}
.menu{gap:clamp(18px,2.4vw,34px)}
.menu-extra{display:none}
.menu .hat-unter>a::before{content:"";display:inline-block;width:6px;height:6px;margin:0 0 3px 0;
  order:2;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;rotate:45deg;
  position:absolute;right:-13px;top:calc(50% - 5px);opacity:.55}
.menu .hat-unter{margin-right:10px}
.unter{top:calc(100% + 10px)}

/* Burger wird zum X */
.burger{width:44px;height:44px;padding:10px;border-radius:12px;position:relative}
.burger span{transition:transform .25s ease,opacity .2s ease}
.menu-offen .burger span:nth-child(1){transform:translateY(8px) rotate(45deg)}
.menu-offen .burger span:nth-child(2){opacity:0}
.menu-offen .burger span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}

@media (max-width:980px){
  .menu-offen,.menu-offen body{overflow:hidden}
  .menu{position:fixed;inset:var(--kopf-h,74px) 0 0 0;display:flex;flex-direction:column;align-items:stretch;
    gap:0;margin:0;padding:12px 24px calc(28px + env(safe-area-inset-bottom));background:var(--papier);
    border:0;overflow-y:auto;overscroll-behavior:contain;
    opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .22s ease,transform .22s ease,visibility .22s}
  .menu.offen{display:flex;opacity:1;visibility:visible;transform:none}
  .menu>li{padding:0;border-bottom:1px solid var(--linie)}
  .menu>li>a{display:flex;align-items:center;justify-content:space-between;padding:17px 2px;
    font-size:1.2rem;font-weight:500}
  .menu>li>a::after{display:none}
  .menu>li>a[aria-current="page"]{color:var(--akzent-dunkel)}
  .menu>li>a[aria-current="page"]::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--akzent);order:2}
  .menu .hat-unter{margin:0}
  .menu .hat-unter>a::before{display:none}
  .unter{position:static;translate:none;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;
    background:transparent;padding:0 0 14px;min-width:0;display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .unter a{padding:.75em .9em;border-radius:12px;background:var(--akzent-hell);font-size:.98rem;line-height:1.3}
  .unter a[aria-current="page"]{background:var(--salbei)}
  .menu-cta{border-bottom:0 !important;margin-top:22px}
  .menu-cta .btn{display:flex;justify-content:center;width:100%;padding:1em 1.4em;font-size:1.05rem}
  .menu-extra{display:block;border-bottom:0 !important;text-align:center;margin-top:14px}
  .menu-extra a{font-size:.95rem;color:var(--grau)}
  .kopf-innen{padding-block:10px}
}
@media (max-width:420px){
  .unter{grid-template-columns:1fr}
}

/* ── Seite auf Tablet und Handy ── */
@media (max-width:980px){
  .hero{padding-top:32px}
  .hero-raster{gap:28px}
  .hero-bild-wrap{max-width:380px}
  .hero .zweig{display:none}
  .erz-bild.quer{max-width:none}
  .kopfzeile{margin-bottom:26px}
}
@media (min-width:641px) and (max-width:980px){
  /* Tablet: Hero zweispaltig, damit das Bild nicht die ganze Seite füllt */
  .hero:not(.hero--ohne) .hero-raster{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr)}
  .hero-bild-wrap{margin-top:0}
  .tueren{grid-template-columns:1fr 1fr}
  .tueren .tuer:last-child{grid-column:1/-1;flex-direction:row}
  .tueren .tuer:last-child .tuer-bild{flex:0 0 45%;margin:14px;border-radius:999px 999px 16px 16px;aspect-ratio:4/3}
  .tueren .tuer:last-child .tuer-text{justify-content:center}
}
@media (max-width:640px){
  :root{--luft:56px}
  .huelle,.wrap{width:min(100% - 32px,var(--breite))}
  .hero .btn-reihe{flex-direction:column;align-items:stretch}
  .hero .btn-reihe .btn,.cta-band .btn-reihe .btn,.weg-ergebnis .btn{justify-content:center}
  .cta-band .btn-reihe{flex-direction:column;align-items:stretch}
  .hero-bild-wrap{max-width:320px}
  h1{font-size:clamp(1.85rem,8vw,2.3rem)}
  .skript{font-size:1.8rem}
  .zahl{padding:20px 14px}
  .zahl dt{font-size:1.45rem}
  .zitat-text{font-size:1.25rem}
  .weg-karte{padding:20px 16px}
  .wahl span{padding:13px 14px 13px 44px}
  .fuss-raster{gap:30px}
  .nach-oben{right:14px;bottom:14px}
}
@media (max-width:980px){
  .kopf-innen{gap:0}
  .kopf nav{margin-left:0}
  .burger{margin-right:-8px}
  .menu .unter a[aria-current="page"]{background:var(--salbei);font-weight:500}
  .menu-extra a{justify-content:center}
}
@media (max-width:980px){.menu>li.menu-extra>a{justify-content:center;font-size:.95rem;font-weight:400;padding:8px 0}}

/* ── Motto gespiegelt: Text links, Aquarell rechts ── */
.motto-raster.gedreht{grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr)}
.motto-raster.gedreht .motto-bild{order:2;rotate:-2.5deg}
@media (max-width:980px){.motto-raster.gedreht{grid-template-columns:1fr}.motto-raster.gedreht .motto-bild{order:0}}

/* ── Über mich: Vision, Ziel, Netzwerk, Weg in einem Band ── */
.werte-raster{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(16px,2.4vw,28px);margin-top:clamp(36px,5vw,60px)}
.wert{background:rgba(255,255,255,.72);border-radius:var(--radius);padding:clamp(20px,2.4vw,30px)}
.wert h2{font-size:1.25rem;margin-bottom:.5em}
.wert p{margin:0;color:var(--tinte)}
.wert ul{list-style:none;padding:0;margin:0;display:grid;gap:.45em}
@media (max-width:980px){.werte-raster{grid-template-columns:1fr}}
