.site-header{
  position: sticky; top:0; z-index:1000;
  background:#fff;
  border-bottom:1px solid var(--line);
}
.header-inner{
  display:flex;align-items:center;justify-content:space-between;
  min-height:72px; gap:16px;
}
.logo .custom-logo{max-height:52px;width:auto}
.nav-menu{
  list-style:none;margin:0;padding:0;display:flex;gap:18px;align-items:center;
}
.nav-menu a{font-weight:600;color:#111827}
.header-right{display:flex;align-items:center;gap:10px}
.header-search form{display:flex}
.header-search input[type="search"]{
  width:260px;max-width:40vw;
  border:1px solid var(--line); border-radius:999px;
  padding:10px 14px; outline:none;
}
.header-search input[type="submit"]{display:none}
.icon-btn{
  position:relative;
  border:1px solid var(--line);
  border-radius:999px;
  padding:10px 12px;
  background:#fff;
  cursor:pointer;
}
.badge{
  position:absolute; top:-6px; right:-6px;
  background:var(--accent);
  color:#111;
  font-size:12px;
  padding:2px 6px;
  border-radius:999px;
  border:1px solid rgba(0,0,0,.08);
}
.header-burger{display:none}

.mobile-nav{display:none;border-top:1px solid var(--line);background:#fff}
.mobile-menu{list-style:none;margin:0;padding:14px 0;display:flex;flex-direction:column;gap:10px}
.mobile-menu a{font-weight:700}

.site-footer{
  background:#0b1220;color:#e5e7eb;margin-top:40px
}
.footer-top{
  display:grid;grid-template-columns: 1.2fr 1fr 1fr 1fr;
  gap:22px; padding:44px 0;
}
.footer-menu{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.footer-bottom{border-top:1px solid rgba(255,255,255,.12);padding:16px 0}
.footer-widget{margin-top:12px}
.footer-widget__title{margin:0 0 10px}

@media (max-width: 900px){
  .header-search{display:none}
  .header-burger{display:inline-flex}
  .header-nav{display:none}
  .footer-top{grid-template-columns:1fr;gap:18px}
}
