/* Dacula 1.3.1 — live full-site mega navigation.
   Loaded AFTER all previous theme styles; no original component styles replaced. */
.bcl-app .bcl-header{overflow:visible;z-index:1000}
.bcl-app .bcl-header .bcl-header-row{
 position:relative;display:flex;flex-wrap:nowrap;align-items:center;justify-content:space-between;
 gap:clamp(14px,2vw,30px);min-height:84px;width:calc(100% - 56px);max-width:1440px;margin-inline:auto
}
.bcl-app .bcl-header .bcl-logo-wrap{display:flex;flex:0 0 auto;min-width:0}
.bcl-app .bcl-header .bcl-logo{width:clamp(144px,11.5vw,178px);max-height:65px;object-fit:contain}
.bcl-app .dcl-nav-actions{display:flex;flex:1 1 auto;justify-content:flex-end;gap:clamp(8px,1vw,16px);align-items:center;min-width:0;margin-left:auto}
.bcl-app .dcl-desktop-nav{display:block;flex:0 1 auto;min-width:0}
.bcl-app .dcl-nav-root,.bcl-app .dcl-page-list{margin:0;padding:0;list-style:none}
.bcl-app .dcl-nav-root{display:flex;align-items:center;justify-content:flex-end;gap:clamp(2px,.32vw,7px)}
.bcl-app .dcl-nav-item{margin:0;padding:0;position:relative;list-style:none}
.bcl-app .dcl-nav-home,.bcl-app .dcl-nav-button{
 display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:10px clamp(8px,.69vw,12px);
 border:1px solid transparent;border-radius:9px;background:transparent;color:#163454;
 font:750 clamp(12px,.82vw,14px)/1.25 var(--bcl-font-body,system-ui,sans-serif);
 white-space:nowrap;text-decoration:none;cursor:pointer;transition:background .18s,color .18s,border-color .18s;
}
.bcl-app .dcl-nav-button svg{width:13px;height:13px;transition:transform .18s ease;flex:0 0 auto}
.bcl-app .dcl-nav-home:hover,.bcl-app .dcl-nav-home.is-current,
.bcl-app .dcl-nav-button:hover,.bcl-app .dcl-nav-group.is-open>.dcl-nav-button,
.bcl-app .dcl-nav-group.has-current>.dcl-nav-button{background:#edf5ff;color:#0759ba;border-color:#d8e8fd}
.bcl-app .dcl-nav-group.is-open>.dcl-nav-button svg,
.bcl-app .dcl-nav-group:hover>.dcl-nav-button svg{transform:rotate(180deg)}
.bcl-app .dcl-nav-button:focus-visible,.bcl-app .dcl-nav-home:focus-visible,
.bcl-app .dcl-page-link:focus-visible,.bcl-app .dcl-mobile-trigger:focus-visible,
.bcl-app .dcl-mobile-group-trigger:focus-visible,.bcl-app .dcl-mobile-home:focus-visible{
 outline:3px solid #60a5fa;outline-offset:3px
}
/* Each dropdown belongs to its own trigger, not the distant right edge of the header.
   The panel begins 3px BEFORE the trigger ends, forming a real pointer bridge.
   Padding is part of the interactive hit area, not an uncrossable hover gap. */
.bcl-app .dcl-nav-panel{
 position:absolute;top:calc(100% - 3px);left:0;right:auto;z-index:150;
 width:min(690px,calc(100vw - 52px));max-width:none;
 padding:13px 0 0;visibility:hidden;opacity:0;transform:translateY(-3px);
 pointer-events:none;transition:opacity .16s,transform .16s,visibility .16s;
}
.bcl-app .dcl-nav-root>.dcl-nav-group:nth-child(n+4)>.dcl-nav-panel{left:auto;right:0}
.bcl-app .dcl-nav-group.is-open>.dcl-nav-panel,
.bcl-app .dcl-nav-group:not(.is-dismissed):hover>.dcl-nav-panel,
.bcl-app .dcl-nav-group:not(.is-dismissed):focus-within>.dcl-nav-panel{
 visibility:visible;opacity:1;transform:translateY(0);pointer-events:auto
}
.bcl-app .dcl-nav-group.is-dismissed>.dcl-nav-panel{visibility:hidden;opacity:0;pointer-events:none}
.bcl-app .dcl-nav-panel-header{
 display:flex;justify-content:space-between;align-items:center;gap:16px;
 padding:19px 23px;background:linear-gradient(110deg,#f0f7ff,#fff);border:1px solid #d8e5f4;
 border-bottom:0;border-radius:16px 16px 0 0;box-shadow:0 13px 32px rgba(10,38,77,.12)
}
.bcl-app .dcl-nav-panel-header div{display:grid;gap:3px}
.bcl-app .dcl-nav-panel-header strong{font-size:1.05rem;font-weight:850;color:#092b58}
.bcl-app .dcl-nav-panel-header span{font-size:.78rem;color:#526781}
.bcl-app .dcl-nav-panel-header .dcl-nav-count{background:#dcecff;color:#08498f;border-radius:99px;padding:5px 11px;font-weight:800;white-space:nowrap}
.bcl-app .dcl-nav-panel-scroll{
 padding:14px;max-height:min(66vh,610px);overflow-y:auto;overscroll-behavior:contain;
 border:1px solid #d8e5f4;border-top:0;border-radius:0 0 16px 16px;
 background:#fff;box-shadow:0 20px 38px rgba(10,38,77,.14)
}
.bcl-app .dcl-nav-panel-scroll>.dcl-page-list{
 display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:10px;row-gap:5px;align-items:start;
}
.bcl-app .dcl-page-item{list-style:none;margin:0;min-width:0}
.bcl-app .dcl-page-link{
 display:flex;align-items:flex-start;gap:9px;width:100%;padding:11px 12px;border-radius:9px;
 color:#183b64;text-decoration:none;font-size:.86rem;font-weight:690;line-height:1.42;
 overflow-wrap:anywhere;transition:background .16s,color .16s
}
.bcl-app .dcl-page-link:hover,.bcl-app .dcl-page-link.is-current{background:#eef6ff;color:#0759ba}
.bcl-app .dcl-page-link-icon{flex:0 0 19px;display:grid;place-items:center;width:19px;height:19px;
 border-radius:6px;background:#eaf3ff;color:#1762b4;font-size:.8rem;font-weight:900}
.bcl-app .dcl-page-list-nested{padding:0 0 3px 15px;margin:0 0 5px 21px;border-left:2px solid #e7f0fb}
.bcl-app .dcl-page-list-nested .dcl-page-link{padding:8px 9px;font-size:.82rem;font-weight:560}
.bcl-app .dcl-page-list-nested .dcl-page-link-icon{background:transparent;color:#5985b5}
/* Compact native-details search keeps its real search form without crowding the links. */
.bcl-app .dcl-search-control{position:relative;display:block;flex:0 0 42px;margin:0;min-width:42px}
.bcl-app .dcl-search-toggle{display:flex;align-items:center;justify-content:center;width:42px;height:42px;
 border:1px solid #dce7f4;border-radius:11px;background:#f6f9fe;color:#0958ab;cursor:pointer;list-style:none;transition:background .18s,color .18s}
.bcl-app .dcl-search-toggle::-webkit-details-marker{display:none}
.bcl-app .dcl-search-toggle::marker{content:''}
.bcl-app .dcl-search-toggle:hover,.bcl-app .dcl-search-control[open]>.dcl-search-toggle{background:#e5f1ff;color:#063f87}
.bcl-app .dcl-search-toggle:focus-visible{outline:3px solid #60a5fa;outline-offset:3px}
.bcl-app .dcl-search-control>.dcl-header-search{
 display:none;position:absolute;right:0;left:auto;top:calc(100% + 14px);z-index:180;
 align-items:center;width:min(360px,calc(100vw - 36px));max-width:none;height:58px;padding:7px;
 border:1px solid #d3e2f2;border-radius:13px;background:#fff;
 box-shadow:0 15px 35px rgba(11,41,79,.17);overflow:visible;margin:0;
}
.bcl-app .dcl-search-control[open]>.dcl-header-search{display:flex}
.bcl-app .dcl-search-control>.dcl-header-search::before{
 content:'';position:absolute;top:-15px;right:0;width:52px;height:15px;
}
.bcl-app .dcl-search-control>.dcl-header-search input{
 display:block!important;min-width:0!important;flex:1 1 auto;width:100%!important;height:40px;
 padding:0 11px!important;font-size:14px!important;color:#173452!important;
 background:#fff!important;border:0!important;box-shadow:none!important;outline:0
}
.bcl-app .dcl-search-control>.dcl-header-search .dcl-search-submit{
 width:auto;height:40px;min-width:78px;flex:0 0 auto;padding:0 13px;background:#0759ba;color:#fff;
 border:0;border-radius:8px;font:750 13px/1 var(--bcl-font-body,system-ui,sans-serif);cursor:pointer
}
.bcl-app .dcl-nav-actions>.bcl-header-cta{
 flex:0 0 auto;min-height:44px;padding:12px clamp(11px,1vw,17px);border-radius:10px;
 white-space:nowrap;font-size:clamp(11px,.78vw,13px);line-height:1.22;
}
.bcl-app .dcl-mobile-trigger,.bcl-app .dcl-mobile-panel{display:none}
/* Keep desktop navigation on sufficiently wide viewports; display an accessible
   accordion on medium screens before crowded/overlapping links can occur. */
@media(max-width:1280px){
 .bcl-app .bcl-header .bcl-header-row{gap:14px;min-height:76px;width:calc(100% - 38px)}
 .bcl-app .bcl-header .bcl-logo{width:158px}
}
/* Mobile and tablet navigation: accordion rather than a horizontal overflow strip. */
@media(max-width:1280px){
 .bcl-app .dcl-desktop-nav{display:none!important}
 .bcl-app .dcl-nav-actions{margin-left:auto;gap:12px}
 .bcl-app .dcl-mobile-trigger{
  display:inline-flex!important;align-items:center;justify-content:center;gap:9px;min-width:84px;height:43px;
  border:1px solid #cfdef0;border-radius:11px;background:#f0f7ff;color:#0752a0;
  font-weight:850;font-size:.82rem;cursor:pointer;padding:0 12px
 }
 .bcl-app .dcl-mobile-trigger:hover,.bcl-app .dcl-mobile-trigger.is-active{background:#dcecff;border-color:#8bb9f2}
 .bcl-app .dcl-hamburger{display:block;position:relative;width:19px;height:16px;flex:0 0 19px}
 .bcl-app .dcl-hamburger span{display:block;position:absolute;left:0;width:19px;height:2px;background:#0752a0;border-radius:3px;transition:transform .2s,opacity .2s}
 .bcl-app .dcl-hamburger span:first-child{top:0}
 .bcl-app .dcl-hamburger span:nth-child(2){top:7px}
 .bcl-app .dcl-hamburger span:last-child{top:14px}
 .bcl-app .dcl-mobile-trigger.is-active .dcl-hamburger span:first-child{transform:translateY(7px) rotate(45deg)}
 .bcl-app .dcl-mobile-trigger.is-active .dcl-hamburger span:nth-child(2){opacity:0}
 .bcl-app .dcl-mobile-trigger.is-active .dcl-hamburger span:last-child{transform:translateY(-7px) rotate(-45deg)}
 .bcl-app .dcl-mobile-panel{
  display:block;position:absolute;top:100%;left:0;right:0;z-index:160;width:100%;
  max-height:calc(100vh - 100px);max-height:calc(100dvh - 100px);overflow-y:auto;overscroll-behavior:contain;
  background:#fff;border-top:1px solid #dce8f7;border-bottom:1px solid #cddff3;
  box-shadow:0 20px 35px rgba(9,35,75,.16)
 }
 .bcl-app .dcl-mobile-panel[hidden],.bcl-app .dcl-mobile-section[hidden]{display:none!important}
 .bcl-app .dcl-mobile-panel-inner{width:min(100% - 32px,720px);margin:0 auto;padding:16px 0 24px}
 .bcl-app .dcl-mobile-search{display:flex;align-items:center;margin:0 0 12px;height:45px;border:1px solid #dce7f4;background:#f7faff;border-radius:10px;overflow:hidden}
 .bcl-app .dcl-mobile-search input{flex:1 1 auto;width:100%;min-width:0;padding:10px 12px;border:0;background:transparent;box-shadow:none;color:#153b69;font-size:14px}
 .bcl-app .dcl-mobile-search button{display:grid;place-items:center;width:45px;flex:0 0 45px;height:45px;background:#0759ba;color:#fff;border:0;cursor:pointer}
 .bcl-app .dcl-mobile-home,.bcl-app .dcl-mobile-group-trigger{
  display:flex;align-items:center;justify-content:space-between;width:100%;min-height:52px;
  text-align:left;padding:13px 13px;border-radius:10px;background:#fff;border:0;color:#153b69;
  font-size:.95rem;font-weight:790;text-decoration:none;cursor:pointer
 }
 .bcl-app .dcl-mobile-home:hover,.bcl-app .dcl-mobile-home.is-current,
 .bcl-app .dcl-mobile-group-trigger:hover,.bcl-app .dcl-mobile-group.has-current>.dcl-mobile-group-trigger,
 .bcl-app .dcl-mobile-group.is-open>.dcl-mobile-group-trigger{background:#eef6ff;color:#0759ba}
 .bcl-app .dcl-mobile-group{border-bottom:1px solid #eef2f8;padding-bottom:3px}
 .bcl-app .dcl-mobile-group-trigger small{display:inline-grid;place-items:center;min-width:23px;height:23px;
  padding:0 6px;margin-left:6px;border-radius:6px;background:#e8f1fc;color:#4876a9;font-size:.72rem}
 .bcl-app .dcl-mobile-group-trigger svg{width:17px;height:17px;transition:transform .18s}
 .bcl-app .dcl-mobile-group.is-open>.dcl-mobile-group-trigger svg{transform:rotate(180deg)}
 .bcl-app .dcl-mobile-section{padding:4px 0 11px 10px}
 .bcl-app .dcl-mobile-section>.dcl-page-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 8px}
 .bcl-app .dcl-mobile-section .dcl-page-link{min-height:42px;padding:10px;font-size:.86rem}
 .bcl-app .dcl-mobile-section .dcl-page-list-nested{margin-left:12px;padding-left:10px}
 .bcl-app .dcl-mobile-quote{display:flex;align-items:center;justify-content:space-between;padding:15px 18px;
  background:#0759ba;color:#fff;border-radius:11px;font-size:.94rem;font-weight:850;text-decoration:none;margin-top:15px}
 .bcl-app .dcl-mobile-quote:hover{background:#06458d;color:#fff}
}
@media(max-width:900px){
 /* Existing legacy rules hide CTA at 900px; keep the quote link inside the mobile menu instead. */
 .bcl-app .dcl-nav-actions>.bcl-header-cta{display:none!important}
 .bcl-app .dcl-search-control{display:block;flex-basis:42px}
}
@media(max-width:600px){
 .bcl-app .dcl-search-control{display:block}
 .bcl-app .dcl-mobile-section>.dcl-page-list{grid-template-columns:minmax(0,1fr)}
 .bcl-app .dcl-mobile-trigger{min-width:78px}
 .bcl-app .bcl-header .bcl-logo{width:140px}
 .bcl-app .dcl-mobile-panel-inner{width:calc(100% - 28px)}
 .bcl-app .dcl-mobile-panel{max-height:calc(100dvh - 85px)}
}
@media(prefers-reduced-motion:reduce){
 .bcl-app .dcl-nav-panel,.bcl-app .dcl-nav-button svg,.bcl-app .dcl-hamburger span,
 .bcl-app .dcl-mobile-group-trigger svg{transition:none!important}
}

/* Built-in theme mobile-preview toggle may be used at a desktop browser width. */
.bcl-app.is-mobile-preview .dcl-desktop-nav{display:none!important}
.bcl-app.is-mobile-preview .dcl-nav-actions>.bcl-header-cta{display:none!important}
.bcl-app.is-mobile-preview .dcl-mobile-trigger{display:inline-flex!important;align-items:center;justify-content:center;gap:9px;min-width:84px;min-height:43px;padding:0 12px;border:1px solid #cfdef0;border-radius:11px;background:#f0f7ff;color:#0752a0;font-size:.82rem;font-weight:850;cursor:pointer}
.bcl-app.is-mobile-preview .dcl-hamburger{display:flex;flex-direction:column;gap:4px;width:19px}
.bcl-app.is-mobile-preview .dcl-hamburger span{display:block;width:19px;height:2px;background:#0752a0}
.bcl-app.is-mobile-preview .dcl-mobile-panel:not([hidden]){display:block;position:absolute;top:100%;left:0;right:0;z-index:160;max-height:calc(100vh - 100px);overflow-y:auto;background:#fff;box-shadow:0 20px 35px rgba(9,35,75,.16)}
.bcl-app.is-mobile-preview .dcl-mobile-panel-inner{padding:18px}
.bcl-app.is-mobile-preview .dcl-mobile-home,.bcl-app.is-mobile-preview .dcl-mobile-group-trigger{display:flex;align-items:center;justify-content:space-between;width:100%;padding:12px;background:transparent;border:0;border-bottom:1px solid #eef2f8;color:#153b69;text-align:left;font-weight:800}
.bcl-app.is-mobile-preview .dcl-mobile-section[hidden]{display:none!important}
.bcl-app.is-mobile-preview .dcl-mobile-section .dcl-page-list{list-style:none;margin:0;padding:0}
.bcl-app.is-mobile-preview .dcl-mobile-quote{display:block;padding:13px;background:#0759ba;color:#fff;border-radius:9px;margin-top:12px}

/* Small phones have a search field in the mobile accordion, keeping the header uncluttered. */
@media(max-width:390px){
 .bcl-app .dcl-search-control{display:none}
 .bcl-app .bcl-header .bcl-header-row{width:calc(100% - 24px);gap:9px}
 .bcl-app .bcl-header .bcl-logo{width:135px}
}
/* Theme's simulated mobile preview at desktop resolution must retain responsive controls. */
.bcl-app.is-mobile-preview .dcl-search-control{display:none}
.bcl-app.is-mobile-preview .dcl-desktop-nav{display:none!important}
.bcl-app.is-mobile-preview .dcl-mobile-search{display:flex;align-items:center;margin-bottom:12px}
.bcl-app.is-mobile-preview .dcl-mobile-search input{flex:1 1 auto;min-width:0;width:100%;padding:9px}
.bcl-app.is-mobile-preview .dcl-mobile-search button{width:42px;height:42px;background:#0759ba;color:#fff;border:0}
