.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}/* Start custom CSS *//* Hausstil fuer Seiten ohne Elementor (Rechtsseiten, Regionalseiten, Bewertungen), 11.10.2026. Farben und Schriften wie auf den neuen Seiten. */
body.page:not(.elementor-page) { background-color: #FBF8F3; }
body.page:not(.elementor-page) .site-main { max-width: 848px; padding: 56px 24px 96px; color: #3D3D3C; font-family: "Mulish", sans-serif; font-size: 18px; line-height: 1.7; overflow-wrap: break-word; }
body.page:not(.elementor-page) .site-main :is(.legal-content, .pt-seo, .bgm-page, .wa-seo, .lc-seo) { max-width: none; margin: 0; padding: 0; font-family: inherit; color: inherit; line-height: inherit; }
body.page:not(.elementor-page) .site-main .page-content > .wp-block-spacer:first-child { display: none; }
body.page:not(.elementor-page) .site-main :is(h1, h2, h3, h4) { color: #3D3D3C; letter-spacing: 0; }
body.page:not(.elementor-page) .site-main h1 { font-family: "Playfair Display", serif; font-weight: 500; font-size: clamp(31px, 4.2vw, 42px); line-height: 1.14; margin: 0 0 24px; padding: 0; border: 0; text-wrap: balance; }
body.page-id-959:not(.elementor-page) .site-main h1, body.page-id-1007:not(.elementor-page) .site-main h1 { text-wrap: pretty; }
body.page-id-959:not(.elementor-page) .site-main h1 { max-width: 15em; }
body.page:not(.elementor-page) .site-main h2 { font-family: "Playfair Display", serif; font-weight: 600; font-size: clamp(25px, 2.6vw, 32px); line-height: 1.22; margin: 1.8em 0 0.6em; padding: 0; border: 0; text-wrap: pretty; }
body.page:not(.elementor-page) .site-main h3 { font-family: "Mulish", sans-serif; font-weight: 700; font-size: 21px; line-height: 1.35; margin: 1.6em 0 0.5em; }
body.page:not(.elementor-page) .site-main p { margin: 0 0 1.15em; }
body.page:not(.elementor-page) .site-main :is(ul, ol) { margin: 0 0 1.2em; padding-left: 1.3em; }
body.page:not(.elementor-page) .site-main li { margin-bottom: 0.45em; }
body.page:not(.elementor-page) .site-main li::marker { color: #7D5F36; font-weight: 700; }
body.page:not(.elementor-page) .site-main a { color: inherit; text-decoration: underline; text-decoration-color: #7D5F36; text-decoration-thickness: 2px; text-underline-offset: 3px; }
body.page:not(.elementor-page) .site-main a:hover { color: #7D5F36; }
body.page:not(.elementor-page) .site-main a:focus-visible, body.page:not(.elementor-page) .site-main button:focus-visible { outline: 3px solid #7D5F36; outline-offset: 2px; }
body.page:not(.elementor-page) .site-main strong { font-weight: 700; }
body.page:not(.elementor-page) .site-main hr { border: 0; border-top: 1.5px solid #D0C0B0; margin: 2.2em 0; height: 0; background: none; }
body.page:not(.elementor-page) .site-main .lead { font-size: 21px; line-height: 1.6; font-weight: 500; color: inherit; margin-bottom: 1.3em; }
body.page:not(.elementor-page) .site-main .social-proof, body.page:not(.elementor-page) .site-main div[style*="display:flex"] { display: flex; flex-wrap: wrap; gap: 14px !important; margin: 1.6em 0 2em !important; }
body.page:not(.elementor-page) .site-main .stat, body.page:not(.elementor-page) .site-main div[style*="f8f4ec"] { background: #F2EDE5 !important; border-radius: 16px !important; padding: 20px 18px !important; flex: 1 1 150px !important; text-align: center; line-height: 1.35; }
body.page:not(.elementor-page) .site-main .stat strong, body.page:not(.elementor-page) .site-main strong[style*="c9a84c"] { display: block; font-family: "Playfair Display", serif; font-weight: 500 !important; font-size: 34px !important; line-height: 1.15; color: #7D5F36 !important; }
body.page:not(.elementor-page) .site-main .stat span, body.page:not(.elementor-page) .site-main div[style*="f8f4ec"] span { font-size: 15px !important; line-height: 1.4; color: #685E58 !important; }
body.page:not(.elementor-page) .site-main .highlight-box, body.page:not(.elementor-page) .site-main .contact-card { background: #F2EDE5; border: 0; border-radius: 16px; padding: 22px 24px; margin: 1.6em 0; }
body.page:not(.elementor-page) .site-main .highlight-box > :last-child, body.page:not(.elementor-page) .site-main .contact-card > :last-child, body.page:not(.elementor-page) .site-main .card > :last-child, body.page:not(.elementor-page) .site-main .cta-block > :last-child { margin-bottom: 0; }
body.page:not(.elementor-page) .site-main .two-col { gap: 16px; margin: 1.6em 0; }
body.page:not(.elementor-page) .site-main .card { background: #F2EDE5; border-radius: 16px; padding: 22px 24px; }
body.page:not(.elementor-page) .site-main .card h3 { margin-top: 0; font-size: 20px; }
body.page:not(.elementor-page) .site-main .cta-block { background: #3D3D3C; color: #F2EDE5; border-radius: 18px; padding: 36px 28px; margin: 2.4em 0; text-align: center; }
body.page:not(.elementor-page) .site-main .cta-block h3 { font-family: "Playfair Display", serif; font-weight: 500; font-size: 28px; line-height: 1.2; color: #F2EDE5; margin: 0 0 10px; }
body.page:not(.elementor-page) .site-main .cta-block p { color: #F2EDE5; }
body.page:not(.elementor-page) .site-main .cta-block .cta-btn, body.page:not(.elementor-page) .site-main .cta-block button, body.page:not(.elementor-page) .site-main .cta-block [id$="phone-number"] a { display: inline-block; background: #D0C0B0 !important; color: #3D3D3C !important; border: 0; border-radius: 10px; padding: 14px 24px; margin: 6px; font-family: "Mulish", sans-serif; font-weight: 700; font-size: 17px; line-height: 1.3; text-decoration: none; cursor: pointer; }
body.page:not(.elementor-page) .site-main .cta-block button.hidden { display: none !important; }
body.page:not(.elementor-page) .site-main .cta-block .cta-btn:hover, body.page:not(.elementor-page) .site-main .cta-block button:hover { background: #F2EDE5 !important; }
body.page:not(.elementor-page) .site-main .author-note { font-size: 15px; font-style: normal; color: #685E58; border-top: 1.5px solid #D0C0B0; margin-top: 3em; padding-top: 1em; }
body.page:not(.elementor-page) .site-main table { width: 100%; border-collapse: collapse; margin: 1.4em 0; font-size: 16px; }
body.page:not(.elementor-page) .site-main :is(th, td) { border: 1px solid #D0C0B0; padding: 10px 14px; text-align: left; vertical-align: top; }
body.page:not(.elementor-page) .site-main th { background: #F2EDE5; font-weight: 700; }
body.page:not(.elementor-page) .site-main blockquote { margin: 1.4em 0; padding: 24px 26px; border: 0; border-radius: 16px; background: #F2EDE5; font-size: 18px; line-height: 1.65; font-style: normal; quotes: none; }
body.page:not(.elementor-page) .site-main blockquote p { margin: 0 0 0.6em; }
body.page:not(.elementor-page) .site-main cite { display: block; font-size: 15px; font-style: normal; color: #685E58; }
body.page:not(.elementor-page) .site-main a[href="https://wa.me/4916325872 75"] { pointer-events: none; cursor: text; text-decoration: none; }
@media (max-width: 767px) {
body.page:not(.elementor-page) .site-main { padding: 36px 20px 72px; font-size: 17px; }
body.page:not(.elementor-page) .site-main .lead { font-size: 19px; }
body.page:not(.elementor-page) .site-main h3 { font-size: 19px; }
body.page:not(.elementor-page) .site-main .cta-block { padding: 28px 20px; }
body.page:not(.elementor-page) .site-main .cta-block .cta-btn, body.page:not(.elementor-page) .site-main .cta-block button { display: block; width: 100%; margin: 8px 0; }
body.page:not(.elementor-page) .site-main .cta-block [class*="phone-wrap"] { display: block !important; margin: 0 !important; }
body.page:not(.elementor-page) .site-main .cta-block [id$="phone-number"] a { display: block; margin: 8px 0; }
body.page:not(.elementor-page) .site-main blockquote { padding: 20px; }
}
/* Schutz bis zur Korrektur im Seitentext: Die Regionalseite Personal Trainer (ID 970) zeigt eine falsche Mobilnummer, deshalb ist der Button 'Nummer anzeigen' dort ausgeblendet. Der WhatsApp-Link mit Leerzeichen auf der Bewertungsseite ist oben abgeschaltet. */
body.page-id-970:not(.elementor-page) .site-main .cta-block .pt-phone-wrap.pt-phone-wrap { display: none !important; }
/* Globale Handy-Korrekturen (10.10.2026): lange Woerter werden getrennt, damit keine Seite breiter als der Bildschirm wird. Gilt fuer Blogartikel und fuer Seiten, die nicht mit Elementor gebaut sind. */
@media (max-width: 767px) {
body:not(.elementor-page) .site-main h1, body:not(.elementor-page) .site-main h2, body:not(.elementor-page) .site-main h3, body:not(.elementor-page) .site-main h4, body:not(.elementor-page) .site-main p, body:not(.elementor-page) .site-main li, .elementor-location-single h1, .elementor-location-single h2, .elementor-location-single h3, .elementor-location-single h4, .elementor-location-single p, .elementor-location-single li { overflow-wrap: break-word; -webkit-hyphens: auto; hyphens: auto; hyphenate-limit-chars: 12 6 6; -webkit-hyphenate-limit-before: 6; -webkit-hyphenate-limit-after: 6; }
body:not(.elementor-page) .site-main .legal-content h1 { font-size: clamp(26px, 7.6vw, 35px); }
body:not(.elementor-page) .site-main .bgm-page h1 { font-size: clamp(20px, 6.2vw, 29px); }
.elementor-location-single .elementor-widget-theme-post-title .elementor-heading-title { font-size: clamp(24px, 7vw, 32px) !important; }
.elementor-location-single .elementor-widget-theme-post-content h1 { font-size: clamp(26px, 8.2vw, 40px); }
.elementor-location-single .elementor-widget-theme-post-content h2 { font-size: clamp(23px, 7vw, 32px); }
.elementor-location-single .elementor-widget-theme-post-content h3 { font-size: clamp(20px, 6.2vw, 28px); }
}
@media (max-width: 359px) {
.home .wa-h2 { overflow-wrap: break-word; -webkit-hyphens: auto; hyphens: auto; }
}
/* Tablet: dieselbe Silbentrennung fuer Blogartikel */
@media (min-width: 768px) and (max-width: 1024px) {
.elementor-location-single h1, .elementor-location-single h2, .elementor-location-single h3, .elementor-location-single h4 { overflow-wrap: break-word; -webkit-hyphens: auto; hyphens: auto; hyphenate-limit-chars: 12 6 6; -webkit-hyphenate-limit-before: 6; -webkit-hyphenate-limit-after: 6; }
.elementor-location-single .elementor-widget-theme-post-content h1 { font-size: clamp(30px, 4.4vw, 40px); }
}/* End custom CSS */