/* BHCMS-DARK-MODE
   Dark theme for the marketing site. <html class="bh-dark"> is set before paint by
   BHCMS-THEME-INIT (lib/seo_head.php) and switched by BHCMS-THEME-SWITCH (lib/header.php).
   Linked as the first thing in <body>, so it comes after main.css / modern.css / custom.css. */

/* ---------- Theme switcher (both themes) ---------- */
#bh-theme-btn {
    display: inline-flex; align-items: center; justify-content: center;
    height: 36px; min-width: 36px; padding: 0 6px; margin: -2px 0;
    background: none; border: none; border-radius: 4px; cursor: pointer;
    color: #fff; font-size: 14px; vertical-align: middle;
}
#bh-theme-btn:hover, #bh-theme-btn:focus-visible { background: rgba(255,255,255,0.15); }
#bh-theme-btn svg { width: 17px; height: 17px; display: block; }
#bh-theme-btn .bh-theme-sun { display: none; }
html.bh-dark #bh-theme-btn .bh-theme-sun { display: block; }
html.bh-dark #bh-theme-btn .bh-theme-moon { display: none; }
/* Room for the switcher: the left column was a fixed 50% (col-md-6) although its content is
   short, so the right group ran 13px off screen at 768px. Let it take what is left instead. */
#header-top-bar .row > .col { flex: 1 1 0%; width: auto; max-width: none; min-width: 0; }
@media (max-width: 575.98px) {
    #header-top-bar .topbar-nav .list-inline-item { margin-right: .3rem !important; }
    #header-top-bar .topbar-nav .list-inline-item:last-child { margin-right: 0 !important; }
}
/* ---------- Logo pair (BHCMS-DARK-LOGO) ---------- */
.bh-logo-dark { display: none !important; }
html.bh-dark .bh-logo-light { display: none !important; }
html.bh-dark .bh-logo-dark { display: inline-block !important; }

/* ================= Dark theme ================= */
html.bh-dark {
    --bs-body-bg: #0b1222;
    --bs-body-bg-rgb: 11, 18, 34;
    --bs-body-color: #cbd5e1;
    --bs-body-color-rgb: 203, 213, 225;
    --bs-heading-color: #f1f5f9;
    --bs-emphasis-color: #f1f5f9;
    --bs-secondary-color: #94a3b8;
    --bs-border-color: rgba(255,255,255,0.1);
    --bs-gray-100: #131c31;
    --bs-gray-200: #131c31;
    --bs-gray-300: #26324a;
    /* --bs-white-rgb / --bs-light-rgb / --bs-secondary-rgb stay as they are: .text-white and
       friends read them too. Light backgrounds are re-painted per class further down. */
    --bs-link-color: #60a5fa;
    --bs-link-hover-color: #93c5fd;

    --bh-bg-light: #0f1729;
    --bh-bg-cream: #0f1729;
    --bh-bg-white: #131c31;
    --bh-card-bg: #131c31;
    --bh-card-border: rgba(255,255,255,0.08);
    --bh-card-shadow: 0 2px 8px rgba(0,0,0,0.35);
    --bh-card-shadow-hover: 0 12px 40px rgba(0,0,0,0.5);
    --bh-gradient-pricing: linear-gradient(180deg, #0f1729 0%, #0b1222 100%);
    --bh-mesh-1: none;

    color-scheme: dark;
}
html.bh-dark body { background-color: #0b1222; color: #cbd5e1; }
html.bh-dark h1, html.bh-dark h2, html.bh-dark h3,
html.bh-dark h4, html.bh-dark h5, html.bh-dark h6 { color: #f1f5f9; }

/* Cart dropdown */
html.bh-dark #ms-cart-dropdown { background: #131c31; border-color: rgba(255,255,255,0.1); box-shadow: 0 8px 24px rgba(0,0,0,0.5); }
html.bh-dark .ms-cart-drop-header,
html.bh-dark .ms-cart-drop-item,
html.bh-dark .ms-cart-drop-footer { border-color: rgba(255,255,255,0.08); }
html.bh-dark #ms-cart-dropdown .ms-cart-drop-header,
html.bh-dark #ms-cart-dropdown .ms-cart-drop-header i,
html.bh-dark #ms-cart-dropdown .ms-cart-drop-empty span,
html.bh-dark .ms-cart-drop-name { color: #e2e8f0 !important; }
html.bh-dark .ms-cart-drop-price,
html.bh-dark .ms-cart-drop-total { color: #f1f5f9; }
html.bh-dark #ms-cart-dropdown a { color: #60a5fa !important; }
html.bh-dark #ms-cart-dropdown a.ms-cart-drop-action { color: #fff !important; }
html.bh-dark .ms-cart-drop-subitem { background: rgba(255,255,255,0.03); }

/* Preloader + header */
html.bh-dark #preloader { background-color: #0b1222 !important; }

/* BHCMS-DARK-GENERATED */
/* Generated by custom-work/dark-mode/gen_dark.py from modern.css, custom.css and the pages own <style> blocks - do not edit by hand */
html.bh-dark .main .section-heading p { color: #94a3b8; }
html.bh-dark .main .section-heading h2 { color: #f1f5f9; }
html.bh-dark .main .gray-light-bg { background-color: #131c31 !important; }
html.bh-dark .main .domain-search-wrap { background-color: #131c31 !important; }
html.bh-dark .main .domain-search-wrap h4 { color: #f1f5f9; }
html.bh-dark .main .domain-search-wrap .form-control { border-color: rgba(255,255,255,0.08) !important; }
html.bh-dark .main .single-promo-card { background-color: #131c31 !important; }
html.bh-dark .main .single-promo-card h5 { color: #f1f5f9; }
html.bh-dark .main .single-promo-card p { color: #94a3b8; }
html.bh-dark .main .single-service { background-color: #131c31 !important; }
html.bh-dark .main .single-service h4 { color: #f1f5f9; }
html.bh-dark .main .pricing-new-wrapper .pricing-info h5 { color: #f1f5f9; }
html.bh-dark .main .single-price-package { background-color: #131c31 !important; }
html.bh-dark .main .single-price-package .package_header .package_name h3 { color: #f1f5f9; }
html.bh-dark .main .single-pricing-pack-2 { background-color: #131c31 !important; }
html.bh-dark .main .single-pricing-pack-2 .package-title { color: #f1f5f9; }
html.bh-dark .main .single-pricing-pack-2 .pricing-price .h2 { color: #f1f5f9; }
html.bh-dark .main .features-box { background-color: #131c31 !important; }
html.bh-dark .main .features-box h5 { color: #f1f5f9; }
html.bh-dark .main .features-box p { color: #94a3b8; }
html.bh-dark .main .cta-content-wrap h2 { color: #f1f5f9; }
html.bh-dark .main .cta-content-wrap p { color: #cbd5e1; }
html.bh-dark .main > section.section-bg.text-white .btn-light { background-color: #131c31 !important; color: #f1f5f9 !important; }
html.bh-dark .main .support-cta h5 { color: #f1f5f9; }
html.bh-dark .main .network-map-wrap { background-color: #131c31; }
html.bh-dark .main .accordion-button { color: #f1f5f9; }
html.bh-dark .main .accordion-body { color: #cbd5e1; }
html.bh-dark .main input[type="text"].form-control:not(.rounded-pill), html.bh-dark .main textarea.form-control { border-color: rgba(255,255,255,0.08); }
html.bh-dark .main .bh-textarea { border-color: rgba(255,255,255,0.08) !important; }
html.bh-dark .main .content-with-sidebar { background-color: #131c31; }
html.bh-dark .main .content-with-sidebar h3, html.bh-dark .main .content-with-sidebar h5 { color: #f1f5f9; }
html.bh-dark .main .content-with-sidebar p { color: #cbd5e1; }
html.bh-dark .main .feature-content-wrap h2 { color: #f1f5f9; }
html.bh-dark .main .feature-content-wrap p { color: #cbd5e1; }
html.bh-dark .main .switch-wrap { background-color: #131c31; }
html.bh-dark .modern-glass { border-color: rgba(255,255,255,0.08); }
html.bh-dark .main .table-responsive::-webkit-scrollbar-track { background-color: #131c31; }
html.bh-dark .main .table-responsive::-webkit-scrollbar-thumb { background-color: #0f1729; }
html.bh-dark .bg-header { background-color: #131c31 !important; }
html.bh-dark .main-header-menu-wrap { background-color: #131c31 !important; }
html.bh-dark .nav-link { color: #f1f5f9 !important; }
html.bh-dark .section-bg { background-color: #0f1729 !important; }
html.bh-dark .hs-sub-menu, html.bh-dark .hs-mega-menu { background-color: #131c31 !important; }
html.bh-dark .text-semi-black { color: #cbd5e1; }
html.bh-dark .bh-post-body { background-color: #131c31; }
html.bh-dark .bh-article { color: #cbd5e1; }
html.bh-dark .bh-article h2 { color: #f1f5f9; }
html.bh-dark .bh-article h3 { color: #f1f5f9; }
html.bh-dark .bh-article blockquote { background-color: #131c31; color: #cbd5e1; }
html.bh-dark .bh-share { border-top-color: rgba(255,255,255,0.08); }
html.bh-dark .bh-share .lbl { color: #f1f5f9; }
html.bh-dark .bh-related { background-color: #131c31; }
html.bh-dark .bh-rcard { background-color: #131c31; border-color: rgba(255,255,255,0.08); }
html.bh-dark .bh-rcard .t { background-color: #0f1729; }
html.bh-dark .bh-rcard h4 { color: #f1f5f9; }
html.bh-dark .bh-cta-box a { background-color: #131c31; }
html.bh-dark .bh-blog-wrap { background-color: #131c31; }
html.bh-dark .bh-cats a { background-color: #131c31; border-color: rgba(255,255,255,0.08); color: #cbd5e1; }
html.bh-dark .bh-card { background-color: #131c31; border-color: rgba(255,255,255,0.08); }
html.bh-dark .bh-card .thumb { background-color: #0f1729; }
html.bh-dark .bh-badge { background-color: #0f1729; }
html.bh-dark .bh-card h3 a { color: #f1f5f9; }
html.bh-dark .bh-card p { color: #94a3b8; }
html.bh-dark .bh-meta { border-top-color: rgba(255,255,255,0.08); }
html.bh-dark .bh-pagination a, html.bh-dark .bh-pagination span { background-color: #131c31; border-color: rgba(255,255,255,0.08); color: #cbd5e1; }
html.bh-dark .bh-empty { color: #94a3b8; }
html.bh-dark .header-card { background-color: #131c31; }
html.bh-dark .dns-lookup-section { background-color: #0f1729; }
html.bh-dark .dns-page-subtitle { color: #94a3b8; }
html.bh-dark .dns-form .form-label { color: #cbd5e1; }
html.bh-dark .input-small { border-color: rgba(255,255,255,0.08); background-color: #131c31; }
html.bh-dark .dns-card { border-color: rgba(255,255,255,0.08); background-color: #131c31; }
html.bh-dark .header-ash { border-bottom-color: rgba(255,255,255,0.08); }
html.bh-dark .dns-table-wrap { border-color: rgba(255,255,255,0.08); background-color: #131c31; }
html.bh-dark table#dnsTable thead th { border-right-color: rgba(255,255,255,0.08); }
html.bh-dark table#dnsTable tbody td { color: #cbd5e1; background-color: #131c31; border-top-color: rgba(255,255,255,0.08); }
html.bh-dark table#dnsTable tbody tr:nth-child(even) td { background-color: #131c31; }
html.bh-dark .header-ash { background-color: #0f1729; color: #f1f5f9; }
html.bh-dark .results-title { background-color: #0f1729; }
html.bh-dark .table tbody tr:hover { background-color: #0f1729; }
html.bh-dark .table-highlight { background-color: #131c31 !important; }
html.bh-dark .gw-plan-card { background-color: #131c31; border-color: rgba(255,255,255,0.08); }
html.bh-dark .gw-plan-header { border-bottom-color: rgba(255,255,255,0.08); }
html.bh-dark .gw-plan-header .tagline { color: #94a3b8; }
html.bh-dark .gw-plan-header .price-wrap .h2 { color: #f1f5f9; }
html.bh-dark .gw-plan-header .price-wrap .h2 span.per { color: #94a3b8; }
html.bh-dark .gw-feature-group-title { color: #94a3b8; border-bottom-color: rgba(255,255,255,0.08); }
html.bh-dark .gw-feature-group ul li { color: #cbd5e1; }
html.bh-dark .gw-why-card { background-color: #131c31; border-color: rgba(255,255,255,0.08); }
html.bh-dark .gw-why-card .icon-wrap { background-color: #131c31; }
html.bh-dark .gw-why-card p { color: #94a3b8; }
@media only screen and (max-width: 767px) { html.bh-dark .responsive-table tr { border-bottom-color: rgba(255,255,255,0.08); } }
html.bh-dark .bh-pass { background-color: #0f1729; }
html.bh-dark .bh-fail { background-color: #0f1729; }
html.bh-dark .bh-muted { color: #94a3b8; }
html.bh-dark .bh-export-btn { border-color: rgba(255,255,255,0.08); background-color: #131c31; color: #cbd5e1; }
html.bh-dark .bh-export-btn:hover { background-color: #131c31; }
html.bh-dark .bh-export-btn.bh-copied { background-color: #0f1729; }
/* END BHCMS-DARK-GENERATED */

/* modern.css paints headings with var(--bh-navy); its only background use is the clients strip */
html.bh-dark { --bh-navy: #f1f5f9; }
html.bh-dark .main .client-section { background: #080F2C !important; }
html.bh-dark .main > section.section-bg.text-white .btn-light { color: #080F2C !important; }

/* Headings: main.css colours them #363636 (and h-classes), modern.css uses the navy above.
   Coloured/utility headings (text-*) and inline-coloured ones keep their own colour. */
html.bh-dark :is(h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6):not([class*="text-"]):not([style*="color"]) { color: #f1f5f9 !important; }
html.bh-dark .text-black, html.bh-dark .text-dark { color: #f1f5f9 !important; }
html.bh-dark .text-muted { color: #94a3b8 !important; }

/* Surfaces: sections, then cards */
html.bh-dark .gray-light-bg,
html.bh-dark .main .gray-light-bg,
html.bh-dark .section-bg:not(.text-white),
html.bh-dark .feature-tab-section,
html.bh-dark .network-map-section { background: #0f1729 !important; }
html.bh-dark .section-bg.text-white { background-color: #0f1729 !important; }
html.bh-dark .footer-bottom,
html.bh-dark .main .footer-bottom.gray-light-bg { background: #070d1a !important; }

html.bh-dark .card { --bs-card-bg: #131c31; --bs-card-border-color: rgba(255,255,255,0.08); --bs-card-cap-bg: rgba(255,255,255,0.03); color: #cbd5e1; }
html.bh-dark .bg-white,
html.bh-dark .card,
html.bh-dark .single-promo-card,
html.bh-dark .single-service,
html.bh-dark .single-pricing-pack-2,
html.bh-dark .popular-price,
html.bh-dark .pricing-new-wrapper,
html.bh-dark .single-price-package,
html.bh-dark .features-box,
html.bh-dark .single-feature-wrap,
html.bh-dark .single-icon-wrap,
html.bh-dark .domain-search-wrap,
html.bh-dark .content-with-sidebar,
html.bh-dark .switch-wrap,
html.bh-dark .header-card,
html.bh-dark .gw-plan-card,
html.bh-dark .gw-why-card,
html.bh-dark .network-map-wrap,
html.bh-dark .gray-light-bg .faq-wrap .card .card-body {
    background: #131c31 !important;
    border-color: rgba(255,255,255,0.08) !important;
}
html.bh-dark .border { border-color: rgba(255,255,255,0.1) !important; }
html.bh-dark .shadow-sm, html.bh-dark .shadow { box-shadow: 0 2px 10px rgba(0,0,0,0.45) !important; }

/* Text the theme hard-codes dark inside those cards */
html.bh-dark .price-package-body .single-price-package .package_body-horizontal .package_list .list-item .list-item-name { color: #e2e8f0; }
html.bh-dark .price-package-body .single-price-package .package_body-horizontal .package_list .list-item .list-item-desc { color: #94a3b8; }
html.bh-dark .pricing-new-wrapper li p { color: #94a3b8; }
html.bh-dark .pricing-new-wrapper li p strong { color: #e2e8f0; }
html.bh-dark .single-pricing-pack-2 .pricing-price small,
html.bh-dark .single-pricing-pack-2 .pricing-price .small { color: #94a3b8; }

/* Links in body copy: the brand #0948b3 is too dark on these surfaces */
html.bh-dark .main a:not(.btn):not([class*="text-"]):not(.nav-link):not(.dropdown-item),
html.bh-dark section a:not(.btn):not([class*="text-"]):not(.nav-link):not(.dropdown-item):not([style*="color"]),
html.bh-dark .read-more-link,
html.bh-dark .footer-bottom a { color: #60a5fa; }
html.bh-dark .btn-outline-primary { --bs-btn-color: #60a5fa; --bs-btn-border-color: #60a5fa; color: #60a5fa; border-color: #60a5fa; }
html.bh-dark .btn-outline-primary:hover { color: #fff; }
html.bh-dark .text-success { color: #34d399 !important; }

/* Bootstrap components */
html.bh-dark .accordion { --bs-accordion-bg: #131c31; --bs-accordion-color: #cbd5e1; --bs-accordion-border-color: rgba(255,255,255,0.08); --bs-accordion-btn-color: #f1f5f9; --bs-accordion-active-bg: #1a2540; --bs-accordion-active-color: #f1f5f9; }
html.bh-dark .accordion-item { background-color: #131c31 !important; border-color: rgba(255,255,255,0.08) !important; }
html.bh-dark .accordion-button { background-color: transparent; color: #f1f5f9 !important; }
html.bh-dark .accordion-button::after { filter: invert(1) brightness(1.6); }
html.bh-dark .table { --bs-table-bg: transparent; --bs-table-color: #cbd5e1; --bs-table-border-color: rgba(255,255,255,0.08); --bs-table-striped-bg: rgba(255,255,255,0.03); --bs-table-striped-color: #cbd5e1; --bs-table-hover-bg: rgba(255,255,255,0.05); --bs-table-hover-color: #f1f5f9; color: #cbd5e1; }
html.bh-dark .form-control,
html.bh-dark .form-select,
html.bh-dark input[type="text"], html.bh-dark input[type="email"], html.bh-dark input[type="search"],
html.bh-dark input[type="tel"], html.bh-dark input[type="url"], html.bh-dark input[type="number"],
html.bh-dark textarea, html.bh-dark select {
    background-color: #0f1729 !important; color: #e2e8f0 !important; border-color: rgba(255,255,255,0.14) !important;
}
html.bh-dark .form-control::placeholder, html.bh-dark textarea::placeholder, html.bh-dark input::placeholder { color: #64748b !important; }
html.bh-dark .form-label, html.bh-dark label { color: #cbd5e1; }
html.bh-dark .btn-light { --bs-btn-bg: #1e2a44; --bs-btn-border-color: #1e2a44; --bs-btn-color: #e2e8f0; }
html.bh-dark .main > section.section-bg.text-white .btn-light { background: #fff !important; }

/* Main navbar + mobile menu */
html.bh-dark .main-header-menu-wrap,
html.bh-dark .main-header-menu-wrap.bg-transparent,
html.bh-dark .offcanvas { background-color: #0b1222 !important; border-color: rgba(255,255,255,0.08) !important; }
html.bh-dark .offcanvas-header { border-color: rgba(255,255,255,0.08) !important; }
html.bh-dark .btn-close { filter: invert(1) grayscale(1) brightness(2); }

html.bh-dark .bg-header { background-color: #0b1222 !important; }
html.bh-dark .main-header-menu-wrap { box-shadow: 0 1px 0 rgba(255,255,255,0.06); }
html.bh-dark .nav-link { color: #e2e8f0 !important; }
html.bh-dark .nav-link:hover, html.bh-dark .nav-link:focus, html.bh-dark .nav-link.active { color: #fff !important; }
html.bh-dark .hs-sub-menu, html.bh-dark .hs-mega-menu { background-color: #131c31 !important; border-color: rgba(255,255,255,0.08) !important; box-shadow: 0 10px 30px rgba(0,0,0,0.5) !important; }

html.bh-dark .hs-mega-menu-opened a.custom-nav-link::before,
html.bh-dark .hs-sub-menu-opened a.custom-nav-link::before { background-color: #131c31; }
html.bh-dark .u-header__promo { background-color: #0f1729; }
html.bh-dark .u-header__promo-title { color: #f1f5f9; }
html.bh-dark .title-with-icon-link { color: #94a3b8; }
html.bh-dark .title-with-icon-link:hover .u-header__promo-title { color: #60a5fa; }
html.bh-dark .navbar-expand .u-header__promo-card-deck .title-with-icon-item:not(:last-child) .title-with-icon-link::after,
html.bh-dark .navbar-expand-md .u-header__promo-card-deck .title-with-icon-item:not(:last-child) .title-with-icon-link::after { border-color: rgba(255,255,255,0.08); }

/* Bootstrap dropdowns (the mobile menu's submenus use them) */
html.bh-dark .dropdown-menu { --bs-dropdown-bg: #131c31; --bs-dropdown-color: #cbd5e1; --bs-dropdown-border-color: rgba(255,255,255,0.08); --bs-dropdown-link-color: #e2e8f0; --bs-dropdown-link-hover-color: #fff; --bs-dropdown-link-hover-bg: #1e2a44; --bs-dropdown-divider-bg: rgba(255,255,255,0.08); }
html.bh-dark .navbar-toggler, html.bh-dark .navbar-toggler .fa-bars { color: #e2e8f0 !important; }

/* main.css forces .btn-light text to #475569 !important */
html.bh-dark .btn-light { color: #e2e8f0 !important; }
/* Monthly / yearly price toggle label */
html.bh-dark .form-switch .beforeinput.text-success,
html.bh-dark .form-switch .afterinput.text-success { color: #60a5fa !important; }
/* Editor-pasted near-black inline colours in CMS text (payment-gateway page); accents keep theirs */
html.bh-dark [style*="color: rgb(32, 33, 36)"],
html.bh-dark [style*="color: rgb(34, 34, 34)"] { color: #cbd5e1 !important; }
html.bh-dark [style*="color: rgb(31, 73, 125)"] { color: #93c5fd !important; }

/* END BHCMS-DARK-MODE */
