/* =============================================================================
   PHYSIOPARK MG · MANUELLE LYMPHDRAINAGE IN MÖNCHENGLADBACH (/manuellelymphdrainage) — Seiten-CSS
   Datei:   ppw-manuellelymphdrainage.css       Version: 0.1.1
   System:  gebrückt auf ppw-base.css (globale --ppw-* Tokens, Hardcode-
            Fallbacks eingebaut, 0 sichtbare Änderung)
   Scope:   alles unter .lp-page gekapselt.

   CHANGELOG (neueste zuerst · historische Einträge NIE umschreiben)
   --------------------------------------------------------------------------
   0.1.1 · 2026-09-23
     - body-Regel ohne die Wrapper-Tokens: font-family und color nutzen jetzt
       direkte Werte (dieselben wie im .lp-page-Block). Die Tokens
       --font-family/--text/--bg sind nur im Seitenrahmen definiert, nicht am
       body — die Regel war dort ungueltig; ohne Seitenrahmen-Schrift erschien
       der Inhalt in der Serifen-Standardschrift des Browsers.
       Die Verlaufs-Zeile (background) ist ENTFALLEN statt repariert: sie war
       live nie wirksam (ungueltig), repariert haette sie erstmals einen
       Verlauf hinter die Seite gelegt — freigegeben war nur die Schrift
       (Gegenpruefung 24.09.). Die Hintergrundfarbe setzt weiter das Kit.
   0.1.0 · 2026-07-20
     - Erste versionierte Ablage, aus Live-Seite übernommen und bereinigt.
     - 2 Elementor-Rahmen-Regeln entfernt
     - :root-Tokenblock auf .lp-page umgehängt (Token-Kapselung)
     - Globale *box-sizing-Regel auf .lp-page gescoped
     - --shadow Wert weicht ab (0 12px 28px rgba(7,24,28,.12)), nicht gebrückt
     - Token-Bruecken: --font-family, --surface, --primary, --primary-hover, --heading-main
     - Manrope-Referenzen aus font-family entfernt

   ARBEITSREGELN (wie üblich)
     - KEINE Textänderung. Nur Präsentation/CSS.
     - Farben/Radien/Schatten über Tokens statt Hardcodes.
     - Klassennamen NICHT umbenennen (JS-Hooks).
     - Jede Änderung: Version hochziehen + hier loggen.
   ============================================================================= */

.lp-page *,.lp-page *:before,.lp-page *:after {
  box-sizing:border-box
}

.lp-page {
  --font-family: var(--ppw-font, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif);
  --bg:#edf4f6;
  --surface: var(--ppw-surface, #ffffff);
  --surface-soft:#f5f9fa;
  --card:#fff;
  --text:#0f2128;
  --muted:#2e4750;
  --primary: var(--ppw-brand, #0f5c63);
  --primary-hover: var(--ppw-brand-hover, #0b494f);
  --accent:#a01853;
  --border:#c1d6d9;
  --shadow:0 12px 28px rgba(7,24,28,.12);
  --radius:14px;
  --ui-radius-pill:10px;
  --heading-main: var(--ppw-heading, #0c2731);
  --heading-sub:#123c46;
  --heading-accent:#0f5c63
}

html {
  scroll-behavior:smooth
}

body {
  margin:0;
  font-family:var(--ppw-font, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif);
  color:#0f2128
}

a.cta-button,a.cta-button:visited,a.lp-btn,a.lp-btn:visited {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:10px 16px;
  border-radius:var(--ui-radius-pill);
  border:1px solid transparent;
  text-decoration:none !important;
  font-size:1rem;
  font-weight:700;
  color:#fff !important;
  background:linear-gradient(135deg,var(--primary),#2f7880);
  box-shadow:0 8px 18px rgba(15,91,99,.24);
  transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease
}

a.cta-button:hover,a.lp-btn:hover,a.cta-button:focus-visible,a.lp-btn:focus-visible {
  color:#fff !important;
  background:linear-gradient(135deg,var(--primary-hover),#256b72);
  transform:translateY(-1px);
  box-shadow:0 10px 22px rgba(15,91,99,.3)
}

a.cta-button--ghost,a.cta-button--ghost:visited,a.lp-btn--ghost,a.lp-btn--ghost:visited {
  background:#fff;
  color:#103a43 !important;
  border:1px solid #8fb5ba
}

a.cta-button--ghost:hover,a.lp-btn--ghost:hover {
  background:#e6f1f3;
  border-color:#6e9ea5
}

.location-box,.cta-box-bottom,.lp-panel,.lp-card {
  background:var(--surface);
  border:1px solid var(--border);
  border-radius:var(--radius);
  box-shadow:var(--shadow);
  padding:20px
}

h2.location-title,.lp-section-head h2,.lp-bottom h2 {
  margin:0 0 18px;
  font-size:clamp(1.5rem,1.4vw + .9rem,2.1rem);
  line-height:1.18;
  letter-spacing:-.015em;
  font-weight:820;
  color:var(--heading-main);
  position:relative;
  display:inline-block;
  padding-bottom:6px
}

h2.location-title:after,.lp-section-head h2:after,.lp-bottom h2:after {
  content:"";
  position:absolute;
  left:0;
  bottom:0;
  width:86%;
  height:4px;
  border-radius:999px;
  background:linear-gradient(90deg,var(--heading-accent),#4f8b92 60%,transparent)
}

.lp-page {
  font-family:var(--font-family);
  color:var(--text);
  padding:28px 14px 44px
}

.lp-page .container {
  max-width:1240px;
  margin:0 auto
}

.lp-hero,.lp-bottom {
  text-align:center;
  padding:30px 24px
}

.lp-hero h1 {
  margin:0 0 16px;
  font-size:clamp(1.9rem,2.2vw + 1rem,2.8rem);
  line-height:1.15;
  color:var(--heading-main)
}

.lp-hero p {
  margin:0 auto;
  max-width:920px;
  color:var(--muted);
  line-height:1.75;
  font-size:1.08rem
}

.highlight-text {
  color:var(--accent);
  font-weight:800
}

.lp-actions {
  margin-top:22px;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px
}

.lp-actions-bottom {
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin-bottom:14px
}

.lp-section {
  margin-top:56px
}

.lp-section-head {
  margin:0 auto 24px;
  max-width:900px;
  text-align:center
}

.lp-section-head p {
  margin:0;
  color:var(--muted);
  font-size:1.06rem;
  line-height:1.76
}

.lp-grid {
  display:grid;
  gap:20px
}

.lp-grid-3 {
  grid-template-columns:repeat(3,minmax(0,1fr))
}

.lp-grid-2 {
  grid-template-columns:repeat(2,minmax(0,1fr))
}

.lp-card {
  padding:24px 20px;
  border-left:4px solid #7faeb3;
  transition:transform .24s ease,box-shadow .24s ease
}

.lp-card:hover {
  transform:translateY(-4px);
  box-shadow:0 18px 32px rgba(7,24,28,.15)
}

.lp-card h3 {
  margin:0 0 12px;
  color:var(--heading-sub);
  font-size:1.2rem;
  font-weight:800
}

.lp-card p {
  margin:0;
  color:#1f3942;
  font-size:1.02rem;
  line-height:1.72
}

.lp-card-highlight {
  border-left-color:var(--accent);
  background:linear-gradient(180deg,#fff,#fff6fa)
}

.lp-linkbox {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-top:16px;
  padding:9px 12px;
  border-radius:10px;
  border:1px solid #9fc2c6;
  background:#e9f4f5;
  color:#0f4550;
  text-decoration:none;
  font-weight:800;
  transition:.2s ease
}

.lp-linkbox:hover {
  background:#dff0f2;
  transform:translateY(-1px)
}

.lp-bottom {
  margin-top:60px
}

@media (max-width:1180px) {
  .lp-actions-bottom {
    grid-template-columns:repeat(2,1fr)
  }

}

@media (max-width:1024px) {
  .lp-grid-3 {
    grid-template-columns:repeat(2,1fr)
  }

  .lp-actions {
    grid-template-columns:1fr
  }

}

@media (max-width:760px) {
  .lp-grid-3,.lp-grid-2,.lp-actions-bottom {
    grid-template-columns:1fr
  }

  .lp-panel {
    padding:22px 16px
  }

  .lp-card {
    padding:18px 16px
  }

  .lp-section {
    margin-top:40px
  }

  .lp-actions .lp-btn {
    width:100%
  }

}

@media (prefers-reduced-motion:reduce) {
  .lp-card,.lp-linkbox,a.cta-button,a.lp-btn {
    transition:none !important
  }

}
