html {
  --gap-content: clamp(2rem, 4vw, 4.5rem);
  --flex-basis: 288px;
}

@media (min-width: 992px) {
  .page-top,
  .products-footer {
    max-width: calc(100% - var(--flex-basis) - var(--gap-content));
  }
}

/* content */
.content {
  display: flex;
  gap: var(--gap-content);
}

.content img:not(.products-list__item-image):not(.rounded) {
  border-radius: 12px;
}
.content__article > img {
  margin-block: clamp(var(--g5-mobile), 2vw, var(--g5-desktop));
}

@media (max-width: 991px) {
  .content {
    flex-direction: column-reverse;
  }
}

.content__article {
  flex: 1 1 auto;
  container-type: inline-size;
}

.content__article>:first-child {
  margin-top: 0;
}

@media (width > 991px) {
  .content__aside {
    flex: 0 0 var(--flex-basis);
  }
}

.content__image {
  aspect-ratio: 27 / 16;
  margin-bottom: 1.25rem;
}

.emphasize {
  font-size: var(--fs-20);
  line-height: var(--fs-20-line-height);
  color: var(--title-color);
  margin: 1.25rem 0;
}

.highlight {
  color: var(--title-color);
  font-weight: 500;
  margin: clamp(var(--g9-mobile), 2.5vw, var(--g9-desktop)) 0;
  padding-left: clamp(1.5rem, 2vw, 2rem);
  border-left: 2px solid var(--blue-shade-1);
  font-size: var(--fs-20);
}

/* topbar */
.topbar {
  display: flex;
  align-items: flex-start;
  gap: 2rem;
  max-width: 864px;
  margin-top: -16px;
}

@media (max-width: 600px) {
  .topbar {
    gap: 1rem;
    align-items: flex-start;
  }
}

.topbar__left {
  flex: 1 1 auto;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: clamp(0.5rem, 1.5vw, 1.5rem);
}

.topbar__back {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  color: var(--text-color);
  transition: color 0.3s ease;
}

.topbar__back svg,
.topbar__back use {
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
}

.topbar__back svg path,
.topbar__back use {
  transition: stroke 0.3s ease;
  stroke: var(--title-color);
}

@media (any-hover: hover) {
  .topbar__back:hover {
    color: var(--blue-hover);
  }

  .topbar__back:hover svg path,
  .topbar__back:hover use {
    stroke: var(--blue-hover);
  }
}

.topbar__item {
  display: inline-flex;
  justify-content: space-between;
  align-items: center;
  gap: 0.5rem;
}

.topbar__item svg,
.topbar__item use {
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
  stroke: var(--title-color);
}

.topbar__interact {
  display: flex;
  align-items: center;
  gap: 1.25rem;
}

/* like */
.like {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  cursor: pointer;
  padding: 0;
  background-color: transparent;
  border: 0;
}

@media (any-hover: hover) {

  .like:hover .like__icon path,
  .like:hover .like__icon use {
    stroke: var(--blue-shade-1);
  }
}

.like--pressed .like__icon path,
.like--pressed .like__icon use {
  fill: var(--blue-shade-1);
  stroke: var(--blue-shade-1);
}

.like__icon,
.like__icon>svg {
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
}

.like__icon path,
.like__icon use {
  transition: stroke 0.3s ease, fill 0.3s ease;
  stroke: var(--title-color);
  fill: none;
}

/* aside */
.aside-block__icon {
  --size: 32px;
  height: var(--size);
  width: var(--size);
}
.aside__contents {
  position: sticky;
  top: 100px;
}

.aside__item {
  padding-left: 0.75rem;
}

.aside__item::before {
  top: 9px;
}

.aside__item a {
  display: block;
}

@media (any-hover: hover) {
  .aside__link:hover {
    color: var(--blue-hover);
  }
}

@media (min-width: 992px) {
  .aside__item--current .aside__link {
    color: var(--blue);
  }
}

/* comments */
.comments__more {
  color: var(--blue-shade-1);
  text-decoration: none;
  display: inline-block;
  margin-top: 1.5rem;
}

.comments__item {
  border-bottom: 1px solid var(--grey-shade-8);
  padding-bottom: 0.25rem;
  margin-top: clamp(1rem, 2vw, 1.5rem);
}

.comments__btn {
  width: 100%;
}

.comments__form {
  gap: var(--g4);
  min-height: 0;
  display: flex;
  flex-direction: column;
}

/* comment */
.comment {
  container-type: inline-size;
  width: 100%;
}

.comment__top {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

@container (width < 400px) {
  .comment__top {
    flex-direction: column;
    gap: 0.25rem;
    align-items: flex-start;
  }
}

.comment__name {
  color: var(--dark);
}

.comment__date {
  color: var(--muted);
}

.comment__text {
  margin-top: 0.5rem;
  color: var(--basic);
}

.comment__text p {
  margin: 0.5rem 0;
  font-size: var(--fs-16);
  line-height: var(--fs-16-line-height);
}

.comment__bottom {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1rem;
}

.comment__wrap {
  flex: 1 1 100%;
}

.comment__answer {
  color: var(--dark);
  position: relative;
}

.comment__answer::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  border-top: 1px dotted var(--dark);
}

@media (any-hover: hover) {
  .comment__answer:hover {
    color: var(--blue-shade-2);
  }
  .comment__answer:hover::after {
    border-color: var(--blue-shade-2);
  }
}

.comment__appendix {
  display: flex;
  gap: clamp(0.5rem, 1.5vw, 1rem);
}

.comment__reply-to,
.comment__reply-to svg,
.comment__reply-to use {
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
}

.comment__reply-to svg {
  position: relative;
  top: 4px;
}

.swiper-container .swiper-wrapper {
  box-sizing: border-box;
}

.swiper-container .swiper-slide {
  height: auto;
}

.heading-section {
  position: relative;
  padding-right: 100px;
}

.heading-section h3 {
  margin: 0;
}

.heading-section .swiper-button-prev,
.heading-section .swiper-button-next {
  background-color: #f7f7fb;
  margin-top: 0;
  transform: translateY(-50%);
}

.heading-section__swiper-button-next,
.heading-section__swiper-button-prev {
  transition: border-color 0.3s ease;
  border: 1px solid transparent;
}

.heading-section__swiper-button-next.swiper-button-next {
  right: 0;
  border-radius: 50%;
}

.heading-section__swiper-button-prev.swiper-button-prev {
  left: unset;
  right: 48px;
  border-radius: 50%;
}

.heading-section__swiper-button-next svg,
.heading-section__swiper-button-next use,
.heading-section__swiper-button-prev svg,
.heading-section__swiper-button-prev use {
  width: 40px;
  height: 40px;
  stroke: var(--title-color);
  transition: stroke 0.1s ease;
}

@media (any-hover: hover) {
  .heading-section__swiper-button-next:hover,
  .heading-section__swiper-button-prev:hover {
    background-color: var(--color-base);
  }

  .heading-section__swiper-button-next:hover svg,
  .heading-section__swiper-button-next:hover use,
  .heading-section__swiper-button-prev:hover svg,
  .heading-section__swiper-button-prev:hover use {
    stroke: var(--white);
  }
}

.headings-list {
  margin-top: 0px;

  .headings-list__item {
    padding-left: 0px;
    margin-bottom: 0px;

    &::before {
      display: none;
    }

    &:not(:first-child):not(:only-child) {
      border-top-left-radius: 0px;
      border-top-right-radius: 0px;
      border-top: none;
    }
    &:not(:last-child):not(:only-child) {
      border-bottom-left-radius: 0px;
      border-bottom-right-radius: 0px;
    }
  }
}
