body {
  background-color: #1a1a1a; /* або інший колір у тон банеру */
  color: #f5f5f5;            /* щоб текст був світлий і читабельний */
}
section {
  background-color: #1a1a1a; /* темний фон */
  color: #f5f5f5;           /* світлий текст для контрасту */
}
/* Тільки картинки в секції портфоліо */
.portfolio-preview img {
 width: 100%;
  aspect-ratio: 16/9;   /* або 16/9 */       /* однакова висота прев’ю */
  object-fit: cover;   /* обрізає зайве, але не спотворює */
  object-position: center;
  border-radius: .5rem; /* для акуратності */
}
.services {
  position: relative;
  overflow: hidden; /* ховає зайве відео */
  min-height: 100vh; /* секція на весь екран */
}

.services .bg-video {
  position: absolute;
  top: 0; left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover; /* обрізає відео під пропорції */
  z-index: 0;
}

.services .overlay {
  background: rgba(0,0,0,0.6); /* затемнення */
  z-index: 1;
}

.services .container {
  position: relative;
  z-index: 2; /* текст поверх відео */
}
.carousel-item img {
  width: 100%;
  height: 500px;        /* або будь-яка висота */
  object-fit: contain;    /* обрізає зайве, але не спотворює */
  object-position: fill;
}
.carousel .carousel-item img {
  width: auto;       /* ширина = реальна ширина фото */
  max-width: 100%;   /* але не більше ширини екрану */
  height: auto;      /* пропорції зберігаються */
  margin: 0 auto;    /* центрування */
}
