html {
  box-sizing: border-box;
}

*,
*::before,
*::after {
  margin: 0;
  padding: 0;
  box-sizing: inherit;
}

body {
  overflow-x: hidden;
  font-family: "Montserrat", "Arial", "Helvetica", sans-serif;
  font-size: 13px;
  line-height: 1.5;
  color: #1c1f22;
  background: #fff;
}

@media (min-width: 991px) {
  body {
    font-size: 15px;
  }
}

img {
  max-width: 100%;
}

ul,
li {
  list-style: none;
}

a {
  transition: all 0.3s ease-out;
}

.visually-hidden {
  position: absolute;
  overflow: hidden;
  margin: -1px;
  border: 0;
  padding: 0;
  width: 1px;
  height: 1px;
  clip: rect(0 0 0 0);
}

.container {
  margin: 0 auto;
  padding: 0 20px;
  width: 100%;
  max-width: 768px;
}

@media (min-width: 992px) {
  .container {
    padding: 0 15px;
    max-width: 1030px;
  }
}

@media (min-width: 992px) {
  .inner-container {
    padding: 0 30px;
  }
}

.icon {
  fill: #8a8a8a;
  transition: all 0.3s ease-out;
}

.button {
  display: block;
  margin: 0 auto;
  border: none;
  border-radius: 8px;
  padding: 23px 25px;
  width: 100%;
  max-width: 280px;
  box-shadow: 0 5px 25px 0 #315efb;
  font-weight: 700;
  font-size: 16px;
  text-align: center;
  text-decoration: none;
  color: #fff;
  background-color: #315efb;
  transition: all 0.3s ease-out;
}

.button:hover,
.button:active,
.button:focus {
  box-shadow: none;
}

.sprite {
  display: none;
}

.main-link {
  font-weight: 700;
  text-decoration: none;
  color: #315efb;
}

.main-link:hover,
.main-link:active,
.main-link:focus {
  text-decoration: underline;
}

.main-header__wrapper {
  padding: 15px 0;
  background-color: #edeff0;
}

@media (min-width: 992px) {
  .main-header__wrapper {
    padding: 0;
  }
}

.main-header__container {
  position: relative;
  min-height: 40px;
}

@media (min-width: 992px) {
  .main-header__container {
    font-size: 0;
  }
}

.main-header__logo-wrapper {
  position: absolute;
  left: 50%;
  top: 50%;
  font-size: 0;
  transform: translate(-50%, -50%);
}

@media (min-width: 992px) {
  .main-header__logo-wrapper {
    position: static;
    display: inline-block;
    vertical-align: middle;
    margin-right: 30px;
    max-width: 130px;
    transform: none;
  }
}

.main-header__nav {
  position: absolute;
  left: 20px;
  top: 50%;
  transform: translateY(-50%);
}

@media (min-width: 992px) {
  .main-header__nav {
    position: static;
    display: inline-block;
    vertical-align: middle;
    width: calc(100% - 130px - 30px - 200px - 30px);
    transform: none;
  }
}

.main-header__buttons {
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
}

@media (min-width: 992px) {
  .main-header__buttons {
    position: static;
    display: inline-block;
    vertical-align: middle;
    margin-left: 30px;
    width: 100%;
    max-width: 200px;
    text-align: right;
    transform: none;
  }
}

.main-header__button {
  position: relative;
  display: inline-block;
  padding-left: 27px;
}

@media (min-width: 992px) {
  .main-header__button:hover .main-header__button-text,
  .main-header__button:active .main-header__button-text,
  .main-header__button:focus .main-header__button-text {
    text-decoration: underline;
  }
}

.main-header__button--search {
  display: none;
}

.main-header__button--search::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  display: block;
  width: 20px;
  height: 20px;
  background: url("../fonts/icon-search.svg") no-repeat;
  transform: translateY(-50%);
}

@media (min-width: 992px) {
  .main-header__button--search {
    display: inline-block;
    margin-right: 20px;
  }
}

.main-header__button--login::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  display: block;
  width: 20px;
  height: 20px;
  background: url("../fonts/icon-user.svg") no-repeat;
  transform: translateY(-50%);
}

.main-header__button-text {
  display: none;
}

@media (min-width: 992px) {
  .main-header__button-text {
    display: inline-block;
    font-weight: 500;
    font-size: 10px;
    color: #315efb;
  }
}

.main-header__wrapper {
  padding: 15px 0;
  background-color: #edeff0;
}

@media (min-width: 992px) {
  .main-header__wrapper {
    padding: 0;
  }
}

.main-header__container {
  position: relative;
  min-height: 40px;
}

@media (min-width: 992px) {
  .main-header__container {
    font-size: 0;
  }
}

.main-header__logo-wrapper {
  position: absolute;
  left: 50%;
  top: 50%;
  font-size: 0;
  transform: translate(-50%, -50%);
}

@media (min-width: 992px) {
  .main-header__logo-wrapper {
    position: static;
    display: inline-block;
    vertical-align: middle;
    margin-right: 30px;
    max-width: 130px;
    transform: none;
  }
}

.main-header__nav {
  position: absolute;
  left: 20px;
  top: 50%;
  transform: translateY(-50%);
}

@media (min-width: 992px) {
  .main-header__nav {
    position: static;
    display: inline-block;
    vertical-align: middle;
    width: calc(100% - 130px - 30px - 200px - 30px);
    transform: none;
  }
}

.main-header__buttons {
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
}

@media (min-width: 992px) {
  .main-header__buttons {
    position: static;
    display: inline-block;
    vertical-align: middle;
    margin-left: 30px;
    width: 100%;
    max-width: 200px;
    text-align: right;
    transform: none;
  }
}

.main-header__button {
  position: relative;
  display: inline-block;
  padding-left: 27px;
}

@media (min-width: 992px) {
  .main-header__button:hover .main-header__button-text,
  .main-header__button:active .main-header__button-text,
  .main-header__button:focus .main-header__button-text {
    text-decoration: underline;
  }
}

.main-header__button--search {
  display: none;
}

.main-header__button--search::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  display: block;
  width: 20px;
  height: 20px;
  background: url("../fonts/icon-search.svg") no-repeat;
  transform: translateY(-50%);
}

@media (min-width: 992px) {
  .main-header__button--search {
    display: inline-block;
    margin-right: 20px;
  }
}

.main-header__button--login::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  display: block;
  width: 20px;
  height: 20px;
  background: url("../fonts/icon-user.svg") no-repeat;
  transform: translateY(-50%);
}

.main-header__button-text {
  display: none;
}

@media (min-width: 992px) {
  .main-header__button-text {
    display: inline-block;
    font-weight: 500;
    font-size: 10px;
    color: #315efb;
  }
}

.top-bar {
  padding: 7px 0;
}

.top-bar__container {
  min-height: 16px;
}

.top-bar__container::after {
  content: "";
  display: block;
  clear: both;
}

.top-bar__country {
  float: left;
}

.top-bar__social {
  float: right;
}

.country__link {
  position: relative;
  display: block;
  padding-right: 15px;
  min-width: 35px;
  min-height: 16px;
  text-decoration: none;
}

.country__link:hover .country__select-icon,
.country__link:active .country__select-icon,
.country__link:focus .country__select-icon {
  fill: #315efb;
}

.country__name {
  display: none;
}

.country__select-icon {
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}

.country__flag {
  position: absolute;
  left: 0;
  top: 50%;
  width: 20px;
  height: 12px;
  transform: translateY(-50%);
}

.social__list {
  font-size: 0;
}

.social__item {
  display: inline-block;
  vertical-align: middle;
}

.social__item:not(:last-of-type) {
  margin-right: 20px;
}

.social__link {
  text-decoration: none;
}

.social__link:hover .social__icon,
.social__link:active .social__icon,
.social__link:focus .social__icon {
  fill: #315efb;
}

.social__link:hover .social__number,
.social__link:active .social__number,
.social__link:focus .social__number {
  color: #315efb;
}

@media (min-width: 992px) {
  .social__icon {
    display: inline-block;
    vertical-align: middle;
    margin-right: 5px;
  }
}

.social__number {
  display: none;
}

@media (min-width: 992px) {
  .social__number {
    display: inline-block;
    vertical-align: middle;
    font-weight: 500;
    font-size: 10px;
    color: #8a8a8a;
    transition: all 0.3s ease-out;
  }
}

.nav__burger {
  display: block;
  width: 20px;
  height: 14px;
  text-decoration: none;
  background: url("../fonts/icon-burger.svg") no-repeat;
}

@media (min-width: 992px) {
  .nav__burger {
    display: none;
  }
}

.nav__list {
  display: none;
}

@media (min-width: 992px) {
  .nav__list {
    display: block;
    font-size: 0;
    text-align: center;
  }
}

.nav__item {
  display: inline-block;
}

.nav__link {
  position: relative;
  display: block;
  padding: 30px 15px;
  font-weight: 500;
  font-size: 14px;
  text-decoration: none;
  color: inherit;
}

.nav__link::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  z-index: 0;
  display: block;
  width: 60px;
  height: 60px;
  background: url("../fonts/x-letter.svg") center no-repeat;
  opacity: 0;
  transform: translate(-50%, -50%);
  transition: all 0.5s ease-out;
}

.nav__link:hover,
.nav__link:active,
.nav__link:focus {
  color: #315efb;
}

.nav__link:hover::before,
.nav__link:active::before,
.nav__link:focus::before {
  opacity: 1;
}

.nav__link--active:hover::before,
.nav__link--active:active::before,
.nav__link--active:focus::before {
  opacity: 0;
}

.nav__link--important {
  color: #ff4d6e;
}

.nav__link-name {
  position: relative;
  z-index: 10;
}

.main-content {
  display: block;
}

@media (min-width: 992px) {
  .main-content__wrapper {
    font-size: 0;
  }
}

@media (min-width: 992px) {
  .main-content__article {
    display: inline-block;
    vertical-align: top;
    margin-right: 30px;
    width: 100%;
    max-width: 100%;
  }
}

.main-content__sidebar {
  display: none;
}

@media (min-width: 992px) {
  .main-content__sidebar {
    display: inline-block;
    vertical-align: top;
    max-width: 200px;
  }
}

.main-content__comments {
  margin-top: 60px;
}

@media (min-width: 992px) {
  .main-content__comments {
    margin-top: 90px;
  }
}

.crumbs {
  padding: 20px 0;
}

@media (min-width: 992px) {
  .crumbs {
    padding: 30px 0;
  }
}

.crumbs__list {
  font-size: 0;
}

.crumbs__item {
  position: relative;
  display: inline-block;
  vertical-align: baseline;
}

.crumbs__item:not(:last-of-type) {
  margin-right: 5px;
  padding-right: 10px;
}

.crumbs__item:not(:last-of-type)::after {
  content: "/";
  position: absolute;
  right: 0;
  bottom: 0;
  font-weight: 700;
  font-size: 10px;
  color: #8a8a8a;
}

.crumbs__link {
  font-weight: 700;
  font-size: 10px;
  text-decoration: none;
  color: #8a8a8a;
}

.crumbs__link:hover,
.crumbs__link:active,
.crumbs__link:focus {
  color: #1c1f22;
}

@media (min-width: 992px) {
  .article {
    font-size: 15px;
  }
}

.article__image-wrapper {
  display: block;
  margin-top: 25px;
  font-size: 0;
  text-align: center;
}

.article__image-wrapper--main {
  margin-top: 0;
  margin-right: -20px;
  margin-left: -20px;
}

@media (min-width: 992px) {
  .article__image-wrapper--main {
    margin: 0;
  }
}

.article__title {
  margin-top: 20px;
  font-weight: 700;
  font-size: 20px;
  line-height: 1.4;
  color: #315efb;
}

@media (min-width: 992px) {
  .article__title {
    margin-top: 35px;
    font-size: 30px;
    line-height: 1.3;
  }
}

.article__author {
  margin-top: 25px;
}

@media (min-width: 992px) {
  .article__author {
    margin-top: 35px;
  }
}

.article__paragraph {
  margin-top: 20px;
}

@media (min-width: 992px) {
  .article__paragraph {
    margin-top: 30px;
  }
}

.article__paragraph + .article__paragraph {
  margin-top: 15px;
}

@media (min-width: 992px) {
  .article__paragraph + .article__paragraph {
    margin-top: 25px;
  }
}

.article__figure-wrapper {
  margin-top: 25px;
}

@media (min-width: 992px) {
  .article__figure-wrapper {
    margin-top: 35px;
    font-size: 0;
  }
}

.article__figure {
  display: block;
  font-size: 0;
  text-align: center;
}

@media (min-width: 1030px) {
  .article__figure {
    display: inline-block;
    vertical-align: top;
  }

  .article__figure:first-of-type {
    margin-right: 20px;
    width: 100%;
    max-width: 300px;
  }

  .article__figure:last-of-type {
    width: 100%;
    max-width: calc(100% - 300px - 20px);
  }
}

.article__figure:not(:first-of-type) {
  margin-top: 20px;
}

@media (min-width: 1030px) {
  .article__figure:not(:first-of-type) {
    margin-top: 0;
  }
}

.article__image-desc {
  margin-top: 10px;
  font-style: normal;
  font-size: 12px;
  text-align: center;
  color: #8a8a8a;
}

@media (min-width: 992px) {
  .article__image-desc--center {
    margin: 10px auto 0;
    max-width: 430px;
  }
}

.article__list {
  margin-top: 25px;
}

@media (min-width: 1030px) {
  .article__list {
    margin-top: 35px;
    font-size: 0;
    text-align: center;
  }
}

.article__item {
  position: relative;
  margin: 0 auto;
  max-width: 280px;
  font-size: 0;
}

.article__item:not(:first-of-type) {
  margin-top: 5px;
}

@media (min-width: 1030px) {
  .article__item:not(:first-of-type) {
    margin-top: 0;
  }
}

@media (min-width: 1030px) {
  .article__item {
    display: inline-block;
    vertical-align: top;
    width: calc(100% - 10px);
    max-width: 350px;
  }

  .article__item:nth-child(n + 3) {
    margin-top: 10px;
  }

  .article__item:nth-child(odd) {
    margin-right: 10px;
  }

  .article__item:last-of-type {
    margin-right: 0;
    width: 100%;
    max-width: 100%;
  }
}

.article__item-text {
  position: absolute;
  left: 10px;
  bottom: 10px;
  font-weight: 700;
  font-size: 13px;
  text-shadow: 2px 1px 3px #000;
  color: #fff;
}

.article__product {
  margin-top: 25px;
  margin-right: -20px;
  margin-left: -20px;
  text-align: center;
  background: url("../img/product-background.jpg") center no-repeat;
  background-size: contain;
}

@media (min-width: 992px) {
  .article__product {
    margin-top: 35px;
    margin-right: auto;
    margin-left: auto;
  }
}

.article__product-link {
  position: relative;
  display: block;
  margin: 0 auto;
  min-height: 171px;
  max-width: 154px;
}

@media (min-width: 992px) {
  .article__product-link {
    min-height: 380px;
    max-width: 340px;
  }
}

.article__product-image {
  position: absolute;
  left: 50%;
  top: 50%;
  width: 100%;
  transform: translate(-50%, -50%);
}

@media (min-width: 992px) {
  .article__product-image {
    transform: translate(-50%, -47%);
  }
}

.article__button {
  margin-top: 30px;
}

@media (min-width: 992px) {
  .article__button {
    margin-top: 45px;
  }
}

.author {
  font-size: 0;
}

.author__avatar-wrapper,
.author__info {
  display: inline-block;
  vertical-align: middle;
}

.author__avatar-wrapper {
  margin-right: 10px;
}

.author__info {
  font-weight: 700;
  font-size: 10px;
}

.author__artcile-date {
  margin-top: 3px;
  color: #8a8a8a;
}

.sidebar__title {
  font-weight: 700;
  font-size: 20px;
}

.sidebar__list {
  margin-top: 30px;
}

@media (min-width: 992px) {
  .sidebar__list {
    margin-top: 0;
  }
}

.sidebar__item {
  margin-right: 20px;
}

@media (min-width: 992px) {
  .sidebar__item {
    margin-right: 0;
  }

  .sidebar__item:not(:first-of-type) {
    margin-top: 25px;
  }
}

.sidebar__link {
  display: block;
  margin: 0 auto;
  max-width: 200px;
  text-decoration: none;
  color: inherit;
}

.sidebar__link:hover,
.sidebar__link:active,
.sidebar__link:focus {
  outline: none;
  border: none;
}

.sidebar__link:hover .sidebar__subtitle,
.sidebar__link:active .sidebar__subtitle,
.sidebar__link:focus .sidebar__subtitle {
  color: #315efb;
}

.sidebar__image-wrapper {
  font-size: 0;
  text-align: center;
}

.sidebar__subtitle {
  margin-top: 5px;
  font-weight: 700;
  font-size: 12px;
  transition: all 0.3s ease-out;
}

.sidebar__date {
  margin-top: 5px;
  font-weight: 700;
  font-size: 10px;
  color: #8a8a8a;
}

@media (min-width: 992px) {
  .comments {
    padding-bottom: 60px;
  }
}

.comments__title {
  font-weight: 700;
  font-size: 20px;
}

@media (min-width: 992px) {
  .comments__title {
    font-size: 30px;
  }
}

.comments__number {
  color: #315efb;
}

.comments__list {
  margin-top: 15px;
}

@media (min-width: 992px) {
  .comments__list {
    margin-top: 25px;
  }
}

.comments__item {
  border-top: 1px solid #edeff0;
  padding: 20px 0;
}

@media (min-width: 992px) {
  .comments__item {
    padding: 30px 0;
  }

  .comments__item:nth-last-child(n + 6) {
    display: block;
  }
}

.comments__item--answer {
  border-top: none;
  padding-top: 0;
}

.comments__item--answer .comments__wrapper {
  border-left: 4px solid #315efb;
  padding-left: 20px;
}

@media (min-width: 992px) {
  .comments__item--answer .comments__wrapper {
    padding-left: 30px;
  }
}

.comments__item:last-of-type {
  border-bottom: 1px solid #edeff0;
}

.comments__wrapper::after {
  content: "";
  display: block;
  clear: both;
}

@media (min-width: 992px) {
  .comments__wrapper {
    max-width: calc(100% - 200px - 30px);
  }
}

.comments__avatar-wrapper {
  float: left;
  overflow: hidden;
  margin-right: 10px;
  border-radius: 4px;
  width: 40px;
  height: 40px;
  font-size: 22px;
  line-height: 40px;
  text-align: center;
  text-transform: uppercase;
  color: #fff;
}

.comments__top-bar::after {
  content: "";
  display: block;
  clear: both;
}

.comments__info {
  float: left;
  padding: 3px;
  font-weight: 700;
  font-size: 10px;
}

.comments__date {
  margin-top: 3px;
  color: #8a8a8a;
}

.comments__reaction {
  position: relative;
  float: right;
  min-width: 60px;
  min-height: 22px;
}

.comments__button {
  display: block;
  border: none;
  background-color: transparent;
  cursor: pointer;
}

.comments__button .comments__button-icon {
  position: absolute;
}

.comments__button--dislike .comments__button-icon {
  left: 0;
  bottom: 0;
}

.comments__button--dislike:hover .comments__button-icon,
.comments__button--dislike:active .comments__button-icon,
.comments__button--dislike:focus .comments__button-icon {
  fill: #ff4d6e;
}

.comments__button--like .comments__button-icon {
  right: 0;
  top: 0;
}

.comments__button--like:hover .comments__button-icon,
.comments__button--like:active .comments__button-icon,
.comments__button--like:focus .comments__button-icon {
  fill: #5bcc51;
}

.comments__reaction-number {
  position: absolute;
  left: 50%;
  top: 50%;
  padding: 0 5px;
  font-weight: 700;
  font-size: 10px;
  color: #8a8a8a;
  transform: translate(-50%, -50%);
}

.comments__reaction-number--positive {
  color: #5bcc51;
}

.comments__reaction-number--negative {
  color: #ff4d6e;
}

.comments__content {
  margin-top: 10px;
}

.comments__image-wrapper {
  display: inline-block;
  overflow: hidden;
  margin-top: 15px;
  border-radius: 20px;
  font-size: 0;
}

@media (min-width: 992px) {
  .comments__order-button-wrapper {
    max-width: 100%;
  }
}

.comments__order-button {
  margin-top: 30px;
}

@media (min-width: 992px) {
  .comments__order-button {
    margin-top: 60px;
  }
}

.comments__sidebar {
  margin-top: 30px;
  padding: 30px 0;
}

@media (min-width: 992px) {
  .comments__sidebar {
    display: none;
  }
}

.main-footer {
  padding: 10px 0;
  color: #8a8a8a;
  background-color: #edeff0;
}

@media (min-width: 992px) {
  .main-footer {
    padding: 15px 0;
  }
}

@media (min-width: 992px) {
  .main-footer__container::after {
    content: "";
    display: block;
    clear: both;
  }
}

@media (min-width: 992px) {
  .main-footer__wrapper {
    float: left;
  }
}

.main-footer__logo-wrapper {
  display: inline-block;
  vertical-align: top;
  margin-right: 20px;
  font-size: 0;
}

@media (min-width: 992px) {
  .main-footer__logo-wrapper {
    vertical-align: middle;
    margin-right: 30px;
  }
}

.main-footer__copyright {
  display: inline-block;
  vertical-align: top;
  max-width: 100px;
}

@media (min-width: 992px) {
  .main-footer__copyright {
    vertical-align: middle;
    max-width: 100%;
  }
}

.main-footer__social {
  display: none;
}

@media (min-width: 992px) {
  .main-footer__social {
    position: relative;
    display: block;
    float: right;
    padding: 12px 0;
    min-height: 40px;
  }
}

.ava_1 {
  background-color: #ff9190;
}

.ava_2 {
  background-color: #00e884;
}

.ava_5 {
  background-color: #5cddfd;
}

.ava_7 {
  background-color: #ffc78e;
}

.ava_8 {
  background-color: #ffb6f1;
}
