/* Only runtime replacements and responsive fixes. Captured theme styles remain local. */
html { scroll-behavior:smooth; }
.elementor-menu-anchor { scroll-margin-top:24px; }
.elementor-widget-table-of-contents .elementor-toc__list-wrapper { list-style:decimal; padding-left:24px; margin:0; }
.elementor-toc__list-item { padding:4px 0; }
.elementor-toc__body[hidden] { display:none!important; }
.elementor-toc--collapsed .elementor-toc__toggle-button--collapse { display:none; }
.elementor-toc:not(.elementor-toc--collapsed) .elementor-toc__toggle-button--expand { display:none; }
.elementor-tab-title { cursor:pointer; }
.elementor-tab-title:focus-visible { outline:2px solid #83aef7;outline-offset:3px; }
.elementor-tab-content[hidden] { display:none!important; }
.elementor-tab-content:not([hidden]) { display:block; }
.elementor-video { width:100%;border:0;aspect-ratio:16/9; }
.elementor-invisible { visibility:visible!important; }
.comments-paused { padding:16px 0;color:#666; }
.comment-reply-paused { color:#777; }
.wpbf-mobile-menu-container[hidden] { display:none!important; }
.wpbf-mobile-menu-container:not([hidden]) { display:block; }
.wpbf-mobile-menu .sub-menu[hidden] { display:none!important; }
.wpbf-mobile-menu .sub-menu:not([hidden]) { display:block; }
@media (max-width:767px){
 .wpbf-mobile-menu .menu-item-has-children { position:relative; }
 .elementor-widget-table-of-contents { width:100%; }
 .elementor-widget-image img { max-width:100%;height:auto; }
 .comment-list .children { margin-left:12px;padding-left:8px; }
}
/* Theme dropdowns originally used WordPress theme JS. Keyboard and hover share CSS. */
@media (min-width:1025px){
 .wpbf-menu .menu-item-has-children:hover > .sub-menu,
 .wpbf-menu .menu-item-has-children:focus-within > .sub-menu {
  display:block;opacity:1;visibility:visible;
 }
}
