/* Меню на телефоні — панель на весь екран.

   Це не той самий список, що в десктопній шапці: у макеті тут інші пункти
   й цілі блоки, яких угорі немає (місто, мова, активація сертифіката,
   контакти). Тому окрема розмітка й окремі стилі. */

.site-menu {
  position: fixed;
  inset: 0;
  z-index: 1090;
  display: none;
}

/* Стан тримається класом на <body> — так само, як у вікні кошика:
   одне місце, звідки видно, що зараз відкрито. */
body.menu-open .site-menu {
  display: block;
}

/* Поки меню відкрите, сторінка під ним не гортається */
body.menu-open {
  overflow: hidden;
}

.site-menu__panel {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  padding: 22px var(--page-gutter) 32px;
  background: #fff;
  overflow-y: auto;
}

/* --- верхній рядок --- */
.site-menu__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 30px;
}

.site-menu__close {
  padding: 0;
  border: 0;
  background: none;
  color: var(--home-text, #221f1d);
  cursor: pointer;
}

.site-menu__close svg {
  width: 26px;
  height: 26px;
  display: block;
}

.site-menu__selects {
  display: flex;
  align-items: center;
  gap: 22px;
}

.site-menu__select {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 0;
  border: 0;
  background: none;
  font: inherit;
  font-size: 0.92rem;
  color: var(--home-text, #221f1d);
  cursor: pointer;
}

.site-menu__select svg {
  width: 15px;
  height: 15px;
}

/* Пін біля назви міста — червоний, як у шапці на компʼютері */
.site-menu__select .site-menu__pin {
  width: 17px;
  height: 17px;
  color: var(--home-accent-bright, #e63329);
}

/* --- перелік розділів --- */
.site-menu__list {
  list-style: none;
  margin: 0;
  padding: 0;
  border-top: 1px solid var(--home-border, #f0e2d6);
}

.site-menu__list li {
  border-bottom: 1px solid var(--home-border, #f0e2d6);
}

.site-menu__list a {
  display: block;
  padding: 18px 0;
  font-size: 1rem;
  color: var(--home-text, #221f1d);
  text-decoration: none;
}

.site-menu__list a:active {
  color: var(--home-accent-bright, #e63329);
}

/* --- активація сертифіката --- */
.site-menu__cert {
  align-self: flex-start;
  margin-top: 30px;
  font-size: 1rem;
  color: var(--home-accent-bright, #e63329);
  text-decoration: underline;
  text-underline-offset: 5px;
  text-decoration-thickness: 1px;
}

/* --- контакти внизу --- */
/* margin-top: auto притискає блок до низу панелі, скільки б пунктів
   не було в меню — як у макеті. */
.site-menu__foot {
  margin-top: auto;
  padding-top: 48px;
}

.site-menu__foot-title {
  margin: 0 0 14px;
  font-size: 1rem;
  font-weight: 700;
  color: var(--home-text, #221f1d);
}

.site-menu__phone {
  display: inline-block;
  margin-bottom: 14px;
  font-size: 0.95rem;
  color: var(--home-text, #221f1d);
  text-decoration: none;
}

.site-menu__social {
  list-style: none;
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 0;
  padding: 0;
}

.site-menu__social img {
  width: 22px;
  height: 22px;
  display: block;
}

/* На великому екрані меню в шапці показане завжди — панель не потрібна */
@media (min-width: 992px) {
  body.menu-open .site-menu {
    display: none;
  }

  body.menu-open {
    overflow: visible;
  }
}
