/* Herzfreude: fluid mobile navigation and Wechseljahre page, 27 October 2026. */
.menu_mobile {width:100vw;max-width:100%;overflow:hidden;pointer-events:none;-webkit-transition:none;transition:none;}
.menu_mobile.opened {height:100vh;height:100dvh;pointer-events:auto;}
.menu_mobile .menu_mobile_inner {box-sizing:border-box;display:flex;flex-direction:column;width:100%;height:100%;padding: max(24px,env(safe-area-inset-top)) clamp(20px,6vw,48px) max(20px,env(safe-area-inset-bottom));overflow:hidden;}
.menu_mobile .sc_layouts_logo {flex:0 0 auto;margin:10px 24px 0;}
.menu_mobile .logo_text {font-size:clamp(21px,5.6vw,30px);line-height:1.25;}
.menu_mobile .logo_slogan {font-size:13px;line-height:1.5;}
.menu_mobile .menu_mobile_close {width:44px;height:44px;top:max(4px,env(safe-area-inset-top));right:4px;z-index:3;}
.menu_mobile .menu_mobile_nav_area {position:relative;top:auto;left:auto;flex:1 1 auto;min-height:0;max-height:none;width:100%;height:auto;box-sizing:border-box;padding:0;margin:clamp(24px,5vh,48px) 0 20px;transform:none;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.5) transparent;text-align:left;}
.menu_mobile .menu_mobile_nav_area ul {width:100%;margin:0;padding:0;}
.menu_mobile .menu_mobile_nav_area ul ul {margin:4px 0 12px;}
.menu_mobile .menu_mobile_nav_area li+li {margin-top:0;}
.menu_mobile .menu_mobile_nav_area li>a {display:block;box-sizing:border-box;width:100%;min-height:44px;padding:10px 48px 10px 0;font-size:16px;line-height:1.5;overflow-wrap:break-word;}
.menu_mobile .menu_mobile_nav_area>ul>li>a {font-size:clamp(20px,4.8vw,24px);line-height:1.4;}
.menu_mobile .menu_mobile_nav_area>ul>li li>a {min-height:40px;padding:8px 40px 8px 12px;}
.menu_mobile .menu_mobile_nav_area .open_child_menu {box-sizing:border-box;top:50%;right:0;transform:translateY(-50%);width:44px;height:44px;line-height:44px;padding:0;}
.menu_mobile .search_mobile {position:relative;flex:0 0 auto;left:auto;right:auto;bottom:auto;width:100%;max-width:100%;margin:0;}
.menu_mobile .search_mobile .search_field {box-sizing:border-box;min-height:48px;font-size:16px;}
.menu_mobile .socials_mobile {position:relative;flex:0 0 auto;left:auto;right:auto;bottom:auto;width:100%;margin:14px 0 0;text-align:center;}
.menu_mobile .social_item {margin:0 8px;}
.menu_mobile .social_item a {box-sizing:border-box;width:40px;height:40px;line-height:40px;font-size:17px;}
.menu_mobile a:focus-visible,.menu_mobile button:focus-visible,.menu_mobile input:focus-visible {outline:2px solid white;outline-offset:2px;}
@media(max-width:767px){.page-yoga-wechseljahre .page_content_wrap>.content_wrap {box-sizing:border-box;width:100%;max-width:none;padding-inline:clamp(20px,5vw,32px);}}
.page-yoga-wechseljahre .hf-wechseljahre {font-size:clamp(16px,1.3vw,18px);line-height:1.8;}
.page-yoga-wechseljahre .sc_layouts_title_caption {font-size:clamp(28px,5vw,44px);line-height:1.25;}
.page-yoga-wechseljahre .hf-wechseljahre h2 {font-size:clamp(25px,3vw,36px);line-height:1.3;}
.page-yoga-wechseljahre .hf-wechseljahre h3 {font-size:clamp(22px,2.5vw,28px);line-height:1.35;}
@media(max-height:500px){.menu_mobile .menu_mobile_inner{padding-block:12px}.menu_mobile .sc_layouts_logo{margin-top:0}.menu_mobile .logo_text{font-size:21px}.menu_mobile .menu_mobile_nav_area{margin:12px 0}.menu_mobile .socials_mobile{margin-top:4px}.menu_mobile .social_item a{height:30px;line-height:30px}}
@media(prefers-reduced-motion:reduce){.menu_mobile{transition:none;}}

.page-yoga-wechseljahre .hf-wechseljahre a.sc_button {background-color:#f56c6d;background-image:none;color:#fff;font-size:15px;font-weight:500;line-height:1.5;padding:1.1em 2em;}
.page-yoga-wechseljahre .hf-wechseljahre a.sc_button span {color:inherit;}
.page-yoga-wechseljahre .hf-wechseljahre a.sc_button:hover {background-color:#d95a62;color:#fff;}

/* Fluid site-wide containers: layout follows the viewport between breakpoints. */
:root {--hf-page-gutter:clamp(20px,4vw,40px);--hf-page-width:1170px;}
html {width:100%;}
body.body_style_wide {min-width:0;font-size:clamp(15px,1.15vw,17px);line-height:1.75;}
.body_style_wide .body_wrap,.body_style_wide .page_wrap {width:100%;min-width:0;max-width:100%;}
.body_style_wide .content_wrap,.body_style_wide .content_container,.body_style_wide .sc_content_width_1_1 {box-sizing:border-box;width:calc(100% - var(--hf-page-gutter) * 2);max-width:var(--hf-page-width);margin-inline:auto;}
.body_style_wide .content_wrap .content_wrap,.body_style_wide .content_wrap .content_container,.body_style_wide .content_container .content_wrap,.body_style_wide .content_container .content_container,.body_style_wide .content_wrap .sc_content_width_1_1 {width:100%;max-width:100%;}
.top_panel>.vc_row,.footer_wrap>.vc_row {box-sizing:border-box;width:100%;margin-inline:0;}
.body_style_wide.sidebar_hide .content {width:100%;min-width:0;float:none;}
.body_style_wide.sidebar_show .page_content_wrap>.content_wrap {display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,.4fr);gap:clamp(24px,4vw,56px);}
.body_style_wide.sidebar_show .page_content_wrap>.content_wrap>.content,.body_style_wide.sidebar_show .page_content_wrap>.content_wrap>.sidebar {width:auto;min-width:0;float:none;margin-inline:0;}
.body_style_wide .page_content_wrap {padding-block:clamp(32px,5vw,80px);}
.body_style_wide.remove_margins .page_content_wrap {padding-block:0;}
.top_panel .sc_layouts_row_type_normal {padding-block:clamp(24px,4vw,56px);}
.sc_layouts_title_caption {font-size:clamp(28px,3.4vw,46px);line-height:1.25;overflow-wrap:break-word;}
.post_content,.services_page_content {overflow-wrap:break-word;}
.post_content h1,.services_page h1 {font-size:clamp(28px,3.6vw,46px);line-height:1.25;}
.post_content h2,.services_page h2 {font-size:clamp(25px,3vw,38px);line-height:1.3;}
.post_content h3,.services_page h3 {font-size:clamp(22px,2.6vw,30px);line-height:1.35;}
.post_content img,.services_page img,.post_featured img {max-width:100%;height:auto;}
.post_content pre,.services_page_content pre {max-width:100%;overflow-x:auto;}
.post_content table,.services_page_content table {width:100%;max-width:100%;}
.post_content th,.post_content td {overflow-wrap:break-word;}
.post_content .vc_empty_space {max-height:clamp(24px,8vw,112px);}
.post_content .vc_col-has-fill .vc_empty_space {height:clamp(260px,50vw,600px)!important;max-height:none;}
.post_content .sc_testimonials_item_content {font-size:clamp(17px,2vw,24px);line-height:1.6;}
.post_content .video_frame {aspect-ratio:16/9;height:auto!important;}
.post_content .video_frame iframe {display:block;box-sizing:border-box;width:100%!important;height:100%!important;}
/* Full-width WPBakery rows previously kept pixel widths written by JavaScript. */
.body_style_wide .post_content>.vc_row[data-vc-full-width="true"] {box-sizing:border-box;width:100vw!important;max-width:none!important;left:calc((100% - 100vw) / 2)!important;margin-inline:0!important;padding-inline:max(var(--hf-page-gutter),calc((100vw - var(--hf-page-width)) / 2))!important;}
.body_style_wide .post_content>.vc_row[data-vc-stretch-content="true"] {padding-inline:0!important;}
@media(max-width:991px){
 .body_style_wide.sidebar_show .page_content_wrap>.content_wrap {grid-template-columns:minmax(0,1fr);}
 .body_style_wide.sidebar_show .page_content_wrap>.content_wrap>.sidebar {margin-top:16px;}
}
@media(max-width:767px){
 .top_panel .sc_layouts_row_type_compact {padding-block:clamp(14px,4vw,28px);}
 .top_panel .sc_layouts_logo img {max-height:clamp(48px,12vw,70px);width:auto;}
 .top_panel .sc_layouts_row_type_normal {padding-block:clamp(20px,5vw,36px);}
 .post_content>.vc_row>.vc_col-sm-6 {width:100%;}
 .body_style_wide .sc_content_width_70p,.body_style_wide .sc_content_width_75p {width:100%;}
 .page-yoga-wechseljahre .page_content_wrap>.content_wrap {width:calc(100% - var(--hf-page-gutter) * 2);padding-inline:0;}
 .post_content .sc_button,.services_page_content .sc_button {box-sizing:border-box;max-width:100%;white-space:normal;}
 .hf-wj-intro {gap:24px;}
 .hf-wj-video {padding:clamp(16px,4vw,24px);}
}

.hf-schedule-mobile {display:none;}
@media(max-width:991px){
 .sc_schedule,.sc_schedule_mobile_icon {display:none!important;}
 .hf-schedule-mobile {display:block!important;}
 .hf-schedule-days {display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:32px;}
 .hf-schedule-day {border-top:2px solid #f56c6d;padding-top:16px;min-width:0;}
 .hf-schedule-day h2 {margin:0 0 16px;font-size:26px;}
 .hf-schedule-course+.hf-schedule-course {margin-top:18px;}
 .hf-schedule-course p {margin:0;}
 .hf-schedule-course a {font-weight:500;}
 .hf-schedule-course span {font-size:.9em;}
}
