body { background-color: ivory; }

header address { font-size: 1.25rem; }

.bg-menu { background-color: #fafab4; }

.btn-menu {
  background-color: #fafab4;
  border-color: #fafab4;
}

#site-logo, #site-logo-mobile { text-decoration: none; }

#site-logo { font-size: 1.4rem; }

#site-logo img {
  height: 64px;
  width: 64px;
}

#site-logo-mobile img {
  height: 32px;
  width: 32px;
}

#site-logo-mobile { font-size: 0.7rem; }

.work-time { font-size: 18px; }

.text-menu { color: #212529 !important; }

@media screen and (min-width: 1200px) {
  #menu-top {
    margin-top: 1.5rem;
    position: static !important;
  }

  #menu-top-content .navbar-nav {
    flex-direction: row !important;
    justify-content: space-around;
  }

  #menu-top .nav-item {
    padding-left: 0px !important;
    border-right: 2px solid #FFFFF0;
  }

  #menu-top .nav-item:last-child { border: none; }

  #menu-top-content { overflow: visible !important; }

  #content { margin-top: 0px !important; }
}

#menu-top-content {
  max-height: 70vh;
  overflow: scroll;
}

#menu-top .nav-link, #catalog-button { font-size: 20px; }

#mobile-phone-num { font-size: 0.85rem; }

#menu-top address { font-size: 0.66rem; }

@media screen and (min-width: 576px) {
  #menu-top address { font-size: 1rem }

  #mobile-phone-num { font-size: 1rem; }
}

#menu-top .fa-phone { font-size: 1.7rem; }

#menu-top .nav-link.active {
  color: #212529;
  font-size: 22px;
  font-weight: bold;
}

#mobile-catalog .nav-link, #mobile-catalog .nav-link.active { font-size: 1rem; }

@keyframes caret-open {
  from {transform: rotate(0deg);}
  to {transform: rotate(90deg);}
}

@keyframes caret-close {
  from {transform: rotate(0deg);}
  to {transform: rotate(-90deg);}
}

.paused { animation-play-state: paused; }

#catalog-sign {
  border-bottom: 2px solid;
  font-size: 20px;
  font-weight: bolder;
  letter-spacing: 8px;
}

#menu-left .btn-focus, #menu-left .btn:focus,
#menu-top .btn-focus, #menu-top .btn:focus {
  box-shadow: none;
}

#menu-left .caret, #mobile-catalog .caret, #mobile-index-menu .caret {
  animation-direction: alternate;
  animation-duration: .5s;
  animation-fill-mode: forwards;
  animation-iteration-count: infinite;
  border-style: solid;
  border-width: 6px;
}

#menu-left .caret-closed, #mobile-catalog .caret-closed, #mobile-index-menu .caret-closed  {
  animation-name: caret-open;
  border-bottom: 6px solid transparent;
  border-right: none;
  border-top-color: transparent;
}

#menu-left .caret-opened, #mobile-catalog .caret-opened, #mobile-index-menu .caret-opened {
  animation-name: caret-close;
  border-bottom: none;
  border-left-color: transparent;
  border-right: 6px solid transparent;
  border-top-color: initial;
}

#menu-left li.leaf:hover, #menu-left .btn:hover {
  background-color: rgba(211, 211, 211, 0.4);
}

#menu-left .nav-link.active, #mobile-catalog .nav-link.active {
  font-weight: bolder;
  text-decoration: underline;
}

.top-level-separator {
  height: 1px;
  background-color: black;
}

#content { margin-top: 115px; }

@media screen and (min-width: 576px) {
  #content { margin-top: 115px }
}

#pagination .page-link:hover, #pagination .page-link.active {
  background-color: rgba(211, 211, 211, 0.4);
}

#pagination .page-link.active { color: #212529 !important; }
