.tag-link {
    display: flex;
    gap: 5px;
    color: transparent;
}

.tag-box .tag-link  a {
    position: relative;
    display: block;
    padding: 0px 20px 0px;
    background: var(--thm-base);
    color: #fff;
    font-size: 12px;
    line-height: 45px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-family: var(--thm-font);
    transition: all 200ms linear;
    transition-delay: 0.1s;
}

/* Обрезка слайдов под один размер */
.crop-box-h70-cover {
    position: relative;
    overflow:hidden;
    min-height: 70px;
}
.crop-box-h70-cover img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
}

.crop-box-h255-cover {
    position: relative;
    overflow:hidden;
    min-height: 255px;
}
.crop-box-h255-cover img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
}

.crop-box-h255-contain {
    position: relative;
    overflow:hidden;
    min-height: 255px;
}
.crop-box-h255-contain img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    position: absolute;
    top: 0;
    left: 0;
}

.crop-box-h505-cover {
    position: relative;
    overflow:hidden;
    min-height: 505px;
}
.crop-box-h505-cover img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
}

/* --- Модальное окно: общие настройки --- */
#contactModal .modal-content {
  border-radius: 16px;
  border: none;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15);
}
#contactModal .modal-header {
  padding: 1.25rem 1.5rem 0.5rem;
}
#contactModal .modal-title {
  font-weight: 600;
  font-size: 1.25rem;
  color: #1f2937;
}
#contactModal .modal-body {
  padding: 0.5rem 1.5rem 1rem;
}
#contactModal .modal-footer {
  padding: 0 1.5rem 1.25rem;
}

/* --- Контейнер с контактами --- */
.contact-info {
  text-align: center;
  color: #374151;
  line-height: 1.6;
}

/* --- Текстовые блоки --- */
.lead-text {
  font-size: 1.05rem;
  margin: 0 0 1rem;
  color: #1f2937;
}
.middle-text {
  margin: 1.25rem 0 0.5rem;
  color: #6b7280;
  font-size: 0.95rem;
}
.note-text {
  margin: 1.5rem 0 0;
  color: #6b7280;
  font-style: italic;
  font-size: 0.95rem;
}

/* --- Телефоны --- */
.contact-phones {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  margin: 0.75rem 0 1.25rem;
}
.phone-link {
  font-size: 1.25rem;
  font-weight: 600;
  color: #2563eb;
  text-decoration: none;
  transition: color 0.2s;
}
.phone-link:hover {
  color: #1d4ed8;
  text-decoration: underline;
}

/* --- Email --- */
.email-link {
  display: inline-block;
  font-size: 1.1rem;
  font-weight: 500;
  color: #2563eb;
  text-decoration: none;
  margin: 0.5rem 0 1.5rem;
  transition: color 0.2s;
}
.email-link:hover {
  color: #1d4ed8;
  text-decoration: underline;
}

/* --- График работы --- */
.work-hours {
  background: #f9fafb;
  border-radius: 10px;
  padding: 1rem 1.25rem;
  margin: 0 auto 1.25rem;
  max-width: 320px;
}
.hours-title {
  margin: 0 0 0.75rem;
  font-weight: 600;
  color: #1f2937;
  font-size: 0.95rem;
}
.work-hours ul {
  list-style: none;
  padding: 0;
  margin: 0;
  text-align: left;
  font-size: 0.95rem;
}
.work-hours li {
  margin: 0.25rem 0;
  color: #4b5563;
}
.work-hours strong {
  color: #1f2937;
}

/* --- Кнопка закрытия --- */
#contactModal .btn-outline-secondary {
  border-radius: 8px;
  padding: 0.5rem 1.5rem;
  font-weight: 500;
  transition: all 0.2s;
}
#contactModal .btn-outline-secondary:hover {
  background: #6b7280;
  color: #fff;
}

/* --- Адаптив для мобильных --- */
@media (max-width: 576px) {
  #contactModal .modal-dialog {
    margin: 1rem;
  }
  .phone-link {
    font-size: 1.15rem;
  }
  .contact-info {
    font-size: 0.95rem;
  }
}