.elementor-1939 .elementor-element.elementor-element-720b6ff{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-1939 .elementor-element.elementor-element-f71a3ec{--display:flex;}.elementor-theme-builder-content-area{height:400px;}.elementor-location-header:before, .elementor-location-footer:before{content:"";display:table;clear:both;}/* Start custom CSS for html, class: .elementor-element-49693a5 */:root{
  --panel:#fbfaf6;
  --muted:#7a7a7a;
  --gold:#9a855b;
  --green:#7bbf22;
  --border:rgba(0,0,0,.08);
  --shadow:0 22px 60px rgba(0,0,0,.18);
  --color:#0b3d2c;
}

*{box-sizing:border-box}
body{
  margin:0;
  font-family:Poppins, sans-serif;
  background:#fff;
}

/* ================= HEADER ================= */
.bn-header{
  background:#fff;
  border-bottom:1px solid var(--border);
  position:sticky;
  top:0;
  z-index:99999;
}
.bn-header .nav-wrap{
  max-width:1600px;
  margin:auto;
  padding:14px 18px;
  display:grid;
  grid-template-columns:auto 1fr auto; /* logo | nav | social */
  align-items:center;
  gap:18px;
}

/* LOGO */
.bn-header .brand{
  display:flex;
  align-items:center;
  text-decoration:none;
  justify-self:start;
}
.bn-header .brand-logo{
  height:48px;
  width:auto;
  object-fit:contain;
}

/* NAV (DESKTOP) */
.bn-header .nav{
  justify-self:center;
}
.bn-header .nav-list{
  list-style:none;
  display:flex;
  gap:28px;
  margin:0;
  padding:0;
  align-items:center;
  justify-content:center;
}
.bn-header .nav-item{ position:relative; } /* ✅ important */
.bn-header .nav-link{
  text-decoration:none;
  color:#333;
  font-weight:500;
  position:relative;
  padding:10px 0;
  display:inline-flex;
  align-items:center;
  gap:8px;
}
.bn-header .caret{ font-size:12px; opacity:.7; }

/* underline on hover */
.bn-header .nav-item:hover > .nav-link,
.bn-header .nav-item:focus-within > .nav-link{
  color:var(--color);
}
.bn-header .nav-item:hover > .nav-link::after,
.bn-header .nav-item:focus-within > .nav-link::after{
  content:"";
  position:absolute;
  left:0; right:0; bottom:2px;
  height:2px;
  background:var(--color);
}

/* SOCIAL (DESKTOP) */
.bn-header .nav-social{
  justify-self:end;
  display:flex;
  align-items:center;
  gap:12px;
}
.bn-header .nav-social .soc{
  width:38px;height:38px;
  display:grid;place-items:center;
  border:1px solid var(--color);
  border-radius:10px;
  color:#333;
  text-decoration:none;
  transition:transform .18s ease, background .18s ease, color .18s ease;
}
.bn-header .nav-social .soc:hover{
  background:var(--color);
  color:#fff;
  transform:translateY(-1px);
}

/* HAMBURGER */
.bn-header .nav-toggle{
  display:none;
  width:44px;height:44px;
  border:1px solid var(--color);
  background:#fff;
  border-radius:10px;
  cursor:pointer;
  padding:10px;
}
.bn-header .nav-toggle span{
  display:block;
  height:2px;
  background:#333;
  margin:6px 0;
  border-radius:2px;
}

/* ================= MEGA MENU (DESKTOP) ================= */
.bn-header .mega{
  position:fixed;
  left:50%;
  top:90px;
  transform:translateX(-50%) translateY(10px);
  width:1200px;
  background:var(--panel);
  border:1px solid var(--border);
  box-shadow:var(--shadow);
  opacity:0;
  visibility:hidden;
  transition:.18s ease;
  z-index:99998;
}
.bn-header .nav-item.open .mega{
  opacity:1;
  visibility:visible;
  transform:translateX(-50%) translateY(0);
}
@media (max-width:1100px){
  .bn-header .mega{ width:90vw; }
}

.bn-header .mega-inner{ padding:26px 30px; }
.bn-header .mega-with-image{
  display:grid;
  grid-template-columns:0.9fr 1.4fr;
  gap:28px;
  align-items:stretch;
}

/* IMAGE PANEL */
.bn-header .mega-image{
  border-radius:14px;
  overflow:hidden;
  position:relative;
  min-height:320px;
  background:#eee;
}
.bn-header .mega-image img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:opacity .2s ease;
}
.bn-header .mega-image img.img-fade{ opacity:.65; }

/* CONTENT */
.bn-header .mega-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:40px;
}
.bn-header .mega-link{
  display:inline-block;
  font-size:18px;
  font-weight:600;
  color:var(--color);
  text-decoration:none;
  position:relative;
  padding-bottom:4px;
}
.bn-header .mega-link::after{
  content:"";
  position:absolute;
  left:0; bottom:0;
  width:0; height:2px;
  background:var(--color);
  transition:width .25s ease;
}
.bn-header .mega-link:hover::after{ width:100%; }
.bn-header .mega-desc{
  margin:0 0 18px 0;
  font-size:12px;
  color:var(--muted);
  line-height:1.6;
}
.bn-header .mega-bottom{
  background:var(--color);
  color:#fff;
  text-align:center;
  font-size:11px;
  letter-spacing:.18em;
  padding:16px 10px;
}

/* ================= MOBILE + TABLET ================= */
@media (max-width:1024px){

  /* 🔥 KEY FIX: do NOT keep header sticky on mobile (fixes missing top items) */
  .bn-header{
    position:relative !important;
    top:auto !important;
  }

  .bn-header .nav-wrap{
    grid-template-columns:auto auto;
    gap:12px;
    align-items:center;
  }

  .bn-header .nav-toggle{
    display:block;
    justify-self:end;
  }

  /* dropdown panel */
  .bn-header .nav{
    position:absolute !important;
    top:100% !important;
    left:0 !important;
    right:0 !important;
    width:100% !important;
    z-index:999999 !important;

    display:none !important;
    margin-top:0 !important;

    background:#fff;
    border:1px solid var(--border);
    border-radius:14px;
    box-shadow:0 16px 40px rgba(0,0,0,.12);
    overflow:hidden;
    max-height:calc(100vh - 70px);
  }
  .bn-header.nav-open .nav{ display:block !important; }

  .bn-header .nav-list{
    flex-direction:column !important;
    align-items:stretch !important;
    gap:0 !important;
    padding:10px !important;
    margin:0 !important;
    max-height:calc(100vh - 140px) !important;
    overflow-y:auto !important;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior:contain;
  }

  .bn-header .nav-link{
    width:100% !important;
    justify-content:space-between !important;
    padding:14px 12px !important;
    border-radius:12px !important;
  }

  /* Social icons inside hamburger (hide original place on mobile) */
  .bn-header .nav-social{ display:none; }
  .bn-header .nav .nav-social{
    display:flex !important;
    justify-content:center;
    gap:12px;
    padding:14px 0 10px;
    margin-top:10px;
    border-top:1px solid var(--border);
  }

  /* Mega becomes accordion */
  .bn-header .mega{
    position:static !important;
    transform:none !important;
    width:100% !important;
    opacity:1 !important;
    visibility:visible !important;
    box-shadow:none !important;
    border:0 !important;
    background:transparent !important;
    display:none !important;
  }
  .bn-header .nav-item.open .mega{ display:block !important; }

  /* Remove image on mobile */
  .bn-header .mega-with-image{ display:block !important; }
  .bn-header .mega-image{ display:none !important; }

  .bn-header .mega-inner{
    padding:12px !important;
    margin:0 6px 10px !important;
    background:#fafafa !important;
    border:1px solid var(--border) !important;
    border-radius:14px !important;
  }

  .bn-header .mega-grid{
    grid-template-columns:1fr !important;
    gap:14px !important;
  }

  .bn-header .mega-link{ font-size:16px !important; }

  .bn-header .mega-bottom{
    border-radius:14px !important;
    margin:0 6px 10px !important;
    font-size:10px !important;
    letter-spacing:.12em !important;
    padding:12px 10px !important;
  }
}/* End custom CSS */