.search {
  --padding-top: 20px;
  --container-width: 100%;
  --container-padding: 0px 16px;
  --padding-inner-form: 12px 10px 10px;
  --close-button-width-height: 23px;
  --close-button-icon: 17px;
  --title-font-size: 16px;
  --title-margin-bottom: 12px;
  --input-container-padding: 3px;
  --input-clear-width-height: 23px;
  --input-clear-position-right: 10px;
  --input-clear-icon: 13px;
  --input-padding: 5px;
  --inner-result-max-height: 50vh;
  --inner-result-padding: 0 10px 10px;
  --result-padding: 7px;
  --result-font-size: 13px;
  --result-line-height: 16px;
  --link-padding: 0 5px 3px;
  --link-margin-bottom: 3px;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  display: none;
  justify-content: center;
  background: rgba(0, 0, 0, 0.7);
  color: #263952;
  padding-top: var(--padding-top);
  overflow: hidden;
  opacity: 0;
  pointer-events: none;
  transition: all 0.3s;
  z-index: 100;
}
.search._active {
  opacity: 1;
  pointer-events: all;
}
.search .container-search {
  width: var(--container-width);
  padding: var(--container-padding);
}
.search__inner-form {
  position: relative;
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: var(--padding-inner-form);
  background: #d8e0f5;
}
.search__close {
  position: absolute;
  top: 1px;
  right: 1px;
  width: var(--close-button-width-height);
  height: var(--close-button-width-height);
  background: rgba(0, 0, 0, 0.5) url(../img/icon/close-menu.svg) center/var(--close-button-icon) no-repeat;
  cursor: pointer;
}
.search__title {
  flex: 1 1 auto;
  font-size: var(--title-font-size);
  margin-bottom: var(--title-margin-bottom);
  text-align: center;
}
.search__form {
  display: flex;
  justify-content: center;
  align-items: center;
}
.search__input-container {
  position: relative;
  width: 100%;
  padding: var(--input-container-padding);
  background: rgba(0, 0, 0, 0.5);
}
.search__input-container label {
  width: 100%;
  height: 100%;
}
.search__input-clear {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: var(--input-clear-position-right);
  width: var(--input-clear-width-height);
  height: var(--input-clear-width-height);
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.5) url(../img/icon/close-menu.svg) center/var(--input-clear-icon) no-repeat;
  cursor: pointer;
  pointer-events: none;
  opacity: 0;
  transition: all 0.3s;
}
.search__input-container._active .search__input-clear {
  pointer-events: all;
  opacity: 1;
}
.search__input {
  width: 100%;
  padding: var(--input-padding);
  font-size: var(--result-font-size);
}
.search__inner-result {
  width: 100%;
  max-height: var(--inner-result-max-height);
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: var(--inner-result-padding);
  background: #d8e0f5;
  transition: all 0.5s;
  pointer-events: none;
  opacity: 0;
}
.search__inner-result._active {
  pointer-events: all;
  opacity: 1;
}
.search__result {
  width: 100%;
  border: 1px solid rgba(0, 0, 0, 0.5);
  background-color: rgba(255, 255, 255, 0.6);
  text-align: center;
  padding: var(--result-padding);
  font-size: var(--result-font-size);
  line-height: var(--result-line-height);
  overflow-y: auto;
}
.search__result::-webkit-scrollbar {
  -webkit-appearance: none;
  width: 5px;
}
.search__result::-webkit-scrollbar-thumb {
  border-radius: 2px;
  background-color: rgba(0, 0, 0, 0.5);
  box-shadow: 0 0 1px rgba(255, 255, 255, 0.5);
}
.search__link {
  display: block;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  color: #263952;
  padding: var(--link-padding);
  margin-bottom: var(--link-margin-bottom);
  text-align: left;
  transition: all 0.3s;
}
.search__link:last-child {
  margin-bottom: 0;
  border-bottom: none;
}
.search__link:hover {
  transform: scale(1.01);
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.4);
}

@media (min-width: 375px) {
  .search {
    --container-padding: 0px 27px;
    --title-font-size: 17px;
    --result-font-size: 15px;
  }
}
@media (min-width: 450px) {
  .search {
    --padding-top: 40px;
    --container-padding: 0px 40px;
    --padding-inner-form: 15px 15px 15px;
    --close-button-width-height: 25px;
    --title-font-size: 18px;
    --title-margin-bottom: 15px;
    --input-container-padding: 4px;
    --input-clear-width-height: 25px;
    --input-clear-position-right: 12px;
    --input-clear-icon: 15px;
    --input-padding: 7px;
    --inner-result-padding: 0 15px 15px;
    --result-padding: 10px 8px 8px;
    --result-font-size: 15px;
    --result-line-height: 18px;
    --link-padding: 0 7px 5px;
    --link-margin-bottom: 5px;
  }
}
@media (min-width: 600px) {
  .search {
    --container-width: 550px;
    --container-padding: 0px 35px;
    --padding-inner-form: 19px 15px 15px;
    --title-font-size: 22px;
    --title-margin-bottom: 19px;
    --inner-result-max-height: 45vh;
    --result-padding: 12px 8px 8px;
    --result-font-size: 17px;
    --result-line-height: 19px;
  }
}
@media (min-width: 768px) {
  .search {
    --padding-top: 45px;
    --container-width: 650px;
    --padding-inner-form: 23px 15px 15px;
    --close-button-width-height: 28px;
    --close-button-icon: 18px;
    --title-font-size: 26px;
    --title-margin-bottom: 23px;
    --input-clear-width-height: 26px;
    --input-clear-position-right: 11px;
    --input-clear-icon: 14px;
    --input-padding: 7px 5px;
    --inner-result-max-height: 45vh;
    --result-padding: 13px 10px 10px;
    --result-line-height: 21px;
    --link-padding: 0 8px 5px;
    --link-margin-bottom: 5px;
  }
}
@media (min-width: 1000px) {
  .search {
    --padding-top: 50px;
    --container-width: 750px;
    --container-padding: 0;
    --padding-inner-form: 25px 20px 20px;
    --close-button-width-height: 28px;
    --title-font-size: 30px;
    --title-margin-bottom: 25px;
    --input-clear-width-height: 28px;
    --input-clear-position-right: 13px;
    --input-clear-icon: 16px;
    --inner-result-max-height: 45vh;
    --inner-result-padding: 0 20px 20px;
    --result-padding: 15px 10px 10px;
    --result-font-size: 20px;
    --result-line-height: 23px;
  }
}