/* ============================================================
   NN8 — выпадающее «Меню»: четыре PDF в шапке и подвале.
   Десктоп: поповер по наведению. До 991px: раскрывающийся
   список внутри меню Webflow. Подвал: поповер открывается вверх.
   ============================================================ */
.nn8-mm{
  --nn8-ease: cubic-bezier(.23, 1, .32, 1);
  --nn8-ink: var(--black, #19272c);
  --nn8-gold: var(--green, #ac9141);
  --nn8-tint: #f5f2e8;
  position: relative;
  display: flex;
  align-items: center;
}

/* Кнопка наследует вид соседних ссылок (nav_link / footer_link) */
.nn8-mm__trigger{
  -webkit-appearance: none;
  appearance: none;
  background: none;
  border: 0;
  margin: 0;
  cursor: pointer;
  -webkit-tap-highlight-color: transparent;
}
.nn8-mm__trigger > .z-index-2{
  display: inline-flex;
  align-items: center;
  gap: .3em;
}
.nn8-mm__chev{
  width: .6em;
  height: .6em;
  flex: none;
  transition: transform 220ms var(--nn8-ease);
}
.nn8-mm[data-open] .nn8-mm__chev{ transform: rotate(180deg); }
/* Золотая полоса пункта держится, пока список открыт (в мобильном меню её нет — см. ниже) */
.nn8-mm.is-footer[data-open] .nn8-mm__trigger .link_line{ transform: scale3d(1, 1, 1) !important; }
@media screen and (min-width: 992px){
  .nn8-mm.is-nav[data-open] .nn8-mm__trigger .link_line{ transform: scale3d(1, 1, 1) !important; }
}
.nn8-mm__trigger:focus-visible{
  outline: 2px solid var(--nn8-gold);
  outline-offset: 4px;
  border-radius: 2px;
}

/* Поповер */
.nn8-mm__panel{
  position: absolute;
  z-index: 60;
  top: calc(100% + .9rem);
  left: 50%;
  width: 17.5rem;
  margin-left: -8.75rem;
  padding: .4rem;
  background: #fff;
  border: 1px solid var(--light-grey, #d8d8d8);
  border-radius: 1rem;
  box-shadow:
    0 1px 2px rgba(25, 39, 44, .05),
    0 12px 24px -10px rgba(25, 39, 44, .14),
    0 36px 64px -28px rgba(25, 39, 44, .26);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(-6px) scale(.97);
  transform-origin: 50% 0;
  transition:
    opacity 140ms var(--nn8-ease),
    transform 140ms var(--nn8-ease),
    visibility 0s linear 140ms;
}
/* Мостик: курсор не «проваливается» в щель между пунктом и панелью */
.nn8-mm__panel::before{
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: -1rem;
  height: 1rem;
}
.nn8-mm[data-open] .nn8-mm__panel{
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: none;
  transition:
    opacity 200ms var(--nn8-ease),
    transform 200ms var(--nn8-ease),
    visibility 0s;
}

.nn8-mm__list{
  list-style: none;
  margin: 0;
  padding: 0;
}
.nn8-mm__list > li{
  opacity: 0;
  transform: translateY(4px);
  transition: opacity 140ms var(--nn8-ease), transform 140ms var(--nn8-ease);
}
.nn8-mm[data-open] .nn8-mm__list > li{
  opacity: 1;
  transform: none;
  transition-duration: 260ms;
}
.nn8-mm[data-open] .nn8-mm__list > li:nth-child(2){ transition-delay: 30ms; }
.nn8-mm[data-open] .nn8-mm__list > li:nth-child(3){ transition-delay: 60ms; }
.nn8-mm[data-open] .nn8-mm__list > li:nth-child(4){ transition-delay: 90ms; }

.nn8-mm__item{
  display: flex;
  align-items: center;
  gap: .8rem;
  padding: .85rem;
  border-radius: .7rem;
  color: var(--nn8-ink);
  text-decoration: none;
  -webkit-tap-highlight-color: transparent;
  transition: background-color 160ms ease, transform 160ms var(--nn8-ease);
}
.nn8-mm__item:active{
  transform: scale(.985);
  background: var(--nn8-tint);
}
.nn8-mm__item:focus-visible{
  outline: 2px solid var(--nn8-gold);
  outline-offset: -2px;
  background: var(--nn8-tint);
}
.nn8-mm__num{
  flex: none;
  width: 1.2rem;
  font-family: Satoshi, sans-serif;
  font-size: .6875rem;
  font-weight: 500;
  letter-spacing: .06em;
  line-height: 1;
  color: var(--nn8-gold);
  font-variant-numeric: tabular-nums;
}
.nn8-mm__label{
  flex: 1 1 auto;
  display: flex;
  align-items: center;
  font-family: "Coolvetica Condensed", sans-serif;
  font-size: 1.125rem;
  letter-spacing: .04em;
  line-height: 1;
  text-transform: uppercase;
  white-space: nowrap;
}
.nn8-mm__tag{
  margin-left: .5rem;
  padding: .22rem .32rem .2rem;
  border: 1px solid #cfd4d6;
  border-radius: .3rem;
  font-family: Satoshi, sans-serif;
  font-size: .625rem;
  font-weight: 500;
  letter-spacing: .04em;
  line-height: 1;
  color: #56616a;
  text-transform: none;
}
.nn8-mm__go{
  flex: none;
  width: .75rem;
  height: .75rem;
  color: #9aa1a5;
  transition: transform 200ms var(--nn8-ease), color 160ms ease;
}
@media (hover: hover) and (pointer: fine){
  .nn8-mm__item:hover{ background: var(--nn8-tint); }
  .nn8-mm__item:hover .nn8-mm__go{ transform: translate(2px, -2px); color: var(--nn8-ink); }
}

/* Подвал: открываем вверх, от левого края пункта */
.nn8-mm.is-footer .nn8-mm__panel{
  top: auto;
  bottom: calc(100% + .75rem);
  left: 0;
  margin-left: 0;
  transform: translateY(6px) scale(.97);
  transform-origin: 0 100%;
}
.nn8-mm.is-footer .nn8-mm__panel::before{ top: auto; bottom: -1rem; }
.nn8-mm.is-footer[data-open] .nn8-mm__panel{ transform: none; }

/* До 991px шапка Webflow сворачивается в полноэкранное меню — там список раскрывается под пунктом */
@media screen and (max-width: 991px){
  .nn8-mm.is-nav{
    flex-direction: column;
    align-items: stretch;
    width: 100%;
  }
  .nn8-mm.is-nav .nn8-mm__trigger{ justify-content: flex-start; }
  /* на 10vw полоса Webflow выглядит как зачёркивание — состояние показывает стрелка */
  .nn8-mm.is-nav .nn8-mm__trigger .link_line{ display: none; }
  .nn8-mm.is-nav .nn8-mm__chev{ width: .34em; height: .34em; margin-left: .06em; }
  .nn8-mm.is-nav .nn8-mm__panel{
    position: static;
    width: auto;
    margin: 0;
    padding: 0;
    background: none;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transform: none;
    display: grid;
    grid-template-rows: 0fr;
    transition: grid-template-rows 320ms var(--nn8-ease);
  }
  .nn8-mm.is-nav[data-open] .nn8-mm__panel{ grid-template-rows: 1fr; }
  .nn8-mm.is-nav .nn8-mm__panel::before{ display: none; }
  .nn8-mm.is-nav .nn8-mm__list{
    min-height: 0;
    overflow: hidden;
    visibility: hidden;
    transition: visibility 0s linear 320ms;
  }
  .nn8-mm.is-nav[data-open] .nn8-mm__list{ visibility: visible; transition: none; }
  .nn8-mm.is-nav .nn8-mm__list > li:first-child{ margin-top: .9rem; }
  .nn8-mm.is-nav .nn8-mm__item{
    min-height: 3rem;
    padding: .65rem .25rem .65rem 1rem;
    border-radius: 0;
    border-left: 1px solid rgba(172, 145, 65, .55);
  }
  .nn8-mm.is-nav .nn8-mm__item:focus-visible{ outline-offset: 0; }
  .nn8-mm.is-nav .nn8-mm__label{ font-size: clamp(1.25rem, 5.4vw, 1.75rem); }
  .nn8-mm.is-nav .nn8-mm__num{ width: 1.4rem; font-size: .75rem; }
  .nn8-mm.is-nav .nn8-mm__go{ width: .9rem; height: .9rem; }
}

@media (prefers-reduced-motion: reduce){
  .nn8-mm__panel,
  .nn8-mm.is-footer .nn8-mm__panel,
  .nn8-mm__list > li{ transform: none; }
  .nn8-mm__chev,
  .nn8-mm.is-nav .nn8-mm__panel{ transition: none; }
}
