/* ================================================================
   LONGEVITA – Globales Design-CSS
   Playfair Display + Outfit | Forest Green + Gold + Cream
   ================================================================ */

/* ── TOKENS ─────────────────────────────────────────────────────── */
:root {
  --lv-bg:      #F7F4EF;
  --lv-bg-alt:  #EDE9E1;
  --lv-deep:    #243D30;
  --lv-mid:     #3D6652;
  --lv-gold:    #B89A6A;
  --lv-gold-lt: #D4BC94;
  --lv-text:    #1C2921;
  --lv-muted:   #6B7B73;
  --lv-line:    rgba(36,61,48,.12);
  --lv-serif:   'Playfair Display', Georgia, serif;
  --lv-sans:    'Outfit', system-ui, sans-serif;
  --lv-gap:     clamp(3.5rem, 8vw, 7rem);
  --lv-r:       3px;
  /* GP-Variable direkt hier überschreiben */
  --base-3:     transparent;
}

/* ── BASE ────────────────────────────────────────────────────────── */
body {
  background: var(--lv-bg);
  color: var(--lv-text);
  font-family: var(--lv-sans);
  font-size: 17px;
  line-height: 1.7;
}
h1, h2, h3, h4, h5, h6 {
  font-family: var(--lv-serif);
  font-weight: 400;
  line-height: 1.2;
  color: var(--lv-deep);
}
a { color: var(--lv-mid); text-decoration: none; transition: opacity .2s; }
a:hover { opacity: .75; }
img { display: block; max-width: 100%; }
p { color: var(--lv-muted); margin-bottom: 1rem; }

/* GP: kein body-padding durch fixed header */
body,
body.has-fixed-header,
body.admin-bar.has-fixed-header {
  padding-top: 0;
  margin-top: 0;
}

/* ── LAYOUT ──────────────────────────────────────────────────────── */
.lv-container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 clamp(1.5rem, 5vw, 4rem);
}
.lv-section     { padding: var(--lv-gap) 0; }
.lv-section--alt  { background: var(--lv-bg-alt); }
.lv-section--dark { background: var(--lv-deep); }

/* GP: Seiteninhalt volle Breite */
.page-template-default .content-area,
.page-template-default .site-main,
.entry-content {
  width: 100%;
  max-width: 100%;
  padding: 0;
  margin: 0;
}
.site-content .inside-article { padding: 0; }

/* ── TYPOGRAPHY HELPERS ──────────────────────────────────────────── */
.lv-label {
  display: block;
  font-family: var(--lv-sans);
  font-size: .72rem;
  font-weight: 600;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--lv-mid);
  margin-bottom: .7rem;
}
.lv-title {
  font-family: var(--lv-serif);
  font-size: clamp(1.7rem, 3vw, 2.7rem);
  font-weight: 400;
  color: var(--lv-deep);
  margin-bottom: 1rem;
}
.lv-title em { font-style: italic; color: var(--lv-mid); }
.lv-sec-header { margin-bottom: clamp(2.5rem, 5vw, 4rem); }

/* ── BUTTONS ─────────────────────────────────────────────────────── */
.lv-btn {
  display: inline-flex;
  align-items: center;
  gap: .45rem;
  padding: .82rem 1.8rem;
  border-radius: 2rem;
  font-family: var(--lv-sans);
  font-size: .85rem;
  font-weight: 600;
  letter-spacing: .04em;
  cursor: pointer;
  transition: all .2s;
  border: none;
  text-decoration: none;
}
.lv-btn--primary   { background: var(--lv-gold); color: var(--lv-deep); }
.lv-btn--primary:hover { background: var(--lv-gold-lt); transform: translateY(-1px); opacity: 1; }
.lv-btn--dark      { background: var(--lv-deep); color: var(--lv-bg); }
.lv-btn--dark:hover    { background: var(--lv-mid); opacity: 1; }
.lv-btn--outline   { background: transparent; color: var(--lv-deep); border: 1.5px solid var(--lv-line); }
.lv-btn--outline:hover { border-color: var(--lv-deep); opacity: 1; }
.lv-btn--white     { background: #fff; color: var(--lv-deep); }
.lv-btn--white:hover   { background: var(--lv-bg-alt); opacity: 1; }
.lv-btn--outline-w { background: transparent; color: rgba(247,244,239,.85); border: 1.5px solid rgba(247,244,239,.25); }
.lv-btn--outline-w:hover { border-color: rgba(247,244,239,.6); opacity: 1; }
.lv-btn--gold      { background: var(--lv-gold); color: var(--lv-deep); width: 100%; justify-content: center; font-weight: 700; }
.lv-btn--gold:hover    { background: var(--lv-gold-lt); opacity: 1; }

/* ── NAVIGATION ──────────────────────────────────────────────────── */
.site-header {
  --base-3: transparent;
  position: absolute;
  top: 0; left: 0; right: 0;
  z-index: 200;
  background: transparent;
  box-shadow: none;
  transition: background .3s, box-shadow .3s, position .3s;
}
.site-header .inside-header {
  padding: .8rem clamp(1.5rem, 5vw, 4rem);
  min-height: 0;
  height: auto;
}
.site-header.lv-scrolled {
  --base-3: rgba(247,244,239,.96);
  position: fixed;
  background: rgba(247,244,239,.96);
  backdrop-filter: blur(14px);
  box-shadow: 0 1px 0 var(--lv-line);
}

/* Logo */
.site-header .site-logo img,
.site-header .custom-logo {
  height: 80px;
  width: auto;
  object-fit: contain;
  filter: brightness(0) invert(1);
  transition: filter .3s, height .3s;
}
.site-header.lv-scrolled .site-logo img,
.site-header.lv-scrolled .custom-logo {
  filter: none;
  height: 56px;
}

/* Nav-Links */
.site-header .main-navigation a,
.site-header .main-navigation .menu-item a,
.site-header .main-navigation ul li a {
  font-family: var(--lv-sans);
  font-size: .84rem;
  font-weight: 500;
  letter-spacing: .03em;
  color: rgba(247,244,239,.88);
  transition: opacity .2s;
}
.site-header.lv-scrolled .main-navigation a,
.site-header.lv-scrolled .main-navigation .menu-item a,
.site-header.lv-scrolled .main-navigation ul li a {
  color: var(--lv-deep);
}
.site-header .main-navigation a:hover { opacity: .65; }

/* CTA-Button im Nav */
.nav-cta-link > a,
.menu-item-cta > a {
  background: rgba(247,244,239,.12);
  color: rgba(247,244,239,.92);
  border: 1px solid rgba(247,244,239,.3);
  padding: .52rem 1.3rem;
  border-radius: 2rem;
  font-size: .8rem;
  font-weight: 600;
  backdrop-filter: blur(8px);
  transition: background .2s, border-color .2s;
}
.site-header.lv-scrolled .nav-cta-link > a,
.site-header.lv-scrolled .menu-item-cta > a {
  background: var(--lv-deep);
  color: var(--lv-bg);
  border-color: var(--lv-deep);
}

/* ── HERO ────────────────────────────────────────────────────────── */
.lv-hero {
  position: relative;
  min-height: 100svh;
  display: flex;
  align-items: flex-end;
  overflow: hidden;
}
.lv-hero__bg {
  position: absolute; inset: 0;
  background: url('https://longevita-bochum.de/wp-content/uploads/2026/05/saira-F0er9EtwO7E-unsplash-scaled.jpg') center/cover no-repeat;
}
.lv-hero__bg::after {
  content: '';
  position: absolute; inset: 0;
  background: linear-gradient(115deg, rgba(24,38,28,.88) 0%, rgba(24,38,28,.6) 50%, rgba(24,38,28,.2) 100%);
}
.lv-hero__content {
  position: relative; z-index: 2;
  padding: clamp(7rem,16vw,12rem) clamp(1.5rem,5vw,4rem) clamp(4rem,8vw,6rem);
  max-width: 720px;
}
.lv-hero__eyebrow {
  display: flex; align-items: center; gap: .8rem;
  margin-bottom: 1.8rem;
}
.lv-hero__eyebrow::before { content: ''; display: block; width: 2rem; height: 1px; background: var(--lv-gold); }
.lv-hero__eyebrow .lv-label { color: rgba(212,188,148,.85); margin-bottom: 0; }
.lv-hero__h1 {
  font-family: var(--lv-serif);
  font-size: clamp(3.2rem,6vw,5.2rem);
  font-weight: 400; line-height: 1.07;
  color: #fff; margin-bottom: 1.4rem;
}
.lv-hero__h1 em { font-style: italic; color: var(--lv-gold-lt); }
.lv-hero__sub {
  font-size: 1.05rem; font-weight: 300;
  color: rgba(247,244,239,.72);
  max-width: 42ch; margin-bottom: 2.5rem; line-height: 1.75;
}
.lv-hero__actions { display: flex; align-items: center; gap: 1.2rem; flex-wrap: wrap; }
.lv-hero__scroll {
  position: absolute; bottom: 2rem; right: clamp(1.5rem,5vw,4rem);
  z-index: 2; display: flex; flex-direction: column; align-items: center; gap: .5rem;
}
.lv-hero__scroll span { font-size: .66rem; letter-spacing: .14em; text-transform: uppercase; color: rgba(247,244,239,.4); writing-mode: vertical-rl; }
.lv-scroll-line { width: 1px; height: 3rem; background: linear-gradient(to bottom, transparent, var(--lv-gold)); }

/* ── INTRO BAND ──────────────────────────────────────────────────── */
.lv-intro-band { background: var(--lv-deep); padding: clamp(2.5rem,4.5vw,3.8rem) 0; }
.lv-intro-inner { display: flex; align-items: center; justify-content: space-between; gap: 3rem; flex-wrap: wrap; }
.lv-intro-quote { font-family: var(--lv-serif); font-style: italic; font-size: clamp(1.1rem,1.8vw,1.5rem); color: var(--lv-gold-lt); max-width: 48ch; line-height: 1.45; }
.lv-stats { display: flex; gap: 3rem; flex-shrink: 0; }
.lv-stat__n { font-family: var(--lv-serif); font-size: 2.6rem; color: var(--lv-gold); line-height: 1; margin-bottom: .2rem; }
.lv-stat__l { font-size: .7rem; font-weight: 400; letter-spacing: .1em; text-transform: uppercase; color: rgba(247,244,239,.38); }

/* ── ABOUT / ÄRZTIN ──────────────────────────────────────────────── */
.lv-about-grid { display: grid; grid-template-columns: 5fr 7fr; gap: clamp(3rem,7vw,6rem); align-items: center; }
.lv-about-img { position: relative; }
.lv-about-img__inner { aspect-ratio: 4/5; overflow: hidden; border-radius: var(--lv-r); background: var(--lv-bg-alt); }
.lv-about-img__inner img { width: 100%; height: 100%; object-fit: cover; object-position: top center; transition: transform .6s; }
.lv-about-img:hover .lv-about-img__inner img { transform: scale(1.03); }
.lv-about-img::before {
  content: ''; position: absolute;
  top: -1.2rem; left: -1.2rem; right: 1.2rem; bottom: -1.2rem;
  border: 1px solid var(--lv-gold-lt); border-radius: var(--lv-r); z-index: -1;
}
.lv-creds { margin-top: 1.8rem; padding-top: 1.5rem; border-top: 1px solid var(--lv-line); display: grid; grid-template-columns: 1fr 1fr; gap: .7rem 1.2rem; }
.lv-cred { display: flex; align-items: flex-start; gap: .5rem; font-size: .82rem; color: var(--lv-muted); line-height: 1.4; }
.lv-cred::before { content: ''; display: block; width: 5px; height: 5px; border-radius: 50%; background: var(--lv-gold); flex-shrink: 0; margin-top: .45rem; }
.lv-about-name { font-size: clamp(1.8rem,3vw,2.6rem); margin-bottom: .4rem; }
.lv-about-role { font-size: .83rem; font-weight: 500; letter-spacing: .07em; text-transform: uppercase; color: var(--lv-mid); margin-bottom: 1.8rem; }
.lv-about-text { color: var(--lv-muted); max-width: 46ch; margin-bottom: 2.2rem; line-height: 1.8; }

/* ── PILLARS ─────────────────────────────────────────────────────── */
.lv-pillars-grid {
  display: grid; grid-template-columns: repeat(3,1fr);
  gap: 1.5px; background: var(--lv-line); border: 1px solid var(--lv-line);
  margin-top: clamp(2.5rem,5vw,4rem);
}
.lv-pillar { background: var(--lv-bg-alt); padding: clamp(2rem,4vw,2.8rem); position: relative; overflow: hidden; transition: background .3s; }
.lv-pillar:hover { background: var(--lv-bg); }
.lv-pillar__num { font-family: var(--lv-serif); font-size: 5rem; font-weight: 400; color: rgba(36,61,48,.05); line-height: 1; position: absolute; top: .8rem; right: 1.2rem; user-select: none; }
.lv-pillar__icon { width: 2.6rem; height: 2.6rem; margin-bottom: 1.5rem; color: var(--lv-mid); }
.lv-pillar__title { font-family: var(--lv-serif); font-size: 1.3rem; color: var(--lv-deep); margin-bottom: .7rem; }
.lv-tags { display: flex; flex-wrap: wrap; gap: .35rem; margin-bottom: 1.2rem; }
.lv-tag { font-size: .7rem; font-weight: 500; letter-spacing: .05em; padding: .22rem .65rem; border-radius: 2rem; background: rgba(61,102,82,.1); color: var(--lv-mid); }
.lv-pillar__text { font-size: .86rem; color: var(--lv-muted); line-height: 1.75; margin-bottom: 1.6rem; }
.lv-pillar__link { display: inline-flex; align-items: center; gap: .4rem; font-size: .78rem; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--lv-mid); transition: gap .2s; text-decoration: none; }
.lv-pillar__link:hover { gap: .7rem; opacity: 1; }
.lv-pillar__link::after { content: '→'; }

/* ── PHILOSOPHY / PROZESS ────────────────────────────────────────── */
.lv-philosophy { display: grid; grid-template-columns: 1fr 1fr; min-height: 55vh; }
.lv-phil-left { background: var(--lv-deep); padding: clamp(3rem,7vw,6rem); display: flex; flex-direction: column; justify-content: center; }
.lv-phil-quote { font-family: var(--lv-serif); font-size: clamp(1.25rem,2.1vw,1.85rem); font-style: italic; color: var(--lv-gold-lt); line-height: 1.5; max-width: 30ch; margin-bottom: 1.8rem; }
.lv-phil-quote::before { content: '\201E'; display: block; font-size: 4.5rem; color: var(--lv-gold); opacity: .3; line-height: .5; margin-bottom: .8rem; }
.lv-phil-attr { font-size: .76rem; letter-spacing: .1em; text-transform: uppercase; color: rgba(247,244,239,.28); }
.lv-phil-right { background: var(--lv-bg-alt); padding: clamp(3rem,7vw,6rem); display: flex; flex-direction: column; justify-content: center; gap: 1.8rem; }
.lv-step { display: flex; gap: 1.4rem; align-items: flex-start; }
.lv-step__n { font-family: var(--lv-serif); font-size: 1.8rem; color: var(--lv-gold); line-height: 1; flex-shrink: 0; width: 2rem; }
.lv-step h4 { font-family: var(--lv-sans); font-size: .88rem; font-weight: 600; color: var(--lv-deep); margin-bottom: .3rem; }
.lv-step p { font-size: .83rem; color: var(--lv-muted); line-height: 1.6; margin: 0; }
.lv-step-div { height: 1px; background: var(--lv-line); margin-left: 3.4rem; }

/* ── TREATMENT LIST ──────────────────────────────────────────────── */
.lv-treatments-layout { display: grid; grid-template-columns: 3fr 2fr; gap: 4rem; align-items: start; }
.lv-t-list { list-style: none; padding: 0; margin: 0; }
.lv-t-item { display: grid; grid-template-columns: 1fr auto; align-items: center; padding: 1.3rem 0; border-bottom: 1px solid var(--lv-line); gap: 1rem; transition: padding-left .2s; }
.lv-t-item:hover { padding-left: .6rem; }
.lv-t-item:first-child { border-top: 1px solid var(--lv-line); }
.lv-t-name { font-family: var(--lv-serif); font-size: 1.1rem; color: var(--lv-deep); }
.lv-t-sub { font-size: .78rem; color: var(--lv-muted); margin-top: .15rem; }
.lv-t-cat { font-size: .67rem; font-weight: 600; letter-spacing: .07em; text-transform: uppercase; color: var(--lv-mid); opacity: .55; text-align: right; white-space: nowrap; }

/* ── ASIDE CARD ──────────────────────────────────────────────────── */
.lv-aside { position: sticky; top: 6rem; }
.lv-aside-card { background: var(--lv-deep); color: var(--lv-bg); padding: 2.5rem; border-radius: var(--lv-r); margin-bottom: 1.5rem; }
.lv-aside-lbl { font-size: .68rem; font-weight: 600; letter-spacing: .15em; text-transform: uppercase; color: var(--lv-gold); margin-bottom: 1rem; display: block; }
.lv-aside-title { font-family: var(--lv-serif); font-size: 1.4rem; font-style: italic; line-height: 1.3; margin-bottom: 1.1rem; color: var(--lv-bg); }
.lv-aside-text { font-size: .83rem; color: rgba(247,244,239,.58); line-height: 1.7; margin-bottom: 1.8rem; }
.lv-info-badge { background: var(--lv-bg-alt); border: 1px solid var(--lv-line); padding: 1.1rem 1.4rem; border-radius: var(--lv-r); display: flex; align-items: center; gap: 1rem; }
.lv-badge-ico { width: 2.3rem; height: 2.3rem; background: rgba(61,102,82,.1); border-radius: 50%; display: flex; align-items: center; justify-content: center; flex-shrink: 0; color: var(--lv-mid); }
.lv-badge-text strong { display: block; font-size: .85rem; font-weight: 600; color: var(--lv-deep); }
.lv-badge-text span { font-size: .76rem; color: var(--lv-muted); }

/* ── CTA SEKTION ─────────────────────────────────────────────────── */
.lv-cta { padding: clamp(4rem,8vw,7rem) 0; background: var(--lv-deep); text-align: center; position: relative; overflow: hidden; }
.lv-cta::before { content: 'LONGEVITA'; position: absolute; font-family: var(--lv-serif); font-size: clamp(6rem,14vw,16rem); color: rgba(247,244,239,.03); top: 50%; left: 50%; transform: translate(-50%,-50%); white-space: nowrap; pointer-events: none; user-select: none; line-height: 1; }
.lv-cta h2 { font-family: var(--lv-serif); font-size: clamp(1.9rem,3.5vw,3.2rem); color: #fff; margin-bottom: 1rem; position: relative; }
.lv-cta h2 em { font-style: italic; color: var(--lv-gold-lt); }
.lv-cta p { color: rgba(247,244,239,.58); max-width: 38ch; margin: 0 auto 2.5rem; position: relative; }
.lv-cta-btns { display: flex; justify-content: center; gap: 1rem; flex-wrap: wrap; position: relative; }

/* ── FOOTER ──────────────────────────────────────────────────────── */
.site-footer {
  background: var(--lv-text);
  color: var(--lv-bg);
  padding: clamp(1rem,2vw,1rem) 0 1rem;
  text-align: center;
}
.site-footer a { color: rgba(247,244,239,.5); }
.site-footer .copyright-bar { color: rgba(247,244,239,.3); font-size: .78rem; }
.lv-footer-grid { display: grid; grid-template-columns: 2fr 1fr 1fr 1fr; gap: 3rem; margin-bottom: 3rem; }
.lv-footer-logo { height: 128px; width: auto; margin-bottom: .8rem; opacity: .65; filter: brightness(0) invert(1); }
.lv-footer-tagline { font-size: .84rem; color: rgba(247,244,239,.4); line-height: 1.65; max-width: 24ch; }
.lv-footer-col-title { font-size: .7rem; font-weight: 600; letter-spacing: .15em; text-transform: uppercase; color: var(--lv-gold); margin-bottom: 1.1rem; display: block; }
.lv-footer-links { list-style: none; padding: 0; margin: 0; }
.lv-footer-links li { margin-bottom: .55rem; }
.lv-footer-links a { font-size: .84rem; color: rgba(247,244,239,.45); transition: color .2s; }
.lv-footer-links a:hover { color: var(--lv-bg); opacity: 1; }
.lv-footer-address { font-size: .84rem; color: rgba(247,244,239,.45); font-style: normal; line-height: 1.8; }
.lv-footer-address a { color: rgba(247,244,239,.45); }
.lv-footer-social { display: flex; gap: .7rem; margin-top: 1.2rem; }
.lv-soc-btn { width: 2rem; height: 2rem; border-radius: 50%; border: 1px solid rgba(247,244,239,.16); display: flex; align-items: center; justify-content: center; color: rgba(247,244,239,.4); transition: all .2s; }
.lv-soc-btn:hover { border-color: var(--lv-gold); color: var(--lv-gold); opacity: 1; }
.lv-footer-bottom { border-top: 1px solid rgba(247,244,239,.08); padding-top: 1.5rem; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 1rem; }
.lv-footer-bottom span,
.lv-footer-bottom a { font-size: .75rem; color: rgba(247,244,239,.28); }
.lv-footer-bottom a:hover { color: rgba(247,244,239,.6); opacity: 1; }
.lv-footer-legal { display: flex; gap: 1.5rem; }

/* ── CONTACT PAGE ────────────────────────────────────────────────── */
.lv-contact-grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(3rem,7vw,6rem); align-items: start; }
.lv-contact-actions { display: flex; flex-direction: column; gap: 1rem; margin-bottom: 2rem; }
.lv-contact-action { display: flex; align-items: center; gap: 1rem; padding: 1.3rem 1.6rem; border-radius: var(--lv-r); background: var(--lv-bg-alt); border: 1px solid var(--lv-line); transition: border-color .2s; text-decoration: none; color: var(--lv-text); }
.lv-contact-action:hover { border-color: var(--lv-gold); opacity: 1; }
.lv-contact-action__ico { width: 2.5rem; height: 2.5rem; border-radius: 50%; background: rgba(61,102,82,.1); display: flex; align-items: center; justify-content: center; flex-shrink: 0; color: var(--lv-mid); }
.lv-contact-action__label { font-size: .72rem; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: var(--lv-mid); margin-bottom: .15rem; }
.lv-contact-action__value { font-size: .95rem; color: var(--lv-deep); font-weight: 500; }
.lv-map-embed { border-radius: var(--lv-r); overflow: hidden; border: 1px solid var(--lv-line); }

/* ── PAGE HERO (Unterseiten) ─────────────────────────────────────── */
.lv-page-hero {
  background: var(--lv-deep);
  padding: clamp(7rem,14vw,10rem) 0 clamp(3rem,6vw,5rem);
  position: relative; overflow: hidden;
}
.lv-page-hero::before {
  content: ''; position: absolute; bottom: -6rem; right: -6rem;
  width: 28rem; height: 28rem; border-radius: 50%;
  background: radial-gradient(circle, rgba(184,154,106,.07) 0%, transparent 70%);
  pointer-events: none;
}
.lv-page-hero__label { color: rgba(212,188,148,.7); margin-bottom: .6rem; }
.lv-page-hero__h1 { font-family: var(--lv-serif); font-size: clamp(2.5rem,5vw,4rem); color: #fff; margin-bottom: .8rem; }
.lv-page-hero__h1 em { font-style: italic; color: var(--lv-gold-lt); }
.lv-page-hero__sub { font-size: 1.05rem; color: rgba(247,244,239,.65); max-width: 48ch; line-height: 1.7; }

/* ── RESPONSIVE ──────────────────────────────────────────────────── */
@media (max-width: 900px) {
  .lv-about-grid,
  .lv-philosophy,
  .lv-treatments-layout,
  .lv-contact-grid { grid-template-columns: 1fr; }
  .lv-pillars-grid  { grid-template-columns: 1fr; }
  .lv-footer-grid   { grid-template-columns: 1fr 1fr; }
  .lv-philosophy    { min-height: auto; }
}
@media (max-width: 600px) {
  .lv-footer-grid { grid-template-columns: 1fr; }
  .lv-stats       { gap: 1.5rem; }
  .doctolib-widget { top: auto; bottom: 10px; }
}

/* ── LEGAL PAGES (Impressum, Datenschutz) ────────────────────────── */

/* Seitentitel ausblenden – wird doppelt gerendert */
.page-id-1449 .entry-title,
.page-id-1458 .entry-title,
.page-id-1449 .page-title,
.page-id-1458 .page-title { display: none; }

/* Padding-top damit Inhalt nicht unter transparentem Header verschwindet */
.page-id-1449 .site-main,
.page-id-1458 .site-main {
  padding-top: clamp(6rem, 12vw, 9rem);
}

/* Inhalt auf lesbarer Breite zentrieren */
.page-id-1449 .entry-content,
.page-id-1458 .entry-content {
  max-width: 780px;
  margin: 0 auto;
  padding: 0 clamp(1.5rem, 5vw, 4rem) clamp(4rem, 8vw, 6rem);
}

/* Typografie für Fließtext */
.page-id-1449 .entry-content h1,
.page-id-1449 .entry-content h2,
.page-id-1458 .entry-content h1,
.page-id-1458 .entry-content h2 {
  font-family: var(--lv-serif);
  color: var(--lv-deep);
  margin-top: 2rem;
  margin-bottom: .5rem;
}
.page-id-1449 .entry-content h1,
.page-id-1458 .entry-content h1 {
  font-size: clamp(2rem, 4vw, 3rem);
  margin-bottom: 2rem;
}
.page-id-1449 .entry-content p,
.page-id-1458 .entry-content p {
  color: var(--lv-muted);
  line-height: 1.8;
  margin-bottom: .8rem;
}
.page-id-1449 .entry-content strong,
.page-id-1458 .entry-content strong { color: var(--lv-text); }
.page-id-1449 .entry-content a,
.page-id-1458 .entry-content a { color: var(--lv-mid); text-decoration: underline; }
.page-id-1449 .entry-content ul,
.page-id-1458 .entry-content ul {
  padding-left: 1.5rem;
  margin-bottom: 1rem;
}
.page-id-1449 .entry-content li,
.page-id-1458 .entry-content li {
  color: var(--lv-muted);
  line-height: 1.7;
  margin-bottom: .3rem;
}

/* Footer-Abstände korrigieren */
.site-footer {
  padding-top: 0;
}
.lv-custom-footer {
  padding-top: clamp(2rem, 4vw, 3rem) !important;
  padding-bottom: 0 !important;
}
.lv-footer-bottom {
  padding-bottom: 2rem;
}

/* ── MENÜ HOVER-FARBE ────────────────────────────────────────────── */
.site-header .main-navigation a:hover,
.site-header .main-navigation .menu-item a:hover,
.site-header.lv-scrolled .main-navigation a:hover,
.site-header.lv-scrolled .main-navigation .menu-item a:hover {
  color: var(--lv-gold) !important;
  opacity: 1;
}

/* ── CTA-BUTTON IM NAV ───────────────────────────────────────────── */
/* Schlankerer Button, kein klobiger Rahmen */
.nav-cta-link > a,
.menu-item-cta > a {
  padding: .42rem 1.1rem !important;
  border-radius: 2rem !important;
  font-size: .78rem !important;
  border-width: 1px !important;
}

/* Scrolled: Schrift weiß damit sie auf grünem Hintergrund lesbar ist */
.site-header.lv-scrolled .nav-cta-link > a,
.site-header.lv-scrolled .menu-item-cta > a {
  background: var(--lv-deep) !important;
  color: #F7F4EF !important;
  border-color: var(--lv-deep) !important;
}
.site-header.lv-scrolled .nav-cta-link > a:hover,
.site-header.lv-scrolled .menu-item-cta > a:hover {
  background: var(--lv-mid) !important;
  color: #F7F4EF !important;
  border-color: var(--lv-mid) !important;
  opacity: 1;
}

/* Hero Ghost-Button Hover */
.lv-btn--ghost:hover {
  color: #fff !important;
  opacity: .85;
}

/* Outline-w Button Hover (Telefon-CTA) */
.lv-btn--outline-w:hover {
  color: rgba(247,244,239,.85) !important;
  opacity: 1;
}

/* Legal-Seiten: GP separate-containers überschreiben */
.page-id-1449 .site-content .content-area,
.page-id-1458 .site-content .content-area,
.page-id-1449 .site-main,
.page-id-1458 .site-main,
.page-id-1449 .inside-article,
.page-id-1458 .inside-article,
.page-id-1449 .entry-content,
.page-id-1458 .entry-content {
  padding: 0 !important;
  margin: 0 !important;
  max-width: 100% !important;
  width: 100% !important;
}

/* Hero negativen Margin entfernen – nicht mehr nötig */
.page-id-1449 .lv-page-hero,
.page-id-1458 .lv-page-hero {
  margin-left: 0;
  margin-right: 0;
}

/* Fließtext unter Hero einrücken */
.page-id-1449 .entry-content > *:not(.lv-page-hero),
.page-id-1458 .entry-content > *:not(.lv-page-hero) {
  max-width: 780px;
  margin-left: auto;
  margin-right: auto;
  padding-left: clamp(1.5rem, 5vw, 4rem);
  padding-right: clamp(1.5rem, 5vw, 4rem);
}

/* ── MOBILE MENÜ ─────────────────────────────────────────────────── */

/* Hamburger-Icon */
.site-header .menu-toggle,
.site-header .menu-toggle:focus {
  color: rgba(247,244,239,.9) !important;
  background: transparent !important;
  border: none !important;
  padding: .4rem !important;
}
.site-header.lv-scrolled .menu-toggle {
  color: var(--lv-deep) !important;
}

/* Highlight Desktop (blau → gold) */
.site-header .main-navigation .current-menu-item > a,
.site-header .main-navigation .current-page-ancestor > a {
  color: var(--lv-gold) !important;
  opacity: 1 !important;
}
.site-header .main-navigation a:hover {
  color: var(--lv-gold) !important;
  opacity: 1 !important;
}

/* Mobile Menü – nur unterhalb 768px */
@media (max-width: 768px) {
  .site-header .main-navigation ul.menu,
  .site-header .main-navigation .main-nav ul {
    background: var(--lv-deep) !important;
    padding: 1.5rem 0 2rem !important;
    margin-top: .5rem !important;
    border-radius: 0 0 4px 4px !important;
    box-shadow: 0 8px 32px rgba(0,0,0,.25) !important;
  }
  .site-header .main-navigation ul li a {
    color: rgba(247,244,239,.85) !important;
    font-family: var(--lv-sans) !important;
    font-size: 1rem !important;
    font-weight: 500 !important;
    padding: .75rem 1.8rem !important;
    display: block !important;
    letter-spacing: .03em !important;
    border-bottom: 1px solid rgba(247,244,239,.08) !important;
  }
  .site-header .main-navigation ul li:last-child a {
    border-bottom: none !important;
  }
  .site-header .main-navigation ul li a:hover {
    color: var(--lv-gold) !important;
    background: rgba(247,244,239,.05) !important;
    opacity: 1 !important;
  }
  .site-header .main-navigation ul li.menu-item-cta a {
    margin: 1rem 1.8rem 0 !important;
    background: var(--lv-gold) !important;
    color: var(--lv-deep) !important;
    border-radius: 2rem !important;
    text-align: center !important;
    font-weight: 700 !important;
    border-bottom: none !important;
    padding: .65rem 1.4rem !important;
  }
  .site-header .main-navigation ul li.menu-item-cta a:hover {
    background: var(--lv-gold-lt) !important;
    color: var(--lv-deep) !important;
  }
}

/* ── FAQ AKKORDEON ───────────────────────────────────────────────── */
.lv-faq {
  display: flex;
  flex-direction: column;
  gap: 0;
  border: 1px solid var(--lv-line);
  border-radius: var(--lv-r);
  overflow: hidden;
}
.lv-faq__item {
  border-bottom: 1px solid var(--lv-line);
  background: var(--lv-bg);
}
.lv-faq__item:last-child { border-bottom: none; }
.lv-faq__question {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1.2rem 1.6rem;
  font-family: var(--lv-sans);
  font-size: .95rem;
  font-weight: 600;
  color: var(--lv-deep);
  cursor: pointer;
  list-style: none;
  gap: 1rem;
  transition: background .2s;
}
.lv-faq__question::-webkit-details-marker { display: none; }
.lv-faq__question::after {
  content: '+';
  font-size: 1.4rem;
  font-weight: 300;
  color: var(--lv-gold);
  flex-shrink: 0;
  transition: transform .25s;
  line-height: 1;
}
.lv-faq__item[open] > .lv-faq__question {
  background: var(--lv-bg-alt);
  color: var(--lv-deep);
}
.lv-faq__item[open] > .lv-faq__question::after {
  content: '−';
}
.lv-faq__question:hover { background: var(--lv-bg-alt); }
.lv-faq__answer {
  padding: 1rem 1.6rem 1.4rem;
  background: var(--lv-bg);
}
.lv-faq__answer p {
  font-size: .9rem;
  color: var(--lv-muted);
  line-height: 1.75;
  margin-bottom: .7rem;
}
.lv-faq__answer p:last-child { margin-bottom: 0; }