/* Structure and interaction only; visual values come from Elementor controls. */
.elementor-widget-cp_mobile_navigation { width:100%; position:relative; z-index:30; }
.cp-nav3, .cp-nav3 * { box-sizing:border-box; }
.cp-nav3 { position:relative; width:100%; }
.cp-nav3 .cp-nav3__bar { display:flex; align-items:center; justify-content:space-between; gap:18px; }
.cp-nav3 .cp-nav3__logo { display:block; flex:0 1 auto; min-width:0; text-decoration:none; }
.cp-nav3 .cp-nav3__logo img { display:block; max-width:100%; height:auto; }
.cp-nav3 .cp-nav3__toggle { display:inline-flex; flex:none; align-items:center; justify-content:center; gap:4px;
  border-style:solid; border-width:1px; min-height:44px; margin:0; box-shadow:none;
  cursor:pointer; text-transform:none; transition:none; }
.cp-nav3 [hidden] { display:none !important; }
.cp-nav3 .cp-nav3__panel { border-style:solid; border-width:1px; margin:0; z-index:31; }
.cp-nav3[data-cp-enhanced] .cp-nav3__panel { position:absolute; top:100%;
  left:var(--cp-panel-inset,10px); right:var(--cp-panel-inset,10px);
  max-height:calc(100dvh - 110px); overflow-y:auto; overscroll-behavior:contain; }
.cp-nav3 .cp-nav3__panel > ul { display:flex; flex-direction:column; list-style:none; padding:0; margin:0; }
.cp-nav3 .cp-nav3__panel > ul > li { display:block; list-style:none; padding:0; margin:0; }
.cp-nav3 .cp-nav3__panel > ul > li::before { content:none; }
.cp-nav3 .cp-nav3__panel > ul > li > a { display:block; margin:0; text-decoration:none;
  background:transparent; border:0; box-shadow:none; overflow-wrap:anywhere; transition:none; }
.cp-nav3 :is(a,button):focus-visible { outline:3px solid #b48836; outline-offset:3px; }
