/* NetPardaz responsive navigation drawer.
 * The menu trigger is intentionally available on every viewport, so the
 * opened state must remain a bounded side sheet instead of a full-page grid. */
.mobile-drawer {
  position: fixed;
  inset: 0;
  z-index: 2500;
  padding: 0;
  background: rgba(8, 27, 25, .46);
  -webkit-backdrop-filter: blur(7px);
  backdrop-filter: blur(7px);
}

.mobile-drawer[hidden] {
  display: none !important;
}

.mobile-drawer-panel {
  position: absolute;
  inset-block: 0;
  inset-inline-start: 0;
  width: min(92vw, 460px);
  min-height: 100dvh;
  max-height: 100dvh;
  overflow-y: auto;
  overscroll-behavior: contain;
  display: flex;
  flex-direction: column;
  align-items: stretch;
  gap: 10px;
  padding: 18px 16px 20px;
  border: 0;
  border-radius: 28px 0 0 28px;
  background:
    radial-gradient(circle at 90% 0%, rgba(0, 112, 99, .13), transparent 19rem),
    linear-gradient(180deg, #ffffff, #f4f9f7);
  box-shadow: -28px 0 70px rgba(5, 25, 22, .24);
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
}

.drawer-close {
  position: absolute;
  top: 14px;
  inset-inline-start: auto;
  inset-inline-end: 14px;
  width: 44px;
  height: 44px;
  min-height: 44px;
  margin: 0;
  padding: 0;
  border-radius: 15px;
  background: rgba(0, 112, 99, .09);
}

.np-drawer-brand {
  justify-self: center;
  align-self: center;
  margin: 4px auto 2px;
}

.np-drawer-brand img {
  width: 150px;
  height: auto;
  max-height: 56px;
  object-fit: contain;
}

.mobile-drawer .search-form,
.np-drawer-quick,
.np-drawer-static,
.np-drawer-more,
.np-drawer-actions {
  width: 100% !important;
  max-width: none !important;
  margin-inline: 0 !important;
}

.mobile-drawer .search-form {
  min-height: 48px;
  margin-block: 2px 4px !important;
}

.mobile-drawer .search-form input,
.mobile-drawer .search-form button {
  min-height: 48px;
  border-radius: 16px;
}

.mobile-drawer .search-form button {
  min-width: 76px;
  padding-inline: 12px;
}

.np-drawer-quick {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin-block: 2px !important;
}

.np-drawer-quick a {
  min-height: 82px;
  gap: 6px;
  padding: 10px;
  border-radius: 18px;
  box-shadow: 0 10px 26px rgba(7, 28, 34, .06);
}

.np-drawer-static {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin-block: 2px !important;
}

.np-drawer-static a,
.np-drawer-static a[href*="/cooperation/"],
.np-drawer-static .np-drawer-static-cta {
  grid-column: auto !important;
  min-height: 44px;
  padding: 9px 10px;
  border-radius: 15px;
  font-size: .84rem;
  line-height: 1.45;
}

.np-drawer-more {
  flex: 0 0 auto;
  border-radius: 16px;
}

.np-drawer-more > div {
  gap: 7px;
  padding: 0 8px 8px;
}

.np-drawer-more a {
  min-width: 0;
  min-height: 40px;
  padding: 7px;
  font-size: .76rem;
}

.np-drawer-actions {
  grid-template-columns: 1fr !important;
  gap: 8px;
  margin-top: auto !important;
  padding-top: 2px;
}

.np-drawer-actions .btn {
  min-height: 46px;
  border-radius: 16px;
}

body.drawer-open {
  overflow: hidden;
}

@media (max-width: 520px) {
  .mobile-drawer {
    background: #f4f9f7;
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
  }

  .mobile-drawer-panel {
    width: 100vw;
    border-radius: 0;
    padding: 12px 12px 16px;
    box-shadow: none;
  }

  .np-drawer-brand {
    margin-top: 2px !important;
  }

  .np-drawer-quick a {
    min-height: 74px !important;
  }
}

