/* Карусель фотографий для страниц проектов.
   Лента прокручивается пальцем или трекпадом, на компьютере ещё и
   стрелками. Снимки разной формы (портреты и горизонтальные кадры),
   поэтому высота у всех одна, а ширина – по пропорции снимка.
   Оформление как у остальных страниц: чёрный фон, 'Noto Sans',
   тонкий заголовок капсом и красная линия под ним. */
.md-gal {
  background: #000;
  color: #fff;
  font-family: 'Noto Sans', Arial, sans-serif;
  padding: 70px 0 80px;
}
.md-gal__head {
  max-width: 1200px;
  margin: 0 auto 26px;
  padding: 0 24px;
}
.md-gal__title {
  margin: 0 0 10px;
  font-weight: 300;
  font-size: clamp(22px, 3.4vw, 38px);
  line-height: 1.1;
  letter-spacing: .5px;
  text-transform: uppercase;
}
.md-gal__line {
  display: block;
  width: 100%;
  max-width: 800px;
  height: 1px;
  background: radial-gradient(circle, #e00000 0%, rgba(224, 0, 0, 0) 100%);
}
.md-gal__lead {
  margin: 18px 0 0;
  max-width: 720px;
  font-weight: 300;
  font-size: 15px;
  line-height: 1.6;
  color: #aaa;
}

/* сама лента */
.md-gal__viewport {
  overflow-x: auto;
  overflow-y: hidden;
  scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
}
.md-gal__viewport::-webkit-scrollbar { display: none; }
.md-gal__track {
  display: flex;
  gap: 16px;
  padding: 0 24px;
  width: max-content;
}
.md-gal__item {
  margin: 0;
  flex: 0 0 auto;
  scroll-snap-align: center;
}
.md-gal__item img {
  display: block;
  height: 62vh;
  max-height: 620px;
  width: auto;
  max-width: 88vw;
  object-fit: cover;
  border-radius: 12px;
  background: #111;
}

/* панель под лентой: стрелки и счётчик */
.md-gal__bar {
  max-width: 1200px;
  margin: 22px auto 0;
  padding: 0 24px;
  display: flex;
  align-items: center;
  gap: 14px;
}
.md-gal__btn {
  width: 42px;
  height: 42px;
  flex: 0 0 auto;
  border: 1px solid rgba(255, 255, 255, .28);
  border-radius: 50%;
  background: transparent;
  color: #fff;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  transition: border-color .2s ease, opacity .2s ease;
}
.md-gal__btn:hover { border-color: #fff; }
.md-gal__btn[disabled] { opacity: .3; cursor: default; }
.md-gal__btn svg { width: 18px; height: 18px; }
.md-gal__count {
  font-size: 13px;
  letter-spacing: .12em;
  color: #aaa;
}

@media (max-width: 639px) {
  .md-gal { padding: 50px 0 60px; }
  .md-gal__head, .md-gal__bar { padding: 0 3.125vw; }
  .md-gal__track { padding: 0 3.125vw; gap: 10px; }
  .md-gal__item img { height: 52vh; max-width: 82vw; }
  /* на телефоне листают пальцем – стрелки не нужны */
  .md-gal__btn { display: none; }
}

/* Заголовки разделов на страницах проектов – по центру, красная линия под ними
   тоже по центру, как на главной (01.10.2026, его правило: все заголовки разделов
   сайта – по центру). */
.md-gal__head { text-align: center; }
.md-gal__line { margin-left: auto; margin-right: auto; }
.md-gal__lead { margin-left: auto; margin-right: auto; }
