 #loader {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  background-color: #ffffff; /* або темний фон */
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 9999; /* поверх всього */
}
#loader {
  opacity: 1;
  transition: opacity 0.5s ease;
}
#loader.hidden {
  opacity: 0;
  pointer-events: none;
}
.ringing-phone {
  display: inline-block;
  background: rgba(0, 0, 0, 0.2); /* тёмный полупрозрачный фон */
  padding: 8px 12px;
  border-radius: 50%; /* круглая кнопка */
  font-size: 22px;
  border: 2px solid rgba(0, 0, 0, 0.4); /* обводка по контуру круга */
  animation: ring 1s infinite;
}

@keyframes ring {
  0% { transform: rotate(0deg); }
  10% { transform: rotate(14deg); }
  20% { transform: rotate(-8deg); }
  30% { transform: rotate(14deg); }
  40% { transform: rotate(-4deg); }
  50% { transform: rotate(10deg); }
  60% { transform: rotate(0deg); }
  100% { transform: rotate(0deg); }
}
ul.services-list {
  line-height: 1.8;
  font-size: 18px;
  padding-left: 22px;
  color: #0f2e08;
  margin-top: 0;
  margin-bottom: 0;
}

ul.services-list li a {
  color: #0b2706;
  text-decoration: underline;
}



/* Из кейтринга кнопка заказать услугу*/

   /* Оверлей модального окна */
.popup-overlay {
  display: none; 
  position: fixed; 
  z-index: 1000; 
  left: 0;
  top: 0;
  width: 100%; 
  height: 100%; 
  overflow: auto; 
  background-color: rgba(0,0,0,0.5); 
}

/* Контейнер окна */
.popup-box {
  background-color: #fff;
  margin: 10% auto;      /* окно ближе к верхнему краю экрана */
  padding: 40px 30px;   /* больше внутреннего пространства */
  border-radius: 12px;
  width: 98%;            /* почти весь экран на мобильных */
  max-width: 800px;      /* увеличенная максимальная ширина */
  box-shadow: 0 8px 16px rgba(0,0,0,0.4);
  text-align: center;
}

/* Заголовок */
.popup-box h3 {
  font-size: 28px;
  margin-bottom: 25px;
  color: #0b2706;
}

/* Список номеров */
.popup-box ul {
  list-style: none;
  padding: 0;
  font-size: 22px;       /* увеличенный текст номеров */
}

.popup-box li {
  margin: 15px 0;
}

/* Ссылки на звонок */
.popup-box li a {
  text-decoration: none;
  color: #28a745;
  font-weight: bold;
  display: inline-flex;
  align-items: center;
  gap: 10px; /* расстояние между иконкой и номером */
  font-size: 24px; /* увеличенный размер текста */
}

/* Кнопка закрытия */
.popup-close {
  color: #aaa;
  float: right;
  font-size: 28px;
  font-weight: bold;
  cursor: pointer;
}

.popup-close:hover {
  color: #000;
}
/* Убеждаемся что корзина имеет меньший z-index */
#cartToggle,
.header-cart-btn,
.cart-modal,
.cart-container,
[class*="cart"] {
  z-index: 9998 !important; /* Меньше чем у loader */
}
#loader {
  z-index: 999999 !important;
}

#openPhoneModal.order-a-service {
  background: linear-gradient(180deg, #53a729, #339933) !important;
  color: #fff !important;
  box-shadow: 0 10px 28px rgba(31,93,31,0.16) !important;
  border: none !important;
  transition: transform .12s ease, box-shadow .12s ease !important;
}
.order-a-service:hover { transform: translateY(-3px) !important; box-shadow: 0 14px 38px rgba(31,93,31,0.20) !important; }
.order-a-service:active { transform: translateY(0) !important; box-shadow: 0 6px 18px rgba(31,93,31,0.14) !important; }