/* =========================
   MENU SYSTEM
   Top menu / dropdown / iOS burger / sidebar / breadcrumbs
   ========================= */

.menu,
.submenu{
  list-style:none;
  margin:0;
  padding:0;
}

.menu{
  display:flex;
  align-items:center;
  gap:32px;
}

.menu li{
  position:relative;
}

.menu a,
.submenu a{
  color:inherit;
  text-decoration:none;
  font-weight:500;
}


.has-children > a::after {
    background: url(img/arrdown.svg) no-repeat 0 0;
    background-size: 10px;
    margin-left: 6px;
    width: 10px;
    height: 9px;
    content: "";
    position: absolute;
    top: 9px;
    transition: transform .1s;
}
.has-children:hover > a::after{transform: rotate(180deg);
}
/* DESKTOP DROPDOWN */
.nav-top .submenu{
  position:absolute;
  top:100%;
  left:0;
  min-width:240px;
  display:none;
  background:#fff;
  color:#111827;
  border:1px solid #e5e7eb;
  border-radius:16px;
  padding:8px;
  box-shadow:0 18px 50px rgba(0,0,0,.12);
  z-index:100;
}

.nav-top .submenu li{
  display:block;
}

.nav-top .submenu a{
  display:block;
  padding:11px 12px;
  border-radius:10px;
}

.nav-top .submenu a:hover{
  background:#f3f4f6;
}

.nav-top .has-children:hover > .submenu{
  display:block;
}

.nav-top .submenu .submenu{
  left:100%;
  top:0;
}

/* =========================
   BURGER BUTTON
   ========================= */

.burger-btn{
  position:relative;
  z-index:10002;
  width:44px;
  height:44px;
  border-radius:14px;
  border:0;
  background:#111827;
  color:#fff;
  font-size:0;
  cursor:pointer;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
}

.burger-btn::before,
.burger-btn::after,
.burger-btn span{
  content:"";
  position:absolute;
  width:20px;
  height:2px;
  border-radius:10px;
  background:#fff;
  transition:.25s ease;
}

.burger-btn::before{
  transform:translateY(-5px);
}

.burger-btn span{
  transform:translateY(0);display: none;
}

.burger-btn::after{
  transform:translateY(5px);
}

body.burger-open .burger-btn::before{
  transform:rotate(45deg);
}

body.burger-open .burger-btn span{
  opacity:0;
  transform:scaleX(0);
}

body.burger-open .burger-btn::after{
  transform:rotate(-45deg);
}

/* fallback if button has no span */
.burger-btn:not(:has(span))::after{
  content:"";
}

/* =========================
   IOS SIDE BURGER PANEL
   ========================= */

.burger-panel{
  position:fixed!important;
  top:0!important;
  right:0!important;
  bottom:0!important;
  left:auto!important;

  width:min(420px, 92vw)!important;
  height:100dvh!important;

  z-index:10001!important;

  display:block!important;
  background:rgba(255,255,255,.96)!important;
  color:#111827!important;
 backdrop-filter:blur(18px);
   -webkit-backdrop-filter:blur(18px);

  padding:86px 18px 24px!important;
  overflow-y:auto!important;
  overscroll-behavior:contain;

  transform:translateX(110%)!important;
  transition:transform .36s cubic-bezier(.22,.61,.36,1)!important;

border-left:1px solid rgba(0,0,0,.08);
  box-shadow:-24px 0 80px rgba(15,23,42,.22);
}

.burger-panel.active{
  transform:translateX(0)!important;
}

/* overlay */
.burger-overlay{
  position:fixed;
  inset:0;
  z-index:10000;
  background:rgba(15,23,42,.48);
  opacity:0;
  pointer-events:none;
  transition:opacity .25s ease;
  backdrop-filter:blur(3px);
}

.burger-overlay.active{
  opacity:1;
  pointer-events:auto;
}

body.burger-open{
  overflow:hidden;
}

/* =========================
   MEGA MENU INSIDE BURGER
   ========================= */

.burger-panel .menu{
  display:block!important;
}

.burger-panel .menu > li{
  display:block;
  border:1px solid rgba(17,24,39,.08);
  background:#fff;
  border-radius:16px;
  margin-bottom:8px;
  overflow:hidden;
  box-shadow:0 10px 30px rgba(15,23,42,.04);
}

.burger-panel .menu > li > a{
  display:flex!important;
  align-items:center;
  justify-content:space-between;
  padding:16px 16px!important;
  font-size:16px;
  line-height:1.2;
  color:#111827!important;
}

.burger-panel .has-children > a::after{
  display:none;
}

/* arrow button generated by JS */
.burger-submenu-toggle{
  width:34px;
  height:34px;
  border:0;
  border-radius:12px;
  background:var(--mama-gray-300);

  cursor:pointer;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  transition:.22s ease;
  margin-left:auto;
  flex-shrink:0;
}
.burger-submenu-toggle:before {
    background: url(../img/arrdown.svg) no-repeat 0 0;
    background-size: 12px;
    width: 12px;
    height: 8px;
    content: "";
    position: absolute;
    transition: transform .1s;

}
.burger-panel li.open > a .burger-submenu-toggle{
  transform:rotate(180deg);
  background: var(--mama-gray-500);
  color:#fff;
}

.burger-panel .submenu{
  position:static!important;
  display:grid!important;
  grid-template-columns:1fr 1fr;
  gap:8px;
  max-height:0;
  opacity:0;
  overflow:hidden;
  padding:0 12px!important;
  border:0!important;
  box-shadow:none!important;
  background:transparent!important;
  transition:max-height .32s ease, opacity .2s ease, padding .2s ease;
}

.burger-panel li.open > .submenu{
  max-height:900px;
  opacity:1;
  padding:0 12px 14px!important;
}

.burger-panel .submenu li{
  border:0!important;
  background:#f8fafc;
  border-radius:14px;
  overflow:hidden;
}

.burger-panel .submenu a{
  display:block!important;
  padding:13px 13px!important;
  font-size:15px;
  line-height:1.25;
  color:#111827!important;
  font-weight:750;
}

/* Third level inside burger */
.burger-panel .submenu .submenu{
  display:block!important;
  max-height:none!important;
  opacity:1!important;
  padding:0 10px 10px!important;
}

.burger-panel .submenu .submenu li{
  background:#eef2ff;
  margin-top:6px;
}

.burger-panel .submenu .submenu a{
  font-size:14px;
  padding:10px 12px!important;
}

/* Optional label */
.burger-panel::before{
  content:"Меню";
  position:absolute;
  top:28px;
  left:22px;
  font-weight:950;
  font-size:24px;
  letter-spacing:-.03em;
  color:#111827;
}

/* =========================
   BREADCRUMBS
   ========================= */

.breadcrumbs{
  padding:18px 0 0;
  display:flex;
  gap:9px;
  align-items:center;
  color:#6b7280;
  font-size:14px;
}

.breadcrumbs a{
  color:inherit;
  text-decoration:none;
}

/* =========================
   SIDEBAR MENU
   ========================= */

.site-sidebar-menu{
  position:fixed;
  left:20px;
  top:120px;
  width:230px;
  z-index:20;
  background:#fff;
  color:#111827;
  border:1px solid #e5e7eb;
  border-radius:18px;
  padding:14px;
  box-shadow:0 18px 50px rgba(0,0,0,.08);
}

.site-sidebar-menu .menu{
  display:block;
}

.site-sidebar-menu .menu a{
  display:block;
  padding:10px 12px;
  border-radius:10px;
}

.site-sidebar-menu .menu a:hover{
  background:#f3f4f6;
}

.site-sidebar-menu .submenu{
  position:static;
  display:block;
  box-shadow:none;
  border:0;
  padding-left:14px;
}

/* =========================
   MOBILE
   ========================= */

@media(max-width:900px){
  .nav-top{
    display:none!important;
  }

  .burger-btn{
    display:inline-flex!important;
  }

  .site-sidebar-menu{
    display:none;
  }

  .burger-panel{
    width:min(390px, 94vw)!important;
  }

  .burger-panel .submenu{
    grid-template-columns:1fr;
  }
}

/* If you want burger always visible on desktop too */
.burger-btn{
  display:inline-flex!important;
}
