/* ============================================================
   HEIKE & RAGNA — Canva-Design 1:1
   ============================================================ */

@font-face {
  font-family: 'Cormorant Garamond';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url('/assets/fonts/cormorant-garamond-italic-400.woff2') format('woff2');
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/assets/fonts/cormorant-garamond-normal-400.woff2') format('woff2');
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('/assets/fonts/cormorant-garamond-normal-400.woff2') format('woff2');
}
@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url('/assets/fonts/cormorant-garamond-normal-400.woff2') format('woff2');
}
@font-face {
  font-family: 'Great Vibes';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/assets/fonts/great-vibes-normal-400.woff2') format('woff2');
}
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url('/assets/fonts/open-sans-normal-300.woff2') format('woff2');
}
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url('/assets/fonts/open-sans-normal-300.woff2') format('woff2');
}
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url('/assets/fonts/open-sans-normal-300.woff2') format('woff2');
}

:root {
  --bg:          linear-gradient(160deg, #F5F1E8 0%, #EDE8DB 50%, #E8E2D5 100%);
  --bg-fest:     #F5F1E8;
  --gruen:       #5E4B3C;
  --gruen2:      #7C8B5A;
  --blau:        #7C8B5A;
  --braun:       #B08A3E;
  --gold:        #B08A3E;
  --sage:        #7C8B5A;
  --eukalyptus:  #A3B18A;
  --sand:        #DCCBB3;
  --weiss:       #ffffff;
  --linie:       rgba(176,138,62,.30);
  --max:         920px;
  --rfoto:       20px;
}

*, *::before, *::after { box-sizing:border-box; margin:0; padding:0; }
html { scroll-behavior:smooth; font-size:16px; }
body { font-family:'Open Sans',sans-serif; color:var(--gruen); background: radial-gradient(ellipse 120% 80% at 50% 0%, #F2E8D4 0%, #EDE3CC 35%, #E6DBC6 70%, #DDD4BA 100%); overflow-x:hidden; min-height:100vh; display:flex; flex-direction:column; }
#main { flex:1; }
img  { display:block; max-width:100%; }
figure img, .ce_image img { border-radius: var(--rfoto); }
a    { color:inherit; text-decoration:none; }
.invisible { position:absolute; left:-9999px; width:1px; height:1px; overflow:hidden; }


/* ── HEADER: Logo links, rechts zweizeilig ─────────────── */
#site-header {
  display:grid;
  grid-template-columns:auto 1fr;
  grid-template-rows:auto auto;
  align-items:center;
  column-gap:1rem;
  row-gap:.06rem;
  padding:0 2rem .08rem;
  min-height:82px;
  overflow:hidden;
  background:var(--bg-fest);
  border-bottom:1px solid var(--linie);
  position:sticky;
  top:0;
  z-index:200;
}
.nav-logo-link {
  grid-column:1;
  grid-row:1 / span 2;
  position:relative;
  display:block;
  width:clamp(315px, 25vw, 410px);
  height:92px;
  flex-shrink:0;
  overflow:hidden;
}
#site-logo {
  position:absolute;
  left:0;
  top:58%;
  transform:translateY(-50%);
  height:188px;
  width:auto;
  max-width:none;
  mix-blend-mode:multiply;
}
#nav-toggle { display:none; }
.header-right {
  grid-column:2;
  grid-row:1 / span 2;
  margin-left:auto;
  width:100%;
  display:grid;
  grid-template-rows:auto auto;
  justify-items:end;
  align-items:end;
  gap:.02rem;
  padding-bottom:.08rem;
}
#nav {
  grid-row:2;
  width:100%;
  display:flex;
  justify-content:flex-end;
  align-items:center;
}
#nav ul, #nav .level_1 {
  list-style:none;
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:0;
  margin:0;
  padding:0;
}
#nav ul a, #nav .level_1 a {
  display:block;
  padding:.22rem .72rem;
  font-family:'Open Sans',sans-serif;
  font-size:.74rem;
  font-weight:600;
  letter-spacing:.04em;
  color:var(--gruen);
  border-radius:4px;
  transition:background .2s;
}
#nav ul a:hover, #nav .level_1 a:hover { background:rgba(176,138,62,.10); }
#nav ul strong, #nav .level_1 strong {
  display:block;
  padding:.22rem .72rem;
  font-family:'Open Sans',sans-serif;
  font-size:.74rem;
  font-weight:700;
  color:var(--gruen2);
}
.header-contact-icons {
  grid-row:1;
  justify-self:end;
  display:flex;
  align-items:center;
  gap:.34rem;
  margin-left:0;
}
.header-contact-link {
  width:32px;
  height:32px;
  border:1px solid rgba(94,75,60,.28);
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color:var(--gruen);
  background:rgba(255,255,255,.6);
  transition:transform .2s, background .2s, border-color .2s;
}
.header-contact-link:hover {
  transform:translateY(-1px);
  background:rgba(176,138,62,.12);
  border-color:rgba(176,138,62,.45);
}
.header-contact-link svg {
  width:16px;
  height:16px;
  stroke:currentColor;
  fill:none;
  stroke-width:1.9;
  stroke-linecap:round;
  stroke-linejoin:round;
}
.header-contact-link svg * {
  fill:none;
  stroke:currentColor;
}
#header { padding:0; margin:0; background:transparent; height:auto; overflow:visible; }
.mod_navigation { background:transparent !important; }
/* ── TRENNLINIE zwischen Abschnitten ────────────────────── */
.trennlinie {
  position: relative;
  width: 260px;
  height: 1px;
  background: rgba(176,138,62,.35);
  margin: 1.5rem auto;
}
.trennlinie::before {
  content: '♥';
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%,-50%);
  font-size: .6rem;
  color: var(--gold);
  line-height: 1;
}

/* ── ICON-KREISE ────────────────────────────────────────── */
.icon-kreis {
  width: 80px;
  height: 80px;
  border-radius: 50%;
  background: var(--sage);
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 1rem;
  flex-shrink: 0;
}
.icon-kreis svg {
  width: 46px;
  height: 46px;
  color: #ffffff;
}

/* ── STARTSEITE ─────────────────────────────────────────── */
.hero {
  padding: 4rem 2rem 2.5rem;
  position: relative;
  overflow: visible;
}
.hero::before {
  content: '';
  position: absolute;
  top: 30px; left: -30px;
  width: 190px; height: 310px;
  background: url('/assets/img/zweig1.svg') center / contain no-repeat;
  mix-blend-mode: multiply;
  pointer-events: none;
  opacity: .85;
  z-index: 0;
}
.hero::after {
  content: '';
  position: absolute;
  top: 30px; right: -30px;
  width: 230px; height: 200px;
  background: url('/assets/img/zweig2.svg') center / contain no-repeat;
  mix-blend-mode: multiply;
  pointer-events: none;
  opacity: .85;
  z-index: 0;
  transform: scaleX(-1);
}
.hero h1 {
  font-family:'Great Vibes',cursive;
  font-size:clamp(2.8rem,6vw,4.5rem);
  font-weight:400; color:var(--gruen2);
  line-height:1.35; max-width:var(--max); margin:0 auto; text-align:center;
}
.kontaktier-link {
  display:block; text-align:center;
  margin:2rem auto 0; max-width:var(--max);
  font-size:.88rem; color:var(--gruen);
  text-decoration:underline; text-underline-offset:3px;
}
.wenn-section {
  padding: 3.5rem 2rem;
  position: relative;
  text-align: center;
}
.wenn-section::before {
  content: '';
  position: absolute;
  top: 10px; right: -20px;
  width: 160px; height: 260px;
  background: url('/assets/img/zweig3.svg') center / contain no-repeat;
  mix-blend-mode: multiply;
  pointer-events: none;
  opacity: .7;
  z-index: 0;
}
.wenn-section p {
  font-family:'Cormorant Garamond',serif;
  font-style:italic;
  font-size:clamp(1.1rem,2.2vw,1.35rem);
  color:var(--gruen); line-height:2.0;
  max-width:680px; margin:0 auto;
}
.arbeit-section {
  padding: 3.5rem 2rem;
  text-align: center;
  position: relative;
  overflow: visible;
}
.arbeit-section::before { content: none; }
.arbeit-section .arbeit-vase-deko {
  position: absolute;
  left: 24px;
  bottom: 178px;
  width: min(21vw, 250px);
  max-width: 250px;
  min-width: 160px;
  height: auto;
  opacity: .92;
  mix-blend-mode: multiply;
  pointer-events: none;
  z-index: 0;
  border-radius: 28px;
  -webkit-mask-image: radial-gradient(ellipse 78% 88% at 52% 50%, #000 70%, transparent 100%);
  mask-image: radial-gradient(ellipse 78% 88% at 52% 50%, #000 70%, transparent 100%);
  filter: drop-shadow(0 10px 16px rgba(100,70,30,.20));
}
.arbeit-section > .container { position: relative; z-index: 1; }
.arbeit-section::after {
  content: none;
}
.arbeit-section h2 {
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(1.4rem,3vw,1.9rem);
  font-weight:700; color:var(--gruen2); margin-bottom:2.5rem;
}
.arbeit-reihe {
  display:flex; align-items:flex-start; justify-content:center;
  gap:3rem; flex-wrap:wrap;
  max-width:var(--max); margin:0 auto;
}
.arbeit-item { display:flex; flex-direction:column; align-items:center; gap:.8rem; }
.arbeit-item img { height:180px; width:auto; mix-blend-mode:multiply; }
.arbeit-item .icon-svg { height:140px; width:140px; mix-blend-mode:normal; border-radius:50%; }
.arbeit-item a {
  font-size:.8rem; font-weight:600; color:var(--gruen);
  text-decoration:underline; text-underline-offset:2px;
}
.techniken-section {
  padding: 3.5rem 2rem 5rem;
  text-align:center;
}
.techniken-section .intro {
  font-size:clamp(.92rem,1.8vw,1.05rem);
  color:var(--gruen); line-height:1.9; margin-bottom:1.5rem;
}
.techniken-liste {
  list-style:none; font-size:.88rem; color:var(--gruen);
  line-height:2.3; max-width:600px; margin:0 auto;
}
.techniken-liste .blau { color:var(--blau); font-weight:700; }

/* ── SEITEN-KOPF (Icon + Titel horizontal) ──────────────── */
.seiten-kopf {
  display: flex;
  align-items: center;
  gap: 1.2rem;
  max-width: var(--max);
  margin: 2.5rem auto 1.5rem;
  padding: 0 2rem;
}
.seiten-kopf .seiten-icon { height:72px; width:72px; flex-shrink:0; }
.seiten-kopf h1 {
  font-family: 'Great Vibes', cursive;
  font-size: clamp(2.4rem, 5vw, 3.6rem);
  font-weight: 400;
  color: var(--gruen2);
  margin: 0;
  line-height: 1.2;
}

/* ── ÜBER HEIKE ─────────────────────────────────────────── */
.ueber-heike-section { padding:5rem 2rem; }
.ueber-heike-grid {
  display:grid; grid-template-columns:1fr 1fr;
  gap:3.5rem; align-items:start;
  max-width:var(--max); margin:0 auto;
}
.ueber-heike-text h2 {
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(1.4rem,3vw,2rem); font-weight:700;
  color:var(--gruen2); margin-bottom:1.5rem; text-align:center;
}
.ueber-heike-text p {
  font-size:.9rem; color:var(--gruen); line-height:1.9; text-align:center;
}
.heike-name-overlay {
  font-family:'Great Vibes',cursive; font-size:1.8rem;
  color:var(--gruen2); text-align:center; margin-bottom:.4rem;
}
.ueber-heike-foto img {
  width:100%; height:auto; display:block;
  border-radius:var(--rfoto);
  box-shadow:0 4px 20px rgba(0,0,0,.12);
  object-fit:cover;
}

/* ── RAGNA / TROMMELREISEN ──────────────────────────────── */
.ragna-section { padding:4rem 2rem; }
.ragna-grid {
  display:grid; grid-template-columns:1fr 1fr;
  gap:3rem; align-items:start;
  max-width:var(--max); margin:0 auto;
}
.ragna-text h2 {
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(1.3rem,2.5vw,1.7rem); font-weight:700;
  color:var(--gruen2); margin-bottom:1rem; text-align:center;
}
.ragna-text p { font-size:.9rem; color:var(--gruen); line-height:1.9; text-align:center; }
.ragna-name { font-family:'Great Vibes',cursive; font-size:1.8rem; color:var(--gruen2); text-align:right; margin-bottom:.4rem; }
.ragna-foto img { width:100%; height:auto; display:block; border-radius:var(--rfoto); box-shadow:0 4px 20px rgba(0,0,0,.12); object-fit:cover; }
.trommelreisen-band { padding:3rem 2rem; text-align:center; border-top:1px solid var(--linie); border-bottom:1px solid var(--linie); }
.trommelreisen-band h2 { font-family:'Cormorant Garamond',serif; font-size:clamp(1.4rem,3vw,2rem); font-weight:600; color:var(--braun); margin-bottom:1.5rem; }
.trommelreisen-text { padding:3.5rem 2rem; text-align:center; }
.trommelreisen-text p { font-size:.9rem; color:var(--gruen); line-height:1.9; max-width:640px; margin:0 auto; }

/* ── BUTTONS ────────────────────────────────────────────── */
.btn-canva { display:inline-block; padding:.6rem 1.8rem; border-radius:4px; font-family:'Open Sans',sans-serif; font-size:.8rem; font-weight:600; transition:opacity .2s,transform .2s; }
.btn-canva:hover { opacity:.85; transform:translateY(-1px); }
.btn-gruen { background:var(--gruen); color:#fff; }
.btn-braun { background:var(--braun); color:#fff; }
.btn-blau  { background:var(--blau);  color:#fff; }
.btn-reihe { display:flex; gap:.8rem; justify-content:center; flex-wrap:wrap; margin-top:1.2rem; }

/* ── ACCESS BARS ────────────────────────────────────────── */
.access-bars-section,
.access-band {
  position: relative;
  overflow: visible;
}
.access-bars-section::before {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  mix-blend-mode: multiply;
  opacity: .22;
  background-image:
    url('/assets/img/pusteblume.svg'),
    url('/assets/img/pusteblume.svg');
  background-repeat: no-repeat;
  background-size: 220px, 140px, 180px, 110px;
  background-position: 2% 8%, 96% 15%, 8% 82%, 91% 88%;
}
.access-band::before {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  mix-blend-mode: multiply;
  opacity: .22;
  background-image:
    url('/assets/img/pusteblume.svg'),
    url('/assets/img/pusteblume.svg');
  background-repeat: no-repeat;
  background-size: 160px, 200px, 120px;
  background-position: 3% 40%, 93% 20%, 50% 90%;
}
.access-bars-section { padding:4rem 2rem; }
.access-bars-grid { display:grid; grid-template-columns:1fr 1fr; gap:3rem; align-items:start; max-width:var(--max); margin:0 auto; }
.access-bars-text p { font-size:.9rem; color:var(--gruen); line-height:1.9; text-align:center; }
.access-bars-heading { font-family:'Cormorant Garamond',serif; font-size:clamp(1.8rem,3.5vw,2.5rem); font-weight:700; color:var(--gruen2); margin-bottom:1rem; }
.access-bars-foto img { width:100%; height:auto; display:block; border-radius:var(--rfoto); box-shadow:0 4px 20px rgba(0,0,0,.12); }
.access-band { padding:4rem 2rem; }
.access-band-inner { display:grid; grid-template-columns:1fr 1fr; gap:3rem; align-items:start; max-width:var(--max); margin:0 auto; }
.access-band-left { display:flex; flex-direction:column; gap:1.5rem; }
.access-band-logo { border:2px solid rgba(255,255,255,.6); border-radius:var(--rfoto); overflow:hidden; background:rgba(255,255,255,.2); display:flex; align-items:center; justify-content:center; padding:1.5rem; }
.access-band-logo img { width:100%; height:auto; mix-blend-mode:multiply; }
.access-band-photo img { width:100%; height:auto; display:block; border-radius:var(--rfoto); box-shadow:0 4px 20px rgba(0,0,0,.12); }
.access-bars-qr { margin-top:1rem; text-align:right; }
.access-bars-qr img { width:100px; height:auto; border-radius:6px; }
.access-band-liste h3 { font-family:'Cormorant Garamond',serif; font-size:clamp(1.3rem,2.5vw,1.8rem); color:var(--gruen2); margin-bottom:.4rem; }
.access-band .btn-blau { background:var(--gruen); }

/* ── RAINBOW-REIKI ──────────────────────────────────────── */
.reiki-section { padding:4rem 2rem; }
.reiki-grid { display:grid; grid-template-columns:1fr 1fr; gap:3rem; align-items:start; max-width:var(--max); margin:0 auto; }
.reiki-text p { font-size:.9rem; color:var(--gruen); line-height:1.9; text-align:center; }
.reiki-heading { font-family:'Cormorant Garamond',serif; font-size:clamp(1.8rem,3.5vw,2.5rem); font-weight:700; color:var(--gruen2); margin-bottom:1rem; text-align:right; }
.reiki-foto img { width:100%; height:auto; display:block; border-radius:var(--rfoto); box-shadow:0 4px 20px rgba(0,0,0,.12); object-fit:cover; }
.reiki-wirkung { padding:4rem 2rem; text-align:center; }
.reiki-wirkung p { font-size:.9rem; color:var(--gruen); line-height:2; max-width:700px; margin:0 auto; }

/* ── RAINBOW-REIKI — Lotusblüten-Hintergrund ────────────── */
.reiki-section::before,
.reiki-wirkung::before {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  mix-blend-mode: multiply;
  opacity: .18;
  background-repeat: no-repeat;
}
.reiki-section {
  position: relative;
}
.reiki-section::before {
  background-image:
    url('/assets/img/lotusblute.svg'),
    url('/assets/img/lotusblute.svg');
  background-size: 200px, 140px, 170px, 120px;
  background-position: 2% 5%, 94% 12%, 5% 88%, 88% 80%;
}
.reiki-wirkung {
  position: relative;
}
.reiki-wirkung::before {
  background-image:
    url('/assets/img/lotusblute.svg'),
    url('/assets/img/lotusblute.svg');
  background-size: 160px, 190px, 130px;
  background-position: 50% 5%, 4% 70%, 92% 55%;
}

/* ── RAINBOW-REIKI — Schal ──────────────────────────────── */
.reiki-schal { display: none; }

.reiki-section:first-of-type .reiki-text::after {
  content: '';
  display: block;
  width: clamp(160px, 65%, 280px);
  aspect-ratio: 764 / 1138;
  margin: .5rem auto 0;
  background: url('/assets/img/schal_freigestellt.png') center / contain no-repeat;
}
.reiki-section { padding-bottom: 1rem; }
.reiki-wirkung  { padding-top:   1.5rem; }

/* ── KRÄUTERAPOTHEKE — Layout-Wrapper ───────────────────── */
.gold-trenner {
  display: flex;
  align-items: center;
  gap: .8rem;
  padding: .8rem 2rem;
  color: var(--gold);
  font-size: .65rem;
}
.gold-trenner::before,
.gold-trenner::after {
  content: '';
  flex: 1;
  height: 1px;
  background: var(--linie);
}
.krauter-panel {
  display: flex;
  align-items: stretch;
}
.krauter-panel .krauter-b1,
.krauter-panel .krauter-b2 {
  flex: 1;
  border-top: none;
}
.krauter-b2 { justify-content: center; }
.krauter-mitte {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 320px;
  padding: 1rem 0;
  overflow: visible;
}
.krauter-mitte-gruppe {
  position: relative;
  width: 280px;
  height: 300px;
}
.krauter-mitte-zweig {
  position: absolute;
  top: 30px;
  left: -18px;
  width: 105px;
  height: auto;
  mix-blend-mode: darken;
  transform: rotate(-14deg);
  z-index: 1;
}
.krauter-mitte-weizen {
  position: absolute;
  top: 20px;
  right: -14px;
  width: 80px;
  height: auto;
  mix-blend-mode: darken;
  transform: rotate(12deg);
  z-index: 1;
}
.krauter-mitte-schale {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 260px;
  height: auto;
  z-index: 2;
}
.krauter-video-reihe {
  display: flex;
}
.krauter-video-reihe .krauter-vblock {
  flex: 1;
  border-top: none;
}

/* ── KRÄUTERAPOTHEKE ────────────────────────────────────── */
/* Block 1 */
.krauter-b1 {
  width:100%; position:relative; overflow:visible;
  background: transparent;
  border-top: 1px solid var(--linie);
  display:flex; flex-direction:column; align-items:center;
  padding:3.5rem 2rem 2rem; text-align:center; gap:1.8rem;
}
.krauter-b1::before {
  content:''; position:absolute; top:20px; left:-20px;
  width:160px; height:260px;
  background:url('/assets/img/zweig1.svg') center/contain no-repeat;
  mix-blend-mode:multiply; pointer-events:none; opacity:.65; z-index:0;
}
.krauter-b1-link { font-size:.8rem; font-weight:700; color:var(--gruen2); text-decoration:underline; }
.krauter-b1-just { height:75px; width:auto; mix-blend-mode:multiply; }
.krauter-b1-title {
  font-family:'Great Vibes',cursive;
  font-size:clamp(2.2rem,4.5vw,3.5rem);
  font-weight:400; color:var(--gruen); line-height:1.45;
}
.krauter-b1-qr { width:min(22%,160px); }
.krauter-b1-qr img { width:100%; display:block; border-radius:6px; filter:invert(1); mix-blend-mode:multiply; }

/* Block 2 — selber Hintergrund, mit linker Trennlinie */
.krauter-b2 {
  width:100%; position:relative; overflow:visible;
  background: transparent;
  display:flex; flex-direction:column; align-items:center;
  padding:3.5rem 2rem 4.5rem; text-align:center; gap:1rem;
}
.krauter-b2::before {
  content:''; position:absolute; top:20px; right:-20px;
  width:160px; height:260px;
  background:url('/assets/img/zweig3.svg') center/contain no-repeat;
  mix-blend-mode:multiply; pointer-events:none; opacity:.65; z-index:0;
  transform: scaleX(-1);
}
.krauter-b2 h3 { font-family:'Cormorant Garamond',serif; font-style:italic; font-size:clamp(1.5rem,3.5vw,2.5rem); font-weight:400; color:var(--gruen2); }
.krauter-b2 p { font-size:.95rem; color:var(--gruen); line-height:1.9; }
.krauter-b2-logo { height:65px; width:auto; mix-blend-mode:multiply; margin-top:1rem; }

/* Blocks 3+4: Video als Card */
.krauter-vblock {
  width:100%;
  background: transparent;
  border-top: 1px solid var(--linie);
  display:flex; justify-content:center; align-items:center;
  padding: 3rem 2rem;
}
.krauter-vblock > img { display:none; }
.krauter-vblock video {
  position:static;
  width:auto;
  height: min(65vh, 480px);
  aspect-ratio: 9/16;
  border-radius: 18px;
  box-shadow: 0 8px 32px rgba(80,60,30,.18), 0 2px 8px rgba(80,60,30,.10);
  display:block;
  transform:none;
  background: #fff;
  outline: 6px solid #fff;
}

/* Block 5: Weihnachtsangebote entfernt */
.krauter-weihnacht { display:none; }

/* ── KRÄUTERAPOTHEKE v2 ─────────────────────────────────── */
.btn-outline-gruen { background:transparent; color:var(--gruen); border:2px solid var(--gruen); }
.btn-outline-gruen:hover { background:rgba(94,75,60,.08); }

/* Hero */
.k2-hero {
  display:grid; grid-template-columns:5fr 7fr; gap:0;
  align-items:stretch; overflow:hidden; min-height:460px;
}
.k2-hero-text {
  padding:4rem 3rem 4rem 4rem;
  display:flex; flex-direction:column; justify-content:center; gap:.9rem;
}
.k2-hero-text h1 {
  font-family:'Cormorant Garamond',serif;
  font-size:clamp(2.6rem,4.5vw,4rem); font-weight:700;
  color:var(--gruen2); line-height:1.15; margin-bottom:.2rem;
}
.k2-sub {
  font-family:'Cormorant Garamond',serif; font-style:italic;
  font-size:clamp(1.1rem,2vw,1.4rem); color:var(--gruen); margin-bottom:.2rem;
}
.k2-intro { font-size:.9rem; color:var(--gruen); line-height:1.8; margin-bottom:.4rem; }
.k2-hero-btns {
  display:flex;
  gap:.8rem;
  flex-wrap:nowrap;
  align-items:center;
  margin-top:.4rem;
}
.k2-hero-btns > .btn-canva {
  display:inline-flex !important;
  width:auto !important;
  flex:0 0 auto;
  white-space:nowrap;
}
.k2-hero-foto {
  overflow:hidden; border-radius:0; box-shadow:none;
  -webkit-mask-image: linear-gradient(
    to right, transparent 0%, rgba(0,0,0,.6) 8%, black 20%),
    linear-gradient(to bottom, transparent 0%, black 10%, black 90%, transparent 100%);
  -webkit-mask-composite: source-in;
  mask-image: linear-gradient(
    to right, transparent 0%, rgba(0,0,0,.6) 8%, black 20%),
    linear-gradient(to bottom, transparent 0%, black 10%, black 90%, transparent 100%);
  mask-composite: intersect;
}
.k2-hero-foto img { width:100%; height:100%; object-fit:cover; display:block; }

/* Cards */
.k2-cards-section { padding:4rem 1rem; text-align:center; background:rgba(220,203,179,.15); }
.k2-cards-section h2 {
  font-family:'Cormorant Garamond',serif; font-size:clamp(1.5rem,3vw,2.2rem);
  color:var(--gruen2); margin-bottom:.5rem;
}
.k2-cards {
  display:grid; grid-template-columns:1fr 1fr; gap:.8rem;
  max-width:1460px; margin:2rem auto 0;
}
.k2-card {
  position:relative;
  border-radius:20px; overflow:hidden;
  box-shadow:0 8px 28px rgba(80,60,30,.10);
  min-height:460px;
  isolation:isolate;
}
.k2-card-foto {
  position:absolute; inset:0;
  overflow:hidden; z-index:0;
}
.k2-card-foto img {
  width:100%; height:100%; object-fit:cover; display:block;
}
.k2-card::before {
  content:'';
  position:absolute; inset:0; z-index:1;
  background:linear-gradient(90deg, rgba(243,237,227,.18) 0%, rgba(243,237,227,.72) 36%, rgba(243,237,227,.72) 64%, rgba(243,237,227,.18) 100%);
}
.k2-card-inner {
  position:relative; z-index:2;
  width:min(60%, 390px);
  margin:0 auto;
  min-height:100%;
  background:transparent;
  backdrop-filter:none;
  padding:2.2rem 1.7rem;
  display:flex; flex-direction:column; align-items:center;
  justify-content:center; gap:.85rem; text-align:center;
}
.k2-card-icon { display:none; }
.k2-card-inner h3 {
  font-family:'Cormorant Garamond',serif; font-size:clamp(1.95rem,2.6vw,2.35rem);
  font-weight:700; color:var(--gruen2);
  line-height:1.15;
  margin-top:.9rem;
}
.k2-card-sub {
  font-family:'Cormorant Garamond',serif;
  font-style:italic; font-size:clamp(1.45rem,2vw,1.8rem);
  color:var(--gruen); opacity:.9;
}
.k2-card-inner p { font-size:1.1rem; line-height:1.55; color:var(--gruen); }
.k2-card .btn-canva {
  margin-top:.6rem;
  background:var(--sage);
  color:#fff;
  border:none;
  font-size:1.05rem;
  font-weight:400;
  padding:.5rem 1.8rem .52rem;
}
.k2-card .btn-canva:hover { background:#6f8050; opacity:1; }
#just-sektion .k2-card-inner { margin-left:auto; margin-right:24px; }
#forever-sektion .k2-card-inner { margin-right:auto; margin-left:24px; }
#just-sektion .k2-card-foto img { object-position:22% center; }
#forever-sektion .k2-card-foto img { object-position:64% center; }

/* Netzwerke */
.k2-networks {
  position:relative;
  overflow:hidden;
  padding:4rem 2rem;
  text-align:center;
}
.k2-network-side {
  position:absolute;
  bottom:2.2rem;
  width:min(22vw, 280px);
  height:auto;
  z-index:0;
  pointer-events:none;
  user-select:none;
  mix-blend-mode:multiply;
  opacity:.92;
  border-radius:24px;
  overflow:hidden;
  -webkit-mask-image:radial-gradient(ellipse 88% 82% at 50% 50%, #000 58%, rgba(0,0,0,.68) 78%, transparent 100%);
  mask-image:radial-gradient(ellipse 88% 82% at 50% 50%, #000 58%, rgba(0,0,0,.68) 78%, transparent 100%);
}
.k2-network-side-left { left:20px; }
.k2-network-side-right { right:20px; }
.k2-networks h2 {
  font-family:'Cormorant Garamond',serif; font-size:clamp(1.5rem,3vw,2.2rem);
  color:var(--gruen2); margin-bottom:.5rem;
}
.k2-networks-grid {
  position:relative;
  z-index:1;
  display:grid; grid-template-columns:1fr auto 1fr; gap:2.5rem;
  align-items:center; max-width:var(--max); margin:2.5rem auto 0;
}
.k2-network-item { display:flex; flex-direction:column; align-items:center; gap:1rem; }
.k2-network-item p { font-size:.88rem; color:var(--gruen); line-height:1.7; max-width:280px; }
.k2-brand-logo { height:65px; width:auto; mix-blend-mode:multiply; }
.k2-forever-text {
  font-family:'Cormorant Garamond',serif; font-size:2rem; font-weight:700;
  color:var(--gruen2); letter-spacing:.12em; font-style:italic; display:block;
  margin-bottom:.2rem;
}
.k2-network-quote {
  width:220px; height:220px; background:var(--sand); border-radius:50%;
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  padding:1.6rem; text-align:center; flex-shrink:0;
}
.k2-network-quote p {
  font-family:'Cormorant Garamond',serif; font-style:italic;
  font-size:.82rem; color:var(--gruen); line-height:1.55;
}
.k2-network-quote span { color:var(--gold); font-size:1.1rem; margin-top:.4rem; display:block; }

/* Beratung */
.k2-beratung {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:3rem;
  align-items:center;
  max-width:1460px;
  margin:0 auto;
  padding:4rem 2rem;
}
.k2-beratung-foto img {
  width:100%; height:auto; border-radius:var(--rfoto);
  box-shadow:0 4px 20px rgba(0,0,0,.12); object-fit:cover; display:block;
}
.k2-beratung-text h2 {
  font-family:'Cormorant Garamond',serif; font-size:clamp(1.5rem,3vw,2rem);
  font-weight:700; color:var(--gruen2); margin-bottom:.8rem;
}
.k2-beratung-text p { font-size:.9rem; color:var(--gruen); line-height:1.8; margin-bottom:1.2rem; }
.k2-beratung-btns { display:flex; gap:.8rem; flex-wrap:wrap; margin-bottom:1.2rem; }
.k2-italic { font-family:'Cormorant Garamond',serif; font-style:italic; font-size:.95rem; color:var(--gruen2); }

/* Features */
.k2-features {
  background:rgba(220,203,179,.2); padding:2.5rem 2rem;
  border-top:1px solid var(--linie);
}
.k2-features-grid {
  display:flex; justify-content:center; align-items:flex-start;
  max-width:var(--max); margin:0 auto; flex-wrap:wrap;
}
.k2-feature {
  display:flex; flex-direction:column; align-items:center; gap:.5rem;
  text-align:center; padding:.5rem 1.8rem; font-size:.8rem; color:var(--gruen);
  flex:1; min-width:120px; border-right:1px solid var(--linie);
}
.k2-feature:last-child { border-right:none; }
.k2-feature-icon { width:36px; height:36px; display:flex; align-items:center; justify-content:center; }
.k2-feature-icon img { width:30px; height:30px; mix-blend-mode:multiply; opacity:.7; }

/* Responsive */
@media (max-width:1100px) {
  .header-contact-icons { display:none; }
  .k2-network-side { width:min(18vw, 220px); opacity:.85; }
  .k2-network-side-left { left:10px; }
  .k2-network-side-right { right:10px; }
}
@media (max-width:860px) {
  .arbeit-section .arbeit-vase-deko {
    left: 14px;
    bottom: 145px;
    width: 185px;
    height: auto;
    opacity: .85;
  }
  .k2-network-side { display:none; }
  .k2-hero { grid-template-columns:1fr; }
  .k2-hero-text { padding:2.5rem 1.5rem; }
  .k2-hero-foto { max-height:300px; }
  .k2-hero-btns { flex-wrap:wrap; }
  .k2-beratung { grid-template-columns:1fr; }
  .k2-cards { grid-template-columns:1fr; max-width:640px; gap:1rem; }
  .k2-card { min-height:420px; }
  .k2-card-inner {
    width:min(88%, 460px);
    min-height:auto;
    margin:1.2rem auto;
    border-radius:18px;
    padding:1.9rem 1.35rem;
  }
  #just-sektion .k2-card-inner,
  #forever-sektion .k2-card-inner {
    margin:1.2rem auto;
  }
  .k2-card-inner h3 { font-size:clamp(1.7rem,6vw,2rem); }
  .k2-card-sub { font-size:clamp(1.25rem,4.3vw,1.55rem); }
  .k2-card-inner p { font-size:1.02rem; }
  .k2-card .btn-canva { font-size:1.35rem; }
  .k2-networks-grid { grid-template-columns:1fr; justify-items:center; }
  .k2-feature { border-right:none; border-bottom:1px solid var(--linie); padding:.8rem 1rem; width:100%; }
  .k2-feature:last-child { border-bottom:none; }
}
@media (max-width:600px) {
  .rezen-card--text { padding: 1.25rem 1rem 1.1rem; border-radius: 12px; }
  .rezen-quote { padding: .95rem .9rem; }
  .rezen-quote p { font-size: .95rem; line-height: 1.72; }
  .arbeit-section .arbeit-vase-deko {
    left: 10px;
    bottom: 118px;
    width: 160px;
    height: auto;
    opacity: .82;
  }
  .k2-networks-grid { gap:1.5rem; }
  .k2-network-quote { width:180px; height:180px; padding:1.2rem; }
}

/* ── TERMINE ────────────────────────────────────────────── */
.termine-hero { padding:4rem 2rem 3rem; text-align:center; }
.termine-hero h1 { font-family:'Cormorant Garamond',serif; font-size:clamp(2.4rem,6vw,4rem); font-weight:700; color:var(--gruen2); margin-bottom:.6rem; }
.termine-hero p { font-size:1rem; color:var(--gruen); margin-bottom:1.8rem; }

.termine-intro { padding:1rem 2rem 3.5rem; }
.termine-intro-grid { display:grid; grid-template-columns:1fr 1fr; gap:3.5rem; align-items:center; max-width:var(--max); margin:0 auto; }
.termine-intro-foto img { width:100%; height:auto; border-radius:var(--rfoto); }
.termine-intro-text { font-family:'Cormorant Garamond',serif; font-size:clamp(1.1rem,2.3vw,1.5rem); font-style:italic; color:var(--gruen2); line-height:1.75; }

.termine-section { padding:3rem 2rem 4rem; border-top:1px solid var(--linie); }
.termine-section-head { text-align:center; margin-bottom:2rem; }
.termine-section-head h2 { font-family:'Cormorant Garamond',serif; font-size:clamp(1.6rem,3.5vw,2.4rem); font-weight:700; color:var(--gruen2); margin-bottom:1.3rem; }
.termine-section-head.blau h2 { color:var(--gruen); }
.termine-section .btn-blau,
.termine-section .btn-braun { background:var(--gruen); }
.termine-btns { display:flex; flex-direction:column; align-items:center; gap:.7rem; }
.termine-flyers-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:1.5rem; max-width:var(--max); margin:0 auto; padding:0 2rem 4rem; }
.termine-flyer-item figure { margin:0; }
.termine-flyer-item a { pointer-events:none; cursor:default; display:block; }
.termine-flyer-item img { width:100%; height:auto; display:block; border-radius:8px; box-shadow:0 4px 18px rgba(0,0,0,.12); }

/* ── REZENSIONEN ────────────────────────────────────────── */
.rezen-hero { width:100%; padding:4rem 2rem 3rem; text-align:center; }
.rezen-hero h1 { font-family:'Cormorant Garamond',serif; font-size:clamp(2rem,5vw,3.5rem); font-weight:700; color:var(--gruen2); max-width:var(--max); margin:0 auto 1rem; line-height:1.25; }
.rezen-hero p { font-size:.88rem; max-width:600px; line-height:1.65; color:var(--gruen); margin:0 auto; }
.rezen-hero p a { color:var(--gruen); text-decoration:underline; }
.rezen-brief { width:100%; padding:2rem 2rem 5rem; display:flex; justify-content:center; align-items:center; }
.rezen-card { background:#fff; max-width:640px; width:100%; box-shadow:0 4px 24px rgba(94,75,60,.12); border-radius:4px; }
.rezen-card img { width:100%; height:auto; display:block; border-radius:4px; }

.rezen-card--text {
  max-width: 880px;
  padding: 2rem 2rem 1.6rem;
  border-radius: 16px;
  background: rgba(255,255,255,.92);
  border: 1px solid rgba(176,138,62,.22);
}
.rezen-card-title {
  font-family:'Cormorant Garamond',serif;
  font-size: clamp(1.45rem,2.8vw,2rem);
  color: var(--gruen2);
  text-align: center;
  margin-bottom: .55rem;
}
.rezen-card-note {
  text-align: center;
  font-size: .92rem;
  line-height: 1.6;
  color: rgba(94,75,60,.85);
  margin-bottom: 1.25rem;
}
.rezen-quote {
  margin: 0;
  padding: 1.2rem 1.3rem;
  border-left: 4px solid rgba(176,138,62,.5);
  border-radius: 10px;
  background: rgba(245,241,232,.9);
}
.rezen-quote p {
  font-size: 1rem;
  line-height: 1.8;
  color: var(--gruen);
  margin-bottom: .9rem;
}
.rezen-quote p:last-of-type { margin-bottom: .6rem; }
.rezen-quote footer {
  font-family:'Cormorant Garamond',serif;
  font-style: italic;
  font-size: 1.05rem;
  color: var(--gruen2);
}
.rezen-original {
  margin-top: 1.25rem;
  border-top: 1px dashed rgba(176,138,62,.35);
  padding-top: .9rem;
}
.rezen-original summary {
  cursor: pointer;
  font-size: .92rem;
  color: var(--gruen);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.rezen-original img {
  margin-top: .9rem;
  width: 100%;
  border-radius: 10px;
  box-shadow: 0 4px 18px rgba(94,75,60,.14);
}

/* ── KONTAKT ────────────────────────────────────────────── */
.kontakt-section { padding:4rem 2rem; }
.kontakt-grid { display:grid; grid-template-columns:1fr 1fr; gap:3rem; align-items:start; max-width:var(--max); margin:0 auto; }
.kontakt-foto img { width:100%; height:auto; display:block; border-radius:var(--rfoto); box-shadow:0 4px 20px rgba(0,0,0,.12); object-fit:cover; }
.kontakt-info h2 { font-family:'Cormorant Garamond',serif; font-size:clamp(1.3rem,2.5vw,1.8rem); color:var(--gruen2); margin-bottom:1.5rem; }
.kontakt-info p { font-size:.88rem; color:var(--gruen); line-height:1.9; margin-bottom:.4rem; }
.kontakt-btns { display:flex; flex-direction:column; gap:.7rem; margin-top:1.5rem; }

/* ── FOOTER ─────────────────────────────────────────────── */
#footer {
  width: 100%;
  padding: .75rem 1rem;
  border-top: 1px solid var(--linie);
  text-align: center;
}
#footer p {
  margin: 0;
  text-align: center;
  font-size: clamp(.9rem, 2vw, 1.1rem);
  line-height: 1.45;
  color: var(--gruen);
}
#footer a {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 2px;
}
