/* Глобальні стилі */
/* Фіксований footer внизу сторінки */
@import url("https://fonts.googleapis.com/css2?family=Montserrat:wght@100&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Quicksand:wght@400;700&display=swap"); /* Цікавий шрифт */
@import url("https://fonts.googleapis.com/css2?family=Merriweather:wght@300&display=swap");
/* Глобальні стилі */
body {
  margin: 0;
  padding: 0;
  font-family: "Quicksand", sans-serif;
  background: url("/image/photo_2025-03-23_13-39-25.jpg") no-repeat center center fixed;
  background-size: cover;
  min-height: 100vh;
  height: 100%;
  width: 100%;
}
html {
  width: 100%;

  height: 100%;
  margin: 0;
  display: flex;
  flex-direction: column;
}
/* Фіксований футер */
.footer {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  background-color: #000000; /* Темний фон */
  color: white; /* Білий текст */
  text-align: center;
  padding: 12px 20px; /* Відступи */
  font-size: 14px;
  font-weight: bold; /* Жирний текст */
  z-index: 999; /* Поверх усього */

  display: flex;
  justify-content: center; /* Центрування по горизонталі */
  align-items: center; /* Центрування по вертикалі */
  height: 50px; /* Фіксована висота футера */
  flex-wrap: wrap; /* Для адаптивності */
}

/* Контактна інформація */
.footer span {
  display: flex;
  align-items: center;
  gap: 8px; /* Відступ між іконкою і текстом */
}

/* Стиль для посилання */
.footer a {
  text-decoration: none;
  color: white; /* Білий текст */
  font-weight: bold;
}

.footer a:hover {
  text-decoration: underline;
  color: #f8d210; /* Виділення при наведенні */
}
.content-wrapper {
  flex: 1;
  padding-bottom: 100px;
}
.navbar {
  background-color: #000000;
}

/* Стилі для логотипа */
.navbar-brand img {
  max-width: 100px; /* Обмеження максимального розміру */
  height: auto; /* Збереження пропорцій */
  transition:
    transform 0.3s ease,
    filter 0.3s ease; /* Анімація для ефектів */
  border-radius: 10px; /* Округлені кути для логотипа */
}

/* Ефект при наведенні на логотип */
.navbar-brand img:hover {
  transform: scale(1.1); /* Збільшення логотипа при наведенні */
  filter: brightness(1.2); /* Підсвітка логотипа */
}

/* Стиль для тексту поруч з логотипом */
.navbar-brand span {
  margin-left: 10px; /* Відступ між логотипом і текстом */
  color: #fff;
  text-align: center;
  letter-spacing: 1px;
  text-shadow: 2px 2px 10px rgba(0, 0, 0, 0.5);
}

/* Стилі для тексту SOSNOVA (жирний і більший) */
.navbar-brand .sosnova {
  font-size: 2rem; /* Збільшуємо розмір шрифта */
  font-weight: bold;
  text-transform: uppercase;
  font-family: "Montserrat", sans-serif;
}

/* Стилі для тексту relax zone (менший і не жирний) */
.navbar-brand .relax-zone-head {
  font-size: 1.2rem; /* Менший шрифт */
  font-weight: normal; /* Тонкий варіант шрифта без жирності */
  font-family: "Montserrat", sans-serif;
}

/* Форми */
form {
  max-width: 500px;
  margin: 0 auto;
  background: white;
  padding: 20px;
  border-radius: 8px;
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
}

form label {
  font-weight: bold;
}

form input,
form select {
  width: 100%;
  padding: 10px;
  margin-top: 5px;
  margin-bottom: 10px;
  border-radius: 5px;
  border: 1px solid #ccc;
}
/* Таблиці */
.table {
  background: white;
  border-radius: 8px;
  overflow: hidden;
}

.btn-group {
  display: flex;
  gap: 5px; /* Збільшує відстань між кнопками */
}

.pagination {
  display: flex;
  justify-content: center;
  margin-top: 20px;
}

.pagination .page-item {
  list-style: none;
  margin: 0 5px;
}

.pagination .page-link {
  padding: 8px 12px;
  border-radius: 5px;
  border: 1px solid #007bff;
  color: #007bff;
  text-decoration: none;
  font-weight: bold;
}

.pagination .page-item.active .page-link {
  background-color: #007bff;
  color: white;
  border: 1px solid #007bff;
}

.pagination .page-link:hover {
  background-color: #0056b3;
  color: white;
}
/* Кнопки */
.btn-primary {
  background-color: #007bff;
  border: none;
}

.btn-danger {
  background-color: #dc3545;
  border: none;
}

/* Додаємо стилі для заголовків */
h1 {
  font-size: 1rem;
  font-weight 700;
  text-shadow: 4px 4px 12px rgba(0, 0, 0, 0.9),  
             2px 2px 6px rgba(0, 0, 0, 0.6);
}
.relax-zone {
  color: #fff;
  text-align: center;
  letter-spacing: 1px;
text-shadow: 4px 4px 12px rgba(0, 0, 0, 0.9),  
             2px 2px 6px rgba(0, 0, 0, 0.6);
  font-family: "Montserrat", sans-serif;
  font-weight: 600; /* Тонкий варіант шрифта */
  position: relative; /* Додаємо відносне позиціонування */
  top: -20px; /* Піднімаємо на 10px */
}
.deskription {
  color: #fff;
  text-align: center;
  font-size: 1rem;
text-shadow: 4px 4px 12px rgba(0, 0, 0, 0.9),  
             2px 2px 6px rgba(0, 0, 0, 0.6);
     font-weight: 500; /* Тонкий варіант шрифта */
}
h3 {
  color: #fff;
text-shadow: 4px 4px 12px rgba(0, 0, 0, 0.9),  
             2px 2px 6px rgba(0, 0, 0, 0.6);
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 3px;
  
  font-family: "Montserrat", sans-serif;
  font-weight: 600; /* Тонкий варіант шрифту */
}
.sosnova {
  color: #fff;
  font-weight: bold;
  font-size: 3rem; /* Збільшено розмір шрифта */
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 3px;
  text-shadow: 4px 4px 12px rgba(0, 0, 0, 0.9),  
             2px 2px 6px rgba(0, 0, 0, 0.6);
  font-family: "Montserrat", sans-serif;
}

.hello {
  color: #fff;

  font-weight: bold;
  font-size: 1rem; /* Збільшено розмір шрифта */
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 3px;
text-shadow: 4px 4px 12px rgba(0, 0, 0, 0.9),  
             2px 2px 6px rgba(0, 0, 0, 0.6);
  font-family: "Montserrat", sans-serif;
   font-weight: 1000;
}
.home {
  color: #fff;
  font-weight: bold;
  font-size: 1rem; /* Збільшено розмір шрифта */
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 3px;
text-shadow: 4px 4px 12px rgba(0, 0, 0, 0.9),  
             2px 2px 6px rgba(0, 0, 0, 0.6);
  font-family: "Montserrat", sans-serif;
   font-weight: 1000;
}
/*admin button Rooms Booking*/
.nav-link {
  background-color: #00c1c1; /* М'ятний колір */
  color: #fff; /* Білий текст */
  font-family: "Quicksand", sans-serif; /* Цікавий шрифт */
  border-radius: 5px;
  transition: background-color 0.3s ease; /* Плавний перехід */
  padding: 10px 20px; /* Додано трохи внутрішнього відступу для кращого вигляду */
}

.nav-link:hover {
  background-color: #00b0b0; /* Темніший м'ятний колір при наведенні */
  color: white; /* Білий текст при наведенні */
}

.nav-link.active {
  background-color: #008e8e; /* Темніший м'ятний колір для активної вкладки */
  color: white; /* Білий текст для активної вкладки */
  font-weight: bold; /* Товстий шрифт для активної вкладки */
  box-shadow: 0 0 10px rgba(0, 142, 142, 0.7); /* Тінь для активної вкладки */
}

div h6 {
  font-family: "Cinzel", serif; /* Рукописний шрифт */
  color: #1a73e8; /* Яскраво-синій колір, добре видно на білому фоні */
  font-size: 22px; /* Розмір шрифта */
  font-weight: normal; /* Тонкий шрифт */
  text-align: center; /* Вирівнювання по центру */
  margin: 20px 0; /* Відступи для заголовка */
}
/* Галерея зображень */
.image-gallery {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px;
}

.image-gallery .image-container {
  width: 100%;
  max-width: 200px;
}

.image-gallery img {
  width: 100%;
  height: 100%;
  object-fit: cover; /* Забезпечує гарне відображення */
  border-radius: 10px;
}

.image-gallery .delete-btn {
  position: absolute;
  top: 5px;
  right: 5px;
  background: red;
  color: white;
  border: none;
  border-radius: 50%;
  width: 25px;
  height: 25px;
  cursor: pointer;
}

.img-thumbnail {
  width: 100%;
  height: 200px; /* Або встановіть потрібну висоту */
  object-fit: cover; /* Це дозволить зберігати пропорції зображення, при цьому вирізаючи частину зображення, якщо потрібно */
}

.carousel-item img {
  width: 100%; /* Зображення буде заповнювати ширину контейнера */
  height: 400px; /* Встановлює фіксовану висоту */
  object-fit: cover; /* Обрізає зображення, щоб воно заповнило контейнер */
}

.card {
  height: 100%;
}

.card-body {
  padding: 20px; /* Встановлює відступи для контенту */
}

/* Додаємо затемнення при наведенні */
.carousel-inner {
  position: relative;
}

.carousel-inner::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.3); /* Напівпрозоре затемнення */
  opacity: 0;
  transition: opacity 0.5s ease;
}

.carousel-inner:hover::after {
  opacity: 1;
}

/* Анімація масштабування (zoom-in) */
.carousel-item img {
  transition: transform 0.5s ease-in-out;
}

.carousel-item:hover img {
  transform: scale(1.05); /* Легке збільшення при наведенні */
}

/* Загальний стиль для стрілок */
/* Для лівої стрілки */
.custom-carousel-control-prev {
  position: absolute; /* Розміщення поверх зображення */
  top: 50%; /* Центрування вертикально */
  transform: translateY(-50%); /* Центрування точніше */
  background-color: rgba(0, 0, 0, 0.5); /* Напівпрозорий фон */
  color: white; /* Білий колір для стрілки */
  font-size: 20px; /* Розмір стрілки */
  padding: 5px 10px; /* Менші відступи */
  border-radius: 50%; /* Кругла форма */
  cursor: pointer; /* Курсор у вигляді pointer */
  transition: background-color 0.3s ease; /* Перехід кольору при наведенні */
  z-index: 1; /* Поверх зображення */
  left: 10px; /* Відстань від лівого краю */
}
.custom-carousel-control-prev:hover {
  background-color: rgba(0, 0, 0, 0.7); /* Темніший фон при наведенні */
}

/* Для правої стрілки */
.custom-carousel-control-next {
  position: absolute; /* Розміщення поверх зображення */
  top: 50%; /* Центрування вертикально */
  transform: translateY(-50%); /* Центрування точніше */
  background-color: rgba(0, 0, 0, 0.5); /* Напівпрозорий фон */
  color: white; /* Білий колір для стрілки */
  font-size: 20px; /* Розмір стрілки */
  padding: 5px 10px; /* Менші відступи */
  border-radius: 50%; /* Кругла форма */
  cursor: pointer; /* Курсор у вигляді pointer */
  transition: background-color 0.3s ease; /* Перехід кольору при наведенні */
  z-index: 1; /* Поверх зображення */
  right: 10px; /* Відстань від правого краю */
}
.custom-carousel-control-next:hover {
  background-color: rgba(0, 0, 0, 0.7); /* Темніший фон при наведенні */
}
/* Стилізація індикаторів (dots) */
.carousel-indicators button {
  background-color: #fff;
  width: 10px;
  height: 10px;
  border-radius: 50%;
}

.carousel-indicators .active {
  background-color: #007bff;
  width: 12px;
  height: 12px;
}
.custom-booking-btn {
  background-color: #e60024 !important; /* Задаємо колір */
  color: white !important; /* Білий текст */
  padding: 10px 20px; /* Відступи всередині */
  border-radius: 5px; /* Округлені краї */
  text-align: center; /* Центруємо текст */
  display: inline-block; /* Залишаємо кнопку у своєму розмірі */
  font-weight: bold; /* Жирний текст */
  transition: background-color 0.3s ease; /* Плавний ефект зміни кольору */
}

/* Ефект при наведенні */
.custom-booking-btn:hover {
  background-color: #cd0020 !important; /* Трохи темніший колір при наведенні */
  color: #fff !important; /* Залишаємо білий текст */
}

/* Фіксований фон */
.fixed-background {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url("/image/photo_2025-03-23_13-39-25.jpg") no-repeat center center;
  background-size: cover;
  z-index: -1;
}

/* Контейнер для основного контенту */
.scrollable-content {
  position: relative;
  z-index: 1;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

/* Медіа-запити */
@media (max-width: 768px) {
  body {
    padding-bottom: 65px; /* Більший відступ, щоб футер не перекривав контент */
    background: url("/image/photo_2025-03-23_13-39-25.jpg") no-repeat center center fixed;
    background-size: cover;
  }
  .content-wrapper {
    background-attachment: scroll;
  }

  .navbar-brand img {
    max-width: 50px; /* Зменшення розміру логотипа на мобільних */
  }
  h1 {
    font-size: 1.8rem;
  }

  .menu-toggle {
    display: block;
    background: none;
    border: none;
    font-size: 1.5rem;
    color: white;
    cursor: pointer;
  }

  .carousel-item img {
    width: 100%; /* Зображення буде заповнювати ширину контейнера */
    height: 400px; /* Встановлює фіксовану висоту */
    object-fit: cover; /* Обрізає зображення, щоб воно заповнило контейнер */
  }
}
/* Виправлення для iOS */
/* Виправлення для iOS (запобігання білому фону) */
@supports (-webkit-touch-callout: none) {
  body,
  .content-wrapper {
    background-attachment: scroll !important;
  }
}
/* Обгортка галереї */
.positions {
    width: 100%;
    display: flex;
    justify-content: center;
    padding: 0;
    margin: 0;
}
/* Контейнер */
.container {
    max-width: 95%;
    padding: 0;
    margin: 0 auto; /* Центруємо контейнер */
    box-sizing: border-box; /* Усуває проблеми з розмірами */
}
/* Галерея */
.portfolio-item {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    justify-content: center; /* Вирівнюємо вміст по центру */
    padding: 0;
    margin: 0;
}

/* Елементи */
.item {
    width: 25%; /* 4 колонки */
    padding: 0; /* Відключаємо внутрішні відступи */
    margin: 0; /* Відключаємо зовнішні відступи */
}

/* Картинки */
.img-fluid {
    width: 100%;
    height: auto;
    object-fit: cover;
    display: block;
}
.caption {
    position: absolute;
    bottom: 10px; /* Можна змінити залежно від бажаного місця */
    left: 50%;
    transform: translateX(-50%);
    text-align: center;
    color: white; /* Колір тексту */
    font-size: 16px;
    background-color: rgba(0, 0, 0, 0.5); /* напівпрозорий фон */
    padding: 5px 10px;
    border-radius: 5px;
}

.caption h5 {
    font-size: 18px;
    font-weight: bold;
    margin: 0;
}

.caption p {
    font-size: 14px;
    margin: 0;
}
.btn-icon-xs {
    padding: 1px 4px;      /* дуже маленькі відступи */
    font-size: 0.7rem;     /* дрібніший текст/іконка */
    line-height: 1;        /* мінімальна висота */
    height: 22px;          /* фіксована висота */
    width: 26px;           /* щоб були квадратними */
    border-radius: 4px;    /* легке заокруглення */
    display: inline-flex;
    align-items: center;
    justify-content: center;
}
.btn-icon-xs i {
    font-size: 13px;       /* іконка трохи менша */
}

.table td form {
    margin: 0;
    padding: 0;
    display: inline-flex;     /* щоб форма була розміром кнопки */
    align-items: center;      /* вирівнювання кнопки по центру */
}

