:root {
  --white: #ffffff;
  --black: #000000;

  --blue1: #517da2;

  --green1: #a1ddbd;
  --green2: #72a789;

  --gray1: #343a40;
  --gray2: #6c757d;
  --gray3: #ced4da;
  --gray4: #f8f9fa;
}

.navbar {
  background-color: rgba(81, 125, 162, 1);
}

.offcanvas {
  z-index: 1060;
}

.navbar .navbar-nav .nav-link {
  color: white !important;
}

.navbar .navbar-nav .nav-link:hover {
  color: rgba(255, 255, 255, 0.8) !important;
}

.navbar .navbar-toggler-icon {
  filter: brightness(0) invert(1);
}

/* Основные стили для offcanvas */
.offcanvas {
  background-color: #f8f9fa; /* Светлый фон */
  border-left: 1px solid rgba(74, 111, 165, 0.1);
}

/* Заголовок offcanvas */
.offcanvas-header {
  background-color: var(--primary-color);
  color: white;
}

.offcanvas-title {
  color: white;
  font-weight: 600;
}

/* Кнопка закрытия */
.btn-close {
  filter: brightness(0) invert(1); /* Делаем крестик белым */
  opacity: 0.8;
}

.btn-close:hover {
  opacity: 1;
}

.offcanvas {
  background-color: #517da2 !important;
}

/* Пункты меню */
.navbar-nav .nav-item {
  border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}

.navbar-nav .nav-link:hover,
.navbar-nav .nav-link:focus {
  background-color: rgba(81, 125, 162, 1);
  color: white;
}

/* Активный пункт меню */
.navbar-nav .nav-link.active {
  background-color: var(--gray3);
}

/* Выпадающее меню внутри offcanvas */
.offcanvas-body .dropdown-menu {
  background-color: white !important;
}

.offcanvas-body .dropdown-item:hover {
  overflow: visible !important; /* Отключаем overflow */

  background-color: var(--gray4) !important;
  }

.offcanvas-body .dropdown-item:active {
  background-color: var(--gray4) !important;
  color: var(--gray1);
}

/* Анимация открытия */
.offcanvas {
  transition: transform 0.3s ease-in-out;
}

.j-header {
  background-color: var(--blue1) !important;
  color: var(--gray4) !important;
}

.j-menu-item {
  color: var(--gray4) !important;
}

.j-menu-button {
  color: var(--blue1);
}

.j-icon {
  color: var(--gray4);
}

.j-caruosel {
  width: 100%;
  margin: 0 auto;
}

.slick-slide {
  margin: 0 0.5vw;
  width: 99vw;
}

.slick-prev:before,
.slick-next:before {
  color: #517da2;
}

video {
  width: 100%;
}

.card {
  display: flex;
  flex-direction: column;
  height: 100%;
}

.j-ill {
  flex: 0 0 auto;
  overflow: hidden;
  align-content: center;
  text-align: center;
}

.j-ill img,
.j-ill video {
  width: 100%;
  height: auto;
  display: block;
  object-fit: cover;
}

.card-body {
  flex: 1;
  display: flex;
  flex-direction: column;
}

.card-text {
  flex-grow: 1;
}

.j-carousel .slick-slide {
  height: auto;
}

#image {
  max-width: 100%;
  animation: fade 10s linear infinite;
  animation-delay: 5s;
}

#imagec {
  max-width: 100%;
  animation: fade 10s linear infinite;
  animation-delay: 5s;
}

.navlink {
  color: var(--gray4) !important;
}

@keyframes fade {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

video::-webkit-media-controls {
  display: none !important;
}

.nav-link .pe-lg-5 .ps-lg-5 {
  color: var(--gray4);
}



h1 {
  color: var(--blue1);
}

p.text-center.mt-2.mt-lg-3.mb-0 {
  color: var(--gray2) !important;
  font-size: larger;
}

h3 {
  color: var(--blue1) !important;
}

h4 {
  color: var(--gray1) !important;
  font-weight: light;
}

a {
  color: var(--blue1);
}

a:hover {
  color: var(--green2);
}

h4.fw-light {
  font-weight: lighter;
}

footer {
  background-color: var(--blue1);
}

.navbar-toggler:focus {
  box-shadow: none !important;
  outline: none !important;
}

/* Если используется кастомная кнопка */
.btn-close:focus {
  box-shadow: none !important;
}

.custom-alert {
    position: fixed;
    top: 20px;
    left: 50%;
    transform: translateX(-50%);
    background: var(--white);
    color: var(--blue1);
    padding: 15px 20px;
    border-radius: 5px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
    z-index: 1200;
    opacity: 0;
    transition: opacity 0.3s ease;
}
.custom-alert.show {
    opacity: 1;
}