/* SDR Theme Builder Header — header-only hardening
   Scope: global Theme Builder header for SDR child theme
   Foundation alignment: 1576 + home 2030 + footer hardening cadence
   Divi reference observed in workspace/runtime snapshots: 4.27.4
*/

.sdr-theme-builder-header{
  --lp-primary:#0d8d3b;
  --lp-primary-dark:#0a6e2e;
  --lp-secondary:#dc3232;
  --lp-ink:#111111;
  --lp-muted:#526257;
  padding:5px 0 0;
  position:relative;
  z-index:30;
  background:linear-gradient(180deg,#ffffff 0%,#fbfbfa 100%);
}

.sdr-theme-builder-header .lp-local-nav-shell,
.et-l--header .sdr-theme-builder-header .lp-local-nav-shell,
.et-l.et-l--header .sdr-theme-builder-header .lp-local-nav-shell,
.et-db #et-boc .et-l--header .sdr-theme-builder-header .lp-local-nav-shell{
  display:grid !important;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:24px;
  width:min(1900px,calc(100vw - 136px));
  max-width:none;
  margin:0 auto !important;
  padding:5px 0 12px !important;
  border:none;
  border-bottom:1px solid rgba(13,141,59,.12);
  box-sizing:border-box;
}

.sdr-theme-builder-header .lp-local-nav-shell > .et_pb_column{
  float:none !important;
  width:auto !important;
  margin:0 !important;
  min-width:0;
}

.sdr-theme-builder-header .tb-header-brand-col{
  display:flex;
  align-items:center;
  gap:14px;
  min-width:0;
  justify-self:start;
}

.sdr-theme-builder-header .tb-header-logo,
.sdr-theme-builder-header .tb-header-logo .et_pb_image_wrap{
  display:block;
}

.sdr-theme-builder-header .tb-header-logo{
  margin:0 !important;
  flex:none;
}

.sdr-theme-builder-header .tb-header-logo img,
.sdr-theme-builder-header .et_pb_image_0_tb_header img{
  display:block;
  width:148px;
  max-width:148px !important;
  height:auto;
  max-height:none !important;
  object-fit:contain;
}

.sdr-theme-builder-header .tb-header-brand-copy{
  margin:0 !important;
}

.sdr-theme-builder-header .tb-header-brand-copy .et_pb_text_inner{
  display:flex;
  flex-direction:column;
  gap:2px;
  padding-left:14px;
  margin-left:2px;
  border-left:1px solid rgba(13,141,59,.16);
}

.sdr-theme-builder-header .tb-header-brand-copy strong{
  display:block;
  font-size:11.5px;
  line-height:1.2;
  letter-spacing:.09em;
  text-transform:uppercase;
  font-weight:800;
  color:var(--lp-ink);
}

.sdr-theme-builder-header .tb-header-brand-copy span{
  display:block;
  font-size:11.5px;
  line-height:1.4;
  color:#5d6d63;
}

.sdr-theme-builder-header .tb-header-menu-col{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:24px;
  min-width:0;
  justify-self:center;
}

.sdr-theme-builder-header .tb-header-menu-col > .et_pb_module,
.sdr-theme-builder-header .tb-header-cta-col > .et_pb_button_module_wrapper{
  margin-bottom:0 !important;
}

.sdr-theme-builder-header .tb-header-cta-col{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  justify-self:end;
  min-width:0;
}

.sdr-theme-builder-header .tb-header-menu{
  width:auto;
  margin:0 !important;
  background:transparent !important;
}

.sdr-theme-builder-header .tb-header-menu .et_pb_menu_inner_container,
.sdr-theme-builder-header .tb-header-menu .et_pb_menu__wrap,
.sdr-theme-builder-header .tb-header-menu .et-menu-nav{
  display:flex;
  align-items:center;
  justify-content:center;
  width:auto;
}

.sdr-theme-builder-header .tb-header-menu .et-menu{
  gap:24px;
}

.sdr-theme-builder-header .tb-header-menu .et-menu > li{
  padding-right:0 !important;
}

.sdr-theme-builder-header .tb-header-menu .et-menu > li > a{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:8px 0;
  min-height:auto;
  white-space:nowrap;
  font-size:13.25px;
  font-weight:700;
  line-height:1.35;
  letter-spacing:.01em;
  color:#3a4a41;
  background:transparent;
  transition:color .2s ease, opacity .2s ease;
}

.sdr-theme-builder-header .tb-header-menu .et-menu > li > a:hover,
.sdr-theme-builder-header .tb-header-menu .et-menu > li.current-menu-item > a,
.sdr-theme-builder-header .tb-header-menu .et-menu > li.current-menu-ancestor > a,
.sdr-theme-builder-header .tb-header-menu .et-menu > li.current_page_item > a{
  color:var(--lp-ink);
  opacity:1;
}

.sdr-theme-builder-header .tb-header-menu .et-menu > li > a::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-4px;
  height:2px;
  border-radius:999px;
  background:transparent;
  opacity:0;
  transition:background .2s ease, opacity .2s ease;
}

.sdr-theme-builder-header .tb-header-menu .et-menu > li > a:hover::after{
  background:rgba(220,50,50,.32);
  opacity:1;
}

.sdr-theme-builder-header .tb-header-menu .et-menu > li.current-menu-item > a::after,
.sdr-theme-builder-header .tb-header-menu .et-menu > li.current-menu-ancestor > a::after,
.sdr-theme-builder-header .tb-header-menu .et-menu > li.current_page_item > a::after{
  background:var(--lp-secondary);
  opacity:1;
}

.sdr-theme-builder-header .lp-local-cta-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  padding:0 20px;
  border:none;
  border-radius:999px;
  box-shadow:0 10px 22px rgba(17,17,17,.11);
  white-space:nowrap;
  text-decoration:none !important;
  font-size:13px;
  font-weight:800;
  line-height:1;
  color:#fff !important;
  background:linear-gradient(180deg,var(--lp-primary),var(--lp-primary-dark));
}

.sdr-theme-builder-header .lp-local-cta-btn:hover{
  color:#fff !important;
  background:linear-gradient(180deg,#0b7e35,#085f27);
}

.sdr-theme-builder-header .lp-local-cta-btn::after{
  display:none !important;
}

.sdr-theme-builder-header .lp-local-cta-btn::before{
  content:"";
  width:7px;
  height:7px;
  margin-right:8px;
  border-radius:999px;
  background:rgba(255,255,255,.8);
  flex:none;
}

.sdr-theme-builder-header .tb-header-menu .mobile_nav{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:46px;
  height:46px;
  padding:0;
  border:none;
  border-radius:999px;
  background:linear-gradient(180deg,#ffffff,#f7faf8);
  box-shadow:0 8px 18px rgba(17,17,17,.08);
  cursor:pointer;
  transition:transform .2s ease, box-shadow .2s ease, background .2s ease, color .2s ease;
}

.sdr-theme-builder-header .tb-header-menu .mobile_nav:hover,
.sdr-theme-builder-header .tb-header-menu .mobile_nav.open{
  background:linear-gradient(180deg,#0d8d3b,#0a6e2e);
  box-shadow:0 10px 20px rgba(13,141,59,.24);
}

.sdr-theme-builder-header .tb-header-menu .mobile_menu_bar{
  display:flex;
  align-items:center;
  justify-content:center;
  width:46px;
  height:46px;
  padding:0;
}

.sdr-theme-builder-header .tb-header-menu .mobile_menu_bar::before{
  font-size:28px;
  color:var(--lp-ink);
  transition:color .2s ease;
}

.sdr-theme-builder-header .tb-header-menu .mobile_nav:hover .mobile_menu_bar::before,
.sdr-theme-builder-header .tb-header-menu .mobile_nav.open .mobile_menu_bar::before{
  color:#fff;
}

.sdr-theme-builder-header .tb-header-menu .et_mobile_menu{
  right:0;
  left:auto;
  min-width:280px;
  padding:10px 16px;
  border-top:2px solid var(--lp-secondary);
  border-radius:16px;
  background:#fff;
  box-shadow:0 18px 30px rgba(17,17,17,.08);
}

.sdr-theme-builder-header .tb-header-menu .et_mobile_menu li{
  padding-left:0 !important;
}

.sdr-theme-builder-header .tb-header-menu .et_mobile_menu li a{
  padding:10px 0 !important;
  border-bottom:none !important;
  font-size:12.5px;
  font-weight:700;
  color:#3a4a41 !important;
}

.sdr-theme-builder-header .tb-header-menu .et_mobile_menu li.current-menu-item > a,
.sdr-theme-builder-header .tb-header-menu .et_mobile_menu li.current_page_item > a{
  color:var(--lp-ink) !important;
}

@media (max-width:1366px) and (min-width:981px){
  .sdr-theme-builder-header .lp-local-nav-shell{gap:20px;}
  .sdr-theme-builder-header .tb-header-logo img,
  .sdr-theme-builder-header .et_pb_image_0_tb_header img{width:142px;max-width:142px !important;}
  .sdr-theme-builder-header .tb-header-brand-copy strong,
  .sdr-theme-builder-header .tb-header-brand-copy span{font-size:10.75px;}
  .sdr-theme-builder-header .tb-header-menu .et-menu{gap:14px;}
  .sdr-theme-builder-header .tb-header-menu .et-menu > li > a{font-size:12.25px;}
  .sdr-theme-builder-header .lp-local-cta-btn{min-height:44px;padding:0 18px;font-size:12.5px;}
}

@media (max-width:1220px) and (min-width:981px){
  .sdr-theme-builder-header .lp-local-nav-shell{
    grid-template-columns:minmax(230px,auto) minmax(0,1fr) auto;
    gap:20px;
    width:calc(100vw - 72px);
  }
  .sdr-theme-builder-header .tb-header-menu-col{gap:14px;}
}

@media (max-width:980px){
  .sdr-theme-builder-header .lp-local-nav-shell{
    grid-template-columns:minmax(0,1fr) auto;
    gap:12px;
    width:calc(100vw - 32px);
    padding:0 0 6px !important;
  }
  .sdr-theme-builder-header .tb-header-brand-col{gap:10px;}
  .sdr-theme-builder-header .tb-header-logo img,
  .sdr-theme-builder-header .et_pb_image_0_tb_header img{width:132px;max-width:132px !important;}
  .sdr-theme-builder-header .tb-header-brand-copy .et_pb_text_inner{
    padding-left:12px;
    margin-left:0;
    border-left:1px solid rgba(13,141,59,.12);
  }
  .sdr-theme-builder-header .tb-header-menu-col{
    justify-self:end;
    justify-content:flex-end;
    gap:0;
  }
  .sdr-theme-builder-header .tb-header-cta-col,
  .sdr-theme-builder-header .lp-local-cta-btn{
    display:none !important;
  }
  .sdr-theme-builder-header .tb-header-menu,
  .sdr-theme-builder-header .tb-header-menu .et_pb_menu_inner_container,
  .sdr-theme-builder-header .tb-header-menu .et_pb_menu__wrap{
    width:auto;
    justify-content:flex-end;
  }
  .sdr-theme-builder-header .tb-header-menu .et_mobile_nav_menu{
    margin-left:0 !important;
  }
}

@media (max-width:767px){
  .sdr-theme-builder-header .tb-header-brand-copy,
  .sdr-theme-builder-header .tb-header-cta-col,
  .sdr-theme-builder-header .lp-local-cta-btn{
    display:none !important;
  }
}

/* SDR header sticky scroll stability, 2026-04-28
 * Prevent Divi sticky state from shifting the nav shell 5px upward on scroll.
 */
.et-l--header .sdr-theme-builder-header,
.et-l--header .sdr-theme-builder-header.et_pb_sticky_module,
.et-l--header .sdr-theme-builder-header.et_pb_sticky,
.et-l--header .sdr-theme-builder-header.et_pb_sticky--top{
  padding-top:0!important;
}
.et-l--header .sdr-theme-builder-header .lp-local-nav-shell,
.et-l--header .sdr-theme-builder-header.et_pb_sticky_module .lp-local-nav-shell,
.et-l--header .sdr-theme-builder-header.et_pb_sticky .lp-local-nav-shell,
.et-l--header .sdr-theme-builder-header.et_pb_sticky--top .lp-local-nav-shell{
  width:80%!important;
  max-width:1920px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-top:0!important;
  padding-bottom:12px!important;
  transform:none!important;
  transition:none!important;
}
