*,
*::before,
*::after {
  box-sizing: border-box; /* общая ширина и высота */
}

html {
  block-size: 100%;
}

.page {
  display: flex;
  inline-size: 1200px;
  block-size: 100%;
  margin: auto; /* центрирует блок по горизонтали */
  color: #fff;
  font-family: 'Fira Sans Condensed', sans-serif;
  font-size: 18px;
  background-color: #1b1919;
}

h1,
h2,
h3,
h4,
p,
ul,
ol,
li,
blockquote,
fieldset {
  margin: 0;
  padding: 0;
}

ul,
ol {
  list-style: none;
}

/* Кастомный скроллбар */
.custom-scrollbar::-webkit-scrollbar {
  width: 4px;
}

.custom-scrollbar::-webkit-scrollbar-track {
  background: rgb(217 217 217 / 10%);
}

.custom-scrollbar::-webkit-scrollbar-thumb {
  background-color: #D9D9D9;
}

.title {
  padding-bottom: 26px;
  color: #fff;
  font-family: 'Oswald', sans-serif;
  text-transform: uppercase;
  font-weight: 700;
  line-height: 94%; /* межстрочный интервал */
  font-size: 75px;
}

.content {
  display: flex;
  align-items: flex-end;
  width: 1140px;
  margin: auto;
  column-gap: 30px;
}

.content__accent {
  color: #545050;
}

.content__list-container {
  position: relative;
  overflow-y: auto;
  block-size: 298px; /* фиксированная высота */
}

.content__list:nth-child(n) {
  display: flex;
  flex-direction: column;
  gap: 30px;
}

.content__list-item {
  align-items: start;
  width: 390px;
}

.content__video-card {
  display: flex;
  width: 390px;
}

.content__video-card-thumbnail {
  flex-shrink: 0; /* запрещает элементу сжиматься */
  height: 103px;
  width: 194px;
  object-fit: contain; /* маштабирование и сохранение прапорций */
  object-position: right;
}

.content__video-card-description-container {
  width: 196px;
}

.content__video-card-title {
  display: block;
  padding: 2px 2px 5px;
  color: #FFF;
  line-height: 1;
  text-transform: uppercase;
  font-family: Oswald, sans-serif;
  font-weight: 700;
  font-size: 30px;

  /* добавляет троеточие, если не влезло: */

  overflow: hidden;
  text-overflow: ellipsis;
}

.content__video-card-description {
  padding: 0 2px;
  color: #FFF;
  font-size: 18px;
  font-weight: 400;
  line-height: 16.2px;
  /* Свойства чтобы заменялось на "..." */
  line-clamp: 4; /* первые 4 строки текста */
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;

}

.content__details {
  inline-size: 100%;
}

.content__card-link {
  display: block;
  margin: 2px;
  text-decoration: none;
}

.content__card-link:active {
  background-color: #545050;
}

.content__card-link:hover {
  text-decoration: underline 1px #FFF;
}

.content__card-link:focus {
  outline: none;
}

.content__card-link:focus-visible {
  outline: 1px solid #FFF;
  margin-right: -2px;
}

.content__card-link_current {
  background-color: #545050;
}

.visually-hidden {
  position: absolute;
  inline-size: 1px;
  clip: rect(0 0 0 0); /* скрытие элемента*/
  clip-path: inset(50%);
  white-space: nowrap;
  block-size: 1px;
  overflow: hidden;
}

.result__video-container {
  position: relative;
  padding-bottom: 11px;
}

.result__video {
  height: 386px;
  width: 711px;
  object-fit: cover; /*заполнение всего контейнера при сохраненных прапорциях */
  object-position: center;
  inline-size: 100%;
  block-size: 100%;
}

.search-form {
  display: flex;
  align-items: end;
  gap: 40px;
}

.search-form__label {
  display: flex;
  align-items: center;
  width: fit-content;
  cursor: pointer;
}

.search-form__label-text {
  color: #fff;
  font-weight: 400;
  font-size: 18px;
  line-height: normal;
}

.search-form__label:hover .search-form__label-text {
  text-decoration: underline;
}

.search-form__label:has(:focus-visible) {
  outline: 1px solid #fff;
  outline-offset: 1px;
}

.search-form__textfield {
  min-width: 228px;
  padding: 2.5px 14px 2.5px 0;
  color: currentColor;
  font-family: inherit;
  font-weight: inherit;
  font-size: inherit;
  border-top: 1px solid #fff;
  border-right: 0;
  border-bottom: 1px solid #fff;
  border-left: 0;
  background-color: transparent;
  inline-size: 225px;
  appearance: none; /* удаление системных стилей*/
}

.search-form__textfield:focus {
  outline: 0;
}

.search-form__textfield:active {
  outline: 1px solid #fff;
  outline-offset: -1px;
}

.search-form__fieldset-title {
  font-weight: 400;
  font-size: 18px;
  margin-bottom: 5px;
}

.search-form__fieldset {
  display: flex;
  flex-direction: column;
  gap: 5px;
  border: none;
  inline-size: 100%;
}

.search-form__checkbox-list {
  display: flex;
  align-items: center;
  column-gap: 15px;
}

.search-form__pseudo-checkbox {
  position: relative;
  display: flex;
  flex-shrink: 0;
  margin-right: 5px;
  border: 1px solid #fff;
  width: 19px;
  height: 19px;
}

.search-form__checkbox:checked + .search-form__pseudo-checkbox::after {
  display: block;
}

.search-form__checkbox:active + .search-form__pseudo-checkbox::after {
  display: block;
}

.search-form__pseudo-checkbox::after {
  content: "";
  display: none;
  background-color: #fff;
  width: 15px;
  height: 15px;
  margin: auto;
}

.button {
  border: 1px solid #FFF;
  padding: 6px 0;
  background-color: transparent;
  text-align: center;
  cursor: pointer;
  font-family: 'Fira Sans Condensed', sans-serif;
  font-weight: 700;
  font-size: 18px;
  inline-size: 100%;
  color: #FFF;
}

.more-button {
  margin: 30px 0 2px 2px;
  width: 390px;
}

.button:hover {
  text-decoration: underline 1px #FFF;
}

.button:active {
  background-color: #545050;
}

.button:focus {
  outline: none;
}

.button:focus-visible {
  outline: 1px solid #FFF;
  outline-offset: 1px;
}
