/* Шапка: полупрозрачность + blur */
.t-header,
.t-header__wrapper {
  background-color: rgba(15, 15, 15, 0.45) !important;
  backdrop-filter: blur(18px) saturate(160%);
  -webkit-backdrop-filter: blur(18px) saturate(160%);
  transition: background-color .3s ease;
}

/* При скролле — чуть плотнее */
.t-header.t-header__fixed {
  background-color: rgba(15, 15, 15, 0.55) !important;
  box-shadow: 0 1px 0 rgba(255,255,255,.06);
}

/* Мобильная версия: плотнее, blur мягче */
@media (max-width: 980px) {
  .t-header,
  .t-header__wrapper {
    background-color: rgba(15, 15, 15, 0.6) !important;
    backdrop-filter: blur(14px) saturate(160%);
    -webkit-backdrop-filter: blur(14px) saturate(160%);
  }
}




.film-section {
  position: relative;
  overflow: hidden;
}

.film-section::after {
  content: "";
  position: absolute;
  z-index: 10;
  inset: 0;
  pointer-events: none;
  opacity: 0.13;
  mix-blend-mode: soft-light;

  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='.8'/%3E%3C/svg%3E");

  animation: film-grain-section 0.3s steps(2) infinite;
}

@keyframes film-grain-section {
  0%   { transform: translate(0, 0); }
  25%  { transform: translate(-3%, 2%); }
  50%  { transform: translate(2%, -3%); }
  75%  { transform: translate(3%, 1%); }
  100% { transform: translate(-2%, -2%); }
}
