/* Appearance is stored in Elementor. These rules provide panel mechanics. */
.dimpal-header-row { isolation: isolate; }
.dimpal-header-logo { position: relative; z-index: 100001; min-width: 0; }
.dimpal-header-logo a { display: inline-block; max-width: 100%; }
.dimpal-site-name { display: block; overflow-wrap: anywhere; }
.dimpal-header-logo img { height: auto; object-fit: contain; vertical-align: middle; }
.dimpal-header-menu { min-width: 0; }
.dimpal-header-menu .tahefobu-nav-menu { white-space: nowrap; }
.dimpal-header-menu a { transition: color .2s ease; }
.dimpal-header-menu .tahefobu-mobile-toggle { position: relative; z-index: 100002; }
.dimpal-header-menu .tahefobu-mobile-toggle:focus-visible,
.dimpal-header-logo a:focus-visible,
.dimpal-header-menu a:focus-visible { outline: 2px solid currentColor; outline-offset: 5px; }
.dimpal-header-menu.dimpal-fullscreen-menu-yes .tahefobu-mobile-nav-menu-container { position: static; }
.dimpal-header-menu.dimpal-fullscreen-menu-yes .tahefobu-mobile-nav-menu {
    position: fixed;
    inset: 0;
    width: 100%;
    height: 100vh;
    height: 100dvh;
    margin: 0;
    transform: none;
    min-width: 0;
    box-sizing: border-box;
    overflow-y: auto;
    overscroll-behavior: contain;
    list-style: none;
    box-shadow: none;
    z-index: 100000;
}
.dimpal-header-menu.dimpal-fullscreen-menu-yes .tahefobu-mobile-nav-menu li { background: transparent; }
.dimpal-header-menu.dimpal-fullscreen-menu-yes .tahefobu-mobile-nav-menu a { display: block; width: 100%; }
body.dimpal-menu-open { overflow: hidden; }
body.dimpal-menu-open #tahefobu-header { transform: none; will-change: auto; }
/* A transformed ancestor would make a fixed panel scroll with the header. */
#tahefobu-header:has(.dimpal-fullscreen-menu-yes) { will-change: auto; }
body.admin-bar #tahefobu-header.ta-sticky-active { top: 32px; }
body.admin-bar .dimpal-fullscreen-menu-yes .tahefobu-mobile-nav-menu { top: 32px; height: calc(100dvh - 32px); }
@media (max-width: 782px) {
    body.admin-bar #tahefobu-header.ta-sticky-active { top: 46px; }
    body.admin-bar .dimpal-fullscreen-menu-yes .tahefobu-mobile-nav-menu { top: 46px; height: calc(100dvh - 46px); }
}
@media (max-width: 600px) {
    body.admin-bar #tahefobu-header.ta-sticky-active { top: 0; }
    body.admin-bar .dimpal-fullscreen-menu-yes .tahefobu-mobile-nav-menu { top: 0; height: 100dvh; }
}
@media (prefers-reduced-motion: reduce) {
    .dimpal-header-menu a, .dimpal-header-menu .tahefobu-mobile-toggle-line { transition: none; }
}
