.elementor-kit-6{--e-global-color-primary:#477F80;--e-global-color-secondary:#2C5456;--e-global-color-text:#3E4551;--e-global-color-accent:#649B9B;--e-global-color-8168571d:#39696B;--e-global-color-5c826235:#E6F0EF;--e-global-color-9730f872:#F2F8F7;--e-global-color-a0a3c21b:#DCEDEA;--e-global-color-29513063:#FAF7F2;--e-global-color-a07de015:#6B7280;--e-global-color-567e7b29:#E2E4E8;--e-global-color-16333306:#FFFFFF;--e-global-color-9de1c5da:#568F90;--e-global-color-9ff0b9d6:#7B4FA8;--e-global-color-3b18a4d9:#5E7F63;--e-global-color-fd2852cd:#C9A177;--e-global-color-7edbed95:#F4EDE3;--e-global-color-20a129ee:#E6DED2;--e-global-typography-primary-font-family:"Cormorant Garamond";--e-global-typography-primary-font-size:56px;--e-global-typography-primary-font-weight:600;--e-global-typography-primary-line-height:1.08em;--e-global-typography-primary-letter-spacing:-0.02em;--e-global-typography-secondary-font-family:"Cormorant Garamond";--e-global-typography-secondary-font-size:44px;--e-global-typography-secondary-font-weight:600;--e-global-typography-secondary-line-height:1.2em;--e-global-typography-secondary-letter-spacing:-0.01em;--e-global-typography-text-font-family:"Jost";--e-global-typography-text-font-size:16px;--e-global-typography-text-font-weight:300;--e-global-typography-text-line-height:1.65em;--e-global-typography-accent-font-family:"Jost";--e-global-typography-accent-font-size:12px;--e-global-typography-accent-font-weight:500;--e-global-typography-accent-text-transform:uppercase;--e-global-typography-accent-line-height:1.45em;--e-global-typography-accent-letter-spacing:0.22em;--e-global-typography-822866bf-font-family:"Cormorant Garamond";--e-global-typography-822866bf-font-size:68px;--e-global-typography-822866bf-font-weight:600;--e-global-typography-822866bf-line-height:1.08em;--e-global-typography-822866bf-letter-spacing:-0.02em;--e-global-typography-fb13aec4-font-family:"Jost";--e-global-typography-fb13aec4-font-size:21px;--e-global-typography-fb13aec4-font-weight:600;--e-global-typography-fb13aec4-line-height:1.2em;--e-global-typography-ddff1657-font-family:"Jost";--e-global-typography-ddff1657-font-size:17px;--e-global-typography-ddff1657-font-weight:600;--e-global-typography-ddff1657-line-height:1.2em;--e-global-typography-b3798b70-font-family:"Jost";--e-global-typography-b3798b70-font-size:14px;--e-global-typography-b3798b70-font-weight:300;--e-global-typography-b3798b70-line-height:1.65em;--e-global-typography-95746c5a-font-family:"Jost";--e-global-typography-95746c5a-font-size:14px;--e-global-typography-95746c5a-font-weight:500;--e-global-typography-95746c5a-text-transform:uppercase;--e-global-typography-95746c5a-line-height:1.2em;--e-global-typography-95746c5a-letter-spacing:0.14em;--e-global-typography-60d5959c-font-family:"Cormorant Garamond";--e-global-typography-60d5959c-font-size:24px;--e-global-typography-60d5959c-font-weight:300;--e-global-typography-60d5959c-font-style:italic;--e-global-typography-60d5959c-line-height:1.65em;--e-global-typography-1f50486b-font-family:"Jost";--e-global-typography-1f50486b-font-size:14px;--e-global-typography-1f50486b-font-weight:500;--e-global-typography-1f50486b-line-height:1.45em;color:#3E4551;font-family:"Jost", Sans-serif;font-size:16px;font-weight:300;line-height:1.65em;}.elementor-kit-6 button,.elementor-kit-6 input[type="button"],.elementor-kit-6 input[type="submit"],.elementor-kit-6 .elementor-button{background-color:#477F80;font-family:"Jost", Sans-serif;font-size:14px;font-weight:500;text-transform:uppercase;letter-spacing:0.14em;color:#FFFFFF;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-kit-6 a{color:#477F80;}.elementor-kit-6 a:hover{color:#39696B;}.elementor-kit-6 h1{color:#3E4551;font-family:"Cormorant Garamond", Sans-serif;font-size:56px;font-weight:600;line-height:1.08em;letter-spacing:-0.02em;}.elementor-kit-6 h2{color:#3E4551;font-family:"Cormorant Garamond", Sans-serif;font-size:44px;font-weight:600;line-height:1.2em;}.elementor-kit-6 h3{color:#3E4551;font-family:"Jost", Sans-serif;font-size:21px;font-weight:600;line-height:1.2em;}.elementor-kit-6 h4{color:#3E4551;font-family:"Jost", Sans-serif;font-size:17px;font-weight:600;line-height:1.2em;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1200px;}.e-con{--container-max-width:1200px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS */@media (max-width:1024px){
body:has(.elementor-menu-toggle.elementor-active){overflow:hidden !important;touch-action:none}
.elementor-element-menue-extras{display:none !important}
.elementor-element-61a6d58:has(.elementor-menu-toggle.elementor-active) .elementor-element-menue-extras{display:flex !important;position:fixed;left:0;right:0;bottom:0;z-index:9999;background:#3D7173;padding:26px 24px 34px;border-top:1px solid rgba(255,255,255,.18);animation:bmFadeIn .28s cubic-bezier(.22,.61,.36,1) both}
}
/* bodymind Kursbausteine */
.bm-meta{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.bm-meta li{font-family:Jost,Helvetica Neue,Arial,sans-serif;font-weight:500;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#2C5456;background:#E6F0EF;border-radius:999px;padding:7px 15px}
.bm-termine{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.bm-termin{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 18px;background:#FFFFFF;border:1px solid #E6DED2;border-radius:16px;padding:20px 26px}
.bm-termin-tag{font-family:Jost,Helvetica Neue,Arial,sans-serif;font-weight:500;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#477F80;min-width:104px}
.bm-termin-zeit{font-family:Cormorant Garamond,Georgia,serif;font-weight:600;font-size:28px;line-height:1.1;color:#2A2F38;min-width:112px}
.bm-termin-meta{font-family:Jost,Helvetica Neue,Arial,sans-serif;font-weight:300;font-size:15px;color:#6B7280}
.bm-termin-hinweis{flex-basis:100%;font-family:Jost,Helvetica Neue,Arial,sans-serif;font-weight:300;font-size:14px;color:#6B7280}
.bm-termine-leer{font-family:Jost,Helvetica Neue,Arial,sans-serif;font-weight:300;color:#6B7280}
.bm-preis-betrag{font-family:Cormorant Garamond,Georgia,serif;font-weight:600;font-size:44px;line-height:1.1;color:#2A2F38;margin:0 0 10px}
.bm-preis-einheit{font-family:Jost,Helvetica Neue,Arial,sans-serif;font-weight:300;font-size:16px;color:#6B7280}
.bm-preis-hinweis{font-family:Jost,Helvetica Neue,Arial,sans-serif;font-weight:300;font-size:15px;line-height:1.65;color:#3E4551;margin:0 0 10px;max-width:52ch}
.bm-kasse{background:#FFFFFF;border:1px solid #E6DED2;border-radius:16px;padding:28px 30px}
.bm-kasse-label{font-family:Jost,Helvetica Neue,Arial,sans-serif;font-weight:500;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#477F80;margin:0 0 12px}
.bm-kasse p{font-family:Jost,Helvetica Neue,Arial,sans-serif;font-weight:300;font-size:15px;line-height:1.65;color:#3E4551;margin:0}
.bm-leitung{display:flex;flex-wrap:wrap;gap:24px}
.bm-leitung-person{flex:1 1 260px;border:1px solid #E2E4E8;border-radius:16px;padding:26px 28px}
.bm-leitung-name{font-family:Cormorant Garamond,Georgia,serif;font-weight:600;font-size:29px;line-height:1.2;color:#2A2F38;margin:0 0 6px}
.bm-leitung-qual{font-family:Jost,Helvetica Neue,Arial,sans-serif;font-weight:500;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#6B7280;margin:0 0 10px}
.bm-leitung-person p{font-family:Jost,Helvetica Neue,Arial,sans-serif;font-weight:300;font-size:15px;line-height:1.65;color:#3E4551;margin:0}
@media (max-width:767px){.bm-termin{padding:18px 20px}.bm-termin-zeit{font-size:24px}.bm-preis-betrag{font-size:35px}}

.elementor-element-kurs-bild img{width:100%;height:520px;object-fit:cover;display:block}
@media (max-width:1024px){.elementor-element-kurs-bild img{height:420px}}
@media (max-width:767px){.elementor-element-kurs-bild img{height:340px}}
/* bodymind Kursseite */
.elementor-element-kurs-preis-kopf .bm-preis-betrag{font-size:34px;margin:0}
.btn-kurszeiten .elementor-button{display:inline-flex;align-items:center;gap:10px}
.btn-kurszeiten .elementor-button-text::after{content:'';display:inline-block;width:7px;height:7px;margin-left:10px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .2s ease}
.btn-kurszeiten .elementor-button:hover .elementor-button-text::after{transform:translateY(1px) rotate(45deg)}
.bm-zurueck{display:inline-flex;align-items:center;gap:10px;font-family:Jost,Helvetica Neue,Arial,sans-serif;font-weight:500;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:#477F80;text-decoration:none;margin-top:26px}
.bm-zurueck:hover{color:#39696B}
.bm-pfeil-links{display:inline-block;width:7px;height:7px;border-left:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateX(0) rotate(45deg);transition:transform .2s ease}
.bm-zurueck:hover .bm-pfeil-links{transform:translateX(-3px) rotate(45deg)}
.elementor-element-kurs-kasse-block{margin-top:56px}
.bm-faq{border-top:1px solid #E6DED2;max-width:860px}
.bm-faq-item{border-bottom:1px solid #E6DED2}
.bm-faq-frage{list-style:none;cursor:pointer;padding:22px 44px 22px 0;position:relative;font-family:Jost,Helvetica Neue,Arial,sans-serif;font-weight:400;font-size:18px;line-height:1.45;color:#2A2F38}
.bm-faq-frage::-webkit-details-marker{display:none}
.bm-faq-frage::after{content:'';position:absolute;right:8px;top:28px;width:8px;height:8px;border-right:1.5px solid #477F80;border-bottom:1.5px solid #477F80;transform:rotate(45deg);transition:transform .2s ease}
.bm-faq-item[open] .bm-faq-frage::after{transform:rotate(-135deg);top:32px}
.bm-faq-antwort{padding:0 44px 24px 0}
.bm-faq-antwort p{font-family:Jost,Helvetica Neue,Arial,sans-serif;font-weight:300;font-size:16px;line-height:1.65;color:#3E4551;margin:0 0 12px;max-width:62ch}
.bm-faq-antwort p:last-child{margin-bottom:0}
@media (max-width:767px){.bm-faq-frage{font-size:17px;padding-right:36px}.elementor-element-kurs-preis-kopf .bm-preis-betrag{font-size:33px}.elementor-element-kurs-kasse-block{margin-top:40px}}

#kurszeiten{scroll-margin-top:110px}

.bm-preis-alternativ{font-family:Jost,Helvetica Neue,Arial,sans-serif;font-weight:300;font-size:15px;line-height:1.55;color:#6B7280;margin:8px 0 0;max-width:46ch}

.bm-fakten{margin:0;max-width:860px;border-top:1px solid #E2E4E8}
.bm-fakten>div{display:grid;grid-template-columns:170px 1fr;gap:24px;padding:18px 0;border-bottom:1px solid #E2E4E8}
.bm-fakten dt{font-family:Jost,Helvetica Neue,Arial,sans-serif;font-weight:500;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#477F80;padding-top:3px}
.bm-fakten dd{margin:0;font-family:Jost,Helvetica Neue,Arial,sans-serif;font-weight:300;font-size:16px;line-height:1.6;color:#3E4551}
@media (max-width:767px){.bm-fakten>div{grid-template-columns:1fr;gap:6px}}
/* Galerie */
.elementor-element-studio-galerie-grid .elementor-image-gallery .gallery{display:grid !important;grid-template-columns:repeat(3,1fr) !important;gap:16px !important;margin:0 !important}
.elementor-element-studio-galerie-grid .elementor-image-gallery .gallery-item{width:100% !important;max-width:100% !important;margin:0 !important;float:none !important;display:block !important;padding:0 !important}
.elementor-element-studio-galerie-grid .elementor-image-gallery .gallery-icon{display:block !important;width:100% !important;overflow:hidden;border-radius:8px;line-height:0;margin:0 !important}
.elementor-element-studio-galerie-grid .elementor-image-gallery .gallery-item img{width:100% !important;max-width:100% !important;height:auto !important;aspect-ratio:4/3;object-fit:cover;display:block !important;border:0 !important;padding:0 !important;transition:transform .35s cubic-bezier(.22,.61,.36,1)}
.elementor-element-studio-galerie-grid .elementor-image-gallery .gallery-item:hover img{transform:scale(1.04)}
.elementor-element-studio-galerie-grid .gallery-caption{display:none}
@media (max-width:1024px){.elementor-element-studio-galerie-grid .elementor-image-gallery .gallery{grid-template-columns:repeat(2,1fr) !important}}
@media (max-width:767px){.elementor-element-studio-galerie-grid .elementor-image-gallery .gallery{grid-template-columns:repeat(2,1fr) !important;gap:10px !important}}
/* Startseite */
.bm-bereiche{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}
.bm-bereich{border:1px solid #E2E4E8;border-radius:16px;padding:30px 32px;transition:transform .25s ease,box-shadow .25s ease}
.bm-bereich:hover{transform:translateY(-2px);box-shadow:0 10px 30px rgba(44,84,86,.08)}
.bm-bereiche .bm-bereich-titel{font-family:Cormorant Garamond,Georgia,serif;font-weight:600;font-size:30px;line-height:1.2;color:#2A2F38;margin:0 0 10px}
.bm-bereiche .bm-bereich-text{font-family:Jost,Helvetica Neue,Arial,sans-serif;font-weight:300;font-size:16px;line-height:1.6;color:#3E4551;margin:0 0 18px}
.bm-bereiche .bm-bereich-links{margin:0;display:flex;flex-wrap:wrap;gap:8px}
.bm-bereiche .bm-bereich-links a{display:inline-flex;align-items:center;min-height:38px;box-sizing:border-box;padding:9px 16px;background:#FFFFFF;border:1px solid var(--fam-rand,#E2E4E8);border-radius:999px;font-family:Jost,Helvetica Neue,Arial,sans-serif;font-weight:500;font-size:14px;line-height:1.25;color:var(--fam-text,#477F80);text-decoration:none;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}
.bm-bereiche .bm-bereich-links a:hover{border-color:var(--fam-voll,#477F80);box-shadow:0 3px 10px rgba(44,84,86,.1);transform:translateY(-1px)}
.bm-bereiche .bm-bereich-links a:focus-visible{outline:2px solid #649B9B;outline-offset:2px}
@media (max-width:1024px){}
@media (max-width:767px){.bm-bereiche{grid-template-columns:1fr;gap:16px}.bm-bereich{padding:26px 20px}}
/* Schritte */
.bm-schritte{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:28px;align-items:stretch}
.bm-schritte li{display:flex;flex-direction:column;align-items:center;text-align:center;background:#FAF7F2;border:1px solid #DCEDEA;border-radius:180px 180px 8px 8px;padding:56px 34px 40px}
.bm-schritt-nr{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:999px;background:#E6F0EF;color:#2C5456;font-family:Jost,Helvetica Neue,Arial,sans-serif;font-weight:500;font-size:15px;margin:0 auto 20px}
.bm-schritt-titel{display:block;font-family:Cormorant Garamond,Georgia,serif;font-weight:600;font-size:27px;line-height:1.25;color:#2A2F38;margin-bottom:12px;max-width:17ch}
.bm-schritt-text{display:block;font-family:Jost,Helvetica Neue,Arial,sans-serif;font-weight:300;font-size:15px;line-height:1.65;color:#3E4551;max-width:34ch}
.bm-anruf{margin:0;font-family:Jost,Helvetica Neue,Arial,sans-serif;font-weight:300;font-size:16px;line-height:1.5;color:#6B7280}
.bm-anruf a{color:#477F80;text-decoration:none;border-bottom:1px solid rgba(71,127,128,.35);white-space:nowrap}
.bm-anruf a:hover{color:#2C5456;border-bottom-color:#2C5456}
@media (max-width:1024px){.bm-schritte{grid-template-columns:1fr;gap:16px}.bm-schritte li{border-radius:140px 140px 8px 8px;padding:44px 30px 34px}}
@media (max-width:767px){.bm-schritte li{border-radius:120px 120px 8px 8px;padding:38px 20px 30px}.bm-schritt-titel{font-size:24px}}
/* Familienfarben */
.bm-bereich--yoga{background:#EBF2F2;border-color:#568F90;--fam-voll:#568F90;--fam-rand:#ABC7C8;--fam-text:#457273}
.bm-bereich--ruecken{background:#ECF0EC;border-color:#5E7F63;--fam-voll:#5E7F63;--fam-rand:#AFBFB1;--fam-text:#4B664F}
.bm-bereich--schwangerschaft-baby{background:#F9F4EF;border-color:#C9A177;--fam-voll:#C9A177;--fam-rand:#E4D0BB;--fam-text:#856A4C}
.bm-bereich--senioren{background:#EEF1F3;border-color:#6E8899;--fam-voll:#6E8899;--fam-rand:#B7C4CC;--fam-text:#586D7A}
/* Kursfamilien auf Uebersicht und Einzelseite */
.bm-fam{display:none}
.elementor-element-karte-fam{display:none}
.elementor-element-kurs-fam{display:none}
.elementor-element-karte{border-top-width:4px !important}
.elementor-element-karte:has(.bm-fam--yoga){border-top-color:#568F90 !important}
.elementor-element-karte:has(.bm-fam--ruecken){border-top-color:#5E7F63 !important}
.elementor-element-karte:has(.bm-fam--schwangerschaft-baby){border-top-color:#C9A177 !important}
.elementor-element-karte:has(.bm-fam--senioren){border-top-color:#6E8899 !important}
/* Aktuelles */
.bm-aktuelles{display:grid;grid-template-columns:repeat(2,1fr);gap:24px;align-items:stretch}
.bm-neu{background:#FFFFFF;border:1px solid #E2E4E8;border-radius:16px;padding:30px 32px}
.bm-neu-meta{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:0 0 12px;font-family:Jost,Helvetica Neue,Arial,sans-serif;font-weight:500;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#6B7280}
.bm-neu-label{background:#E6F0EF;color:#2C5456;border-radius:999px;padding:5px 12px;letter-spacing:.12em}
.bm-aktuelles .bm-neu-titel{font-family:Cormorant Garamond,Georgia,serif;font-weight:600;font-size:29px;line-height:1.2;color:#2A2F38;margin:0 0 12px}
.bm-neu-text p{font-family:Jost,Helvetica Neue,Arial,sans-serif;font-weight:300;font-size:16px;line-height:1.65;color:#3E4551;margin:0 0 12px;max-width:58ch}
.bm-neu-text p:last-child{margin-bottom:0}
@media (max-width:767px){.bm-aktuelles{grid-template-columns:1fr;gap:16px}.bm-neu{padding:26px 20px}.bm-aktuelles .bm-neu-titel{font-size:25px}}
/* FAQ Startseite */
.elementor-element-start-faq-kopf,
.elementor-element-start-faq-liste .bm-faq,
.elementor-element-start-faq-cta{width:860px;max-width:100%;margin-left:auto;margin-right:auto}
@media (max-width:1024px){.elementor-element-start-faq-kopf,.elementor-element-start-faq-liste .bm-faq,.elementor-element-start-faq-cta{width:100%}}
/* Zentrierte Inhaltsbloecke */
.elementor-element-kurs-termine > .e-con-inner > .elementor-widget,
.elementor-element-kurs-faq > .e-con-inner > .elementor-widget,
.elementor-element-kurs-inhalt > .e-con-inner > .elementor-widget,
.elementor-element-kurs-cta > .e-con-inner > .elementor-widget,
.elementor-element-studio-galerie > .e-con-inner > .elementor-widget,
.elementor-element-studio-wissen > .e-con-inner > .elementor-widget,
.elementor-element-studio-kopf > .e-con-inner > .elementor-widget,
.elementor-element-studio-cta > .e-con-inner > .elementor-widget,
.elementor-element-kurse-intro > .e-con-inner > .elementor-widget,
.elementor-element-start-kurse > .e-con-inner > .elementor-widget,
.elementor-element-start-aktuelles > .e-con-inner > .elementor-widget,
.elementor-element-start-probe > .e-con-inner > .elementor-widget,
.elementor-element-start-faq > .e-con-inner > .elementor-widget,
.elementor-element-start-cta > .e-con-inner > .elementor-widget{width:100%}
.elementor-element-kurs-termine .bm-termine,
.elementor-element-kurs-faq .bm-faq{max-width:860px;margin-left:auto;margin-right:auto}
.elementor-element-kurs-kasse-block .bm-kasse{max-width:860px;margin-left:auto;margin-right:auto}
.elementor-element.elementor-element-kurs-termine-hinweis{max-width:860px !important;margin-left:auto;margin-right:auto}
.bm-fakten{margin-left:auto;margin-right:auto}

/* Hero-Varianten (temporaer) */
.bm-variante{max-width:860px;margin:0 auto;text-align:center;font-family:Jost,Helvetica Neue,Arial,sans-serif}
.bm-variante-titel{margin:0 0 6px;font-weight:500;font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:#2C5456}
.bm-variante-text{margin:0 0 14px;font-weight:300;font-size:15px;line-height:1.6;color:#3E4551}
.bm-variante-nav{margin:0;display:flex;flex-wrap:wrap;gap:8px 20px;justify-content:center;font-size:14px}
.bm-variante-nav a{color:#477F80;text-decoration:none;border-bottom:1px solid rgba(71,127,128,.35)}
.bm-variante-nav a:hover{color:#2C5456;border-bottom-color:#2C5456}
.bm-variante-nav strong{color:#2A2F38;font-weight:500}

/* A: Header nimmt den Grundton auf */
body.page-id-363 .elementor-location-header .e-con,
body.page-id-363 .elementor-location-header .e-con-inner,
body.page-id-363 .elementor-location-header{background-color:#FAF7F2 !important;border-bottom:0 !important;box-shadow:none !important}

/* B: Textspalte an die Containerkante, Bildspalte bis zum Bildschirmrand */
@media (min-width:1025px){
  body.page-id-364 .elementor-element-effad7f-b > .e-con-inner{max-width:100%;padding-left:0;padding-right:0}
  body.page-id-364 .elementor-element-4241aec-b{padding-left:calc((100vw - 1200px)/2 + 24px)}
  body.page-id-364 .elementor-element-1b22ea4-b{padding:0}
}
@media (max-width:1024px){
  body.page-id-364 .elementor-element-effad7f-b{padding-left:24px;padding-right:24px}
}

/* Aktuelles: Kurzfassung am Handy
   Die globale Buttonformatierung des Kits greift ueber
   ".elementor-kit-6 button" und ist damit spezifischer als eine einzelne
   Klasse. Ohne das vorangestellte ".bm-neu" gewinnt sie, und aus dem
   Textlink wird eine gefuellte Schaltflaeche in Versalien. */
.bm-neu .bm-neu-mehr{display:none}
@media (max-width:767px){
  .bm-neu-text{max-height:106px;overflow:hidden;transition:max-height .3s cubic-bezier(.22,.61,.36,1)}
  .bm-neu.ist-offen .bm-neu-text{max-height:none}
  .bm-neu .bm-neu-mehr{display:inline-block;margin-top:14px;padding:0;background:none;background-color:transparent;border:0;border-radius:0;text-transform:none;border-bottom:1px solid rgba(71,127,128,.35);font-family:Jost,Helvetica Neue,Arial,sans-serif;font-weight:500;font-size:14px;letter-spacing:.04em;color:#477F80;cursor:pointer}
  .bm-neu .bm-neu-mehr:hover{color:#2C5456;border-bottom-color:#2C5456;background-color:transparent}
  .bm-neu .bm-neu-mehr:focus-visible{outline:2px solid #649B9B;outline-offset:3px}
}

/* Ueberschriften: Mobilwerte */
@media (max-width:767px){
  .bm-bereiche .bm-bereich-titel{font-size:26px}
  .bm-leitung-name{font-size:26px}
}


/* Wochenplan */
.bm-plan{--plan-farbe:#B9BEC7}

.bm-plan-steuerung{display:flex;flex-direction:column;gap:16px;padding-bottom:30px;border-bottom:1px solid #E2E4E8}
.bm-plan-gruppe{display:flex;flex-direction:column;align-items:stretch;gap:10px}
.bm-plan-label{font-family:Jost,Helvetica Neue,Arial,sans-serif;font-weight:500;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#477F80}
.bm-plan-tage{display:flex;flex-wrap:wrap;gap:8px}
.bm-plan-filter{display:flex;flex-wrap:wrap;gap:8px}
.bm-plan .bm-plan-chip{display:inline-flex;align-items:center;justify-content:center;min-height:40px;box-sizing:border-box;font-family:Jost,Helvetica Neue,Arial,sans-serif;font-weight:500;font-size:12px;line-height:1.25;letter-spacing:.1em;text-transform:uppercase;color:#477F80;background:#FFFFFF;border:1px solid #E2E4E8;border-radius:999px;padding:10px 18px;cursor:pointer;transition:background .2s ease,border-color .2s ease,color .2s ease}
.bm-plan .bm-plan-chip:hover{background:#E6F0EF;border-color:#DCEDEA;color:#2C5456}
.bm-plan .bm-plan-chip.ist-aktiv:hover{background:#DCEDEA;border-color:#477F80;color:#2C5456}
.bm-plan .bm-plan-chip.ist-aktiv{background:#DCEDEA;border-color:#649B9B;color:#2C5456}
.bm-plan .bm-plan-chip:focus-visible{outline:2px solid #649B9B;outline-offset:3px}

.bm-plan-tag{scroll-margin-top:124px;padding-top:44px}
.bm-plan-tag-kopf{display:flex;align-items:baseline;justify-content:space-between;gap:18px;padding-bottom:12px;border-bottom:1px solid #E6DED2;margin-bottom:16px}
.bm-plan .bm-plan-tag-titel{margin:0;font-family:Cormorant Garamond,Georgia,serif;font-weight:600;font-size:30px;line-height:1.2;color:#2A2F38}
.bm-plan-tag-anzahl{margin:0;font-family:Jost,Helvetica Neue,Arial,sans-serif;font-weight:500;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#6B7280;white-space:nowrap}

.bm-plan-liste{list-style:none;margin:0;padding:0;display:grid;gap:12px}
.bm-plan-termin{display:grid;grid-template-columns:132px 1fr 186px;gap:28px;align-items:start;background:#FFFFFF;border:1px solid #E2E4E8;border-left:4px solid var(--plan-farbe);border-radius:0 16px 16px 0;padding:26px 30px;transition:transform .25s ease,box-shadow .25s ease}
.bm-plan-termin:hover{transform:translateY(-2px);box-shadow:0 10px 30px rgba(62,69,81,.07)}
.bm-plan-termin--yoga{--plan-farbe:#568F90}
.bm-plan-termin--ruecken{--plan-farbe:#5E7F63}
.bm-plan-termin--schwangerschaft-baby{--plan-farbe:#C9A177}
.bm-plan-termin--senioren{--plan-farbe:#6E8899}

.bm-plan-zeit{margin:0}
.bm-plan-zeit-start{display:block;font-family:Cormorant Garamond,Georgia,serif;font-weight:600;font-size:30px;line-height:1.05;color:var(--plan-farbe)}
.bm-plan-zeit-ende{display:block;margin-top:4px;font-family:Jost,Helvetica Neue,Arial,sans-serif;font-weight:300;font-size:14px;line-height:1.4;color:#6B7280}

.bm-plan .bm-plan-kurs{margin:0 0 8px;font-family:Cormorant Garamond,Georgia,serif;font-weight:600;font-size:26px;line-height:1.2;color:#2A2F38}
.bm-plan .bm-plan-kurs a{color:inherit;text-decoration:none;transition:color .2s ease}
.bm-plan .bm-plan-kurs a:hover{color:var(--plan-farbe)}
.bm-plan-kurz{margin:0 0 10px;font-family:Jost,Helvetica Neue,Arial,sans-serif;font-weight:300;font-size:16px;line-height:1.6;color:#3E4551;max-width:56ch}
/* Weg zur Kursseite sichtbar machen. Gleiche Sprache wie der
   Weiterlesen-Link bei den Neuigkeiten, damit es zusammengehoert. */
.bm-plan .bm-plan-mehr-zeile{margin:12px 0 0}
.bm-plan a.bm-plan-mehr{display:inline-block;border-bottom:1px solid rgba(71,127,128,.35);font-family:Jost,Helvetica Neue,Arial,sans-serif;font-weight:500;font-size:14px;letter-spacing:.04em;color:#477F80;text-decoration:none;transition:color .2s ease,border-color .2s ease}
.bm-plan a.bm-plan-mehr:hover{color:#2C5456;border-bottom-color:#2C5456}
.bm-plan a.bm-plan-mehr:focus-visible{outline:2px solid #649B9B;outline-offset:3px}
.bm-plan-fakten{margin:0;display:flex;flex-wrap:wrap;font-family:Jost,Helvetica Neue,Arial,sans-serif;font-weight:300;font-size:14px;line-height:1.5;color:#6B7280}
.bm-plan-fakten span+span::before{content:'·';margin:0 9px;color:#C3C8D0}

.bm-plan-aktion{display:flex;flex-direction:column;align-items:flex-end;gap:14px}
.bm-plan-badge{margin:0;font-family:Jost,Helvetica Neue,Arial,sans-serif;font-weight:500;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#2C5456;background:#E6F0EF;border-radius:999px;padding:7px 15px;white-space:nowrap}
.bm-plan-anfrage{display:inline-flex;align-items:center;gap:9px;font-family:Jost,Helvetica Neue,Arial,sans-serif;font-weight:500;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#477F80;text-decoration:none;white-space:nowrap;transition:color .2s ease}
.bm-plan-anfrage::after{content:'';width:6px;height:6px;border-right:1.5px solid currentColor;border-top:1.5px solid currentColor;transform:rotate(45deg)}
.bm-plan-anfrage:hover{color:#2C5456}

.bm-plan-leer{margin:36px 0 0;font-family:Jost,Helvetica Neue,Arial,sans-serif;font-weight:300;font-size:16px;line-height:1.65;color:#6B7280;max-width:56ch}

@media (max-width:1024px){
  .bm-plan-termin{grid-template-columns:118px 1fr;gap:10px 22px;padding:24px 26px}
  .bm-plan-aktion{grid-column:1 / -1;flex-direction:row;align-items:center;justify-content:space-between;gap:16px;margin-top:6px;padding-top:16px;border-top:1px solid #EFF0F3}
}
@media (max-width:767px){
  .bm-plan-steuerung{gap:14px;padding-bottom:24px}
  .bm-plan-tag{scroll-margin-top:96px;padding-top:34px}
  .bm-plan .bm-plan-tag-titel{font-size:26px}
  .bm-plan-termin{grid-template-columns:1fr;gap:12px;padding:22px 20px}
  .bm-plan-zeit{display:flex;align-items:baseline;gap:10px}
  .bm-plan-zeit-start{font-size:26px}
  .bm-plan-zeit-ende{margin-top:0}
  .bm-plan .bm-plan-kurs{font-size:24px}
  .bm-plan-aktion{flex-wrap:wrap;gap:12px 16px}
}

/* Kontaktformular */
.elementor-element-kontakt-form .elementor-field-group{margin-bottom:0}
.elementor-element-kontakt-form .elementor-field-group > label.elementor-field-label{font-family:Jost,Helvetica Neue,Arial,sans-serif;font-weight:500;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#477F80;margin-bottom:8px}
.elementor-element-kontakt-form .elementor-field-group .elementor-field{font-family:Jost,Helvetica Neue,Arial,sans-serif;font-weight:300;font-size:16px;line-height:1.5;color:#3E4551;background:#FFFFFF;border:1px solid #E2E4E8;border-radius:999px;padding:14px 22px;box-shadow:none;transition:border-color .2s ease,box-shadow .2s ease}
.elementor-element-kontakt-form .elementor-field-group textarea.elementor-field{border-radius:16px;padding:16px 22px;resize:vertical}
.elementor-element-kontakt-form .elementor-field::placeholder{color:#A8AEB8}
.elementor-element-kontakt-form .elementor-field:focus{outline:none;border-color:#649B9B;box-shadow:0 0 0 3px rgba(100,155,155,.22)}

/* Einwilligung */
.elementor-element-kontakt-form .elementor-field-type-acceptance{margin-top:6px}
.elementor-element-kontakt-form .elementor-field-option{display:flex;align-items:flex-start;gap:12px}
.elementor-element-kontakt-form .elementor-field-option input[type=checkbox]{flex:0 0 auto;width:20px;height:20px;margin:1px 0 0;accent-color:#477F80;border-radius:4px}
.elementor-element-kontakt-form .elementor-field-option label{font-family:Jost,Helvetica Neue,Arial,sans-serif;font-weight:300;font-size:14px;line-height:1.55;color:#6B7280}
.elementor-element-kontakt-form .elementor-field-option label a{color:#477F80;text-decoration:none;border-bottom:1px solid rgba(71,127,128,.35)}
.elementor-element-kontakt-form .elementor-field-option label a:hover{color:#2C5456;border-bottom-color:#2C5456}

/* Knopf */
.elementor-element-kontakt-form button.elementor-button{font-family:Jost,Helvetica Neue,Arial,sans-serif;font-weight:500;font-size:14px;letter-spacing:.14em;text-transform:uppercase;background:#477F80;color:#FFFFFF;border:0;border-radius:999px;padding:17px 34px;transition:background .2s ease,transform .15s ease}
.elementor-element-kontakt-form button.elementor-button:hover{background:#39696B;color:#FFFFFF}
.elementor-element-kontakt-form .elementor-button:active{transform:scale(.975)}
.elementor-element-kontakt-form .elementor-form-fields-wrapper{row-gap:18px}

/* Rueckmeldungen */
.elementor-element-kontakt-form .elementor-message{font-family:Jost,Helvetica Neue,Arial,sans-serif;font-weight:300;font-size:15px;line-height:1.6;margin-top:14px}
.elementor-element-kontakt-form .elementor-message.elementor-message-success{color:#2C5456;background:#E6F0EF;border-radius:16px;padding:18px 22px}
.elementor-element-kontakt-form .elementor-message.elementor-message-danger{color:#8A4A42;background:#F7ECEA;border-radius:16px;padding:18px 22px}
.elementor-element-kontakt-form .elementor-field-group.elementor-error .elementor-field{border-color:#C98B82}

/* Kontaktdaten rechts */
/* Die Trennlinien standen ungleich zum Text: ueber dem ersten
   Label nur 9 px, ueber allen weiteren 24 px, unter den Werten
   18 px. Ursache waren die abgeschaltete obere Polsterung der
   ersten Gruppe und die sehr grosse Zeilenhoehe der Labels.
   Die Labelzeile sitzt jetzt eng an ihrem Text, die Polsterung
   gilt fuer alle Gruppen gleich. Die Werte 22/18 sind nicht
   symmetrisch, ergeben sichtbar aber oben wie unten 20 px,
   weil Label und Wert unterschiedliche Zeilenhoehen haben. */
.elementor-element-kontakt-info .bm-fakten dt{padding-top:0;line-height:1.3}
.elementor-element-kontakt-info .bm-fakten>div,
.elementor-element-kontakt-info .bm-fakten>div:first-child{grid-template-columns:1fr;gap:9px;padding:22px 0 18px}
.elementor-element-kontakt-info .bm-fakten a{color:#477F80;text-decoration:none;border-bottom:1px solid rgba(71,127,128,.3)}
.elementor-element-kontakt-info .bm-fakten a:hover{color:#2C5456;border-bottom-color:#2C5456}

@media (max-width:1024px){
  .elementor-element-kontakt-row{flex-direction:column}
}

/* Fragen und Antworten */
.bm-fragen{display:flex;flex-direction:column}
.bm-fragen-nav{display:flex;flex-direction:column;align-items:stretch;gap:10px}
.bm-fragen .bm-fragen-label{font-family:Jost,Helvetica Neue,Arial,sans-serif;font-weight:500;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:#477F80}
.bm-fragen-chips{display:flex;flex-wrap:wrap;gap:8px}
.bm-fragen a.bm-fragen-chip{display:inline-flex;align-items:center;justify-content:center;min-height:40px;box-sizing:border-box;font-family:Jost,Helvetica Neue,Arial,sans-serif;font-weight:500;font-size:12px;line-height:1.25;letter-spacing:.1em;text-transform:uppercase;color:#477F80;background:#FFFFFF;border:1px solid #E2E4E8;border-radius:999px;padding:10px 18px;text-decoration:none;transition:background .2s ease,border-color .2s ease,color .2s ease}
.bm-fragen a.bm-fragen-chip:hover,.bm-fragen a.bm-fragen-chip:focus-visible{background:#E6F0EF;border-color:#DCEDEA;color:#2C5456}
.bm-fragen-gruppe{scroll-margin-top:124px;padding-top:48px}
.bm-fragen-kopf{display:flex;align-items:baseline;justify-content:space-between;gap:20px;padding-bottom:8px;border-bottom:3px solid #5A9590}
.bm-fragen .bm-fragen-titel{margin:0;font-family:Cormorant Garamond,Georgia,serif;font-weight:600;font-size:30px;line-height:1.2;color:#2A2F38}
.bm-fragen .bm-fragen-anzahl{flex:0 0 auto;font-family:Jost,Helvetica Neue,Arial,sans-serif;font-weight:500;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:#9AA1AC}
.bm-fragen .bm-faq{margin-top:4px}
.bm-faq-antwort .bm-zert{margin:12px 0 0;padding-left:20px}
.bm-faq-antwort .bm-zert li{margin:0 0 4px}
@media (max-width:1024px){
.bm-fragen-gruppe{padding-top:40px}
}
@media (max-width:767px){
.bm-fragen-gruppe{scroll-margin-top:96px;padding-top:34px}
.bm-fragen .bm-fragen-titel{font-size:24px}
.bm-fragen .bm-fragen-anzahl{display:none}
.bm-fragen a.bm-fragen-chip{font-size:11px;letter-spacing:.08em;padding:9px 15px;min-height:36px}
}

/* Fehlerseite */
.bm-wege{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.bm-wege a.bm-weg{display:flex;flex-direction:column;gap:7px;box-sizing:border-box;background:#FFFFFF;border:1px solid #E2E4E8;border-radius:16px;padding:24px 26px;text-decoration:none;transition:border-color .2s ease,background .2s ease}
.bm-wege a.bm-weg:hover,.bm-wege a.bm-weg:focus-visible{background:#FAFBFC;border-color:#649B9B}
.bm-wege .bm-weg-titel{font-family:Cormorant Garamond,Georgia,serif;font-weight:600;font-size:23px;line-height:1.25;color:#2A2F38}
.bm-wege a.bm-weg:hover .bm-weg-titel{color:#2C5456}
.bm-wege .bm-weg-text{font-family:Jost,Helvetica Neue,Arial,sans-serif;font-weight:300;font-size:15px;line-height:1.6;color:#6B7280}
@media (max-width:767px){
.bm-wege{grid-template-columns:1fr;gap:12px}
.bm-wege a.bm-weg{padding:20px 22px}
.bm-wege .bm-weg-titel{font-size:21px}
}

/* Bildmarke als Hintergrundmotiv */
.bm-schmuck{position:relative;overflow:hidden;--schmuck-groesse:300px;--schmuck-farbe:rgba(186,160,124,.15);--schmuck-ueberstand:-0.2}
.bm-schmuck > *{position:relative;z-index:1}
.bm-schmuck::before{content:'';position:absolute;z-index:0;pointer-events:none;display:block;top:50%;bottom:auto;left:auto;right:calc(var(--schmuck-groesse) * var(--schmuck-ueberstand));width:var(--schmuck-groesse);height:var(--schmuck-groesse);transform:translateY(-50%);background-color:var(--schmuck-farbe);background-image:none;-webkit-mask-image:url(https://bodymind.ruhr/wp-content/uploads/bodymind-bildmarke.svg);mask-image:url(https://bodymind.ruhr/wp-content/uploads/bodymind-bildmarke.svg);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:contain;mask-size:contain}
.bm-schmuck--links::before{left:calc(var(--schmuck-groesse) * var(--schmuck-ueberstand));right:auto}
.bm-schmuck--unten::before{top:auto;bottom:calc(var(--schmuck-groesse) * var(--schmuck-ueberstand));transform:none}
.bm-schmuck--gross{--schmuck-groesse:460px;--schmuck-ueberstand:-0.18}
.bm-schmuck--dunkel{--schmuck-farbe:rgba(255,255,255,.07)}
.bm-schmuck--hell{--schmuck-farbe:rgba(100,155,155,.06)}
@media (max-width:1199px){
.bm-schmuck{--schmuck-groesse:240px}
.bm-schmuck--gross{--schmuck-groesse:300px}
}
@media (max-width:1023px){
/* Schmaler als das hier fuellt der zentrierte Textblock das Band aus.
   Ein Motiv dahinter waere Unruhe hinter dem Lauftext, also bleibt es weg. */
.bm-schmuck::before{display:none}
}

/* Bewegung */
@media (prefers-reduced-motion:no-preference){
html{scroll-behavior:smooth}
}
@keyframes bmEinblenden{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

/* Auftritt. Die Startwerte gelten nur, wenn das Skript laeuft; ohne Skript
   steht alles sofort sichtbar da. */
.bm-auftritt{animation:bmAufsteigen .55s cubic-bezier(.22,.61,.36,1) both}
.elementor-element-df65031.bm-auftritt{animation-delay:.06s}
.elementor-element-5646cdb.bm-auftritt{animation-delay:.16s}
.elementor-element-9eb73bf.bm-auftritt{animation-delay:.26s}
.bm-auftritt-bild .elementor-widget-container{overflow:hidden}
.bm-auftritt-bild img{animation:bmNaeher .95s cubic-bezier(.22,.61,.36,1) both;animation-delay:.08s}
@keyframes bmAufsteigen{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@keyframes bmNaeher{from{transform:scale(1.035)}to{transform:none}}
.bm-js .bm-bereich.bm-steigt{opacity:0;transform:translateY(16px)}
.bm-js .bm-bereich.bm-steigt.ist-da{opacity:1;transform:none;transition:opacity .5s cubic-bezier(.22,.61,.36,1),transform .5s cubic-bezier(.22,.61,.36,1)}

/* Wochenplan: der Wechsel der Auswahl wird kurz ueberblendet */
.bm-plan .bm-plan-tag{transition:opacity .16s ease}
.bm-plan.ist-wechsel .bm-plan-tag{opacity:0}

/* Kontaktformular */
.elementor-element-kontakt-form .elementor-message{animation:bmEinblenden .32s cubic-bezier(.22,.61,.36,1) both}
.elementor-element-kontakt-form button.elementor-button.ist-sendet{opacity:.7;cursor:progress}

@media (prefers-reduced-motion:reduce){
*,*::before,*::after{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important;scroll-behavior:auto !important}
.bm-auftritt,.bm-js .bm-bereich.bm-steigt{opacity:1;transform:none}
.bm-auftritt-bild img{transform:none}
}

/* Wochenplan: nicht waehlbare Tage und Hinweis zur Auswahl */
.bm-plan .bm-plan-chip.ist-leer{opacity:.4;cursor:not-allowed;background:#FFFFFF;border-color:#E2E4E8;color:#9AA1AC}
.bm-plan .bm-plan-chip.ist-leer:hover{background:#FFFFFF;border-color:#E2E4E8;color:#9AA1AC}
.bm-plan-hinweis{margin:12px 0 0;font-family:Jost,Helvetica Neue,Arial,sans-serif;font-weight:300;font-size:14px;line-height:1.5;color:#6B7280}
.bm-plan-hinweis[hidden]{display:none}

/* Das Attribut hidden muss immer gewinnen. Eigene Klassen mit einer
   display-Angabe haben sonst Vorrang vor der Browserregel, und was das
   Skript versteckt, bleibt trotzdem sichtbar. */
[hidden]{display:none !important}

/* Ueberschriften: Zeilen gleichmaessig verteilen, damit in der letzten
   Zeile kein einzelnes Wort stehen bleibt. Browser ohne Unterstuetzung
   ignorieren die Angabe und brechen wie bisher um. */
h1, h2, h3, h4,
.bm-bereich-titel,
.bm-schritt-titel,
.bm-faq-frage{text-wrap:balance}

/* Aufzaehlungen im Fliesstext
   Das Theme setzt Listen auf margin:0, Absaetze haben nur einen
   Abstand nach unten. Dadurch klebt ein Absatz, der auf eine Liste
   folgt, unmittelbar an deren letztem Punkt. Hier fehlt also nur der
   Abstand unter der Liste, im selben Mass wie zwischen Absaetzen.
   Bewusst eng gefasst: Wochenplan, Schrittliste, Menues und Galerien
   benutzen ebenfalls Listen und duerfen sich nicht verschieben. */
.elementor-widget-text-editor ul,
.elementor-widget-text-editor ol,
.bm-faq-antwort ul,
.bm-faq-antwort ol,
.bm-neu-text ul,
.bm-neu-text ol{margin-bottom:.9rem}

/* Unter jeder Bereichsueberschrift im FAQ lagen zwei Striche
   uebereinander: einer vom Kopf, einer vom Fragenblock. Der
   obere traegt die Trennung jetzt allein, der zweite entfaellt. */
.bm-fragen-gruppe .bm-faq{border-top:0}

/* Rechtstexte (Impressum, Datenschutz)
   Der Text kommt fertig aus dem eRecht24-Konto und wird inhaltlich
   nicht angefasst. Diese Regeln geben ihm nur Schrift, Farben und
   Abstaende des uebrigen Seitendesigns. Der Baustein traegt dazu
   die Klasse bm-recht. */
.bm-recht h2{font-family:Cormorant Garamond,Georgia,serif;font-weight:600;font-size:32px;line-height:1.25;color:#2A2F38;margin:52px 0 16px}
.bm-recht > *:first-child,
.bm-recht h2:first-child{margin-top:0}
.bm-recht h3{font-family:Jost,Helvetica Neue,Arial,sans-serif;font-weight:500;font-size:18px;line-height:1.45;color:#2A2F38;margin:34px 0 10px}
.bm-recht h4{font-family:Jost,Helvetica Neue,Arial,sans-serif;font-weight:500;font-size:16px;line-height:1.45;color:#2A2F38;margin:26px 0 8px}
.bm-recht p{font-family:Jost,Helvetica Neue,Arial,sans-serif;font-weight:300;font-size:16px;line-height:1.75;color:#3E4551;margin:0 0 14px}
.bm-recht ul,.bm-recht ol{margin:0 0 14px;padding-left:22px}
.bm-recht li{font-family:Jost,Helvetica Neue,Arial,sans-serif;font-weight:300;font-size:16px;line-height:1.75;color:#3E4551;margin:0 0 6px}
.bm-recht li:last-child{margin-bottom:0}
.bm-recht a{color:#477F80;text-decoration:none;border-bottom:1px solid rgba(71,127,128,.3);overflow-wrap:anywhere}
.bm-recht a:hover{color:#2C5456;border-bottom-color:#2C5456}
.bm-recht strong,.bm-recht b{font-weight:500;color:#2A2F38}
.bm-recht hr{border:0;border-top:1px solid #E6DED2;margin:44px 0}
.bm-recht table{width:100%;border-collapse:collapse;margin:0 0 18px}
.bm-recht th,.bm-recht td{font-family:Jost,Helvetica Neue,Arial,sans-serif;font-weight:300;font-size:15px;line-height:1.6;color:#3E4551;text-align:left;padding:10px 12px 10px 0;border-bottom:1px solid #E6DED2;vertical-align:top}
.bm-recht th{font-weight:500;color:#2A2F38}
@media (max-width:767px){
  .bm-recht h2{font-size:26px;margin-top:38px}
  .bm-recht h3{font-size:17px;margin-top:28px}
}

/* "Gut zu wissen" auf /studio
   Die Tabelle ist auf 860 px begrenzt und zentriert, die
   Ueberschrift stand aber ueber die volle Breite des Abschnitts.
   Auf breiten Fenstern ergab das 170 px Versatz. Der Kopf bekommt
   jetzt dieselbe Breite wie die Tabelle darunter - dasselbe
   Vorgehen wie beim FAQ-Block der Startseite. */
.elementor-element-studio-wissen-kopf{width:860px;max-width:100%;margin-left:auto;margin-right:auto}

/* Seiteneinstieg /faq
   Der Kopfblock ist auf 860 px gesetzt, damit seine linke Kante
   mit Themennavigation, Bereichskoepfen und Fragen fluchtet.
   Der Text darf aber nicht mitwachsen, sonst werden die Zeilen
   zu lang. Er behaelt deshalb sein bisheriges Mass von 640 px.
   Auf schmalen Fenstern greift die Begrenzung ohnehin nicht. */
/* Elementor setzt .elementor.elementor .e-con > .elementor-widget auf
   max-width:100% - vier Klassen. Die folgende Regel muss das
   uebertreffen, sonst greift die Begrenzung nicht. */
.elementor.elementor .elementor-element-faq-intro-kopf.e-con > .elementor-widget{max-width:640px}

/* Sicherheitsnetz gegen waagerechtes Scrollen
   Viele innere Container haben eine feste Pixelbreite (640, 720,
   860) und einen Wert fuers Handy, aber keinen fuers Tablet.
   Elementor setzt bei ihnen max-width auf none. Zwischen 768 px
   und rund 910 px Fensterbreite ist der Platz kleiner als 860,
   der Block lief deshalb aus der Seite heraus. Diese Regel deckelt
   jeden inneren Container auf den verfuegbaren Platz. Breiter als
   vorgesehen wird dadurch nichts, nur nie breiter als moeglich. */
.elementor .e-con.e-child{max-width:100%}

/* ---- Kopfzeile auf schmalen Schirmen ------------------------
   Logo (126), Probestunde-Knopf (120) und Menue-Schalter (33)
   brauchen mit den 32 px Zwischenraum zusammen 161 px neben dem
   Logo - bei 360 px Breite stehen nur 154 zur Verfuegung. Der
   Schalter rutscht dann unter den Knopf und der Kopf wird 104
   statt 63 px hoch. Der Zwischenraum ist reine Luft, der Knopf
   bleibt unangetastet. ---------------------------------------- */
@media (max-width:420px){
  .elementor-element-61a6d58 > .e-con-inner{column-gap:12px !important}
  .elementor-element-6e46ba0{flex-wrap:nowrap !important}
}
@media (max-width:340px){
  .elementor-element-61a6d58{padding-left:18px !important;padding-right:18px !important}
  .elementor-element-61a6d58 img{max-width:104px}
}
/* Die Einleitung der Kursseiten hat jetzt zwei Absaetze. Der
   letzte Absatz braucht keinen Abstand nach unten - sonst steht
   zwischen Text und Preis mehr Luft als zwischen Labels und Text. */
.elementor-element-kurs-einleitung p:last-child{margin-bottom:0}

/* ---- Kontraste nach WCAG AA -------------------------------
   Die Uhrzeit im Wochenplan uebernimmt die Kategoriefarbe. Zwei
   davon sind als Text auf Weiss zu hell (Grenzwert 3:1 ab 24 px):
   die Grundfarbe mit 1,87 und Schwangerschaft mit 2,37. Statt die
   Kategoriefarben zu aendern - sie bilden auch Rahmen und Punkte -
   bekommt nur die Schrift eine eigene, dunklere Variante.

   Die Ruecklauf-Zeile steht in Teal 700 auf Leinen und erreicht
   4,26 statt 4,5. Hier eine Spur dunkler, nur an dieser Stelle;
   die globale Aktionsfarbe bleibt wie sie ist. --------------- */
.bm-plan{--plan-text:#8F949D}
.bm-plan-termin--yoga{--plan-text:#568F90}
.bm-plan-termin--ruecken{--plan-text:#5E7F63}
.bm-plan-termin--schwangerschaft-baby{--plan-text:#B58D63}
.bm-plan-termin--senioren{--plan-text:#6E8899}
.bm-plan-zeit-start{color:var(--plan-text,var(--plan-farbe))}
.elementor a.bm-zurueck,
.elementor .bm-zurueck{color:#407879}

/* ---- Datenschutz: Matomo-Widerspruch als eigenes Band -------
   Der Bereich steht am Ende eines langen Rechtstextes und geht
   dort sonst unter. Eigene Flaeche in Teal 50, damit er sich
   abhebt, ohne laut zu werden.

   Matomo liefert das Kaestchen als nacktes <input> mit einem
   Label, das auf volle Breite gesetzt ist - deshalb stand der Text
   bisher eine Zeile tiefer. Zeile und Kaestchen liegen jetzt in
   einer Flex-Reihe nebeneinander. ---------------------------- */
.elementor-element-dswiderspruchband{
  background:#F2F8F7;border:1px solid #DCEDEA;border-radius:14px;
  padding:30px 32px 32px;margin-top:44px;gap:0}
.elementor-element-dswiderspruchband .elementor-element-ds-widerspruch-h{
  /* Rechtstext-Ueberschriften haben 52 px Luft nach oben - im Band
     uebernimmt der Innenabstand diese Aufgabe. */
  /* Elementor steuert den Abstand ueber --margin-top, nicht ueber
     margin-top - beides setzen, sonst greift die Regel nicht. */
  --margin-top:0px;--margin-block-start:0px;
  margin-top:0 !important;margin-block-start:0 !important;margin-bottom:14px}
.elementor-element-dswiderspruchband .elementor-element-ds-widerspruch{
  margin-top:0 !important;margin-block-start:0 !important}
.bm-recht .elementor-element-dswiderspruchband p{margin-top:0}
.bm-recht .elementor-element-dswiderspruchband h2{margin-top:0;margin-bottom:6px}
.elementor-element-dswiderspruchband form{
  display:flex;align-items:flex-start;gap:12px;margin:4px 0 0}
.elementor-element-dswiderspruchband form input[type=checkbox]{
  flex:none;width:20px;height:20px;margin:2px 0 0;
  accent-color:#477F80;cursor:pointer}
.elementor-element-dswiderspruchband form label{
  width:auto !important;flex:1 1 auto;margin:0;cursor:pointer;
  line-height:1.55}
.elementor-element-dswiderspruchband form label strong{
  font-weight:500}
@media (max-width:767px){
  .elementor-element-dswiderspruchband{
    padding:24px 20px 26px;margin-top:32px}
}

/* eRecht24-Siegel auf den Rechtsseiten */
.elementor-element-impressum-siegel,
.elementor-element-datenschutz-siegel{--bm-siegel:200px;margin-top:40px}
.elementor-element-impressum-siegel img,
.elementor-element-datenschutz-siegel img{width:100%;max-width:var(--bm-siegel);height:auto;display:block}
@media (max-width:767px){
  .elementor-element-impressum-siegel,
  .elementor-element-datenschutz-siegel{margin-top:30px}
}/* End custom CSS */