/* A single minimal header across desktop, tablet and phone. */
body.bt-site { padding-top:0 !important; }
.bt-site .elementor-208, .bt-site .elementor-1261 { display:none !important; }
.bt-site .bt-mobile-header {
    display:block; position:sticky; top:0; z-index:99990;
    background:#fff; border-bottom:1px solid #e7ece8; box-shadow:none;
}
.bt-site .bt-mobile-header-inner {
    display:flex; align-items:center; justify-content:space-between; gap:24px;
    width:100%; max-width:calc(var(--bt-boxed-width,1140px) + 48px); min-height:88px; margin-inline:auto; padding:14px 24px;
}
.bt-site .bt-brand { display:inline-flex; align-items:center; max-width:calc(100% - 72px); text-decoration:none; }
.bt-site .bt-mobile-logo { display:block; width:172px; max-height:56px; height:auto; object-fit:contain; object-position:left center; }
.bt-site .bt-menu-toggle {
    display:inline-flex; align-items:center; justify-content:center; flex-shrink:0;
    width:48px; height:48px; min-width:48px; min-height:48px; padding:10px;
    border:0; border-radius:50%; background:transparent; color:#18352b;
    box-shadow:none; transition:background-color .18s,color .18s;
}
.bt-site .bt-menu-toggle:is(:hover,:focus,:active) { background:#f0f5f0; color:#237b35; border:0; box-shadow:none; }
.bt-site .bt-menu-icon { display:block; width:28px; height:28px; }
.bt-site .bt-brand:focus-visible, .bt-site .bt-menu-toggle:focus-visible { outline:2px solid #237b35; outline-offset:4px; }
.bt-site .bt-mobile-panel { --bs-offcanvas-width:420px; }
.bt-site .bt-mobile-panel .offcanvas-header { background:#fff; }
.bt-site .bt-menu-close { border:0; border-radius:50%; background:#f3f6f3; }
.bt-site.admin-bar .bt-mobile-header { top:32px; }
/* Headers now occupy normal flow, so image titles need no overlay-header offset. */
.bt-inner-page .elementor[data-elementor-type="wp-page"] .bt-page-hero { padding-block:72px !important; min-height:320px !important; }
.bt-site .bt-native-hero { padding-block:72px; }
@media (min-width:1200px) {
    .bt-site .elementor-149 > .elementor-element-d8db1fc { --min-height:0px; min-height:calc(100svh - 88px); padding-block:64px !important; }
    .bt-site .elementor-149 > .elementor-element-d8db1fc .e-con { min-height:0 !important; }
}
@media (max-width:767.98px) {
    .bt-site .bt-mobile-header-inner { min-height:76px; padding-block:10px; }
    .bt-site .bt-mobile-logo { width:150px; max-height:50px; }
    .bt-inner-page .elementor[data-elementor-type="wp-page"] .bt-page-hero { min-height:240px !important; padding-block:48px !important; }
    .bt-site .bt-native-hero { padding-block:48px; }
}
@media (max-width:782px) { .bt-site.admin-bar .bt-mobile-header { top:46px; } }
@media (max-width:600px) { .bt-site.admin-bar .bt-mobile-header { top:0; } }
@media (prefers-reduced-motion:reduce) { .bt-site .bt-menu-toggle { transition:none; } }
/* Full desktop navigation; the compact sidebar remains available below xl. */
.bt-site .bt-desktop-nav { display:none; }
@media (min-width:1200px) {
    .bt-site .bt-mobile-header-inner { gap:48px; }
    .bt-site .bt-brand { flex-shrink:0; }
    .bt-site .bt-menu-toggle { display:none; }
    .bt-site .bt-desktop-nav { display:block; margin-left:auto; }
    .bt-site .bt-desktop-links { display:flex; align-items:center; gap:8px; list-style:none; margin:0; padding:0; }
    .bt-site .bt-desktop-links > li { position:relative; margin:0; padding:0; }
    .bt-site .bt-desktop-links > li > a,
    .bt-site .bt-desktop-parent {
        display:inline-flex; align-items:center; justify-content:center; gap:9px;
        min-height:48px; padding:10px 14px; border:0; border-radius:8px;
        background:transparent; box-shadow:none; color:#18352b; font:inherit;
        font-size:1rem; font-weight:500; line-height:1.5; text-decoration:none; white-space:nowrap;
    }
    .bt-site .bt-desktop-links > li > a:hover,
    .bt-site .bt-desktop-parent:is(:hover,:focus),
    .bt-site .bt-desktop-links > .current-menu-item > a,
    .bt-site .bt-desktop-links > .current-menu-ancestor > .bt-desktop-parent { background:#f0f6ee; color:#226d25; }
    .bt-site .bt-desktop-parent::after { content:""; width:6px; height:6px; border-right:1.5px solid currentColor; border-bottom:1.5px solid currentColor; transform:translateY(-2px) rotate(45deg); }
    .bt-site .bt-desktop-nav .dropdown-menu-toggle { display:none; }
    .bt-site .bt-desktop-nav .sub-menu {
        display:none; position:absolute; top:100%; right:0; z-index:10;
        min-width:280px; width:max-content; max-width:340px; margin:0; padding:8px;
        list-style:none; border:1px solid #dfe9e2; border-radius:12px;
        background:#fff; box-shadow:0 16px 40px #18352b1a;
    }
    .bt-site .bt-desktop-nav .is-open > .sub-menu { display:block; }
    .bt-site .bt-desktop-nav .sub-menu li { margin:0; padding:0; }
    .bt-site .bt-desktop-nav .sub-menu a { display:block; padding:12px; border-radius:8px; color:#18352b; font-size:1rem; line-height:1.5; white-space:normal; text-decoration:none; }
    .bt-site .bt-desktop-nav .sub-menu a:hover { background:#f0f6ee; color:#226d25; }
    .bt-site .bt-desktop-nav :is(a,button):focus-visible { outline:2px solid #237b35; outline-offset:2px; }
}
/* Reference-inspired contact strip, white navigation row, and contact action. */
.bt-site .bt-topbar { background:#174735; color:#fff; }
.bt-site .bt-topbar-inner { display:flex; justify-content:flex-end; align-items:center; gap:28px; max-width:calc(var(--bt-boxed-width,1140px) + 48px); min-height:40px; margin-inline:auto; padding-inline:24px; }
.bt-site .bt-header-contacts { display:flex; align-items:center; gap:28px; }
.bt-site .bt-header-contacts a { display:inline-flex; align-items:center; gap:10px; min-height:40px; color:#fff; text-decoration:none; font-size:1rem; line-height:1.5; }
.bt-site .bt-topbar svg { width:16px; height:16px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; flex-shrink:0; }
.bt-site .bt-header-socials { display:flex; align-items:center; gap:6px; padding-left:20px; border-left:1px solid #ffffff40; }
.bt-site .bt-header-socials a { display:inline-flex; justify-content:center; align-items:center; width:32px; height:32px; color:#fff; border-radius:50%; }
.bt-site .bt-header-socials a:hover { background:#ffffff20; }
.bt-site .bt-topbar a:focus-visible { outline:2px solid #b5efa5; outline-offset:2px; }
.bt-site .bt-header-contact-button { display:none; }
@media (min-width:1200px) {
    .bt-site .bt-mobile-header-inner { gap:32px; }
    .bt-site .bt-desktop-nav { margin-left:24px; margin-right:auto; }
    .bt-site .bt-desktop-links { gap:4px; }
    .bt-site .bt-header-contact-button { display:inline-flex; align-items:center; justify-content:center; min-height:48px; padding:12px 28px; border-radius:999px; background:#237b35; color:#fff; font-size:1rem; line-height:1.5; font-weight:600; text-decoration:none; white-space:nowrap; }
    .bt-site .bt-header-contact-button:hover { background:#185f28; }
    .bt-site .bt-header-contact-button:focus-visible { outline:2px solid #237b35; outline-offset:4px; }
    .bt-site .elementor-149 > .elementor-element-d8db1fc { min-height:calc(100svh - 129px); }
}
@media (max-width:767.98px) {
    .bt-site .bt-topbar-inner { justify-content:space-between; gap:12px; }
    .bt-site .bt-header-contacts .bt-header-email { display:none; }
    .bt-site .bt-header-contacts a { gap:6px; }
    .bt-site .bt-header-socials { padding-left:0; border-left:0; gap:2px; }
}
/* Text-only menu highlights, with a logo-led mobile drawer. */
.bt-site .bt-desktop-nav :is(a,button),
.bt-site .bt-mobile-panel .bt-menu a,
.bt-site .bt-mobile-panel .bt-submenu-toggle { background:transparent !important; box-shadow:none; }
.bt-site .bt-desktop-nav .current-menu-item > a,
.bt-site .bt-desktop-nav .current-menu-ancestor > .bt-desktop-parent,
.bt-site .bt-desktop-nav a:hover,
.bt-site .bt-desktop-parent:is(:hover,:focus),
.bt-site .bt-mobile-panel .current-menu-item > a,
.bt-site .bt-mobile-panel .current-menu-ancestor > a,
.bt-site .bt-mobile-panel .bt-menu a:hover { color:#237b35; }
.bt-site .bt-mobile-panel .offcanvas-header { justify-content:space-between; align-items:center; gap:16px; padding:24px; border-bottom:0; }
.bt-site .bt-sidebar-brand { max-width:calc(100% - 60px); }
.bt-site .bt-sidebar-brand .bt-mobile-logo { width:164px; max-height:56px; }
.bt-site .bt-mobile-panel .bt-menu-close { width:44px; height:44px; background:transparent; border:0; color:#18352b; }
.bt-site .bt-mobile-panel .bt-menu-close:is(:hover,:focus,:active) { background:transparent; color:#237b35; }
.bt-site .bt-mobile-panel .offcanvas-body { padding:0 24px 32px; }
.bt-site .bt-mobile-panel .bt-menu > li { margin:0; border-bottom:1px solid #c9ddcd; }
.bt-site .bt-mobile-panel .bt-menu > li > a { padding:16px 4px; min-height:56px; border-radius:0; font-weight:500; }
.bt-site .bt-mobile-panel .bt-menu > .menu-item-has-children > a { padding-right:48px; }
.bt-site .bt-mobile-panel .bt-menu > .current-menu-item > a { font-weight:600; }
.bt-site .bt-mobile-panel .bt-submenu-toggle { top:6px; right:0; display:flex; align-items:center; justify-content:center; }
.bt-site .bt-mobile-panel .bt-submenu-toggle::before { content:""; width:7px; height:7px; border-right:1.5px solid currentColor; border-bottom:1.5px solid currentColor; transform:translateY(-2px) rotate(45deg); }
.bt-site .bt-mobile-panel .bt-submenu-toggle[aria-expanded="true"]::before { transform:translateY(2px) rotate(225deg); }
.bt-site .bt-mobile-panel .sub-menu { margin:0 0 12px 4px; padding-left:16px; border-left:1px solid #c9ddcd; }
.bt-site .bt-sidebar-contact-button { display:flex; align-items:center; justify-content:center; min-height:52px; margin-top:24px; padding:12px 24px; border-radius:999px; background:#237b35; color:#fff; text-decoration:none; font-size:1rem; font-weight:600; }
.bt-site .bt-sidebar-contact-button:is(:hover,:focus) { background:#185f28; color:#fff; }
.bt-site .bt-sidebar-contact-button:focus-visible { outline:2px solid #237b35; outline-offset:4px; }

/* Anchor dropdowns to the bottom of the desktop header and their parent item. */
@media (min-width:1200px) {
    .bt-site .bt-mobile-header-inner { padding-block:0; }
    .bt-site .bt-desktop-nav { display:flex; align-self:stretch; align-items:stretch; }
    .bt-site .bt-desktop-links { align-items:stretch; }
    .bt-site .bt-desktop-links > li { display:flex; align-items:center; }
    .bt-site .bt-desktop-nav .sub-menu { top:calc(100% + 1px); left:0; right:auto; margin:0; }
    .bt-site .bt-desktop-links > .menu-item-has-children::after { content:""; position:absolute; top:100%; left:0; width:100%; height:2px; }
}
/* Slight visual shrink on scroll without changing header height or shifting the page. */
.bt-header-sentinel { top:96px; }
.bt-site .bt-mobile-header .bt-mobile-logo { transform-origin:left center; transition:transform .22s ease-out; }
.bt-site .bt-mobile-header.is-compact .bt-mobile-logo { transform:scale(.88); }
@media (prefers-reduced-motion:reduce) { .bt-site .bt-mobile-header .bt-mobile-logo { transition:none; } }
