.cart__wrap {
  display: flex;
  gap: 4.844vw;
  align-items: start;
  justify-content: space-between;
}
.cart__list {
  width: 44.635vw;
  display: flex;
  flex-direction: column;
  gap: 3.125vw;
}
.cart__result {
  width: 31.979vw;
}
.cart__total {
  width: 100%;
  border-radius: 2.083vw;
  border: 1px solid #1f1f1d;
  padding: 3.385vw;
}
.cart__total-title {
  font-size: 1.771vw;
  font-weight: 500;
  line-height: 1.979vw; /* 111.765% */
  letter-spacing: 0.018vw;
  text-transform: uppercase;
  padding-bottom: 2.604vw;
  border-bottom: 1px solid rgba(31, 31, 29, 0.1);
}
.cart__total-list {
  margin-top: 2.604vw;
  display: flex;
  flex-direction: column;
  gap: 1.823vw;
}
.cart__total-item-info {
  display: flex;
  align-items: start;
  justify-content: space-between;
}
.cart__total-item-product {
  max-width: 16.354vw;
}
.cart__total-item-volume {
  opacity: 0.57;
  font-size: 0.885vw;
  font-style: normal;
  font-weight: 400;
  line-height: 127%; /* 1.124vw */
  letter-spacing: 0.009vw;
  margin-bottom: 0.417vw;
}
.cart__total-item-quant {
  opacity: 0.57;
  font-size: 0.885vw;
  font-style: normal;
  font-weight: 400;
  line-height: 127%; /* 1.124vw */
  letter-spacing: 0.009vw;
}
.cart__total-item-name {
  font-size: 0.938vw;
  font-style: normal;
  font-weight: 400;
  line-height: 1.349vw; /* 143.889% */
  text-transform: uppercase;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}
.cart__total-item-price {
  font-size: 1.25vw;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.025vw;
  text-transform: uppercase;
  margin-top: 0.208vw;
}
.cart__total-sum {
  margin-top: 3.125vw;
  padding-top: 1.823vw;
  display: flex;
  justify-content: space-between;
  align-items: start;
  border-top: 1px solid #1f1f1d;
}
.cart__total-sum-title {
  font-size: 1.458vw;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
  letter-spacing: 0.029vw;
  text-transform: uppercase;
}
.cart__total-sum-price {
  font-size: 1.771vw;
  font-weight: 500;
  line-height: 1.979vw; /* 111.765% */
  letter-spacing: 0.018vw;
  text-transform: uppercase;
}
.cart__btn {
  margin-top: 2.865vw;
  width: 100%;
}
.cart__total-note {
  opacity: 0.5;
  font-size: 0.938vw;
  font-style: normal;
  font-weight: 400;
  line-height: 1.349vw; /* 143.889% */
  max-width: 19.479vw;
  margin-top: 2.344vw;
}

.cart-item {
  display: flex;
  gap: 2.604vw;
  align-items: stretch;
  position: relative;
}
.cart-item:not(:last-child) {
  border-bottom: 1px solid rgba(31, 31, 29, 0.1);
  padding-bottom: 3.125vw;
}
.cart-item__img {
  border-radius: 1.042vw;
  border: 1px solid rgba(31, 31, 29, 0.1);
  background: #fafafa;
  display: flex;
  width: 15.469vw;
  aspect-ratio: 1;
  justify-content: center;
  align-items: center;
}
.cart-item__img img {
  height: 13.021vw;
  width: auto;
  max-width: 13.021vw;
  -o-object-fit: contain;
     object-fit: contain;
}
.cart-item__img:hover {
  border-color: #1f1f1d;
}
.cart-item__info {
  display: flex;
  flex-direction: column;
}
.cart-item__pricing {
  margin-top: auto;
}
.cart-item__pricing-old {
  opacity: 0.57;
  font-size: 0.938vw;
  font-weight: 400;
  line-height: 1.349vw;
  text-decoration-line: line-through;
  text-transform: uppercase;
}
.cart-item__pricing-current {
  font-size: 1.458vw;
  font-weight: 500;
  line-height: normal;
  letter-spacing: 0.029vw;
  text-transform: uppercase;
  margin-top: 0.521vw;
}
.cart-item__volume {
  margin-bottom: 1.042vw;
}
.cart-item__delete {
  width: 1.458vw;
  aspect-ratio: 1/1;
  opacity: 0.3;
  transition: 0.3s;
  align-self: start;
  margin-left: auto;
  flex-shrink: 0;
}
.cart-item__delete svg {
  width: 100%;
  height: 100%;
}
.cart-item__delete:hover {
  opacity: 1;
}
.cart-item__color {
  width: 1.667vw;
  height: 1.667vw;
  border-radius: 1.667vw;
  border: 0.64px solid rgba(31, 31, 29, 0.1);
  -o-object-fit: cover;
     object-fit: cover;
  margin-bottom: 0.781vw;
}
.cart-item .card__title {
  white-space: normal;
  margin-bottom: 0.625vw;
  font-size: 1.458vw;
  line-height: 1;
  letter-spacing: 0.031vw;
  height: auto;
  -webkit-line-clamp: 2;
}
.cart-item .card__title:hover {
  color: #ef642d;
}
.cart-item .card__label {
  font-size: 0.677vw;
  padding: 0.521vw 0.625vw 0.469vw 0.625vw;
}

.promocode {
  width: 100%;
  padding: 2.5vw;
  border-radius: 2.083vw;
  border: 2px dashed #f29337;
  margin-bottom: 1.042vw;
}
.promocode__field {
  display: block;
  position: relative;
}
.promocode__field span {
  font-size: 0.833vw;
  font-style: normal;
  font-weight: 400;
  line-height: 1;
  display: block;
  margin-bottom: 1.094vw;
}
.promocode__input {
  font-size: 1.458vw;
  font-weight: 500;
  line-height: normal;
  letter-spacing: 0.029vw;
  text-transform: uppercase;
  padding-bottom: 1.042vw;
  border-bottom-color: #1f1f1d;
  width: 100%;
}
.promocode__input::placeholder {
  color: #1f1f1d;
  opacity: 0.3;
}
.promocode__success {
  margin-top: 0.729vw;
  color: #2ea52b;
  font-size: 0.781vw;
  font-style: normal;
  font-weight: 400;
  line-height: 112%; /* 0.875vw */
  letter-spacing: 0.008vw;
}

.promocode__success {
  display: none;
}

.promocode_success .promocode__success {
  display: block;
}

.promocode__btns {
  display: none;
  gap: 0.729vw;
  margin-top: 2.24vw;
}

.promocode_input .promocode__btns {
  display: flex;
}

.promocode_error .input_error__text {
  display: block;
}
.promocode_error .promocode__apply {
  opacity: 0.4;
  background: #1f1f1d;
  color: #fafafa;
  pointer-events: none;
}

.page-empty {
  padding-top: 0;
  padding-bottom: 1.302vw;
}
.page-empty_cart .page-empty__wrap {
  gap: 19.01vw;
}
.page-empty_cart .page-empty__text {
  padding-bottom: 2.083vw;
}
.page-empty__wrap {
  display: flex;
  align-items: center;
}
.page-empty__title {
  margin-bottom: 1.771vw;
}
.page-empty__descr {
  margin-bottom: 2.188vw;
}
.page-empty__img {
  width: 19.479vw;
  height: auto;
}

.page__top_shop .breadcrumbs_page-empty-cart {
  margin-bottom: 2.969vw;
}

@media (max-width: 1150px) {
  .cart {
    padding-top: 2.734vw;
  }
  .cart__wrap {
    gap: 3.385vw;
  }
  .cart__list {
    width: 44.661vw;
    gap: 3.255vw;
  }
  .cart__result {
    width: 46.745vw;
  }
  .cart__total {
    border-radius: 2.604vw;
    padding: 3.255vw;
  }
  .cart__total-title {
    font-size: 2.344vw;
    line-height: 2.995vw;
    letter-spacing: 0.141vw;
    padding-bottom: 2.604vw;
  }
  .cart__total-list {
    margin-top: 2.604vw;
    gap: 2.344vw;
  }
  .cart__total-item-product {
    max-width: 26.563vw;
  }
  .cart__total-item-volume {
    font-size: 1.563vw;
    line-height: 2.344vw; /* 150% */
    margin-bottom: 1.042vw;
  }
  .cart__total-item-quant {
    font-size: 1.563vw;
    line-height: 2.344vw; /* 150% */
    letter-spacing: 0vw;
  }
  .cart__total-item-name {
    font-size: 1.563vw;
    line-height: 1.953vw; /* 125% */
    font-weight: 500;
  }
  .cart__total-item-price {
    font-size: 1.823vw;
    line-height: 1;
    letter-spacing: 0.036vw;
    margin-top: 1.302vw;
  }
  .cart__total-sum {
    margin-top: 4.557vw;
    padding-top: 2.604vw;
    align-items: center;
  }
  .cart__total-sum-title {
    font-size: 1.563vw;
    line-height: 1.693vw; /* 108.333% */
  }
  .cart__total-sum-price {
    font-size: 2.604vw;
    line-height: 1;
    letter-spacing: 0.052vw;
  }
  .cart__btn {
    margin-top: 3.906vw;
  }
  .cart__total-note {
    font-size: 1.563vw;
    line-height: 2.344vw; /* 150% */
    max-width: 32.552vw;
    margin-top: 1.953vw;
  }
  .cart-item {
    gap: 1.953vw;
  }
  .cart-item:not(:last-child) {
    border-bottom: none;
    padding-bottom: 0;
  }
  .cart-item__img {
    border-radius: 3px;
    width: 12.891vw;
    height: 12.891vw;
  }
  .cart-item__img img {
    height: 11.328vw;
    max-width: 11.328vw;
  }
  .cart-item__pricing {
    display: flex;
    flex-direction: row-reverse;
    gap: 0.911vw;
    margin-top: 1.302vw;
    align-items: center;
    justify-content: start;
  }
  .cart-item__pricing-old {
    font-size: 1.563vw;
    line-height: 1;
  }
  .cart-item__pricing-current {
    font-size: 1.953vw;
    line-height: 1;
    margin-top: 0;
  }
  .cart-item__volume {
    margin-bottom: 0.521vw;
  }
  .cart-item__delete {
    width: 2.604vw;
  }
  .cart-item__color {
    width: 2.865vw;
    height: 2.865vw;
    border-radius: 32px;
    border: none;
    margin-bottom: 0.911vw;
  }
  .cart-item .card__title {
    margin-bottom: 0.391vw;
    font-size: 1.563vw;
    line-height: 1.953vw;
    letter-spacing: 0.031vw;
    height: auto;
    max-width: 19.531vw;
  }
  .cart-item .card__label {
    font-size: 1.302vw;
    padding: 0.651vw 0.781vw;
  }
  .cart-item .card__labels {
    position: static;
    margin-bottom: 1.042vw;
    gap: 0.521vw;
    transform: none;
  }
  .cart-item .product__quantity {
    width: 22.135vw;
    margin-top: 0;
  }
  .promocode {
    width: 100%;
    padding: 3.776vw 8.294vw 3.776vw 4.297vw;
    border-radius: 2.604vw;
    border: 1px dashed #f29337;
    margin-bottom: 2.604vw;
  }
  .promocode__field {
    margin-bottom: 2.734vw;
  }
  .promocode__field span {
    font-size: 1.432vw;
    margin-bottom: 1.302vw;
  }
  .promocode__input {
    font-size: 1.953vw;
    line-height: 1;
    letter-spacing: 0.039vw;
    padding-bottom: 1.042vw;
  }
  .promocode__success {
    margin-top: -1.693vw;
    font-size: 1.432vw;
    line-height: 1;
    letter-spacing: 0.008vw;
  }
  .promocode__cancel {
    background: transparent;
    color: #ff5542;
  }
  .page-empty {
    padding-top: 0;
    padding-bottom: 3.906vw;
  }
  .page-empty_cart .page-empty__wrap {
    gap: 19.141vw;
  }
  .page-empty_cart .page-empty__text {
    padding-bottom: 0;
  }
  .page-empty__wrap {
    align-items: start;
  }
  .page-empty__text {
    max-width: 36.979vw;
  }
  .page-empty__title {
    margin-bottom: 2.604vw;
  }
  .page-empty__descr {
    margin-bottom: 3.906vw;
  }
  .page-empty__img {
    width: 22.005vw;
  }
  .page__top_shop .breadcrumbs_page-empty-cart {
    margin-bottom: 5.469vw;
  }
  .promocode__btns {
    gap: 1.302vw;
    margin-top: 0;
    padding-top: 2.083vw;
  }
}
@media (max-width: 576px) {
  .cart {
    padding-top: 9.722vw;
  }
  .cart__wrap {
    gap: 5.556vw;
    flex-direction: column;
  }
  .cart__list {
    width: 100%;
    gap: 4.167vw;
  }
  .cart__result {
    width: 100%;
  }
  .cart__total {
    border-radius: 5.556vw;
    padding: 6.944vw;
  }
  .cart__total-title {
    font-size: 5vw;
    line-height: 6.389vw;
    letter-spacing: 0.3vw;
    padding-bottom: 5.556vw;
  }
  .cart__total-list {
    margin-top: 5.556vw;
    gap: 5vw;
  }
  .cart__total-item-product {
    max-width: 49.167vw;
  }
  .cart__total-item-volume {
    font-size: 3.333vw;
    line-height: 5vw; /* 150% */
    margin-bottom: 2.222vw;
  }
  .cart__total-item-quant {
    font-size: 3.333vw;
    line-height: 5vw; /* 150% */
    letter-spacing: 0vw;
  }
  .cart__total-item-name {
    font-size: 3.333vw;
    line-height: 4.167vw; /* 125% */
    font-weight: 500;
  }
  .cart__total-item-price {
    font-size: 3.889vw;
    line-height: 1;
    letter-spacing: 0.078vw;
    margin-top: 2.778vw;
  }
  .cart__total-sum {
    margin-top: 9.722vw;
    padding-top: 4.444vw;
  }
  .cart__total-sum-title {
    font-size: 3.333vw;
    line-height: 3.611vw; /* 108.333% */
  }
  .cart__total-sum-price {
    font-size: 5.556vw;
    line-height: 1;
    letter-spacing: 0.111vw;
  }
  .cart__btn {
    margin-top: 8.333vw;
  }
  .cart__total-note {
    font-size: 3.333vw;
    line-height: 5vw; /* 150% */
    max-width: 69.444vw;
    margin-top: 4.167vw;
  }
  .cart-item {
    gap: 4.167vw;
  }
  .cart-item__img {
    border-radius: 3px;
    width: 27.5vw;
    height: 27.5vw;
  }
  .cart-item__img img {
    height: 24.167vw;
    max-width: 24.167vw;
  }
  .cart-item__pricing {
    gap: 1.944vw;
    margin-top: 2.778vw;
  }
  .cart-item__pricing-old {
    font-size: 3.333vw;
    line-height: 1;
  }
  .cart-item__pricing-current {
    font-size: 4.167vw;
    line-height: 1;
  }
  .cart-item__volume {
    margin-bottom: 0.972vw;
  }
  .cart-item__delete {
    width: 5.556vw;
  }
  .cart-item__color {
    width: 6.111vw;
    height: 6.111vw;
    border-radius: 8.889vw;
    margin-bottom: 1.944vw;
  }
  .cart-item .card__title {
    margin-bottom: 0.833vw;
    font-size: 3.333vw;
    line-height: 4.167vw;
    letter-spacing: 0.067vw;
    height: auto;
    max-width: 41.667vw;
  }
  .cart-item .card__label {
    font-size: 2.778vw;
    padding: 1.389vw 1.667vw;
  }
  .cart-item .card__labels {
    margin-bottom: 2.222vw;
    gap: 1.111vw;
    transform: none;
  }
  .cart-item .product__quantity {
    width: 47.222vw;
    margin-top: 0;
  }
  .promocode {
    width: 100%;
    padding: 8.056vw 7.222vw 8.056vw 9.167vw;
    border-radius: 5.556vw;
    margin-bottom: 5.556vw;
  }
  .promocode__field {
    width: 71.667vw;
    display: block;
    margin-bottom: 5.833vw;
  }
  .promocode__field span {
    font-size: 3.056vw;
    margin-bottom: 2.778vw;
  }
  .promocode__input {
    font-size: 4.167vw;
    line-height: 1;
    letter-spacing: 0.083vw;
    padding-bottom: 2.222vw;
  }
  .promocode__success {
    margin-top: -3.611vw;
    font-size: 3.056vw;
    line-height: 1;
    letter-spacing: 0vw;
  }
  .cart__clear {
    font-size: 3.333vw;
    font-weight: 400;
    line-height: 5vw; /* 150% */
    align-items: center;
    gap: 1.667vw;
  }
  .cart__clear svg {
    width: 3.889vw;
    height: 3.889vw;
  }
  .page__top-cart {
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  .page__title_cart {
    margin-bottom: 0;
  }
  .cards-section__top_interest {
    align-items: start !important;
  }
  .page-empty {
    padding-top: 0;
    padding-bottom: 15.278vw;
  }
  .page-empty_cart .page-empty__wrap {
    gap: 0;
  }
  .page-empty__text {
    max-width: 100%;
    width: 100%;
  }
  .page-empty__title {
    margin-bottom: 9.444vw;
  }
  .page-empty__descr {
    margin-bottom: 7.222vw;
    max-width: 63.333vw;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
  }
  .page-empty__img {
    width: 43.611vw;
    margin-bottom: 9.167vw;
    margin-left: auto;
    margin-right: auto;
  }
  .page-empty__btn {
    width: 100%;
  }
  .page__top_shop .breadcrumbs_page-empty-cart {
    margin-bottom: 4.167vw;
  }
  .promocode__btns {
    gap: 2.778vw;
    margin-top: 0;
    padding-top: 4.444vw;
  }
}